gdb/python: Make cmdpy_completer_helper return gdbpy_ref<>
[external/binutils.git] / gdb / ChangeLog
1 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
2
3         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
4         (cmdpy_completer_handle_brkchars): Adjust.
5         (cmdpy_completer): Adjust.
6
7 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
8
9         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
10         Pass correct regnum to raw_supply_zeroed.
11
12 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
13
14         * regcache.c (cooked_read_test): Add CSKY to the list of
15         architectures with a save_reggroup
16
17 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
18
19         PR gdb/23368
20         * infrun.c (follow_exec): In the follow_exec_mode_new case,
21         transfer terminal state from old new new inferior.
22         * terminal.h (swap_terminal_info): New function.
23         * inflow.c (swap_terminal_info): New function.
24
25 2018-10-23  Tom Tromey  <tom@tromey.com>
26
27         * record-btrace.c (get_thread_current_frame_id): Rename from
28         get_thread_current_frame.  Return a frame_id.
29         (record_btrace_start_replaying): Update.
30
31 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
32
33         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
34         for CSRs.
35
36 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
37
38         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
39         have_nonsteppable_watchpoint attribute to 1.
40
41 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
42
43         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
44         register names.
45         (struct register_alias): Rename to...
46         (struct riscv_register_alias): ...this, and update comment.
47         (riscv_register_aliases): Update type, and alias names.  Remove
48         CSR names from this list.
49         (riscv_register_name): Use riscv_gdb_reg_names for int and float
50         register names.  Add an extra assertion.
51         (riscv_is_regnum_a_named_csr): New function.
52         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
53
54 2018-10-22  Jim Wilson  <jimw@sifive.com>
55
56         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
57         FP reg smaller than FP reg size, and fill with -1 instead of 0.
58
59         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
60         (riscv_register_type): Use them.
61         (riscv_print_one_register_info): Handle union of floats same as float.
62         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
63         riscv_fpreg_q_type fields.
64
65 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
66
67         * gdbarch.sh (gdbarch_num_cooked_regs): New.
68         * gdbarch.h: Re-generate.
69         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
70         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
71         * eval.c (evaluate_subexp_standard): Likewise.
72         * findvar.c (value_of_register): Likewise.
73         (value_of_register_lazy): Likewise.
74         (address_from_register): Likewise.
75         * frame.c (get_frame_register_bytes): Likewise.
76         * gdbarch-selftests.c (register_to_value_test): Likewise.
77         * h8300-tdep.c (h8300_register_type): Likewise.
78         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
79         (i386_svr4_reg_to_regnum): Likewise.
80         * infcmd.c (default_print_registers_info): Likewise.
81         (registers_info): Likewise.
82         (print_vector_info): Likewise.
83         (default_print_float_info): Likewise.
84         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
85         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
86         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
87         (mi_cmd_data_list_changed_registers): Likewise.
88         (mi_cmd_data_list_register_values): Likewise.
89         (mi_cmd_data_write_register_values): Likewise.
90         (mi_cmd_trace_frame_collected): Likewise.
91         * mips-tdep.c (print_gp_register_row): Likewise.
92         (mips_print_registers_info): Likewise.
93         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
94         * regcache.c (init_regcache_descr): Likewise.
95         (register_size): Likewise.
96         (register_dump::dump): Likewise.
97         (cooked_read_test): Likewise.
98         (cooked_write_test): Likewise.
99         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
100         (rs6000_gdbarch_init): Likewise.
101         * stabsread.c (stab_reg_to_regnum): Likewise.
102         * stack.c (info_frame_command): Likewise.
103         * target-descriptions.c (tdesc_register_name): Likewise.
104         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
105         * tui/tui-regs.c (tui_show_register_group): Likewise.
106         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
107         (user_reg_map_regnum_to_name): Likewise.
108         (value_of_user_reg): Likewise.
109         (maintenance_print_user_registers): Likewise.
110         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
111         (xtensa_register_name): Likewise.
112         (xtensa_register_type): Likewise.
113         (xtensa_reg_to_regnum): Likewise.
114         (xtensa_pseudo_register_read): Likewise.
115         (xtensa_pseudo_register_write): Likewise.
116
117 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
118
119         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
120         correctly-sized buffer with raw_read.
121         (amd64_pseudo_register_write): Use correctly-sized buffer for
122         raw_read/raw_write.
123
124 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
125
126         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
127         in add_prefix_cmd of set print type.
128
129 2018-10-19  Tom Tromey  <tom@tromey.com>
130
131         PR tui/18388:
132         * NEWS: Mention tabset deprecation.
133         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
134         (update_tab_width): New function.
135         (tui_set_tab_width, tui_show_tab_width): New functions.
136         (tui_set_tab_width_command): Use update_tab_width.
137         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
138         Add new "set tui tab-width" command.
139         * tui/tui-source.c (tui_set_source_content): Update.
140         * tui/tui-disasm.c (tui_set_disassem_content): Update.
141         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
142         Don't declare.
143         (tui_tab_width): Declare.
144         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
145         (tui_set_default_tab_len): Remove.
146
147 2018-10-19  Tom Tromey  <tom@tromey.com>
148
149         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
150         (key_is_backspace, tui_getc): Don't declare.
151         * tui/tui-io.c (key_is_start_sequence): Now static.
152         (key_is_end_sequence, key_is_backspace): Remove.
153         (tui_getc): Now static.
154
155 2018-10-19  Tom Tromey  <tom@tromey.com>
156
157         * symfile.c (reread_symbols): Clear "static_links".
158
159 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
160
161         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
162         define.
163         (aarch64_linux_sigframe_init): Extra boundary checks.
164
165 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
166
167         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
168         the possibly non-existent tdesc type 'vec128', but the type of raw
169         register v16 instead.
170
171 2018-10-19  Gary Benson <gbenson@redhat.com>
172
173         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
174
175 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
176
177         PR cli/23785
178         * cli/cli-dump.c (restore_binary_file): Check if "file" is
179         NULL.
180
181 2018-10-17  Paul Koning  <paul_koning@dell.com>
182
183         * charset.c (convert_between_encodings): Fix unsigned overflow.
184
185 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
186
187         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
188         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
189         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
190         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
191         New functions.
192         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
193         and fbsd_info_proc_mappings_header.
194         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
195         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
196         New.
197
198 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
199
200         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
201         Solaris Maintainer.
202
203 2018-10-15  Tom Tromey  <tom@tromey.com>
204
205         * tui/tui.c (strcat_to_buf): Remove casts.
206         * tui/tui-winsource.c (tui_show_source_line)
207         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
208         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
209         * tui/tui-windata.c (tui_first_data_item_displayed)
210         (tui_delete_data_content_windows, tui_erase_data_content)
211         (tui_display_all_data, tui_display_data_from)
212         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
213         * tui/tui-win.c (tui_set_win_height)
214         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
215         casts.
216         * tui/tui-win.c (tui_resize_all): Remove casts.
217         (tui_scroll_backward_command, tui_set_focus)
218         (tui_set_tab_width_command): Likewise.
219         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
220         * tui/tui-regs.c (tui_show_register_group): Remove cast.
221         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
222         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
223         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
224         Remove casts.
225
226 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
227
228         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
229         AArch64/ARM maintainer.
230
231 2018-10-11  Gary Benson <gbenson@redhat.com>
232
233         * interps.h (interp::m_name): Make private and mutable.
234         * interps.c (interp::~interp): Free m_name.
235
236 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
237             Simon Marchi <simark@simark.ca>
238
239         * README (`configure' options): Add documentation for new
240         "--enable-unit-tests" option.
241         * acinclude.m4: Include "selftest.m4".
242         * configure: Regenerate.
243         * configure.ac: Use "GDB_AC_SELFTEST".
244         * maint.c (maintenance_selftest): Update message informing
245         that selftests have been disabled.
246         (maintenance_info_selftests): Likewise.
247         * selftest.m4: New file.
248
249 2018-10-10  Gary Benson <gbenson@redhat.com>
250
251         * remote.c (remote_target::remote_send_printf): Add
252         missing va_end found by Coverity.
253
254 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
255
256         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
257
258 2018-10-09  Tom Tromey  <tom@tromey.com>
259
260         * configure: Rebuild.
261         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
262         * NEWS: Update --enable-ubsan documentation.
263
264 2018-10-09  Gary Benson <gbenson@redhat.com>
265
266         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
267         found by Coverity.
268
269 2018-10-08  Tom Tromey  <tom@tromey.com>
270
271         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
272         variable.
273         (riscv_fbsd_init_abi): Likewise.
274
275 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
276         * valops.c (value_struct_elt_for_reference): Rename local variable
277         to work around the shadowing a previous local warning.
278
279 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
280
281         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
282         * NEWS: Mention new FreeBSD/riscv native configuration.
283         * configure.host: Add riscv*-*-freebsd*.
284         * configure.nat: Likewise.
285         * riscv-fbsd-nat.c: New file.
286
287 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
288
289         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
290         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
291         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
292         * NEWS: Mention new FreeBSD/riscv target.
293         * configure.tgt: Add riscv*-*-freebsd*.
294         * riscv-fbsd-tdep.c: New file.
295         * riscv-fbsd-tdep.h: New file.
296
297 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
298
299         * regcache.h (struct regcache_map_entry): Note that this type can
300         be used with traditional frame caches.
301         * trad-frame.c (trad_frame_set_reg_regmap): New.
302         * trad-frame.h (trad_frame_set_reg_regmap): New.
303
304 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
305
306         PR c++/16841
307         * valops.c (get_virtual_base_offset): New function.
308         (value_struct_elt_for_reference): Use it to get virtual base offset
309         and add it in calculating class member address.
310
311 2018-10-08   John Darrington <john@darrington.wattle.id.au>
312
313     * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
314       (check_producer): Check if the producer is codewarrior.
315       (producer_is_codewarrior): New function.
316       (lnp_state_machine::record_line): Ignore is_stmt flag for records
317        produced by codewarrior.
318       (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
319
320 2018-10-06  Tom Tromey  <tom@tromey.com>
321
322         PR python/19399:
323         * python/py-inferior.c: Add "architecture" entry.
324         (infpy_architecture): New function.
325
326 2018-10-06  Tom Tromey  <tom@tromey.com>
327
328         PR python/21765:
329         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
330         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
331         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
332         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
333
334 2018-10-06  Tom Tromey  <tom@tromey.com>
335
336         PR build/17077:
337         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
338         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
339         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
340         #include.
341
342 2018-10-06  Tom Tromey  <tom@tromey.com>
343
344         * python/py-breakpoint.c (bppy_get_location): Handle a
345         bp_breakpoint without a location.
346
347 2018-10-06  Tom Tromey  <tom@tromey.com>
348
349         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
350         (_RegEx): Reformat help text.
351         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
352         (AnyCallerIs, AnyCallerMatches): Reformat help text.
353         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
354         text.
355         * python/lib/gdb/command/xmethods.py (InfoXMethod)
356         (EnableXMethod, DisableXMethod): Remove help indentation.
357         Capitalize meta-syntactic variables.
358         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
359         (EnableUnwinder, DisableUnwinder): Remove help indentation.
360         Capitalize meta-syntactic variables.
361         * python/lib/gdb/command/explore.py (ExploreCommand)
362         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
363         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
364         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
365         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
366         Remove help indentation.
367         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
368         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
369         (DisableFrameFilter, SetFrameFilterPriority)
370         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
371
372 2018-10-06  Tom Tromey  <tom@tromey.com>
373
374         PR tui/28819:
375         * tui/tui-io.c (gdb_wgetch): New function.
376         (tui_mld_getc, tui_getc): Use it.
377
378 2018-10-05  Tom Tromey  <tom@tromey.com>
379
380         * sol-thread.c (sol_thread_target::wait): Rename inner
381         "save_ptid".
382
383 2018-10-04  Tom Tromey  <tom@tromey.com>
384
385         * configure: Rebuild.
386         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
387
388 2018-10-04  Tom Tromey  <tom@tromey.com>
389
390         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
391         declaration of "block".
392
393 2018-10-04  Tom Tromey  <tom@tromey.com>
394
395         * common/filestuff.c (fdwalk): Remove inner declaration of
396         "result".
397
398 2018-10-04  Tom Tromey  <tom@tromey.com>
399
400         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
401         "structs_addr" and hoist declaration.
402
403 2018-10-04  Tom Tromey  <tom@tromey.com>
404
405         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
406         variable "size".
407
408 2018-10-04  Tom Tromey  <tom@tromey.com>
409
410         * mdebugread.c (parse_partial_symbols): Use std::string.
411
412 2018-10-04  Tom Tromey  <tom@tromey.com>
413
414         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
415         * p-valprint.c (pascal_val_print): Split inner "i" variable.
416         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
417         header.
418         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
419         more inner scope.
420         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
421         * varobj.c (varobj_update): Rename inner "newobj",
422         "type_changed".
423         * valprint.c (generic_emit_char): Rename inner "buf".
424         * valops.c (find_overload_match): Rename inner "temp".
425         (value_struct_elt_for_reference): Declare "v" in more inner
426         scope.
427         * v850-tdep.c (v850_push_dummy_call): Rename "len".
428         * unittests/array-view-selftests.c (run_tests): Rename inner
429         "vec".
430         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
431         header.
432         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
433         "tsv" in more inner scope.
434         (print_one_static_tracepoint_marker): Rename inner
435         "tuple_emitter".
436         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
437         (tic6x_push_dummy_call): Don't redeclare "addr".
438         * target-float.c: Declare "dto" lower.
439         * symtab.c (lookup_local_symbol): Rename inner "sym".
440         (find_pc_sect_line): Rename inner "pc".
441         * stack.c (print_frame): Don't redeclare "gdbarch".
442         (return_command): Rename inner "gdbarch".
443         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
444         "sp".
445         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
446         header.
447         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
448         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
449         scope.
450         * remote.c (remote_target::update_thread_list): Don't redeclare
451         "tp".
452         (remote_target::process_initial_stop_replies): Rename inner
453         "thread".
454         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
455         (remote_target::wait_as): Don't redeclare "stop_reply".
456         (remote_target::get_thread_local_address): Rename inner
457         "result".
458         (remote_target::get_tib_address): Likewise.
459
460         * regcache.c (cooked_read_test): Rename "regnum".
461         * record-btrace.c (cmd_record_btrace_start): Rename inner
462         "exception".
463         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
464         loop header.
465         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
466         header.
467         (ppu2spu_sniffer): Rename inner "buf".
468         * parse.c (operator_check_standard): Rename inner "type",
469         "objfile".
470         * p-valprint.c (pascal_val_print): Introduce new scope for
471         "low_bound", "high_bound".
472         * p-exp.y (yylex): Declare "i" in loop header.
473         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
474         Lower declaration of "s".
475         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
476         header.
477         (nios2_push_dummy_call): Rename "len".
478         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
479         "buf".
480         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
481         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
482         (linux_xfer_osdata_modules): Likewise.
483         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
484         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
485         (mips_o64_push_dummy_call): Likewise.
486         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
487         "op".
488         * mi/mi-main.c (list_available_thread_groups): Rename inner
489         "tuple_emitter".
490         (mi_cmd_data_read_memory): Rename inner "opts".
491         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
492         "tuple_emitter".
493         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
494         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
495         more inner scope.
496         (parse_partial_symbols): Rename inner "pst", "p", "name"
497         * main.c (captured_main_1): Rename inner "i"s.
498         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
499         "oso2".
500         * linux-tdep.c (linux_info_proc): Rename inner "filename".
501         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
502         * infrun.c (handle_no_resumed): Don't redeclare "thread".
503         (handle_signal_stop): Rename inner "gdbarch".
504         (handle_command): Declare "signum" in loop header.
505         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
506         "status".
507         (examine_prologue): Rename inner "sol" and "sof".
508         (ia64_extract_return_value): Rename inner "val".  Declare another
509         "val" in a more inner scope.
510         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
511         inner scope.
512         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
513         "except".
514         * findvar.c (default_read_var_value): Don't redeclare "addr".
515         * f-exp.y (yylex): Declare "i" in loop header.
516         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
517         Rename inner "type", "expect_type".
518         (evaluate_subexp_for_sizeof): Rename inner "pc".
519         * elfread.c (elf_symfile_read): Rename inner "abfd".
520         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
521         "bytes_read".
522         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
523         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
524         (dwarf_decode_line_header): Rename inner "lh".
525         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
526         "offset".  Declare "i" in loop header.
527         (disassemble_dwarf_expression): Rename inner "addr_size".
528         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
529         inner "result".
530         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
531         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
532         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
533         "inner_list_emitter".
534         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
535         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
536         declaration in a block.
537         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
538         * cp-valprint.c (cp_print_value_fields): Don't redeclare
539         "obstack_final_size".
540         * cp-support.c (inspect_type): Declare "i" in loop header.
541         * compile/compile.c (compile_instance::insert_symbol_error):
542         Rename inner "e".
543         * common/agent.c (agent_run_command): Remove inner "ret"
544         declaration.
545         * coffread.c (coff_symfile_read): Rename inner "name".
546         (coff_symfile_read): Rename inner "abfd".
547         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
548         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
549         "high".
550         * c-exp.y (lex_one_token): Move "len" declaration lower.
551         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
552         "gdbarch".
553         (create_exception_master_breakpoint): Likewise.  Don't redeclare
554         "b".
555         (watch_command_1): Declare "mark" later.
556         (clear_command): Don't shadow "a" or "b".
557         (delete_command): Rename inner "b".
558         (delete_trace_command): Likewise.
559         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
560         "op".
561         (arm_gdbarch_init): Remove inner "e_flags".
562         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
563         "offset" in inner blocks.
564
565 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
566
567         * dwarf-index-write.c (file_write): Don't write if the vector is
568         empty.
569
570 2018-10-05  Tom de Vries  <tdevries@suse.de>
571
572         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
573         PyArg_ParseTuple call.
574
575 2018-10-05  Tom de Vries  <tdevries@suse.de>
576
577         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
578         PyArg_ParseTuple call.
579
580 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
581
582         * psymtab.c (recursively_search_psymtabs): Reformat parameters
583         to avoid exceeding 80 characters per line limit.
584
585 2018-10-04  Tom Tromey  <tom@tromey.com>
586
587         * symfile.c (syms_from_objfile_1, finish_new_objfile)
588         (reread_symbols): Update.
589         * complaints.h (clear_complaints): Remove argument.
590         * complaints.c (enum complaint_series): Remove.
591         (series): Remove global.
592         (complaint_internal): Update.
593         (clear_complaints): Remove argument.
594
595 2018-10-04  Tom Tromey  <tom@tromey.com>
596
597         * symfile.c (symbol_file_add_with_addrs): Do not print "no
598         debugging symbols" message if there is a separate debug objfile.
599
600 2018-10-04  Tom Tromey  <tom@tromey.com>
601
602         PR cli/19551:
603         * symfile.c (symbol_file_add_with_addrs): Update output.
604         * psymtab.c (require_partial_symbols): Update output.
605
606 2018-10-04  Tom Tromey  <tom@tromey.com>
607
608         PR cli/22234:
609         * complaints.c: Emit \n.
610
611 2018-10-04  Tom Tromey  <tom@tromey.com>
612
613         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
614         (separate_debug_file_exists, find_separate_debug_file)
615         (add_symbol_file_command, reread_symbols, allocate_symtab)
616         (allocate_compunit_symtab): Use filtered printing, not
617         unfiltered.
618         * psymtab.c (require_partial_symbols, dump_psymtab)
619         (allocate_psymtab): Use filtered printing, not unfiltered.
620
621 2018-10-04  Tom Tromey  <tom@tromey.com>
622
623         * complaints.c (complaint_internal): Correctly check complaint
624         count.
625
626 2018-10-04  Tom Tromey  <tom@tromey.com>
627
628         * complaints.h (struct complaints): Remove declaration.
629         * complaints.c (clear_complaints): Remove an unused variable.
630
631 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
632
633         * MAINTAINERS (Write After Approval): Add self.
634
635 2018-10-03  Tom Tromey  <tom@tromey.com>
636
637         * guile/scm-value.c (gdbscm_value_to_string): Initialize
638         "buffer_contents".
639         * coffread.c (coff_symtab_read): Initialize "newobj".
640
641 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
642
643         * dwarf2read.c (read_func_scope): Remove struct keyword in
644         range-based for.
645
646 2018-10-03  Tom Tromey  <tom@tromey.com>
647
648         * README: Mention --enable-ubsan.
649         * NEWS: Mention --enable-ubsan.
650         * acinclude.m4: Include sanitize.m4.
651         * configure: Rebuild.
652         * configure.ac: Call AM_GDB_UBSAN.
653         * sanitize.m4: New file.
654
655 2018-10-03  Tom Tromey  <tom@tromey.com>
656
657         * expression.h (enum exp_opcode): Use uint8_t as base type.
658         * expprint.c (op_name): Handle invalid opcodes.
659
660 2018-10-03  Tom Tromey  <tom@tromey.com>
661
662         * parse.c (prefixify_expression): Add assert.
663         (parse_exp_in_context_1): Throw exception if the expression is
664         empty.
665
666 2018-10-03  Tom Tromey  <tom@tromey.com>
667
668         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
669
670 2018-10-03  Tom Tromey  <tom@tromey.com>
671
672         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
673
674 2018-10-03  Tom Tromey  <tom@tromey.com>
675
676         * dwarf2read.c (read_subrange_type): Make "negative_mask"
677         unsigned.
678
679 2018-10-03  Tom Tromey  <tom@tromey.com>
680
681         * findvar.c (extract_integer): Do work in an unsigned type.
682
683 2018-10-03  Tom Tromey  <tom@tromey.com>
684
685         * common/enum-flags.h (enum_flags::operator~): Add static assert.
686         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
687         base type.
688         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
689         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
690         type.
691         * c-lang.h (enum c_string_type_values): Use unsigned as base
692         type.
693         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
694
695 2018-10-03  Tom Tromey  <tom@tromey.com>
696
697         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
698         <~dwarf2_frame_state_reg_info>: Update.
699         <dwarf2_frame_state_reg_info>: Update.
700         <alloc_regs>: Add assertion.  Update.
701         <reg>: Now a std::vector.
702         <num_regs>: Remove.
703         <swap>: Update.
704         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
705         (execute_cfa_program_test, dwarf2_frame_cache): Update.
706
707 2018-10-03  Tom Tromey  <tom@tromey.com>
708
709         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
710
711 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
712
713         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
714
715 2018-10-02  Tom Tromey  <tom@tromey.com>
716
717         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
718
719 2018-10-02  John Darrington <john@darrington.wattle.id.au>
720
721         * NEWS: Mention changed commands.
722         * ser-uds.c: New file.
723         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
724         * configure: Regenerate.
725         * Makefile.in: Add new file.
726         * serial.c (serial_open): Check if filename is a socket
727           and lookup the appropriate interface accordingly.
728
729 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
730
731         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
732         define.
733         (AARCH64_EXTRA_MAGIC): Likewise.
734         (AARCH64_FPSIMD_MAGIC): Likewise.
735         (AARCH64_SVE_MAGIC): Likewise.
736         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
737         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
738         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
739         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
740         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
741         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
742         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
743         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
744         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
745         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
746         (read_aarch64_ctx): Add function.
747         (aarch64_linux_sigframe_init): Detect FP registers.
748
749 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
750
751         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
752         (AARCH64_D0_REGNUM): Likewise.
753         (AARCH64_S0_REGNUM): Likewise.
754         (AARCH64_H0_REGNUM): Likewise.
755         (AARCH64_B0_REGNUM): Likewise.
756         (AARCH64_SVE_V0_REGNUM): Likewise.
757         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
758         (AARCH64_D0_REGNUM): Likewise.
759         (AARCH64_S0_REGNUM): Likewise.
760         (AARCH64_H0_REGNUM): Likewise.
761         (AARCH64_B0_REGNUM): Likewise.
762         (AARCH64_SVE_V0_REGNUM): Likewise.
763
764 2018-10-01  Gary Benson <gbenson@redhat.com>
765
766         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
767         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
768         prfpregset_t instead of gdb_prfpregset_t.
769         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
770         * configure, config.in: Rebuild.
771
772 2018-10-01  Gary Benson <gbenson@redhat.com>
773
774         * common/gdb_proc_service.h: New file, factored out from...
775         * gdb_proc_service.h: Moved common code to the above file.
776         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
777
778 2018-10-01  Gary Benson <gbenson@redhat.com>
779
780         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
781         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
782
783 2018-10-01  Gary Benson <gbenson@redhat.com>
784
785         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
786         (AC_CHECK_HEADERS): Check for linux/elf.h.
787         * configure, config.in: Rebuild.
788         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
789         doesn't define elf_fpregset_t.
790
791 2018-10-01  Gary Benson <gbenson@redhat.com>
792
793         * gdb_proc_service.h: Whitespace change.
794
795 2018-10-01  Tom Tromey  <tom@tromey.com>
796
797         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
798         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
799         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
800
801 2018-10-01  Tom Tromey  <tom@tromey.com>
802
803         * README: Minor change.
804
805 2018-09-30  Pedro Alves  <palves@redhat.com>
806
807         * darwin-nat-info.c (darwin_debug_regions_recurse)
808         (info_mach_exceptions_command): Remove unused local variables.
809         * darwin-nat.c (darwin_decode_notify_message)
810         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
811         (darwin_stop_inferior, darwin_setup_exceptions)
812         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
813         (darwin_nat_target::attach, darwin_nat_target::detach)
814         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
815         local variables.
816         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
817         variables.
818
819 2018-09-29  Tom Tromey  <tom@tromey.com>
820
821         * README: Remove some leftover text.
822
823 2018-09-29  Tom Tromey  <tom@tromey.com>
824
825         * PROBLEMS: Rewrite.
826         * README: Update.
827
828 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
829
830         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
831         case with explicit breakpoint kind.
832         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
833         'additional_info' and related logic.
834         (riscv_debug_breakpoints): New variable.
835         (riscv_breakpoint_kind_from_pc): Use the length of the existing
836         instruction to determine the breakpoint kind.
837         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
838         flag.  Update description of 'set/show riscv
839         use-compressed-breakpoints' flag.
840
841 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
842
843         (NEWS): Mention changes to frame related commands.
844         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
845         (add_prefix_cmd_suppress_notification): New function.
846         (add_com_suppress_notification): Call
847         add_cmd_suppress_notification.
848         * command.h (add_cmd_suppress_notification): Declare.
849         (add_prefix_cmd_suppress_notification): Declare.
850         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
851         (parse_frame_specification): Moved from stack.c, with
852         simplification to handle a single argument.
853         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
854         switch to the selected frame.  Add a header comment.
855         * stack.c: Remove 'safe-ctype.h' include.
856         (find_frame_for_function): Add declaration.
857         (find_frame_for_address): New function.
858         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
859         (frame_selection_by_function_completer): New function.
860         (info_frame_command): Rename to...
861         (info_frame_command_core): ...this, and update parameter types.
862         (select_frame_command): Rename to...
863         (select_frame_command_core): ...this, and update parameter types.
864         (frame_command): Rename to...
865         (frame_command_core): ...this, and update parameter types.
866         (class frame_command_helper): New class to wrap implementations of
867         frame related sub-commands.
868         (frame_apply_cmd_list): New static global.
869         (frame_cmd_list): Make static.
870         (select_frame_cmd_list): New global for sub-commands.
871         (info_frame_cmd_list): New global for sub-commands.
872         (_initialize_stack): Register sub-commands for 'frame',
873         'select-frame', and 'info frame'.  Update 'frame apply' commands
874         to use frame_apply_cmd_list.  Move function local static
875         frame_apply_list to file static frame_apply_cmd_list for
876         consistency.
877         * stack.h (select_frame_command): Delete declarationn.
878         (select_frame_for_mi): Declare new function.
879
880 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
881
882         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
883         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
884         and NOP.
885
886 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
887
888         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
889
890 2018-09-26  Tom Tromey  <tom@tromey.com>
891
892         * valops.c (auto_abandon): Remove dead code.
893
894 2018-09-26  Tom Tromey  <tom@tromey.com>
895
896         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
897
898 2018-09-24  Tom Tromey  <tom@tromey.com>
899
900         * common/pathstuff.c (get_standard_cache_dir): Make
901         "xdg_cache_home" and "home" const.
902         * top.c (init_history): Make "tmpenv" const.
903         * main.c (get_init_files): Make "homedir" const.
904
905 2018-09-23  Tom Tromey  <tom@tromey.com>
906
907         PR python/18852:
908         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
909
910 2018-09-23  Tom Tromey  <tom@tromey.com>
911
912         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
913         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
914         * python/python-internal.h (gdbpy_handle_exception): Declare.
915         * python/py-utils.c (gdbpy_handle_exception): New function.
916
917 2018-09-23  Tom Tromey  <tom@tromey.com>
918
919         PR python/17284:
920         * python/py-type.c (typy_template_argument): Check for negative
921         argument number.
922
923 2018-09-23  Tom Tromey  <tom@tromey.com>
924
925         PR python/14062:
926         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
927
928 2018-09-23  Tom Tromey  <tom@tromey.com>
929
930         PR python/18170:
931         * python/py-value.c (valpy_int): Allow conversion from pointer
932         type.
933
934 2018-09-23  Tom Tromey  <tom@tromey.com>
935
936         PR python/20126:
937         * python/py-value.c (valpy_int): Respect type sign.
938
939 2018-09-23  Tom Tromey  <tom@tromey.com>
940
941         PR python/18352;
942         * python/py-value.c (valpy_float): Allow conversions from int or
943         char.
944         (valpy_int, valpy_long): Allow conversions from float.
945
946 2018-09-23  Tom Tromey  <tom@tromey.com>
947
948         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
949         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
950
951 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
952
953         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
954         __sighndlr.
955         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
956
957 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
958
959         * windows-nat.c (windows_nat_target::wait): Remove a spurious
960         target_terminal::ours().
961
962 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
963
964         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
965         of vl to ULONGEST.
966
967 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
968
969         * breakpoint.c (update_inserted_breakpoint_locations): Remove
970         redundant condition.
971
972 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
973
974         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
975
976         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
977         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
978         * sol-thread.c (ps_pdmodel): Don't guard definition.
979
980         * procfs.c: Fix formatting.
981
982         * procfs.c (sysset_t_alloc): Remove.
983         (create_procinfo): Use XNEW instead of sysset_t_alloc.
984         (procfs_debug_inferior): Likewise.
985         (procfs_set_exec_trap): Likewise.
986         (proc_set_traced_sysentry): Don't allocate argp dynamically.
987         (proc_set_traced_sysexit): Likewise.
988
989         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
990         (dead_procinfo): Likewise.
991         (proc_warn): Likewise.
992         (proc_error): Likewise.
993         (proc_get_LDT_entry): Likewise.
994         (do_attach): Likewise.
995         (procfs_target::pid_to_str): Likewise.
996         (iterate_over_mappings): Likewise.
997
998         * procfs.c (create_procinfo): Fix ARI warning.
999         (proc_get_status): Likewise.
1000         (proc_stop_process): Likewise.
1001         (proc_run_process): Likewise.
1002         (proc_kill): Likewise.
1003         (proc_get_LDT_entry): Likewise.
1004         (procfs_find_LDT_entry): Likewise.
1005         (proc_update_threads): Likewise.
1006         (proc_iterate_over_threads): Likewise.
1007         (do_attach): Likewise.
1008         (procfs_xfer_memory): Likewise.
1009         (invalidate_cache): Likewise.
1010         (procfs_target::resume): Likewise.
1011         (procfs_init_inferior): Likewise.
1012         (procfs_set_exec_trap): Likewise.
1013         (procfs_target::thread_alive): Likewise.
1014         (procfs_target::pid_to_exec_file): Likewise.
1015         (iterate_over_mappings): Likewise.
1016         (procfs_target::make_corefile_notes): Likewise.
1017         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
1018
1019         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
1020         (procfs_find_LDT_entry): Likewise.
1021         * sol-thread.c (ps_lgetLDT): Likewise.
1022
1023 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1024
1025         PR tdep/17903
1026         * procfs.c (procfs_target): Declare pid_to_exec_file.
1027         (procfs_target::pid_to_exec_file): New.
1028
1029 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1030
1031         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
1032         renaming.
1033         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
1034         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
1035
1036 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1037
1038         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
1039         (supply_fpregset, fill_fpregset): Move ...
1040         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
1041         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
1042         Remove references to ioctl-based procfs.
1043         Include <sys/reg.h>.
1044         Remove PR_MODEL_NATIVE guards.
1045         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
1046         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
1047
1048 2018-09-19  Xavier Roirand  <roirand@adacore.com>
1049
1050         PR gdb/20981:
1051         * solib-darwin.c (darwin_get_dyld_bfd): New function.
1052         (darwin_solib_get_all_image_info_addr_at_init): Update call.
1053         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
1054
1055 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
1056
1057         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
1058         (fbsd_print_sockaddr_in6): Likewise.
1059
1060 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
1061             Chris January  <chris.january@arm.com>
1062
1063         * eval.c (skip_undetermined_arglist): Skip argument list helper.
1064         (evaluate_subexp_standard): Return a dummy type when
1065         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
1066         OP_F77_UNDETERMINED_ARGLIST case.
1067         * expression.h (enum noside): Update comment.
1068
1069 2018-09-19  George Vasick <george.vasick@oracle.com>
1070
1071         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
1072
1073 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
1074             April Chin <april.chin@oracle.com>
1075             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1076
1077         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
1078         uint_t lwpid_t.
1079         (create_procinfo): Print pids in /proc without leading zeros.
1080
1081 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
1082
1083         * nios2-tdep.c (nios2_gcc_target_options): New.
1084         (nios2_gdb_arch_init): Install new hook.
1085
1086 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
1087
1088         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
1089         New file.
1090         * update-gnulib.sh: Apply patch.
1091         * configure: Re-generate.
1092
1093 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1094
1095         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
1096         description.  Make "info proc" command descriptions more
1097         consistent.
1098
1099 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1100
1101         * NEWS: Mention 'info proc files' command.
1102
1103 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1104
1105         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
1106         descriptors for IP_FILES and IP_ALL.
1107
1108 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1109
1110         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
1111         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
1112         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
1113         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
1114         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
1115         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
1116         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
1117         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
1118         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
1119         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
1120         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
1121         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
1122         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
1123         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
1124         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
1125         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
1126         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
1127         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
1128         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
1129         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
1130         (struct fbsd_sockaddr_un): New types.
1131         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
1132         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
1133         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
1134         (fbsd_core_info_proc_files): New functions.
1135         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
1136         IP_ALL.
1137         * fbsd-tdep.h (fbsd_info_proc_files_header)
1138         (fbsd_info_proc_files_entry): New.
1139
1140 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1141
1142         * defs.h (enum info_proc_what) [IP_FILES]: New value.
1143         * infcmd.c (info_proc_cmd_files): New function.
1144         (_initialize_infcmd): Register 'info proc files' command.
1145
1146 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1147
1148         * gnulib/aclocal-m4-deps.mk: Re-generate.
1149         * gnulib/aclocal.m4: Re-generate.
1150         * gnulib/config.in: Re-generate.
1151         * gnulib/configure: Re-generate.
1152         * gnulib/import/Makefile.am: Re-generate.
1153         * gnulib/import/Makefile.in: Re-generate.
1154         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
1155         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
1156         * gnulib/import/arpa_inet.in.h: New file.
1157         * gnulib/import/inet_ntop.c: New file.
1158         * gnulib/import/m4/arpa_inet_h.m4: New file.
1159         * gnulib/import/m4/inet_ntop.m4: New file.
1160         * gnulib/import/m4/netinet_in_h.m4: New file.
1161         * gnulib/import/m4/socklen.m4: New file.
1162         * gnulib/import/m4/sockpfaf.m4: New file.
1163         * gnulib/import/m4/stdalign.m4: New file.
1164         * gnulib/import/m4/sys_uio_h.m4: New file.
1165         * gnulib/import/netinet_in.in.h: New file.
1166         * gnulib/import/stdalign.in.h: New file.
1167         * gnulib/import/sys_socket.c: New file.
1168         * gnulib/import/sys_socket.in.h: New file.
1169         * gnulib/import/sys_uio.in.h: New file.
1170         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
1171         module.
1172
1173 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1174
1175         * gnulib/aclocal-m4-deps.mk: New file.
1176         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
1177         deterministically.
1178
1179 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1180
1181         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
1182         KVE_PATH.
1183
1184 2018-09-18  Tom Tromey  <tom@tromey.com>
1185
1186         * compile/compile-object-load.c (struct
1187         link_hash_table_cleanup_data): Add constructor and destructor.
1188         Use DISABLE_COPY_AND_ASSIGN.
1189         (~link_hash_table_cleanup_data): Rename from
1190         link_hash_table_free.  Now a destructor.
1191         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
1192
1193 2018-09-18  Tom Tromey  <tom@tromey.com>
1194
1195         * compile/compile-object-run.c (do_module_cleanup): Use delete.
1196         * compile/compile-object-load.c (struct munmap_list): Move to
1197         header file.
1198         (munmap_list::add): Rename from munmap_list_add; rewrite.
1199         (munmap_list::~munmap_list): Rename from munmap_list_free.
1200         (munmap_listp_free_cleanup): Remove.
1201         (compile_object_load): Update.
1202         * compile/compile-object-load.h (struct munmap_list): Move from
1203         compile-object-load.c.  Rewrite.
1204
1205 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
1206
1207         * aarch64-tdep.c (pass_in_v): Use register size.
1208         (aarch64_extract_return_value): Likewise.
1209         (aarch64_store_return_value): Likewise.
1210
1211 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1212
1213         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
1214         rlim_t.
1215
1216 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1217
1218         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
1219         Fix short help line.
1220
1221 2018-09-17  Tom Tromey  <tom@tromey.com>
1222
1223         PR python/20445:
1224         * configure: Rebuild.
1225         * configure.ac: Conditionally use -DNDEBUG for Python.
1226
1227 2018-09-17  Tom Tromey  <tom@tromey.com>
1228
1229         * configure: Rebuild.
1230         * configure.ac: Use gmp as a library dependency when checking for
1231         mpfr.
1232
1233 2018-09-17  Pedro Alves  <palves@redhat.com>
1234
1235         * python/py-inferior.c (find_inferior_object): Delete.
1236
1237 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
1238
1239         * compile/compile-cplus-types.c
1240         (compile_cplus_instance::enter_scope): Don't use new_scope after
1241         std::move.
1242
1243 2018-09-17  Tom Tromey  <tom@tromey.com>
1244
1245         * common/pathstuff.c (get_standard_cache_dir): Use
1246         ~/Library/Caches on macOS.
1247         * common/pathstuff.h (get_standard_cache_dir): Update comment.
1248
1249 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
1250
1251         PR python/23669
1252         * breakpoint.c (commands_cmd_element): New.
1253         (_initialize_breakpoint): Assign commands_cmd_element.
1254         * breakpoint.h (commands_cmd_element): New.
1255         * cli/cli-script.c (while_cmd_element, if_command,
1256         define_cmd_element): New.
1257         (command_name_equals): Remove.
1258         (process_next_line): Compare commands by pointer, not by name.
1259         (_initialize_cli_script): Assign the various cmd_list_element
1260         variables.
1261         * compile/compile.c (compile_cmd_element): New.
1262         (_initialize_compile): Assign compile_cmd_element.
1263         * compile/compile.h (compile_cmd_element): New.
1264         * guile/guile.c (guile_cmd_element): New.
1265         (install_gdb_commands): Assign guile_cmd_element.
1266         * guile/guile.h (guile_cmd_element): New.
1267         * python/python.c (python_cmd_element): New.
1268         (_initialize_python): Assign python_cmd_element.
1269         * python/python.h (python_cmd_element): New.
1270         * tracepoint.c (while_stepping_cmd_element): New.
1271         (_initialize_tracepoint): Assign while_stepping_cmd_element.
1272         * tracepoint.h (while_stepping_cmd_element): New.
1273
1274 2018-09-17  Tom Tromey  <tom@tromey.com>
1275
1276         * infrun.c (save_infcall_suspend_state): Return
1277         infcall_suspend_state_up.
1278         (save_infcall_control_state): Return infcall_control_state_up.
1279         * inferior.h (save_infcall_suspend_state)
1280         (save_infcall_control_state): Declare later.  Return unique
1281         pointers.
1282
1283 2018-09-17  Tom Tromey  <tom@tromey.com>
1284
1285         * infrun.c (struct stop_context): Declare constructor,
1286         destructor, "changed" method.
1287         (stop_context::stop_context): Rename from save_stop_context.
1288         (stop_context::~stop_context): Rename from
1289         release_stop_context_cleanup.
1290         (normal_stop): Update.
1291         (stop_context::changed): Rename from stop_context_changed.  Return
1292         bool.
1293
1294 2018-09-17  Tom Tromey  <tom@tromey.com>
1295
1296         * inferior.h (struct infcall_suspend_state_deleter): New.
1297         (infcall_suspend_state_up): New typedef.
1298         (struct infcall_control_state_deleter): New.
1299         (infcall_control_state_up): New typedef.
1300         (make_cleanup_restore_infcall_suspend_state)
1301         (make_cleanup_restore_infcall_control_state): Don't declare.
1302         * infcall.c (call_function_by_hand_dummy): Update.
1303         * infrun.c (do_restore_infcall_suspend_state_cleanup)
1304         (make_cleanup_restore_infcall_suspend_state): Remove.
1305         (do_restore_infcall_control_state_cleanup)
1306         (make_cleanup_restore_infcall_control_state): Remove.
1307
1308 2018-09-17  Tom Tromey  <tom@tromey.com>
1309
1310         * gdbthread.h (struct thread_control_state): Add initializer.
1311         (class thread_info) <control>: Remove initializer.
1312         * inferior.h (struct inferior_control_state): Add initializer.
1313         (class inferior) <control>: Remove initializer.
1314         (exit_inferior_1): Update.
1315         * infrun.c (struct infcall_control_state): Add constructors.
1316         (save_infcall_control_state): Use new.
1317         (restore_infcall_control_state, discard_infcall_control_state):
1318         Use delete.
1319
1320 2018-09-17  Tom Tromey  <tom@tromey.com>
1321
1322         * infrun.c (struct infcall_suspend_state) <registers>: Now a
1323         unique_ptr.
1324         <siginfo_data>: Now a unique_xmalloc_ptr.
1325         (save_infcall_suspend_state, restore_infcall_suspend_state)
1326         (discard_infcall_suspend_state)
1327         (get_infcall_suspend_state_regcache): Update.
1328
1329 2018-09-17  Tom Tromey  <tom@tromey.com>
1330
1331         * gdbthread.h (struct thread_suspend_state): Add initializers.
1332         (class thread_info) <suspend>: Remove initializer.
1333         * infrun.c (struct infcall_suspend_state): Add initializers.
1334         (save_infcall_suspend_state): Use new.
1335         (discard_infcall_suspend_state): Use delete.
1336
1337 2018-09-16  Tom Tromey  <tom@tromey.com>
1338
1339         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
1340         Remove.
1341         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
1342         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
1343         (py_varobj_iter_new): Likewise.
1344         (py_varobj_get_iterator): Use gdbpy_ref.
1345
1346 2018-09-16  Tom Tromey  <tom@tromey.com>
1347
1348         * python/py-threadevent.c (py_get_event_thread): Simplify.
1349         * python/py-inferior.c (infpy_thread_from_thread_handle):
1350         Return immediately after calling thread_to_thread_object.  Use
1351         Py_RETURN_NONE.
1352         (thread_to_thread_object): Set the exception on a NULL return.
1353
1354 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
1355
1356         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
1357
1358 2018-09-16  Tom Tromey  <tom@tromey.com>
1359
1360         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
1361         Remove.
1362
1363 2018-09-16  Tom Tromey  <tom@tromey.com>
1364
1365         * python/python-internal.h (thread_to_thread_object): Change
1366         return type.
1367         * python/py-inferior.c (thread_to_thread_object): Return a new
1368         reference.
1369         (infpy_thread_from_thread_handle): Update.
1370         * python/py-infthread.c (gdbpy_selected_thread): Update.
1371         * python/py-stopevent.c (create_stop_event_object): Update.
1372         * python/py-threadevent.c (py_get_event_thread): Return a new
1373         reference.
1374         (py_get_event_thread): Update.
1375         * python/py-event.h (py_get_event_thread): Change return type.
1376         * python/py-continueevent.c (create_continue_event_object):
1377         Update.
1378
1379 2018-09-16  Tom Tromey  <tom@tromey.com>
1380
1381         * python/py-progspace.c (pspy_get_objfiles): Update.
1382         * python/python-internal.h (objfile_to_objfile_object): Change
1383         return type.
1384         * python/py-newobjfileevent.c (create_new_objfile_event_object):
1385         Update.
1386         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1387         Update.
1388         * python/python.c (gdbpy_get_current_objfile): Update.
1389         (gdbpy_objfiles): Update.
1390         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
1391         Update.
1392         (objfile_to_objfile_object): Return a new reference.
1393         * python/py-symtab.c (stpy_get_objfile): Update.
1394         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
1395         Update.
1396
1397 2018-09-16  Tom Tromey  <tom@tromey.com>
1398
1399         * python/py-inferior.c (infpy_get_progspace): Update.
1400         * python/python-internal.h (pspace_to_pspace_object): Change
1401         return type.
1402         * python/py-newobjfileevent.c
1403         (create_clear_objfiles_event_object): Update.
1404         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1405         Update.
1406         * python/python.c (gdbpy_get_current_progspace): Update.
1407         (gdbpy_progspaces): Update.
1408         * python/py-progspace.c (pspace_to_pspace_object): Return a new
1409         reference.
1410         * python/py-objfile.c (objfpy_get_progspace): Update.
1411         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
1412         Update.
1413
1414 2018-09-16  Tom Tromey  <tom@tromey.com>
1415
1416         * python/lib/gdb/__init__.py (current_progspace, objfiles)
1417         (solib_name, block_for_pc, find_pc_line): New functions.
1418         (execute_unwinders): Update.
1419         * python/py-block.c (gdbpy_block_for_pc): Remove.
1420         * python/py-inferior.c (infpy_get_progspace): New function.
1421         (inferior_object_getset) <progspace>: Add.
1422         * python/py-progspace.c (pspy_objfiles): Rewrite.
1423         (pspy_solib_name, pspy_block_for_pc)
1424         (pspy_find_pc_line, pspy_is_valid): New functions.
1425         (progspace_object_methods): Add entries for solib_name,
1426         block_for_pc, find_pc_line, is_valid.
1427         * python/python-internal.h (gdbpy_block_for_pc)
1428         (build_objfiles_list): Don't declare.
1429         * python/python.c: Don't include solib.h.
1430         (gdbpy_solib_name, gdbpy_find_pc_line)
1431         (gdbpy_get_current_progspace, build_objfiles_list)
1432         (gdbpy_objfiles): Remove.
1433         (GdbMethods) <current_progspace, objfiles, block_for_pc,
1434         solib_name, find_pc_line>: Remove entries.
1435
1436 2018-09-16  Tom Tromey  <tom@tromey.com>
1437
1438         * top.c (new_ui_command): Use GNU style for metasyntactic
1439         variables.
1440         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
1441         variables.
1442         * maint.c (maintenance_translate_address): Remove "<>" around
1443         text.
1444         * interps.c (interpreter_exec_cmd): Use GNU style for
1445         metasyntactic variables.
1446         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
1447         metasyntactic variables.
1448         * tracepoint.c (tfind_range_command): Use GNU style for
1449         metasyntactic variables.
1450         (tfind_outside_command): Likewise.
1451         (_initialize_tracepoint): Likewise.
1452         * remote.c (extended_remote_target::create_inferior): Use GNU
1453         style for metasyntactic variables.
1454         * sparc64-tdep.c (adi_examine_command): Use GNU style for
1455         metasyntactic variables.
1456         (adi_assign_command): Likewise.
1457
1458 2018-09-16  Tom Tromey  <tom@tromey.com>
1459
1460         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
1461         metasyntactic variables.  Print message if no disassembler options
1462         are available.
1463
1464 2018-09-15  Tom Tromey  <tom@tromey.com>
1465
1466         * infcmd.c (get_inferior_args): Return const char *.
1467         * inferior.h (get_inferior_args): Return type now const.
1468         * linux-tdep.c (linux_fill_prpsinfo): Update.
1469         * procfs.c (procfs_target::make_corefile_notes): Update.
1470
1471 2018-09-07  Tom Tromey  <tom@tromey.com>
1472
1473         * python/python.c (execute_gdb_command): Call bpstat_do_actions
1474         inside the TRY.
1475
1476 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
1477
1478         * nios2-tdep.c (nios2_type_align): New.
1479         (nios2_gdb_arch_init): Install type_align hook.
1480
1481 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
1482
1483         * eval.c (fake_method::fake_method): Call xzalloc directly for a
1484         type that is neither object file owned, nor gdbarch owned.
1485         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
1486         gdbarch is non-NULL.
1487         (alloc_type_instance): Allocate non-objfile owned types on the
1488         gdbarch obstack.
1489         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
1490         using TYPE_ALLOC to ensure memory is allocated on the correct
1491         obstack.
1492         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
1493         obstack, or the gdbarch obstack.
1494         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
1495
1496 2018-09-14  Tom Tromey  <tom@tromey.com>
1497
1498         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
1499         block.
1500
1501 2018-09-14  Tom Tromey  <tom@tromey.com>
1502
1503         * nat/fork-inferior.c (get_startup_shell): Remove "static".
1504
1505 2018-09-13  Tom Tromey  <tom@tromey.com>
1506
1507         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
1508         static.
1509
1510 2018-09-13  Tom Tromey  <tom@tromey.com>
1511
1512         * exec.c (try_open_exec_file): Use std::string.
1513
1514 2018-09-13  Tom Tromey  <tom@tromey.com>
1515
1516         * utils.h (gdb_bfd_errmsg): Return std::string.
1517         * exec.c (exec_file_attach): Update.
1518         * compile/compile-object-load.c (compile_object_load): Update.
1519         * utils.c (gdb_bfd_errmsg): Return std::string.
1520
1521 2018-09-13  Tom Tromey  <tom@tromey.com>
1522
1523         * procfs.c (struct procinfo_deleter): New.
1524         (procinfo_up): New typedef.
1525         (do_destroy_procinfo_cleanup): Remove.
1526         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
1527
1528 2018-09-13  Tom Tromey  <tom@tromey.com>
1529
1530         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
1531
1532 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1533 2018-09-13  Tom Tromey  <tom@tromey.com>
1534
1535         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
1536         (pspy_get_objfiles): New function.
1537         (progspace_object_methods): New.
1538         (pspace_object_type): Add tp_methods callback.
1539         * python/python-internal.h (build_objfiles_list): New
1540         declaration.
1541         * python/python.c (build_objfiles_list): New function.
1542         (gdbpy_objfiles): Implement using build_objfiles_list.
1543         * NEWS: Mention the Progspace.objfiles method.
1544
1545 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1546
1547         * python/py-inferior.c (infpy_get_progspace): New function.
1548         (inferior_object_getset): Add progspace property.
1549         * NEWS: Mention the new property.
1550
1551 2018-09-13  Tom Tromey  <tom@tromey.com>
1552
1553         PR rust/23650:
1554         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
1555
1556 2018-09-13  Tom Tromey  <tom@tromey.com>
1557
1558         PR rust/23626:
1559         * rust-lang.c (rust_enum_variant): Now static.
1560         (rust_empty_enum_p): New function.
1561         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
1562         Handle empty enum.
1563
1564 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1565
1566         * python/py-inferior.c (infpy_repr): New.
1567         (inferior_object_type): Register infpy_repr.
1568         * python/py-objfile.c (objfpy_repr): New.
1569         (objfile_object_type): Register objfpy_repr.
1570
1571 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
1572
1573         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
1574
1575 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
1576
1577         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
1578         typo.
1579
1580 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
1581
1582         * common/common-utils.c: Don't include '<sys/stat.h>'.
1583         (is_regular_file): Move to...
1584         * common/filestuff.c (is_regular_file): ... here.
1585         * common/common-utils.h (is_regular_file): Move to...
1586         * common/filestuff.h (is_regular_file): ... here.
1587
1588 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
1589
1590         * skip.c (debug_skip): New variable.
1591         (skiplist_entry::do_skip_file_p): Add debug output.
1592         (skiplist_entry::do_skip_gfile_p): Likewise.
1593         (skiplist_entry::skip_function_p): Likewise.
1594         (_initialize_step_skip): Create debug command.
1595         * NEWS: Mention set/show debug skip.
1596
1597 2018-09-11  Xavier Roirand  <roirand@adacore.com>
1598
1599         * darwin-nat.c (should_disable_startup_with_shell):
1600         New function.
1601         (darwin_nat_target::create_inferior): Add call.
1602
1603 2018-09-11  Xavier Roirand  <roirand@adacore.com>
1604
1605         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
1606         inf_port, msg_state>: Initialize.
1607         (struct darwin_thread_info) <signaled, single_step>: Change
1608         type and initialize.
1609         (struct darwin_thread_info) <event>: Initialize.
1610
1611 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
1612
1613         PR gdb/23555
1614         PR gdb/23558
1615         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
1616         guesses.
1617
1618 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
1619
1620         Revert:
1621         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
1622
1623         PR gdb/23555
1624         PR gdb/23558
1625         * gnulib/aclocal.m4: Regenerate.
1626         * gnulib/config.in: Regenerate.
1627         * gnulib/configure: Regenerate.
1628         * gnulib/import/Makefile.am: Update.
1629         * gnulib/import/Makefile.in: Update.
1630         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
1631         * gnulib/import/_Noreturn.h: ... this.
1632         * gnulib/import/alloca.in.h: Update.
1633         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
1634         * gnulib/import/arg-nonnull.h: ... this.
1635         * gnulib/import/assure.h: Update.
1636         * gnulib/import/at-func.c: Update.
1637         * gnulib/import/basename-lgpl.c: Update.
1638         * gnulib/import/extra/snippet/c++defs.h: Rename to...
1639         * gnulib/import/c++defs.h: ... this.
1640         * gnulib/import/canonicalize-lgpl.c: Update.
1641         * gnulib/import/cdefs.h: Update.
1642         * gnulib/import/chdir-long.c: Update.
1643         * gnulib/import/chdir-long.h: Update.
1644         * gnulib/import/cloexec.c: Update.
1645         * gnulib/import/cloexec.h: Update.
1646         * gnulib/import/close.c: Update.
1647         * gnulib/import/closedir.c: Update.
1648         * gnulib/import/config.charset: Update.
1649         * gnulib/import/dirent-private.h: Update.
1650         * gnulib/import/dirent.in.h: Update.
1651         * gnulib/import/dirfd.c: Update.
1652         * gnulib/import/dirname-lgpl.c: Update.
1653         * gnulib/import/dirname.h: Update.
1654         * gnulib/import/dosname.h: Update.
1655         * gnulib/import/dup-safer-flag.c: Update.
1656         * gnulib/import/dup-safer.c: Update.
1657         * gnulib/import/dup.c: Update.
1658         * gnulib/import/dup2.c: Update.
1659         * gnulib/import/errno.in.h: Update.
1660         * gnulib/import/error.c: Update.
1661         * gnulib/import/error.h: Update.
1662         * gnulib/import/exitfail.c: Update.
1663         * gnulib/import/exitfail.h: Update.
1664         * gnulib/import/extra/update-copyright: Update.
1665         * gnulib/import/fchdir.c: Update.
1666         * gnulib/import/fcntl.c: Update.
1667         * gnulib/import/fcntl.in.h: Update.
1668         * gnulib/import/fd-hook.c: Update.
1669         * gnulib/import/fd-hook.h: Update.
1670         * gnulib/import/fd-safer-flag.c: Update.
1671         * gnulib/import/fd-safer.c: Update.
1672         * gnulib/import/fdopendir.c: Update.
1673         * gnulib/import/filename.h: Update.
1674         * gnulib/import/filenamecat-lgpl.c: Update.
1675         * gnulib/import/filenamecat.h: Update.
1676         * gnulib/import/flexmember.h: Update.
1677         * gnulib/import/float+.h: Update.
1678         * gnulib/import/float.c: Update.
1679         * gnulib/import/float.in.h: Update.
1680         * gnulib/import/fnmatch.c: Update.
1681         * gnulib/import/fnmatch.in.h: Update.
1682         * gnulib/import/fnmatch_loop.c: Update.
1683         * gnulib/import/fpucw.h: Update.
1684         * gnulib/import/frexp.c: Update.
1685         * gnulib/import/frexpl.c: Update.
1686         * gnulib/import/fstat.c: Update.
1687         * gnulib/import/fstatat.c: Update.
1688         * gnulib/import/getcwd-lgpl.c: Update.
1689         * gnulib/import/getcwd.c: Update.
1690         * gnulib/import/getdtablesize.c: Update.
1691         * gnulib/import/getlogin_r.c: Update.
1692         * gnulib/import/getprogname.c: Update.
1693         * gnulib/import/getprogname.h: Update.
1694         * gnulib/import/gettext.h: Update.
1695         * gnulib/import/gettimeofday.c: Update.
1696         * gnulib/import/glob-libc.h: Update.
1697         * gnulib/import/glob.c: Update.
1698         * gnulib/import/glob.in.h: Update.
1699         * gnulib/import/glob_internal.h: Update.
1700         * gnulib/import/glob_pattern_p.c: Update.
1701         * gnulib/import/globfree.c: Update.
1702         * gnulib/import/hard-locale.c: Update.
1703         * gnulib/import/hard-locale.h: Update.
1704         * gnulib/import/intprops.h: Update.
1705         * gnulib/import/inttypes.in.h: Update.
1706         * gnulib/import/isnan.c: Update.
1707         * gnulib/import/isnand-nolibm.h: Update.
1708         * gnulib/import/isnand.c: Update.
1709         * gnulib/import/isnanl-nolibm.h: Update.
1710         * gnulib/import/isnanl.c: Update.
1711         * gnulib/import/itold.c: Update.
1712         * gnulib/import/libc-config.h: Update.
1713         * gnulib/import/limits.in.h: Update.
1714         * gnulib/import/localcharset.c: Update.
1715         * gnulib/import/localcharset.h: Update.
1716         * gnulib/import/localtime-buffer.c: Update.
1717         * gnulib/import/localtime-buffer.h: Update.
1718         * gnulib/import/lstat.c: Update.
1719         * gnulib/import/m4/00gnulib.m4: Update.
1720         * gnulib/import/m4/__inline.m4: Update.
1721         * gnulib/import/m4/absolute-header.m4: Update.
1722         * gnulib/import/m4/alloca.m4: Update.
1723         * gnulib/import/m4/builtin-expect.m4: Update.
1724         * gnulib/import/m4/canonicalize.m4: Update.
1725         * gnulib/import/m4/chdir-long.m4: Update.
1726         * gnulib/import/m4/close.m4: Update.
1727         * gnulib/import/m4/closedir.m4: Update.
1728         * gnulib/import/m4/configmake.m4: Update.
1729         * gnulib/import/m4/d-ino.m4: Update.
1730         * gnulib/import/m4/d-type.m4: Update.
1731         * gnulib/import/m4/dirent_h.m4: Update.
1732         * gnulib/import/m4/dirfd.m4: Update.
1733         * gnulib/import/m4/dirname.m4: Update.
1734         * gnulib/import/m4/double-slash-root.m4: Update.
1735         * gnulib/import/m4/dup.m4: Update.
1736         * gnulib/import/m4/dup2.m4: Update.
1737         * gnulib/import/m4/eealloc.m4: Update.
1738         * gnulib/import/m4/environ.m4: Update.
1739         * gnulib/import/m4/errno_h.m4: Update.
1740         * gnulib/import/m4/error.m4: Update.
1741         * gnulib/import/m4/exponentd.m4: Update.
1742         * gnulib/import/m4/exponentl.m4: Update.
1743         * gnulib/import/m4/extensions.m4: Update.
1744         * gnulib/import/m4/extern-inline.m4: Update.
1745         * gnulib/import/m4/fchdir.m4: Update.
1746         * gnulib/import/m4/fcntl-o.m4: Update.
1747         * gnulib/import/m4/fcntl.m4: Update.
1748         * gnulib/import/m4/fcntl_h.m4: Update.
1749         * gnulib/import/m4/fdopendir.m4: Update.
1750         * gnulib/import/m4/filenamecat.m4: Update.
1751         * gnulib/import/m4/flexmember.m4: Update.
1752         * gnulib/import/m4/float_h.m4: Update.
1753         * gnulib/import/m4/fnmatch.m4: Update.
1754         * gnulib/import/m4/fnmatch_h.m4: Update.
1755         * gnulib/import/m4/fpieee.m4: Update.
1756         * gnulib/import/m4/frexp.m4: Update.
1757         * gnulib/import/m4/frexpl.m4: Update.
1758         * gnulib/import/m4/fstat.m4: Update.
1759         * gnulib/import/m4/fstatat.m4: Update.
1760         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
1761         * gnulib/import/m4/getcwd-path-max.m4: Update.
1762         * gnulib/import/m4/getcwd.m4: Update.
1763         * gnulib/import/m4/getdtablesize.m4: Update.
1764         * gnulib/import/m4/getlogin.m4: Update.
1765         * gnulib/import/m4/getlogin_r.m4: Update.
1766         * gnulib/import/m4/getpagesize.m4: Update.
1767         * gnulib/import/m4/getprogname.m4: Update.
1768         * gnulib/import/m4/gettimeofday.m4: Update.
1769         * gnulib/import/m4/glibc21.m4: Update.
1770         * gnulib/import/m4/glob.m4: Update.
1771         * gnulib/import/m4/glob_h.m4: Update.
1772         * gnulib/import/m4/gnulib-cache.m4: Update.
1773         * gnulib/import/m4/gnulib-common.m4: Update.
1774         * gnulib/import/m4/gnulib-comp.m4: Update.
1775         * gnulib/import/m4/gnulib-tool.m4: Update.
1776         * gnulib/import/m4/hard-locale.m4: Update.
1777         * gnulib/import/m4/include_next.m4: Update.
1778         * gnulib/import/m4/inttypes-pri.m4: Update.
1779         * gnulib/import/m4/inttypes.m4: Update.
1780         * gnulib/import/m4/isnand.m4: Update.
1781         * gnulib/import/m4/isnanl.m4: Update.
1782         * gnulib/import/m4/largefile.m4: Update.
1783         * gnulib/import/m4/limits-h.m4: Update.
1784         * gnulib/import/m4/localcharset.m4: Update.
1785         * gnulib/import/m4/locale-fr.m4: Update.
1786         * gnulib/import/m4/locale-ja.m4: Update.
1787         * gnulib/import/m4/locale-zh.m4: Update.
1788         * gnulib/import/m4/localtime-buffer.m4: Update.
1789         * gnulib/import/m4/longlong.m4: Update.
1790         * gnulib/import/m4/lstat.m4: Update.
1791         * gnulib/import/m4/malloc.m4: Update.
1792         * gnulib/import/m4/malloca.m4: Update.
1793         * gnulib/import/m4/math_h.m4: Update.
1794         * gnulib/import/m4/mbrtowc.m4: Update.
1795         * gnulib/import/m4/mbsinit.m4: Update.
1796         * gnulib/import/m4/mbsrtowcs.m4: Update.
1797         * gnulib/import/m4/mbstate_t.m4: Update.
1798         * gnulib/import/m4/memchr.m4: Update.
1799         * gnulib/import/m4/memmem.m4: Update.
1800         * gnulib/import/m4/mempcpy.m4: Update.
1801         * gnulib/import/m4/memrchr.m4: Update.
1802         * gnulib/import/m4/mkdir.m4: Update.
1803         * gnulib/import/m4/mkstemp.m4: Update.
1804         * gnulib/import/m4/mmap-anon.m4: Update.
1805         * gnulib/import/m4/mode_t.m4: Update.
1806         * gnulib/import/m4/msvc-inval.m4: Update.
1807         * gnulib/import/m4/msvc-nothrow.m4: Update.
1808         * gnulib/import/m4/multiarch.m4: Update.
1809         * gnulib/import/m4/nocrash.m4: Update.
1810         * gnulib/import/m4/off_t.m4: Update.
1811         * gnulib/import/m4/onceonly.m4: Update.
1812         * gnulib/import/m4/open-cloexec.m4: Update.
1813         * gnulib/import/m4/open.m4: Update.
1814         * gnulib/import/m4/openat.m4: Update.
1815         * gnulib/import/m4/opendir.m4: Update.
1816         * gnulib/import/m4/pathmax.m4: Update.
1817         * gnulib/import/m4/rawmemchr.m4: Update.
1818         * gnulib/import/m4/readdir.m4: Update.
1819         * gnulib/import/m4/readlink.m4: Update.
1820         * gnulib/import/m4/realloc.m4: Update.
1821         * gnulib/import/m4/rename.m4: Update.
1822         * gnulib/import/m4/rewinddir.m4: Update.
1823         * gnulib/import/m4/rmdir.m4: Update.
1824         * gnulib/import/m4/save-cwd.m4: Update.
1825         * gnulib/import/m4/secure_getenv.m4: Update.
1826         * gnulib/import/m4/setenv.m4: Update.
1827         * gnulib/import/m4/signal_h.m4: Update.
1828         * gnulib/import/m4/ssize_t.m4: Update.
1829         * gnulib/import/m4/stat-time.m4: Update.
1830         * gnulib/import/m4/stat.m4: Update.
1831         * gnulib/import/m4/std-gnu11.m4: Update.
1832         * gnulib/import/m4/stdbool.m4: Update.
1833         * gnulib/import/m4/stddef_h.m4: Update.
1834         * gnulib/import/m4/stdint.m4: Update.
1835         * gnulib/import/m4/stdio_h.m4: Update.
1836         * gnulib/import/m4/stdlib_h.m4: Update.
1837         * gnulib/import/m4/strchrnul.m4: Update.
1838         * gnulib/import/m4/strdup.m4: Update.
1839         * gnulib/import/m4/strerror.m4: Update.
1840         * gnulib/import/m4/string_h.m4: Update.
1841         * gnulib/import/m4/strstr.m4: Update.
1842         * gnulib/import/m4/strtok_r.m4: Update.
1843         * gnulib/import/m4/sys_socket_h.m4: Update.
1844         * gnulib/import/m4/sys_stat_h.m4: Update.
1845         * gnulib/import/m4/sys_time_h.m4: Update.
1846         * gnulib/import/m4/sys_types_h.m4: Update.
1847         * gnulib/import/m4/tempname.m4: Update.
1848         * gnulib/import/m4/time_h.m4: Update.
1849         * gnulib/import/m4/unistd-safer.m4: Update.
1850         * gnulib/import/m4/unistd_h.m4: Update.
1851         * gnulib/import/m4/warn-on-use.m4: Update.
1852         * gnulib/import/m4/wchar_h.m4: Update.
1853         * gnulib/import/m4/wchar_t.m4: Update.
1854         * gnulib/import/m4/wctype_h.m4: Update.
1855         * gnulib/import/m4/wint_t.m4: Update.
1856         * gnulib/import/malloc.c: Update.
1857         * gnulib/import/malloc/scratch_buffer.h: Update.
1858         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
1859         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
1860         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
1861         * gnulib/import/malloca.c: Update.
1862         * gnulib/import/malloca.h: Update.
1863         * gnulib/import/malloca.valgrind: Update.
1864         * gnulib/import/math.in.h: Update.
1865         * gnulib/import/mbrtowc.c: Update.
1866         * gnulib/import/mbsinit.c: Update.
1867         * gnulib/import/mbsrtowcs-impl.h: Update.
1868         * gnulib/import/mbsrtowcs-state.c: Update.
1869         * gnulib/import/mbsrtowcs.c: Update.
1870         * gnulib/import/memchr.c: Update.
1871         * gnulib/import/memmem.c: Update.
1872         * gnulib/import/mempcpy.c: Update.
1873         * gnulib/import/memrchr.c: Update.
1874         * gnulib/import/mkdir.c: Update.
1875         * gnulib/import/mkstemp.c: Update.
1876         * gnulib/import/msvc-inval.c: Update.
1877         * gnulib/import/msvc-inval.h: Update.
1878         * gnulib/import/msvc-nothrow.c: Update.
1879         * gnulib/import/msvc-nothrow.h: Update.
1880         * gnulib/import/open.c: Update.
1881         * gnulib/import/openat-die.c: Update.
1882         * gnulib/import/openat-priv.h: Update.
1883         * gnulib/import/openat-proc.c: Update.
1884         * gnulib/import/openat.c: Update.
1885         * gnulib/import/openat.h: Update.
1886         * gnulib/import/opendir.c: Update.
1887         * gnulib/import/pathmax.h: Update.
1888         * gnulib/import/pipe-safer.c: Update.
1889         * gnulib/import/rawmemchr.c: Update.
1890         * gnulib/import/readdir.c: Update.
1891         * gnulib/import/readlink.c: Update.
1892         * gnulib/import/realloc.c: Update.
1893         * gnulib/import/ref-add.sin: Update.
1894         * gnulib/import/ref-del.sin: Update.
1895         * gnulib/import/rename.c: Update.
1896         * gnulib/import/rewinddir.c: Update.
1897         * gnulib/import/rmdir.c: Update.
1898         * gnulib/import/same-inode.h: Update.
1899         * gnulib/import/save-cwd.c: Update.
1900         * gnulib/import/save-cwd.h: Update.
1901         * gnulib/import/scratch_buffer.h: Update.
1902         * gnulib/import/secure_getenv.c: Update.
1903         * gnulib/import/setenv.c: Update.
1904         * gnulib/import/signal.in.h: Update.
1905         * gnulib/import/stat-time.c: Update.
1906         * gnulib/import/stat-time.h: Update.
1907         * gnulib/import/stat-w32.c: Update.
1908         * gnulib/import/stat-w32.h: Update.
1909         * gnulib/import/stat.c: Update.
1910         * gnulib/import/stdbool.in.h: Update.
1911         * gnulib/import/stddef.in.h: Update.
1912         * gnulib/import/stdint.in.h: Update.
1913         * gnulib/import/stdio.in.h: Update.
1914         * gnulib/import/stdlib.in.h: Update.
1915         * gnulib/import/str-two-way.h: Update.
1916         * gnulib/import/strchrnul.c: Update.
1917         * gnulib/import/strdup.c: Update.
1918         * gnulib/import/streq.h: Update.
1919         * gnulib/import/strerror-override.c: Update.
1920         * gnulib/import/strerror-override.h: Update.
1921         * gnulib/import/strerror.c: Update.
1922         * gnulib/import/string.in.h: Update.
1923         * gnulib/import/stripslash.c: Update.
1924         * gnulib/import/strnlen1.c: Update.
1925         * gnulib/import/strnlen1.h: Update.
1926         * gnulib/import/strstr.c: Update.
1927         * gnulib/import/strtok_r.c: Update.
1928         * gnulib/import/sys_stat.in.h: Update.
1929         * gnulib/import/sys_time.in.h: Update.
1930         * gnulib/import/sys_types.in.h: Update.
1931         * gnulib/import/tempname.c: Update.
1932         * gnulib/import/tempname.h: Update.
1933         * gnulib/import/time.in.h: Update.
1934         * gnulib/import/unistd--.h: Update.
1935         * gnulib/import/unistd-safer.h: Update.
1936         * gnulib/import/unistd.in.h: Update.
1937         * gnulib/import/unsetenv.c: Update.
1938         * gnulib/import/verify.h: Update.
1939         * gnulib/import/extra/snippet/warn-on-use.h: Update.
1940         * gnulib/import/wchar.in.h: Update.
1941         * gnulib/import/wctype.in.h: Update.
1942         * gnulib/import/xalloc-oversized.h: Update.
1943         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
1944         "53e2c179f26a890fa6685af4b6c1397ee370433b".
1945
1946 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
1947
1948         * record-btrace.c (get_thread_current_frame): Remove
1949         old_inferior_ptid.
1950
1951 2018-09-10  Jerome Guitton  <guitton@adacore.com>
1952
1953         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
1954         with check_tag to 1 if and only if the type is tagged and the
1955         component being searched cannot been found in the current
1956         view. Otherwise, always call ada_to_fixed_type with
1957         check_tag to 0.
1958
1959 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1960
1961         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
1962         declaration.
1963         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
1964         * ada-varobj.c (ada_varobj_get_number_of_children,
1965         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
1966
1967 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1968
1969         * ada-valprint.c (ada_value_print): Use type instead of
1970         enclosing type.
1971
1972 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1973
1974         * ada-lang.c (ada_value_subscript): Handle case when parameter is
1975         an array of access to unconstrained array.
1976
1977 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1978
1979         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
1980         (ada_check_typedef): Use it.
1981
1982 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1983
1984         * ada-varobj.c (ada_varobj_describe_struct_child)
1985         (ada_varobj_describe_child): Handle union case like struct one.
1986
1987 2018-09-10  Tom Tromey  <tom@tromey.com>
1988
1989         PR python/18380:
1990         * python/python.c (_initialize_python): Make example in "python"
1991         help work in Python 3.
1992
1993 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
1994
1995         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
1996         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
1997         $(EXEEXT) to the script, as it is not a program.
1998
1999 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
2000
2001         * python/py-prettyprint.c (pretty_print_one_value): Return
2002         gdbpy_ref<>.
2003         (print_string_repr): Adjust.
2004         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
2005         * python/python-internal.h (apply_varobj_pretty_printer): Return
2006         gdbpy_ref<>.
2007         * varobj.c (varobj_value_get_print_value): Adjust.
2008
2009 2018-09-08  Tom Tromey  <tom@tromey.com>
2010
2011         PR python/16047:
2012         * python/py-prettyprint.c (pretty_print_one_value): Check for
2013         to_string method.
2014
2015 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2016
2017         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
2018         replace_operator_with_call.
2019
2020 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2021
2022         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
2023
2024 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2025
2026         * ada-typeprint.c (print_range): Print the bounds using TYPE
2027         rather than its TYPE_TARGET_TYPE.
2028
2029 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2030
2031         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
2032         call to ada_to_fixed_value_create.
2033
2034 2018-09-08  Jerome Guitton  <guitton@adacore.com>
2035
2036         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
2037
2038 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2039
2040         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
2041         by calls to error.
2042
2043 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2044
2045         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
2046         Move update of loop variable "fi".
2047
2048 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2049
2050         * ada-lang.c (value_assign_to_component): In the case of
2051         big-endian targets, extract the bits of the given VAL
2052         using an src_offset of zero if container is not a scalar.
2053
2054 2018-09-06  Simon Ser  <contact@emersion.fr>
2055
2056         PR gdb/23105
2057         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
2058         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2059         * fbsd-tdep.c (fbsd_make_note_desc): New.
2060         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
2061         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
2062         * target.h (enum target_object) Add FreeBSD-specific
2063         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2064
2065 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2066
2067         * compile/compile-c.h (generate_c_for_variable_locations):
2068         Change reference to pointer.
2069         * compile/compile-c-support.c (compile_program) <compute>:
2070         Likewise.
2071         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
2072         (generate_c_for_for_one_variable): Likewise
2073         (generate_c_for_variable_locations): Likewise
2074         * compile/compile-c-types.c (compile_c_instance::convert_type):
2075         Likewise
2076         * compile/compile-cplus-symbols.c (convert_one_symbol):
2077         std::move the scope passed to enter_scope.
2078         * compile/compile-cplus-types.c
2079         (compile_cplus_instance::enter_scope): Make parameter
2080         rvalue-reference.
2081         (compile_cplus_instance::new_scope): Change reference to
2082         pointer.
2083         (compile_cplus_instance::convert_type): Likewise
2084         (compile_cplus_convert_typedef): std::move the scope passed to
2085         enter_scope.
2086         (compile_cplus_convert_struct_or_union): Likewise.
2087         (compile_cplus_convert_enum): Likewise.
2088         (compile_cplus_convert_namespace): Likewise.
2089         * compile/compile-cplus.h (compile_cplus_instance)
2090         <enter_scope>: Make parameter rvalue-reference.
2091         * compile/compile-internal.h (compile_instance)
2092         <get_cached_type>: Likewise
2093         * compile/compile-loc2c.c (push): Likewise
2094         (pushf): Likewise
2095         (unary): Likewise
2096         (binary): Likewise
2097         (print_label): Likewise
2098         (pushf_register_address): Likewise
2099         (pushf_register): Likewise
2100         (do_compile_dwarf_expr_to_c): Likewise
2101         (compile_dwarf_expr_to_c): Likewise
2102         (compile_dwarf_bounds_to_c): Likewise
2103         * compile/compile.c (compile_instance::get_cached_type):
2104         Likewise
2105         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
2106         (compile_dwarf_bounds_to_c): Likewise
2107         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
2108         (dwarf2_compile_property_to_c): Likewise
2109         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
2110         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
2111         Likewise
2112
2113 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2114
2115         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
2116         * tui/tui-data.c (init_content_element): Don't initialize it.
2117
2118 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2119
2120         * tui/tui-data.h (struct tui_win_info)
2121         <detail::opaque>: Remove.
2122         * tui/tui-data.c (init_win_info): Remove assignment.
2123
2124 2018-09-05  Tom Tromey  <tom@tromey.com>
2125
2126         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
2127         -Wformat-nonliteral.
2128         * target-float.c (host_float_ops<T>::to_string)
2129         (host_float_ops<T>::from_string): Use
2130         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2131         * configure: Rebuild.
2132
2133 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
2134
2135         * printcmd.c (printf_c_string): Use
2136         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2137         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
2138
2139 2018-09-05  Tom Tromey  <tom@tromey.com>
2140
2141         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
2142
2143 2018-09-05  Tom de Vries  <tdevries@suse.de>
2144
2145         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
2146         with resolve_abstract_p == true.
2147         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
2148         defaulting to false. Propagate resolve_abstract_p to
2149         dwarf2_fetch_die_loc_sect_off.
2150         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
2151         parameter, defaulting to false.
2152         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
2153         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
2154         parameter.
2155         * dwarf2read.h (struct die_info): Forward-declare.
2156         (die_info_ptr): New typedef.
2157         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
2158
2159 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
2160
2161         GDB 8.2 released.
2162
2163 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
2164             Pedro Alves  <palves@redhat.com>
2165
2166         * gnulib/Makefile.in (aclocal_m4_deps): Move to
2167         "aclocal-m4-deps.mk".  Include file here.
2168         $(srcdir)/aclocal.m4: Add "configure.ac".
2169         * gnulib/aclocal-m4-deps.mk: New file.
2170         * gnulib/update-gnulib.sh: Automatically update
2171         "aclocal-m4-deps.mk".
2172
2173 2018-09-04  Tom Tromey  <tom@tromey.com>
2174
2175         * configure: Rebuild.
2176         * configure.ac: Remove multi-ice code.
2177
2178 2018-09-04  Tom Tromey  <tom@tromey.com>
2179
2180         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
2181         (ada-exp.o): Update.
2182
2183 2018-09-04  Tom Tromey  <tom@tromey.com>
2184
2185         * Makefile.in (printcmd.o, target-float.o): Remove.
2186         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
2187
2188 2018-09-04  Tom Tromey  <tom@tromey.com>
2189
2190         * gnulib/Makefile.in: Remove obsolete comment.
2191         * Makefile.in: Remove obsolete comment.
2192
2193 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
2194
2195         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
2196         line with '+'.
2197
2198 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2199
2200         * riscv-tdep.c: Add 'prologue-value.h' include.
2201         (struct riscv_unwind_cache): New struct.
2202         (riscv_debug_unwinder): New global.
2203         (riscv_scan_prologue): Update arguments, capture register details
2204         from prologue scan.
2205         (riscv_skip_prologue): Reformat arguments line, move end of
2206         prologue calculation into riscv_scan_prologue.
2207         (riscv_frame_cache): Update return type, create
2208         riscv_unwind_cache, scan the prologue, and fill in remaining cache
2209         details.
2210         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
2211         (riscv_frame_prev_register): Use the trad_frame within the
2212         riscv_unwind_cache.
2213         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
2214         flag.
2215
2216 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2217
2218         * trad-frame.h (trad_frame_set_realreg): Declare.
2219         (trad_frame_set_addr): Declare.
2220         * trad-frame.c (trad_frame_set_realreg): Define new function.
2221         (trad_frame_set_addr): Define new function.
2222         (trad_frame_set_reg_realreg): Use new function.
2223         (trad_frame_set_reg_addr): Use new function.
2224
2225 2018-09-01  Keith Seitz  <keiths@redhat.com>
2226
2227         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
2228         pulongest instead of "%lld".
2229         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
2230         ATTRIBUTE_UNUSED.
2231
2232 2018-08-31  Tom Tromey  <tom@tromey.com>
2233
2234         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
2235         variant part type.
2236
2237 2018-08-31  Pedro Alves  <palves@redhat.com>
2238
2239         * gdbarch.h: Regenerate.
2240
2241 2018-08-31  Pedro Alves  <palves@redhat.com>
2242
2243         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
2244         * target.h (Hardware watchpoint interfaces): Describe
2245         continuable/steppable/non-steppable watchpoints.
2246         * gdbarch.h, gdbarch.c: Regenerate.
2247
2248 2018-08-31  Pedro Alves  <palves@redhat.com>
2249
2250         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
2251         Delete.
2252         * s390-linux-nat.c
2253         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
2254         * target.h (target_ops::have_continuable_watchpoint): Delete.
2255         (target_have_continuable_watchpoint): Delete.
2256         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
2257         * target-delegates.c: Regenerate.
2258
2259 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
2260
2261         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
2262         the files present in "gnulib/import/m4/".
2263
2264 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2265
2266         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
2267         c.sw, c.swsp, and c.sdsp.
2268
2269 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2270
2271         * riscv-tdep.c (struct riscv_inferior_data): Delete.
2272         (riscv_read_misa_reg): Don't cache value read into inferior data.
2273         (riscv_new_inferior_data): Delete.
2274         (riscv_inferior_data_cleanup): Delete.
2275         (riscv_inferior_data): Delete.
2276         (riscv_invalidate_inferior_data): Delete.
2277         (_initialize_riscv_tdep): Remove initialisation of inferior data.
2278
2279 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
2280
2281         * compile/compile-cplus-types.c
2282         (compile_cplus_instance::leave_scope): Take the address of scope
2283         object.
2284         (compile_cplus_instance::convert_qualified_base): Compare quals
2285         to 0.
2286
2287 2018-08-30  Keith Seitz  <keiths@redhat.com>
2288
2289         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
2290         Use "%s" and host_address_to_string instead of "%p" in printf.
2291
2292 2018-08-29  Keith Seitz  <keiths@redhat.com>
2293
2294         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
2295         and compile-cplus-types.c.
2296         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
2297         * c-lang.c (cplus_language_defn): Set C++ compile functions.
2298         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
2299         Declare.
2300         * compile/compile-c-support.c: Include compile-cplus.h.
2301         (load_libcompile): Templatize.
2302         (get_compile_context): "New" function.
2303         (c_get_compile_context): Use get_compile_context.
2304         (cplus_get_compile_context): New function.
2305         (cplus_push_user_expression, cplus_pop_user_expression)
2306         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
2307         (cplus_compute_program): Define new structs/functions.
2308         * compile/compile-cplus-symmbols.c: New file.
2309         * compile/compile-cplus-types.c: New file.
2310         * compile/compile-cplus.h: New file.
2311         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
2312         Declare.
2313         * compile/compile-object-load.c (get_out_value_type): Use
2314         strncmp_iw when comparing symbol names.
2315         (compile_object_load): Add mst_bss and mst_data.
2316         * compile/compile.c (_initialize_compile): Remove
2317         -Wno-implicit-function-declaration from `compile_args'.
2318         * compile/gcc-cp-plugin.h: New file.
2319         * NEWS: Mention C++ compile support and new debug options.
2320
2321 2018-08-29  Keith Seitz  <keiths@redhat.com>
2322
2323         * linespec.c (collect_info::add_symbol): Make virtual.
2324         (struct symbol_searcher_collect_info): New struct.
2325         (symbol_searcher::find_all_symbols): New method.
2326         * symtab.h (class symbol_searcher): New class.
2327
2328 2018-08-29  Keith Seitz  <keiths@redhat.com>
2329
2330         * linespec.c (struct linespec) <function_symbols, label_symbols>:
2331         Change to vector of block_symbol.  Update all users.
2332         (struct collect_info) <symbols>: Likewise.
2333         (collect_info::add_symbol): Take block_symbol as argument.
2334         Update all callers.
2335         (decode_compound_collector) <m_symbols>: Change type to vector
2336         of block_symbol.  Update all users.
2337         (decode_compound_collector::operator ()): Change parameter type
2338         to block_symbol.
2339         (find_method, find_function_symbols, find_linespec_symbols)
2340         (find_label_symbols_in_block, find_label_symbols): Change symbol
2341         vectors to block_symbol vectors.
2342         * symtab.h (symbol_found_callback_ftype): Change parameter type to
2343         block_symbol.
2344
2345 2018-08-29  Keith Seitz  <keiths@redhat.com>
2346
2347         * linespec.c (symbolp): Remove typedef and VEC definitions.
2348         (bound_minimal_symbol_d): Likewise.
2349
2350 2018-08-29  Keith Seitz  <keiths@redhat.com>
2351
2352         * linespec.c (decode_compound_collector::decode_compound_collector):
2353         Remove initialization for `m_symtabs'.
2354         (decode_compound_collector::release_symbols): Change return type
2355         to std::vector.  Update all callers.
2356         (class decode_compound_collector) <m_symbols>: Change type to
2357         std::vector.
2358         (lookup_prefix_sym): Change return type to std::vector.  Update all
2359         callers.
2360         (compare_symbols): Remove.
2361         (std_compare_symbols): Rename to `compare_symbols'.
2362         (find_method): Change `sym_classes' parameter to std::vector.
2363         Update all callers.  Use std::sort to sort sym_classes.
2364         (find_linespec_symbols): Remove cleanup.
2365
2366 2018-08-29  Keith Seitz  <keiths@redhat.com>
2367
2368         * linespec.c (struct linespec) <minimal_symbols>: Change type to
2369         std::vector.  Update all users.
2370         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
2371         (struct collect_info) <minimal_symbols>: Likewise.
2372         (compare_msymbols): Return bool.  Change parameters to const
2373         bound_minimal_symbol references.
2374         (find_method, find_function_symbols, find_linespec_symbols): Change
2375         `minsyms' parameter to std::vector.  Update all callers.
2376
2377 2018-08-29  Keith Seitz  <keiths@redhat.com>
2378
2379         * linespec.c (struct linespec) <label_symbols>: Change type to
2380         std::vector.  Update all users.
2381         (find_label_symbols_in_block): Change `result' parameter to
2382         std::vector.  Update all callers.
2383         (find_label_symbols): Return std::vector.  Update all callers.
2384
2385 2018-08-29  Keith Seitz  <keiths@redhat.com>
2386
2387         * linespec.c (struct linespec) <function_symbols>: Change type to
2388         std::vector.  Update all users.
2389         (struct collect_info) <function_symbols>: Likewise.
2390         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
2391         (std_compare_symbols): New function.
2392         (find_method, find_function_symbols, find_linespec_symbols)
2393         (find_label_symbols_in_block): Change `symbols' parameter to
2394         std::vector.  Update all callers.
2395         (find_label_symbols): Likewise for `function_symbols' and
2396         `label_funcs_ret'.
2397
2398 2018-08-29  Keith Seitz  <keiths@redhat.com>
2399
2400         * linespec.c (symtab_vector_up): Define.
2401         (struct linespec) <file_symtabs>: Change type to std::vector *.
2402         Update all uses.
2403         (struct collect_info) <file_symtabs>: Likewise.
2404         (collect_symtabs_from_filename): Return symtab_vector_up.
2405         Update all callers.
2406         (decode_objc): Remove cleanup.
2407         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
2408         (symtab_collector::release_symtabs): Return symtab_vector_up.
2409         Update all callers.
2410         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
2411         Update all users.
2412         (collect_symtabs_from_filename, symtabs_from_filename): Return
2413         symtab_vector_up.  Update all callers.
2414
2415 2018-08-29  Tom Tromey  <tom@tromey.com>
2416
2417         * csky-tdep.c (csky_analyze_prologue): Use
2418         core_addr_to_string_nz.
2419
2420 2018-08-29  Tom Tromey  <tom@tromey.com>
2421
2422         * windows-nat.c (struct xlate_exception) <them>: Change type to
2423         DWORD.
2424         (xlate): Fix formatting.  Remove last entry.
2425         (struct xlate_exception, xlate): Comment out.
2426         (windows_nat_target::resume): Use ranged for.
2427
2428 2018-08-29  Jim Wilson  <jimw@sifive.com>
2429
2430         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
2431         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
2432         of NT_PRFPREG.
2433         (riscv_linux_nat_target::store_registers): Likewise.
2434
2435 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
2436
2437         PR gdb/23555
2438         PR gdb/23558
2439         * gnulib/aclocal.m4: Regenerate.
2440         * gnulib/config.in: Regenerate.
2441         * gnulib/configure: Regenerate.
2442         * gnulib/import/Makefile.am: Update.
2443         * gnulib/import/Makefile.in: Update.
2444         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
2445         * gnulib/import/_Noreturn.h: ... this.
2446         * gnulib/import/alloca.in.h: Update.
2447         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
2448         * gnulib/import/arg-nonnull.h: ... this.
2449         * gnulib/import/assure.h: Update.
2450         * gnulib/import/at-func.c: Update.
2451         * gnulib/import/basename-lgpl.c: Update.
2452         * gnulib/import/extra/snippet/c++defs.h: Rename to...
2453         * gnulib/import/c++defs.h: ... this.
2454         * gnulib/import/canonicalize-lgpl.c: Update.
2455         * gnulib/import/cdefs.h: Update.
2456         * gnulib/import/chdir-long.c: Update.
2457         * gnulib/import/chdir-long.h: Update.
2458         * gnulib/import/cloexec.c: Update.
2459         * gnulib/import/cloexec.h: Update.
2460         * gnulib/import/close.c: Update.
2461         * gnulib/import/closedir.c: Update.
2462         * gnulib/import/config.charset: Update.
2463         * gnulib/import/dirent-private.h: Update.
2464         * gnulib/import/dirent.in.h: Update.
2465         * gnulib/import/dirfd.c: Update.
2466         * gnulib/import/dirname-lgpl.c: Update.
2467         * gnulib/import/dirname.h: Update.
2468         * gnulib/import/dosname.h: Update.
2469         * gnulib/import/dup-safer-flag.c: Update.
2470         * gnulib/import/dup-safer.c: Update.
2471         * gnulib/import/dup.c: Update.
2472         * gnulib/import/dup2.c: Update.
2473         * gnulib/import/errno.in.h: Update.
2474         * gnulib/import/error.c: Update.
2475         * gnulib/import/error.h: Update.
2476         * gnulib/import/exitfail.c: Update.
2477         * gnulib/import/exitfail.h: Update.
2478         * gnulib/import/extra/update-copyright: Update.
2479         * gnulib/import/fchdir.c: Update.
2480         * gnulib/import/fcntl.c: Update.
2481         * gnulib/import/fcntl.in.h: Update.
2482         * gnulib/import/fd-hook.c: Update.
2483         * gnulib/import/fd-hook.h: Update.
2484         * gnulib/import/fd-safer-flag.c: Update.
2485         * gnulib/import/fd-safer.c: Update.
2486         * gnulib/import/fdopendir.c: Update.
2487         * gnulib/import/filename.h: Update.
2488         * gnulib/import/filenamecat-lgpl.c: Update.
2489         * gnulib/import/filenamecat.h: Update.
2490         * gnulib/import/flexmember.h: Update.
2491         * gnulib/import/float+.h: Update.
2492         * gnulib/import/float.c: Update.
2493         * gnulib/import/float.in.h: Update.
2494         * gnulib/import/fnmatch.c: Update.
2495         * gnulib/import/fnmatch.in.h: Update.
2496         * gnulib/import/fnmatch_loop.c: Update.
2497         * gnulib/import/fpucw.h: Update.
2498         * gnulib/import/frexp.c: Update.
2499         * gnulib/import/frexpl.c: Update.
2500         * gnulib/import/fstat.c: Update.
2501         * gnulib/import/fstatat.c: Update.
2502         * gnulib/import/getcwd-lgpl.c: Update.
2503         * gnulib/import/getcwd.c: Update.
2504         * gnulib/import/getdtablesize.c: Update.
2505         * gnulib/import/getlogin_r.c: Update.
2506         * gnulib/import/getprogname.c: Update.
2507         * gnulib/import/getprogname.h: Update.
2508         * gnulib/import/gettext.h: Update.
2509         * gnulib/import/gettimeofday.c: Update.
2510         * gnulib/import/glob-libc.h: Update.
2511         * gnulib/import/glob.c: Update.
2512         * gnulib/import/glob.in.h: Update.
2513         * gnulib/import/glob_internal.h: Update.
2514         * gnulib/import/glob_pattern_p.c: Update.
2515         * gnulib/import/globfree.c: Update.
2516         * gnulib/import/hard-locale.c: Update.
2517         * gnulib/import/hard-locale.h: Update.
2518         * gnulib/import/intprops.h: Update.
2519         * gnulib/import/inttypes.in.h: Update.
2520         * gnulib/import/isnan.c: Update.
2521         * gnulib/import/isnand-nolibm.h: Update.
2522         * gnulib/import/isnand.c: Update.
2523         * gnulib/import/isnanl-nolibm.h: Update.
2524         * gnulib/import/isnanl.c: Update.
2525         * gnulib/import/itold.c: Update.
2526         * gnulib/import/libc-config.h: Update.
2527         * gnulib/import/limits.in.h: Update.
2528         * gnulib/import/localcharset.c: Update.
2529         * gnulib/import/localcharset.h: Update.
2530         * gnulib/import/localtime-buffer.c: Update.
2531         * gnulib/import/localtime-buffer.h: Update.
2532         * gnulib/import/lstat.c: Update.
2533         * gnulib/import/m4/00gnulib.m4: Update.
2534         * gnulib/import/m4/__inline.m4: Update.
2535         * gnulib/import/m4/absolute-header.m4: Update.
2536         * gnulib/import/m4/alloca.m4: Update.
2537         * gnulib/import/m4/builtin-expect.m4: Update.
2538         * gnulib/import/m4/canonicalize.m4: Update.
2539         * gnulib/import/m4/chdir-long.m4: Update.
2540         * gnulib/import/m4/close.m4: Update.
2541         * gnulib/import/m4/closedir.m4: Update.
2542         * gnulib/import/m4/configmake.m4: Update.
2543         * gnulib/import/m4/d-ino.m4: Update.
2544         * gnulib/import/m4/d-type.m4: Update.
2545         * gnulib/import/m4/dirent_h.m4: Update.
2546         * gnulib/import/m4/dirfd.m4: Update.
2547         * gnulib/import/m4/dirname.m4: Update.
2548         * gnulib/import/m4/double-slash-root.m4: Update.
2549         * gnulib/import/m4/dup.m4: Update.
2550         * gnulib/import/m4/dup2.m4: Update.
2551         * gnulib/import/m4/eealloc.m4: Update.
2552         * gnulib/import/m4/environ.m4: Update.
2553         * gnulib/import/m4/errno_h.m4: Update.
2554         * gnulib/import/m4/error.m4: Update.
2555         * gnulib/import/m4/exponentd.m4: Update.
2556         * gnulib/import/m4/exponentl.m4: Update.
2557         * gnulib/import/m4/extensions.m4: Update.
2558         * gnulib/import/m4/extern-inline.m4: Update.
2559         * gnulib/import/m4/fchdir.m4: Update.
2560         * gnulib/import/m4/fcntl-o.m4: Update.
2561         * gnulib/import/m4/fcntl.m4: Update.
2562         * gnulib/import/m4/fcntl_h.m4: Update.
2563         * gnulib/import/m4/fdopendir.m4: Update.
2564         * gnulib/import/m4/filenamecat.m4: Update.
2565         * gnulib/import/m4/flexmember.m4: Update.
2566         * gnulib/import/m4/float_h.m4: Update.
2567         * gnulib/import/m4/fnmatch.m4: Update.
2568         * gnulib/import/m4/fnmatch_h.m4: Update.
2569         * gnulib/import/m4/fpieee.m4: Update.
2570         * gnulib/import/m4/frexp.m4: Update.
2571         * gnulib/import/m4/frexpl.m4: Update.
2572         * gnulib/import/m4/fstat.m4: Update.
2573         * gnulib/import/m4/fstatat.m4: Update.
2574         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
2575         * gnulib/import/m4/getcwd-path-max.m4: Update.
2576         * gnulib/import/m4/getcwd.m4: Update.
2577         * gnulib/import/m4/getdtablesize.m4: Update.
2578         * gnulib/import/m4/getlogin.m4: Update.
2579         * gnulib/import/m4/getlogin_r.m4: Update.
2580         * gnulib/import/m4/getpagesize.m4: Update.
2581         * gnulib/import/m4/getprogname.m4: Update.
2582         * gnulib/import/m4/gettimeofday.m4: Update.
2583         * gnulib/import/m4/glibc21.m4: Update.
2584         * gnulib/import/m4/glob.m4: Update.
2585         * gnulib/import/m4/glob_h.m4: Update.
2586         * gnulib/import/m4/gnulib-cache.m4: Update.
2587         * gnulib/import/m4/gnulib-common.m4: Update.
2588         * gnulib/import/m4/gnulib-comp.m4: Update.
2589         * gnulib/import/m4/gnulib-tool.m4: Update.
2590         * gnulib/import/m4/hard-locale.m4: Update.
2591         * gnulib/import/m4/include_next.m4: Update.
2592         * gnulib/import/m4/inttypes-pri.m4: Update.
2593         * gnulib/import/m4/inttypes.m4: Update.
2594         * gnulib/import/m4/isnand.m4: Update.
2595         * gnulib/import/m4/isnanl.m4: Update.
2596         * gnulib/import/m4/largefile.m4: Update.
2597         * gnulib/import/m4/limits-h.m4: Update.
2598         * gnulib/import/m4/localcharset.m4: Update.
2599         * gnulib/import/m4/locale-fr.m4: Update.
2600         * gnulib/import/m4/locale-ja.m4: Update.
2601         * gnulib/import/m4/locale-zh.m4: Update.
2602         * gnulib/import/m4/localtime-buffer.m4: Update.
2603         * gnulib/import/m4/longlong.m4: Update.
2604         * gnulib/import/m4/lstat.m4: Update.
2605         * gnulib/import/m4/malloc.m4: Update.
2606         * gnulib/import/m4/malloca.m4: Update.
2607         * gnulib/import/m4/math_h.m4: Update.
2608         * gnulib/import/m4/mbrtowc.m4: Update.
2609         * gnulib/import/m4/mbsinit.m4: Update.
2610         * gnulib/import/m4/mbsrtowcs.m4: Update.
2611         * gnulib/import/m4/mbstate_t.m4: Update.
2612         * gnulib/import/m4/memchr.m4: Update.
2613         * gnulib/import/m4/memmem.m4: Update.
2614         * gnulib/import/m4/mempcpy.m4: Update.
2615         * gnulib/import/m4/memrchr.m4: Update.
2616         * gnulib/import/m4/mkdir.m4: Update.
2617         * gnulib/import/m4/mkstemp.m4: Update.
2618         * gnulib/import/m4/mmap-anon.m4: Update.
2619         * gnulib/import/m4/mode_t.m4: Update.
2620         * gnulib/import/m4/msvc-inval.m4: Update.
2621         * gnulib/import/m4/msvc-nothrow.m4: Update.
2622         * gnulib/import/m4/multiarch.m4: Update.
2623         * gnulib/import/m4/nocrash.m4: Update.
2624         * gnulib/import/m4/off_t.m4: Update.
2625         * gnulib/import/m4/onceonly.m4: Update.
2626         * gnulib/import/m4/open-cloexec.m4: Update.
2627         * gnulib/import/m4/open.m4: Update.
2628         * gnulib/import/m4/openat.m4: Update.
2629         * gnulib/import/m4/opendir.m4: Update.
2630         * gnulib/import/m4/pathmax.m4: Update.
2631         * gnulib/import/m4/rawmemchr.m4: Update.
2632         * gnulib/import/m4/readdir.m4: Update.
2633         * gnulib/import/m4/readlink.m4: Update.
2634         * gnulib/import/m4/realloc.m4: Update.
2635         * gnulib/import/m4/rename.m4: Update.
2636         * gnulib/import/m4/rewinddir.m4: Update.
2637         * gnulib/import/m4/rmdir.m4: Update.
2638         * gnulib/import/m4/save-cwd.m4: Update.
2639         * gnulib/import/m4/secure_getenv.m4: Update.
2640         * gnulib/import/m4/setenv.m4: Update.
2641         * gnulib/import/m4/signal_h.m4: Update.
2642         * gnulib/import/m4/ssize_t.m4: Update.
2643         * gnulib/import/m4/stat-time.m4: Update.
2644         * gnulib/import/m4/stat.m4: Update.
2645         * gnulib/import/m4/std-gnu11.m4: Update.
2646         * gnulib/import/m4/stdbool.m4: Update.
2647         * gnulib/import/m4/stddef_h.m4: Update.
2648         * gnulib/import/m4/stdint.m4: Update.
2649         * gnulib/import/m4/stdio_h.m4: Update.
2650         * gnulib/import/m4/stdlib_h.m4: Update.
2651         * gnulib/import/m4/strchrnul.m4: Update.
2652         * gnulib/import/m4/strdup.m4: Update.
2653         * gnulib/import/m4/strerror.m4: Update.
2654         * gnulib/import/m4/string_h.m4: Update.
2655         * gnulib/import/m4/strstr.m4: Update.
2656         * gnulib/import/m4/strtok_r.m4: Update.
2657         * gnulib/import/m4/sys_socket_h.m4: Update.
2658         * gnulib/import/m4/sys_stat_h.m4: Update.
2659         * gnulib/import/m4/sys_time_h.m4: Update.
2660         * gnulib/import/m4/sys_types_h.m4: Update.
2661         * gnulib/import/m4/tempname.m4: Update.
2662         * gnulib/import/m4/time_h.m4: Update.
2663         * gnulib/import/m4/unistd-safer.m4: Update.
2664         * gnulib/import/m4/unistd_h.m4: Update.
2665         * gnulib/import/m4/warn-on-use.m4: Update.
2666         * gnulib/import/m4/wchar_h.m4: Update.
2667         * gnulib/import/m4/wchar_t.m4: Update.
2668         * gnulib/import/m4/wctype_h.m4: Update.
2669         * gnulib/import/m4/wint_t.m4: Update.
2670         * gnulib/import/malloc.c: Update.
2671         * gnulib/import/malloc/scratch_buffer.h: Update.
2672         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
2673         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
2674         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
2675         * gnulib/import/malloca.c: Update.
2676         * gnulib/import/malloca.h: Update.
2677         * gnulib/import/malloca.valgrind: Update.
2678         * gnulib/import/math.in.h: Update.
2679         * gnulib/import/mbrtowc.c: Update.
2680         * gnulib/import/mbsinit.c: Update.
2681         * gnulib/import/mbsrtowcs-impl.h: Update.
2682         * gnulib/import/mbsrtowcs-state.c: Update.
2683         * gnulib/import/mbsrtowcs.c: Update.
2684         * gnulib/import/memchr.c: Update.
2685         * gnulib/import/memmem.c: Update.
2686         * gnulib/import/mempcpy.c: Update.
2687         * gnulib/import/memrchr.c: Update.
2688         * gnulib/import/mkdir.c: Update.
2689         * gnulib/import/mkstemp.c: Update.
2690         * gnulib/import/msvc-inval.c: Update.
2691         * gnulib/import/msvc-inval.h: Update.
2692         * gnulib/import/msvc-nothrow.c: Update.
2693         * gnulib/import/msvc-nothrow.h: Update.
2694         * gnulib/import/open.c: Update.
2695         * gnulib/import/openat-die.c: Update.
2696         * gnulib/import/openat-priv.h: Update.
2697         * gnulib/import/openat-proc.c: Update.
2698         * gnulib/import/openat.c: Update.
2699         * gnulib/import/openat.h: Update.
2700         * gnulib/import/opendir.c: Update.
2701         * gnulib/import/pathmax.h: Update.
2702         * gnulib/import/pipe-safer.c: Update.
2703         * gnulib/import/rawmemchr.c: Update.
2704         * gnulib/import/readdir.c: Update.
2705         * gnulib/import/readlink.c: Update.
2706         * gnulib/import/realloc.c: Update.
2707         * gnulib/import/ref-add.sin: Update.
2708         * gnulib/import/ref-del.sin: Update.
2709         * gnulib/import/rename.c: Update.
2710         * gnulib/import/rewinddir.c: Update.
2711         * gnulib/import/rmdir.c: Update.
2712         * gnulib/import/same-inode.h: Update.
2713         * gnulib/import/save-cwd.c: Update.
2714         * gnulib/import/save-cwd.h: Update.
2715         * gnulib/import/scratch_buffer.h: Update.
2716         * gnulib/import/secure_getenv.c: Update.
2717         * gnulib/import/setenv.c: Update.
2718         * gnulib/import/signal.in.h: Update.
2719         * gnulib/import/stat-time.c: Update.
2720         * gnulib/import/stat-time.h: Update.
2721         * gnulib/import/stat-w32.c: Update.
2722         * gnulib/import/stat-w32.h: Update.
2723         * gnulib/import/stat.c: Update.
2724         * gnulib/import/stdbool.in.h: Update.
2725         * gnulib/import/stddef.in.h: Update.
2726         * gnulib/import/stdint.in.h: Update.
2727         * gnulib/import/stdio.in.h: Update.
2728         * gnulib/import/stdlib.in.h: Update.
2729         * gnulib/import/str-two-way.h: Update.
2730         * gnulib/import/strchrnul.c: Update.
2731         * gnulib/import/strdup.c: Update.
2732         * gnulib/import/streq.h: Update.
2733         * gnulib/import/strerror-override.c: Update.
2734         * gnulib/import/strerror-override.h: Update.
2735         * gnulib/import/strerror.c: Update.
2736         * gnulib/import/string.in.h: Update.
2737         * gnulib/import/stripslash.c: Update.
2738         * gnulib/import/strnlen1.c: Update.
2739         * gnulib/import/strnlen1.h: Update.
2740         * gnulib/import/strstr.c: Update.
2741         * gnulib/import/strtok_r.c: Update.
2742         * gnulib/import/sys_stat.in.h: Update.
2743         * gnulib/import/sys_time.in.h: Update.
2744         * gnulib/import/sys_types.in.h: Update.
2745         * gnulib/import/tempname.c: Update.
2746         * gnulib/import/tempname.h: Update.
2747         * gnulib/import/time.in.h: Update.
2748         * gnulib/import/unistd--.h: Update.
2749         * gnulib/import/unistd-safer.h: Update.
2750         * gnulib/import/unistd.in.h: Update.
2751         * gnulib/import/unsetenv.c: Update.
2752         * gnulib/import/verify.h: Update.
2753         * gnulib/import/extra/snippet/warn-on-use.h: Update.
2754         * gnulib/import/wchar.in.h: Update.
2755         * gnulib/import/wctype.in.h: Update.
2756         * gnulib/import/xalloc-oversized.h: Update.
2757         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
2758         "53e2c179f26a890fa6685af4b6c1397ee370433b".
2759
2760 2018-08-16  Gary Benson <gbenson@redhat.com>
2761
2762         PR gdb/13000:
2763         * gdb/main.c (captured_main_1): Exit with nonzero status
2764         in batch mode if the last command to be executed failed.
2765         * NEWS: Mention the above.
2766
2767 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
2768
2769         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
2770         end of warning message.
2771
2772 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2773
2774         PR gdb/22943:
2775         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
2776         (aarch64_extract_return_value): Use
2777         aapcs_is_vfp_call_or_return_candidate.
2778         (aarch64_return_in_memory): Likewise.
2779         (aarch64_store_return_value): Likewise.
2780
2781 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2782
2783         * aarch64-tdep.c
2784         (aapcs_is_vfp_call_or_return_candidate): Make static
2785         (pass_in_v_or_stack): Remove function.
2786         (pass_in_v_vfp_candidate): New function.
2787         (aarch64_push_dummy_call): Check for float register candidates.
2788
2789 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2790
2791         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
2792         (aapcs_is_vfp_call_or_return_candidate_1): New function.
2793         (aapcs_is_vfp_call_or_return_candidate): Likewise.
2794
2795 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
2796
2797         PR build/23399
2798         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
2799         (struct ipa_sym_addresses): Rename to...
2800         (struct ipa_sym_addresses_common): ... this.
2801         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
2802
2803 2018-08-28  Tom Tromey  <tom@tromey.com>
2804
2805         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2806         (token_fifo): Now a std::vector.
2807         (yylex, c_parse): Update.
2808         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2809         (token_fifo): Now a std::vector.
2810         (yylex, d_parse): Update.
2811         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2812         (token_fifo): Now a std::vector.
2813         (yylex, go_parse): Update.
2814
2815 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
2816
2817         * parser-defs.h (struct type_stack) <elements>: Change type to
2818         std::vector<union type_stack_elt>.
2819         <depth, size>: Remove.
2820         * parse.c (parse_exp_in_context_1): Adjust.
2821         (type_stack_reserve): Remove.
2822         (check_type_stack_depth): Remove.
2823         (insert_into_type_stack): Adjust to std::vector.
2824         (insert_type): Likewise.
2825         (push_type): Likewise.
2826         (push_type_int): Likewise.
2827         (insert_type_address_space): Likewise.
2828         (pop_type): Likewise.
2829         (pop_type_int): Likewise.
2830         (pop_typelist): Likewise.
2831         (pop_type_stack): Likewise.
2832         (append_type_stack): Likewise.
2833         (push_type_stack): Likewise.
2834         (get_type_stack): Likewise.
2835         (type_stack_cleanup): Likewise.
2836         (push_typelist): Likewise.
2837         (follow_types): Likewise.
2838         (_initialize_parse): Likewise.
2839
2840 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
2841
2842         * NEWS: Mention csky target.
2843
2844 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
2845             Hafiz Abid Qadeer  <abidh@codesourcery.com>
2846             Don Breazeal  <donb@codesourcery.com>
2847
2848         * csky-linux-tdep.c: New file.
2849         * csky-tdep.c: Likewise.
2850         * csky-tdep.h: Likewise.
2851         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
2852         csky-tdep.o.
2853         (HFILES_NO_SRCDIR): Add csky-tdep.h.
2854         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
2855         * configure.tgt: Add csky support.
2856
2857 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
2858
2859         * python/py-framefilter.c (py_print_frame): Print frame architecture
2860         when printing on an MI output.
2861
2862 2018-08-27  Tom Tromey  <tom@tromey.com>
2863
2864         PR build/23087:
2865         * configure: Rebuild.
2866         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
2867
2868 2018-08-27  Tom Tromey  <tom@tromey.com>
2869
2870         * aarch64-linux-tdep.c
2871         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
2872         casts to int.
2873
2874 2018-08-27  Tom Tromey  <tom@tromey.com>
2875
2876         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
2877         unsigned.
2878         (ppc64_standard_linkage1, ppc64_standard_linkage2)
2879         (ppc64_standard_linkage3, ppc64_standard_linkage4)
2880         (ppc64_standard_linkage5, ppc64_standard_linkage6)
2881         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
2882         unsigned.
2883
2884 2018-08-27  Tom Tromey  <tom@tromey.com>
2885
2886         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
2887         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
2888
2889 2018-08-27  Tom Tromey  <tom@tromey.com>
2890
2891         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
2892         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
2893         ULONGEST_MAX.
2894         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
2895         ULONGEST_MAX.
2896         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
2897         ULONGEST_MAX.
2898         * sparc-linux-tdep.c (sparc32_linux_sigframe)
2899         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
2900         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
2901         ULONGEST_MAX.
2902         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
2903         (ppc64_linux_sigaction_tramp_frame)
2904         (ppc32_linux_sighandler_tramp_frame)
2905         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
2906         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
2907         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
2908         * mn10300-linux-tdep.c (am33_linux_sigframe)
2909         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
2910         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
2911         * mips-linux-tdep.c (mips_linux_o32_sigframe)
2912         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
2913         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
2914         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
2915         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
2916         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
2917         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
2918         * microblaze-linux-tdep.c
2919         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
2920         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
2921         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
2922         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
2923         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
2924         * common/common-types.h (ULONGEST_MAX): New define.
2925         (CORE_ADDR_MAX): Fix formatting.
2926         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
2927         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
2928         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
2929         (arm_linux_rt_sigreturn_tramp_frame)
2930         (arm_eabi_linux_sigreturn_tramp_frame)
2931         (arm_eabi_linux_rt_sigreturn_tramp_frame)
2932         (thumb2_eabi_linux_sigreturn_tramp_frame)
2933         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
2934         (arm_linux_restart_syscall_tramp_frame)
2935         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
2936         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
2937         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
2938         ULONGEST_MAX.
2939         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
2940
2941 2018-08-27  Tom Tromey  <tom@tromey.com>
2942
2943         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
2944         CORE_ADDR_MAX.
2945         * mips-tdep.c (mips_deal_with_atomic_sequence)
2946         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
2947         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
2948         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
2949         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
2950         CORE_ADDR_MAX.
2951         * aarch64-tdep.c (aarch64_software_single_step): Use
2952         CORE_ADDR_MAX.
2953
2954 2018-08-27  Tom Tromey  <tom@tromey.com>
2955
2956         * linespec.c (complete_linespec_component): Add cast to "char".
2957         * completer.c (completion_tracker::build_completion_result): Add
2958         cast to "char".
2959
2960 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
2961
2962         * solist.h (struct solist, struct target_so_ops): Fix
2963         indentation.
2964
2965 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
2966
2967         * ada-tasks.c (ada_task_info_s): Remove typedef.
2968         (DEF_VEC_O(ada_task_info_s)): Remove.
2969         (struct ada_tasks_inferior_data): Initialize fields.
2970         <task_list>: Make an std::vector.
2971         (get_ada_tasks_inferior_data): Allocate with new.
2972         (ada_get_task_number): Adjust.
2973         (get_task_number_from_id): Likewise.
2974         (valid_task_id): Likewise.
2975         (ada_get_task_info_from_ptid): Likewise.
2976         (iterate_over_live_ada_tasks): Likewise.
2977         (add_ada_task): Likewise.
2978         (read_known_tasks): Likewise.
2979         (ada_build_task_list): Likewise.
2980         (print_ada_task_info): Likewise.
2981         (info_task): Likewise.
2982         (task_command_1): Likewise.
2983
2984 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
2985
2986         * ada-lang.c (add_angle_brackets): Return std::string.
2987
2988 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
2989
2990         * python/py-threadevent.c (py_get_event_thread): Initialize
2991         pythread.
2992
2993 2018-08-24  Pedro Alves  <palves@redhat.com>
2994
2995         * python/py-bpevent.c (create_breakpoint_event_object): Use
2996         copy-initialization.
2997         * python/py-continueevent.c (emit_continue_event): Use
2998         copy-initialization.
2999         * python/py-exitedevent.c (create_exited_event_object): Return a
3000         gdbpy_ref<>.
3001         (emit_exited_event): Use copy-initialization.
3002         * python/py-inferior.c (python_new_inferior)
3003         (python_inferior_deleted, add_thread_object): Use
3004         copy-initialization.
3005         * python/py-infevents.c (create_inferior_call_event_object)
3006         (create_register_changed_event_object)
3007         (create_memory_changed_event_object): Return a gdbpy_ref<>.
3008         (emit_inferior_call_event, emit_memory_changed_event)
3009         (emit_register_changed_event): Use copy-initialization.
3010         * python/py-newobjfileevent.c (create_new_objfile_event_object):
3011         Return a gdbpy_ref<>.
3012         (emit_new_objfile_event): Use copy-initialization.
3013         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
3014         (emit_clear_objfiles_event): Use copy-initialization.
3015         * python/py-signalevent.c (create_signal_event_object): Use
3016         copy-initialization.
3017         * python/py-threadevent.c (create_thread_event_object): Use
3018         copy-initialization.
3019
3020 2018-08-24  Pedro Alves  <palves@redhat.com>
3021             Simon Marchi  <simon.marchi@ericsson.com>
3022
3023         PR gdb/23379
3024         * python/py-continueevent.c: Include "gdbthread.h".
3025         (create_continue_event_object): Add intro comment.  Add 'ptid'
3026         parameter.  Use it to find thread to pass to
3027         create_thread_event_object.
3028         (emit_continue_event): Pass PTID down to
3029         create_continue_event_object.
3030         * python/py-event.h (py_get_event_thread): Declare.
3031         (create_thread_event_object): Remove default from 'thread'
3032         parameter.
3033         * python/py-stopevent.c (create_stop_event_object): Use
3034         py_get_event_thread.
3035         * python/py-threadevent.c (get_event_thread): Rename to ...
3036         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
3037         and use it to find the thread.
3038         (create_thread_event_object): Assert that THREAD isn't null.
3039         Don't find the event thread here.
3040
3041 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
3042
3043         * block.h (blockrange, blockranges): New struct declarations.
3044         (struct block): Add new field named `ranges'.
3045         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
3046         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
3047         macros for accessing ranges in struct block.
3048         (make_blockranges): New declaration.
3049         block.c (make_blockranges): New function.
3050         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
3051         for block.
3052         * symtab.h (find_pc_partial_function): Add new parameter `block'.
3053         * blockframe.c (cache_pc_function_block): New static global.
3054         (clear_pc_function_cache): Clear cache_pc_function_block.
3055         (find_pc_partial_function): Move comment to symtab.h.  Add
3056         support for non-contiguous blocks.
3057         * cli/cli-cmds.c (block.h): Include.
3058         (print_disassembly): Handle printing of non-contiguous blocks.
3059         (disassemble_current_function): Likewise.
3060         (disassemble_command): Likewise.
3061
3062         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
3063         BLOCK_START.
3064         * blockframe.c (get_pc_function_start): Likewise.
3065         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
3066         (gcc_symbol_address): Likewise.
3067         * compile/compile-object-run.c (compile_object_run): Likewise.
3068         * compile/compile.c (get_expr_block_and_pc): Likewise.
3069         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
3070         (func_addr_to_tail_call_list): Likewise.
3071         * findvar.c (default_read_var_value): Likewise.
3072         * inline-frame.c (inline_frame_this_id): Likewise.
3073         (skip-inline_frames): Likewise.
3074         * infcmd.c (until_next_command): Likewise.
3075         * linespec.c (convert_linespec_to_sals): Likewise.
3076         * parse.c (parse_exp_in_context_1): Likewise.
3077         * printcmd.c (build_address_symbolic): likewise.
3078         (info_address_command): Likewise.
3079         symtab.c (find_function_start_sal): Likewise.
3080         (skip_prologue_sal): Likewise.
3081         (find_function_alias_target): Likewise.
3082         (find_gnu_ifunc): Likewise.
3083         * stack.c (find_frame_funname): Likewise.
3084         * symtab.c (fixup_symbol_section): Likewise.
3085         (find_function_start_sal): Likewise.
3086         (skip_prologue_sal): Likewsie.
3087         (find_function_alias_target): Likewise.
3088         (find_gnu_ifunc): Likewise.
3089         * tracepoint.c (info_scope_command): Likewise.
3090         * value.c (value_fn_field): Likewise.
3091
3092         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
3093         in place of find_pc_partial_function.
3094         * blockframe.c (find_function_entry_range_from_pc): New function.
3095         * symtab.h (find_function_entry_range_from_pc): Declare and document.
3096         * objfiles.c (objfile_relocate1): Relocate start and end addresses
3097         for each range in a block.
3098
3099
3100 2018-08-23  Xavier Roirand  <roirand@adacore.com>
3101
3102         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
3103         incrementation.
3104
3105 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3106
3107         * solib-svr4.c (read_program_headers_from_bfd): Return
3108         gdb::optional<gdb::byte_vector>.
3109         (svr4_exec_displacement): Adjust.
3110
3111 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3112
3113         * solib-svr4.c (read_program_header): Return
3114         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
3115         (find_program_interpreter): Return
3116         gdb::optional<gdb::byte_vector>.
3117         (scan_dyntag_auxv): Adjust.
3118         (enable_break): Adjust.
3119         (svr4_exec_displacement): Adjust.
3120
3121 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3122
3123         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
3124         * inf-child.c (inf_child_target::terminal_save_inferior): New.
3125
3126 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3127
3128         * guile/scm-string.c (gdbscm_scm_from_printf): Use
3129         string_vprintf.
3130         * guile/scm-utils.c (gdbscm_printf): Likewise.
3131         * serial.c (serial_printf): Likewise.
3132         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
3133
3134 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
3135
3136         * stack.c (print_frame): Print frame architecture when printing on
3137         an MI output.
3138         * NEWS: Mention new "arch" attribute in frame output.
3139
3140 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3141
3142         * arch/aarch64.h (aarch64_regnum): Update comment.
3143
3144 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3145
3146         * NEWS: Add SVE to 8.2 section.
3147
3148 2018-08-21  Pedro Alves  <palves@redhat.com>
3149
3150         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
3151         out from gdbscm_parse_function_args.
3152         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
3153         gdbscm_parse_function_args_1.
3154
3155 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
3156
3157         PR gdb/17816
3158         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
3159         operator.
3160
3161 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
3162
3163         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
3164
3165 2018-08-19  Michael Spang  <spang@google.com>
3166
3167         PR gdb/11786
3168         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
3169         for PT_TLS segments.
3170
3171 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
3172
3173         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
3174         dwarf_variable_value.
3175         * dwarf2-frame.c (class dwarf_expr_executor):
3176         Add override for dwarf_variable_value.
3177         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
3178         (class symbol_needs_eval_context): Likewise.
3179         (indirect_synthetic_pointer): Add forward declaration.
3180         (sect_variable_value): New function.
3181         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
3182         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
3183         for DW_OP_GNU_variable_value.
3184
3185 2018-08-16  Tom Tromey  <tom@tromey.com>
3186
3187         * top.c (read_command_file): Update.
3188         (command_line_input): Remove "repeat" argument.
3189         * ada-lang.c (get_selections): Update.
3190         * linespec.c (decode_line_2): Update.
3191         * defs.h (command_line_input): Remove argument.
3192         * cli/cli-script.c (read_next_line): Update.
3193         * python/py-gdb-readline.c: Update.
3194
3195 2018-08-17  Tom Tromey  <tom@tromey.com>
3196
3197         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
3198         command_line_input.
3199
3200 2018-08-15  Tom Tromey  <tom@tromey.com>
3201
3202         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
3203
3204 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
3205
3206         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
3207         If used, use find_pc_partial_function to find address range
3208         to disassemble.
3209         * mi/mi-main.c (mi_cmd_list_features): Report
3210         "data-disassemble-a-option" feature.
3211         * NEWS: Mention new -data-disassemble option -a.
3212
3213 2018-08-13  Tom Tromey  <tom@tromey.com>
3214
3215         * common/common-defs.h (_FORTIFY_SOURCE): Define.
3216
3217 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3218
3219         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
3220         (aarch64_linux_collect_sve_regset): Likewise.
3221         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
3222         * regcache.h (regcache_map_entry_size): New function.
3223
3224 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3225
3226         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
3227         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
3228         (SVE_HEADER_VL_LENGTH): Likewise.
3229         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
3230         (SVE_HEADER_FLAGS_LENGTH): Likewise.
3231         (SVE_HEADER_RESERVED_LENGTH): Likewise.
3232         (SVE_HEADER_SIZE_OFFSET): Likewise.
3233         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
3234         (SVE_HEADER_VL_OFFSET): Likewise.
3235         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
3236         (SVE_HEADER_FLAGS_OFFSET): Likewise.
3237         (SVE_HEADER_RESERVED_OFFSET): Likewise.
3238         (SVE_HEADER_SIZE): Likewise.
3239         (aarch64_linux_core_read_vq): Add function.
3240         (aarch64_linux_core_read_description): Check for SVE section.
3241
3242 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3243
3244         * aarch64-fbsd-tdep.c
3245         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
3246         collect_size.
3247         * aarch64-linux-tdep.c
3248         (aarch64_linux_iterate_over_regset_sections): Likewise.
3249         * alpha-linux-tdep.c
3250         (alpha_linux_iterate_over_regset_sections):
3251         * alpha-nbsd-tdep.c
3252         (alphanbsd_iterate_over_regset_sections): Likewise.
3253         * amd64-fbsd-tdep.c
3254         (amd64fbsd_iterate_over_regset_sections): Likewise.
3255         * amd64-linux-tdep.c
3256         (amd64_linux_iterate_over_regset_sections): Likewise.
3257         * arm-bsd-tdep.c
3258         (armbsd_iterate_over_regset_sections): Likewise.
3259         * arm-fbsd-tdep.c
3260         (arm_fbsd_iterate_over_regset_sections): Likewise.
3261         * arm-linux-tdep.c
3262         (arm_linux_iterate_over_regset_sections): Likewise.
3263         * corelow.c (get_core_registers_cb): Likewise.
3264         (core_target::fetch_registers): Likewise.
3265         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
3266         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
3267         * gdbarch.h (void): Regenerate.
3268         * gdbarch.sh: Add supply_size and collect_size.
3269         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
3270         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
3271         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
3272         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
3273         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
3274         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
3275         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
3276         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
3277         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
3278         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
3279         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
3280         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
3281         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
3282         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
3283         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections): Likewise.
3284         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
3285         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
3286         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
3287         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
3288         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
3289         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
3290         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections): Likewise.
3291         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
3292         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
3293         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
3294         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
3295         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
3296         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
3297         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
3298         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
3299
3300 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
3301
3302         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
3303         with string_printf.
3304
3305 2018-08-10  Keith Seitz  <keiths@redhat.com>
3306
3307         * compile/compile-c-support.c (add_code_header, add_code_footer):
3308         Move into policy class.
3309         (c_push_user_expression, pop_user_expression_nop)
3310         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
3311         (compile_program): New host class.
3312         (c_compile_program): New typedef.
3313         (c_compute_porgram): Use c_compile_program.
3314
3315 2018-08-10  Keith Seitz  <keiths@redhat.com>
3316
3317         * compile/compile-internal.h (compile_instance::~compile_instance):
3318         Remove calls to htab_delete.
3319         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
3320         * compile.c (compile_instance::compile_instance): Initialize
3321         htab unique pointers.
3322         (compile_instance::get_cached_type, compile_instance::insert_type)
3323         (compile_instance::error_symbol_once): Update for unique_ptr.
3324
3325 2018-08-10  Keith Seitz  <keiths@redhat.com>
3326
3327         * compile/compile-c-symbols.c (struct symbol_error)
3328         (hash_symbol_error, eq_symbol_error, del_symbol_error)
3329         (compile_instance::insert_symbol_error)
3330         (compile_instance::error_symbol_once): Move to ...
3331         * compile/compile.c: ... here.
3332
3333 2018-08-10  Keith Seitz  <keiths@redhat.com>
3334
3335         * compile/compile-c-support.c (c_get_compile_context): Use `new'
3336         instead of `new_compile_instance'.
3337         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
3338         Update description.
3339         If the symbol error map is not initialized, create it.
3340         (generate_c_for_for_one_symbol): Do not check/initialize
3341         the symbol error map.
3342         * compile/compile-c-types.c (compile_c_instance): Make a class.
3343         Update all callers.
3344         (compile_instance::compile_instance): Initialize the type cache.
3345         (get_cached_type): New function.
3346         (insert_type): Update description.
3347         (compile_c_instance::m_default_cflags): Define.
3348         (convert_type): Update description.  Use get_cached_type.
3349         (delete_instance): Moved to destructor.
3350         (new_compile_instance): Moved to constructor.
3351         * compile/compile-c.h (compile_c_instance): Make class inheriting
3352         from compile_instance.
3353         <base>: Remove field.
3354         <type_map, symbol_err_map>: Move to base class.
3355         <c_plugin>: Rename to `m_plugin' and remove pointer type.
3356         * compile/compile-internal.h (compile_instance): Make class.
3357         <type_map_t, symbol_err_map_t>: Define.
3358         <fe>: Rename to `m_gcc_fe'.
3359         <scope, block, gcc_target_options>: Add `m_' prefix.
3360         <m_type_map, m_symbol_err_map>: New fields, moved from
3361         compile_c_instance.
3362         <destroy>: Remove.
3363         (convert_type, new_compile_instance): Remove.
3364         * compile/compile.c (cleanup_compile_instance): Remove.
3365         (compile_to_object): Use unique_ptr to eliminate cleanups.
3366         (compile_instance::set_print_callback, compile_instance::version)
3367         (compile_instance::set_verbose)
3368         (compile_instance::set_driver_filename)
3369         (compile_instance::set_triplet_regexp)
3370         (compile_instance::set_arguments)
3371         (compile_instance::set_source_file)
3372         (compile_instance::compile): Define.
3373
3374 2018-08-10  Keith Seitz  <keiths@redhat.com>
3375
3376         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
3377         * compile/compile-c-types.c: Define GCC_METHODN macros and include
3378         gcc-c-fe.def to define C plugin.
3379         (delete_instance): Delete `c_plugin'.
3380         (new_compile_instance): Initialize `c_plugin'.
3381         * compile/compile-c.h: Include gcc_c_plugin.h.
3382         (struct compile_c_instance) <c_plugin>: New member.
3383         * gcc-c-plugin.h: New file.
3384         Update all callers with API change.
3385
3386 2018-08-10  Keith Seitz  <keiths@redhat.com>
3387
3388         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
3389         (HFILES_NO_SRCDIR): ... to here.
3390         Add compile-internal.h and compile-c.h.
3391         * compile/compile-c-support.c: Include compile-c.h.
3392         * compile/compile-c-symbols.c: Include compile-c.h.
3393         (generate_c_for_variable_locations): Update comment.
3394         * compile/compile-c-types.c: Include compile-c.h.
3395         * compile/compile-c.h: New file -- moved C language declarations
3396         from other files here.
3397         * compile/compile-internal.h: Do not include hashtab.h or
3398         common/enum-flags.h.
3399         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
3400         (gcc_convert_symbol, gcc_symbol_address)
3401         (generate_c_for_variable_locations, c_get_mode_for_size)
3402         (c_get_range_decl_name): Definitions moved to compile-c.h.
3403         * compile/compile-loc2c.c: Include compile-c.h.
3404
3405 2018-08-10  Keith Seitz  <keiths@redhat.com>
3406
3407         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
3408         (c_symbol_substitution_name): ... this.
3409         Update all callers.
3410
3411 2018-08-10  Keith Seitz  <keiths@redhat.com>
3412
3413         * compile/compile-c-support.c (c_compute_program): Use
3414         unique_xmalloc_ptr to eliminate cleanup.
3415         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
3416         Return a unique_xmalloc_ptr and eliminate cleanup.
3417         * compile/compile-internal.h (generate_c_for_variable_locations):
3418         Return unique_xmalloc_ptr and update description.
3419
3420 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
3421
3422         * corelow.c (core_target::get_core_register_section): Rename
3423         min_size to section_min_size.
3424
3425 2018-08-09  Jim Wilson  <jimw@sifive.com>
3426
3427         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
3428         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
3429         * NEWS: Mention new GNU/Linux RISC-V target.
3430         * configure.host: Add riscv*-*-linux*.
3431         * configure.nat: Add riscv*.
3432         * configure.tgt: Add riscv*-*-linux*.
3433         * riscv-linux-nat.c: New file.
3434         * riscv-linux-tdep.c: New file.
3435
3436 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3437
3438         * infrun.c (resume): Make static, add forward declaration.
3439         (proceed): Update header comment.
3440         * infrun.h (resume): Delete declaration.
3441
3442 2018-08-09  Tom Tromey  <tom@tromey.com>
3443
3444         * riscv-tdep.h: Minor formatting fixes.
3445
3446 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
3447
3448         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
3449         * dwarf-index-cache.c (create_dir_and_check): Likewise.
3450         (test_mkdir_recursive): Likewise.
3451         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
3452
3453 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3454
3455         * valarith.c (value_subscripted_rvalue): If an array is not in
3456         memory, and we don't know the upper bound, then we can't know that
3457         the requested element exists or not.
3458
3459 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
3460
3461         * target.c (str_comma_list_concat_elem): Fix typo in comment.
3462         (target_options_to_string): Add comment.
3463
3464 2018-08-08  Tom Tromey  <tom@tromey.com>
3465
3466         * unittests/scoped_mmap-selftests.c: Check result of "write".
3467
3468 2018-08-08  Jim Wilson  <jimw@sifive.com>
3469
3470         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
3471         (decode_register_index_short): New.
3472         (decode_j_type_insn, decode_cj_type_insn): New.
3473         (decode_b_type_insn, decode_cb_type_insn): New.
3474         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
3475         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
3476         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
3477         is_c_sw_insn instead of is_sw_insn.
3478         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
3479         (riscv_software_single_step): New.
3480         * riscv-tdep.h (riscv_software_single_step): Declare.
3481
3482         * riscv-tdep.c (riscv_isa_xlen): Drop static.
3483         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
3484
3485 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
3486
3487         PR gdb/18050:
3488         * target.c (dispose_inferior): Don't dispose of inferiors that are
3489         already killed.
3490
3491 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
3492
3493         * remote.c (remote_target::download_tracepoint): Change char* to
3494         const char*.
3495
3496 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
3497
3498         * target.h (target_options_to_string): Return an std::string.
3499         * target.c (str_comma_list_concat_elem): Return void, use
3500         std::string.
3501         (do_option): Likewise.
3502         (target_options_to_string): Return an std::string.
3503         * linux-nat.c (linux_nat_target::wait): Adjust.
3504         * target-debug.h (target_debug_print_options): Adjust.
3505
3506 2018-08-07  Tom Tromey  <tom@tromey.com>
3507
3508         * Makefile.in (CPPFLAGS): New variable.
3509         (INTERNAL_CPPFLAGS): Use it.
3510
3511 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3512
3513         * NEWS: Mention the index cache.
3514
3515 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3516
3517         * common/pathstuff.h (get_standard_cache_dir): New.
3518         * common/pathstuff.c (get_standard_cache_dir): New.
3519         * build-id.h (build_id_to_string): New.
3520         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
3521         DEBUG_STR_SUFFIX): Move to here.
3522         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
3523         DEBUG_STR_SUFFIX): Move from there.
3524         (write_psymtabs_to_index): Make non-static, add basename
3525         parameter.  Write to temporary files, rename when done.
3526         (save_gdb_index_command): Adjust call to
3527         write_psymtabs_to_index.
3528         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
3529         field.
3530         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
3531         (get_gdb_index_contents_from_cache): New.
3532         (get_gdb_index_contents_from_cache_dwz): New.
3533         (dwarf2_initialize_objfile): Read index from cache.
3534         (dwarf2_build_psymtabs): Save to index.
3535         * dwarf-index-cache.h: New file.
3536         * dwarf-index-cache.c: New file.
3537         * dwarf-index-write.h: New file.
3538
3539 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3540
3541         * gnulib/aclocal.m4: Re-generate.
3542         * gnulib/config.in: Re-generate.
3543         * gnulib/configure: Re-generate.
3544         * gnulib/import/Makefile.am: Re-generate.
3545         * gnulib/import/Makefile.in: Re-generate.
3546         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
3547         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
3548         * gnulib/import/m4/mkdir.m4: New file.
3549         * gnulib/import/mkdir.c: New file.
3550         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
3551         module.
3552
3553 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3554
3555         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
3556         * common/scoped_mmap.c: New file.
3557         * common/scoped_mmap.h (destroy): New method.
3558         (~scoped_mmap, reset): Use destroy.
3559         (scoped_mmap): New move constructor.
3560         (mmap_file): New declaration.
3561         * unittests/scoped_mmap-selftests.c (test_normal,
3562         test_invalid_filename, run_tests): New functions.
3563         (_initialize_scoped_mmap_selftests): Register selftest.
3564
3565 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3566
3567         * dwarf2read.c (read_gdb_index_from_section): Rename to...
3568         (read_gdb_index_from_buffer): ... this.  Remove section
3569         parameter, add buffer parameter.
3570         (get_gdb_index_contents_ftype,
3571         get_gdb_index_contents_dwz_ftype): New typedefs.
3572         (dwarf2_read_gdb_index): Add callback parameters to get the
3573         index contents.
3574         (get_gdb_index_contents_from_section): New.
3575         (dwarf2_initialize_objfile): Update call to
3576         dwarf2_read_gdb_index.
3577
3578 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3579
3580         * common/filestuff.h (gdb_fopen_cloexec): New overload.
3581         (gdb_open_cloexec): Likewise.
3582         * nat/linux-osdata.c (command_from_pid): Use string_printf.
3583         (commandline_from_pid): Likewise.
3584         (linux_xfer_osdata_threads): Likewise.
3585         (linux_xfer_osdata_fds): Likewise.
3586         * ada-lang.c (is_package_name): Likewise.
3587         * auxv.c (procfs_xfer_auxv): Likewise.
3588         * breakpoint.c (print_one_breakpoint_location): Use
3589         uiout::field_fmt.
3590         (print_one_catch_solib): Use string_printf.
3591         * coff-pe-read.c (add_pe_exported_sym): Likewise.
3592         (add_pe_forwarded_sym): Likewise.
3593         * dwarf2read.c (create_type_unit_group): Likewise.
3594         (build_error_marker_type): Likewise.
3595         * infcall.c (get_function_name): Likewise.
3596         * valprint.c (print_converted_chars_to_obstack): Likewise.
3597         * xtensa-tdep.c (xtensa_register_type): Likewise.
3598
3599 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
3600
3601         * remote.c (remote_target::download_tracepoint): Fix format
3602         string errors.
3603
3604 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3605
3606         * tracefile.c: Include common/byte-vector.h.
3607         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
3608         with trace_regblock_size if needed.  Update uses of buf.
3609
3610 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3611
3612         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
3613         std::vector<unsigned char>.
3614         * tracepoint.c (collection_list::collection_list): Remove
3615         m_regs_mask initializer from initializer list.  Resize
3616         m_regs_mask using the largest remote register number.
3617         (collection_list::add_remote_register): Remove size check on
3618         m_regs_mask.  Use at to access element.
3619         (collection_list::stringify): Change type of temp_buf to
3620         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
3621         stringify the register mask.  Use pack_hex_byte for the register
3622         mask.
3623
3624 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3625
3626         * tracepoint.h (class collection_list) <add_register>: Remove.
3627         <add_remote_register, add_ax_registers, add_local_register>:
3628         Declare.
3629         <add_memrange>: Add scope parameter.
3630         * tracepoint.c (encode_actions_1): Likewise.
3631         (collection_list::add_register): Rename to ...
3632         (collection_list::add_remote_register): ... this.  Update
3633         comment.
3634         (collection_list::add_ax_registers, add_local_register): New
3635         methods.
3636         (collection_list::add_memrange): Add scope parameter.  Call
3637         add_local_register instead of add_register.
3638         (finalize_tracepoint_aexpr): New function.
3639         (collection_list::collect_symbol): Update calls to add_memrange.
3640         Call add_local_register instead of add_register.  Call
3641         add_ax_registers.  Call finalize_tracepoint_aexpr.
3642         (encode_actions_1): Get remote regnos for $reg action.  Call
3643         add_remote_register, add_ax_registers, and add_local_register.
3644         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
3645         (validate_actionline): Call finalize_tracepoint_aexpr.
3646
3647 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3648
3649         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
3650         Replace array buf with gdb::char_vector buf, of size
3651         get_remote_packet_size ().  Replace references to buf and
3652         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
3653         and xsnprintf with snprintf.  Raise errors if the buffer is too
3654         small.
3655
3656 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3657
3658         * remote.c (remote_target::download_tracepoint): Fix the has_more
3659         predicate in the QTDP action list iteration.
3660
3661 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3662
3663         * remote.c (remote_target::download_tracepoint): Fix indentation
3664         in for block.
3665
3666 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3667
3668         * proc-api.c (_initialize_proc_api): Remove c, unused.
3669         * procfs.c (procfs_init_inferior): Remove signals, unused.
3670         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
3671         unused.
3672
3673 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
3674             Andrew Burgess  <andrew.burgess@embecosm.com>
3675
3676         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
3677         'W_STOPCODE (0)' as this could be ambiguous.
3678
3679 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
3680
3681         * ser-tcp.c (net_open): Fix thinko when deciding whether to
3682         disable TCP's Nagle algorithm (use "ai_protocol" instead of
3683         "ai_socktype").
3684
3685 2018-08-02  Tom Tromey  <tom@tromey.com>
3686
3687         PR symtab/16842.
3688         * dwarf2read.c (read_func_scope): Set symtab on template parameter
3689         symbols.
3690         (process_structure_scope): Likewise.
3691
3692 2018-08-02  Xavier Roirand  <roirand@adacore.com>
3693
3694         PR gdb/22629:
3695         * darwin-nat.c (darwin_kill_inferior): Fix handling of
3696         kill inferior.
3697
3698 2018-08-02  Tom Tromey  <tom@tromey.com>
3699
3700         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
3701         (darwin_suspend_inferior, darwin_resume_inferior)
3702         (darwin_decode_notify_message, darwin_resume_inferior_threads)
3703         (darwin_check_new_threads): Check result of get_darwin_inferior.
3704
3705 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
3706
3707         GDB 8.1.1 released.
3708
3709 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
3710
3711         * varobj.c (varobj_get_path_expr_parent): Report an error if
3712         parent is a dynamic varobj.
3713
3714 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
3715
3716         * gnulib/aclocal.m4: Re-generate.
3717         * gnulib/config.in: Re-generate.
3718         * gnulib/configure: Re-generate.
3719         * gnulib/import/Makefile.in: Re-generate.
3720         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
3721         * gnulib/import/m4/onceonly.m4: Re-generate.
3722
3723 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
3724
3725         * target-descriptions.c (struct xml_test_tdesc): New.
3726         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
3727         (record_xml_tdesc): Update.
3728         (maintenance_check_xml_descriptions): Update.
3729         * target-descriptions.h (record_xml_tdesc): Update comment.
3730
3731 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
3732
3733         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
3734         checking array bounds are defined.
3735
3736 2018-07-30  Tom Tromey  <tom@tromey.com>
3737
3738         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
3739         irreflexivity violation.
3740
3741 2018-07-30  Tom Tromey  <tom@tromey.com>
3742
3743         * cli/cli-decode.c (lookup_cmd): Remove lint code.
3744         * value.c (unpack_long): Remove lint code.
3745         * valops.c (value_ind): Remove lint code.
3746         * valarith.c (value_x_binop, value_x_unop, value_equal)
3747         (value_pos): Remove lint code.
3748
3749 2018-07-28  Tom de Vries  <tdevries@suse.de>
3750
3751         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
3752         with undefined upper bound as <optimized out>.
3753
3754 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
3755
3756         * gcore.in: Rename variable "name" to "prefix".  Expand
3757         "usage" text.
3758
3759 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
3760
3761         * windows-nat.c (windows_nat_target::create_inferior): Update to
3762         call close() in global namespace.
3763
3764 2018-07-26  Tom Tromey  <tom@tromey.com>
3765
3766         * dwarf-index-write.c (add_address_entry): Don't add objfile
3767         offsets.
3768         * dbxread.c (find_stab_function): Rename from
3769         find_stab_function_addr.  Return a bound_minimal_symbol.
3770         (read_dbx_symtab): Use raw_text_low, raw_text_high.
3771         Don't add objfile offsets.
3772         (end_psymtab): Use raw_text_low, raw_text_high,
3773         MSYMBOL_VALUE_RAW_ADDRESS.
3774         (read_ofile_symtab): Update.
3775         (process_one_symbol): Update.
3776         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
3777         offsets.
3778         (dw2_relocate): Remove.
3779         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
3780         searching addrmap.
3781         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
3782         Update.
3783         (process_psymtab_comp_unit_reader, add_partial_symbol)
3784         (add_partial_subprogram, dwarf2_ranges_read): Update.
3785         (load_partial_dies): Update.
3786         (add_address_entry): Don't add objfile offsets.
3787         (dwarf2_build_include_psymtabs): Update.
3788         (create_addrmap_from_aranges): Don't add objfile offsets.
3789         (dw2_find_pc_sect_compunit_symtab): Update.
3790         * mdebugread.c (parse_symbol): Don't add objfile offsets.
3791         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
3792         Update.
3793         (parse_partial_symbols): Don't add objfile offsets.  Use
3794         raw_text_low, raw_text_high.  Update.
3795         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
3796         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
3797         or call 'relocate' quick function.  Clear psymbol_map.
3798         * psympriv.h (struct partial_symbol) <address>: Add section
3799         offset.
3800         <set_unrelocated_address>: Rename from set_address.
3801         <raw_text_low, raw_text_high>: New methods.
3802         <text_low, text_high>: Add objfile parameter.
3803         (add_psymbol_to_bcache): Add 'section' parameter.  Call
3804         set_unrelocated_address.
3805         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3806         (find_pc_psymbol): Update.
3807         (fixup_psymbol_section, relocate_psymtabs): Remove.
3808         (dump_psymtab, psym_functions): Update.
3809         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
3810         parameter.
3811         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
3812         (start_psymtab_common): Update.
3813         * symfile-debug.c (debug_qf_relocate): Remove.
3814         (debug_sym_quick_functions): Update.
3815         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
3816         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
3817         Update.
3818
3819 2018-07-26  Tom Tromey  <tromey@redhat.com>
3820
3821         * dbxread.c (end_psymtab): Use text_high_valid and
3822         text_low_valid.
3823         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
3824         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
3825         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
3826         Update comment.
3827         <text_low_valid, text_high_valid>: New fields.
3828         <set_text_low, set_text_high>: Update.
3829         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
3830
3831 2018-07-26  Tom Tromey  <tom@tromey.com>
3832
3833         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
3834         Update.
3835         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
3836         textlow and texthigh fields.
3837         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
3838         Update.
3839         * mdebugread.c (parse_lines, parse_partial_symbols)
3840         (psymtab_to_symtab_1): Update.
3841         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
3842         Rename fields.  Update comment.  Now private.
3843         <text_low, text_high, set_text_low, set_text_high>: New methods.
3844         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3845         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
3846         (start_psymtab_common, maintenance_info_psymtabs)
3847         (maintenance_check_psymtabs): Update.
3848         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
3849         texthigh fields.
3850         (scan_xcoff_symtab): Update.
3851
3852 2018-07-26  Tom Tromey  <tromey@redhat.com>
3853
3854         * psympriv.h (struct partial_symbol) <unrelocated_address,
3855         address, set_address>: New methods.
3856         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
3857         (fixup_psymbol_section, relocate_psymtabs): Update.
3858         (print_partial_symbols): Add 'objfile' parameter.  Update.
3859         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
3860         Update.
3861
3862 2018-07-26  Tom Tromey  <tom@tromey.com>
3863
3864         * dwarf-index-write.c (write_psymbols, debug_names::insert)
3865         (debug_names::write_psymbols): Update.
3866         * psympriv.h (struct partial_symbol): Derive from
3867         general_symbol_info.
3868         <obj_section>: New method.
3869         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
3870         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3871         (find_pc_sect_psymbol, fixup_psymbol_section)
3872         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
3873         (print_partial_symbols, recursively_search_psymtabs)
3874         (compare_psymbols, psymbol_hash, psymbol_compare)
3875         (add_psymbol_to_bcache, maintenance_check_psymtabs)
3876         (psymbol_name_matches, psym_fill_psymbol_map): Update.
3877
3878 2018-07-26  Tom Tromey  <tromey@redhat.com>
3879
3880         * dbxread.c (end_psymtab): Remove dead code.
3881
3882 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
3883
3884         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
3885         DWARF unwinders are disabled.
3886         * dwarf2-frame.c: Add dwarf2read.h include.
3887         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
3888         disabled.
3889         (dwarf2_frame_unwinders_enabled_p): Define.
3890         (show_dwarf_unwinders_enabled_p): New function.
3891         (_initialize_dwarf2_frame): Register switch to control DWARF
3892         unwinder use.
3893         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
3894         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
3895         (show_dwarf_cmdlist): Remove static keyword.
3896         * dwarf2read.h (set_dwarf_cmdlist): Declare.
3897         (show_dwarf_cmdlist): Declare.
3898         * NEWS: Document new feature.
3899
3900 2018-07-26  Tom de Vries  <tdevries@suse.de>
3901
3902         PR breakpoints/23366
3903         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
3904
3905 2018-07-26  Tom de Vries  <tdevries@suse.de>
3906
3907         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
3908         DW_AT_count can't be translated to a dynamic prop.
3909
3910 2018-07-25  Tom de Vries  <tdevries@suse.de>
3911
3912         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
3913         try/catch.
3914
3915 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
3916
3917         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
3918
3919 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
3920
3921         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
3922
3923 2018-07-24  Keith Seitz  <keiths@redhat.comt
3924
3925         PR symtab/23010
3926         * dwarf2read.c (dw2_add_symbol_to_list): New function.
3927         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
3928         instead of add_symbol_to_list.
3929         (read_file_scope): Call prepare_one_comp_unit before reading
3930         any other DIEs.
3931
3932 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
3933
3934         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
3935
3936 2018-07-24  Tom Tromey  <tom@tromey.com>
3937
3938         * utils.c (malloc, realloc, free): Don't declare.
3939         * configure, config.in: Rebuild.
3940         * configure.ac: Don't check for declarations of free, malloc, or
3941         realloc.
3942
3943 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
3944
3945         * aarch64-linux-nat.c
3946         (aarch64_linux_nat_target::stopped_data_address): Remove unused
3947         variable.
3948         * arm-linux-nat.c (fetch_regs): Likewise.
3949         (store_regs): Likewise.
3950         (fetch_vfp_regs): Likewise.
3951         (store_vfp_regs): Likewise.
3952         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
3953         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
3954         (arm_linux_nat_target::insert_watchpoint): Likewise.
3955         (arm_linux_nat_target::remove_watchpoint): Likewise.
3956         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
3957         Likewise.
3958         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
3959         Likewise.
3960         * ppc-linux-nat.c (fetch_register): Likewise.
3961         (fetch_all_gp_regs): Likewise.
3962         (fetch_ppc_registers): Likewise.
3963         (store_all_gp_regs): Likewise.
3964         (store_ppc_registers): Likewise.
3965         (hwdebug_insert_point): Likewise.
3966         (can_use_watchpoint_cond_accel): Likewise.
3967         * remote-sim.c (gdb_os_write_stdout): Likewise.
3968
3969 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
3970             Tom Tromey  <tom@tromey.com>
3971
3972         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
3973         test for it.
3974         * configure: Rebuild.
3975
3976 2018-07-22  Tom Tromey  <tom@tromey.com>
3977
3978         * regformats/regdat.sh: Define xmltarget_${name} inside
3979         #ifndef IN_PROCESS_AGENT.
3980
3981 2018-07-22  Tom Tromey  <tom@tromey.com>
3982
3983         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
3984
3985 2018-07-22  Tom Tromey  <tom@tromey.com>
3986
3987         * symfile.c (reread_symbols): Notify iter, not objfile.
3988
3989 2018-07-22  Tom Tromey  <tom@tromey.com>
3990
3991         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
3992         Use arch_ops.
3993         (ravenscar_thread_target::prepare_to_store): Likewise.
3994
3995 2018-07-22  Tom Tromey  <tom@tromey.com>
3996
3997         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
3998         unused variable.  Call value_fetch_lazy when needed.
3999         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
4000         Remove unused variable.  Call value_fetch_lazy when needed.
4001
4002 2018-07-22  Tom Tromey  <tom@tromey.com>
4003
4004         * m32c-tdep.c (mark_dma): Return void.
4005         (make_regs): Remove unused declarations.
4006
4007 2018-07-22  Tom Tromey  <tom@tromey.com>
4008
4009         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
4010         cmdscm_get_valid_command_smob_arg_unsafe for effect.
4011         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
4012         bkscm_get_valid_block_smob_arg_unsafe for effect.
4013
4014 2018-07-22  Tom Tromey  <tom@tromey.com>
4015
4016         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
4017         value_type.
4018
4019 2018-07-22  Tom Tromey  <tom@tromey.com>
4020
4021         * windows-nat.c (saved_context): Conditionally define.
4022         * remote.c (remote_target::remote_btrace_maybe_reopen):
4023         Conditionally declare "warned".
4024         * inflow.c (sigquit_ours): Conditionally define.
4025         (new_tty): Move "tty" declaration inside #if.
4026         * guile/guile.c (guile_datadir): Conditionally define.
4027         * charset.c (set_be_le_names): Move some declarations inside #if.
4028         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
4029         #if.
4030         (parse_xml_btrace_conf): Likewise.
4031
4032 2018-07-22  Tom Tromey  <tom@tromey.com>
4033
4034         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
4035
4036 2018-07-22  Tom Tromey  <tom@tromey.com>
4037
4038         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
4039         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
4040         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
4041         * buildsym-legacy.c (get_macro_table): Remove unused variable.
4042         * stack.c (frame_apply_level_command): Remove unused variable.
4043         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
4044         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
4045         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
4046         unused variable.
4047         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
4048         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
4049         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
4050         variable.
4051         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
4052         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
4053         variable.
4054         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
4055         Remove unused variable.
4056         * cli/cli-script.c (recurse_read_control_structure): Remove unused
4057         variable.
4058         * common/tdesc.c (print_xml_feature::visit): Remove unused
4059         variable.
4060         * compile/compile-object-load.c (store_regs): Remove unused
4061         variables.
4062         * complaints.c (clear_complaints): Remove unused variable.
4063         * corelow.c (core_target_open): Remove unused variable.
4064         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
4065         variable.
4066         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
4067         variable.
4068         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
4069         variable.
4070         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
4071         variable.
4072         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
4073         variable.
4074         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
4075         variable.
4076         * ia64-tdep.c (examine_prologue): Remove unused variable.
4077         * infcall.c (run_inferior_call): Remove unused variable.
4078         * inferior.c (exit_inferior): Remove unused variable.
4079         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
4080         * linespec.c (decode_line_2): Remove unused variable.
4081         * linux-nat.c (super_close): Remove.
4082         * linux-tdep.c (linux_info_proc): Remove unused variable.
4083         * mi/mi-main.c (mi_execute_command): Remove unused variable.
4084         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
4085         Remove unused variable.
4086         * parse.c (find_minsym_type_and_address): Remove unused variable.
4087         * printcmd.c (info_symbol_command, printf_floating): Remove unused
4088         variable.
4089         * python/py-breakpoint.c (bppy_set_commands): Remove unused
4090         variable.
4091         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
4092         variables.
4093         * record-btrace.c (record_btrace_target::store_registers): Remove
4094         unused variable.
4095         (cmd_show_record_btrace_cpu): Remove unused variable.
4096         * riscv-tdep.c (riscv_register_reggroup_p)
4097         (riscv_push_dummy_call, riscv_return_value): Remove unused
4098         variable.
4099         * rust-exp.y (literal): Remove unused variable.
4100         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
4101         unused variable.
4102         <STRUCTOP_ANONYMOUS>: Likewise.
4103         * s390-linux-tdep.c (s390_linux_init_abi_31)
4104         (s390_linux_init_abi_64): Remove unused variable.
4105         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
4106         (file_select_thread, net_windows_open, _initialize_ser_windows):
4107         Remove unused variables.
4108         * symtab.c (find_pc_sect_line): Remove unused variable.
4109         * target-memory.c (compute_garbled_blocks): Remove unused
4110         variable.
4111         (target_write_memory_blocks): Remove unused variable.
4112         * target.c (target_stack::unpush): Remove unused variables.
4113         * tracepoint.c (start_tracing, all_tracepoint_actions)
4114         (merge_uploaded_trace_state_variables)
4115         (print_one_static_tracepoint_marker): Remove unused variable.
4116         * unittests/basic_string_view/element_access/char/1.cc (test01):
4117         Remove unused variable.
4118         * windows-nat.c (windows_continue, windows_add_all_dlls)
4119         (do_initial_windows_stuff, windows_nat_target::create_inferior):
4120         Remove unused variables.
4121
4122 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
4123
4124         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
4125         attr_profile in HAVE_ELF.
4126         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
4127         HAVE_ELF.
4128
4129 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
4130
4131         * frame.c (frame_register_unwind): Change parameter name.
4132         (frame_unwind_register): Likewise.
4133         (frame_unwind_register_value): Likewise.
4134         (frame_unwind_register_signed): Likewise.
4135         (frame_unwind_register_unsigned): Likewise.
4136         * frame.h (frame_register_unwind): Likewise.
4137         (frame_unwind_register): Likewise.
4138         (frame_unwind_register_value): Likewise.
4139         (frame_unwind_register_signed): Likewise.
4140         (frame_unwind_register_unsigned): Likewise.
4141         (frame_unwind_arch): Likewise.
4142
4143 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4144
4145         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
4146         ISA maintenance.
4147
4148 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4149
4150         * mips-linux-nat.c (mips_linux_nat_target::read_description):
4151         Call `get_ptrace_pid' rather than extracting the ptrace PID by
4152         hand.
4153
4154 2018-07-20  Keith Seitz  <keiths@redhat.com>
4155
4156         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
4157         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
4158         m_compunit_symtab, m_language>: Add "m_" prefix.
4159         Update all uses.
4160         * buildsym.c: Update all uses.
4161
4162 2018-07-20  Tom Tromey  <tom@tromey.com>
4163
4164         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
4165         * buildsym.h (record_line_ftype): Remove typedef.
4166
4167 2018-07-20  Tom Tromey  <tom@tromey.com>
4168
4169         * buildsym-legacy.h (augment_type_symtab): Don't declare.
4170         (end_expandable_symtab): Likewise.
4171         (end_symtab_get_static_block): Likewise.
4172         (end_symtab_from_static_block): Likewise.
4173         * buildsym-legacy.c (augment_type_symtab): Remove.
4174         (end_expandable_symtab): Remove.
4175         (end_symtab_get_static_block): Remove.
4176         (end_symtab_from_static_block): Remove.
4177
4178 2018-07-20  Tom Tromey  <tom@tromey.com>
4179
4180         * dwarf2read.c: Include buildsym.h.
4181         (struct dwarf2_cu) <builder>: New method.
4182         (fixup_go_packaging): Update.
4183         (process_full_comp_unit, process_full_type_unit): Update.  Don't
4184         use scoped_free_pendings.
4185         (using_directives): Add "cu" parameter, remove "language".
4186         (read_import_statement, setup_type_unit_groups, )
4187         (read_func_scope, read_lexical_block_scope)
4188         (dwarf2_record_block_ranges, read_namespace): Update.
4189         (lnp_state_machine::lnp_state_machine): Add cu parameter.
4190         (lnp_state_machine::handle_end_sequence): Update.
4191         (class lnp_state_machine) <m_cu>: New member.
4192         <m_record_line_callback>: Remove.
4193         <m_currently_recording_lines>: New member.
4194         (lnp_state_machine::handle_set_file): Update.
4195         (noop_record_line): Remove.
4196         (dwarf_record_line_p): Add cu parameter.
4197         (dwarf_record_line_1, dwarf_finish_line): Likewise.
4198         (lnp_state_machine::record_line)
4199         (lnp_state_machine::lnp_state_machine)
4200         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
4201         (dwarf_decode_lines): Update.
4202         (dwarf2_start_subfile): Add cu parameter.
4203         (dwarf2_start_symtab, new_symbol): Update.
4204         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
4205         Remove dwarf2_per_objfile parameter.
4206         (dwarf_decode_macros): Update.
4207
4208 2018-07-20  Tom Tromey  <tom@tromey.com>
4209
4210         * stabsread.c (define_symbol): Update.
4211         * buildsym-legacy.h (get_buildsym_compunit): Declare.
4212         * dwarf2read.c (new_symbol): Update.
4213         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
4214         * cp-namespace.c: Include buildsym.h.
4215         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
4216         * buildsym-legacy.c (get_buildsym_compunit): New function.
4217
4218 2018-07-20  Tom Tromey  <tom@tromey.com>
4219
4220         * xcoffread.c: Include buildsym-legacy.h.
4221         * windows-nat.c: Include buildsym-legacy.h.
4222         * stabsread.c: Include buildsym-legacy.h.
4223         * mdebugread.c: Include buildsym-legacy.h.
4224         * buildsym-legacy.h: New file.
4225         * buildsym-legacy.c: New file, from buildsym.c.
4226         * go32-nat.c: Include buildsym-legacy.h.
4227         * dwarf2read.c: Include buildsym-legacy.h.
4228         * dbxread.c: Include buildsym-legacy.h.
4229         * cp-namespace.c: Include buildsym-legacy.h.
4230         * coffread.c: Include buildsym-legacy.h.
4231         * buildsym.h: Move some contents to buildsym-legacy.h.
4232         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
4233         buildsym-legacy.c.
4234         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
4235
4236 2018-07-20  Tom Tromey  <tom@tromey.com>
4237
4238         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
4239         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
4240         (buildsym_compunit::buildsym_compunit)
4241         (buildsym_compunit::~buildsym_compunit)
4242         (buildsym_compunit::get_macro_table): Define.
4243
4244 2018-07-20  Tom Tromey  <tom@tromey.com>
4245
4246         * buildsym.c (reset_symtab_globals): Remove.
4247         (buildsym_compunit::end_symtab_from_static_block): Update.
4248         (buildsym_compunit::augment_type_symtab): Update.
4249         (end_symtab_from_static_block): Call free_buildsym_compunit.
4250         (augment_type_symtab, end_symtab, end_expandable_symtab):
4251         Likewise.
4252
4253 2018-07-20  Tom Tromey  <tom@tromey.com>
4254
4255         * arch-utils.c: Do not include buildsym.h.
4256         * mipsread.c: Do not include buildsym.h.
4257         * machoread.c: Do not include buildsym.h.
4258         * elfread.c: Do not include buildsym.h.
4259
4260 2018-07-20  Tom Tromey  <tom@tromey.com>
4261
4262         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
4263         initialization.
4264         (buildsym_compunit): Add new constructor.
4265         (struct buildsym_compunit) <get_last_source_file, finish_block,
4266         record_block_range, start_subfile, patch_subfile_names,
4267         push_subfile, pop_subfile, record_line, get_compunit_symtab,
4268         set_last_source_start_addr, get_last_source_start_addr,
4269         get_local_using_directives, set_local_using_directives,
4270         get_global_using_directives, outermost_context_p,
4271         get_current_context_stack, get_context_stack_depth,
4272         get_current_subfile, get_local_symbols, get_file_symbols,
4273         get_global_symbols, record_debugformat, record_producer,
4274         push_context, pop_context, end_symtab_get_static_block,
4275         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
4276         New public methods.
4277         <record_pending_block, finish_block_internal, make_blockvector,
4278         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
4279         private methods.
4280         Update all users.
4281
4282 2018-05-22  Tom Tromey  <tom@tromey.com>
4283
4284         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
4285         parameter.
4286         (finish_block_internal): Update.
4287
4288 2018-07-20  Tom Tromey  <tom@tromey.com>
4289
4290         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
4291         parameter.
4292         (finish_block_internal): Update.
4293
4294 2018-07-20  Tom Tromey  <tom@tromey.com>
4295
4296         * buildsym.h (EXTERN): Don't define or undef.
4297         * buildsym.c (EXTERN): Don't define.
4298
4299 2018-07-20  Tom Tromey  <tom@tromey.com>
4300
4301         * buildsym.c: Remove TODO comment.
4302
4303 2018-07-20  Tom Tromey  <tom@tromey.com>
4304
4305         * coffread.c (coff_symtab_read): Update.
4306         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
4307         (xcoff_new_init): Update.
4308         * mipsread.c (mipscoff_new_init): Update.
4309         * mdebugread.c (mdebug_build_psymtabs): Update.
4310         * elfread.c (elf_new_init): Update.
4311         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
4312         Update.
4313         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
4314         (coffstab_build_psymtabs, elfstab_build_psymtabs)
4315         (stabsect_build_psymtabs): Update.
4316         * buildsym.h (buildsym_init): Don't declare.
4317         * buildsym.c: Update comment.
4318         (prepare_for_building): Remove.
4319         (start_symtab, restart_symtab): Update.
4320         (reset_symtab_globals): Update comment.
4321         (buildsym_init): Remove.
4322
4323 2018-07-20  Tom Tromey  <tom@tromey.com>
4324
4325         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
4326         * stabsread.c (patch_block_stabs, define_symbol, read_type)
4327         (read_enum_type, common_block_start, common_block_end)
4328         (cleanup_undefined_types_1, finish_global_stabs): Update.
4329         * mdebugread.c (psymtab_to_symtab_1): Update.
4330         * dwarf2read.c (fixup_go_packaging, read_func_scope)
4331         (read_lexical_block_scope, new_symbol): Update.
4332         * dbxread.c (process_one_symbol): Update.
4333         * coffread.c (coff_symtab_read, process_coff_symbol)
4334         (coff_read_enum_type): Update.
4335         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
4336         declare.
4337         (get_local_symbols, get_file_symbols, get_global_symbols): New
4338         functions.
4339         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
4340         m_global_symbols.
4341         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
4342         (~scoped_free_pendings): Update.
4343         (finish_block, prepare_for_building, reset_symtab_globals)
4344         (end_symtab_get_static_block, end_symtab_with_blockvector)
4345         (augment_type_symtab, push_context): Update.
4346         (get_local_symbols, get_file_symbols, get_global_symbols): New
4347         functions.
4348         (buildsym_init): Update.
4349
4350 2018-07-20  Tom Tromey  <tom@tromey.com>
4351
4352         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
4353         (process_full_type_unit): Likewise.
4354         (dwarf2_start_symtab): Set list_in_scope.
4355
4356 2018-07-20  Tom Tromey  <tom@tromey.com>
4357
4358         * dwarf2read.c (process_psymtab_comp_unit_reader)
4359         (build_type_psymtabs_reader): Do not set list_in_scope.
4360
4361 2018-07-20  Tom Tromey  <tom@tromey.com>
4362
4363         * buildsym.c (free_pendings): Remove.
4364         (add_symbol_to_list, scoped_free_pendings)
4365         (finish_block_internal, buildsym_init): Update.
4366
4367 2018-07-20  Tom Tromey  <tom@tromey.com>
4368
4369         * xcoffread.c (read_xcoff_symtab): Update.
4370         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
4371         Update.
4372         * dbxread.c (process_one_symbol): Update.
4373         * coffread.c (coff_symtab_read): Update.
4374         * buildsym.h (finish_block): Update.
4375         * buildsym.c (finish_block): Remove "listhead" argument.
4376         (end_symtab_get_static_block): Update.
4377
4378 2018-07-20  Tom Tromey  <tom@tromey.com>
4379
4380         * buildsym.h (class scoped_free_pendings): Remove constructor.
4381         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
4382         method.
4383         <m_pending_block_obstack, m_pending_blocks>: New members.
4384         (pending_block_obstack, pending_blocks): Remove.
4385         (scoped_free_pendings::scoped_free_pendings): Default.
4386         (~scoped_free_pendings): Update.
4387         (free_pending_blocks): Remove.
4388         (finish_block_internal, record_pending_block, make_blockvector)
4389         (end_symtab_get_static_block, augment_type_symtab, push_context)
4390         (buildsym_init): Update.
4391
4392 2018-07-20  Tom Tromey  <tom@tromey.com>
4393
4394         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
4395         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
4396         members.
4397         (pending_addrmap, pending_addrmap_obstack)
4398         (pending_addrmap_interesting): Remove.
4399         (scoped_free_pendings, record_block_range, make_blockvector)
4400         (prepare_for_building, reset_symtab_globals, buildsym_init):
4401         Update.
4402
4403 2018-07-20  Tom Tromey  <tom@tromey.com>
4404
4405         * xcoffread.c (process_linenos): Update.
4406         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
4407         * mdebugread.c (psymtab_to_symtab_1): Update.
4408         * dwarf2read.c (setup_type_unit_groups)
4409         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
4410         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
4411         * dbxread.c (process_one_symbol): Update.
4412         * coffread.c (coff_symtab_read, enter_linenos)
4413         (process_coff_symbol): Update.
4414         * buildsym.h (current_subfile): Don't declare.
4415         (get_current_subfile): Declare.
4416         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
4417         member.
4418         (start_subfile, free_buildsym_compunit, push_subfile)
4419         (prepare_for_building, start_symtab): Update.
4420         (get_current_subfile): New function.
4421
4422 2018-07-20  Tom Tromey  <tom@tromey.com>
4423
4424         * coffread.c (coff_symtab_read): Update.
4425         * xcoffread.c (read_xcoff_symtab): Update.
4426         * dwarf2read.c (new_symbol): Update.
4427         (read_func_scope, read_lexical_block_scope): Update.
4428         * dbxread.c (process_one_symbol): Update.
4429         * buildsym.h (context_stack, context_stack_depth): Don't declare.
4430         (outermost_context_p): Remove macro.
4431         (outermost_context_p, get_current_context_stack)
4432         (get_context_stack_depth): Declare.
4433         (pop_context): Return struct context_stack.
4434         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
4435         member.
4436         (context_stack_size): Remove.
4437         (INITIAL_CONTEXT_STACK_SIZE): Remove.
4438         (prepare_for_building, end_symtab_get_static_block)
4439         (augment_type_symtab, push_context): Update.
4440         (pop_context): Return struct context_stack.
4441         (outermost_context_p, get_current_context_stack)
4442         (get_context_stack_depth): New functions.
4443         (buildsym_init): Update.
4444
4445 2018-07-20  Tom Tromey  <tom@tromey.com>
4446
4447         * rust-exp.y: Now a pure parser.  Update all rules.
4448         (%union): Move earlier.
4449         (current_parser, work_obstack): Remove globals.
4450         (rust_parser, ~rust_parser): Update.
4451         (class rust_parser) <copy_name, concat3, crate_name, super_name,
4452         lex_character, lex_number, lex_string, lex_identifier,
4453         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
4454         convert_name, convert_params_to_expression,
4455         convert_ast_to_expression, ast_basic_type, ast_operation,
4456         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
4457         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
4458         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
4459         ast_array_type, ast_slice_type, ast_reference_type,
4460         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
4461         (rust_parse): Update.
4462         (rustyyerror, rustyylex): Add parser parameter.
4463         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
4464         (rust_lex_stringish_test, rust_lex_test_sequence)
4465         (rust_lex_test_trailing_dot, rust_lex_test_completion)
4466         (rust_lex_test_push_back, rust_lex_tests): Update.
4467
4468 2018-07-19  Pedro Alves  <palves@redhat.com>
4469
4470         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
4471         gdb::unique_xmalloc_ptr.
4472         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
4473         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
4474         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
4475         copy-initialization.
4476         * guile/scm-pretty-print.c (ppscm_print_children): Use
4477         gdb::unique_xmalloc_ptr instead of cleanups.
4478         (gdbscm_apply_val_pretty_printer): Remove cleanups.
4479         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
4480         gdb::unique_xmalloc_ptr.
4481         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
4482         Adjust to use gdb::unique_xmalloc_ptr.
4483         * guile/scm-utils.c (extract_arg): Adjust.
4484         * guile/scm-value.c (gdbscm_value_field): Adjust to use
4485         gdb::unique_xmalloc_ptr instead of a cleanup.
4486
4487 2018-07-19  Tom Tromey  <tom@tromey.com>
4488
4489         * utils.c (do_value_free_to_mark)
4490         (make_cleanup_value_free_to_mark): Remove.
4491         * utils.h (make_cleanup_value_free_to_mark): Remove.
4492
4493 2018-07-19  Pedro Alves  <palves@redhat.com>
4494
4495         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
4496         forwarding reference.
4497
4498 2018-07-18  Pedro Alves  <palves@redhat.com>
4499
4500         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
4501         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
4502         cleanup.
4503
4504 2018-07-18  Pedro Alves  <palves@redhat.com>
4505
4506         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
4507         exceptions.
4508         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
4509         (gdbscm_wrap): New.
4510         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
4511         directly instead of a cleanup.
4512         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
4513         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
4514         (vlscm_binop_gdbthrow): New, factored out from ...
4515         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
4516         (vlscm_rich_compare): Use gdbscm_wrap.
4517         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
4518         instead of a cleanup.
4519         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
4520         cleanup.
4521         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
4522         Use xfree directly instead of a cleanup.
4523         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
4524         Adjust to use gdbscm_wrap and scoped_value_mark.
4525         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
4526         (gdbscm_value_address, gdbscm_value_dereference)
4527         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
4528         scoped_value_mark.
4529         (gdbscm_value_dynamic_type): Use scoped_value_mark.
4530         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
4531         scoped_value_mark.
4532         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
4533         gdbscm_wrap and scoped_value_mark.
4534         (gdbscm_value_to_string): Use xfree directly instead of a
4535         cleanup.  Move 'buffer' unique_ptr to TRY scope.
4536         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
4537         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
4538         scoped_value_mark.
4539         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
4540         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
4541         scoped_value_mark.
4542         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
4543         gdbscm_wrap.
4544
4545 2018-07-18  Tom de Vries  <tdevries@suse.de>
4546
4547         * findvar.c (default_read_var_value): Also resolve dynamic type for
4548         LOC_OPTIMIZED_OUT vars.
4549
4550 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
4551
4552         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
4553         decoding.
4554
4555 2018-07-17  Tom Tromey  <tom@tromey.com>
4556
4557         * guile/scm-param.c (pascm_set_func, pascm_show_func)
4558         (compute_enum_list, pascm_set_param_value_x)
4559         (gdbscm_parameter_value): Update.
4560         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
4561         (gdbscm_scm_to_host_string): Update.
4562         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
4563         Update.
4564         * guile/scm-cmd.c (cmdscm_add_completion): Update.
4565         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
4566         * guile/scm-string.c (gdbscm_scm_to_string): Return
4567         unique_xmalloc_ptr.
4568         (gdbscm_scm_to_host_string): Likewise.
4569
4570 2018-07-17  Tom Tromey  <tom@tromey.com>
4571
4572         * guile/guile.c (gdbscm_eval_from_control_command): Update.
4573         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
4574         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
4575         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
4576         unique_xmalloc_ptr.
4577
4578 2018-07-17  Tom Tromey  <tom@tromey.com>
4579
4580         * guile/scm-param.c (pascm_signal_setshow_error): Update.
4581         * guile/guile-internal.h (gdbscm_exception_message_to_string):
4582         Update.
4583         * guile/scm-cmd.c (cmdscm_function): Update.
4584         * guile/scm-pretty-print.c
4585         (ppscm_print_exception_unless_memory_error): Update.
4586         * guile/scm-exception.c (gdbscm_exception_message_to_string):
4587         Return unique_xmalloc_ptr.
4588
4589 2018-07-17  Tom Tromey  <tom@tromey.com>
4590
4591         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
4592         Use string_printf.
4593
4594 2018-07-17  Jim Wilson  <jimw@sifive.com>
4595
4596         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
4597         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
4598         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
4599         unecessary braces after EF_RISCV_RVC test.  Delete call to
4600         set_gdbarch_decr_pc_after_break.
4601
4602         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
4603         RISCV_LAST_FP_REGNUM + 1.
4604         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
4605
4606 2018-07-17  Tom Tromey  <tom@tromey.com>
4607
4608         * configure.ac: Remove --disable-gdbcli.
4609         * configure: Rebuild.
4610         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
4611         (SUBDIR_CLI_CFLAGS): Remove.
4612         (SFILES): Use SUBDIR_CLI_SRCS.
4613         (COMMON_OBS): Use SUBDIR_CLI_OBS.
4614
4615 2018-07-17  Tom Tromey  <tom@tromey.com>
4616
4617         PR gdb/18624:
4618         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
4619
4620 2018-07-16  Jim Wilson  <jimw@sifive.com>
4621
4622         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
4623
4624 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
4625
4626         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
4627         variable.
4628         (libunwind_frame_sniffer): Likewise.
4629         (libunwind_frame_prev_register): Likewise.
4630         (libunwind_sigtramp_frame_sniffer): Likewise.
4631         * ia64-tdep.c (ia64_access_reg): Likewise.
4632         (ia64_access_rse_reg): Likewise.
4633         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
4634         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
4635
4636 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
4637
4638         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
4639
4640 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
4641
4642         * remote-sim.c (gdbsim_target::close,
4643         gdbsim_target::mourn_inferior): Remove unused variables.
4644
4645 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
4646
4647         * ia64-tdep.c (ktab_buf): New global.
4648         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
4649         (get_kernel_table): Adjust.
4650
4651 2018-07-16  Tom Tromey  <tom@tromey.com>
4652
4653         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
4654         * dwarf2read.c (using_directives, new_symbol): Use
4655         outermost_context_p.
4656         * dbxread.c (process_one_symbol): Use outermost_context_p.
4657         * coffread.c (coff_symtab_read): Use outermost_context_p.
4658
4659 2018-07-16  Tom Tromey  <tom@tromey.com>
4660
4661         * dwarf2read.c (using_directives, read_func_scope)
4662         (read_lexical_block_scope): Update.
4663         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
4664         * buildsym.h (local_using_directives, global_using_directives):
4665         Don't declare.
4666         (get_local_using_directives, set_local_using_directives)
4667         (get_global_using_directives): Declare.
4668         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
4669         m_global_using_directives>: New members.
4670         (finish_block_internal, prepare_for_building)
4671         (reset_symtab_globals, end_symtab_get_static_block)
4672         (push_context): Update.
4673         (get_local_using_directives, set_local_using_directives)
4674         (get_global_using_directives): New functions.
4675         (buildsym_init): Update.
4676
4677 2018-07-16  Tom Tromey  <tom@tromey.com>
4678
4679         * xcoffread.c (xcoff_initial_scan): Don't call
4680         free_pending_blocks.
4681         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
4682         * buildsym.h (class scoped_free_pendings): Add constructor.
4683         (free_pending_blocks): Don't declare.
4684         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
4685         (free_pending_blocks): Now static.
4686
4687 2018-07-16  Tom Tromey  <tom@tromey.com>
4688
4689         * buildsym.h (push_subfile, pop_subfile): Update declarations.
4690         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
4691         member.
4692         (struct subfile_stack): Remove.
4693         (subfile_stack): Remove.
4694         (push_subfile, pop_subfile, buildsym_init): Update.
4695
4696 2018-07-16  Tom Tromey  <tom@tromey.com>
4697
4698         * buildsym.c (push_subfile): Use gdb_assert.
4699         (pop_subfile): Use gdb_assert.
4700
4701 2018-07-16  Tom Tromey  <tom@tromey.com>
4702
4703         * buildsym.h (merge_symbol_lists): Remove.
4704         * buildsym.c (merge_symbol_lists): Remove.
4705
4706 2018-07-16  Tom Tromey  <tom@tromey.com>
4707
4708         * stabsread.c (scan_file_globals): Update comment.
4709         * stabsread.h (scan_file_globals): Move from buildsym.h.
4710         * buildsym.h (scan_file_globals): Move to stabsread.h.
4711
4712 2018-07-16  Tom Tromey  <tom@tromey.com>
4713
4714         * xcoffread.c (xcoff_new_init): Update.
4715         * mipsread.c (mipscoff_new_init): Update.
4716         * mdebugread.c (mdebug_build_psymtabs): Update.
4717         * elfread.c (elf_new_init): Update.
4718         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
4719         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
4720         * buildsym.h (buildsym_new_init): Don't declare.
4721         * buildsym.c (buildsym_new_init): Remove.
4722
4723 2018-07-16  Tom Tromey  <tom@tromey.com>
4724
4725         * stabsread.h (within_function): Move from buildsym.h.
4726         * stabsread.c (start_stabs): Clear within_function.
4727         * coffread.c (coff_start_symtab): Clear within_function.
4728         * buildsym.h (within_function): Move to stabsread.h.
4729         * buildsym.c (prepare_for_building): Update.
4730
4731 2018-07-16  Tom Tromey  <tom@tromey.com>
4732
4733         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
4734         * dwarf2read.c (dwarf2_start_symtab): Don't set
4735         processing_gcc_compilation.
4736         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
4737
4738 2018-07-16  Tom Tromey  <tom@tromey.com>
4739
4740         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
4741         (next_symbol_text_func): Move from buildsym.h.
4742         * stabsread.c (hashname): Move from buildsym.c.
4743         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
4744         (next_symbol_text_func, hashname): Move to stabsread.h.
4745         * buildsym.c: Don't include bcache.h
4746         (hashname): Move to stasbread.c.
4747
4748 2018-07-16  Tom Tromey  <tom@tromey.com>
4749
4750         * buildsym.h (context_stack_size): Don't declare.
4751         * buildsym.c (context_stack_size): New global.
4752
4753 2018-07-16  Tom Tromey  <tom@tromey.com>
4754
4755         * dbxread.c (processing_acc_compilation): New global.
4756         * buildsym.h (processing_acc_compilation): Don't declare.
4757
4758 2018-07-16  Tom Tromey  <tom@tromey.com>
4759
4760         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
4761         * dbxread.c (read_ofile_symtab): Update.
4762         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
4763         * buildsym.h (last_source_start_addr): Remove.
4764         (set_last_source_start_addr, get_last_source_start_addr):
4765         Declare.
4766         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
4767         parameter.
4768         (struct buildsym_compunit) <m_last_source_start_addr>: New
4769         member.
4770         (prepare_for_building): Remove start_addr parameter.
4771         (start_symtab, restart_symtab, end_symtab_get_static_block)
4772         (end_symtab_with_blockvector): Update.
4773         (set_last_source_start_addr, get_last_source_start_addr): New
4774         functions.
4775
4776 2018-07-16  Tom Tromey  <tom@tromey.com>
4777
4778         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
4779         member.
4780         (have_line_numbers): Remove.
4781         (record_line, prepare_for_building, end_symtab_get_static_block)
4782         (augment_type_symtab): Update.
4783
4784 2018-07-16  Tom Tromey  <tom@tromey.com>
4785
4786         * buildsym.c (~buildsym_compunit): Free the macro table.
4787         (struct buildsym_compunit) <get_macro_table, release_macros>: New
4788         methods.
4789         <m_pending_macros>: New member.
4790         (pending_macros): Remove.
4791         (~scoped_free_pendings, get_macro_table, prepare_for_building)
4792         (reset_symtab_globals, end_symtab_get_static_block)
4793         (end_symtab_with_blockvector, augment_type_symtab)
4794         (buildsym_init): Update.
4795
4796 2018-07-16  Tom Tromey  <tom@tromey.com>
4797
4798         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
4799         parameter.
4800         (buildsym_compunit::set_last_source_file): New method.
4801         <m_last_source_file>: New member.
4802         (prepare_for_building): Remove "name" parameter.
4803         (start_symtab, restart_symtab, reset_symtab_globals): Update.
4804         (last_source_file): Remove.
4805         (set_last_source_file, get_last_source_file): Update.
4806
4807 2018-07-16  Tom Tromey  <tom@tromey.com>
4808
4809         * buildsym.c (prepare_for_building): Add assert.
4810
4811 2018-07-16  Tom Tromey  <tom@tromey.com>
4812
4813         * buildsym.c (~buildsym_compunit): Update.
4814         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
4815         (start_subfile, patch_subfile_names)
4816         (end_symtab_with_blockvector): Update.
4817
4818 2018-07-16  Tom Tromey  <tom@tromey.com>
4819
4820         * buildsym.c (struct buildsym_compunit): Add constructor,
4821         destructor, initializers.
4822         (start_buildsym_compunit): Remove.
4823         (free_buildsym_compunit): Use "delete".
4824         (start_symtab, restart_symtab): Use "new".
4825
4826 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
4827
4828         * symfile.c (set_objfile_default_section_offset): Remove struct
4829         keyword.
4830
4831 2018-07-14  Stafford Horne  <shorne@gmail.com>
4832
4833         * (Responsible Maintainers): Add myself as or1k maintainer.
4834
4835 2018-07-13  Tom Tromey  <tom@tromey.com>
4836
4837         * symfile.c (set_objfile_default_section_offset): Use extra braces
4838         around initializer.
4839
4840 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
4841
4842         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
4843         non-branching basr.
4844
4845 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4846
4847         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
4848         unittests/cli-utils-selftests.c
4849         * unittests/cli-utils-selftests.c: New file.
4850
4851 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4852
4853         * NEWS: Mention new commands. Mention change to 'thread apply'.
4854
4855 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4856
4857         * thread.c (thr_try_catch_cmd): New function.
4858         (thread_apply_all_command): Handle qcs flags.
4859         (thread_apply_command): Handle qcs flags.
4860         (taas_command): New function.
4861         (tfaas_command): New function.
4862         (_initialize_thread): Update to setup the new commands 'taas
4863         and 'tfaas'. Change doc string for 'thread apply'.
4864
4865 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4866
4867         * stack.c: (trailing_outermost_frame): New function, mostly
4868         extracted from backtrace_command_1.
4869         (leading_innermost_frame): New function.
4870         (backtrace_command_1): Update to call trailing_outermost_frame.
4871         (frame_apply_command_count): New function.
4872         (frame_apply_level_command): New function.
4873         (frame_apply_all_command): New function.
4874         (frame_apply_command): New function.
4875         (faas_command): New function.
4876         (frame_cmd_list): New variable.
4877         (_initialize_stack): Update to setup the new commands 'frame apply'
4878         and 'faas'.
4879
4880 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4881
4882         * cli-utils.c (number_or_range_parser::get_number): Only handle
4883         numbers or convenience var as numbers.
4884         (parse_flags): New function.
4885         (parse_flags_qcs): New function.
4886         (number_or_range_parser::finished): Ensure parsing end is detected
4887         before end of string.
4888         * cli-utils.h (parse_flags): New function.
4889         (parse_flags_qcs): New function.
4890         (number_or_range_parser): Remove m_finished bool.
4891         (number_or_range_parser::skip_range): Set m_in_range to false.
4892
4893 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
4894
4895         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
4896         on Windows.
4897
4898 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
4899             Jan Kratochvil  <jan.kratochvil@redhat.com>
4900             Paul Fertser  <fercerpav@gmail.com>
4901             Tsutomu Seki  <sekiriki@gmail.com>
4902             Pedro Alves  <palves@redhat.com>
4903
4904         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
4905         'unittests/parse-connection-spec-selftests.c'.
4906         (COMMON_SFILES): Add 'common/netstuff.c'.
4907         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
4908         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
4909         * common/netstuff.c: New file.
4910         * common/netstuff.h: New file.
4911         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
4912         (wait_for_connect): Update comment.  New parameter
4913         'gdb::optional<int> sock' instead of 'struct serial *scb'.
4914         Use 'sock' directly instead of 'scb->fd'.
4915         (try_connect): New function, with code from 'net_open'.
4916         (net_open): Rewrite main loop to deal with multiple
4917         sockets/addresses.  Handle IPv6-style hostnames; implement
4918         support for IPv6 connections.
4919         * unittests/parse-connection-spec-selftests.c: New file.
4920
4921 2018-07-11  Pedro Alves  <palves@redhat.com>
4922
4923         PR gdb/23377
4924         * remote.c (remote_target::remote_detach_pid): Call
4925         set_current_process.
4926
4927 2018-07-11  Pedro Alves  <palves@redhat.com>
4928
4929         * h8300-tdep.c (h8300_gdbarch_init): Remove
4930         set_gdbarch_ecoff_reg_to_regnum calls.
4931
4932 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
4933
4934         PR c++/23373
4935         * c-typeprint.c (c_type_print_base_struct_union): Don't print
4936         offsets/sizes for static members of a class/struct.
4937
4938 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
4939
4940         * target-descriptions.c (tdesc_register_bitsize): Rename.
4941         * target-descriptions.h (tdesc_register_bitsize): Likewise.
4942         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
4943         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
4944
4945 2018-07-10  Tom Tromey  <tom@tromey.com>
4946
4947         * breakpoint.c (moribund_locations): Now static and a
4948         std::vector.
4949         (breakpoint_init_inferior, moribund_breakpoint_here_p)
4950         (build_bpstat_chain, update_global_location_list)
4951         (breakpoint_retire_moribund): Update.
4952         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
4953         VEC.
4954
4955 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
4956
4957         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
4958         (riscv_register_reggroup_p): Use new function, remove unneeded
4959         parenthesis.
4960         (riscv_push_dummy_call): Extend assert to compare against xlen or
4961         flen based on register type.
4962
4963 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
4964
4965         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
4966
4967 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4968
4969         * remote.c (show_hardware_watchpoint_limit): New function.
4970         (show_hardware_watchpoint_length_limit): New function.
4971         (show_hardware_breakpoint_limit): New function.
4972         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
4973         where appropriate, update help text.
4974
4975 2018-07-09  Tom Tromey  <tom@tromey.com>
4976
4977         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
4978         (CLIBS): Don't mention NAT_CLIBS.
4979
4980 2018-07-09  Tom Tromey  <tom@tromey.com>
4981
4982         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
4983         (LIBGDB_OBS, clean mostlyclean): Update.
4984         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
4985
4986 2018-07-09  Tom Tromey  <tom@tromey.com>
4987
4988         * Makefile.in (%.c: %.y): Use ECHO_YACC.
4989         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
4990         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
4991
4992 2018-07-09  Tom Tromey  <tom@tromey.com>
4993
4994         * Makefile.in (ALLDEPFILES): Remove exec.c.
4995         (COMMON_OBS): Remove exec.o.
4996         (COMMON_SFILES): Add exec.c.
4997
4998 2018-07-09  Tom Tromey  <tom@tromey.com>
4999
5000         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
5001
5002 2018-07-09  Tom Tromey  <tom@tromey.com>
5003
5004         * Makefile.in (clean mostlyclean): Remove stamp-version.
5005         (version.c): Depend on stamp-version.
5006         (stamp-version): New rule, from version.c rule.
5007
5008 2018-07-09  Tom Tromey  <tom@tromey.com>
5009
5010         * Makefile.in (init.c): Depend on stamp-init.
5011         (stamp-init): New rule, from init.c rule.
5012         (clean mostlyclean): Remove stamp-init.
5013
5014 2018-07-09  Tom Tromey  <tom@tromey.com>
5015
5016         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
5017         SUBDIR_GCC_COMPILE_SRCS.
5018
5019 2018-07-09  Tom Tromey  <tom@tromey.com>
5020
5021         * Makefile.in (init.c): Remove some unused sed rules.
5022
5023 2018-07-09  Tom Tromey  <tom@tromey.com>
5024
5025         * Makefile.in (TSOBS): Remove.
5026         (INIT_FILES): Update.
5027         (LIBGDB_OBS): Update.
5028         (COMMON_SFILES): Add inflow.c.
5029         (SFILES): Remove inflow.c.
5030
5031 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
5032
5033         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
5034
5035 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
5036
5037         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
5038         get_saveloc_name, is_signal_frame_name, step_name,
5039         init_remote_name, create_addr_space_name,
5040         destroy_addr_space_name, search_unwind_table_name,
5041         find_dyn_list_name): Constify.
5042
5043 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
5044
5045         * darwin-nat.c (darwin_pthread_kill): New function.
5046         (darwin_resume_thread): Use darwin_pthread_kill.
5047
5048 2018-07-05  Tom de Vries  <tdevries@suse.de>
5049
5050         * macroexp.c (macro_buffer) <operator=>: New member function.
5051
5052 2018-07-04  Tom Tromey  <tom@tromey.com>
5053
5054         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
5055
5056 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
5057
5058         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
5059         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
5060         * maint.c: Likewise.
5061         * top.c: Likewise.
5062
5063 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5064
5065         * NEWS: Create a new section for the next release branch.
5066         Rename the section of the current branch, now that it has
5067         been cut.
5068
5069 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5070
5071         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
5072         * version.in: Bump version to 8.2.50.DATE-git.
5073
5074 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
5075             Pedro Alves  <palves@redhat.com>
5076
5077         * linux-nat.c (linux_init_ptrace): Rename to ...
5078         (linux_init_ptrace_procfs): ... this.  Call
5079         linux_proc_init_warnings.
5080         (linux_nat_target::post_attach)
5081         (linux_nat_target::post_startup_inferior): Adjust.
5082         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
5083         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
5084
5085 2018-07-04  Tom de Vries  <tdevries@suse.de>
5086
5087         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
5088         check ...
5089         (read_comp_unit_head): ... here.
5090
5091 2018-07-03  Tom Tromey  <tom@tromey.com>
5092
5093         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
5094         (stop_tracing, tstatus_command)
5095         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
5096         (print_one_static_tracepoint_marker): Update.
5097         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
5098         std::vector.
5099         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
5100         VEC.
5101         (all_tracepoints, static_tracepoints_here): Return std::vector.
5102
5103 2018-07-03  Tom Tromey  <tom@tromey.com>
5104
5105         * common/ptid.c (ptid_equal): Remove.
5106         * common/ptid.h (ptid_equal): Don't declare.
5107         * ada-tasks.c: Update.
5108         * breakpoint.c: Update.
5109         * common/agent.c: Update.
5110         * corelow.c: Update.
5111         * darwin-nat-info.c: Update.
5112         * darwin-nat.c: Update.
5113         * dcache.c: Update.
5114         * dtrace-probe.c: Update.
5115         * dummy-frame.c: Update.
5116         * fbsd-nat.c: Update.
5117         * frame.c: Update.
5118         * gdbthread.h: Update.
5119         * gnu-nat.c: Update.
5120         * go32-nat.c: Update.
5121         * inf-loop.c: Update.
5122         * inf-ptrace.c: Update.
5123         * infcall.c: Update.
5124         * infcmd.c: Update.
5125         * inflow.c: Update.
5126         * infrun.c: Update.
5127         * linux-fork.c: Update.
5128         * linux-nat.c: Update.
5129         * linux-thread-db.c: Update.
5130         * mi/mi-cmd-var.c: Update.
5131         * mi/mi-interp.c: Update.
5132         * mi/mi-main.c: Update.
5133         * nto-procfs.c: Update.
5134         * ppc-linux-tdep.c: Update.
5135         * procfs.c: Update.
5136         * python/py-inferior.c: Update.
5137         * python/py-record-btrace.c: Update.
5138         * python/py-record.c: Update.
5139         * ravenscar-thread.c: Update.
5140         * regcache.c: Update.
5141         * remote-sim.c: Update.
5142         * remote.c: Update.
5143         * sol-thread.c: Update.
5144         * solib.c: Update.
5145         * target.c: Update.
5146         * tui/tui-stack.c: Update.
5147         * varobj.c: Update.
5148         * windows-nat.c: Update.
5149         * windows-tdep.c: Update.
5150
5151 2018-07-03  Tom Tromey  <tom@tromey.com>
5152
5153         * common/ptid.c (ptid_match): Remove.
5154         * common/ptid.h (ptid_match): Don't declare.
5155         * fbsd-nat.c: Update.
5156         * infcmd.c: Update.
5157         * infrun.c: Update.
5158         * linux-nat.c: Update.
5159         * record-btrace.c: Update.
5160         * regcache.c: Update.
5161         * remote.c: Update.
5162
5163 2018-07-03  Tom Tromey  <tom@tromey.com>
5164
5165         * common/ptid.c (ptid_tid_p): Remove.
5166         * common/ptid.h (ptid_tid_p): Don't declare.
5167         * sol-thread.c: Update.
5168
5169 2018-07-03  Tom Tromey  <tom@tromey.com>
5170
5171         * common/ptid.c (ptid_lwp_p): Remove.
5172         * common/ptid.h (ptid_lwp_p): Don't declare.
5173         * fbsd-nat.c: Update.
5174         * linux-nat.c: Update.
5175         * nat/linux-procfs.c: Update.
5176         * nat/x86-linux-dregs.c: Update.
5177         * sol-thread.c: Update.
5178
5179 2018-07-03  Tom Tromey  <tom@tromey.com>
5180
5181         * common/ptid.c (ptid_is_pid): Remove.
5182         * common/ptid.h (ptid_is_pid): Don't declare.
5183         * infrun.c: Update.
5184         * linux-nat.c: Update.
5185         * mi/mi-interp.c: Update.
5186         * remote.c: Update.
5187         * thread.c: Update.
5188
5189 2018-07-03  Tom Tromey  <tom@tromey.com>
5190
5191         * common/ptid.c (ptid_get_tid): Remove.
5192         * common/ptid.h (ptid_get_tid): Don't declare.
5193         * ada-tasks.c: Update.
5194         * aix-thread.c: Update.
5195         * bsd-uthread.c: Update.
5196         * darwin-nat.c: Update.
5197         * fbsd-nat.c: Update.
5198         * i386-darwin-nat.c: Update.
5199         * infrun.c: Update.
5200         * linux-tdep.c: Update.
5201         * nto-procfs.c: Update.
5202         * ppc-ravenscar-thread.c: Update.
5203         * python/py-infthread.c: Update.
5204         * ravenscar-thread.c: Update.
5205         * sol-thread.c: Update.
5206         * sparc-ravenscar-thread.c: Update.
5207         * windows-nat.c: Update.
5208
5209 2018-07-03  Tom Tromey  <tom@tromey.com>
5210
5211         * common/ptid.c (ptid_get_lwp): Remove.
5212         * common/ptid.h (ptid_get_lwp): Don't declare.
5213         * aarch64-linux-nat.c: Update.
5214         * ada-tasks.c: Update.
5215         * aix-thread.c: Update.
5216         * amd64-linux-nat.c: Update.
5217         * arm-linux-nat.c: Update.
5218         * corelow.c: Update.
5219         * fbsd-nat.c: Update.
5220         * fbsd-tdep.c: Update.
5221         * gnu-nat.c: Update.
5222         * i386-cygwin-tdep.c: Update.
5223         * i386-gnu-nat.c: Update.
5224         * i386-linux-nat.c: Update.
5225         * ia64-linux-nat.c: Update.
5226         * inf-ptrace.c: Update.
5227         * infrun.c: Update.
5228         * linux-fork.c: Update.
5229         * linux-nat.c: Update.
5230         * linux-tdep.c: Update.
5231         * linux-thread-db.c: Update.
5232         * mips-linux-nat.c: Update.
5233         * nat/aarch64-linux-hw-point.c: Update.
5234         * nat/aarch64-linux.c: Update.
5235         * nat/linux-btrace.c: Update.
5236         * nat/linux-osdata.c: Update.
5237         * nat/linux-procfs.c: Update.
5238         * nat/x86-linux-dregs.c: Update.
5239         * obsd-nat.c: Update.
5240         * ppc-fbsd-nat.c: Update.
5241         * ppc-linux-nat.c: Update.
5242         * procfs.c: Update.
5243         * python/py-infthread.c: Update.
5244         * ravenscar-thread.c: Update.
5245         * remote.c: Update.
5246         * s390-linux-nat.c: Update.
5247         * sol-thread.c: Update.
5248         * sol2-tdep.c: Update.
5249         * spu-linux-nat.c: Update.
5250         * x86-linux-nat.c: Update.
5251         * xtensa-linux-nat.c: Update.
5252
5253 2018-07-03  Tom Tromey  <tom@tromey.com>
5254
5255         * common/ptid.c (ptid_get_pid): Remove.
5256         * common/ptid.h (ptid_get_pid): Don't declare.
5257         * aarch64-linux-nat.c: Update.
5258         * ada-lang.c: Update.
5259         * aix-thread.c: Update.
5260         * alpha-bsd-nat.c: Update.
5261         * amd64-fbsd-nat.c: Update.
5262         * amd64-linux-nat.c: Update.
5263         * arm-linux-nat.c: Update.
5264         * arm-nbsd-nat.c: Update.
5265         * auxv.c: Update.
5266         * break-catch-syscall.c: Update.
5267         * breakpoint.c: Update.
5268         * bsd-uthread.c: Update.
5269         * corelow.c: Update.
5270         * ctf.c: Update.
5271         * darwin-nat.c: Update.
5272         * fbsd-nat.c: Update.
5273         * fbsd-tdep.c: Update.
5274         * gcore.c: Update.
5275         * gnu-nat.c: Update.
5276         * hppa-nbsd-nat.c: Update.
5277         * hppa-obsd-nat.c: Update.
5278         * i386-fbsd-nat.c: Update.
5279         * ia64-linux-nat.c: Update.
5280         * inf-ptrace.c: Update.
5281         * infcmd.c: Update.
5282         * inferior.c: Update.
5283         * inferior.h: Update.
5284         * inflow.c: Update.
5285         * infrun.c: Update.
5286         * linux-fork.c: Update.
5287         * linux-nat.c: Update.
5288         * linux-tdep.c: Update.
5289         * linux-thread-db.c: Update.
5290         * m68k-bsd-nat.c: Update.
5291         * mi/mi-interp.c: Update.
5292         * mi/mi-main.c: Update.
5293         * mips-linux-nat.c: Update.
5294         * mips-nbsd-nat.c: Update.
5295         * mips64-obsd-nat.c: Update.
5296         * nat/aarch64-linux-hw-point.c: Update.
5297         * nat/aarch64-linux.c: Update.
5298         * nat/linux-btrace.c: Update.
5299         * nat/linux-osdata.c: Update.
5300         * nat/linux-procfs.c: Update.
5301         * nat/x86-linux-dregs.c: Update.
5302         * nto-procfs.c: Update.
5303         * obsd-nat.c: Update.
5304         * ppc-linux-nat.c: Update.
5305         * ppc-nbsd-nat.c: Update.
5306         * ppc-obsd-nat.c: Update.
5307         * proc-service.c: Update.
5308         * procfs.c: Update.
5309         * python/py-inferior.c: Update.
5310         * python/py-infthread.c: Update.
5311         * ravenscar-thread.c: Update.
5312         * record.c: Update.
5313         * remote-sim.c: Update.
5314         * remote.c: Update.
5315         * rs6000-nat.c: Update.
5316         * s390-linux-nat.c: Update.
5317         * sh-nbsd-nat.c: Update.
5318         * sol-thread.c: Update.
5319         * sparc-nat.c: Update.
5320         * sparc64-tdep.c: Update.
5321         * spu-linux-nat.c: Update.
5322         * spu-tdep.c: Update.
5323         * target-debug.h: Update.
5324         * target.c: Update.
5325         * thread.c: Update.
5326         * tid-parse.c: Update.
5327         * tracefile-tfile.c: Update.
5328         * vax-bsd-nat.c: Update.
5329         * windows-nat.c: Update.
5330         * x86-linux-nat.c: Update.
5331         * x86-nat.c: Update.
5332
5333 2018-07-03  Tom Tromey  <tom@tromey.com>
5334
5335         * common/ptid.c (pid_to_ptid): Remove.
5336         * common/ptid.h (pid_to_ptid): Don't declare.
5337         * aix-thread.c: Update.
5338         * arm-linux-nat.c: Update.
5339         * common/ptid.c: Update.
5340         * common/ptid.h: Update.
5341         * corelow.c: Update.
5342         * ctf.c: Update.
5343         * darwin-nat.c: Update.
5344         * fbsd-nat.c: Update.
5345         * fork-child.c: Update.
5346         * gnu-nat.c: Update.
5347         * go32-nat.c: Update.
5348         * inf-ptrace.c: Update.
5349         * infcmd.c: Update.
5350         * inferior.c: Update.
5351         * infrun.c: Update.
5352         * linux-fork.c: Update.
5353         * linux-nat.c: Update.
5354         * nat/aarch64-linux-hw-point.c: Update.
5355         * nat/fork-inferior.c: Update.
5356         * nat/x86-linux-dregs.c: Update.
5357         * nto-procfs.c: Update.
5358         * obsd-nat.c: Update.
5359         * procfs.c: Update.
5360         * progspace.c: Update.
5361         * remote.c: Update.
5362         * rs6000-nat.c: Update.
5363         * s390-linux-nat.c: Update.
5364         * sol-thread.c: Update.
5365         * spu-linux-nat.c: Update.
5366         * target.c: Update.
5367         * top.c: Update.
5368         * tracefile-tfile.c: Update.
5369         * windows-nat.c: Update.
5370
5371 2018-07-03  Tom Tromey  <tom@tromey.com>
5372
5373         * common/ptid.h (ptid_build): Don't declare.
5374         * common/ptid.c (ptid_build): Remove.
5375         * aix-thread.c: Update.
5376         * bsd-kvm.c: Update.
5377         * bsd-uthread.c: Update.
5378         * common/agent.c: Update.
5379         * common/ptid.c: Update.
5380         * common/ptid.h: Update.
5381         * corelow.c: Update.
5382         * darwin-nat.c: Update.
5383         * fbsd-nat.c: Update.
5384         * gnu-nat.c: Update.
5385         * linux-fork.c: Update.
5386         * linux-nat.c: Update.
5387         * linux-thread-db.c: Update.
5388         * nat/linux-osdata.c: Update.
5389         * nat/linux-procfs.c: Update.
5390         * nto-procfs.c: Update.
5391         * obsd-nat.c: Update.
5392         * proc-service.c: Update.
5393         * procfs.c: Update.
5394         * ravenscar-thread.c: Update.
5395         * remote-sim.c: Update.
5396         * remote.c: Update.
5397         * sol-thread.c: Update.
5398         * target.c: Update.
5399         * windows-nat.c: Update.
5400
5401 2018-07-03  Tom Tromey  <tom@tromey.com>
5402
5403         * infrun.c (follow_exec): Use exit_inferior_silent.
5404         * inferior.c (exit_inferior_num_silent): Remove.
5405         * inferior.h (exit_inferior_num_silent): Don't declare.
5406
5407 2018-07-03  Tom Tromey  <tom@tromey.com>
5408
5409         PR cli/23340:
5410         * darwin-nat.c (darwin_attach_pid): Reset inferior and
5411         inferior_ptid on error.
5412
5413 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
5414             Simon Marchi  <simon.marchi@polymtl.ca>
5415
5416         PR tdep/8282
5417         * disasm.h (gdb_disassembler): Add
5418         `m_disassembler_options_holder'. member
5419         * disasm.c (get_all_disassembler_options): New function.
5420         (gdb_disassembler::gdb_disassembler): Use it.
5421         (gdb_buffered_insn_length_init_dis): Likewise.
5422         (gdb_buffered_insn_length): Adjust accordingly.
5423         (set_disassembler_options): Handle options with arguments.
5424         (show_disassembler_options_sfunc): Likewise.  Add a leading new
5425         line if showing options with descriptions.
5426         (disassembler_options_completer): Adapt to using the
5427         `disasm_options_and_args_t' structure.
5428         * mips-tdep.c (mips_disassembler_options): New variable.
5429         (mips_disassembler_options_o32): Likewise.
5430         (mips_disassembler_options_n32): Likewise.
5431         (mips_disassembler_options_n64): Likewise.
5432         (gdb_print_insn_mips): Don't set `disassembler_options'.
5433         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
5434         functions.
5435         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
5436         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
5437         `gdbarch_disassembler_options_implicit' and
5438         `gdbarch_valid_disassembler_options'.
5439         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
5440         `disasm_options_and_args_t' structure.
5441         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
5442         method.
5443         (valid_disassembler_options): Switch from `disasm_options_t' to
5444         the `disasm_options_and_args_t' structure.
5445         * NEWS: Document `set disassembler-options' support for the MIPS
5446         target.
5447         * gdbarch.h: Regenerate.
5448         * gdbarch.c: Regenerate.
5449
5450 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
5451
5452         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
5453
5454 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
5455
5456         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
5457         parameter in call to amd64_target_description.
5458         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
5459         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
5460         (amd64fbsd_init_abi): Likewise.
5461         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
5462         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
5463         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
5464         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
5465
5466 2018-06-29  Pedro Alves  <palves@redhat.com>
5467
5468         * gdb/amd64-tdep.h (amd64_create_target_description): Add
5469         "segments" parameter.
5470         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
5471         (_initialize_amd64_tdep): Update call to
5472         amd64_create_target_description.
5473         (amd64_target_description): Add "segments" parameter.  Adjust
5474         the implementation to use it.
5475         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
5476         call to amd64_create_target_description.
5477         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
5478         * gdb/arch/amd64.h (amd64_create_target_description): Add
5479         "segments" register.
5480         * gdb/arch/amd64.c (amd64_create_target_description): Add
5481         "segments" parameter.  Call create_feature_i386_64bit_segments
5482         only if SEGMENTS is true.
5483         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
5484         call to amd64_create_target_description.
5485
5486 2018-06-29  Pedro Alves  <palves@redhat.com>
5487
5488         * thread.c (thread_target_id_str): New, factored out from ...
5489         (print_thread_info_1): ... here.  Use it to compute the max
5490         "Target Id" column width.
5491
5492 2018-06-29  Pedro Alves  <palves@redhat.com>
5493
5494         * remote.c (remote_target::extra_thread_info): Delete
5495         'display_buf' and 'n' locals.  from the cache, regardless of
5496         packet mechanims is in use.  Use cache for qThreadExtra and qP
5497         methods too.
5498
5499 2018-06-29  Pedro Alves  <palves@redhat.com>
5500
5501         * blockframe.c (find_pc_sect_containing_function): New function.
5502         * breakpoint.c (print_breakpoint_location): Don't call
5503         find_pc_sect_function.
5504         * linespec.c (create_sals_line_offset): Record the location's
5505         symbol in the sal.
5506         * linespec.c (convert_address_location_to_sals): Fill in sal's
5507         symbol with find_pc_sect_containing_function.
5508         * symtab.c (find_function_start_sal): Rename to ...
5509         (find_function_start_sal_1): ... this.
5510         (find_function_start_sal): Reimplement as wrapper around
5511         find_function_start_sal_1, and use
5512         find_pc_sect_containing_function to fill in the sal's symbol.
5513         (find_function_start_sal(symbol*, bool)): Adjust.
5514         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
5515         comments.
5516         (find_pc_sect_containing_function): Declare.
5517
5518 2018-06-29  Pedro Alves  <palves@redhat.com>
5519
5520         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
5521         true if the the location has no symbol.
5522
5523 2018-06-28  Tom Tromey  <tom@tromey.com>
5524
5525         * NEWS: Mention --enable-codesign.
5526         * silent-rules.mk (ECHO_SIGN): New variable.
5527         * configure.ac: Add --enable-codesign.
5528         * configure: Rebuild.
5529         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
5530         (gdb$(EXEEXT)): Optionally invoke codesign.
5531
5532 2018-06-28  Pedro Alves  <palves@redhat.com>
5533
5534         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
5535         comments.
5536         (switch_to_thread_no_regs): Adjust comment.
5537         * infcmd.c (stop_pc): Delete.
5538         (post_create_inferior, info_program_command): Replace references
5539         to stop_pc with references to thread_info->suspend.stop_pc.
5540         * inferior.h (stop_pc): Delete declaration.
5541         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
5542         (handle_inferior_event_1, handle_signal_stop)
5543         (process_event_stop_test, keep_going_stepped_thread)
5544         (handle_step_into_function, handle_step_into_function_backward)
5545         (print_stop_location): Replace references to stop_pc with
5546         references to thread_info->suspend.stop_pc.
5547         (struct infcall_suspend_state) <stop_pc>: Delete field.
5548         (save_infcall_suspend_state, restore_infcall_suspend_state):
5549         Remove references to inf_stat->stop_pc.
5550         * linux-fork.c (fork_load_infrun_state): Likewise.
5551         * record-btrace.c (record_btrace_set_replay): Likewise.
5552         * record-full.c (record_full_goto_entry): Likewise.
5553         * remote.c (print_one_stopped_thread): Likewise.
5554         * target.c (target_resume): Extend comment.
5555         * thread.c (set_executing_thread): New.
5556         (set_executing): Use it.
5557         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
5558         Remove references to stop_pc.
5559
5560 2018-06-28  Pedro Alves  <palves@redhat.com>
5561
5562         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
5563         Moving fetching stop_pc until after ecs->event_thread is refreshed.
5564
5565 2018-06-28  Tom Tromey  <tom@tromey.com>
5566
5567         * coffread.c (coff_symfile_finish): Update.
5568         * xcoffread.c (xcoff_symfile_finish): Update.
5569         * elfread.c (elf_symfile_finish): Update.
5570         * symfile.h (dwarf2_free_objfile): Don't declare.
5571         * dwarf2read.c (_initialize_dwarf2_read): Use
5572         register_objfile_data_with_cleanup.
5573         (dwarf2_free_objfile): Now static.  Change signature.
5574
5575 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5576
5577         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
5578         option "-o" to add-symbol-file-load to add an offset to each
5579         section's load address.
5580         * symfile.c (set_objfile_default_section_offset): New function.
5581
5582 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5583
5584         * symfile.c (add_symbol_file_command): Make sure that sections
5585         with the same name are sorted in the same order.
5586
5587 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5588
5589         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
5590         require the second argument.  If omitted, load sections at the
5591         addresses specified in the file.
5592
5593 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5594
5595         * symfile.c (symbol_file_command, symbol_file_add_main_1)
5596         (_initialize_symfile): Add option "-o" to symbol-file to add an
5597         offset to each section of the symbol file.
5598
5599 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5600
5601         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
5602
5603 2018-06-27  Tom Tromey  <tom@tromey.com>
5604
5605         * stack.c (_initialize_stack): Update "func" help text.
5606
5607 2018-06-27  Tom Tromey  <tom@tromey.com>
5608
5609         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
5610         std::vector.
5611         (unwind_infopy_str, pyuw_create_unwind_info)
5612         (unwind_infopy_add_saved_register, pyuw_sniffer)
5613         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
5614         Update.
5615         (struct saved_reg): Add constructor.
5616         <value>: Now a gdbpy_ref<>.
5617
5618 2018-06-27  Tom Tromey  <tom@tromey.com>
5619
5620         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
5621
5622 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5623
5624         * gdb-gdb.py.in: Format using autopep8.
5625
5626 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5627
5628         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
5629         (type_lookup_function): Recognize CORE_ADDR values.
5630
5631 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5632
5633         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
5634         print tag_name.
5635
5636 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5637
5638         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
5639         <__lt__>: Add.
5640
5641 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5642
5643         * gdb-gdb.py: Move to...
5644         * gdb-gdb.py.in: ... here.
5645         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
5646         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
5647         dependencies.
5648         (distclean): Remove gdb-gdb.py when cleaning.
5649         (gdb-gdb.py, gdb-gdb.gdb): New rules.
5650         * configure: Re-generate.
5651
5652 2018-06-27  Pedro Alves  <palves@redhat.com>
5653
5654         * proc-service.c (get_ps_regcache): New.
5655         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
5656         (ps_lsetfpregs): Use it.
5657
5658 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
5659
5660         PR gdb/21695
5661         * dwarf2read.c (lnp_state_machine::check_line_address): Update declaration.
5662         (dwarf_decode_lines_1): Adjust.
5663
5664 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5665
5666         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
5667         override.
5668         <info_proc>: Likewise.
5669
5670 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
5671
5672         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
5673         to windows_fetch_one_register, and only handle the case of
5674         fetching one register.  Move the code that reloads the context
5675         and iterates over all registers if R is negative to...
5676         (windows_nat_target::fetch_registers): ... here.
5677         (do_windows_store_inferior_registers): Rename to
5678         windows_store_one_register, and only handle the case of storing
5679         one register.  Move the code that handles the case where r is
5680         negative to...
5681         (windows_nat_target::store_registers) ... here.
5682
5683 2018-06-26  Tom Tromey  <tom@tromey.com>
5684
5685         PR rust/22574:
5686         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
5687         * rust-lang.c (rust_print_struct_def): Add podata parameter.
5688         Update.
5689         (rust_internal_print_type): Add podata parameter.
5690         (rust_print_type): Update.
5691
5692 2018-06-26  Tom Tromey  <tom@tromey.com>
5693
5694         * typeprint.h (struct print_offset_data) <update, finish,
5695         maybe_print_hole>: New methods.
5696         <indentation>: New constant.
5697         * typeprint.c (print_offset_data::indentation): Define.
5698         (print_offset_data::maybe_print_hole, print_offset_data::update)
5699         (print_offset_data::finish): Move from c-typeprint.c and rename.
5700         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
5701         (print_spaces_filtered_with_print_options): Update.
5702         (c_print_type_union_field_offset, maybe_print_hole)
5703         (c_print_type_struct_field_offset): Move to typeprint.c and
5704         rename.
5705         (c_type_print_base_struct_union): Update.
5706
5707 2018-06-25  Pedro Alves  <palves@redhat.com>
5708
5709         * gdbthread.h (thread_info_ref, delete_thread)
5710         (delete_thread_silent, first_thread_of_inferior)
5711         (any_thread_of_inferior, switch_to_thread)
5712         (enable_thread_stack_temporaries)
5713         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
5714         (get_last_thread_stack_temporary)
5715         (value_in_thread_stack_temporaries, can_access_registers_thread):
5716         Spell out "struct thread_info" instead of just "thread_info".
5717         * inferior.h (notice_new_inferior): Likewise.
5718
5719 2018-06-25  Pedro Alves  <palves@redhat.com>
5720
5721         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
5722         pass thread_info pointer to delete_thread.
5723         (windows_nat_target::detach): Pass inferior pointer to
5724         detach_inferior.
5725         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
5726         delete_thread.
5727         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
5728         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
5729         and pass a thread_info pointer to delete_thread.
5730         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
5731         pass thread_info pointer to delete_thread.
5732         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
5733         delete_thread_silent call.
5734         * procfs.c (procfs_target::detach): Pass inferior pointer to
5735         detach_inferior.
5736         (procfs_target::wait): Pass thread_info pointer to delete_thread.
5737         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
5738         delete_thread_silent call.
5739         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
5740         pass thread_info pointer to delete_thread.
5741         (windows_nat_target::detach): Pass inferior pointer to
5742         delete_inferior.
5743
5744 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
5745
5746         * regcache.c (readable_regcache::read_part): Fix asserts.
5747         (reg_buffer::raw_collect_part): New function.
5748         (regcache::write_part): Fix asserts.
5749         (reg_buffer::raw_supply_part): New function.
5750         (regcache::transfer_regset_register): New helper function.
5751         (regcache::transfer_regset): Call new functions.
5752         (regcache_supply_regset): Use gdb_byte*.
5753         (regcache::supply_regset): Likewise.
5754         (regcache_collect_regset): Likewise.
5755         (regcache::collect_regset): Likewise.
5756         * regcache.h (reg_buffer::raw_collect_part): New declaration.
5757         (reg_buffer::raw_supply_part): Likewise.
5758         (regcache::transfer_regset_register): Likewise.
5759         (regcache::transfer_regset): Use gdb_byte*.
5760
5761 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
5762
5763         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
5764
5765 2018-06-21  Pedro Alves  <palves@redhat.com>
5766
5767         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
5768         instead of a ptid_t.  All callers adjusted.
5769         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
5770         adjusted.
5771         (print_ada_task_info, display_current_task_id, task_command_1):
5772         Adjust.
5773         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
5774         inferior_thread.
5775         (breakpoint_kind): Adjust.
5776         (remove_breakpoints_pid): Rename to ...
5777         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
5778         pointer.  All callers adjusted.
5779         (bpstat_clear_actions): Use inferior_thread.
5780         (get_bpstat_thread): New.
5781         (bpstat_do_actions): Use it.
5782         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
5783         to take a thread_info pointer.  All callers adjusted.
5784         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
5785         (breakpoint_re_set_thread): Use inferior_thread.
5786         * breakpoint.h (struct inferior): Forward declare.
5787         (bpstat_stop_status): Update.
5788         (remove_breakpoints_pid): Delete.
5789         (remove_breakpoints_inf): New.
5790         * bsd-uthread.c (bsd_uthread_target::wait)
5791         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
5792         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
5793         (maint_btrace_packet_history_cmd)
5794         (maint_btrace_clear_packet_history_cmd): Adjust.
5795         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
5796         inferior_thread.
5797         * cli/cli-interp.c: Include "inferior.h".
5798         * common/refcounted-object.h (struct
5799         refcounted_object_ref_policy): New.
5800         * compile/compile-object-load.c: Include gdbthread.h.
5801         (store_regs): Use inferior_thread.
5802         * corelow.c (core_target::close): Use current_inferior.
5803         (core_target_open): Adjust to use first_thread_of_inferior and use
5804         the current inferior.
5805         * ctf.c (ctf_target::close): Adjust to use current_inferior.
5806         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
5807         <thread>: ... this new field.  All references adjusted.
5808         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
5809         Take a thread_info pointer instead of a ptid_t.
5810         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
5811         (dummy_frame_discard, register_dummy_frame_dtor): Take a
5812         thread_info pointer instead of a ptid_t.
5813         * elfread.c: Include "inferior.h".
5814         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
5815         Use inferior_thread.
5816         * eval.c (evaluate_subexp): Likewise.
5817         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
5818         inferior_thread.
5819         * gdb_proc_service.h (struct thread_info): Forward declare.
5820         (struct ps_prochandle) <ptid>: Delete, replaced by ...
5821         <thread>: ... this new field.  All references adjusted.
5822         * gdbarch.h, gdbarch.c: Regenerate.
5823         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
5824         'thread' parameter.  All implementations and callers adjusted.
5825         * gdbthread.h (thread_info) <set_running>: New method.
5826         (delete_thread, delete_thread_silent): Take a thread_info pointer
5827         instead of a ptid.
5828         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
5829         (first_thread_of_process): Delete, replaced by ...
5830         (first_thread_of_inferior): ... this new function.  All callers
5831         adjusted.
5832         (any_live_thread_of_process): Delete, replaced by ...
5833         (any_live_thread_of_inferior): ... this new function.  All callers
5834         adjusted.
5835         (switch_to_thread, switch_to_no_thread): Declare.
5836         (is_executing): Delete.
5837         (enable_thread_stack_temporaries): Update comment.
5838         <enable_thread_stack_temporaries>: Take a thread_info pointer
5839         instead of a ptid_t.  Incref the thread.
5840         <~enable_thread_stack_temporaries>: Decref the thread.
5841         <m_ptid>: Delete
5842         <m_thr>: New.
5843         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
5844         (get_last_thread_stack_temporary)
5845         (value_in_thread_stack_temporaries, can_access_registers_thread):
5846         Take a thread_info pointer instead of a ptid_t.  All callers
5847         adjusted.
5848         * infcall.c (get_call_return_value): Use inferior_thread.
5849         (run_inferior_call): Work with thread pointers instead of ptid_t.
5850         (call_function_by_hand_dummy): Work with thread pointers instead
5851         of ptid_t.  Use thread_info_ref.
5852         * infcmd.c (proceed_thread_callback): Access thread's state
5853         directly.
5854         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
5855         access thread's state directly.
5856         (continue_command): Use inferior_thread.
5857         (info_program_command): Use find_thread_ptid and access thread
5858         state directly.
5859         (proceed_after_attach_callback): Use thread state directly.
5860         (notice_new_inferior): Take a thread_info pointer instead of a
5861         ptid_t.  All callers adjusted.
5862         (exit_inferior): Take an inferior pointer instead of a pid.  All
5863         callers adjusted.
5864         (exit_inferior_silent): New.
5865         (detach_inferior): Delete.
5866         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
5867         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
5868         (detach_inferior_command, kill_inferior_command): Use
5869         find_inferior_id instead of valid_gdb_inferior_id and
5870         gdb_inferior_id_to_pid.
5871         (inferior_command): Use inferior and thread pointers.
5872         * inferior.h (struct thread_info): Forward declare.
5873         (notice_new_inferior): Take a thread_info pointer instead of a
5874         ptid_t.  All callers adjusted.
5875         (detach_inferior): Delete declaration.
5876         (exit_inferior, exit_inferior_silent): Take an inferior pointer
5877         instead of a pid.  All callers adjusted.
5878         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
5879         (valid_gdb_inferior_id): Delete.
5880         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
5881         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
5882         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
5883         ...
5884         <inf>: ... this new field.
5885         <step_ptid>: Delete, replaced by ...
5886         <step_thread>: ... this new field.
5887         (get_displaced_stepping_state): Take an inferior pointer instead
5888         of a pid.  All callers adjusted.
5889         (displaced_step_in_progress_any_inferior): Adjust.
5890         (displaced_step_in_progress_thread): Take a thread pointer instead
5891         of a ptid_t.  All callers adjusted.
5892         (displaced_step_in_progress, add_displaced_stepping_state): Take
5893         an inferior pointer instead of a pid.  All callers adjusted.
5894         (get_displaced_step_closure_by_addr): Adjust.
5895         (remove_displaced_stepping_state): Take an inferior pointer
5896         instead of a pid.  All callers adjusted.
5897         (displaced_step_prepare_throw, displaced_step_prepare)
5898         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
5899         All callers adjusted.
5900         (start_step_over): Adjust.
5901         (infrun_thread_ptid_changed): Remove bit updating ptids in the
5902         displaced step queue.
5903         (do_target_resume): Adjust.
5904         (fetch_inferior_event): Use inferior_thread.
5905         (context_switch, get_inferior_stop_soon): Take an
5906         execution_control_state pointer instead of a ptid_t.  All callers
5907         adjusted.
5908         (switch_to_thread_cleanup): Delete.
5909         (stop_all_threads): Use scoped_restore_current_thread.
5910         * inline-frame.c: Include "gdbthread.h".
5911         (inline_state) <inline_state>: Take a thread pointer instead of a
5912         ptid_t.  All callers adjusted.
5913         <ptid>: Delete, replaced by ...
5914         <thread>: ... this new field.
5915         (find_inline_frame_state): Take a thread pointer instead of a
5916         ptid_t.  All callers adjusted.
5917         (skip_inline_frames, step_into_inline_frame)
5918         (inline_skipped_frames, inline_skipped_symbol): Take a thread
5919         pointer instead of a ptid_t.  All callers adjusted.
5920         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
5921         (inline_skipped_frames, inline_skipped_symbol): Likewise.
5922         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
5923         pointers directly.
5924         * linux-nat.c (get_detach_signal): Likewise.
5925         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
5926         (thread_db_notice_clone): Adjust.
5927         (thread_db_find_new_threads_silently)
5928         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
5929         a thread pointer instead of a ptid_t.  All callers adjusted.
5930         * mi/mi-cmd-var.c: Include "inferior.h".
5931         (mi_cmd_var_update_iter): Update to use thread pointers.
5932         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
5933         inferior directly.
5934         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
5935         out to ...
5936         (mi_output_running): ... this new function.
5937         (mi_on_resume_1): Adjust to use it.
5938         (mi_user_selected_context_changed): Adjust to use inferior_thread.
5939         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
5940         directly.
5941         (interrupt_thread_callback): : Adjust to use thread and inferior
5942         pointers.
5943         * proc-service.c: Include "gdbthread.h".
5944         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
5945         * progspace-and-thread.c: Include "inferior.h".
5946         * progspace.c: Include "inferior.h".
5947         * python/py-exitedevent.c (create_exited_event_object): Adjust to
5948         hold a reference to an inferior_object.
5949         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
5950         inferior_thread.
5951         * python/py-inferior.c (struct inferior_object): Give the type a
5952         tag name instead of a typedef.
5953         (python_on_normal_stop): No need to check if the current thread is
5954         listed.
5955         (inferior_to_inferior_object): Change return type to
5956         inferior_object.  All callers adjusted.
5957         (find_thread_object): Delete, bits factored out to ...
5958         (thread_to_thread_object): ... this new function.
5959         * python/py-infthread.c (create_thread_object): Use
5960         inferior_to_inferior_object.
5961         (thpy_is_stopped): Use thread pointer directly.
5962         (gdbpy_selected_thread): Use inferior_thread.
5963         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
5964         field, replaced with ...
5965         <thread>: ... this new field.  All users adjusted.
5966         (btpy_insn_or_gap_new): Drop const.
5967         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
5968         callers adjusted.
5969         * python/py-record.c: Include "gdbthread.h".
5970         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
5971         a ptid_t.  All callers adjusted.
5972         (gdbpy_current_recording): Use inferior_thread.
5973         * python/py-record.h (recpy_record_object) <ptid>: Delete
5974         field, replaced with ...
5975         <thread>: ... this new field.  All users adjusted.
5976         (recpy_element_object) <ptid>: Delete
5977         field, replaced with ...
5978         <thread>: ... this new field.  All users adjusted.
5979         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
5980         a ptid_t.  All callers adjusted.
5981         * python/py-threadevent.c: Include "gdbthread.h".
5982         (get_event_thread): Use thread_to_thread_object.
5983         * python/python-internal.h (struct inferior_object): Forward
5984         declare.
5985         (find_thread_object, find_inferior_object): Delete declarations.
5986         (thread_to_thread_object, inferior_to_inferior_object): New
5987         declarations.
5988         * record-btrace.c: Include "inferior.h".
5989         (require_btrace_thread): Use inferior_thread.
5990         (record_btrace_frame_sniffer)
5991         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
5992         (get_thread_current_frame): Use scoped_restore_current_thread and
5993         switch_to_thread.
5994         (get_thread_current_frame): Use thread pointer directly.
5995         (record_btrace_replay_at_breakpoint): Use thread's inferior
5996         pointer directly.
5997         * record-full.c: Include "inferior.h".
5998         * regcache.c: Include "gdbthread.h".
5999         (get_thread_arch_regcache): Use the inferior's address space
6000         directly.
6001         (get_thread_regcache, registers_changed_thread): New.
6002         * regcache.h (get_thread_regcache(thread_info *thread)): New
6003         overload.
6004         (registers_changed_thread): New.
6005         (remote_target) <remote_detach_1>: Swap order of parameters.
6006         (remote_add_thread): <remote_add_thread>: Return the new thread.
6007         (get_remote_thread_info(ptid_t)): New overload.
6008         (remote_target::remote_notice_new_inferior): Use thread pointers
6009         directly.
6010         (remote_target::process_initial_stop_replies): Use
6011         thread_info::set_running.
6012         (remote_target::remote_detach_1, remote_target::detach)
6013         (extended_remote_target::detach): Adjust.
6014         * stack.c (frame_show_address): Use inferior_thread.
6015         * target-debug.h (target_debug_print_thread_info_pp): New.
6016         * target-delegates.c: Regenerate.
6017         * target.c (default_thread_address_space): Delete.
6018         (memory_xfer_partial_1): Use current_inferior.
6019         (target_detach): Use current_inferior.
6020         (target_thread_address_space): Delete.
6021         (generic_mourn_inferior): Use current_inferior.
6022         * target.h (struct target_ops) <thread_address_space>: Delete.
6023         (target_thread_address_space): Delete.
6024         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
6025         pointers directly.
6026         (delete_thread_1, delete_thread, delete_thread_silent): Take a
6027         thread pointer instead of a ptid_t.  Adjust all callers.
6028         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
6029         (first_thread_of_process): Delete, replaced by ...
6030         (first_thread_of_inferior): ... this new function.  All callers
6031         adjusted.
6032         (any_thread_of_process): Rename to ...
6033         (any_thread_of_inferior): ... this, and take an inferior pointer.
6034         (any_live_thread_of_process): Rename to ...
6035         (any_live_thread_of_inferior): ... this, and take an inferior
6036         pointer.
6037         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6038         (value_in_thread_stack_temporaries)
6039         (get_last_thread_stack_temporary): Take a thread pointer instead
6040         of a ptid_t.  Adjust all callers.
6041         (thread_info::set_running): New.
6042         (validate_registers_access): Use inferior_thread.
6043         (can_access_registers_ptid): Rename to ...
6044         (can_access_registers_thread): ... this, and take a thread
6045         pointer.
6046         (print_thread_info_1): Adjust to compare thread pointers instead
6047         of ptids.
6048         (switch_to_no_thread, switch_to_thread): Make extern.
6049         (scoped_restore_current_thread::~scoped_restore_current_thread):
6050         Use m_thread pointer directly.
6051         (scoped_restore_current_thread::scoped_restore_current_thread):
6052         Use inferior_thread.
6053         (thread_command): Use thread pointer directly.
6054         (thread_num_make_value_helper): Use inferior_thread.
6055         * top.c (execute_command): Use inferior_thread.
6056         * tui/tui-interp.c: Include "inferior.h".
6057         * varobj.c (varobj_create): Use inferior_thread.
6058         (value_of_root_1): Use find_thread_global_id instead of
6059         global_thread_id_to_ptid.
6060
6061 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
6062
6063         * regcache.c (readable_regcache::read_part): Avoid memcpy when
6064         possible.
6065         (regcache::write_part): Likewise.
6066         (readable_regcache::cooked_read_part): Update comment.
6067         (readable_regcache::cooked_write_part): Likewise.
6068         * regcache.h: (readable_regcache::read_part): Likewise.
6069         (regcache::write_part): Likewise.
6070
6071 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
6072             Dirk Schubert  <dirk.schubert@arm.com>
6073
6074         * aarch64-linux-nat.c (post_attach): New.
6075         (aarch64_linux_nat_target::post_attach): Override post_attach to
6076         record the number of hardware debug registers.
6077
6078 2018-06-20  Tom Tromey  <tom@tromey.com>
6079
6080         * python/py-param.c (add_setshow_generic): Make parameters const.
6081         (parmpy_init): Update.
6082
6083 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
6084
6085         * regcache.h (regcache_cooked_read_ftype): Rename to...
6086         (register_read_ftype): ...this, change type to function_view.
6087         (class reg_buffer) <save>: Remove src parameter.
6088         (readonly_detached_regcache) <readonly_detached_regcache>: Make
6089         parameter non-const in first overload.  Remove src parameter in
6090         second overload.
6091         * regcache.c (do_cooked_read): Remove.
6092         (readonly_detached_regcache::readonly_detached_regcache): Make
6093         parameter non-const, adjust call to other constructor.
6094         (reg_buffer::save): Remove src parameter.
6095         * frame.c (do_frame_register_read): Remove.
6096         (frame_save_as_regcache): Use lambda function.
6097         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
6098         parameter to ppu2spu_data *.
6099         (ppu2spu_sniffer): Use lambda function.
6100
6101 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
6102
6103         * record-full.c (record_full_target::insert_breakpoint): Remove
6104         "struct" keyword, add const.
6105
6106 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
6107
6108         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
6109         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
6110         * configure.ac: Remove AC_PREREQ, add missing quoting.
6111         * gnulib/configure.ac: Modernize usage of
6112         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
6113         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
6114         (AUTOMAKE_VERSION): Bump to 1.15.1.
6115         * configure: Re-generate.
6116         * config.in: Re-generate.
6117         * aclocal.m4: Re-generate.
6118         * gnulib/aclocal.m4: Re-generate.
6119         * gnulib/config.in: Re-generate.
6120         * gnulib/configure: Re-generate.
6121         * gnulib/import/Makefile.in: Re-generate.
6122
6123 2018-06-19  Pedro Alves  <palves@redhat.com>
6124
6125         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
6126         (lookup_minimal_symbol_by_pc_section): ... here with
6127         gdb_assert_not_reached added.
6128
6129 2018-06-19  Pedro Alves  <palves@redhat.com>
6130
6131         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
6132         parameter with a block parameter.  Compare location's block symbol
6133         with the frame's block instead of addresses.
6134         (skip_inline_frames): Pass the current block instead of the
6135         frame's address.  Break out as soon as we determine the frame
6136         should not be skipped.
6137
6138 2018-06-18  Tom Tromey  <tom@tromey.com>
6139
6140         * solib-aix.c (solib_aix_get_section_offsets): Return
6141         unique_xmalloc_ptr.
6142         (solib_aix_solib_create_inferior_hook): Update.
6143
6144 2018-06-18  Tom Tromey  <tom@tromey.com>
6145
6146         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
6147
6148 2018-06-18  Tom Tromey  <tom@tromey.com>
6149
6150         * solib-frv.c (frv_relocate_main_executable): Use
6151         unique_xmalloc_ptr.
6152         * solib-dsbt.c (dsbt_relocate_main_executable): Use
6153         unique_xmalloc_ptr.
6154
6155 2018-06-18  Tom Tromey  <tom@tromey.com>
6156
6157         * objfiles.h (inhibit_section_map_updates): Update.
6158         (resume_section_map_updates, resume_section_map_updates_cleanup):
6159         Remove.
6160         * solib-svr4.c (svr4_handle_solib_event): Update.
6161         * objfiles.c (inhibit_section_map_updates): Return
6162         scoped_restore_tmpl<int>.
6163         (resume_section_map_updates, resume_section_map_updates_cleanup):
6164         Remove.
6165
6166 2018-06-18  Tom Tromey  <tom@tromey.com>
6167
6168         * valprint.h (read_string): Update.
6169         * valprint.c (read_string): Change type of "buffer".
6170         (val_print_string): Update.
6171         * python/py-value.c (valpy_string): Update.
6172         * language.h (struct language_defn) <la_get_string>: Change
6173         type of "buffer".
6174         (default_get_string, c_get_string): Update.
6175         * language.c (default_get_string): Change type of "buffer".
6176         * guile/scm-value.c (gdbscm_value_to_string): Update.
6177         * c-lang.c (c_get_string): Change type of "buffer".
6178
6179 2018-06-18  Tom Tromey  <tom@tromey.com>
6180
6181         * ser-mingw.c (struct pipe_state_destroyer): New.
6182         (pipe_state_up): New typedef.
6183         (cleanup_pipe_state): Remove.
6184         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
6185
6186 2018-06-18  Tom Tromey  <tom@tromey.com>
6187
6188         * rust-lang.h (rust_yyerror): Don't declare.
6189         * rust-lang.c (rust_language_defn): Update.
6190         * rust-exp.y (yyerror): Now static.
6191         * parse.c (parse_exp_in_context_1): Update.
6192         * p-lang.h (p_yyerror): Don't declare.
6193         * p-lang.c (p_language_defn): Update.
6194         * p-exp.y (yyerror): Now static.
6195         * opencl-lang.c (opencl_language_defn): Update.
6196         * objc-lang.c (objc_language_defn): Update.
6197         * m2-lang.h (m2_yyerror): Don't declare.
6198         * m2-lang.c (m2_language_defn): Update.
6199         * m2-exp.y (yyerror): Now static.
6200         * language.h (struct language_defn) <la_error>: Remove.
6201         * language.c (unk_lang_error): Remove.
6202         (unknown_language_defn, auto_language_defn): Remove.
6203         * go-lang.h (go_yyerror): Don't declare.
6204         * go-lang.c (go_language_defn): Update.
6205         * go-exp.y (yyerror): Now static.
6206         * f-lang.h (f_yyerror): Don't declare.
6207         * f-lang.c (f_language_defn): Update.
6208         * f-exp.y (yyerror): Now static.
6209         * d-lang.h (d_yyerror): Don't declare.
6210         * d-lang.c (d_language_defn): Update.
6211         * d-exp.y (yyerror): Now static.
6212         * c-lang.h (c_yyerror): Don't declare.
6213         * c-lang.c (c_language_defn, cplus_language_defn)
6214         (asm_language_defn, minimal_language_defn): Update.
6215         * c-exp.y (yyerror): Now static.
6216         * ada-lang.h (ada_yyerror): Don't declare.
6217         * ada-lang.c (ada_language_defn): Update.
6218         * ada-exp.y (yyerror): Now static.
6219
6220 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6221
6222         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
6223         (store_sveregs_to_thread): Likewise.
6224         (aarch64_linux_fetch_inferior_registers): Check for SVE.
6225         (aarch64_linux_store_inferior_registers): Likewise.
6226         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
6227         function.
6228         (aarch64_sve_regs_copy_to_regcache): Likewise.
6229         (aarch64_sve_regs_copy_from_regcache): Likewise.
6230         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
6231         declaration.
6232         (aarch64_sve_regs_copy_to_regcache): Likewise.
6233         (aarch64_sve_regs_copy_from_regcache): Likewise.
6234         (sve_context): Structure from Linux headers.
6235         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
6236         (SVE_SIG_ZREG_SIZE): Likewise.
6237         (SVE_SIG_PREG_SIZE): Likewise.
6238         (SVE_SIG_FFR_SIZE): Likewise.
6239         (SVE_SIG_REGS_OFFSET): Likewise.
6240         (SVE_SIG_ZREGS_OFFSET): Likewise.
6241         (SVE_SIG_ZREG_OFFSET): Likewise.
6242         (SVE_SIG_ZREGS_SIZE): Likewise.
6243         (SVE_SIG_PREGS_OFFSET): Likewise.
6244         (SVE_SIG_PREG_OFFSET): Likewise.
6245         (SVE_SIG_PREGS_SIZE): Likewise.
6246         (SVE_SIG_FFR_OFFSET): Likewise.
6247         (SVE_SIG_REGS_SIZE): Likewise.
6248         (SVE_SIG_CONTEXT_SIZE): Likewise.
6249         (SVE_PT_REGS_MASK): Likewise.
6250         (SVE_PT_REGS_FPSIMD): Likewise.
6251         (SVE_PT_REGS_SVE): Likewise.
6252         (SVE_PT_VL_INHERIT): Likewise.
6253         (SVE_PT_VL_ONEXEC): Likewise.
6254         (SVE_PT_REGS_OFFSET): Likewise.
6255         (SVE_PT_FPSIMD_OFFSET): Likewise.
6256         (SVE_PT_FPSIMD_SIZE): Likewise.
6257         (SVE_PT_SVE_ZREG_SIZE): Likewise.
6258         (SVE_PT_SVE_PREG_SIZE): Likewise.
6259         (SVE_PT_SVE_FFR_SIZE): Likewise.
6260         (SVE_PT_SVE_FPSR_SIZE): Likewise.
6261         (SVE_PT_SVE_FPCR_SIZE): Likewise.
6262         (__SVE_SIG_TO_PT): Likewise.
6263         (SVE_PT_SVE_OFFSET): Likewise.
6264         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
6265         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
6266         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
6267         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
6268         (SVE_PT_SVE_PREG_OFFSET): Likewise.
6269         (SVE_PT_SVE_PREGS_SIZE): Likewise.
6270         (SVE_PT_SVE_FFR_OFFSET): Likewise.
6271         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
6272         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
6273         (SVE_PT_SVE_SIZE): Likewise.
6274         (SVE_PT_SIZE): Likewise.
6275         (HAS_SVE_STATE): New define.
6276
6277 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6278
6279         * nat/aarch64-sve-linux-sigcontext.h: New file.
6280         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
6281         new files.
6282         (SVE_VQ_MIN): Likewise.
6283         (SVE_VQ_MAX): Likewise.
6284         (SVE_VL_MIN): Likewise.
6285         (SVE_VL_MAX): Likewise.
6286         (SVE_NUM_ZREGS): Likewise.
6287         (SVE_NUM_PREGS): Likewise.
6288         (sve_vl_valid): Likewise.
6289         (struct user_sve_header): Likewise.
6290
6291 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
6292             Richard Bunt <Richard.Bunt@arm.com>
6293
6294         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
6295         was requested by GDB.
6296
6297 2018-06-15  Tom de Vries  <tdevries@suse.de>
6298
6299         * MAINTAINERS (Write After Approval): Add Tom de Vries.
6300
6301 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
6302
6303         * gnulib/update-gnulib.sh: Print expected versions of
6304         autoconf/aclocal.
6305
6306 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
6307
6308         * arch-utils.c (default_type_align): Use type_length_units.
6309         * gdbtypes.c (type_align): Use type_length_units.
6310
6311 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6312
6313         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
6314         of 'define' command.
6315
6316 2018-06-14  Tom de Vries  <tdevries@suse.de>
6317
6318         PR cli/22573
6319         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
6320         get_no_prettyformat_print_options.
6321
6322 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
6323
6324         * sparc-nat.h: Include target.h.
6325         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
6326         <fetch_registers>: Remove this argument in function call.
6327         <store_registers>: Remove this argument in function call, remove
6328         extra semicolon.
6329         <low_forget_process>: Call sparc64_forget_process instead of
6330         sparc_forget_process.
6331
6332 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
6333
6334         * procfs.c (_initialize_procfs): Use add_inf_child_target.
6335         (procfs_target::make_corefile_notes): Adjust to new
6336         target_read_alloc return type.
6337
6338 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6339             Stephen Roberts  <stephen.roberts@arm.com>
6340
6341         PR gdb/22882
6342         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
6343         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
6344         Move should_notify_stop local into more inner scope.
6345
6346 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6347             Stephen Roberts  <stephen.roberts@arm.com>
6348
6349         PR gdb/22882
6350         * infrun.c (resume_1): Add call to mark_async_event_handler.
6351
6352 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6353
6354         * infrun.c (do_target_wait): Change old version of $pc printed.
6355
6356 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
6357
6358         * dwarf2read.c (read_index_from_section): Rename to...
6359         (read_gdb_index_from_section): ... this, update all callers.
6360         (dwarf2_read_index): Rename to...
6361         (dwarf2_read_gdb_index): ... this, update all callers.
6362
6363 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
6364
6365         * gdb/hppa-linux-nat.c
6366         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
6367         hppa_linux_nat_target::fetch_registers.
6368
6369 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6370
6371         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
6372         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
6373         (AARCH64_DWARF_SVE_FFR): Likewise.
6374         (AARCH64_DWARF_SVE_P0): Likewise.
6375         (AARCH64_DWARF_SVE_Z0): Likewise.
6376
6377 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6378
6379         * common/common-regcache.h (raw_compare): New function.
6380         * regcache.c (regcache::raw_compare): Likewise.
6381         * regcache.h (regcache::raw_compare): New declaration.
6382
6383 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6384
6385         * common/common-regcache.h (reg_buffer_common): New structure.
6386         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
6387         (reg_buffer::raw_supply): Likewise.
6388         (reg_buffer::raw_supply_integer): Likewise.
6389         (reg_buffer::raw_supply_zeroed): Likewise.
6390         (reg_buffer::raw_collect): Likewise.
6391         (reg_buffer::raw_collect_integer): Likewise.
6392         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
6393         (reg_buffer::raw_supply): Likewise.
6394         (reg_buffer::raw_supply_integer): Likewise.
6395         (reg_buffer::raw_supply_zeroed): Likewise.
6396         (reg_buffer::raw_collect): Likewise.
6397         (reg_buffer::raw_collect_integer): Likewise.
6398
6399 2018-06-10  Tom Tromey  <tom@tromey.com>
6400
6401         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
6402         (class remote_state) <stop_reply_queue>: Now std::vector.
6403         (remote_state::~remote_state)
6404         (remote_target::stop_reply_queue_length): Update.
6405         (struct queue_iter_param, remove_child_of_pending_fork)
6406         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
6407         (check_pending_event_prevents_wildcard_vcont_callback)
6408         (remove_stop_reply_for_inferior)
6409         (remove_stop_reply_of_remote_state)
6410         (remote_notif_remove_once_on_match)
6411         (stop_reply_match_ptid_and_ws)
6412         (remote_kill_child_of_pending_fork): Remove.
6413         (remote_target::remove_new_fork_children)
6414         (remote_target::check_pending_events_prevent_wildcard_vcont)
6415         (remote_target::discard_pending_stop_replies)
6416         (remote_target::discard_pending_stop_replies_in_queue)
6417         (remote_target::remote_notif_remove_queued_reply)
6418         (remote_target::queued_stop_reply)
6419         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
6420         (remote_target::wait, remote_target::kill_new_fork_children)
6421         (remote_target::async): Update.
6422
6423 2018-06-10  Tom Tromey  <tom@tromey.com>
6424
6425         * record-full.c (record_full_arch_list_cleanups): Remove.
6426         (record_full_message): Use try/catch.
6427         (record_full_wait_cleanups): Remove.
6428         (record_full_wait_1): Use try/catch.
6429         (record_full_restore): Likewise.
6430
6431 2018-06-10  Tom Tromey  <tom@tromey.com>
6432
6433         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
6434         declare VEC.  Add constructor.
6435         <in_target_beneath>: Now bool.
6436         (record_full_breakpoints): Now a std::vector, static.
6437         (record_full_sync_record_breakpoints)
6438         (record_full_init_record_breakpoints)
6439         (record_full_target::insert_breakpoint)
6440         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
6441
6442 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
6443
6444         * dwarf2read.c (process_cu_includes): Remove struct keyword.
6445         * serial.c (serial_interface_lookup): Remove struct keyword.
6446
6447 2018-06-10  Tom Tromey  <tom@tromey.com>
6448
6449         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
6450         method.
6451         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
6452         a method.
6453         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
6454         method.
6455         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
6456         "beneath" as a method.
6457         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
6458         Use "beneath" as a method.
6459
6460 2018-06-10  Tom Tromey  <tom@tromey.com>
6461
6462         * tracefile.c (struct trace_file_writer_deleter): New.
6463         <operator()>: Rename from trace_file_writer_xfree.
6464         (trace_file_writer_up): New typedef.
6465         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
6466
6467 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
6468
6469         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
6470         <m_registers, m_register_status>: Change type to
6471         std::unique_ptr.
6472         * regcache.c (reg_buffer::reg_buffer): Use new instead of
6473         XCNEWVEC.
6474
6475 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
6476
6477         * common/common-regcache.h (enum register_status): Add
6478         underlying type "signed char".
6479         * regcache.h (reg_buffer) <m_register_status>: Change type to
6480         register_status *.
6481         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
6482         register_status instead of signed char.
6483         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
6484         (reg_buffer::get_register_status): Remove cast.
6485         (readable_regcache::raw_read): Remove cast.
6486         (readable_regcache::cooked_read): Remove cast.
6487
6488 2018-06-09  Tom Tromey  <tom@tromey.com>
6489
6490         * source.c (reverse_search_command, forward_search_command): Use
6491         scoped_fd.
6492
6493 2018-06-09  Tom Tromey  <tom@tromey.com>
6494
6495         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
6496         (serial_ops_list): Now static, std::vector.
6497         (serial_interface_lookup, serial_add_interface): Update.
6498
6499 2018-06-09  Tom Tromey  <tom@tromey.com>
6500
6501         * dwarf2read.c (process_cu_includes): Update.
6502         (process_full_comp_unit): Update.
6503         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
6504         std::vector.
6505
6506 2018-06-08  Paul Koning  <paul_koning@dell.com>
6507
6508         PR gdb/23252
6509
6510         * python/python.c (do_start_initialization):
6511         Avoid call to internal Python API.
6512         (init__gdb_module): New function.
6513
6514 2018-06-08  Gary Benson <gbenson@redhat.com>
6515
6516         * linux-thread-db.c (valprint.h): New include.
6517         (struct check_thread_db_info): New structure.
6518         (check_thread_db_on_load, tdb_testinfo): New static globals.
6519         (check_thread_db, check_thread_db_callback): New functions.
6520         (try_thread_db_load_1): Run integrity checks if requested.
6521         (maintenance_check_libthread_db): New function.
6522         (_initialize_thread_db): Register "maint check libthread-db"
6523         and "maint set/show check-libthread-db".
6524         * NEWS: Mention the above new commands.
6525
6526 2018-06-08  Tom Tromey  <tom@tromey.com>
6527
6528         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
6529         now a method.
6530
6531 2018-06-08  Tom Tromey  <tom@tromey.com>
6532
6533         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
6534
6535 2018-06-08  Tom Tromey  <tom@tromey.com>
6536
6537         * common/btrace-common.h (struct btrace_data): Add constructor,
6538         destructor, move assignment operator.
6539         <empty, clear, fini>: New methods.
6540         <format>: Initialize.
6541         (btrace_data_init, btrace_data_fini, btrace_data_clear)
6542         (btrace_data_empty): Don't declare.
6543         * common/btrace-common.c (btrace_data_init): Remove.
6544         (btrace_data::fini): Rename from btrace_data_fini.
6545         (btrace_data::empty): Rename from btrace_data_empty.
6546         (btrace_data::clear): Rename from btrace_data_clear.  Return
6547         bool.
6548         * btrace.h (make_cleanup_btrace_data): Don't declare.
6549         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
6550         (parse_xml_btrace): Update.
6551         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
6552         (maint_btrace_clear_packet_history_cmd): Update.
6553
6554 2018-06-07  Pedro Alves  <palves@redhat.com>
6555
6556         * target.h (target_ops) <beneath>: Now a method.  All references
6557         updated.
6558         (class target_stack): New.
6559         * target.c (g_target_stack): New.
6560         (g_current_top_target): Delete.
6561         (current_top_target): Get the top target out of g_target_stack.
6562         (target_stack::push, target_stack::unpush): New.
6563         (push_target, unpush_target): Reimplement.
6564         (target_is_pushed): Reimplement in terms of g_target_stack.
6565         (target_ops::beneath, target_stack::find_beneath): New.
6566
6567 2018-06-07  Pedro Alves  <palves@redhat.com>
6568
6569         * target.h (find_target_beneath): Delete declaration.
6570         * target.c (find_target_beneath): Delete definition.
6571         * aix-thread.c: All callers of find_target_beneath adjusted to
6572         call target_ops::beneath instead.
6573         * bsd-uthread.c: Likewise.
6574         * linux-thread-db.c: Likewise.
6575         * ravenscar-thread.c: Likewise.
6576         * sol-thread.c: Likewise.
6577         * spu-multiarch.c: Likewise.
6578
6579 2018-06-07  Pedro Alves  <palves@redhat.com>
6580
6581         * target.h (target_ops) <beneath>: Now a method.  All references
6582         updated.
6583         (target_ops) <m_beneath>: New.
6584         * target.c (target_ops::beneath): New.
6585         * corelow.c: Adjust all references to target_ops::beneath.
6586         * linux-thread-db.c: Likewise.
6587         * make-target-delegates: Likewise.
6588         * record-btrace.c: Likewise.
6589         * record-full.c: Likewise.
6590         * remote.c: Likewise.
6591         * target.c: Likewise.
6592         * target-delegates.c: Regenerate.
6593
6594 2018-06-07  Pedro Alves  <palves@redhat.com>
6595
6596         * target.h (target_stack): Delete.
6597         (current_top_target): Declare function.
6598         * target.c (target_stack): Delete.
6599         (g_current_top_target): New.
6600         (current_top_target): New function.
6601         * auxv.c: Use current_top_target instead of target_stack
6602         throughout.
6603         * avr-tdep.c: Likewise.
6604         * breakpoint.c: Likewise.
6605         * corefile.c: Likewise.
6606         * elfread.c: Likewise.
6607         * eval.c: Likewise.
6608         * exceptions.c: Likewise.
6609         * frame.c: Likewise.
6610         * gdbarch-selftests.c: Likewise.
6611         * gnu-v3-abi.c: Likewise.
6612         * ia64-tdep.c: Likewise.
6613         * ia64-vms-tdep.c: Likewise.
6614         * infcall.c: Likewise.
6615         * infcmd.c: Likewise.
6616         * infrun.c: Likewise.
6617         * linespec.c: Likewise.
6618         * linux-tdep.c: Likewise.
6619         * minsyms.c: Likewise.
6620         * ppc-linux-nat.c: Likewise.
6621         * ppc-linux-tdep.c: Likewise.
6622         * procfs.c: Likewise.
6623         * regcache.c: Likewise.
6624         * remote.c: Likewise.
6625         * rs6000-tdep.c: Likewise.
6626         * s390-linux-nat.c: Likewise.
6627         * s390-tdep.c: Likewise.
6628         * solib-aix.c: Likewise.
6629         * solib-darwin.c: Likewise.
6630         * solib-dsbt.c: Likewise.
6631         * solib-spu.c: Likewise.
6632         * solib-svr4.c: Likewise.
6633         * solib-target.c: Likewise.
6634         * sparc-tdep.c: Likewise.
6635         * sparc64-tdep.c: Likewise.
6636         * spu-tdep.c: Likewise.
6637         * symfile.c: Likewise.
6638         * symtab.c: Likewise.
6639         * target-descriptions.c: Likewise.
6640         * target-memory.c: Likewise.
6641         * target.c: Likewise.
6642         * target.h: Likewise.
6643         * tracefile-tfile.c: Likewise.
6644         * tracepoint.c: Likewise.
6645         * valops.c: Likewise.
6646         * valprint.c: Likewise.
6647         * value.c: Likewise.
6648         * windows-tdep.c: Likewise.
6649         * mi/mi-main.c: Likewise.
6650
6651 2018-06-07  Tom Tromey  <tom@tromey.com>
6652
6653         * valprint.h (build_address_symbolic): Declare.
6654         * printcmd.c (print_address_symbolic): Update.
6655         (build_address_symbolic): Change "name" and "filename" to
6656         std::string.
6657         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
6658         Update.
6659         * defs.h (build_address_symbolic): Remove declaration.
6660
6661 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
6662
6663         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
6664         (aarch64_vnv_type): Add function.
6665         (aarch64_pseudo_register_name): Add V regs for SVE.
6666         (aarch64_pseudo_register_type): Likewise.
6667         (aarch64_pseudo_register_reggroup_p): Likewise.
6668         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
6669         (aarch64_pseudo_read_value): Add V regs for SVE.
6670         (aarch64_pseudo_write_2): Use V0 offset for SVE
6671         (aarch64_pseudo_write): Add V regs for SVE.
6672         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
6673
6674 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
6675
6676         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
6677         (sve_vl_from_vq): Likewise.
6678
6679 2018-06-05  Tom Tromey  <tom@tromey.com>
6680
6681         * cli/cli-cmds.c (show_version): Update.
6682         * top.c (print_gdb_version): Add "interactive" parameter.
6683         Update.
6684         * main.c (captured_main_1): Update.
6685         * top.h (print_gdb_version): Add "interactive" parameter and a
6686         comment.
6687
6688 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
6689
6690         * common/enum-flags.h: Add trailing semicolon to example in
6691         comment.
6692
6693 2018-06-05  Tom Tromey  <tom@tromey.com>
6694
6695         PR cli/12326:
6696         * NEWS: Add entry about pager.
6697         * utils.c (pagination_disabled_for_command): New global.
6698         (prompt_for_continue): Allow "c" response to prompt.
6699         (reinitialize_more_filter): Clear
6700         pagination_disabled_for_command.
6701         (fputs_maybe_filtered): Check pagination_disabled_for_command.
6702
6703 2018-06-04  Tom Tromey  <tom@tromey.com>
6704
6705         * ada-lang.h (ada_lookup_symbol_list): Update.
6706         * ada-lang.c (resolve_subexp): Update.
6707         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
6708         parameter.
6709         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
6710         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
6711         results parameter to std::vector.
6712         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
6713         Update.
6714         * ada-exp.y (block_lookup): Update.
6715         (select_possible_type_sym): Change type of syms.  Remove nsyms
6716         parameter.
6717         (write_var_or_type, write_name_assoc): Update.
6718
6719 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
6720
6721         * windows-nat.c (windows_nat_target::xfer_partial): Return
6722         TARGET_XFER_E_IO if we need to delegate to the target beneath
6723         but BENEATH is NULL.
6724
6725 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
6726
6727         * Makefile.in (config.status): Add configure.nat as a
6728         dependency.
6729
6730 2018-06-04  Tom Tromey  <tom@tromey.com>
6731
6732         * cp-name-parser.y (cpname_state): Add method declarations.
6733         (HANDLE_QUAL): Update.
6734         (cpname_state::d_grab, cpname_state::fill_comp)
6735         (cpname_state::make_operator, cpname_state::make_dtor)
6736         (cpname_state::make_builtin_type, cpname_state::make_name)
6737         (cpname_state::d_qualify, cpname_state::d_int_type)
6738         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
6739         (%union): Move earlier.
6740
6741 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6742
6743         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
6744
6745 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6746
6747         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
6748         (aarch64_pseudo_write_1): Likewise.
6749         (aarch64_pseudo_read_value): Use helper.
6750         (aarch64_pseudo_write): Likewise.
6751
6752 2018-06-04  Pedro Alves  <palves@redhat.com>
6753
6754         * darwin-nat.c (darwin_ops): Delete.
6755         (darwin_attach_pid): Use get_native_target.
6756
6757 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6758
6759         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
6760         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
6761
6762 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6763
6764         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
6765         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
6766         (aarch64_gdbarch_init): Check for SVE.
6767         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
6768
6769 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6770
6771         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
6772         * aarch64-tdep.h (aarch64_read_description): Likewise.
6773         * arch/aarch64.c (aarch64_create_target_description): Likewise.
6774         * arch/aarch64.h (aarch64_create_target_description): Likewise.
6775         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
6776         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
6777         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
6778
6779 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
6780
6781         * value.c (value_fetch_lazy_bitfield): New.
6782         (value_fetch_lazy_memory): New.
6783         (value_fetch_lazy_register): New.
6784         (value_fetch_lazy): Factor out to smaller functions.
6785
6786 2018-06-01  Tom Tromey  <tom@tromey.com>
6787
6788         * cp-name-parser.y (backslashable, represented): Now const.
6789
6790 2018-06-01  Tom Tromey  <tom@tromey.com>
6791
6792         * cp-name-parser.y: Include parser-defs.h.
6793         (parser_fprintf): Remove declaration.
6794
6795 2018-06-01  Tom Tromey  <tom@tromey.com>
6796
6797         * cp-name-parser.y: Use %pure-parser, %lex-param, and
6798         %parse-param.
6799         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
6800         (global_result): Remove globals.
6801         (struct cpname_state): New.
6802         (yyparse): Don't declare.
6803         (yylex, yyerror): Move declarations after %union.
6804         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
6805         (make_name): Add state parameter.
6806         Update all callers.
6807         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
6808         parameter.
6809         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
6810         Update.
6811         (yylex): Add lvalp, state parameters.
6812         (yyerror): Add state parameter.
6813         (cp_demangled_name_to_comp): Update.
6814
6815 2018-06-01  Tom Tromey  <tom@tromey.com>
6816
6817         * cp-name-parser.y (parser_fprintf): Declare.
6818         (GDB_YY_REMAP_PREFIX): Define.
6819         Include yy-remap.h.  Don't redefine yy* identifiers.
6820
6821 2018-06-01  Tom Tromey  <tom@tromey.com>
6822
6823         * python/py-type.c (typy_legacy_template_argument): Update.
6824         * cp-support.h (cp_demangled_name_to_comp): Update.
6825         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
6826         parameter to be a "std::string *".
6827         (main): Update.
6828
6829 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
6830
6831         * ada-lex.l: Include "diagnostics.h" instead of
6832         "common/diagnostics.h".
6833         * unittests/environ-selftests.c: Likewise.
6834         * common/diagnostics.h: Moved to ../include.
6835
6836 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
6837
6838         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
6839         to language_mode_manual while calling breakpoint_re_set_one.
6840
6841 2018-06-01  Tom Tromey  <tom@tromey.com>
6842
6843         * valops.c (value_cast_structs, destructor_name_p): Update.
6844         * symtab.c (gdb_mangle_name): Update.
6845         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
6846         Update.
6847         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
6848         (pascal_object_print_value_fields, pascal_object_print_value):
6849         Update.
6850         * p-typeprint.c (pascal_type_print_derivation_info): Update.
6851         * linespec.c (find_methods): Update.
6852         * gdbtypes.h (type_name_no_tag): Remove.
6853         (type_name_or_error): Rename from type_name_no_tag_or_error.
6854         * gdbtypes.c (type_name_no_tag): Remove.
6855         (type_name_or_error): Rename from type_name_no_tag_or_error.
6856         (lookup_struct_elt_type, check_typedef): Update.
6857         * expprint.c (print_subexp_standard): Update.
6858         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
6859         * d-namespace.c (d_lookup_nested_symbol): Update.
6860         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
6861         (cp_print_class_member): Update.
6862         * cp-namespace.c (cp_lookup_nested_symbol): Update.
6863         * completer.c (add_struct_fields): Update.
6864         * c-typeprint.c (cp_type_print_derivation_info)
6865         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
6866         Update.
6867         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
6868         (ada_prefer_type, ada_is_exception_sym): Update.
6869
6870 2018-06-01  Tom Tromey  <tom@tromey.com>
6871
6872         * valops.c (enum_constant_from_type, value_namespace_elt)
6873         (value_maybe_namespace_elt): Update.
6874         * valarith.c (find_size_for_pointer_math): Update.
6875         * target-descriptions.c (make_gdb_type): Update.
6876         * symmisc.c (print_symbol): Update.
6877         * stabsread.c (define_symbol, read_type)
6878         (complain_about_struct_wipeout, add_undefined_type)
6879         (cleanup_undefined_types_1): Update.
6880         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
6881         (rust_range_type_p, val_print_struct, rust_print_struct_def)
6882         (rust_internal_print_type, rust_composite_type)
6883         (rust_evaluate_funcall, rust_evaluate_subexp)
6884         (rust_inclusive_range_type_p): Update.
6885         * python/py-type.c (typy_get_tag): Update.
6886         * p-typeprint.c (pascal_type_print_base): Update.
6887         * mdebugread.c (parse_symbol, parse_type): Update.
6888         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
6889         Update.
6890         * guile/scm-type.c (gdbscm_type_tag): Update.
6891         * go-lang.c (sixg_string_p): Update.
6892         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
6893         Update.
6894         * gdbtypes.h (struct main_type) <tag_name>: Remove.
6895         (TYPE_TAG_NAME): Remove.
6896         * gdbtypes.c (type_name_no_tag): Simplify.
6897         (check_typedef, check_types_equal, recursive_dump_type)
6898         (copy_type_recursive, arch_composite_type): Update.
6899         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
6900         in summary mode when needed.
6901         * eval.c (evaluate_funcall): Update.
6902         * dwarf2read.c (fixup_go_packaging, read_structure_type)
6903         (process_structure_scope, read_enumeration_type)
6904         (read_namespace_type, read_module_type, determine_prefix): Update.
6905         * cp-support.c (inspect_type): Update.
6906         * coffread.c (process_coff_symbol, decode_base_type): Update.
6907         * c-varobj.c (c_is_path_expr_parent): Update.
6908         * c-typeprint.c (c_type_print_base_struct_union): Update.
6909         (c_type_print_base_1): Update.  Print struct/class/union/enum in
6910         summary when using C language.
6911         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
6912         (gen_maybe_namespace_elt): Update.
6913         * ada-lang.c (ada_type_name): Simplify.
6914         (empty_record, ada_template_to_fixed_record_type_1)
6915         (template_to_static_fixed_type)
6916         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
6917
6918 2018-06-01  Tom Tromey  <tom@tromey.com>
6919
6920         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
6921         c_print_type.
6922         * c-typeprint.c (c_print_type_1): Add "language" parameter.
6923         (c_print_type): Update.
6924         (c_print_type): New overload.
6925         (c_type_print_varspec_prefix, c_type_print_args)
6926         (c_type_print_varspec_suffix, c_print_type_no_offsets)
6927         (c_type_print_base_struct_union, c_type_print_base_1)
6928         (cp_type_print_method_args): Add "language" parameter.
6929         (c_type_print_base): Update.
6930         * c-lang.h (c_print_type): Add new overload.
6931
6932 2018-06-01  Tom Tromey  <tom@tromey.com>
6933
6934         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
6935         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
6936
6937 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
6938
6939         * aarch64-tdep.c (aarch64_sve_register_names): New const
6940         var.
6941         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
6942         (AARCH64_SVE_Z_REGS_NUM): New define.
6943         (AARCH64_SVE_P_REGS_NUM): Likewise.
6944         (AARCH64_SVE_NUM_REGS): Likewise.
6945
6946 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
6947
6948         * nat/linux-ptrace.h [__alpha__]
6949         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
6950         definitions.
6951
6952 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
6953
6954         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
6955         the endianness selected.
6956         * NEWS: Document `set endian auto' mode operation update.
6957
6958 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
6959
6960         * Makefile.in: Add new header.
6961         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
6962         (sve_vl_from_vg): Likewise.
6963         (sve_vq_from_vl): Likewise.
6964         (sve_vl_from_vq): Likewise.
6965         (sve_vq_from_vg): Likewise.
6966         (sve_vg_from_vq): Likewise.
6967         * configure.nat: Add new c file.
6968         * nat/aarch64-sve-linux-ptrace.c: New file.
6969         * nat/aarch64-sve-linux-ptrace.h: New file.
6970
6971 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
6972
6973         * aarch64-linux-nat.c (aarch64_linux_read_description):
6974         Add parmeter zero.
6975         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
6976         Likewise.
6977         * aarch64-tdep.c (tdesc_aarch64_list): Add.
6978         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
6979         (aarch64_gdbarch_init): Add parmeter zero.
6980         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
6981         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
6982         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
6983         parmeter.
6984         * doc/gdb.texinfo: Describe SVE feature
6985         * features/aarch64-sve.c: New file.
6986
6987 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
6988
6989         PR gdb/23210
6990         * gdbarch.sh (significant_addr_bit): Default to zero when
6991         not set by target architecture.
6992         * gdbarch.c: Re-generated.
6993         * utils.c (address_significant): Update.
6994
6995 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
6996
6997         * stack.c (func_command): Remove trailing newline in call to error.
6998
6999 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7000
7001         * regcache.h (regcache_raw_collect): Remove, update callers to
7002         use regcache::raw_collect.
7003         * regcache.c (regcache_raw_collect): Remove.
7004
7005 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7006
7007         * regcache.h (regcache_raw_supply): Remove, update callers to
7008         use detached_regcache::raw_supply.
7009         * regcache.c (regcache_raw_supply): Remove.
7010
7011 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7012
7013         * regcache.h (regcache_cooked_write_part): Remove, update
7014         callers to use regcache::cooked_write_part.
7015         * regcache.c (regcache_cooked_write_part): Remove.
7016
7017 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7018
7019         * regcache.h (regcache_cooked_read_part): Remove, update callers
7020         to use readable_regcache::cooked_read_part.
7021         * regcache.c (regcache_cooked_read_part): Remove.
7022
7023 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7024
7025         * regcache.h (regcache_cooked_read_value): Remove, update
7026         callers to use readable_regcache::cooked_read_value.
7027         * regcache.c (regcache_cooked_read_value): Remove.
7028
7029 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7030
7031         * regcache.h (regcache_cooked_write): Remove, update callers to
7032         use regcache::cooked_write.
7033         * regcache.c (regcache_cooked_write): Remove.
7034
7035 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7036
7037         * regcache.h (regcache_invalidate): Remove, update callers to
7038         use detached_regcache::invalidate instead.
7039         * regcache.c (regcache_invalidate): Remove.
7040
7041 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7042
7043         * regcache.h (regcache_raw_write_part): Remove, update callers
7044         to use regcache::raw_write_part instead.
7045         * regcache.c (regcache_raw_write_part): Remove.
7046
7047 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7048
7049         * regcache.h (regcache_raw_read_part): Remove, update callers to
7050         use readable_regcache::raw_read_part instead.
7051         * regcache.c (regcache_raw_read_part): Remove.
7052
7053 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7054
7055         * regcache.h (regcache_cooked_read): Remove, update callers to
7056         use readable_regcache::cooked_read instead.
7057         * regcache.c (regcache_cooked_read): Remove.
7058
7059 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7060
7061         * regcache.h (regcache_raw_write): Remove, update callers to use
7062         regcache::raw_write instead.
7063         * regcache.c (regcache_raw_write): Remove.
7064
7065 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7066
7067         * regcache.h (regcache_raw_read): Remove, update callers to use
7068         readable_regcache::raw_read instead.
7069         * regcache.c (regcache_raw_read): Remove.
7070
7071 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7072
7073         * regcache.h (regcache_raw_update): Remove, update callers to
7074         use readable_regcache::raw_update instead.
7075         * regcache.c (regcache_raw_update): Remove.
7076
7077 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7078
7079         * regcache.h (regcache_register_status): Remove, update callers
7080         to use reg_buffer::get_register_status directly instead.
7081         * regcache.c (regcache_register_status): Remove.
7082
7083 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7084
7085         * regcache.h (regcache_get_ptid): Remove, update all callers to
7086         call regcache::ptid instead.
7087         * regcache.c (regcache_get_ptid): Remove.
7088
7089 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7090
7091         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
7092
7093 2018-05-30  Pedro Alves  <palves@redhat.com>
7094
7095         * common/common-exceptions.h (exception_rethrow): Use
7096         ATTRIBUTE_NORETURN.
7097
7098 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
7099
7100         * breakpoint.c (print_solib_event, check_status_catch_solib):
7101         Remove struct keyword in range-based for loops.
7102         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
7103         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
7104         Likewise.
7105         * linespec.c (find_superclass_methods, search_minsyms_for_name):
7106         Likewise.
7107         * symfile.c (addr_info_make_relative): Likewise.
7108         * thread.c (value_in_thread_stack_temporaries): Likewise.
7109
7110 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
7111
7112         PR gdb/16841
7113         * valops.c (value_struct_elt_for_reference): Call check_typedef on
7114         aggregate type to get its real type before accessing it.
7115
7116 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
7117
7118         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
7119         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
7120         * coff-pe-read.c (add_pe_forwarded_sym): Replace
7121         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
7122         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
7123         * jit.c (jit_breakpoint_re_set_internal): Likewise.
7124         * printcmd.c (info_address_command): Likewise.
7125
7126 2018-05-29  Tom Tromey  <tom@tromey.com>
7127
7128         * windows-nat.c (handle_exception): Update fall-through comment.
7129
7130 2018-05-29  Tom Tromey  <tom@tromey.com>
7131
7132         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
7133         (struct program_space) <added_solibs>: Now a std::vector.
7134         * breakpoint.c (print_solib_event): Update.
7135         (check_status_catch_solib): Update.
7136         * progspace.c (clear_program_space_solib_cache): Update.
7137         * solib.c (update_solib_list): Update.
7138
7139 2018-05-29  Tom Tromey  <tom@tromey.com>
7140
7141         * python/py-type.c (typy_richcompare): Update.
7142         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
7143         * gdbtypes.h (types_deeply_equal): Return bool.
7144         (types_equal): Likewise.
7145         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
7146         declare VEC.
7147         (check_types_equal): Change worklist to std::vector.  Return
7148         bool.
7149         (struct type_equality_entry): Add constructor.
7150         (compare_maybe_null_strings): Return bool.
7151         (check_types_worklist): Return bool.  Change worklist to
7152         std::vector.
7153         (types_deeply_equal): Use std::vector.
7154         (types_equal): Return bool.
7155         (compare_maybe_null_strings): Simplify.
7156
7157 2018-05-29  Tom Tromey  <tom@tromey.com>
7158
7159         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
7160
7161 2018-05-29  Tom Tromey  <tom@tromey.com>
7162
7163         * objc-lang.h: Don't include cp-support.h.
7164         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
7165         declare VEC.
7166
7167 2018-05-27  Tom Tromey  <tom@tromey.com>
7168
7169         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
7170
7171 2018-05-25  Tom Tromey  <tom@tromey.com>
7172
7173         * value.c (value::location): Initialize.
7174
7175 2018-05-25  Tom Tromey  <tom@tromey.com>
7176
7177         * dbxread.c (init_bincl_list): Remove.
7178         (bincl_list): Now a std::vector.
7179         (bincls_allocated, next_bincl): Remove.
7180         (free_bincl_list, do_free_bincl_list_cleanup)
7181         (make_cleanup_free_bincl_list): Remove.
7182         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
7183         unique_xmalloc_ptr.
7184         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
7185         (struct header_file_location): Add constructor.
7186         (add_bincl_to_list): Remove.
7187
7188 2018-05-25  Tom Tromey  <tom@tromey.com>
7189
7190         * tui/tui.c (tui_enable): Update.
7191         * mi/mi-interp.c (mi_interp::init): Update.
7192         * interps.h (class interp) <name>: New method.
7193         <m_name>: Rename from name.
7194         (~scoped_restore_interp): Update.
7195         * interps.c (interp::interp): Update.
7196         (interp_add, interp_set, interp_lookup_existing)
7197         (current_interp_named_p): Update.
7198
7199 2018-05-25  Tom Tromey  <tom@tromey.com>
7200
7201         * interps.c (interp_name): Remove.
7202         * mi/mi-interp.c (mi_interp::init): Update.
7203         * interps.h (interp_name): Remove.
7204         (~scoped_restore_interp): Update.
7205         * tui/tui.c (tui_enable): Update.
7206
7207 2018-05-25  Tom Tromey  <tom@tromey.com>
7208
7209         * utils.c (fputs_maybe_filtered): Update.
7210         * linespec.c (decode_line_full): Update.
7211         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
7212         (mi_print_breakpoint_for_event, mi_solib_loaded)
7213         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
7214         (mi_user_selected_context_changed): Update.
7215         * mi/mi-main.c (mi_execute_command): Update.
7216         * cli/cli-script.c (execute_control_command): Update.
7217         * python/python.c (execute_gdb_command): Update.
7218         * solib.c (info_sharedlibrary_command): Update.
7219         * interps.c (interp_ui_out): Remove.
7220         * interps.h (interp_ui_out): Remove.
7221
7222 2018-05-25  Tom Tromey  <tom@tromey.com>
7223
7224         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
7225         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
7226         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
7227
7228 2018-05-25  Tom Tromey  <tom@tromey.com>
7229
7230         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
7231         * interps.c (interp_exec): Use scoped_restore.
7232
7233 2018-05-25  Tom Tromey  <tom@tromey.com>
7234
7235         * remote.c (remote_target::remote_file_get): Use
7236         gdb::byte_vector.
7237         (remote_target::remote_file_put): Likewise.
7238
7239 2018-05-25  Tom Tromey  <tom@tromey.com>
7240
7241         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
7242         a std::string.
7243         (get_pe_section_index, add_pe_exported_sym): Update.
7244         (read_pe_exported_syms): Use gdb::def_vector.
7245
7246 2018-05-25  Tom Tromey  <tom@tromey.com>
7247
7248         * frame.c (remove_prev_frame): Remove.
7249         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
7250
7251 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
7252
7253         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
7254         Remove prototypes.
7255         * mips-linux-nat.c (supply_fpregset): Always call
7256         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
7257         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
7258         `mips_fill_fpregset'.
7259         * mips-linux-tdep.c (mips_supply_fpregset)
7260         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
7261         (mips_fill_fpregset_wrapper): Remove functions.
7262         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
7263         (mips_linux_fpregset): Remove variable.
7264         (mips_linux_iterate_over_regset_sections): Use
7265         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
7266         (mips_linux_o32_sigframe_init): Remove comment.
7267
7268 2018-05-25  Pedro Alves  <palves@redhat.com>
7269
7270         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
7271         (struct readahead_cache, struct packet_reg, struct
7272         remote_arch_state, class remote_state): Move higher up in the
7273         file.
7274         (remote_target::m_remote_state): Now an object instead of a pointer.
7275         (remote_target::get_remote_state): Adjust.
7276
7277 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7278
7279         * stack.c (select_and_print_frame): Delete.
7280         (struct function_bounds): Move struct within function.
7281         (func_command): Most content moved into new function
7282         find_frame_for_function, use new function, print result, add
7283         function comment.
7284         (find_frame_for_function): New function, now returns a result.
7285
7286 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7287
7288         * stack.c (iterate_over_block_arg_vars): Fix comment.
7289         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
7290
7291 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7292
7293         PR gdb/23203
7294         * frame.c
7295         (scoped_restore_selected_frame::scoped_restore_selected_frame):
7296         Define.
7297         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
7298         Define.
7299         * frame.h (class scoped_restore_selected_frame): New class.
7300         * stack.c (print_frame_local_vars): Remove catching and rethrowing
7301         of any exception, use scoped_restore_selected_frame to restore the
7302         frame instead.
7303
7304 2018-05-24  Pedro Alves  <palves@redhat.com>
7305
7306         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
7307         override.
7308
7309 2018-05-23  Tom Tromey  <tom@tromey.com>
7310
7311         * complaints.c (struct complaints): Remove.
7312         (symfile_complaint_book): Remove.
7313         (series): New global.
7314         (complaint_internal): Update.
7315         (clear_complaints): Update.
7316
7317 2018-05-23  Tom Tromey  <tom@tromey.com>
7318
7319         * complaints.c (counters): New global.
7320         (struct complain): Remove.
7321         (struct complaints) <root>: Remove.
7322         (complaint_sentinel): Remove.
7323         (symfile_complaint_book): Update.
7324         (find_complaint) Remove.
7325         (complaint_internal, clear_complaints): Update.
7326
7327 2018-05-23  Tom Tromey  <tom@tromey.com>
7328
7329         * complaints.c (struct complain) <file, line>: Remove.
7330         (find_complaint): Remove file, line parameters.
7331         (complaint_internal): Update.
7332
7333 2018-05-23  Tom Tromey  <tom@tromey.com>
7334
7335         * complaints.c (vcomplaint): Remove.
7336         (complaint_internal) Merge in contents of vcomplaint.
7337
7338 2018-05-23  Tom Tromey  <tom@tromey.com>
7339
7340         * complaints.c (struct complaints) <explanation>: Remove.
7341         (symfile_explanations): Remove.
7342         (symfile_complaint_book): Update.
7343         (vcomplaint): Update.
7344         (struct explanation): Remove.
7345
7346 2018-05-23  Tom Tromey  <tom@tromey.com>
7347
7348         * complaints.c (symfile_complaints): Remove.
7349         (complaint_internal): Remove "complaints" parameter.
7350         (clear_complaints, vcomplaint): Remove "c" parameter.
7351         (get_complaints): Remove.
7352         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
7353         (dwarf2_debug_line_missing_file_complaint)
7354         (dwarf2_debug_line_missing_end_sequence_complaint)
7355         (dwarf2_complex_location_expr_complaint)
7356         (dwarf2_const_value_length_mismatch_complaint)
7357         (dwarf2_section_buffer_overflow_complaint)
7358         (dwarf2_macro_malformed_definition_complaint)
7359         (dwarf2_invalid_attrib_class_complaint)
7360         (create_addrmap_from_index, dw2_symtab_iter_next)
7361         (dw2_expand_marked_cus)
7362         (dw2_debug_names_iterator::find_vec_in_debug_names)
7363         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
7364         (create_debug_type_hash_table, init_cutu_and_read_dies)
7365         (partial_die_parent_scope, add_partial_enumeration)
7366         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
7367         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
7368         (read_import_statement, read_file_scope, create_dwo_cu_reader)
7369         (create_cus_hash_table, create_dwp_hash_table)
7370         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
7371         (dwarf2_rnglists_process, dwarf2_ranges_process)
7372         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
7373         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
7374         (handle_struct_member_die, process_structure_scope)
7375         (read_array_type, read_common_block, read_module_type)
7376         (read_tag_pointer_type, read_typedef, read_base_type)
7377         (read_subrange_type, load_partial_dies, partial_die_info::read)
7378         (partial_die_info::read, partial_die_info::read)
7379         (partial_die_info::read, read_checked_initial_length_and_offset)
7380         (dwarf2_string_attr, read_formatted_entries)
7381         (dwarf_decode_line_header)
7382         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
7383         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
7384         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
7385         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
7386         (get_signatured_type, get_DW_AT_signature_type)
7387         (decode_locdesc, file_file_name, consume_improper_spaces)
7388         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
7389         (dwarf_decode_macro_bytes, dwarf_decode_macros)
7390         (dwarf2_symbol_mark_computed, set_die_type)
7391         (read_attribute_value): Update.
7392         * stap-probe.c (handle_stap_probe, get_stap_base_address):
7393         Update.
7394         * dbxread.c (unknown_symtype_complaint)
7395         (lbrac_mismatch_complaint, repeated_header_complaint)
7396         (set_namestring, function_outside_compilation_unit_complaint)
7397         (read_dbx_symtab, process_one_symbol): Update.
7398         * gdbtypes.c (stub_noname_complaint): Update.
7399         * windows-nat.c (handle_unload_dll): Update.
7400         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
7401         (decode_base_type): Update.
7402         * xcoffread.c (bf_notfound_complaint, ef_complaint)
7403         (eb_complaint, record_include_begin, record_include_end)
7404         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
7405         (process_xcoff_symbol, read_symbol)
7406         (function_outside_compilation_unit_complaint)
7407         (scan_xcoff_symtab): Update.
7408         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
7409         * buildsym.c (finish_block_internal, make_blockvector)
7410         (end_symtab_get_static_block, augment_type_symtab): Update.
7411         * dtrace-probe.c (dtrace_process_dof)
7412         (dtrace_static_probe_ops::get_probes): Update.
7413         * complaints.h (struct complaint): Don't declare.
7414         (symfile_complaints): Remove.
7415         (complaint_internal): Remove "complaints" parameter.
7416         (complaint): Likewise.
7417         (clear_complaints): Likewise.
7418         * symfile.c (syms_from_objfile_1, finish_new_objfile)
7419         (reread_symbols): Update.
7420         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
7421         (dwarf2_frame_cache, decode_frame_entry): Update.
7422         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
7423         * objc-lang.c (lookup_objc_class, lookup_child_selector)
7424         (info_selectors_command): Update.
7425         * macrotab.c (macro_include, check_for_redefinition)
7426         (macro_undef): Update.
7427         * objfiles.c (filter_overlapping_sections): Update.
7428         * stabsread.c (invalid_cpp_abbrev_complaint)
7429         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
7430         (define_symbol, error_type, read_type, rs6000_builtin_type)
7431         (stabs_method_name_from_physname, read_member_functions)
7432         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
7433         (attach_fields_to_type, complain_about_struct_wipeout)
7434         (read_range_type, read_args, common_block_start)
7435         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
7436         Update.
7437         * mdebugread.c (index_complaint, unknown_ext_complaint)
7438         (basic_type_complaint, bad_tag_guess_complaint)
7439         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
7440         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
7441         (parse_procedure, parse_lines)
7442         (function_outside_compilation_unit_complaint)
7443         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
7444         (bad_tag_guess_complaint, reg_value_complaint): Update.
7445         * cp-support.c (demangled_name_complaint): Update.
7446         * macroscope.c (sal_macro_scope): Update.
7447         * dwarf-index-write.c (class debug_names): Update.
7448
7449 2018-05-23  Tom Tromey  <tom@tromey.com>
7450
7451         * complaints.c (clear_complaints): Remove "noisy" parameter.
7452         * complaints.h (clear_complaints): Update.
7453         * symfile.c (syms_from_objfile_1, finish_new_objfile)
7454         (reread_symbols): Update.
7455
7456 2018-05-23  Tom Tromey  <tom@tromey.com>
7457
7458         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
7459         SUBSEQUENT_MESSAGE.
7460         (vcomplaint, clear_complaints): Update.
7461         (symfile_explanations): Remove some messages.
7462
7463 2018-05-23  Tom Tromey  <tom@tromey.com>
7464
7465         * complaints.c (internal_complaint): Remove.
7466         * complaints.h (internal_complaint): Remove.
7467
7468 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
7469
7470         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
7471
7472 2018-05-22  Pedro Alves  <palves@redhat.com>
7473
7474         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
7475         (remote_fileio_badfd, remote_fileio_return_errno)
7476         (remote_fileio_return_success, remote_fileio_func_open)
7477         (remote_fileio_func_open, remote_fileio_func_close)
7478         (remote_fileio_func_read, remote_fileio_func_write)
7479         (remote_fileio_func_lseek, remote_fileio_func_rename)
7480         (remote_fileio_func_unlink, remote_fileio_func_stat)
7481         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
7482         (remote_fileio_func_isatty, remote_fileio_func_system): Add
7483         remote_target parameter.
7484         (remote_fio_func_map) <func>: Add remote_target parameter.
7485         (do_remote_fileio_request, remote_fileio_request):
7486         * remote-fileio.h (remote_fileio_request):
7487         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
7488         remote_target parameter.
7489         (remote_notif_process, handle_notification): Adjust to pass down
7490         the remote.
7491         (remote_notif_state_allocate): Add remote_target parameter.  Save
7492         it.
7493         * remote-notif.h (struct remote_target): Forward declare.
7494         (struct notif_client) <parse, ack, can_get_pending_events>: Add
7495         remote_target parameter.
7496         (struct remote_notif_state) <remote>: New field.
7497         (remote_notif_ack, remote_notif_parse): Add remote_target
7498         parameter.
7499         (remote_notif_state_allocate, remote_notif_state_allocate): Add
7500         remote_target parameter.
7501         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
7502         (threads_listing_context, rmt_thread_action, protocol_feature)
7503         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
7504         (packet_result, struct threads_listing_context, remote_state):
7505         Move definitions and declarations higher up.
7506         (remote_target) <~remote_target>: Declare.
7507         (remote_download_command_source, remote_file_put, remote_file_get)
7508         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
7509         (remote_hostio_pread_vFile, remote_hostio_send_command)
7510         (remote_hostio_set_filesystem, remote_hostio_open)
7511         (remote_hostio_close, remote_hostio_unlink, remote_state)
7512         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
7513         (get_memory_write_packet_size, get_memory_read_packet_size)
7514         (append_pending_thread_resumptions, remote_detach_1)
7515         (append_resumption, remote_resume_with_vcont)
7516         (add_current_inferior_and_thread, wait_ns, wait_as)
7517         (process_stop_reply, remote_notice_new_inferior)
7518         (process_initial_stop_replies, remote_add_thread)
7519         (btrace_sync_conf, remote_btrace_maybe_reopen)
7520         (remove_new_fork_children, kill_new_fork_children)
7521         (discard_pending_stop_replies, stop_reply_queue_length)
7522         (check_pending_events_prevent_wildcard_vcont)
7523         (discard_pending_stop_replies_in_queue, stop_reply)
7524         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
7525         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
7526         (remote_interrupt_as, remote_interrupt_ns)
7527         (remote_get_noisy_reply, remote_query_attached)
7528         (remote_add_inferior, remote_current_thread, get_current_thread)
7529         (set_thread, set_general_thread, set_continue_thread)
7530         (set_general_process, write_ptid)
7531         (remote_unpack_thread_info_response, remote_get_threadinfo)
7532         (parse_threadlist_response, remote_get_threadlist)
7533         (remote_threadlist_iterator, remote_get_threads_with_ql)
7534         (remote_get_threads_with_qxfer)
7535         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
7536         (get_offsets, remote_check_symbols, remote_supported_packet)
7537         (remote_query_supported, remote_packet_size)
7538         (remote_serial_quit_handler, remote_detach_pid)
7539         (remote_vcont_probe, remote_resume_with_hc)
7540         (send_interrupt_sequence, interrupt_query)
7541         (remote_notif_get_pending_events, fetch_register_using_p)
7542         (send_g_packet, process_g_packet, fetch_registers_using_g)
7543         (store_register_using_P, store_registers_using_G)
7544         (set_remote_traceframe, check_binary_download)
7545         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
7546         (remote_xfer_live_readonly_partial, remote_read_bytes)
7547         (remote_send_printf, remote_flash_write, readchar)
7548         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
7549         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
7550         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
7551         (extended_remote_disable_randomization, extended_remote_run)
7552         (send_environment_packet, extended_remote_environment_support)
7553         (extended_remote_set_inferior_cwd, remote_write_qxfer)
7554         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
7555         (packet_command): Now methods of ...
7556         (remote_target): ... this class.
7557         (m_remote_state) <remote_target>: New field.
7558         (struct remote_state) <stop_reply_queue,
7559         remote_async_inferior_event_token, wait_forever_enabled_p>: New
7560         fields.
7561         (remote_state::remote_state): Allocate stop_reply_queue.
7562         (remote_state): Delete global.
7563         (get_remote_state_raw): Delete.
7564         (remote_target::get_remote_state): Allocate m_remote_state on
7565         demand.
7566         (get_current_remote_target): New.
7567         (remote_ops, extended_remote_ops): Delete.
7568         (wait_forever_enabled_p, remote_async_inferior_event_token):
7569         Delete, moved to struct remote_state.
7570         (remote_target::close): Delete self.  Destruction bits split to
7571         ...
7572         (remote_target::~remote_target): ... this.
7573         (show_memory_packet_size): Adjust to use
7574         get_current_remote_target.
7575         (struct protocol_feature) <func>: Add remote_target parameter.
7576         All callers adjusted.
7577         (curr_quit_handler_target): New.
7578         (remote_serial_quit_handler): Reimplement.
7579         (remote_target::open_1): Adjust to use get_current_remote_target.
7580         Heap-allocate remote_target/extended_remote_target instances.
7581         (vcont_builder::vcont_builder): Add remote_target parameter, and
7582         save it in m_remote.  All callers adjusted.
7583         (vcont_builder::m_remote): New field.
7584         (vcont_builder::restart, vcont_builder::flush)
7585         (vcont_builder::push_action): Use it.
7586         (remote_target::commit_resume): Use it.
7587         (struct queue_iter_param) <remote>: New field.
7588         (remote_target::remove_new_fork_children): Fill in 'remote' field.
7589         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
7590         (check_pending_event_prevents_wildcard_vcont_callback)
7591         (remote_target::check_pending_events_prevent_wildcard_vcont)
7592         (remote_target::discard_pending_stop_replies)
7593         (remote_target::discard_pending_stop_replies_in_queue)
7594         (remote_target::remote_notif_remove_queued_reply): Fill in
7595         'remote' field.
7596         (remote_notif_get_pending_events): New.
7597         (remote_target::readchar, remote_target::remote_serial_write):
7598         Save/restore curr_quit_handler_target.
7599         (putpkt): New.
7600         (kill_new_fork_children): Fill in 'remote' field.
7601         (packet_command): Use get_current_remote_target, defer to
7602         remote_target method of same name.
7603         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
7604         parameter, and save it in m_remote.  All callers adjusted.
7605         (scoped_remote_fd::release): Use m_remote.
7606         (scoped_remote_fd::m_remote): New field.
7607         (remote_file_put, remote_file_get, remote_file_delete): Use
7608         get_current_remote_target, defer to remote_target method of same
7609         name.
7610         (remote_btrace_reset): Add remote_state paremeter.  Update all
7611         callers.
7612         (remote_async_inferior_event_handler). Pass down 'data'.
7613         (remote_new_objfile): Use get_current_remote_target.
7614         (remote_target::vcont_r_supported): New.
7615         (set_range_stepping): Use get_current_remote_target and
7616         remote_target::vcont_r_supported.
7617         (_initialize_remote): Don't allocate 'remote_state' and
7618         'stop_reply_queue' globals.
7619         * remote.h (struct remote_target): Forward declare.
7620         (getpkt, putpkt, remote_notif_get_pending_events): Add
7621         'remote_target' parameter.
7622
7623 2018-05-22  Pedro Alves  <palves@redhat.com>
7624
7625         * remote.c (vcont_builder): Now a class.  Make all data members
7626         private.
7627         (vcont_builder) <vcont_builder, restart, flush, push_action>:
7628         Declare methods.
7629         (vcont_builder_restart): Rename to ...
7630         (vcont_builder::restart): ... this.
7631         (vcont_builder_flush): Rename to ...
7632         (vcont_builder::flush): ... this.
7633         (vcont_builder_push_action): Rename to ...
7634         (vcont_builder::push_action): ... this.
7635         (remote_target::commit_resume): Adjust.
7636
7637 2018-05-22  Pedro Alves  <palves@redhat.com>
7638
7639         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
7640         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
7641         (get_fixed_memory_packet_size): New.
7642         (get_memory_packet_size): Use it.
7643         (set_memory_packet_size): Don't override the config size with
7644         DEFAULT_MAX_MEMORY_PACKET_SIZE.
7645         (show_memory_packet_size): Use get_fixed_memory_packet_size.
7646         Don't refer to get_memory_packet_size if not connected to a remote
7647         target.  Show "(default)" if configured size is 0.
7648
7649 2018-05-22  Pedro Alves  <palves@redhat.com>
7650
7651         * remote.c (remote_target::mourn_inferior): Move
7652         discard_pending_stop_replies call here from ...
7653         (_initialize_remote): ... here.
7654
7655 2018-05-22  Pedro Alves  <palves@redhat.com>
7656
7657         * remote.c (compare_section_command): Remove set_general_process
7658         call.
7659
7660 2018-05-22  Pedro Alves  <palves@redhat.com>
7661
7662         * remote.c (struct packet_reg, struct remote_arch_state):
7663         Move higher up in the file.
7664         (remote_state) <m_arch_states>: Store remote_arch_state values
7665         instead of remote_arch_state pointers.
7666         (remote_state::get_remote_arch_state): Adjust.
7667
7668 2018-05-22  Pedro Alves  <palves@redhat.com>
7669
7670         * remote.c: Include <unordered_map>.
7671         (remote_state): Now a class.
7672         (remote_state) <get_remote_arch_state>: Declare method.
7673         <get_remote_arch_state>: New field.
7674         (remote_arch_state) <remote_arch_state>: Declare ctor.
7675         <regs>: Now a unique_ptr.
7676         (remote_gdbarch_data_handle): Delete.
7677         (get_remote_arch_state): Delete.
7678         (remote_state::get_remote_arch_state): New.
7679         (get_remote_state): Adjust to call remote_state's
7680         get_remote_arch_state method.
7681         (init_remote_state): Delete, bits factored out to ...
7682         (remote_arch_state::remote_arch_state): ... this new method.
7683         (get_remote_packet_size, get_memory_packet_size)
7684         (process_g_packet, remote_target::fetch_registers)
7685         (remote_target::prepare_to_store, store_registers_using_G)
7686         (remote_target::store_registers, remote_target::get_trace_status):
7687         Adjust to call remote_state's method.
7688         (_initialize_remote): Remove reference to
7689         remote_gdbarch_data_handle.
7690
7691 2018-05-22  Pedro Alves  <palves@redhat.com>
7692
7693         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
7694         pread>: New method declarations.
7695         (remote_target::open_1): Adjust.
7696         (readahead_cache_invalidate): Rename to ...
7697         (readahead_cache::invalidate): ... this, and adjust to be a class
7698         method.
7699         (readahead_cache_invalidate_fd): Rename to ...
7700         (readahead_cache::invalidate_fd): ... this, and adjust to be a
7701         class method.
7702         (remote_hostio_pwrite): Adjust.
7703         (remote_hostio_pread_from_cache): Rename to ...
7704         (readahead_cache::pread): ... this, and adjust to be a class
7705         method.
7706         (remote_hostio_close): Adjust.
7707
7708 2018-05-22  Pedro Alves  <palves@redhat.com>
7709
7710         * remote.c (remote_hostio_close_cleanup): Delete.
7711         (class scoped_remote_fd): New.
7712         (remote_file_put, remote_file_get): Use it.
7713
7714 2018-05-22  Pedro Alves  <palves@redhat.com>
7715
7716         (struct vCont_action_support): Use bool and initialize all fields.
7717         (struct readahead_cache): Initialize all fields.
7718         (remote_state): Use bool and initialize all fields.
7719         (remote_state::remote_state, remote_state::~remote_state): New.
7720         (new_remote_state): Delete.
7721         (_initialize_remote): Use new to allocate remote_state.
7722
7723 2018-05-22  Pedro Alves  <palves@redhat.com>
7724             張俊芝  <zjz@zjz.name>
7725
7726         PR gdb/22973
7727         * c-exp.y: Include "c-support.h".
7728         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
7729         of tolower.  Use c_ident_is_alpha to scan names.
7730         * c-lang.c: Include "c-support.h".
7731         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
7732         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
7733         * c-support.h: New file, with bits factored out from ...
7734         * cp-name-parser.y: ... this file.
7735         Include "c-support.h".
7736         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
7737         c-support.h and renamed.
7738         (symbol_end, yylex): Adjust.
7739
7740 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7741
7742         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
7743         parameter type to CORE_ADDR.
7744         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
7745         parameter type in declaration to CORE_ADDR.
7746         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
7747         target_auxv_search to get AT_HWCAP and use the result to get the
7748         target description.
7749         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
7750         to CORE_ADDR. Remove the cast of the return value to unsigned
7751         long. Fix error predicate of target_auxv_search.
7752         (ppc_linux_nat_target::read_description): Change the type of the
7753         hwcap variable to CORE_ADDR.
7754
7755 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7756
7757         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
7758         if the size of fpscr is larger than 32 bits.
7759
7760 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7761
7762         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
7763         (ppc32_linux_vsxregmap): New global.
7764         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
7765         regcache_supply_regset, and regcache_collect_regset.
7766         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
7767         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
7768         (fetch_vsx_register, store_vsx_register): Remove.
7769         (fetch_vsx_registers): Add regno parameter. Get regset using
7770         ppc_linux_vsxregset. Use regset to supply registers.
7771         (store_vsx_registers): Add regno parameter. Get regset using
7772         ppc_linux_vsxregset. Use regset to collect registers.
7773         (fetch_register): Call fetch_vsx_registers instead of
7774         fetch_vsx_register.
7775         (store_register): Call store_vsx_registers instead of
7776         store_vsx_register.
7777         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
7778         new regno parameter.
7779         (store_ppc_registers): Call store_vsx_registers with -1 for the
7780         new regno parameter.
7781         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
7782         (ppc_collect_vsxregset): Remove.
7783
7784 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7785
7786         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
7787         offset fields.
7788         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
7789         for vector register offset fields.
7790         (ppc64_fbsd_reg_offsets): Likewise.
7791         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
7792         to vector register offset fields.
7793         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
7794         to vector register offset fields.
7795         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
7796         vector register offset fields.
7797         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
7798         initializers for vector register offset fields.
7799         (rs6000_aix64_reg_offsets): Likewise.
7800         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
7801         (ppc_supply_vrregset): Remove.
7802         (ppc_collect_vrregset): Remove.
7803         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
7804         (ppc_linux_vrregset) : New function.
7805         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
7806         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
7807         (ppc32_linux_vrregset): Remove.
7808         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
7809         and use result instead of ppc32_linux_vrregset.
7810         (ppc32_linux_reg_offsets): Remove initializers for vector register
7811         offset fields.
7812         (ppc64_linux_reg_offsets): Likewise.
7813         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
7814         * ppc-linux-nat.c: Include regset.h.
7815         (gdb_vrregset_t): Adjust comment to account for little-endian
7816         mode.
7817         (supply_vrregset, fill_vrregset): Remove.
7818         (fetch_altivec_register, store_altivec_register): Remove.
7819         (fetch_altivec_registers): Add regno parameter. Get regset using
7820         ppc_linux_vrregset. Use regset to supply registers.
7821         (store_altivec_registers): Add regno parameter. Get regset using
7822         ppc_linux_vrregset. Use regset to collect registers.
7823         (fetch_register): Call fetch_altivec_registers instead of
7824         fetch_altivec_register.
7825         (store_register): Call store_altivec_registers instead of
7826         store_altivec_register.
7827         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
7828         the new regno parameter.
7829         (store_ppc_registers): Call store_altivec_registers with -1 for
7830         the new regno parameter.
7831
7832 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7833
7834         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
7835         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
7836         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
7837         (gdb_vrregset_t): Change array type size to
7838         PPC_LINUX_SIZEOF_VRREGSET.
7839         (gdb_vsxregset_t): Change array type size to
7840         PPC_LINUX_SIZEOF_VSXREGSET.
7841         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
7842         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
7843         PPC_LINUX_SIZEOF_VSXREGSET.
7844
7845 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7846
7847         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
7848         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
7849         nat/ppc-linux.c.
7850         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
7851         ppc_linux_target_wordsize with tid.
7852         (ppc_linux_nat_target::read_description): Call ppc_linux_target
7853         wordsize with tid.
7854         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
7855         (ppc64_64bit_inferior_p): Add static and inline specifiers.
7856         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
7857         tid parameter. Remove static specifier.
7858         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
7859         (ppc_linux_target_wordsize): New declaration.
7860
7861 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7862
7863         * arch/ppc-linux-common.c: New file.
7864         * arch/ppc-linux-common.h: New file.
7865         * arch/ppc-linux-tdesc.h: New file.
7866         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
7867         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
7868         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
7869         arch/ppc-linux-tdesc.h.
7870         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
7871         arch/ppc-linux-tdesc.h.
7872         (ppc_linux_nat_target::read_description): Remove target
7873         description matching code. Fill a ppc_linux_features struct and
7874         call ppc_linux_match_description with it. Move comment about ISA
7875         2.05 to ppc-linux-common.c.
7876         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
7877         arch/ppc-linux-tdesc.h.
7878         (ppc_linux_core_read_description): Remove target description
7879         matching code. Fill a ppc_linux_features struct and call
7880         ppc_linux_match_description with it.
7881         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
7882         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
7883         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
7884         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
7885         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
7886         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
7887         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
7888         (tdesc_powerpc_e500l): Remove.
7889
7890 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
7891
7892         * ada-lang.c (catch_assert_command): Pass empty string instead
7893         of NULL for excep_string argument.
7894
7895 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
7896
7897         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
7898         the width of the requested register exceeds the width of the
7899         `ptrace' data type.
7900
7901 2018-05-21  Tom Tromey  <tom@tromey.com>
7902
7903         * printcmd.c (output_command): Remove.
7904         (output_command_const): Rename to output_command.
7905         * valprint.h (output_command): Rename from output_command_const.
7906         * tracepoint.c (trace_dump_actions): Call output_command.
7907
7908 2018-05-21  Tom Tromey  <tom@tromey.com>
7909
7910         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
7911         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
7912         * ada-lang.h (create_ada_exception_catchpoint): Update.
7913         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
7914         std::string.
7915         (create_excep_cond_exprs, ~ada_catchpoint)
7916         (should_stop_exception, print_one_exception)
7917         (print_mention_exception, print_recreate_exception): Update.
7918         (ada_get_next_arg): Remove.
7919         (catch_ada_exception_command_split): Use std::string.  Change type
7920         of "excep_string", "cond_string".
7921         (catch_ada_exception_command): Update.
7922         (create_ada_exception_catchpoint): Change type of excep_string.
7923         (ada_exception_sal): Remove excep_string parameter.
7924         (~ada_catchpoint): Remove.
7925
7926 2018-05-21  Tom Tromey  <tom@tromey.com>
7927
7928         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
7929         cleanup.
7930
7931 2018-05-21  Tom Tromey  <tom@tromey.com>
7932
7933         * ada-lang.c (ada_exception_message_1, ada_exception_message):
7934         Return unique_xmalloc_ptr.
7935         (print_it_exception): Update.
7936
7937 2018-05-21  Tom Tromey  <tom@tromey.com>
7938
7939         * tracepoint.c (trace_dump_actions): Use std::string.
7940
7941 2018-05-21  Tom Tromey  <tom@tromey.com>
7942
7943         * symfile.c (reread_symbols): Use std::string for original_name.
7944
7945 2018-05-21  Tom Tromey  <tom@tromey.com>
7946
7947         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
7948         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
7949         constructor.
7950
7951 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
7952
7953         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
7954         instance to...
7955         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
7956         * objfiles.c (get_objfile_bfd_data): Allocate
7957         objfile_per_bfd_storage with obstack_new when allocating on
7958         obstack.
7959
7960 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
7961
7962         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
7963         OBSTACK_ZALLOC.
7964         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
7965         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
7966         * mdebugread.c (mdebug_build_psymtabs): Likewise.
7967         (add_pending): Likewise.
7968         (parse_symbol): Likewise.
7969         (parse_partial_symbols): Likewise.
7970         (psymtab_to_symtab_1): Likewise.
7971         (new_psymtab): Likewise.
7972         (elfmdebug_build_psymtabs): Likewise.
7973         * minsyms.c (terminate_minimal_symbol_table): Likewise.
7974         * objfiles.c (get_objfile_bfd_data): Likewise.
7975         (objfile_register_static_link): Likewise.
7976         * psymtab.c (allocate_psymtab): Likewise.
7977         * stabsread.c (read_member_functions): Likewise.
7978         * xcoffread.c (xcoff_end_psymtab): Likewise.
7979
7980 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
7981
7982         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
7983         compiler supports std::is_trivially_constructible.
7984         * common/poison.h: Include obstack.h.
7985         (IsMallocable): Define to is_trivially_constructible if the
7986         compiler supports it, define to true_type otherwise.
7987         (xobnew): New.
7988         (XOBNEW): Redefine.
7989         (xobnewvec): New.
7990         (XOBNEWVEC): Redefine.
7991         * gdb_obstack.h (obstack_zalloc): New.
7992         (OBSTACK_ZALLOC): Redefine.
7993         (obstack_calloc): New.
7994         (OBSTACK_CALLOC): Redefine.
7995         (obstack_new): New.
7996         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
7997         (gdbarch_obstack): New declaration in gdbarch.h, definition in
7998         gdbarch.c.
7999         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
8000         obstack_calloc/obstack_zalloc.
8001         (gdbarch_obstack_zalloc): Remove.
8002         * target-descriptions.c (tdesc_data_init): Use obstack_new.
8003
8004 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8005
8006         * stack.c (backtrace_command_1): Remove useless variable int i.
8007
8008 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8009
8010         * stack.c (print_frame_info): Fix comment.
8011
8012 2018-05-18  Tom Tromey  <tom@tromey.com>
8013
8014         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
8015         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
8016         (~dwarf2_per_objfile): Update
8017         (dwarf2_get_dwz_file): Use new.
8018         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
8019         unique_ptr.
8020
8021 2018-05-18  Tom Tromey  <tom@tromey.com>
8022
8023         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
8024         unique_ptr.
8025         * dwarf2read.c (struct dwp_file): Add constructor and
8026         initializers.
8027         (open_and_init_dwp_file): Return a unique_ptr.
8028         (dwarf2_per_objfile, create_dwp_hash_table)
8029         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
8030         (lookup_dwo_unit_in_dwp): Update.
8031         (open_and_init_dwp_file, get_dwp_file): Update.
8032
8033 2018-05-18  Tom Tromey  <tom@tromey.com>
8034
8035         * dwarf2read.c (dwarf2_per_objfile): Update.
8036         (struct mapped_index): Add initializers.
8037         (dwarf2_read_index): Use new.
8038         (dw2_symtab_iter_init): Update.
8039         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
8040         unique_ptr.
8041
8042 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8043
8044         * dwarf2read.c (mapped_index) <total_size>: Remove.
8045
8046 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8047
8048         * unittests/format_pieces-selftests.c (test_format_specifier):
8049         Add ARI comments.
8050
8051 2018-05-18  Tom Tromey  <tom@tromey.com>
8052
8053         * c-typeprint.c (maybe_print_hole): New function.
8054         (c_print_type_struct_field_offset): Update.
8055         (c_type_print_base_struct_union): Call maybe_print_hole.
8056
8057 2018-05-17  Keith Seitz  <keiths@redhat.com>
8058
8059         * breakpoint.c (build_bpstat_chain): New function, moved from
8060         bpstat_stop_status.
8061         (bpstat_stop_status): Add optional parameter, `stop_chain'.
8062         If no stop chain is passed, call build_bpstat_chain to build it.
8063         * breakpoint.h (build_bpstat_chain): Declare.
8064         (bpstat_stop_status): Move documentation here from breakpoint.c.
8065         * infrun.c (handle_signal_stop): Before eliding inlined frames,
8066         build the stop chain and pass it to skip_inline_frames.
8067         Pass this stop chain to bpstat_stop_status.
8068         * inline-frame.c: Include breakpoint.h.
8069         (stopped_by_user_bp_inline_frame): New function.
8070         (skip_inline_frames): Add parameter `stop_chain'.
8071         Move documention to inline-frame.h.
8072         If non-NULL, use stopped_by_user_bp_inline_frame to determine
8073         whether the frame should be elided.
8074         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
8075         Add moved documentation and update for new parameter.
8076
8077 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
8078
8079         PR cli/14975
8080         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
8081         unittests/format_pieces-selftests.c.
8082         * common/format.h (format_piece) <operator==>: New.
8083         (format_pieces) <operator[]>: Remove.
8084         * common/format.c (format_pieces::format_pieces): Handle \e.
8085         * unittests/format_pieces-selftests.c: New.
8086
8087 2018-05-17  Tom Tromey  <tom@tromey.com>
8088
8089         PR symtab/23010:
8090         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
8091         (dw2_instantiate_symtab): Add skip_partial parameter.
8092         (dw2_find_last_source_symtab, dw2_map_expand_apply)
8093         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
8094         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
8095         (dw2_expand_symtabs_matching_one)
8096         (dw2_find_pc_sect_compunit_symtab)
8097         (dw2_debug_names_lookup_symbol)
8098         (dw2_debug_names_expand_symtabs_for_function): Update.
8099         (init_cutu_and_read_dies): Add skip_partial parameter.
8100         (process_psymtab_comp_unit, build_type_psymtabs_1)
8101         (process_skeletonless_type_unit, load_partial_comp_unit)
8102         (psymtab_to_symtab_1): Update.
8103         (load_full_comp_unit): Add skip_partial parameter.
8104         (process_imported_unit_die, dwarf2_read_addr_index)
8105         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
8106         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
8107         (read_signatured_type): Update.
8108
8109 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
8110
8111         * value.c (release_value): Remove unused variable.
8112         (record_latest_value): Likewise.
8113         (access_value_history): Likewise.
8114         (preserve_values): Likewise.
8115
8116 2018-05-17  Tom Tromey  <tom@tromey.com>
8117
8118         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
8119         Initialize.
8120
8121 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
8122
8123         PR gdb/22286
8124         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
8125         Also handle registers whose width is not a multiple of
8126         PTRACE_TYPE_RET.
8127         (linux_nat_trad_target::store_register): Likewise.
8128
8129 2018-05-16  Tom Tromey  <tom@tromey.com>
8130
8131         * gdbcore.h (core_bfd): Redefine.
8132         * corelow.c (core_target::close): Update.
8133         (core_target_open): Update.
8134         * progspace.h (struct program_space) <cbfd>: Now a
8135         gdb_bfd_ref_ptr.
8136
8137 2018-05-16  Tom Tromey  <tom@tromey.com>
8138
8139         PR cli/19551:
8140         * symfile-add-flags.h (enum symfile_add_flags)
8141         <SYMFILE_NOT_FILENAME>: New constant.
8142         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
8143         objfile name from BFD.
8144         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
8145         * minidebug.c (find_separate_debug_file_in_section): Put
8146         ".gnu_debugdata" into BFD's file name.
8147
8148 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
8149
8150         * regcache.c (regcache_read_ftype, regcache_write_ftype):
8151         Remove.
8152
8153 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
8154
8155         PR binutils/21446
8156         * aarch64-tdep.c (aarch64_analyze_prologue,
8157         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
8158         Indicate not interested in errors.
8159
8160 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8161
8162         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
8163         Supply the MIPS_ZERO_REGNUM register.
8164
8165 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8166
8167         * mips-tdep.c (mask_address_var): Make variable static.
8168
8169 2018-05-14  Tom Tromey  <tom@tromey.com>
8170
8171         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
8172
8173 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
8174
8175         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
8176         FXSAVE_ADDR for the mxcsr register.
8177
8178 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
8179
8180         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
8181
8182 2018-05-11  Pedro Alves  <palves@redhat.com>
8183
8184         * corelow.c (core_target) <core_target>: No longer inline.
8185         Initialize m_core_gdbarch, m_core_vec and build the section table
8186         here.
8187         <~core_target>: New.
8188         <core_gdbarch, get_core_register_section>: New methods.
8189         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
8190         factored out from ...
8191         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
8192         (core_ops): Delete.
8193         (sniff_core_bfd): Add gdbarch parameter.
8194         (core_close): Delete, merged into ...
8195         (core_target::close): ... here.  Delete self.
8196         (core_close_cleanup): Delete.
8197         (core_target_open): Allocate a core_target on the heap.  Use a
8198         unique_ptr instead of a cleanup.  Bits moved into the core_target
8199         ctor.  Adjust to use core_target methods instead of globals.
8200         (get_core_register_section): Rename to ...
8201         (core_target::get_core_register_section): ... this and adjust.
8202         (struct get_core_registers_cb_data): New.
8203         (get_core_registers_cb): Use it.  Use bool.
8204         (core_target::fetch_registers, core_target::files_info)
8205         (core_target::xfer_partial, core_target::read_description)
8206         (core_target::pid_to, core_target::thread_name): Adjust to
8207         reference class fields instead of globals.
8208         * target.h (struct target_ops_deleter, target_ops_up): New.
8209
8210 2018-05-11  Pedro Alves  <palves@redhat.com>
8211
8212         * corefile.c (core_file_command): Move to corelow.c.
8213         * corelow.c (the_core_target): Delete.
8214         (core_file_command): Moved from corefile.c.  Check exec_bfd
8215         instead of the_core_target.  Use target_detach instead of calling
8216         into the_core_target directly.
8217         (maybe_say_no_core_file_now): New.
8218         (core_target::detach): Use it.
8219         (_initialize_corelow): Remove references to the_core_target.
8220         * gdbcore.h (the_core_target): Delete.
8221
8222 2018-05-11  Tom Tromey  <tromey@redhat.com>
8223             Pedro Alves  <palves@redhat.com>
8224
8225         * corefile.c (core_bfd): Remove.
8226         * gdbcore.h (core_bfd): Now a macro.
8227         * progspace.h (struct program_space) <cbfd>: New field.
8228
8229 2018-05-11  Tom Tromey  <tom@tromey.com>
8230
8231         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
8232         gdb::def_vector.
8233
8234 2018-05-10  Tom Tromey  <tom@tromey.com>
8235
8236         * configure: Rebuild.
8237         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
8238
8239 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
8240
8241         PR server/23158:
8242         * regformats/regdat.sh: Adjust script, following the addition
8243         of the new expedite_regs parameter to init_target_desc.
8244
8245 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
8246     
8247         PR gdb/23127
8248         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
8249         set_gdbarch_significant_addr_bit.
8250         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
8251         set_gdbarch_significant_addr_bit.
8252         * utils.c (address_significant): Update to sign extend addr.
8253
8254 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
8255
8256         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
8257         (xtensa_linux_init_abi): Limit tdep->num_regs by
8258         tdep->num_nopriv_regs.
8259         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
8260         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
8261         not initialized.
8262
8263 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
8264
8265         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
8266
8267 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
8268
8269         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
8270         (I387_MXCSR_INIT_VAL): New constant.
8271         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
8272         buffer if it was supplied by the inferior.
8273         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
8274         (i387_xsave_get_clear_bv): New function.
8275         (i387_supply_xsave): Only read x87 control registers from the
8276         xsave buffer if the feature is enabled, and the state will have
8277         been written, otherwise, provide a suitable default.
8278         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
8279         including x87 control registers.  Update control registers if they
8280         have changed from the default value, and mark features as enabled
8281         as required.
8282         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
8283
8284 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
8285
8286         * spu-tdep.c (info_spu_event_command): Fix output formatting.
8287
8288 2018-05-07  Tom Tromey  <tom@tromey.com>
8289
8290         * configure: Rebuild.
8291         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
8292
8293 2018-05-07  Tom Tromey  <tom@tromey.com>
8294
8295         PR tdep/20362:
8296         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
8297         bit.  Use correct value for VDIV.
8298
8299 2018-05-04  Tom Tromey  <tom@tromey.com>
8300
8301         * configure: Rebuild.
8302         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
8303
8304 2018-05-04  Tom Tromey  <tom@tromey.com>
8305
8306         * linux-record.c (record_linux_system_call) <case
8307         RECORD_SYS_RECVFROM>: Add "break".
8308
8309 2018-05-04  Tom Tromey  <tom@tromey.com>
8310
8311         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
8312         Add missing "break".
8313         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
8314         Add missing "break".
8315
8316 2018-05-04  Tom Tromey  <tom@tromey.com>
8317
8318         * rs6000-tdep.c (ppc_process_record_op4)
8319         (ppc_process_record_op63): Add fall-through comment.
8320
8321 2018-05-04  Tom Tromey  <tom@tromey.com>
8322
8323         * i386-tdep.c (i386_process_record): Add fall-through comment.
8324
8325 2018-05-04  Tom Tromey  <tom@tromey.com>
8326
8327         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
8328         comment.
8329
8330 2018-05-04  Tom Tromey  <tom@tromey.com>
8331
8332         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
8333         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
8334         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
8335         comment.
8336         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
8337         comment.
8338         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
8339         comment.
8340
8341 2018-05-04  Tom Tromey  <tom@tromey.com>
8342
8343         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
8344
8345 2018-05-04  Tom Tromey  <tom@tromey.com>
8346
8347         * s390-tdep.c (s390_process_record): Fix fall-through comments.
8348         * xcoffread.c (scan_xcoff_symtab): Move comment later.
8349         * symfile.c (section_is_mapped): Fix fall-through comment.
8350         * stabsread.c (define_symbol, read_member_functions): Fix
8351         fall-through comment.
8352         * s390-linux-tdep.c (s390_process_record): Fix fall-through
8353         comment.
8354         * remote.c (remote_wait_as): Fix fall-through comment.
8355         * p-exp.y (yylex): Fix fall-through comment.
8356         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
8357         comment.
8358         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
8359         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
8360         * jv-exp.y (yylex): Fix fall-through comment.
8361         * go-exp.y (lex_one_token): Fix fall-through comment.
8362         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
8363         fall-through comment.
8364         * f-exp.y (yylex): Fix fall-through comment.
8365         * dwarf2read.c (process_die): Fix fall-through comments.
8366         * dbxread.c (process_one_symbol): Fix fall-through comment.
8367         * d-exp.y (lex_one_token): Fix fall-through comment.
8368         * cp-name-parser.y (yylex): Fix fall-through comment.
8369         * coffread.c (coff_symtab_read): Fix fall-through comment.
8370         * c-exp.y (lex_one_token): Fix fall-through comment.
8371         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
8372         comment.
8373         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
8374         comment.
8375
8376 2018-05-04  Tom Tromey  <tom@tromey.com>
8377
8378         PR python/22730:
8379         * NEWS: Mention gdb.execute change.
8380         * gdbcmd.h (execute_control_command): Don't declare.
8381         * python/python.c (execute_gdb_command): Use read_command_lines_1,
8382         execute_control_commands, execute_control_commands_to_string.
8383         * cli/cli-script.h (execute_control_commands)
8384         (execute_control_commands_to_string): Declare.
8385         (execute_control_command): Add from_tty parameter.
8386         * cli/cli-script.c (execute_control_commands)
8387         (execute_control_commands_to_string): New functions.
8388         (execute_user_command): Use execute_control_commands.
8389         (execute_control_command_1): Add "from_tty" parameter.  Update.
8390         (execute_control_command): Likewise.
8391
8392 2018-05-04  Tom Tromey  <tom@tromey.com>
8393
8394         PR python/22731:
8395         * NEWS: Mention that breakpoint commands are writable.
8396         * python/py-breakpoint.c (bppy_set_commands): New function.
8397         (breakpoint_object_getset) <"commands">: Use it.
8398
8399 2018-05-04  Tom Tromey  <tom@tromey.com>
8400
8401         * tracepoint.c (actions_command): Update.
8402         * mi/mi-cmd-break.c (mi_command_line_array)
8403         (mi_command_line_array_cnt, mi_command_line_array_ptr)
8404         (mi_read_next_line): Remove.
8405         (mi_cmd_break_commands): Update.
8406         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
8407         function_view.
8408         * cli/cli-script.c (get_command_line): Update.
8409         (process_next_line): Use function_view.  Constify.
8410         (recurse_read_control_structure, read_command_lines)
8411         (read_command_lines_1): Change argument types to function_view.
8412         (do_define_command, document_command): Update.
8413         * breakpoint.h (check_tracepoint_command): Don't declare.
8414         * breakpoint.c (check_tracepoint_command): Remove.
8415         (commands_command_1, create_tracepoint_from_upload): Update.
8416
8417 2018-05-04  Tom Tromey  <tom@tromey.com>
8418
8419         PR gdb/11750:
8420         * cli/cli-script.h (enum command_control_type) <define_control>:
8421         New constant.
8422         * cli/cli-script.c (multi_line_command_p): Handle define_control.
8423         (build_command_line, execute_control_command_1)
8424         (process_next_line): Likewise.
8425         (do_define_command): New function, extracted from define_command.
8426         (define_command): Use it.
8427
8428 2018-05-04  Tom Tromey  <tom@tromey.com>
8429
8430         * tracepoint.c (actions_command): Update.
8431         * cli/cli-script.h (read_command_lines): Update.
8432         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
8433         (MAX_TMPBUF): Remove define.
8434         (define_command): Use string_printf.
8435         (document_command): Likewise.
8436         * breakpoint.c (commands_command_1): Update.
8437
8438 2018-05-04  Tom Tromey  <tom@tromey.com>
8439
8440         * top.c (execute_command): Update.
8441         * cli/cli-script.h (print_command_lines): Now varargs.
8442         * cli/cli-script.c (print_command_lines): Now varargs.
8443         (execute_control_command_1) <case while_control, case if_control>:
8444         Update.
8445
8446 2018-05-04  Tom Tromey  <tom@tromey.com>
8447
8448         * tracepoint.c (all_tracepoint_actions): Rename from
8449         all_tracepoint_actions_and_cleanup.  Change return type.
8450         (actions_command, encode_actions_1, encode_actions)
8451         (trace_dump_actions, tdump_command): Update.
8452         * remote.c (remote_download_command_source): Update.
8453         * python/python.c (gdbpy_eval_from_control_command)
8454         (python_command, python_interactive_command): Update.
8455         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
8456         * guile/guile.c (guile_command)
8457         (gdbscm_eval_from_control_command, guile_command): Update.
8458         * compile/compile.c (compile_code_command)
8459         (compile_print_command, compile_to_object): Update.
8460         * cli/cli-script.h (struct command_lines_deleter): New.
8461         (counted_command_line): New typedef.
8462         (struct command_line): Add constructor, destructor.
8463         <body_list>: Remove.
8464         <body_list_0, body_list_1>: New members.
8465         (command_line_up): Remove typedef.
8466         (read_command_lines, read_command_lines_1, get_command_line):
8467         Update.
8468         (copy_command_lines): Don't declare.
8469         * cli/cli-script.c (build_command_line): Use "new".
8470         (get_command_line): Return counted_command_line.
8471         (print_command_lines, execute_user_command)
8472         (execute_control_command_1, while_command, if_command): Update.
8473         (realloc_body_list): Remove.
8474         (process_next_line, recurse_read_control_structure): Update.
8475         (read_command_lines, read_command_lines_1): Return counted_command_line.
8476         (free_command_lines): Use "delete".
8477         (copy_command_lines): Remove.
8478         (define_command, document_command, show_user_1): Update.
8479         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
8480         a counted_command_line.
8481         * breakpoint.h (counted_command_line): Remove typedef.
8482         (breakpoint_set_commands): Update.
8483         * breakpoint.c (check_no_tracepoint_commands)
8484         (validate_commands_for_breakpoint): Update.
8485         (breakpoint_set_commands): Change commands to be a
8486         counted_command_line.
8487         (commands_command_1, update_dprintf_command_list)
8488         (create_tracepoint_from_upload): Update.
8489
8490 2018-05-04  Tom Tromey  <tom@tromey.com>
8491
8492         * cli/cli-decode.h (cmd_list_element): New constructor.
8493         (~cmd_list_element): New destructor.
8494         (struct cmd_list_element): Add initializers.
8495         * cli/cli-decode.c (do_add_cmd): Use "new".
8496         (delete_cmd): Use "delete".
8497
8498 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
8499             Pedro Alves <palves@redhat.com>
8500
8501         PR breakpoints/19806 and support for PR external/20207.
8502         * NEWS: Mention Aarch64 watchpoint improvements.
8503         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
8504         watchpoints and PR external/20207 watchpoints.
8505         * nat/aarch64-linux-hw-point.c
8506         (kernel_supports_any_contiguous_range): New.
8507         (aarch64_watchpoint_offset): New.
8508         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
8509         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
8510         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
8511         (aarch64_align_watchpoint): New parameters aligned_offset_p and
8512         next_addr_orig_p.  Support PR external/20207 watchpoints.
8513         (aarch64_downgrade_regs): New.
8514         (aarch64_dr_state_insert_one_point): New parameters offset and
8515         addr_orig.
8516         (aarch64_dr_state_remove_one_point): Likewise.
8517         (aarch64_handle_breakpoint): Update caller.
8518         (aarch64_handle_aligned_watchpoint): Likewise.
8519         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
8520         aligned_offset.
8521         (aarch64_linux_set_debug_regs): Remove const from state.  Call
8522         aarch64_downgrade_regs.
8523         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
8524         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
8525         (DR_CONTROL_MASK): ... this.
8526         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
8527         (unsigned int aarch64_watchpoint_offset): New prototype.
8528         (aarch64_linux_set_debug_regs): Remove const from state.
8529         * utils.c (align_up, align_down): Move to ...
8530         * common/common-utils.c (align_up, align_down): ... here.
8531         * utils.h (align_up, align_down): Move to ...
8532         * common/common-utils.h (align_up, align_down): ... here.
8533
8534 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
8535
8536         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
8537         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
8538         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
8539         Re-implement to match the ABI as summarized in GCC's
8540         gcc/config/sparc/sparc.c.  All callers updated.
8541         (sparc32_store_arguments): Remove assertion.
8542
8543 2018-05-04  Tom Tromey  <tom@tromey.com>
8544
8545         * printcmd.c: Don't include tui.h.
8546         (decode_format): Use skip_spaces.
8547
8548 2018-05-04  Tom Tromey  <tom@tromey.com>
8549
8550         PR gdb/22619:
8551         * printcmd.c (last_count): New global.
8552         (x_command): Use saved count when repeating.
8553
8554 2018-05-04  Tom Tromey  <tom@tromey.com>
8555
8556         * nto-procfs.c (do_closedir_cleanup): Remove.
8557         (procfs_pidlist): Use gdb_dir_up.
8558         * procfs.c (do_closedir_cleanup): Remove.
8559         (proc_update_threads): Use gdb_dir_up.
8560         * common/filestuff.h (struct gdb_dir_deleter): New.
8561         (gdb_dir_up): New typedef.
8562
8563 2018-05-04  Tom Tromey  <tom@tromey.com>
8564
8565         * ada-lang.c (print_mention_exception): Use std::string.
8566
8567 2018-05-04  Tom Tromey  <tom@tromey.com>
8568
8569         * ada-lang.c (create_excep_cond_exprs): Update.
8570         (ada_exception_catchpoint_cond_string): Use std::string.
8571
8572 2018-05-04  Tom Tromey  <tom@tromey.com>
8573
8574         * ada-lang.c (xget_renaming_scope): Return std::string.
8575         (old_renaming_is_invisible): Update.
8576
8577 2018-05-04  Tom Tromey  <tom@tromey.com>
8578
8579         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
8580         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
8581
8582 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
8583
8584         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
8585
8586 2018-05-04  Tom Tromey  <tom@tromey.com>
8587
8588         * remote.c (remote_query_supported_append): Change type.
8589         (remote_check_symbols): Update.
8590
8591 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
8592
8593         PR gdb/11420
8594         * configure.ac: Prepend libpython.
8595         * python/python-config.py: Likewise.
8596         * configure: Regenerate.
8597
8598 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
8599
8600         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
8601
8602 2018-05-03  Pedro Alves  <palves@redhat.com>
8603
8604         * s390-linux-nat.c
8605         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
8606         override.  Write 'true' instead of '1'.
8607         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
8608         declaration.
8609
8610 2018-05-02  Pedro Alves  <palves@redhat.com>
8611
8612         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
8613         add_inf_child_target.
8614         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
8615         add_inf_child_target.
8616         * aix-thread.c (aix_thread_target_info): New.
8617         (aix_thread_target) <shortname, longname, doc>: Delete.
8618         <info>: New.
8619         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
8620         add_inf_child_target.
8621         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
8622         add_inf_child_target.
8623         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
8624         add_inf_child_target.
8625         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
8626         add_inf_child_target.
8627         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
8628         add_inf_child_target.
8629         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
8630         add_inf_child_target.
8631         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
8632         add_inf_child_target.
8633         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
8634         add_inf_child_target.
8635         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
8636         add_inf_child_target.
8637         * bfd-target.c (target_bfd_target_info): New.
8638         (target_bfd) <shortname, longname, doc>: Delete.
8639         <info>: New.
8640         * bsd-kvm.c (bsd_kvm_target_info): New.
8641         (bsd_kvm_target) <shortname, longname, doc>: Delete.
8642         <info>: New.
8643         (bsd_kvm_target::open): Rename to ...
8644         (bsd_kvm_target_open): ... this.  Adjust.
8645         * bsd-uthread.c (bsd_uthread_target_info): New.
8646         (bsd_uthread_target) <shortname, longname, doc>: Delete.
8647         <info>: New.
8648         * corefile.c (core_file_command): Adjust.
8649         * corelow.c (core_target_info): New.
8650         (core_target) <shortname, longname, doc>: Delete.
8651         <info>: New.
8652         (core_target::open): Rename to ...
8653         (core_target_open): ... this.  Adjust.
8654         * ctf.c (ctf_target_info): New.
8655         (ctf_target) <shortname, longname, doc>: Delete.
8656         <info>: New.
8657         (ctf_target::open): Rename to ...
8658         (ctf_target_open): ... this.
8659         (_initialize_ctf): Adjust.
8660         * exec.c (exec_target_info): New.
8661         (exec_target) <shortname, longname, doc>: Delete.
8662         <info>: New.
8663         (exec_target::open): Rename to ...
8664         (exec_target_open): ... this.
8665         * gdbcore.h (core_target_open): Declare.
8666         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
8667         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
8668         add_inf_child_target.
8669         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
8670         add_inf_child_target.
8671         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
8672         add_inf_child_target.
8673         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
8674         add_inf_child_target.
8675         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
8676         add_inf_child_target.
8677         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
8678         add_inf_child_target.
8679         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
8680         add_inf_child_target.
8681         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
8682         add_inf_child_target.
8683         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
8684         add_inf_child_target.
8685         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
8686         add_inf_child_target.
8687         * inf-child.c (inf_child_target_info): New.
8688         (inf_child_target::info): New.
8689         (inf_child_open_target): Remove 'target' parameter.  Use
8690         get_native_target instead.
8691         (inf_child_target::open): Delete.
8692         (add_inf_child_target): New.
8693         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
8694         Delete.
8695         <info>: New.
8696         (add_inf_child_target): Declare.
8697         (inf_child_open_target): Declare.
8698         * linux-thread-db.c (thread_db_target_info): New.
8699         (thread_db_target) <shortname, longname, doc>: Delete.
8700         <info>: New.
8701         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
8702         add_inf_child_target.
8703         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
8704         add_inf_child_target.
8705         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
8706         add_inf_child_target.
8707         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
8708         add_inf_child_target.
8709         * make-target-delegates (print_class): Adjust.
8710         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
8711         add_inf_child_target.
8712         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
8713         add_inf_child_target.
8714         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
8715         add_inf_child_target.
8716         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
8717         add_inf_child_target.
8718         * nto-procfs.c (nto_native_target_info): New.
8719         (nto_procfs_target_native) <shortname, longname, doc>:
8720         Delete.
8721         <info>: New.
8722         (nto_procfs_target_info): New.
8723         (nto_procfs_target_procfs) <shortname, longname, doc>:
8724         Delete.
8725         <info>: New.
8726         (init_procfs_targets): Adjust.
8727         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
8728         add_inf_child_target.
8729         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
8730         add_inf_child_target.
8731         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
8732         add_inf_child_target.
8733         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
8734         add_inf_child_target.
8735         * ravenscar-thread.c (ravenscar_target_info): New.
8736         (ravenscar_thread_target) <shortname, longname, doc>:
8737         Delete.
8738         <info>: New.
8739         * record-btrace.c (record_btrace_target_info):
8740         (record_btrace_target) <shortname, longname, doc>: Delete.
8741         <info>: New.
8742         (record_btrace_target::open): Rename to ...
8743         (record_btrace_target_open): ... this.  Adjust.
8744         * record-full.c (record_longname, record_doc): New.
8745         (record_full_base_target) <shortname, longname, doc>: Delete.
8746         <info>: New.
8747         (record_full_target_info): New.
8748         (record_full_target): <shortname>: Delete.
8749         <info>: New.
8750         (record_full_core_open_1, record_full_open_1): Update comments.
8751         (record_full_base_target::open): Rename to ...
8752         (record_full_open): ... this.
8753         (cmd_record_full_restore): Update.
8754         (_initialize_record_full): Update.
8755         * remote-sim.c (remote_sim_target_info): New.
8756         (gdbsim_target) <shortname, longname, doc>: Delete.
8757         <info>: New.
8758         (gdbsim_target::open): Rename to ...
8759         (gdbsim_target_open): ... this.
8760         (_initialize_remote_sim): Adjust.
8761         * remote.c (remote_doc): New.
8762         (remote_target_info): New.
8763         (remote_target) <shortname, longname, doc>: Delete.
8764         <info>: New.
8765         (extended_remote_target_info): New.
8766         (extended_remote_target) <shortname, longname, doc>: Delete.
8767         <info>: New.
8768         (remote_target::open_1): Make static.  Adjust.
8769         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
8770         * s390-linux-nat.c (_initialize_s390_nat): Use
8771         add_inf_child_target.
8772         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
8773         add_inf_child_target.
8774         * sol-thread.c (thread_db_target_info): New.
8775         (sol_thread_target) <shortname, longname, doc>: Delete.
8776         <info>: New.
8777         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
8778         add_inf_child_target.
8779         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
8780         add_inf_child_target.
8781         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
8782         add_inf_child_target.
8783         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
8784         add_inf_child_target.
8785         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
8786         add_inf_child_target.
8787         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
8788         add_inf_child_target.
8789         * spu-linux-nat.c (_initialize_spu_nat): Use
8790         add_inf_child_target.
8791         * spu-multiarch.c (spu_multiarch_target_info): New.
8792         (spu_multiarch_target) <shortname, longname, doc>: Delete.
8793         <info>: New.
8794         * target-delegates.c: Regenerate.
8795         * target.c: Include <unordered_map>.
8796         (target_ops_p): Delete.
8797         (DEF_VEC_P(target_ops_p)): Delete.
8798         (target_factories): New.
8799         (test_target_info): New.
8800         (test_target_ops::info): New.
8801         (open_target): Adjust to use target_factories.
8802         (add_target_with_completer): Rename to ...
8803         (add_target): ... this.  Change prototype.  Register target_info
8804         and open callback in target_factories.  Register target_info in
8805         command context instead of target_ops.
8806         (add_target): Delete old implementation.
8807         (add_deprecated_target_alias): Change prototype.  Adjust.
8808         (the_native_target): New.
8809         (set_native_target, get_native_target): New.
8810         (find_default_run_target): Use the_native_target.
8811         (find_attach_target, find_run_target): Simplify.
8812         (target_ops::open): Delete.
8813         (dummy_target_info): New.
8814         (dummy_target::shortname, dummy_target::longname)
8815         (dummy_target::doc): Delete.
8816         (dummy_target::info): New.
8817         (debug_target::shortname, debug_target::longname)
8818         (debug_target::doc): Delete.
8819         (debug_target::info): New.
8820         * target.h (struct target_info): New.
8821         (target_ops::~target_ops): Add comment.
8822         (target_ops::info): New.
8823         (target_ops::shortname, target_ops::longname, target_ops::doc): No
8824         longer virtual.  Implement in terms of target_info.
8825         (set_native_target, get_native_target): Declare.
8826         (target_open_ftype): New.
8827         (add_target, add_target_with_completer)
8828         (add_deprecated_target_alias): Change prototype.
8829         (test_target) <shortname, longname, doc>: Delete.
8830         <info>: New.
8831         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
8832         add_inf_child_target.
8833         * tracefile-tfile.c (tfile_target_info): New.
8834         (tfile_target) <shortname, longname, doc>: Delete.
8835         <info>: New.
8836         (tfile_target::open): Rename to ...
8837         (tfile_target_open): ... this.
8838         (_initialize_tracefile_tfile): Adjust.
8839         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
8840         add_inf_child_target.
8841         * windows-nat.c (_initialize_windows_nat): Use
8842         add_inf_child_target.
8843         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
8844         add_inf_child_target.
8845
8846 2018-05-02  Pedro Alves  <palves@redhat.com>
8847
8848         * linux-nat.h (linux_nat_target) <low_new_thread,
8849         low_delete_thread, low_new_fork, low_forget_process,
8850         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
8851         New virtual methods.
8852         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
8853         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
8854         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
8855         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
8856         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
8857         Delete.
8858         * linux-fork.c (delete_fork): Adjust to call low method.
8859         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
8860         (linux_nat_new_fork, linux_nat_forget_process_hook)
8861         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
8862         (linux_nat_status_is_event):
8863         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
8864         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
8865         to call low method.
8866         (sigtrap_is_event): Rename to ...
8867         (linux_nat_target::low_status_is_event): ... this.
8868         (linux_nat_set_status_is_event): Delete.
8869         (save_stop_reason, linux_nat_wait_1)
8870         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
8871         low methods.
8872         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
8873         (linux_nat_set_new_fork, linux_nat_set_forget_process)
8874         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
8875         (linux_nat_set_prepare_to_resume): Delete.
8876         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
8877         low virtual methods.
8878         * amd64-linux-nat.c: Likewise.
8879         * arm-linux-nat.c: Likewise.
8880         * i386-linux-nat.c: Likewise.
8881         * ia64-linux-nat.c: Likewise.
8882         * mips-linux-nat.c: Likewise.
8883         * ppc-linux-nat.c: Likewise.
8884         * s390-linux-nat.c: Likewise.
8885         * sparc64-linux-nat.c: Likewise.
8886         * x86-linux-nat.c: Likewise.
8887         * x86-linux-nat.h: Include "nat/x86-linux.h".
8888         (x86_linux_nat_target) <low_new_fork, low_forget_process,
8889         low_prepare_to_resume, low_new_thread, low_delete_thread>:
8890         Override methods.
8891
8892 2018-05-02  Pedro Alves  <palves@redhat.com>
8893
8894         * target.h (target_ops)
8895         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
8896         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
8897         stopped_by_watchpoint, have_continuable_watchpoint,
8898         stopped_data_address, watchpoint_addr_within_range,
8899         can_accel_watchpoint_condition, can_run, thread_alive,
8900         has_all_memory, has_memory, has_stack, has_registers,
8901         has_execution, can_async_p, is_async_p, supports_non_stop,
8902         always_non_stop_p, can_execute_reverse, supports_multi_process,
8903         supports_enable_disable_tracepoint,
8904         supports_disable_randomization, supports_string_tracing,
8905         supports_evaluation_of_breakpoint_conditions,
8906         can_run_breakpoint_commands, filesystem_is_local,
8907         can_download_tracepoint, get_trace_state_variable_value,
8908         set_trace_notes, get_tib_address, use_agent, can_use_agent,
8909         record_is_replaying, record_will_replay,
8910         augmented_libraries_svr4_read>: Adjust to return bool.
8911         * aarch64-linux-nat.c: All implementations adjusted.
8912         * aix-thread.c: All implementations adjusted.
8913         * arm-linux-nat.c: All implementations adjusted.
8914         * breakpoint.c: All implementations adjusted.
8915         * bsd-kvm.c: All implementations adjusted.
8916         * bsd-uthread.c: All implementations adjusted.
8917         * corelow.c: All implementations adjusted.
8918         * ctf.c: All implementations adjusted.
8919         * darwin-nat.c: All implementations adjusted.
8920         * darwin-nat.h: All implementations adjusted.
8921         * exec.c: All implementations adjusted.
8922         * fbsd-nat.c: All implementations adjusted.
8923         * fbsd-nat.h: All implementations adjusted.
8924         * gnu-nat.c: All implementations adjusted.
8925         * gnu-nat.h: All implementations adjusted.
8926         * go32-nat.c: All implementations adjusted.
8927         * ia64-linux-nat.c: All implementations adjusted.
8928         * inf-child.c: All implementations adjusted.
8929         * inf-child.h: All implementations adjusted.
8930         * inf-ptrace.c: All implementations adjusted.
8931         * inf-ptrace.h: All implementations adjusted.
8932         * linux-nat.c: All implementations adjusted.
8933         * linux-nat.h: All implementations adjusted.
8934         * mips-linux-nat.c: All implementations adjusted.
8935         * nto-procfs.c: All implementations adjusted.
8936         * ppc-linux-nat.c: All implementations adjusted.
8937         * procfs.c: All implementations adjusted.
8938         * ravenscar-thread.c: All implementations adjusted.
8939         * record-btrace.c: All implementations adjusted.
8940         * record-full.c: All implementations adjusted.
8941         * remote-sim.c: All implementations adjusted.
8942         * remote.c: All implementations adjusted.
8943         * s390-linux-nat.c: All implementations adjusted.
8944         * sol-thread.c: All implementations adjusted.
8945         * spu-multiarch.c: All implementations adjusted.
8946         * target-delegates.c: All implementations adjusted.
8947         * target.c: All implementations adjusted.
8948         * target.h: All implementations adjusted.
8949         * tracefile-tfile.c: All implementations adjusted.
8950         * tracefile.c: All implementations adjusted.
8951         * tracefile.h: All implementations adjusted.
8952         * windows-nat.c: All implementations adjusted.
8953         * x86-linux-nat.h: All implementations adjusted.
8954         * x86-nat.h: All implementations adjusted.
8955
8956 2018-05-02  Pedro Alves  <palves@redhat.com>
8957
8958         * make-target-delegates (scan_target_h): Don't trim lines here.
8959         Replace sequences of tabs and/or whitespace with a single
8960         whitespace.
8961         (top level, parsing methods): Trim each line before processing it
8962         here.
8963
8964 2018-05-02  Pedro Alves  <palves@redhat.com>
8965             John Baldwin  <jhb@freebsd.org>
8966
8967         * target.h (enum strata) <debug_stratum>: New.
8968         (struct target_ops) <all delegation methods>: Replace by C++
8969         virtual methods, and drop "to_" prefix.  All references updated
8970         throughout.
8971         <to_shortname, to_longname, to_doc, to_data,
8972         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
8973         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
8974         virtual methods.  All references updated throughout.
8975         <can_attach, supports_terminal_ours, can_create_inferior,
8976         get_thread_control_capabilities, attach_no_wait>: New
8977         virtual methods.
8978         <insert_breakpoint, remove_breakpoint>: Now
8979         TARGET_DEFAULT_NORETURN methods.
8980         <info_proc>: Now returns bool.
8981         <to_magic>: Delete.
8982         (OPS_MAGIC): Delete.
8983         (current_target): Delete.  All references replaced by references
8984         to ...
8985         (target_stack): ... this.  New.
8986         (target_shortname, target_longname): Adjust.
8987         (target_can_run): Now a function declaration.
8988         (default_child_has_all_memory, default_child_has_memory)
8989         (default_child_has_stack, default_child_has_registers)
8990         (default_child_has_execution): Remove target_ops parameter.
8991         (complete_target_initialization): Delete.
8992         (memory_breakpoint_target): New template class.
8993         (test_target_ops): Refactor as a C++ class with virtual methods.
8994         * make-target-delegates (NAME_PART): Tighten.
8995         (POINTER_PART, CP_SYMBOL): New.
8996         (SIMPLE_RETURN_PART): Reimplement.
8997         (VEC_RETURN_PART): Expect less.
8998         (RETURN_PART, VIRTUAL_PART): New.
8999         (METHOD): Adjust to C++ virtual methods.
9000         (scan_target_h): Remove reference to C99.
9001         (dname): Output "target_ops::" prefix.
9002         (write_function_header): Adjust to output a C++ class method.
9003         (write_declaration): New.
9004         (write_delegator): Adjust to output a C++ class method.
9005         (tdname): Output "dummy_target::" prefix.
9006         (write_tdefault, write_debugmethod): Adjust to output a C++ class
9007         method.
9008         (tdefault_names, debug_names): Delete.
9009         (return_types, tdefaults, styles, argtypes_array): New.
9010         (top level): All methods are delegators.
9011         (print_class): New.
9012         (top level): Print dummy_target and debug_target classes.
9013         * target-delegates.c: Regenerate.
9014         * target-debug.h (target_debug_print_enum_info_proc_what)
9015         (target_debug_print_thread_control_capabilities)
9016         (target_debug_print_thread_info_p): New.
9017         * target.c (dummy_target): Delete.
9018         (the_dummy_target, the_debug_target): New.
9019         (target_stack): Now extern.
9020         (set_targetdebug): Push/unpush debug target.
9021         (default_child_has_all_memory, default_child_has_memory)
9022         (default_child_has_stack, default_child_has_registers)
9023         (default_child_has_execution): Remove target_ops parameter.
9024         (complete_target_initialization): Delete.
9025         (add_target_with_completer): No longer call
9026         complete_target_initialization.
9027         (target_supports_terminal_ours): Use regular delegation.
9028         (update_current_target): Delete.
9029         (push_target): No longer check magic number.  Don't call
9030         update_current_target.
9031         (unpush_target): Don't call update_current_target.
9032         (target_is_pushed): No longer check magic number.
9033         (target_require_runnable): Skip for all stratums over
9034         process_stratum.
9035         (target_ops::info_proc): New.
9036         (target_info_proc): Use find_target_at and
9037         find_default_run_target.
9038         (target_supports_disable_randomization): Use regular delegation.
9039         (target_get_osdata): Use find_target_at.
9040         (target_ops::open, target_ops::close, target_ops::can_attach)
9041         (target_ops::attach, target_ops::can_create_inferior)
9042         (target_ops::create_inferior, target_ops::can_run)
9043         (target_can_run): New.
9044         (default_fileio_target): Use regular delegation.
9045         (target_ops::fileio_open, target_ops::fileio_pwrite)
9046         (target_ops::fileio_pread, target_ops::fileio_fstat)
9047         (target_ops::fileio_close, target_ops::fileio_unlink)
9048         (target_ops::fileio_readlink): New.
9049         (target_fileio_open_1, target_fileio_unlink)
9050         (target_fileio_readlink): Always call the target method.  Handle
9051         FILEIO_ENOSYS.
9052         (return_zero, return_zero_has_execution): Delete.
9053         (init_dummy_target): Delete.
9054         (dummy_target::dummy_target, dummy_target::shortname)
9055         (dummy_target::longname, dummy_target::doc)
9056         (debug_target::debug_target, debug_target::shortname)
9057         (debug_target::longname, debug_target::doc): New.
9058         (target_supports_delete_record): Use regular delegation.
9059         (setup_target_debug): Delete.
9060         (maintenance_print_target_stack): Skip debug_stratum.
9061         (initialize_targets): Instantiate the_dummy_target and
9062         the_debug_target.
9063         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
9064         use target_stack.
9065         (target_auxv_search, fprint_target_auxv): Adjust.
9066         (info_auxv_command): Adjust to use target_stack.
9067         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
9068         * exceptions.c (print_flush): Handle a NULL target_stack.
9069         * regcache.c (target_ops_no_register): Refactor as class with
9070         virtual methods.
9071
9072         * exec.c (exec_target): New class.
9073         (exec_ops): Now an exec_target.
9074         (exec_open, exec_close_1, exec_get_section_table)
9075         (exec_xfer_partial, exec_files_info, exec_has_memory)
9076         (exec_make_note_section): Refactor as exec_target methods.
9077         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
9078         Delete.
9079         (exec_target::find_memory_regions): New.
9080         (_initialize_exec): Don't call init_exec_ops.
9081         * gdbcore.h (exec_file_clear): Delete.
9082
9083         * corefile.c (core_target): Delete.
9084         (core_file_command): Adjust.
9085         * corelow.c (core_target): New class.
9086         (the_core_target): New.
9087         (core_close): Remove target_ops parameter.
9088         (core_close_cleanup): Adjust.
9089         (core_target::close): New.
9090         (core_open, core_detach, get_core_registers, core_files_info)
9091         (core_xfer_partial, core_thread_alive, core_read_description)
9092         (core_pid_to_str, core_thread_name, core_has_memory)
9093         (core_has_stack, core_has_registers, core_info_proc): Rework as
9094         core_target methods.
9095         (ignore, core_remove_breakpoint, init_core_ops): Delete.
9096         (_initialize_corelow): Initialize the_core_target.
9097         * gdbcore.h (core_target): Delete.
9098         (the_core_target): New.
9099
9100         * ctf.c: (ctf_target): New class.
9101         (ctf_ops): Now a ctf_target.
9102         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
9103         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
9104         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
9105         methods.
9106         (init_ctf_ops): Delete.
9107         (_initialize_ctf): Don't call it.
9108         * tracefile-tfile.c (tfile_target): New class.
9109         (tfile_ops): Now a tfile_target.
9110         (tfile_open, tfile_close, tfile_files_info)
9111         (tfile_get_tracepoint_status, tfile_trace_find)
9112         (tfile_fetch_registers, tfile_xfer_partial)
9113         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
9114         Refactor as tfile_target methods.
9115         (tfile_xfer_partial_features): Remove target_ops parameter.
9116         (init_tfile_ops): Delete.
9117         (_initialize_tracefile_tfile): Don't call it.
9118         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
9119         (tracefile_has_stack, tracefile_has_registers)
9120         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
9121         tracefile_target methods.
9122         (init_tracefile_ops): Delete.
9123         (tracefile_target::tracefile_target): New.
9124         * tracefile.h: Include "target.h".
9125         (tracefile_target): New class.
9126         (init_tracefile_ops): Delete.
9127
9128         * spu-multiarch.c (spu_multiarch_target): New class.
9129         (spu_ops): Now a spu_multiarch_target.
9130         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
9131         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
9132         (spu_search_memory, spu_mourn_inferior): Refactor as
9133         spu_multiarch_target methods.
9134         (init_spu_ops): Delete.
9135         (_initialize_spu_multiarch): Remove references to init_spu_ops,
9136         complete_target_initialization.
9137
9138         * ravenscar-thread.c (ravenscar_thread_target): New class.
9139         (ravenscar_ops): Now a ravenscar_thread_target.
9140         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
9141         (ravenscar_thread_alive, ravenscar_pid_to_str)
9142         (ravenscar_fetch_registers, ravenscar_store_registers)
9143         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
9144         (ravenscar_stopped_by_hw_breakpoint)
9145         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
9146         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
9147         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
9148         methods.
9149         (init_ravenscar_thread_ops): Delete.
9150         (_initialize_ravenscar): Remove references to
9151         init_ravenscar_thread_ops and complete_target_initialization.
9152
9153         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
9154         (bsd_uthread_target): New class.
9155         (bsd_uthread_ops): Now a bsd_uthread_target.
9156         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
9157         (bsd_uthread_close, bsd_uthread_mourn_inferior)
9158         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
9159         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
9160         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
9161         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
9162         (bsd_uthread_target): Delete function.
9163         (_initialize_bsd_uthread): Remove reference to
9164         complete_target_initialization.
9165
9166         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
9167         (target_bfd): ... this new class.
9168         (target_bfd_xfer_partial, target_bfd_get_section_table)
9169         (target_bfd_close): Refactor as target_bfd methods.
9170         (target_bfd::~target_bfd): New.
9171         (target_bfd_reopen): Adjust.
9172         (target_bfd::close): New.
9173
9174         * record-btrace.c (record_btrace_target): New class.
9175         (record_btrace_ops): Now a record_btrace_target.
9176         (record_btrace_open, record_btrace_stop_recording)
9177         (record_btrace_disconnect, record_btrace_close)
9178         (record_btrace_async, record_btrace_info)
9179         (record_btrace_insn_history, record_btrace_insn_history_range)
9180         (record_btrace_insn_history_from, record_btrace_call_history)
9181         (record_btrace_call_history_range)
9182         (record_btrace_call_history_from, record_btrace_record_method)
9183         (record_btrace_is_replaying, record_btrace_will_replay)
9184         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
9185         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
9186         (record_btrace_store_registers, record_btrace_prepare_to_store)
9187         (record_btrace_to_get_unwinder)
9188         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
9189         (record_btrace_commit_resume, record_btrace_wait)
9190         (record_btrace_stop, record_btrace_can_execute_reverse)
9191         (record_btrace_stopped_by_sw_breakpoint)
9192         (record_btrace_supports_stopped_by_sw_breakpoint)
9193         (record_btrace_stopped_by_hw_breakpoint)
9194         (record_btrace_supports_stopped_by_hw_breakpoint)
9195         (record_btrace_update_thread_list, record_btrace_thread_alive)
9196         (record_btrace_goto_begin, record_btrace_goto_end)
9197         (record_btrace_goto, record_btrace_stop_replaying_all)
9198         (record_btrace_execution_direction)
9199         (record_btrace_prepare_to_generate_core)
9200         (record_btrace_done_generating_core): Refactor as
9201         record_btrace_target methods.
9202         (init_record_btrace_ops): Delete.
9203         (_initialize_record_btrace): Remove reference to
9204         init_record_btrace_ops.
9205         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
9206         the execution_direction global.
9207         (record_full_base_target, record_full_target)
9208         (record_full_core_target): New classes.
9209         (record_full_ops): Now a record_full_target.
9210         (record_full_core_ops): Now a record_full_core_target.
9211         (record_full_target::detach, record_full_target::disconnect)
9212         (record_full_core_target::disconnect)
9213         (record_full_target::mourn_inferior, record_full_target::kill):
9214         New.
9215         (record_full_open, record_full_close, record_full_async): Refactor
9216         as methods of the record_full_base_target class.
9217         (record_full_resume, record_full_commit_resume): Refactor
9218         as methods of the record_full_target class.
9219         (record_full_wait, record_full_stopped_by_watchpoint)
9220         (record_full_stopped_data_address)
9221         (record_full_stopped_by_sw_breakpoint)
9222         (record_full_supports_stopped_by_sw_breakpoint)
9223         (record_full_stopped_by_hw_breakpoint)
9224         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
9225         methods of the record_full_base_target class.
9226         (record_full_store_registers, record_full_xfer_partial)
9227         (record_full_insert_breakpoint, record_full_remove_breakpoint):
9228         Refactor as methods of the record_full_target class.
9229         (record_full_can_execute_reverse, record_full_get_bookmark)
9230         (record_full_goto_bookmark, record_full_execution_direction)
9231         (record_full_record_method, record_full_info, record_full_delete)
9232         (record_full_is_replaying, record_full_will_replay)
9233         (record_full_goto_begin, record_full_goto_end, record_full_goto)
9234         (record_full_stop_replaying): Refactor as methods of the
9235         record_full_base_target class.
9236         (record_full_core_resume, record_full_core_kill)
9237         (record_full_core_fetch_registers)
9238         (record_full_core_prepare_to_store)
9239         (record_full_core_store_registers, record_full_core_xfer_partial)
9240         (record_full_core_insert_breakpoint)
9241         (record_full_core_remove_breakpoint)
9242         (record_full_core_has_execution): Refactor
9243         as methods of the record_full_core_target class.
9244         (record_full_base_target::supports_delete_record): New.
9245         (init_record_full_ops): Delete.
9246         (init_record_full_core_ops): Delete.
9247         (record_full_save): Refactor as method of the
9248         record_full_base_target class.
9249         (_initialize_record_full): Remove references to
9250         init_record_full_ops and init_record_full_core_ops.
9251
9252         * remote.c (remote_target, extended_remote_target): New classes.
9253         (remote_ops): Now a remote_target.
9254         (extended_remote_ops): Now an extended_remote_target.
9255         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
9256         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
9257         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
9258         (remote_pass_signals, remote_set_syscall_catchpoint)
9259         (remote_program_signals, )
9260         (remote_thread_always_alive): Remove target_ops parameter.
9261         (remote_thread_alive, remote_thread_name)
9262         (remote_update_thread_list, remote_threads_extra_info)
9263         (remote_static_tracepoint_marker_at)
9264         (remote_static_tracepoint_markers_by_strid)
9265         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
9266         (remote_open): Refactor as methods of remote_target.
9267         (extended_remote_open, extended_remote_detach)
9268         (extended_remote_attach, extended_remote_post_attach):
9269         (extended_remote_supports_disable_randomization)
9270         (extended_remote_create_inferior): : Refactor as method of
9271         extended_remote_target.
9272         (remote_set_permissions, remote_open_1, remote_detach)
9273         (remote_follow_fork, remote_follow_exec, remote_disconnect)
9274         (remote_resume, remote_commit_resume, remote_stop)
9275         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
9276         (remote_terminal_ours, remote_wait, remote_fetch_registers)
9277         (remote_prepare_to_store, remote_store_registers)
9278         (remote_flash_erase, remote_flash_done, remote_files_info)
9279         (remote_kill, remote_mourn, remote_insert_breakpoint)
9280         (remote_remove_breakpoint, remote_insert_watchpoint)
9281         (remote_watchpoint_addr_within_range)
9282         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
9283         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
9284         (remote_supports_stopped_by_sw_breakpoint)
9285         (remote_stopped_by_hw_breakpoint)
9286         (remote_supports_stopped_by_hw_breakpoint)
9287         (remote_stopped_by_watchpoint, remote_stopped_data_address)
9288         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
9289         (remote_verify_memory): Refactor as methods of remote_target.
9290         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
9291         parameter.
9292         (remote_xfer_partial, remote_get_memory_xfer_limit)
9293         (remote_search_memory, remote_rcmd, remote_memory_map)
9294         (remote_pid_to_str, remote_get_thread_local_address)
9295         (remote_get_tib_address, remote_read_description): Refactor as
9296         methods of remote_target.
9297         (remote_target::fileio_open, remote_target::fileio_pwrite)
9298         (remote_target::fileio_pread, remote_target::fileio_close): New.
9299         (remote_hostio_readlink, remote_hostio_fstat)
9300         (remote_filesystem_is_local, remote_can_execute_reverse)
9301         (remote_supports_non_stop, remote_supports_disable_randomization)
9302         (remote_supports_multi_process, remote_supports_cond_breakpoints)
9303         (remote_supports_enable_disable_tracepoint)
9304         (remote_supports_string_tracing)
9305         (remote_can_run_breakpoint_commands, remote_trace_init)
9306         (remote_download_tracepoint, remote_can_download_tracepoint)
9307         (remote_download_trace_state_variable, remote_enable_tracepoint)
9308         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
9309         (remote_trace_start, remote_get_trace_status)
9310         (remote_get_tracepoint_status, remote_trace_stop)
9311         (remote_trace_find, remote_get_trace_state_variable_value)
9312         (remote_save_trace_data, remote_get_raw_trace_data)
9313         (remote_set_disconnected_tracing, remote_core_of_thread)
9314         (remote_set_circular_trace_buffer, remote_traceframe_info)
9315         (remote_get_min_fast_tracepoint_insn_len)
9316         (remote_set_trace_buffer_size, remote_set_trace_notes)
9317         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
9318         (remote_disable_btrace, remote_teardown_btrace)
9319         (remote_read_btrace, remote_btrace_conf)
9320         (remote_augmented_libraries_svr4_read, remote_load)
9321         (remote_pid_to_exec_file, remote_can_do_single_step)
9322         (remote_execution_direction, remote_thread_handle_to_thread_info):
9323         Refactor as methods of remote_target.
9324         (init_remote_ops, init_extended_remote_ops): Delete.
9325         (remote_can_async_p, remote_is_async_p, remote_async)
9326         (remote_thread_events, remote_upload_tracepoints)
9327         (remote_upload_trace_state_variables): Refactor as methods of
9328         remote_target.
9329         (_initialize_remote): Remove references to init_remote_ops and
9330         init_extended_remote_ops.
9331
9332         * remote-sim.c (gdbsim_target): New class.
9333         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
9334         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
9335         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
9336         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
9337         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
9338         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
9339         Refactor as methods of gdbsim_target.
9340         (gdbsim_ops): Now a gdbsim_target.
9341         (init_gdbsim_ops): Delete.
9342         (gdbsim_cntrl_c): Adjust.
9343         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
9344
9345         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
9346         (the_amd64_linux_nat_target): New.
9347         (amd64_linux_fetch_inferior_registers)
9348         (amd64_linux_store_inferior_registers): Refactor as methods of
9349         amd64_linux_nat_target.
9350         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
9351         * i386-linux-nat.c: Don't include "linux-nat.h".
9352         (i386_linux_nat_target): New class.
9353         (the_i386_linux_nat_target): New.
9354         (i386_linux_fetch_inferior_registers)
9355         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
9356         as methods of i386_linux_nat_target.
9357         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
9358         * inf-child.c (inf_child_ops): Delete.
9359         (inf_child_fetch_inferior_registers)
9360         (inf_child_store_inferior_registers): Delete.
9361         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
9362         methods of inf_child_target.
9363         (inf_child_target::supports_terminal_ours)
9364         (inf_child_target::terminal_init)
9365         (inf_child_target::terminal_inferior)
9366         (inf_child_target::terminal_ours_for_output)
9367         (inf_child_target::terminal_ours, inf_child_target::interrupt)
9368         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
9369         New.
9370         (inf_child_open, inf_child_disconnect, inf_child_close)
9371         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
9372         (inf_child_post_startup_inferior, inf_child_can_run)
9373         (inf_child_pid_to_exec_file): Refactor as methods of
9374         inf_child_target.
9375         (inf_child_follow_fork): Delete.
9376         (inf_child_target::can_create_inferior)
9377         (inf_child_target::can_attach): New.
9378         (inf_child_target::has_all_memory, inf_child_target::has_memory)
9379         (inf_child_target::has_stack, inf_child_target::has_registers)
9380         (inf_child_target::has_execution): New.
9381         (inf_child_fileio_open, inf_child_fileio_pwrite)
9382         (inf_child_fileio_pread, inf_child_fileio_fstat)
9383         (inf_child_fileio_close, inf_child_fileio_unlink)
9384         (inf_child_fileio_readlink, inf_child_use_agent)
9385         (inf_child_can_use_agent): Refactor as methods of
9386         inf_child_target.
9387         (return_zero, inf_child_target): Delete.
9388         (inf_child_target::inf_child_target): New.
9389         * inf-child.h: Include "target.h".
9390         (inf_child_target): Delete function prototype.
9391         (inf_child_target): New class.
9392         (inf_child_open_target, inf_child_mourn_inferior)
9393         (inf_child_maybe_unpush_target): Delete.
9394         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
9395         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
9396         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
9397         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
9398         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
9399         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
9400         (inf_ptrace_wait, inf_ptrace_xfer_partial)
9401         (inf_ptrace_thread_alive, inf_ptrace_files_info)
9402         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
9403         methods of inf_ptrace_target.
9404         (inf_ptrace_target): Delete function.
9405         * inf-ptrace.h: Include "inf-child.h".
9406         (inf_ptrace_target): Delete function declaration.
9407         (inf_ptrace_target): New class.
9408         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
9409         * linux-nat.c (linux_target): New.
9410         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
9411         (linux_nat_target::~linux_nat_target): New.
9412         (linux_child_post_attach, linux_child_post_startup_inferior)
9413         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
9414         (linux_child_remove_fork_catchpoint)
9415         (linux_child_insert_vfork_catchpoint)
9416         (linux_child_remove_vfork_catchpoint)
9417         (linux_child_insert_exec_catchpoint)
9418         (linux_child_remove_exec_catchpoint)
9419         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
9420         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
9421         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
9422         (linux_nat_stopped_data_address)
9423         (linux_nat_stopped_by_sw_breakpoint)
9424         (linux_nat_supports_stopped_by_sw_breakpoint)
9425         (linux_nat_stopped_by_hw_breakpoint)
9426         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
9427         (linux_nat_kill, linux_nat_mourn_inferior)
9428         (linux_nat_xfer_partial, linux_nat_thread_alive)
9429         (linux_nat_update_thread_list, linux_nat_pid_to_str)
9430         (linux_nat_thread_name, linux_child_pid_to_exec_file)
9431         (linux_child_static_tracepoint_markers_by_strid)
9432         (linux_nat_is_async_p, linux_nat_can_async_p)
9433         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
9434         (linux_nat_supports_multi_process)
9435         (linux_nat_supports_disable_randomization, linux_nat_async)
9436         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
9437         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
9438         (linux_nat_fileio_open, linux_nat_fileio_readlink)
9439         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
9440         methods of linux_nat_target.
9441         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
9442         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
9443         parameter.
9444         (check_stopped_by_watchpoint): Adjust.
9445         (linux_xfer_partial): Delete.
9446         (linux_target_install_ops, linux_target, linux_nat_add_target):
9447         Delete.
9448         (linux_nat_target::linux_nat_target): New.
9449         * linux-nat.h: Include "inf-ptrace.h".
9450         (linux_nat_target): New.
9451         (linux_target, linux_target_install_ops, linux_nat_add_target):
9452         Delete function declarations.
9453         (linux_target): Declare global.
9454         * linux-thread-db.c (thread_db_target): New.
9455         (thread_db_target::thread_db_target): New.
9456         (thread_db_ops): Delete.
9457         (the_thread_db_target): New.
9458         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
9459         (thread_db_update_thread_list, thread_db_pid_to_str)
9460         (thread_db_extra_thread_info)
9461         (thread_db_thread_handle_to_thread_info)
9462         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
9463         (thread_db_resume): Refactor as methods of thread_db_target.
9464         (init_thread_db_ops): Delete.
9465         (_initialize_thread_db): Remove reference to init_thread_db_ops.
9466         * x86-linux-nat.c: Don't include "linux-nat.h".
9467         (super_post_startup_inferior): Delete.
9468         (x86_linux_nat_target::~x86_linux_nat_target): New.
9469         (x86_linux_child_post_startup_inferior)
9470         (x86_linux_read_description, x86_linux_enable_btrace)
9471         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
9472         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
9473         methods of x86_linux_nat_target.
9474         (x86_linux_create_target): Delete.  Bits folded ...
9475         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
9476         pointer.
9477         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
9478         (x86_linux_nat_target): New class.
9479         (x86_linux_create_target): Delete.
9480         (x86_linux_add_target): Now takes a linux_nat_target pointer.
9481         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
9482         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
9483         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
9484         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
9485         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
9486         make extern.
9487         (x86_use_watchpoints): Delete.
9488         * x86-nat.h: Include "breakpoint.h" and "target.h".
9489         (x86_use_watchpoints): Delete.
9490         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
9491         (x86_stopped_by_watchpoint, x86_stopped_data_address)
9492         (x86_insert_watchpoint, x86_remove_watchpoint)
9493         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
9494         (x86_stopped_by_hw_breakpoint): New declarations.
9495         (x86_nat_target): New template class.
9496
9497         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
9498         (the_ppc_linux_nat_target): New.
9499         (ppc_linux_fetch_inferior_registers)
9500         (ppc_linux_can_use_hw_breakpoint)
9501         (ppc_linux_region_ok_for_hw_watchpoint)
9502         (ppc_linux_ranged_break_num_registers)
9503         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
9504         (ppc_linux_insert_mask_watchpoint)
9505         (ppc_linux_remove_mask_watchpoint)
9506         (ppc_linux_can_accel_watchpoint_condition)
9507         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
9508         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
9509         (ppc_linux_watchpoint_addr_within_range)
9510         (ppc_linux_masked_watch_num_registers)
9511         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
9512         (ppc_linux_read_description): Refactor as methods of
9513         ppc_linux_nat_target.
9514         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
9515
9516         * procfs.c (procfs_xfer_partial): Delete forward declaration.
9517         (procfs_target): New class.
9518         (the_procfs_target): New.
9519         (procfs_target): Delete function.
9520         (procfs_auxv_parse, procfs_attach, procfs_detach)
9521         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
9522         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
9523         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
9524         (procfs_create_inferior, procfs_update_thread_list)
9525         (procfs_thread_alive, procfs_pid_to_str)
9526         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
9527         (procfs_stopped_data_address, procfs_insert_watchpoint)
9528         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
9529         (proc_find_memory_regions, procfs_info_proc)
9530         (procfs_make_note_section): Refactor as methods of procfs_target.
9531         (_initialize_procfs): Adjust.
9532         * sol-thread.c (sol_thread_target): New class.
9533         (sol_thread_ops): Now a sol_thread_target.
9534         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
9535         (sol_thread_fetch_registers, sol_thread_store_registers)
9536         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
9537         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
9538         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
9539         (init_sol_thread_ops): Delete.
9540         (_initialize_sol_thread): Adjust.  Remove references to
9541         init_sol_thread_ops and complete_target_initialization.
9542
9543         * windows-nat.c (windows_nat_target): New class.
9544         (windows_fetch_inferior_registers)
9545         (windows_store_inferior_registers, windows_resume, windows_wait)
9546         (windows_attach, windows_detach, windows_pid_to_exec_file)
9547         (windows_files_info, windows_create_inferior)
9548         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
9549         (windows_close, windows_pid_to_str, windows_xfer_partial)
9550         (windows_get_tib_address, windows_get_ada_task_ptid)
9551         (windows_thread_name, windows_thread_alive): Refactor as
9552         windows_nat_target methods.
9553         (do_initial_windows_stuff): Adjust.
9554         (windows_target): Delete function.
9555         (_initialize_windows_nat): Adjust.
9556
9557         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
9558         (darwin_mourn_inferior, darwin_kill_inferior)
9559         (darwin_create_inferior, darwin_attach, darwin_detach)
9560         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
9561         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
9562         (darwin_supports_multi_process): Refactor as darwin_nat_target
9563         methods.
9564         (darwin_resume_to, darwin_files_info): Delete.
9565         (_initialize_darwin_inferior): Rename to ...
9566         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
9567         * darwin-nat.h: Include "inf-child.h".
9568         (darwin_nat_target): New class.
9569         (darwin_complete_target): Delete.
9570         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
9571         (darwin_target): New.
9572         (i386_darwin_fetch_inferior_registers)
9573         (i386_darwin_store_inferior_registers): Refactor as methods of
9574         darwin_nat_target.
9575         (darwin_complete_target): Delete, with ...
9576         (_initialize_i386_darwin_nat): ... bits factored out here.
9577
9578         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
9579         (the_alpha_linux_nat_target): New.
9580         (alpha_linux_register_u_offset): Refactor as
9581         alpha_linux_nat_target method.
9582         (_initialize_alpha_linux_nat): Adjust.
9583         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
9584         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
9585         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
9586         methods of linux_nat_trad_target.
9587         (linux_trad_target): Delete.
9588         * linux-nat-trad.h (linux_trad_target): Delete function.
9589         (linux_nat_trad_target): New class.
9590         * mips-linux-nat.c (mips_linux_nat_target): New class.
9591         (super_fetch_registers, super_store_registers, super_close):
9592         Delete.
9593         (the_mips_linux_nat_target): New.
9594         (mips64_linux_regsets_fetch_registers)
9595         (mips64_linux_regsets_store_registers)
9596         (mips64_linux_fetch_registers, mips64_linux_store_registers)
9597         (mips_linux_register_u_offset, mips_linux_read_description)
9598         (mips_linux_can_use_hw_breakpoint)
9599         (mips_linux_stopped_by_watchpoint)
9600         (mips_linux_stopped_data_address)
9601         (mips_linux_region_ok_for_hw_watchpoint)
9602         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
9603         (mips_linux_close): Refactor as methods of mips_linux_nat.
9604         (_initialize_mips_linux_nat): Adjust to C++ification.
9605
9606         * aix-thread.c (aix_thread_target): New class.
9607         (aix_thread_ops): Now an aix_thread_target.
9608         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
9609         (aix_thread_fetch_registers, aix_thread_store_registers)
9610         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
9611         (aix_thread_thread_alive, aix_thread_pid_to_str)
9612         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
9613         Refactor as methods of aix_thread_target.
9614         (init_aix_thread_ops): Delete.
9615         (_initialize_aix_thread): Remove references to init_aix_thread_ops
9616         and complete_target_initialization.
9617         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
9618         (rs6000_nat_target): New class.
9619         (the_rs6000_nat_target): New.
9620         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
9621         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
9622         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
9623         (super_create_inferior): Delete.
9624         (_initialize_rs6000_nat): Adjust to C++ification.
9625
9626         * arm-linux-nat.c (arm_linux_nat_target): New class.
9627         (the_arm_linux_nat_target): New.
9628         (arm_linux_fetch_inferior_registers)
9629         (arm_linux_store_inferior_registers, arm_linux_read_description)
9630         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
9631         (arm_linux_remove_hw_breakpoint)
9632         (arm_linux_region_ok_for_hw_watchpoint)
9633         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
9634         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
9635         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
9636         arm_linux_nat_target.
9637         (_initialize_arm_linux_nat): Adjust to C++ification.
9638
9639         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
9640         (the_aarch64_linux_nat_target): New.
9641         (aarch64_linux_fetch_inferior_registers)
9642         (aarch64_linux_store_inferior_registers)
9643         (aarch64_linux_child_post_startup_inferior)
9644         (aarch64_linux_read_description)
9645         (aarch64_linux_can_use_hw_breakpoint)
9646         (aarch64_linux_insert_hw_breakpoint)
9647         (aarch64_linux_remove_hw_breakpoint)
9648         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
9649         (aarch64_linux_region_ok_for_hw_watchpoint)
9650         (aarch64_linux_stopped_data_address)
9651         (aarch64_linux_stopped_by_watchpoint)
9652         (aarch64_linux_watchpoint_addr_within_range)
9653         (aarch64_linux_can_do_single_step): Refactor as methods of
9654         aarch64_linux_nat_target.
9655         (super_post_startup_inferior): Delete.
9656         (_initialize_aarch64_linux_nat): Adjust to C++ification.
9657
9658         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
9659         (the_hppa_linux_nat_target): New.
9660         (hppa_linux_fetch_inferior_registers)
9661         (hppa_linux_store_inferior_registers): Refactor as methods of
9662         hppa_linux_nat_target.
9663         (_initialize_hppa_linux_nat): Adjust to C++ification.
9664
9665         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
9666         (the_ia64_linux_nat_target): New.
9667         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
9668         (ia64_linux_stopped_data_address)
9669         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
9670         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
9671         ia64_linux_nat_target methods.
9672         (super_xfer_partial): Delete.
9673         (_initialize_ia64_linux_nat): Adjust to C++ification.
9674
9675         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
9676         (the_m32r_linux_nat_target): New.
9677         (m32r_linux_fetch_inferior_registers)
9678         (m32r_linux_store_inferior_registers): Refactor as
9679         m32r_linux_nat_target methods.
9680         (_initialize_m32r_linux_nat): Adjust to C++ification.
9681
9682         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
9683         (the_m68k_linux_nat_target): New.
9684         (m68k_linux_fetch_inferior_registers)
9685         (m68k_linux_store_inferior_registers): Refactor as
9686         m68k_linux_nat_target methods.
9687         (_initialize_m68k_linux_nat): Adjust to C++ification.
9688
9689         * s390-linux-nat.c (s390_linux_nat_target): New class.
9690         (the_s390_linux_nat_target): New.
9691         (s390_linux_fetch_inferior_registers)
9692         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
9693         (s390_insert_watchpoint, s390_remove_watchpoint)
9694         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
9695         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
9696         (s390_auxv_parse, s390_read_description): Refactor as methods of
9697         s390_linux_nat_target.
9698         (_initialize_s390_nat): Adjust to C++ification.
9699
9700         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
9701         (the_sparc_linux_nat_target): New.
9702         (_initialize_sparc_linux_nat): Adjust to C++ification.
9703         * sparc-nat.c (sparc_fetch_inferior_registers)
9704         (sparc_store_inferior_registers): Remove target_ops parameter.
9705         * sparc-nat.h (sparc_fetch_inferior_registers)
9706         (sparc_store_inferior_registers): Remove target_ops parameter.
9707         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
9708         (the_sparc64_linux_nat_target): New.
9709         (_initialize_sparc64_linux_nat): Adjust to C++ification.
9710
9711         * spu-linux-nat.c (spu_linux_nat_target): New class.
9712         (the_spu_linux_nat_target): New.
9713         (spu_child_post_startup_inferior, spu_child_post_attach)
9714         (spu_child_wait, spu_fetch_inferior_registers)
9715         (spu_store_inferior_registers, spu_xfer_partial)
9716         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
9717         methods.
9718         (_initialize_spu_nat): Adjust to C++ification.
9719
9720         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
9721         (the_tilegx_linux_nat_target): New.
9722         (fetch_inferior_registers, store_inferior_registers):
9723         Refactor as methods.
9724         (_initialize_tile_linux_nat): Adjust to C++ification.
9725
9726         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
9727         (the_xtensa_linux_nat_target): New.
9728         (xtensa_linux_fetch_inferior_registers)
9729         (xtensa_linux_store_inferior_registers): Refactor as
9730         xtensa_linux_nat_target methods.
9731         (_initialize_xtensa_linux_nat): Adjust to C++ification.
9732
9733         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
9734         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
9735         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
9736         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
9737         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
9738         (fbsd_stopped_by_sw_breakpoint)
9739         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
9740         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
9741         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
9742         (fbsd_post_startup_inferior, fbsd_post_attach)
9743         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
9744         (fbsd_set_syscall_catchpoint)
9745         (super_xfer_partial, super_resume, super_wait)
9746         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
9747         (fbsd_handle_debug_trap): Remove target_ops parameter.
9748         (fbsd_nat_add_target): Delete.
9749         * fbsd-nat.h: Include "inf-ptrace.h".
9750         (fbsd_nat_add_target): Delete.
9751         (USE_SIGTRAP_SIGINFO): Define.
9752         (fbsd_nat_target): New class.
9753
9754         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
9755         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
9756         (amd64bsd_target): Delete.
9757         * amd64-bsd-nat.h: New file.
9758         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
9759         "x86-bsd-nat.h".
9760         (amd64_fbsd_nat_target): New class.
9761         (the_amd64_fbsd_nat_target): New.
9762         (amd64fbsd_read_description): Refactor as method of
9763         amd64_fbsd_nat_target.
9764         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
9765         (_initialize_amd64fbsd_nat): Adjust to C++ification.
9766         * amd64-nat.h (amd64bsd_target): Delete function declaration.
9767         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
9768         (i386bsd_store_inferior_registers): Remove target_ops parameter.
9769         (i386bsd_target): Delete.
9770         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
9771         (i386bsd_fetch_inferior_registers)
9772         (i386bsd_store_inferior_registers): Declare.
9773         (i386_bsd_nat_target): New class.
9774         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
9775         (the_i386_fbsd_nat_target): New.
9776         (i386fbsd_resume, i386fbsd_read_description): Refactor as
9777         i386_fbsd_nat_target methods.
9778         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
9779         (_initialize_i386fbsd_nat): Adjust to C++ification.
9780         * x86-bsd-nat.c (super_mourn_inferior): Delete.
9781         (x86bsd_mourn_inferior, x86bsd_target): Delete.
9782         (_initialize_x86_bsd_nat): Adjust to C++ification.
9783         * x86-bsd-nat.h: Include "x86-nat.h".
9784         (x86bsd_target): Delete declaration.
9785         (x86bsd_nat_target): New class.
9786
9787         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
9788         (the_aarch64_fbsd_nat_target): New.
9789         (aarch64_fbsd_fetch_inferior_registers)
9790         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
9791         aarch64_fbsd_nat_target.
9792         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
9793         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
9794         (the_alpha_bsd_nat_target): New.
9795         (alphabsd_fetch_inferior_registers)
9796         (alphabsd_store_inferior_registers): Refactor as
9797         alpha_bsd_nat_target methods.
9798         (_initialize_alphabsd_nat): Refactor as methods of
9799         alpha_bsd_nat_target.
9800         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
9801         (the_amd64_nbsd_nat_target): New.
9802         (_initialize_amd64nbsd_nat): Adjust to C++ification.
9803         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
9804         (the_amd64_obsd_nat_target): New.
9805         (_initialize_amd64obsd_nat): Adjust to C++ification.
9806         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
9807         (the_arm_fbsd_nat_target): New.
9808         (arm_fbsd_fetch_inferior_registers)
9809         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
9810         (_initialize_arm_fbsd_nat): Refactor as methods of
9811         arm_fbsd_nat_target.
9812         (_initialize_arm_fbsd_nat): Adjust to C++ification.
9813         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
9814         (the_arm_netbsd_nat_target): New.
9815         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
9816         arm_netbsd_nat_target.
9817         (_initialize_arm_netbsd_nat): Adjust to C++ification.
9818         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
9819         (the_hppa_nbsd_nat_target): New.
9820         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
9821         hppa_nbsd_nat_target methods.
9822         (_initialize_hppanbsd_nat): Adjust to C++ification.
9823         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
9824         (the_hppa_obsd_nat_target): New.
9825         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
9826         methods of hppa_obsd_nat_target.
9827         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
9828         add_target.
9829         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
9830         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
9831         add_target.
9832         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
9833         (_initialize_i386obsd_nat): Use add_target.
9834         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
9835         (the_m68k_bsd_nat_target): New.
9836         (m68kbsd_fetch_inferior_registers)
9837         (m68kbsd_store_inferior_registers): Refactor as methods of
9838         m68k_bsd_nat_target.
9839         (_initialize_m68kbsd_nat): Adjust to C++ification.
9840         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
9841         (the_mips_fbsd_nat_target): New.
9842         (mips_fbsd_fetch_inferior_registers)
9843         (mips_fbsd_store_inferior_registers): Refactor as methods of
9844         mips_fbsd_nat_target.
9845         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
9846         add_target.
9847         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
9848         (the_mips_nbsd_nat_target): New.
9849         (mipsnbsd_fetch_inferior_registers)
9850         (mipsnbsd_store_inferior_registers): Refactor as methods of
9851         mips_nbsd_nat_target.
9852         (_initialize_mipsnbsd_nat): Adjust to C++ification.
9853         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
9854         (the_mips64_obsd_nat_target): New.
9855         (mips64obsd_fetch_inferior_registers)
9856         (mips64obsd_store_inferior_registers): Refactor as methods of
9857         mips64_obsd_nat_target.
9858         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
9859         add_target.
9860         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
9861         nbsd_nat_target.
9862         * nbsd-nat.h: Include "inf-ptrace.h".
9863         (nbsd_nat_target): New class.
9864         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
9865         (obsd_wait): Refactor as methods of obsd_nat_target.
9866         (obsd_add_target): Delete.
9867         * obsd-nat.h: Include "inf-ptrace.h".
9868         (obsd_nat_target): New class.
9869         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
9870         (the_ppc_fbsd_nat_target): New.
9871         (ppcfbsd_fetch_inferior_registers)
9872         (ppcfbsd_store_inferior_registers): Refactor as methods of
9873         ppc_fbsd_nat_target.
9874         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
9875         add_target.
9876         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
9877         (the_ppc_nbsd_nat_target): New.
9878         (ppcnbsd_fetch_inferior_registers)
9879         (ppcnbsd_store_inferior_registers): Refactor as methods of
9880         ppc_nbsd_nat_target.
9881         (_initialize_ppcnbsd_nat): Adjust to C++ification.
9882         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
9883         (the_ppc_obsd_nat_target): New.
9884         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
9885         methods of ppc_obsd_nat_target.
9886         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
9887         add_target.
9888         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
9889         (the_sh_nbsd_nat_target): New.
9890         (shnbsd_fetch_inferior_registers)
9891         (shnbsd_store_inferior_registers): Refactor as methods of
9892         sh_nbsd_nat_target.
9893         (_initialize_shnbsd_nat): Adjust to C++ification.
9894         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
9895         (inf_ptrace_xfer_partial): Delete.
9896         (sparc_xfer_partial, sparc_target): Delete.
9897         * sparc-nat.h (sparc_fetch_inferior_registers)
9898         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
9899         (sparc_target): Delete function declaration.
9900         (sparc_target): New template class.
9901         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
9902         (_initialize_sparcnbsd_nat): Adjust to C++ification.
9903         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
9904         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
9905         add_target.
9906         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
9907         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
9908         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
9909         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
9910         add_target.
9911         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
9912         (the_vax_bsd_nat_target): New.
9913         (vaxbsd_fetch_inferior_registers)
9914         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
9915         methods.
9916         (_initialize_vaxbsd_nat): Adjust to C++ification.
9917
9918         * bsd-kvm.c (bsd_kvm_target): New class.
9919         (bsd_kvm_ops): Now a bsd_kvm_target.
9920         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
9921         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
9922         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
9923         bsd_kvm_target.
9924         (bsd_kvm_return_one): Delete.
9925         (bsd_kvm_add_target): Adjust to C++ification.
9926
9927         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
9928         (nto_procfs_target_procfs): New classes.
9929         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
9930         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
9931         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
9932         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
9933         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
9934         (procfs_remove_hw_breakpoint, procfs_resume)
9935         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
9936         (procfs_kill_inferior, procfs_store_registers)
9937         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
9938         as methods of nto_procfs_target.
9939         (nto_procfs_ops): Now an nto_procfs_target_procfs.
9940         (nto_native_ops): Delete.
9941         (procfs_open, procfs_native_open): Delete.
9942         (nto_native_ops): Now an nto_procfs_target_native.
9943         (init_procfs_targets): Adjust to C++ification.
9944         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
9945         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
9946         Refactor as methods of nto_procfs_target.
9947
9948         * go32-nat.c (go32_nat_target): New class.
9949         (the_go32_nat_target): New.
9950         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
9951         (go32_store_registers, go32_xfer_partial, go32_files_info)
9952         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
9953         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
9954         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
9955         (go32_pid_to_str): Refactor as methods of go32_nat_target.
9956         (go32_target): Delete.
9957         (_initialize_go32_nat): Adjust to C++ification.
9958
9959         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
9960         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
9961         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
9962         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
9963         gnu_nat_target.
9964         (gnu_target): Delete.
9965         * gnu-nat.h (gnu_target): Delete.
9966         (gnu_nat_target): New class.
9967         * i386-gnu-nat.c (gnu_base_target): New.
9968         (i386_gnu_nat_target): New class.
9969         (the_i386_gnu_nat_target): New.
9970         (_initialize_i386gnu_nat): Adjust to C++ification.
9971
9972 2018-05-02  Pedro Alves  <palves@redhat.com>
9973
9974         * bfd-target.c (target_bfd_xclose): Rename to ...
9975         (target_bfd_close): ... this.
9976         (target_bfd_reopen): Adjust.
9977         * target.c (target_close): Remove references to to_xclose.
9978         * target.h (target_ops::to_xclose): Delete.
9979         (target_ops::to_close): Update comments.
9980
9981 2018-05-02  Pedro Alves  <palves@redhat.com>
9982
9983         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
9984         "linux-nat.h".
9985         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
9986         * inf-ptrace.c (inf_ptrace_register_u_offset)
9987         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
9988         (inf_ptrace_store_register, inf_ptrace_store_registers)
9989         (inf_ptrace_trad_target): Move to ...
9990         * linux-nat-trad.c: ... this new file.
9991         * linux-nat-trad.h: New file.
9992         * linux-nat.c (linux_target_install_ops): Make extern.
9993         (linux_trad_target): Delete.
9994         * linux-nat.h (linux_trad_target): Delete declaration.
9995         (linux_target_install_ops): Declare.
9996         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
9997         "linux-nat.h".
9998
9999 2018-05-02  Pedro Alves  <palves@redhat.com>
10000
10001         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10002         procfs_target/add_target here.
10003         * procfs.c (procfs_target): Make static.
10004         (_initialize_procfs): Call add_target here.
10005         * procfs.h (struct target_ops): Remove forward declaration.
10006         (procfs_target): Remove declaration.
10007         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
10008
10009 2018-05-02  Pedro Alves  <palves@redhat.com>
10010
10011         * procfs.c (procfs_stopped_by_watchpoint)
10012         (procfs_insert_watchpoint, procfs_remove_watchpoint)
10013         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
10014         Forward declare.
10015         (procfs_use_watchpoints): Delete, move contents...
10016         (procfs_target): ... here.
10017         * procfs.h (procfs_use_watchpoints): Delete declaration.
10018         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10019         procfs_use_watchpoints.
10020         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
10021         procfs_use_watchpoints.
10022
10023 2018-05-02  Tom Tromey  <tom@tromey.com>
10024
10025         PR python/20084:
10026         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
10027         and var_zuinteger_unlimited.
10028         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
10029         and PARAM_ZUINTEGER_UNLIMITED.
10030         (set_parameter_value): Handle var_zuinteger and
10031         var_zuinteger_unlimited.
10032         (add_setshow_generic): Likewise.
10033         (parmpy_init): Likewise.
10034
10035 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
10036
10037         PR rust/23124
10038         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
10039         pointer is not null before dereferencing it.
10040
10041 2018-04-30  Tom Tromey  <tom@tromey.com>
10042
10043         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
10044         is_mi_like_p.
10045
10046 2018-04-30  Tom Tromey  <tom@tromey.com>
10047
10048         * breakpoint.c (mention): Remove use of is_mi_like_p.
10049         (print_mention_ranged_breakpoint): Likewise.
10050         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
10051         of is_mi_like_p.
10052
10053 2018-04-30  Tom Tromey  <tom@tromey.com>
10054
10055         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
10056
10057 2018-04-30  Tom Tromey  <tom@tromey.com>
10058
10059         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
10060         (info_spu_event_command): Remove some uses of is_mi_like_p.
10061
10062 2018-04-30  Tom Tromey  <tom@tromey.com>
10063
10064         * python/py-framefilter.c (py_print_single_arg)
10065         (enumerate_locals, py_print_args, py_print_frame): Remove some
10066         uses of is_mi_like_p.
10067
10068 2018-04-30  Tom Tromey  <tom@tromey.com>
10069
10070         * ui-out.c: Update.
10071         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
10072         * ui-out.h (ui_out::is_mi_like_p): Now const.
10073         (ui_out::do_is_mi_like_p): Now const.
10074         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
10075
10076 2018-04-30  Tom Tromey  <tom@tromey.com>
10077
10078         * varobj.c (varobj_set_visualizer): Use new_reference.
10079         * python/python.c (gdbpy_decode_line): Use new_reference.
10080         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
10081         new_reference.
10082
10083 2018-04-30  Tom Tromey  <tom@tromey.com>
10084
10085         * varobj.c (install_new_value): Use new_reference.
10086         * value.h (value_incref): Return void.  Swap intro comment with
10087         value_decref.
10088         * value.c (set_value_parent): Use new_reference.
10089         (value_incref): Return void.  Update intro comment.
10090         (release_value): Use new_reference.
10091         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
10092
10093 2018-04-30  Tom Tromey  <tom@tromey.com>
10094
10095         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
10096         * gdb_bfd.h (new_bfd_ref): Remove.
10097         (gdb_bfd_open): Update comment.
10098         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
10099         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
10100         (gdb_bfd_fdopenr): Use new_reference.
10101         * exec.c (exec_file_attach): Use new_reference.
10102
10103 2018-04-30  Tom Tromey  <tom@tromey.com>
10104
10105         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
10106         method.
10107
10108 2018-04-30  Tom Tromey  <tom@tromey.com>
10109
10110         * jit.c (jit_read_code_entry): Use type_align.
10111         * i386-tdep.c (i386_gdbarch_init): Don't call
10112         set_gdbarch_long_long_align_bit.
10113         * gdbarch.sh: Remove long_long_align_bit.
10114         * gdbarch.c, gdbarch.h: Rebuild.
10115         * arc-tdep.c (arc_type_align): New function.
10116         (arc_gdbarch_init): Use arc_type_align.  Don't call
10117         set_gdbarch_long_long_align_bit.
10118
10119 2018-04-30  Tom Tromey  <tom@tromey.com>
10120
10121         * rust-lang.c (rust_type_alignment): Remove.
10122         (rust_composite_type): Use type_align.
10123
10124 2018-04-30  Tom Tromey  <tom@tromey.com>
10125
10126         * NEWS: Mention Type.align.
10127         * python/py-type.c (typy_get_alignof): New function.
10128         (type_object_getset): Add "alignof".
10129
10130 2018-04-30  Tom Tromey  <tom@tromey.com>
10131
10132         PR exp/17095:
10133         * NEWS: Update.
10134         * std-operator.def (UNOP_ALIGNOF): New operator.
10135         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
10136         New.
10137         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
10138         * c-lang.c (c_op_print_tab): Add alignof.
10139         * c-exp.y (ALIGNOF): New token.
10140         (exp): Add "ALIGNOF" production.
10141         (ident_tokens): Add _Alignof and alignof.
10142
10143 2018-04-30  Tom Tromey  <tom@tromey.com>
10144
10145         * i386-tdep.c (i386_type_align): New function.
10146         (i386_gdbarch_init): Update.
10147         * gdbarch.sh (type_align): New method.
10148         * gdbarch.c, gdbarch.h: Rebuild.
10149         * arch-utils.h (default_type_align): Declare.
10150         * arch-utils.c (default_type_align): New function.
10151         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
10152         (struct type) <align_log2>: New field.
10153         <instance_flags>: Now a bitfield.
10154         (TYPE_RAW_ALIGN): New macro.
10155         (type_align, type_raw_align, set_type_align): Declare.
10156         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
10157         functions.
10158         * dwarf2read.c (quirk_rust_enum): Set type alignment.
10159         (get_alignment, maybe_set_alignment): New functions.
10160         (read_structure_type, read_enumeration_type, read_array_type)
10161         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
10162         (read_subrange_type, read_base_type): Set type alignment.
10163
10164 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
10165
10166         * dwarf2read.c (read_index_from_section): Use bool.
10167
10168 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
10169
10170         PR gdb/22950
10171         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
10172         with #ifdef.
10173
10174 2018-04-29  John Reiser  <jreiser@BitWagon.com>
10175
10176         PR build/22873
10177         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
10178         last step, and do it atomically.
10179
10180 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
10181
10182         * compile/compile-c-types.c (convert_int, convert_float):
10183         Update for C FE v1.
10184
10185 2018-04-27  Tom Tromey  <tom@tromey.com>
10186
10187         PR rust/22545:
10188         * rust-lang.c (rust_inclusive_range_type_p): New function.
10189         (rust_range): Handle inclusive ranges.
10190         (rust_compute_range): Likewise.
10191         * rust-exp.y (struct rust_op) <inclusive>: New field.
10192         (DOTDOTEQ): New constant.
10193         (range_expr): Add "..=" productions.
10194         (operator_tokens): Add "..=" token.
10195         (ast_range): Add "inclusive" parameter.
10196         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
10197         ranges.
10198         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
10199         bounds values.
10200         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
10201         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
10202         Update comments.
10203         * expprint.c (print_subexp_standard): Handle new bounds values.
10204         (dump_subexp_body_standard): Likewise.
10205
10206 2018-04-27  Tom Tromey  <tom@tromey.com>
10207
10208         * configure: Rebuild.
10209         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
10210         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
10211         "OVERRIDE".
10212         (class symbol_needs_eval_context): Likewise.
10213         * dwarf2read.c (mock_mapped_index::symbol_name_count)
10214         (mock_mapped_index::symbol_name_at): Use "override".  Remove
10215         "virtual".
10216         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
10217         "override".
10218         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
10219         * aarch64-tdep.c (instruction_reader::read): Use "override".
10220         (instruction_reader_test::read): Likewise.
10221         * arm-tdep.c (instruction_reader::read): Use "override".
10222         (instruction_reader_thumb::read): Likewise.
10223
10224 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
10225
10226         PR remote/9665
10227         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
10228         instead of remote_send.
10229         (remote_send): Remove.
10230
10231 2018-04-26  Pedro Alves  <palves@redhat.com>
10232
10233         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
10234         find_function_start_sal instead of find_pc_line.
10235
10236 2018-04-26  Pedro Alves  <palves@redhat.com>
10237
10238         * breakpoint.c (set_breakpoint_location_function): Handle
10239         mst_data_gnu_ifunc.
10240         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
10241         * elfread.c (elf_symtab_read): Give data symbols with
10242         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
10243         (elf_rel_plt_read): Update comment.
10244         * linespec.c (convert_linespec_to_sals): Handle
10245         mst_data_gnu_ifunc.
10246         (minsym_found): Handle mst_data_gnu_ifunc.
10247         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
10248         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
10249         * parse.c (find_minsym_type_and_address): Handle
10250         mst_data_gnu_ifunc.
10251         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
10252         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
10253         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
10254         comment.
10255         <mst_data_gnu_ifunc>: New enumerator.
10256
10257 2018-04-26  Pedro Alves  <palves@redhat.com>
10258
10259         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
10260         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
10261         'want_trampoline' parameter by a lookup_msym_prefer parameter.
10262         Handle it.
10263         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
10264         (lookup_minimal_symbol_by_pc): Adjust.
10265         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
10266         (lookup_solib_trampoline_symbol_by_pc): Adjust.
10267         * minsyms.h (lookup_msym_prefer): New enum.
10268         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10269         parameter by a lookup_msym_prefer parameter.
10270
10271 2018-04-26  Pedro Alves  <palves@redhat.com>
10272
10273         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
10274         ends in "@plt" instead of looking at the symbol's section.
10275
10276 2018-04-26  Pedro Alves  <palves@redhat.com>
10277
10278         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
10279         all references.
10280         (find_pc_partial_function_gnu_ifunc): Rename to ...
10281         (find_pc_partial_function): ... this, and remove references to
10282         'is_gnu_ifunc_p'.
10283         (find_pc_partial_function): Delete old implementation.
10284         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
10285
10286 2018-04-26  Pedro Alves  <palves@redhat.com>
10287
10288         * linespec.c (struct bound_minimal_symbol_search_key): New.
10289         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
10290         skip first line if we found a GNU ifunc minimal symbol by name.
10291         (compare_msymbols): Change parameters to work with a destructured
10292         lhs minsym.
10293         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
10294         functions.
10295
10296 2018-04-26  Pedro Alves  <palves@redhat.com>
10297
10298         * breakpoint.c (set_breakpoint_location_function): Don't resolve
10299         ifunc targets here.  Instead, if we have an ifunc minsym, use its
10300         address/name.
10301         (add_location_to_breakpoint): Store the minsym and the objfile in
10302         the breakpoint location.
10303         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
10304         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
10305         Record the minsym in the sal.
10306         * symtab.h (symtab_and_line) <msymbol>: New field.
10307
10308 2018-04-26  Pedro Alves  <palves@redhat.com>
10309
10310         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
10311         unless we actually resolved the ifunc.
10312
10313 2018-04-26  Pedro Alves  <palves@redhat.com>
10314
10315         * c-exp.y (variable production): Prefer ifunc minsyms over
10316         regular function symbols.
10317         * symtab.c (find_gnu_ifunc): New function.
10318         * minsyms.h (lookup_msym_prefer): New enum.
10319         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10320         parameter by a lookup_msym_prefer parameter.
10321         * symtab.h (find_gnu_ifunc): New declaration.
10322
10323 2018-04-26  Pedro Alves  <palves@redhat.com>
10324
10325         * blockframe.c (find_gnu_ifunc_target_type): New function.
10326         (find_function_type): New.
10327         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
10328         return a value with a memory address.
10329         (eval_call): For calls to GNU ifunc functions, try to find the
10330         type of the target function from the type that the resolver
10331         returns.
10332         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
10333         symbols.
10334         * infcall.c (find_function_return_type): Delete.
10335         (find_function_addr): Add 'function_type' parameter.  For calls to
10336         GNU ifunc functions, try to find the type of the target function
10337         from the type that the resolver returns, and return it via
10338         FUNCTION_TYPE.
10339         (call_function_by_hand_dummy): Adjust to use the function type
10340         returned by find_function_addr.
10341         (find_function_addr): Add 'function_type' parameter and move
10342         description here.
10343         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
10344         declarations.
10345
10346 2018-04-26  Pedro Alves  <palves@redhat.com>
10347
10348         * c-exp.y (variable production): Skip finding an alias for ifunc
10349         symbols.
10350
10351 2018-04-26  Pedro Alves  <palves@redhat.com>
10352
10353         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
10354
10355 2018-04-25  Pedro Alves  <palves@redhat.com>
10356
10357         * infcmd.c (kill_command): Print the pid as string, not the whole
10358         thread's ptid.  Add comment.  s/has been killed/killed/ in output
10359         message.
10360         * remote.c (remote_detach_1): Print the pid as string, not the
10361         whole thread's ptid.
10362
10363 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
10364             Sergio Durigan Junior  <sergiodj@redhat.com>
10365             Pedro Alves  <palves@redhat.com>
10366
10367         * infcmd.c (kill_command): Print message when inferior has
10368         been killed.
10369         * inferior.c (print_inferior_events): Remove 'static'.  Set as
10370         '1'.
10371         (add_inferior): Improve message printed when
10372         'print_inferior_events' is on.
10373         (exit_inferior): Remove message printed when
10374         'print_inferior_events' is on.
10375         (detach_inferior): Improve message printed when
10376         'print_inferior_events' is on.
10377         (initialize_inferiors): Use 'add_inferior_silent' to set
10378         'current_inferior_'.
10379         * inferior.h (print_inferior_events): Declare here as
10380         'extern'.
10381         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
10382         '[Detaching...]' messages when 'print_inferior_events' is on.
10383         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
10384         as prefix/suffix for messages.  Remove periods.  Fix erroneous
10385         'Detaching after fork from child...', replace it by '... from
10386         parent...'.
10387         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
10388         prefix/suffix when printing 'Detaching...' messages.  Print
10389         them when 'print_inferior_events' is on.
10390         * remote.c (remote_detach_1): Print message when detaching
10391         from inferior and '!is_fork_parent'.
10392
10393 2018-04-24  Tom Tromey  <tom@tromey.com>
10394
10395         * cli-out.h: Reindent.
10396
10397 2018-04-24  Tom Tromey  <tom@tromey.com>
10398
10399         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
10400         (cli_ui_out::do_field_string): Use fputs_filtered.
10401         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
10402
10403 2018-04-23  Tom Tromey  <tom@tromey.com>
10404
10405         * guile/scm-frame.c (gdbscm_frame_read_var): Use
10406         gdb::unique_xmalloc_ptr.
10407
10408 2018-04-23  Tom Tromey  <tom@tromey.com>
10409
10410         * configure: Rebuild.
10411
10412 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
10413
10414         PR gdb/23095
10415         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
10416         prepare_for_testing.  Set normal_bp to r_debug_state if target
10417         is bsd.
10418
10419 2018-04-21  Pedro Alves  <palves@redhat.com>
10420             Rajendra SY  <rajendra.sy@gmail.com>
10421
10422         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
10423         * remote.c (extended_remote_attach): In all-stop mode, mark the
10424         thread as executing.
10425
10426 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
10427
10428         * thread.c (thread_apply_all_command): Fix comment.
10429         (thread_command): Fix comment.
10430
10431 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
10432
10433         * common/tdesc.h (tdesc_create_feature): Remove xml filename
10434         parameter.
10435         * features/aarch64-core.c (create_feature_aarch64_core):
10436         Regenerate.
10437         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
10438         Likewise.
10439         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
10440         Likewise.
10441         * features/i386/32bit-avx512.c
10442         (create_feature_i386_32bit_avx512): Likewise.
10443         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
10444         Likewise.
10445         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
10446         Likewise.
10447         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
10448         Likewise.
10449         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
10450         Likewise.
10451         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
10452         Likewise.
10453         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
10454         Likewise.
10455         * features/i386/64bit-avx512.c
10456         (create_feature_i386_64bit_avx512): Likewise.
10457         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
10458         Likewise.
10459         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
10460         Likewise.
10461         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
10462         Likewise.
10463         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
10464         Likewise.
10465         * features/i386/64bit-segments.c
10466         (create_feature_i386_64bit_segments): Likewise.
10467         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
10468         Likewise.
10469         * features/i386/x32-core.c
10470         (create_feature_i386_x32_core): Likewise.
10471         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
10472         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
10473         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
10474         * target-descriptions.c: In generated code, don't pass xml
10475         filename.
10476
10477 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10478
10479         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
10480         (print_xml_feature::visit_post): Likewise.
10481         (print_xml_feature::visit): Likewise.
10482         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
10483         (print_xml_feature): Add new class.
10484         * regformats/regdat.sh: Null xmltarget on feature targets.
10485         * target-descriptions.c (struct target_desc): Add xmltarget.
10486         (maintenance_check_tdesc_xml_convert): Add unittest function.
10487         (tdesc_get_features_xml): Add function to get xml.
10488         (maintenance_check_xml_descriptions): Test xml generation.
10489         * xml-tdesc.c (string_read_description_xml): Add function.
10490         * xml-tdesc.h (string_read_description_xml): Add declaration.
10491
10492 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10493
10494         * features/Makefile: Add feature marker to targets with new style
10495         target descriptions.
10496         * regformats/aarch64.dat: Regenerate.
10497         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
10498         * regformats/i386/amd64-avx-linux.dat: Likewise.
10499         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
10500         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
10501         * regformats/i386/amd64-linux.dat: Likewise.
10502         * regformats/i386/amd64-mpx-linux.dat: Likewise.
10503         * regformats/i386/amd64.dat: Likewise.
10504         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
10505         * regformats/i386/i386-avx-linux.dat: Likewise.
10506         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
10507         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
10508         * regformats/i386/i386-linux.dat: Likewise.
10509         * regformats/i386/i386-mmx-linux.dat: Likewise.
10510         * regformats/i386/i386-mpx-linux.dat: Likewise.
10511         * regformats/i386/i386.dat: Likewise.
10512         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
10513         * regformats/i386/x32-avx-linux.dat: Likewise.
10514         * regformats/i386/x32-linux.dat: Likewise.
10515         * regformats/tic6x-c62x-linux.dat: Likewise.
10516         * regformats/tic6x-c64x-linux.dat: Likewise.
10517         * regformats/tic6x-c64xp-linux.dat: Likewise.
10518         * regformats/regdat.sh: Parse feature marker.
10519
10520 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10521
10522         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
10523         (tdesc_osabi_name): Likewise.
10524         * target-descriptions.c (tdesc_architecture_name): Add new
10525         function.
10526         (tdesc_osabi_name): Likewise.
10527
10528 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10529
10530         * common/tdesc.c (tdesc_predefined_type): Move to here.
10531         (tdesc_named_type): Likewise.
10532         (tdesc_create_vector): Likewise.
10533         (tdesc_create_struct): Likewise.
10534         (tdesc_set_struct_size): Likewise.
10535         (tdesc_create_union): Likewise.
10536         (tdesc_create_flags): Likewise.
10537         (tdesc_create_enum): Likewise.
10538         (tdesc_add_field): Likewise.
10539         (tdesc_add_typed_bitfield): Likewise.
10540         (tdesc_add_bitfield): Likewise.
10541         (tdesc_add_flag): Likewise.
10542         (tdesc_add_enum_value): Likewise.
10543         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
10544         (struct tdesc_type_vector): Likewise.
10545         (struct tdesc_type_field): Likewise.
10546         (struct tdesc_type_with_fields): Likewise.
10547         (tdesc_create_enum): Add declaration.
10548         (tdesc_add_typed_bitfield): Likewise.
10549         (tdesc_add_enum_value): Likewise.
10550         * target-descriptions.c (tdesc_type_field): Move from here.
10551         (tdesc_type_builtin): Likewise.
10552         (tdesc_type_vector): Likewise.
10553         (tdesc_type_with_fields): Likewise.
10554         (tdesc_predefined_types): Likewise.
10555         (tdesc_named_type): Likewise.
10556         (tdesc_create_vector): Likewise.
10557         (tdesc_create_struct): Likewise.
10558         (tdesc_set_struct_size): Likewise.
10559         (tdesc_create_union): Likewise.
10560         (tdesc_create_flags): Likewise.
10561         (tdesc_create_enum): Likewise.
10562         (tdesc_add_field): Likewise.
10563         (tdesc_add_typed_bitfield): Likewise.
10564         (tdesc_add_bitfield): Likewise.
10565         (tdesc_add_flag): Likewise.
10566         (tdesc_add_enum_value): Likewise.
10567         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
10568         (tdesc_add_typed_bitfield): Likewise.
10569         (tdesc_add_enum_value): Likewise.
10570
10571 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10572
10573         * common/tdesc.c (tdesc_feature::accept): Move to here.
10574         (tdesc_feature::operator==): Likewise.
10575         (tdesc_create_reg): Likewise.
10576         * common/tdesc.h (tdesc_type_kind): Likewise.
10577         (struct tdesc_type): Likewise.
10578         (struct tdesc_feature): Likewise.
10579         * regformats/regdat.sh: Create a feature.
10580         * target-descriptions.c (tdesc_type_kind): Move from here.
10581         (tdesc_type): Likewise.
10582         (tdesc_type_up): Likewise.
10583         (tdesc_feature): Likewise.
10584         (tdesc_create_reg): Likewise.
10585
10586 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10587
10588         * Makefile.in: Add arch/tdesc.c
10589         * common/tdesc.c: New file.
10590         * common/tdesc.h (tdesc_element_visitor): Move to here.
10591         (tdesc_element): Likewise.
10592         (tdesc_reg): Likewise.
10593         (tdesc_reg_up): Likewise.
10594         * regformats/regdef.h (reg): Add offset to constructors.
10595         * target-descriptions.c (tdesc_element_visitor): Move from here.
10596         (tdesc_element): Likewise.
10597         (tdesc_reg): Likewise.
10598         (tdesc_reg_up): Likewise.
10599
10600 2018-04-17  Tom Tromey  <tom@tromey.com>
10601
10602         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
10603         discriminant field.
10604
10605 2018-04-17  Tom Tromey  <tom@tromey.com>
10606
10607         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
10608
10609 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
10610
10611         * symtab.c (print_symbol_info): Skip printing filename and line
10612         number when `last' is NULL.
10613         (symtab_symbol_info): Use empty string instead of NULL for first
10614         invocation of print_symbol_info.
10615         (rbreak_command): Pass NULL to `last' parameter of
10616         print_symbol_info.
10617
10618 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
10619
10620         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
10621         instead of nullptr.
10622
10623 2018-04-16  Pedro Alves  <palves@redhat.com>
10624
10625         * MAINTAINERS (sh): Remove.
10626         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
10627         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
10628         (ALLDEPFILES): Remove sh64-tdep.c.
10629         * NEWS: Mentions that support for SH-5/SH64 is removed.
10630         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
10631         (sh*-*-openbsd*): Ditto.
10632         (sh64-*-elf*): Remove.
10633         (sh*): Remove.
10634         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
10635         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
10636         * sh-tdep.c: No longer include "sh64-tdep.h".
10637         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
10638         * sh64-tdep.c, sh64-tdep.h: Remove files.
10639
10640 2018-04-16  Pedro Alves  <palves@redhat.com>
10641
10642         * MAINTAINERS: Remove m88k.
10643         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
10644         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
10645         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
10646         * NEWS: Mention that support for m88k was removed.
10647         * configure.host (m88*-*-*): Remove support.
10648         * configure.nat (m88k-*-*): Remove support.
10649         * configure.tgt (m88*-*-openbsd*): Remove.
10650         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
10651
10652 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
10653
10654         * configure.tgt (x86_tobjs): New variable.
10655         (amd64_tobjs, i386_tobjs): Use it.
10656
10657 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
10658
10659         * symtab.c (print_symbol_info): Precede the symbol definition by
10660         the line number when available.
10661         * NEWS: Advertise this enhancement.
10662
10663 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10664
10665         * NEWS (New options): announce set/show record btrace cpu.
10666         * btrace.c: Include record-btrace.h.
10667         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
10668         the vendor is unknown.
10669         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
10670         Maybe overwrite the btrace configuration's cpu.
10671         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
10672         (btrace_fetch): Add cpu parameter.  Update callers.
10673         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
10674         Maybe overwrite the btrace configuration's cpu.  Skip enabling
10675         errata workarounds if the vendor is unknown.
10676         * python/py-record-btrace.c: Include record-btrace.h.
10677         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
10678         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
10679         * record-btrace.c (record_btrace_cpu_state_kind): New.
10680         (record_btrace_cpu): New.
10681         (set_record_btrace_cpu_cmdlist): New.
10682         (record_btrace_get_cpu): New.
10683         (require_btrace_thread, record_btrace_info)
10684         (record_btrace_resume_thread): Call record_btrace_get_cpu.
10685         (cmd_set_record_btrace_cpu_none): New.
10686         (cmd_set_record_btrace_cpu_auto): New.
10687         (cmd_set_record_btrace_cpu): New.
10688         (cmd_show_record_btrace_cpu): New.
10689         (_initialize_record_btrace): Initialize set/show record btrace cpu
10690         commands.
10691         * record-btrace.h (record_btrace_get_cpu): New.
10692
10693 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10694
10695         * record.c (set_record_command): Fix typo in message.
10696
10697 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10698
10699         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
10700
10701 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10702
10703         * infrun.c (process_event_stop_test): Call
10704         gdbarch_in_indirect_branch_thunk.
10705         * gdbarch.sh (in_indirect_branch_thunk): New.
10706         * gdbarch.c: Regenerated.
10707         * gdbarch.h: Regenerated.
10708         * x86-tdep.h: New.
10709         * x86-tdep.c: New.
10710         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
10711         (HFILES_NO_SRCDIR): Add x86-tdep.h.
10712         (ALLDEPFILES): Add x86-tdep.c.
10713         * arch-utils.h (default_in_indirect_branch_thunk): New.
10714         * arch-utils.c (default_in_indirect_branch_thunk): New.
10715         * i386-tdep: Include x86-tdep.h.
10716         (i386_in_indirect_branch_thunk): New.
10717         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
10718         function.
10719         * amd64-tdep: Include x86-tdep.h.
10720         (amd64_in_indirect_branch_thunk): New.
10721         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
10722
10723 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
10724
10725         PR gdb/23053
10726         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
10727         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
10728         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
10729         regression.
10730
10731 2018-04-12  Tom Tromey  <tom@tromey.com>
10732
10733         * rust-lang.c (rust_print_struct_def): Remove univariant code.
10734         (rust_evaluate_subexp): Likewise.
10735
10736 2018-04-12  Pedro Alves  <palves@redhat.com>
10737
10738         * procfs.c (procfs_detach): Make forward declaration's prototype
10739         match definition's protototype.
10740         (proc_get_LDT_entry): Remove stale do_cleanups call.
10741
10742 2018-04-12  Pedro Alves  <palves@redhat.com>
10743
10744         * target.h (target_ops::to_has_exited): Delete.
10745         (target_has_exited): Delete.
10746         * target-delegates.c: Regenerate.
10747
10748 2018-04-11  Pedro Alves  <palves@redhat.com>
10749
10750         * target.c (fileio_fh_t::t): Add comment.
10751         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
10752         (target_fileio_close): Handle a NULL target.
10753         (invalidate_fileio_fh): New.
10754         (target_close): Call it.
10755         * remote.c (remote_hostio_send_command): No longer check whether
10756         remote_desc is open.
10757
10758 2018-04-11  Pedro Alves  <palves@redhat.com>
10759
10760         * target.c (fileio_fh_t): Make it a named struct instead of a
10761         typedef.
10762         (fileio_fh_t::is_closed): New method.
10763         (DEF_VEC_O (fileio_fh_t)): Remove.
10764         (fileio_fhandles): Now a std::vector.
10765         (is_closed_fileio_fh): Delete.
10766         (acquire_fileio_fd): Adjust.  Rename parameters.
10767         (release_fileio_fd): Adjust.
10768         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
10769         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
10770         (target_fileio_close): Adjust.
10771
10772 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
10773
10774         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
10775         index.
10776
10777 2018-04-10  Pedro Alves  <palves@redhat.com>
10778
10779         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
10780         (scoped_finish_thread_state): New class.
10781         * infcmd.c (run_command_1): Use it instead of finish_thread_state
10782         cleanup.
10783         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
10784         (fetch_inferior_event, normal_stop): Likewise.
10785         * thread.c (finish_thread_state_cleanup): Delete.
10786
10787 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10788             Pedro Alves  <palves@redhat.com>
10789
10790         * value.c: Include "selftest.h" and "common/array-view.h".
10791         (struct range) <operator ==>: New.
10792         (test_ranges_contain): New.
10793         (check_ranges_vector): New.
10794         (test_insert_into_bit_range_vector): New.
10795         (_initialize_values): Register selftests.
10796         * common/array-view.h (operator==, operator!=): New.
10797
10798 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10799
10800         * common/gdb_vecs.h (unordered_remove): Add overload that takes
10801         an iterator.
10802         * inline-frame.c: Include <algorithm>.
10803         (struct inline_state): Add constructor.
10804         (inline_state_s): Remove.
10805         (DEF_VEC_O(inline_state_s)): Remove.
10806         (inline_states): Change type to std::vector.
10807         (find_inline_frame_state): Adjust to std::vector.
10808         (allocate_inline_frame_state): Remove.
10809         (clear_inline_frame_state): Adjust to std::vector.
10810         (skip_inline_frames): Adjust to std::vector.
10811
10812 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10813
10814         * tracepoint.h (struct trace_state_variable): Add constructor.
10815         <name>: Change type to std::string.
10816         * tracepoint.c (tsv_s): Remove.
10817         (DEF_VEC_O(tsv_s)): Remove.
10818         (tvariables): Change to std::vector.
10819         (create_trace_state_variable): Adjust to std::vector.
10820         (find_trace_state_variable): Likewise.
10821         (find_trace_state_variable_by_number): Likewise.
10822         (delete_trace_state_variable): Likewise.
10823         (trace_variable_command): Adjust to std::string.
10824         (delete_trace_variable_command): Likewise.
10825         (tvariables_info_1): Adjust to std::vector.
10826         (save_trace_state_variables): Likewise.
10827         (start_tracing): Likewise.
10828         (merge_uploaded_trace_state_variables): Adjust to std::vector
10829         and std::string.
10830         * target.h (struct target_ops)
10831         <to_download_trace_state_variable>: Pass reference to
10832         trace_state_variable.
10833         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
10834         * target-delegates.c: Re-generate.
10835         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
10836         (mi_tsv_deleted): Likewise.
10837         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
10838         * remote.c (remote_download_trace_state_variable): Change
10839         pointer to reference and adjust.
10840         * make-target-delegates (parse_argtypes): Handle references.
10841         (write_function_header): Likewise.
10842         (munge_type): Likewise.
10843
10844 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10845
10846         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
10847         string_view-selftests.c.
10848         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
10849         testsuite.
10850         * unittests/basic_string_view/cons/char/1.cc: Likewise.
10851         * unittests/basic_string_view/cons/char/2.cc: Likewise.
10852         * unittests/basic_string_view/cons/char/3.cc: Likewise.
10853         * unittests/basic_string_view/element_access/char/1.cc:
10854         Likewise.
10855         * unittests/basic_string_view/element_access/char/empty.cc:
10856         Likewise.
10857         * unittests/basic_string_view/element_access/char/front_back.cc:
10858         Likewise.
10859         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
10860         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
10861         Likewise.
10862         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
10863         Likewise.
10864         * unittests/basic_string_view/modifiers/swap/char/1.cc:
10865         Likewise.
10866         * unittests/basic_string_view/operations/compare/char/1.cc:
10867         Likewise.
10868         * unittests/basic_string_view/operations/compare/char/13650.cc:
10869         Likewise.
10870         * unittests/basic_string_view/operations/copy/char/1.cc:
10871         Likewise.
10872         * unittests/basic_string_view/operations/data/char/1.cc:
10873         Likewise.
10874         * unittests/basic_string_view/operations/find/char/1.cc:
10875         Likewise.
10876         * unittests/basic_string_view/operations/find/char/2.cc:
10877         Likewise.
10878         * unittests/basic_string_view/operations/find/char/3.cc:
10879         Likewise.
10880         * unittests/basic_string_view/operations/find/char/4.cc:
10881         Likewise.
10882         * unittests/basic_string_view/operations/rfind/char/1.cc:
10883         Likewise.
10884         * unittests/basic_string_view/operations/rfind/char/2.cc:
10885         Likewise.
10886         * unittests/basic_string_view/operations/rfind/char/3.cc:
10887         Likewise.
10888         * unittests/basic_string_view/operations/substr/char/1.cc:
10889         Likewise.
10890         * unittests/basic_string_view/operators/char/2.cc: Likewise.
10891         * unittests/string_view-selftests.c: New file.
10892
10893 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10894
10895         * unittests/basic_string_view/capacity/1.cc: New file.
10896         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
10897         * unittests/basic_string_view/cons/char/1.cc: New file.
10898         * unittests/basic_string_view/cons/char/2.cc: New file.
10899         * unittests/basic_string_view/cons/char/3.cc: New file.
10900         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
10901         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
10902         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
10903         * unittests/basic_string_view/element_access/char/1.cc: New file.
10904         * unittests/basic_string_view/element_access/char/2.cc: New file.
10905         * unittests/basic_string_view/element_access/char/empty.cc: New file.
10906         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
10907         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
10908         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
10909         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
10910         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
10911         * unittests/basic_string_view/include.cc: New file.
10912         * unittests/basic_string_view/inserters/char/1.cc: New file.
10913         * unittests/basic_string_view/inserters/char/2.cc: New file.
10914         * unittests/basic_string_view/inserters/char/3.cc: New file.
10915         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
10916         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
10917         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
10918         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
10919         * unittests/basic_string_view/literals/types.cc: New file.
10920         * unittests/basic_string_view/literals/values.cc: New file.
10921         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
10922         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
10923         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
10924         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
10925         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
10926         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
10927         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
10928         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
10929         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
10930         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
10931         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
10932         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
10933         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
10934         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
10935         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
10936         * unittests/basic_string_view/operations/data/char/1.cc: New file.
10937         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
10938         * unittests/basic_string_view/operations/find/char/1.cc: New file.
10939         * unittests/basic_string_view/operations/find/char/2.cc: New file.
10940         * unittests/basic_string_view/operations/find/char/3.cc: New file.
10941         * unittests/basic_string_view/operations/find/char/4.cc: New file.
10942         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
10943         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
10944         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
10945         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
10946         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
10947         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
10948         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
10949         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
10950         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
10951         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
10952         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
10953         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
10954         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
10955         * unittests/basic_string_view/operators/char/2.cc: New file.
10956         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
10957         * unittests/basic_string_view/range_access/char/1.cc: New file.
10958         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
10959         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
10960         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
10961         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
10962         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
10963         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
10964         * unittests/basic_string_view/requirements/typedefs.cc: New file.
10965         * unittests/basic_string_view/typedefs.cc: New file.
10966         * unittests/basic_string_view/types/1.cc: New file.
10967
10968 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10969
10970         * common/gdb_string_view.h: Remove libstdc++ implementation
10971         details, adjust to gdb reality.
10972         * common/gdb_string_view.tcc: Likewise.
10973         * cli/cli-script.c (struct string_view): Remove.
10974         (user_args) <m_args>: Change element type to gdb::string_view.
10975         (user_args::insert_args): Adjust.
10976
10977 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10978
10979         * common/gdb_string_view.h: New file.
10980         * common/gdb_string_view.tcc: New file.
10981
10982 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10983
10984         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
10985         * configure: Re-generate.
10986
10987 2018-04-09  Pedro Alves  <palves@redhat.com>
10988
10989         * gdbarch.sh: Include "observable.h" instead of "observer.h".
10990         (set_target_gdbarch): Call
10991         gdb::observers::architecture_changed.notify instead of
10992         observer_notify_architecture_changed.
10993
10994 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10995
10996         * tracepoint.c (struct current_traceframe_cleanup): Remove.
10997         (do_restore_current_traceframe_cleanup): Remove.
10998         (restore_current_traceframe_cleanup_dtor): Remove.
10999         (make_cleanup_restore_current_traceframe): Remove.
11000         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
11001         New.
11002         * tracepoint.h (struct scoped_restore_current_traceframe): New.
11003         * infrun.c (fetch_inferior_event): Use
11004         scoped_restore_current_traceframe.
11005
11006 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11007
11008         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
11009         Remove.
11010         <n_allocated_type_units>: Remove.
11011         <all_type_units>: Change to std::vector.
11012         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11013         to std::vector change.
11014         (dwarf2_per_objfile::get_cutu): Likewise.
11015         (dwarf2_per_objfile::get_tu): Likewise.
11016         (create_signatured_type_table_from_index): Likewise.
11017         (create_signatured_type_table_from_debug_names): Likewise.
11018         (dw2_symtab_iter_next): Likewise.
11019         (dw2_print_stats): Likewise.
11020         (dw2_expand_all_symtabs): Likewise.
11021         (dw2_expand_marked_cus): Likewise.
11022         (dw2_debug_names_iterator::next): Likewise.
11023         (dwarf2_initialize_objfile): Likewise.
11024         (add_signatured_type_cu_to_table): Likewise.
11025         (create_all_type_units): Likewise.
11026         (add_type_unit): Likewise.
11027         (struct tu_abbrev_offset): Add constructor.
11028         (build_type_psymtabs_1): Adjust to std::vector change.
11029         (print_tu_stats): Likewise.
11030         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11031         (write_debug_names): Likewise.
11032
11033 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11034
11035         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
11036         Make an std::vector.
11037         <n_comp_units>: Remove.
11038         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11039         to std::vector change.
11040         (dwarf2_per_objfile::get_cutu): Likewise.
11041         (dwarf2_per_objfile::get_cu): Likewise.
11042         (create_cus_from_index): Likewise.
11043         (create_addrmap_from_index): Likewise.
11044         (create_addrmap_from_aranges): Likewise.
11045         (dwarf2_read_index): Likewise.
11046         (dw2_find_last_source_symtab): Likewise.
11047         (dw2_map_symtabs_matching_filename): Likewise.
11048         (dw2_symtab_iter_next): Likewise.
11049         (dw2_print_stats): Likewise.
11050         (dw2_expand_all_symtabs): Likewise.
11051         (dw2_expand_symtabs_with_fullname): Likewise.
11052         (dw2_expand_marked_cus): Likewise.
11053         (dw2_map_symbol_filenames): Likewise.
11054         (create_cus_from_debug_names): Likewise.
11055         (dwarf2_read_debug_names): Likewise.
11056         (dw2_debug_names_iterator::next): Likewise.
11057         (dwarf2_initialize_objfile): Likewise.
11058         (set_partial_user): Likewise.
11059         (dwarf2_build_psymtabs_hard): Likewise.
11060         (read_comp_units_from_section): Remove arguments, adjust to
11061         std::vector change.
11062         (create_all_comp_units): Adjust to std::vector and
11063         read_comp_units_from_section changes.
11064         (dwarf2_find_containing_comp_unit): Adjust to std::vector
11065         change.
11066         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11067         (psyms_seen_size): Likewise.
11068         (write_gdbindex): Likewise.
11069         (write_debug_names): Likewise.
11070
11071 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11072
11073         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
11074         with dwarf2_per_objfile.
11075         (create_cus_from_index): Likewise.
11076         (create_signatured_type_table_from_index): Likewise.
11077         (dwarf2_read_index): Likewise.
11078         (dwarf2_initialize_objfile): Likewise.
11079         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
11080         per_cu rather than get_dwarf2_per_objfile.
11081
11082 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11083
11084         * dwarf2read.h (struct signatured_type): Forward declare.
11085         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
11086         New methods.
11087         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
11088         (dw2_get_cutu): ...this.
11089         (dwarf2_per_objfile::get_cu): Rename from...
11090         (dw2_get_cu): ...this.
11091         (dwarf2_per_objfile::get_tu): New.
11092         (create_addrmap_from_index): Adjust.
11093         (create_addrmap_from_aranges): Adjust.
11094         (dw2_find_last_source_symtab): Adjust.
11095         (dw2_map_symtabs_matching_filename): Adjust.
11096         (dw2_symtab_iter_next): Adjust.
11097         (dw2_print_stats): Adjust.
11098         (dw2_expand_all_symtabs): Adjust.
11099         (dw2_expand_symtabs_with_fullname): Adjust.
11100         (dw2_expand_marked_cus): Adjust.
11101         (dw_expand_symtabs_matching_file_matcher): Adjust.
11102         (dw2_map_symbol_filenames): Adjust.
11103         (dw2_debug_names_iterator::next): Adjust.
11104         (dwarf2_initialize_objfile): Adjust.
11105         (set_partial_user): Adjust.
11106         (dwarf2_build_psymtabs_hard): Adjust.
11107
11108 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11109
11110         * dwarf2read.c (create_signatured_type_table_from_debug_names):
11111         Remove unused variables.
11112         (dw2_map_symtabs_matching_filename): Likewise.
11113         (dwarf2_record_block_ranges): Likewise.
11114         (dwarf2_read_addr_index): Likewise.
11115         (follow_die_offset): Likewise.
11116
11117 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11118
11119         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
11120         to symbol_file_add_main.
11121
11122 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11123
11124         PR mi/22299
11125         * mi/mi-console.c (do_fputc_async_safe): New.
11126         (mi_console_file::write_async_safe): New.
11127         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
11128         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
11129         New.
11130         * ui-file.c (ui_file::putstrn): Adjust call to
11131         fputstrn_unfiltered.
11132         * utils.c (printchar): Replace do_fputs and do_fprintf
11133         parameters by do_fputc.
11134         (fputstr_filtered): Adjust call to printchar.
11135         (fputstr_unfiltered): Likewise.
11136         (fputstrn_filtered): Likewise.
11137         (fputstrn_unfiltered): Add do_fputc parameter, pass to
11138         printchar.
11139         * utils.h (do_fputc_ftype): New typedef.
11140         (fputstrn_unfiltered): Add do_fputc parameter.
11141
11142 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11143
11144         * regformats/i386/i386-avx.dat: Remove.
11145
11146 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11147
11148         PR gdb/22979
11149         * amd64-tdep.c (amd64_none_init_abi): New function.
11150         (amd64_x32_none_init_abi): New function.
11151         (_initialize_amd64_tdep): Register handlers for x86-64 and
11152         x64_32 with GDB_OSABI_NONE.
11153         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
11154         GDB_OSABI_NONE osabi.
11155
11156 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11157
11158         PR gdb/22980
11159         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
11160         GDB_OSABI_NONE.
11161         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
11162         * osabi.c (gdb_osabi_names): Add "unknown" entry.
11163
11164 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11165
11166         * common/byte-vector.h (char_vector): New type.
11167         * target.h (target_read_alloc): Return
11168         gdb::optional<byte_vector>.
11169         (target_read_stralloc): Return gdb::optional<char_vector>.
11170         (target_get_osdata): Return gdb::optional<char_vector>.
11171         * target.c (target_read_alloc_1): Templatize.  Replacement
11172         manual memory management with vector.
11173         (target_read_alloc): Change return type, adjust.
11174         (target_read_stralloc): Change return type, adjust.
11175         (target_get_osdata): Change return type, adjust.
11176         * auxv.c (struct auxv_info) <length>: Remove.
11177         <data>: Change type to gdb::optional<byte_vector>.
11178         (auxv_inferior_data_cleanup): Free auxv_info with delete.
11179         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
11180         (target_auxv_search): Adjust.
11181         (fprint_target_auxv): Adjust.
11182         * avr-tdep.c (avr_io_reg_read_command): Adjust.
11183         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
11184         (linux_make_corefile_notes): Adjust.
11185         * osdata.c (get_osdata): Adjust.
11186         * remote.c (remote_get_threads_with_qxfer): Adjust.
11187         (remote_memory_map): Adjust.
11188         (remote_traceframe_info): Adjust.
11189         (btrace_read_config): Adjust.
11190         (remote_read_btrace): Adjust.
11191         (remote_pid_to_exec_file): Adjust.
11192         * solib-aix.c (solib_aix_get_library_list): Adjust.
11193         * solib-dsbt.c (decode_loadmap): Don't free buf.
11194         (dsbt_get_initial_loadmaps): Adjust.
11195         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
11196         * solib-target.c (solib_target_current_sos): Adjust.
11197         * tracepoint.c (sdata_make_value): Adjust.
11198         * xml-support.c (xinclude_start_include): Adjust.
11199         (xml_fetch_content_from_file): Adjust.
11200         * xml-support.h (xml_fetch_another): Change return type.
11201         (xml_fetch_content_from_file): Change return type.
11202         * xml-syscall.c (xml_init_syscalls_info): Adjust.
11203         * xml-tdesc.c (file_read_description_xml): Adjust.
11204         (fetch_available_features_from_target): Change return type.
11205         (target_fetch_description_xml): Adjust.
11206         (target_read_description_xml): Adjust.
11207
11208 2018-04-06  Tom Tromey  <tom@tromey.com>
11209
11210         * value.c (~value): Update.
11211         (struct value) <contents>: Now unique_xmalloc_ptr.
11212         (value_contents_bits_eq, allocate_value_contents)
11213         (value_contents_raw, value_contents_all_raw)
11214         (value_contents_for_printing, value_contents_for_printing_const)
11215         (set_value_enclosing_type): Update.
11216
11217 2018-04-06  Tom Tromey  <tom@tromey.com>
11218
11219         * value.c (range_s): Remove typedef, VEC.
11220         (struct range): Add operator<.
11221         (range_lessthan): Remove.
11222         (ranges_contain): Change type.
11223         (~value): Update.
11224         (struct value) <unavailable, optimized_out>: Now std::vector.
11225         (value_entirely_available)
11226         (value_entirely_covered_by_range_vector)
11227         (value_entirely_unavailable, value_entirely_optimized_out):
11228         Update.
11229         (insert_into_bit_range_vector): Change argument type.
11230         (find_first_range_overlap): Likewise.
11231         (struct ranges_and_idx, value_contents_bits_eq)
11232         (require_not_optimized_out, require_available): Update.
11233         (ranges_copy_adjusted): Change argument types.
11234         (value_optimized_out, value_copy, value_fetch_lazy): Update.
11235
11236 2018-04-06  Tom Tromey  <tom@tromey.com>
11237
11238         * value.c (~value): Update.
11239         (struct value) <parent>: Now a value_ref_ptr.
11240         (value_parent, set_value_parent, value_address, value_copy):
11241         Update.
11242
11243 2018-04-06  Tom Tromey  <tom@tromey.com>
11244
11245         * value.c (struct value): Add constructor, destructor, and member
11246         initializers.
11247         (allocate_value_lazy, value_decref): Update.
11248
11249 2018-04-06  Tom Tromey  <tom@tromey.com>
11250
11251         * value.c (struct value) <released, next>: Remove.
11252         (all_values): Now a std::vector.
11253         (allocate_value_lazy): Update.
11254         (value_next): Remove.
11255         (value_mark, value_free_to_mark, release_value)
11256         (value_release_to_mark): Update.
11257
11258 2018-04-06  Tom Tromey  <tom@tromey.com>
11259
11260         * value.h (fetch_subexp_value, value_release_to_mark): Update.
11261         (free_value_chain): Remove.
11262         * value.c (free_value_chain): Remove.
11263         (value_release_to_mark): Return a std::vector.
11264         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
11265         std::vector.
11266         (check_condition): Update.
11267         * eval.c (fetch_subexp_value): Change "val_chain" to a
11268         std::vector.
11269         * breakpoint.c (update_watchpoint): Update.
11270         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
11271
11272 2018-04-06  Tom Tromey  <tom@tromey.com>
11273
11274         * value.h (free_all_values): Remove.
11275         * value.c (free_all_values): Remove.
11276
11277 2018-04-06  Tom Tromey  <tom@tromey.com>
11278
11279         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
11280         (value_history_chain, value_history_count): Remove.
11281         (value_history): New global.
11282         (record_latest_value, access_value_history, show_values)
11283         (preserve_values): Update.
11284
11285 2018-04-06  Tom Tromey  <tom@tromey.com>
11286
11287         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
11288         * varobj.c (varobj_set_display_format, varobj_set_value)
11289         (install_default_visualizer, construct_visualizer)
11290         (install_new_value, ~varobj, varobj_get_value_type)
11291         (my_value_of_variable, varobj_editable_p): Update.
11292         * c-varobj.c (c_describe_child, c_value_of_variable)
11293         (cplus_number_of_children, cplus_describe_child): Update.
11294         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
11295         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
11296         (ada_value_of_variable, ada_value_is_changeable_p): Update.
11297
11298 2018-04-06  Tom Tromey  <tom@tromey.com>
11299
11300         * printcmd.c (last_examine_address): Change type to
11301         value_ref_ptr.
11302         (do_examine, x_command): Update.
11303
11304 2018-04-06  Tom Tromey  <tom@tromey.com>
11305
11306         * value.c (release_value): Update.
11307         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
11308         (struct bpstats) <val>: Now a value_ref_ptr.
11309         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11310         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11311         (~watchpoint, print_it_watchpoint, watch_command_1)
11312         (invalidate_bp_value_on_memory_change): Update.
11313
11314 2018-04-06  Tom Tromey  <tom@tromey.com>
11315
11316         * varobj.c (varobj_clear_saved_item)
11317         (update_dynamic_varobj_children, install_new_value, ~varobj):
11318         Update.
11319         * value.h (value_incref): Move declaration earlier.
11320         (value_decref): Rename from value_free.
11321         (struct value_ref_policy): New.
11322         (value_ref_ptr): New typedef.
11323         (struct value_deleter): Remove.
11324         (gdb_value_up): Remove typedef.
11325         (release_value): Change return type.
11326         (release_value_or_incref): Remove.
11327         * value.c (set_value_parent): Update.
11328         (value_incref): Change return type.
11329         (value_decref): Rename from value_free.
11330         (value_free_to_mark, free_all_values, free_value_chain): Update.
11331         (release_value): Return value_ref_ptr.
11332         (release_value_or_incref): Remove.
11333         (record_latest_value, set_internalvar, clear_internalvar):
11334         Update.
11335         * stack.c (info_frame_command): Don't call value_free.
11336         * python/py-value.c (valpy_dealloc, valpy_new)
11337         (value_to_value_object): Update.
11338         * printcmd.c (do_examine): Update.
11339         * opencl-lang.c (lval_func_free_closure): Update.
11340         * mi/mi-main.c (register_changed_p): Don't call value_free.
11341         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
11342         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
11343         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
11344         value_free.
11345         * guile/scm-value.c (vlscm_free_value_smob)
11346         (vlscm_scm_from_value): Update.
11347         * frame.c (frame_register_unwind, frame_unwind_register_signed)
11348         (frame_unwind_register_unsigned, get_frame_register_bytes)
11349         (put_frame_register_bytes): Don't call value_free.
11350         * findvar.c (address_from_register): Don't call value_free.
11351         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
11352         * dwarf2loc.c (entry_data_value_free_closure)
11353         (value_of_dwarf_reg_entry, free_pieced_value_closure)
11354         (dwarf2_evaluate_loc_desc_full): Update.
11355         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11356         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11357         (~watchpoint, watch_command_1)
11358         (invalidate_bp_value_on_memory_change): Update.
11359         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
11360
11361 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
11362
11363         PR gdb/23022
11364         * warning.m4: Add -Wno-error=deprecated-register.
11365         * configure: Re-generate.
11366
11367 2018-04-05  Tom Tromey  <tom@tromey.com>
11368
11369         * linespec.h: Remove include of "vec.h".
11370
11371 2018-04-05  Tom Tromey  <tom@tromey.com>
11372
11373         * linespec.c (typep): Remove typedef.
11374         (find_methods, find_superclass_methods): Take a std::vector.
11375         (find_method): Use std::vector.
11376
11377 2018-04-05  Tom Tromey  <tom@tromey.com>
11378
11379         * utils.c (compare_strings): Remove.
11380         * utils.h (compare_strings): Remove.
11381         * objc-lang.h (find_imps): Update.
11382         * objc-lang.c (find_methods): Take a std::vector.
11383         (uniquify_strings, find_imps): Likewise.
11384         * linespec.c (find_methods): Take a std::vector.
11385         (decode_objc): Use std::vector.
11386         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
11387         a std::vector.
11388         (find_method, find_function_symbols): Use std::vector.
11389
11390 2018-04-05  Tom Tromey  <tom@tromey.com>
11391
11392         * completer.c (completion_tracker::completion_tracker): Remove
11393         cast.
11394         (completion_tracker::discard_completions): Likewise.
11395         * breakpoint.c (ambiguous_names_p): Remove cast.
11396         * ada-lang.c (_initialize_ada_language): Remove cast.
11397         * utils.h (streq): Update.
11398         (streq_hash): Add new declaration.
11399         * utils.c (streq): Return bool.
11400         (streq_hash): New function.
11401
11402 2018-04-05  Tom Tromey  <tom@tromey.com>
11403
11404         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
11405         Remove a string copy.
11406
11407 2018-04-05  Tom Tromey  <tom@tromey.com>
11408
11409         * linespec.c (filter_results): Use std::vector.
11410         (decode_line_2, decode_line_full): Update.
11411
11412 2018-04-05  Tom Tromey  <tom@tromey.com>
11413
11414         * linespec.c (canonical_to_fullform): Return std::string.
11415         (filter_results): Update.
11416         (struct decode_line_2_item): Add constructor.
11417         <fullform, displayform>: Now std::string.
11418         (decode_line_2_compare_items): Now a std::sort comparator.
11419         (decode_line_2): Update.
11420
11421 2018-04-05  Tom Tromey  <tom@tromey.com>
11422
11423         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
11424         (unexpected_linespec_error): Update.
11425         (linespec_parse_basic, parse_linespec): Update.
11426
11427 2018-04-05  Tom Tromey  <tom@tromey.com>
11428
11429         * linespec.c (linespec_parse_basic): Reindent.
11430
11431 2018-04-05  Tom Tromey  <tom@tromey.com>
11432
11433         * minsyms.h (iterate_over_minimal_symbols): Update.
11434         * minsyms.c (iterate_over_minimal_symbols): Take a
11435         gdb::function_view.
11436         * linespec.c (struct collect_minsyms): Remove.
11437         (compare_msyms): Now a std::sort comparator.
11438         (add_minsym): Add parameters.
11439         (search_minsyms_for_name): Update.  Use std::vector.
11440
11441 2018-04-03  Tom Tromey  <tom@tromey.com>
11442
11443         * mipsread.c (read_alphacoff_dynamic_symtab): Use
11444         gdb::byte_vector.
11445
11446 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
11447
11448         * MAINTAINERS (Write After Approval): Add Weimin Pan.
11449
11450 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
11451
11452         PR gdb/16959
11453         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
11454         printing static type.
11455
11456 2018-04-01  Tom Tromey  <tom@tromey.com>
11457
11458         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
11459         (rs6000_xfer_shared_libraries): Update.
11460
11461 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
11462
11463         * common/gdb_vecs.h (char_ptr): Remove.
11464         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
11465
11466 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
11467
11468         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
11469         with std::vector.
11470         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
11471
11472 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
11473
11474         * tracepoint.h (struct uploaded_tp): Initialize fields.
11475         <actions, step_actions, cmd_strings>: Change type to
11476         std::vector<char *>.
11477         * tracepoint.c (get_uploaded_tp): Allocate with new.
11478         (free_uploaded_tps): Free with delete.
11479         (parse_tracepoint_definition): Adjust to std::vector change.
11480         * breakpoint.c (read_uploaded_action): Likewise.
11481         (create_tracepoint_from_upload): Likewise.
11482         * ctf.c (ctf_write_uploaded_tp): Likewise.
11483         (SET_ARRAY_FIELD): Likewise.
11484         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
11485
11486 2018-03-30  Tom Tromey  <tom@tromey.com>
11487
11488         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
11489         std::unique_ptr.
11490         (svr4_keep_data_in_core): Update.
11491         (svr4_read_so_list): Update.
11492
11493 2018-03-30  Tom Tromey  <tom@tromey.com>
11494
11495         * windows-nat.c (handle_output_debug_string, handle_exception):
11496         Update.
11497         * target.h (target_read_string): Update.
11498         * target.c (target_read_string): Change "string" to
11499         unique_xmalloc_ptr.
11500         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
11501         Update.
11502         * solib-frv.c (frv_current_sos): Update.
11503         * solib-dsbt.c (dsbt_current_sos): Update.
11504         * solib-darwin.c (darwin_current_sos): Update.
11505         * linux-thread-db.c (inferior_has_bug): Update.
11506         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
11507         Update.  Remove alloca.
11508         * ada-lang.c (ada_main_name): Update.
11509
11510 2018-03-30  Tom Tromey  <tom@tromey.com>
11511
11512         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
11513         (struct dwo_file_deleter): New.
11514         (dwo_file_up): New typedef.
11515         (open_and_init_dwo_file): Use dwo_file_up.
11516         (free_dwo_file_cleanup): Remove.
11517
11518 2018-03-30  Tom Tromey  <tom@tromey.com>
11519
11520         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
11521         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
11522
11523 2018-03-30  Tom Tromey  <tom@tromey.com>
11524
11525         * dwarf2read.c (class free_cached_comp_units): New class.
11526         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
11527         (free_cached_comp_units): Remove function.
11528
11529 2018-03-30  Tom Tromey  <tom@tromey.com>
11530
11531         * utils.h (make_cleanup_unpush_target): Remove.
11532         * inf-ptrace.c (struct target_unpusher): New.
11533         (target_unpush_up) New typedef.
11534         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
11535         target_unpush_up.
11536         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
11537
11538 2018-03-27  Tom Tromey  <tom@tromey.com>
11539
11540         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
11541
11542 2018-03-27  Pedro Alves  <palves@redhat.com>
11543             Tom Tromey  <tom@tromey.com>
11544
11545         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
11546         destructor.  Now a class.
11547         (gdb_readline_wrapper_cleanup): Remove function.
11548         (gdb_readline_wrapper): Remove cleanups.
11549
11550 2018-03-27  Tom Tromey  <tom@tromey.com>
11551
11552         * typeprint.h (struct type_print_options) <local_typedefs,
11553         global_typedefs>: Remove "struct" keyword.
11554         (class typedef_hash_table): New class.
11555         (recursively_update_typedef_hash, add_template_parameters)
11556         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
11557         (find_typedef_in_hash): Don't declare.
11558         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
11559         (typedef_hash_table::recursively_update): Rename from
11560         recursively_update_typedef_hash.  Now a member.
11561         (typedef_hash_table::add_template_parameters): Rename from
11562         add_template_parameters.  Now a member.
11563         (typedef_hash_table::typedef_hash_table): Now a constructor;
11564         rename from create_typedef_hash.
11565         (typedef_hash_table::~typedef_hash_table): Now a destructor;
11566         rename from free_typedef_hash.
11567         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
11568         (do_free_global_table): Remove.
11569         (typedef_hash_table::typedef_hash_table): New constructor; renamed
11570         from copy_type_recursive.
11571         (create_global_typedef_table): Remove.
11572         (typedef_hash_table::find_global_typedef): Now a member of
11573         typedef_hash_table.
11574         (typedef_hash_table::find_typedef): Rename from
11575         find_typedef_in_hash; now a member.
11576         (whatis_exp): Update.
11577         * extension.h (struct ext_lang_type_printers): Add constructor and
11578         destructor.
11579         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
11580         declare.
11581         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
11582         Now a constructor; rename from start_ext_lang_type_printers.
11583         (ext_lang_type_printers): Now a destructor; rename from
11584         free_ext_lang_type_printers.
11585         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
11586         Update.
11587         (c_type_print_base_struct_union): Update.  Remove cleanups.
11588
11589 2018-03-27  Tom Tromey  <tom@tromey.com>
11590
11591         * dwarf-index-write.c: Include <cmath>.
11592
11593 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
11594
11595         * NEWS: Add entry describing new "set|show varsize-limit" command.
11596         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
11597         command.
11598         * printcmd.c (_initialize_printcmd): Add "set var" alias of
11599         "set variable".
11600
11601 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
11602
11603         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
11604         dwarf-index-write.c
11605         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
11606         * dwarf-index-common.c: New file.
11607         * dwarf-index-common.h: New file.
11608         * dwarf-index-write.c: New file.
11609         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
11610         (struct dwarf2_section_info): Move from here.
11611         (dwarf2_section_info_def): Likewise.
11612         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
11613         (offset_type): Likewise.
11614         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
11615         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
11616         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
11617         (byte_swap): Likewise.
11618         (MAYBE_SWAP): Likewise.
11619         (dwarf2_per_cu_ptr): Likewise.
11620         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
11621         (struct tu_stats): Likewise.
11622         (struct dwarf2_per_objfile): Likewise.
11623         (struct dwarf2_per_cu_data): Likewise.
11624         (struct signatured_type): Likewise.
11625         (sig_type_ptr): Likewise.
11626         (DEF_VEC_P (sig_type_ptr)): Likewise.
11627         (INDEX4_SUFFIX): Likewise.
11628         (INDEX5_SUFFIX): Likewise.
11629         (DEBUG_STR_SUFFIX): Likewise.
11630         (dwarf2_read_section): Make non-static.
11631         (mapped_index_string_hash): Move from here.
11632         (dwarf5_djb_hash): Likewise.
11633         (file_write): Likewise.
11634         (class data_buf): Likewise.
11635         (struct symtab_index_entry): Likewise.
11636         (struct mapped_symtab): Likewise.
11637         (find_slot): Likewise.
11638         (hash_expand): Likewise.
11639         (add_index_entry): Likewise.
11640         (uniquify_cu_indices): Likewise.
11641         (class c_str_view): Likewise.
11642         (class c_str_view_hasher): Likewise.
11643         (class vector_hasher): Likewise.
11644         (write_hash_table): Likewise.
11645         (psym_index_map): Likewise.
11646         (struct addrmap_index_data): Likewise.
11647         (add_address_entry): Likewise.
11648         (add_address_entry_worker): Likewise.
11649         (write_address_map): Likewise.
11650         (symbol_kind): Likewise.
11651         (write_psymbols): Likewise.
11652         (struct signatured_type_index_data): Likewise.
11653         (write_one_signatured_type): Likewise.
11654         (recursively_count_psymbols): Likewise.
11655         (recursively_write_psymbols): Likewise.
11656         (class debug_names): Likewise.
11657         (check_dwarf64_offsets): Likewise.
11658         (psyms_seen_size): Likewise.
11659         (write_gdbindex): Likewise.
11660         (write_debug_names): Likewise.
11661         (assert_file_size): Likewise.
11662         (write_psymtabs_to_index): Likewise.
11663         (save_gdb_index_command): Likewise.
11664         (_initialize_dwarf2_read): Don't register the "save gdb-index"
11665         command.
11666         * dwarf2read.h: New file.
11667
11668 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
11669
11670         PR gdb/22670
11671         * dwarf2read.c (dwarf2_physname): Do not return the demangled
11672         symbol name if the CU's language stores symbol names in linkage
11673         format.
11674         * language.h (struct language_defn)
11675         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
11676         all instances of this struct.
11677
11678 2018-03-26  Tom Tromey  <tom@tromey.com>
11679
11680         * stack.c (backtrace_command_1): Remove verbose code.
11681
11682 2018-03-26  Tom Tromey  <tom@tromey.com>
11683
11684         * python/py-framefilter.c (py_print_type): Don't catch
11685         exceptions.  Return void.
11686         (py_print_value): Likewise.
11687         (py_print_single_arg): Likewise.
11688         (enumerate_args): Don't catch exceptions.
11689         (py_print_args): Likewise.
11690         (py_print_frame): Likewise.
11691         (gdbpy_apply_frame_filter): Catch exceptions here.
11692
11693 2018-03-26  Tom Tromey  <tom@tromey.com>
11694
11695         * stack.c (_initialize_stack): Remove trailing newlines from help
11696         text.  Add "Usage" line to "backtrace" help.
11697
11698 2018-03-26  Tom Tromey  <tom@tromey.com>
11699
11700         PR python/16486:
11701         * python/py-framefilter.c (py_print_args): Call wrap_hint.
11702
11703 2018-03-26  Tom Tromey  <tom@tromey.com>
11704
11705         * python/py-framefilter.c (py_print_single_arg): Return
11706         EXT_LANG_BT_ERROR from catch.
11707
11708 2018-03-26  Tom Tromey  <tom@tromey.com>
11709
11710         PR backtrace/15584:
11711         * stack.c (backtrace_command_1): Move some code into no-filters
11712         "if".
11713
11714 2018-03-26  Tom Tromey  <tom@tromey.com>
11715
11716         * python/py-framefilter.c (throw_quit_or_print_exception): New
11717         function.
11718         (gdbpy_apply_frame_filter): Use it.
11719
11720 2018-03-26  Tom Tromey  <tom@tromey.com>
11721
11722         PR cli/17716:
11723         * python/py-framefilter.c (py_print_type, py_print_value)
11724         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
11725         RETURN_MASK_ERROR.
11726
11727 2018-03-26  Tom Tromey  <tom@tromey.com>
11728
11729         * python/py-framefilter.c (enumerate_args): Use
11730         gdb::unique_xmalloc_ptr.
11731
11732 2018-03-26  Tom Tromey  <tom@tromey.com>
11733
11734         * python/py-framefilter.c (py_print_frame): Return
11735         EXT_LANG_BT_OK.
11736         (gdbpy_apply_frame_filter): Update comment.
11737         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
11738         Remove.
11739         <EXT_LANG_BT_NO_FILTERS>: Change value.
11740
11741 2018-03-26  Tom Tromey  <tom@tromey.com>
11742
11743         PR backtrace/15582:
11744         * stack.c (backtrace_command): Parse "hide" argument.
11745         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
11746         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
11747         constant.
11748
11749 2018-03-26  Tom Tromey  <tom@tromey.com>
11750
11751         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
11752         add "flags".
11753         (backtrace_command): Remove "fulltrace", add "flags".
11754
11755 2018-03-26  Tom Tromey  <tom@tromey.com>
11756
11757         * stack.c (backtrace_command): Rewrite command line parsing.
11758
11759 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
11760
11761         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
11762
11763 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
11764
11765         * filename-seen-cache.h: Add include guard.
11766
11767 2018-03-26  Keith Seitz  <keiths@redhat.com>
11768
11769         * symfile.c (place_section): Remove "struct" from section_addr_info
11770         in comment.
11771         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
11772         "struct" keyword from section_addr_info.
11773
11774 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
11775
11776         * regformats/regdef.h (reg): Add constructors.
11777
11778 2018-03-25  Pedro Alves  <palves@redhat.com>
11779
11780         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
11781         if then/else bodies in var_func_name extraction.
11782
11783 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
11784
11785         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
11786         lookup_minimal_symbol() to find symbol entry.
11787         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
11788
11789 2018-03-23  Keith Seitz  <keiths@redhat.com>
11790
11791         PR c++/22968
11792         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
11793         nested type definitions for C++, too.
11794
11795 2018-03-23  Tom Tromey  <tom@tromey.com>
11796
11797         * machoread.c (struct oso_el): Add a constructor.  Don't define as
11798         a typedef.
11799         (macho_register_oso): Remove.
11800         (macho_symtab_read): Take a std::vector.
11801         (oso_el_compare_name): Now a std::sort comparator.
11802         (macho_symfile_read_all_oso): Take a std::vector.
11803         (macho_symfile_read): Use std::vector.  Remove cleanups.
11804
11805 2018-03-22  Tom Tromey  <tom@tromey.com>
11806
11807         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
11808         (record_full_goto_bookmark): Use std::string.
11809
11810 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11811
11812         PR tdep/18295
11813         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
11814         a single mask.
11815
11816 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11817
11818         * rs6000-tdep.c (store_insn_p): New function.
11819         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
11820         and cr_reg to their unshifted values. Use store_insn_p to
11821         match LR saves using either R1 or fdata->alloca_reg. Use
11822         store_insn_p to match CR saves. Set alloca_reg_offset
11823         when alloca_reg and framep are set. Remove lr_reg shift
11824         when assigning to fdata->lr_register.
11825
11826 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11827
11828         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
11829         command line args instead of emitting a warning.
11830
11831 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
11832
11833         * tracepoint.h (struct static_tracepoint_marker): Initialize
11834         fields, define default constructor, move constructor and move
11835         assignment, disable the rest.
11836         <str_id, extra>: Make std::string.
11837         (release_static_tracepoint_marker): Remove.
11838         (free_current_marker): Remove.
11839         * tracepoint.c (free_current_marker): Remove.
11840         (parse_static_tracepoint_marker_definition): Adjust to
11841         std::string, use new hex2str overload.
11842         (release_static_tracepoint_marker): Remove.
11843         (print_one_static_tracepoint_marker): Get marker by reference
11844         and adjust to std::string.
11845         (info_static_tracepoint_markers_command): Adjust to std::vector
11846         changes
11847         * target.h (static_tracepoint_marker_p): Remove typedef.
11848         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
11849         (struct target_ops) <to_static_tracepoint_marker_at>: Return
11850         bool.
11851         <to_static_tracepoint_markers_by_strid>: Return std::vector.
11852         * target-debug.h
11853         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
11854         (target_debug_print_std_vector_static_tracepoint_marker): New.
11855         (target_debug_print_struct_static_tracepoint_marker_p): Rename
11856         to...
11857         (target_debug_print_static_tracepoint_marker_p): ... this.
11858         * target-delegates.c: Re-generate.
11859         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
11860         Make std::string.
11861         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
11862         (decode_static_tracepoint_spec): Adjust to std::vector.
11863         (tracepoint_print_one_detail): Adjust to std::string.
11864         (strace_marker_decode_location): Adjust to std::string.
11865         (update_static_tracepoint): Adjust to std::string, remove call
11866         to release_static_tracepoint_marker.
11867         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
11868         Adjust to std::vector.
11869         * remote.c (remote_static_tracepoint_marker_at): Return bool.
11870         (remote_static_tracepoint_markers_by_strid): Adjust to
11871         std::vector.
11872         * common/rsp-low.h (hex2str): New overload with explicit count
11873         of bytes.
11874         * common/rsp-low.c (hex2str): New overload with explicit count
11875         of bytes.
11876         * unittests/rsp-low-selftests.c (test_hex2str): New function.
11877         (_initialize_rsp_low_selftests): Add test_hex2str test.
11878         * unittests/tracepoint-selftests.c
11879         (test_parse_static_tracepoint_marker_definition): Adjust to
11880         std::string.
11881
11882 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
11883
11884         * tracepoint.c (parse_static_tracepoint_marker_definition):
11885         Consider case where the definition is followed by more
11886         definitions.
11887         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11888         tracepoint-selftests.c.
11889         * unittests/tracepoint-selftests.c: New.
11890
11891 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11892
11893         * MAINTAINERS (Write After Approval): Add Pedro Franco de
11894         Carvalho.
11895
11896 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
11897
11898         * symtab.c (find_pc_sect_line): fixed indentation.
11899
11900 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
11901
11902         * symtab.c (find_pc_sect_line): now uses binary search.
11903
11904 2018-03-19  Tom Tromey  <tom@tromey.com>
11905
11906         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
11907         "IDENT" production.
11908
11909 2018-03-19  Pedro Alves  <palves@redhat.com>
11910             Tom Tromey  <tom@tromey.com>
11911
11912         * unittests/observable-selftests.c: New file.
11913         * common/observable.h: New file.
11914         * observable.h: New file.
11915         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
11916         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
11917         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
11918         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
11919         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
11920         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
11921         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
11922         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
11923         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
11924         python/py-breakpoint.c, python/py-finishbreakpoint.c,
11925         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
11926         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
11927         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
11928         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
11929         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
11930         tui/tui-interp.c, valops.c: Update all users.
11931         * tui/tui-hooks.c (tui_bp_created_observer)
11932         (tui_bp_deleted_observer, tui_bp_modified_observer)
11933         (tui_inferior_exit_observer, tui_before_prompt_observer)
11934         (tui_normal_stop_observer, tui_register_changed_observer):
11935         Remove.
11936         (tui_observers_token): New global.
11937         (attach_or_detach, tui_attach_detach_observers): New functions.
11938         (tui_install_hooks, tui_remove_hooks): Use
11939         tui_attach_detach_observers.
11940         * record-btrace.c (record_btrace_thread_observer): Remove.
11941         (record_btrace_thread_observer_token): New global.
11942         * observer.sh: Remove.
11943         * observer.c: Rename to observable.c.
11944         * observable.c (namespace gdb_observers): Define new objects.
11945         (observer_debug): Move into gdb_observers namespace.
11946         (struct observer, struct observer_list, xalloc_observer_list_node)
11947         (xfree_observer_list_node, generic_observer_attach)
11948         (generic_observer_detach, generic_observer_notify): Remove.
11949         (_initialize_observer): Update.
11950         Don't include observer.inc.
11951         * Makefile.in (generated_files): Remove observer.h, observer.inc.
11952         (clean mostlyclean): Likewise.
11953         (observer.h, observer.inc): Remove targets.
11954         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
11955         (COMMON_SFILES): Use observable.c, not observer.c.
11956         * .gitignore: Remove observer.h.
11957
11958 2018-03-18  Tom Tromey  <tom@tromey.com>
11959
11960         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
11961         gdb::def_vector.
11962         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
11963
11964 2018-03-17  Tom Tromey  <tom@tromey.com>
11965
11966         * auto-load.c (auto_load_objfile_script_1): Use std::string.
11967
11968 2018-03-17  Tom Tromey  <tom@tromey.com>
11969
11970         * target.c (class scoped_target_fd): New.
11971         (target_fileio_close_cleanup): Remove.
11972         (target_fileio_read_alloc_1): Use scoped_target_fd.
11973
11974 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
11975
11976         * silent-rules.mk: New.
11977         * Makefile.in: Include silent-rules.mk
11978         (srcdir, VPATH, top_srcdir): Move up.
11979         (COMPILE): Add ECHO_CXX.
11980         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
11981         (init.c): Add ECHO_INIT_C.
11982         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
11983         (version.c): Add ECHO_GEN.
11984         (printcmd.o): Add ECHO_CXX.
11985         (target-float.o): Add ECHO_CXX.
11986         (ada-exp.o): Add ECHO_CXX.
11987         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
11988         (insight$(EXEEXT)): Add ECHO_CXXLD.
11989         * gnulib/configure.ac: Add AM_SILENT_RULES.
11990         * gnulib/aclocal.m4: Re-generate.
11991         * gnulib/configure: Re-generate.
11992         * gnulib/import/Makefile.in: Re-generate.
11993
11994 2018-03-16  Tom Tromey  <tom@tromey.com>
11995
11996         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
11997         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
11998         * utils.c (do_free_section_addr_info)
11999         (make_cleanup_free_section_addr_info): Remove.
12000         * symfile.h (struct other_sections): Add constructor.
12001         (struct section_addr_info): Remove.
12002         (section_addr_info): New typedef.
12003         (struct sym_fns) <sym_offsets>: Change type of parameter.
12004         (build_section_addr_info_from_objfile)
12005         (relative_addr_info_to_section_offsets, addr_info_make_relative)
12006         (default_symfile_offsets, symbol_file_add)
12007         (symbol_file_add_from_bfd)
12008         (build_section_addr_info_from_section_table): Update.
12009         (alloc_section_addr_info, free_section_addr_info): Don't declare.
12010         * symfile.c (alloc_section_addr_info): Remove.
12011         (build_section_addr_info_from_section_table): Change return type.
12012         Update.
12013         (build_section_addr_info_from_bfd)
12014         (build_section_addr_info_from_objfile): Likewise.
12015         (free_section_addr_info): Remove.
12016         (relative_addr_info_to_section_offsets): Change type of "addrs".
12017         (addrs_section_compar): Now a std::sort comparator.
12018         (addrs_section_sort): Change return type.
12019         (addr_info_make_relative): Change type of "addrs".  Update.
12020         (default_symfile_offsets, syms_from_objfile_1)
12021         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
12022         (symbol_file_add_separate): Update.
12023         (symbol_file_add): Change type of "addrs".  Update.
12024         (add_symbol_file_command): Update.  Remove cleanups.
12025         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
12026         cleanups.
12027         * symfile-debug.c (debug_sym_offsets): Change type of "info".
12028         * solib.c (solib_read_symbols): Update.
12029         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
12030         * machoread.c (macho_symfile_offsets): Update.
12031         * jit.c (jit_bfd_try_read_symtab): Update.
12032
12033 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
12034
12035         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12036         unittests/utils-selftests.c.
12037         * unittests/utils-selftests.c: New file.
12038
12039 2018-03-14  Tom Tromey  <tom@tromey.com>
12040
12041         PR cli/14977:
12042         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
12043         for NULL.
12044
12045 2018-03-14  Tom Tromey  <tom@tromey.com>
12046
12047         PR cli/19918:
12048         * printcmd.c (printf_pointer): Allow "-" in format.
12049
12050 2018-03-14  Tom Tromey  <tom@tromey.com>
12051
12052         * printcmd.c (_initialize_printcmd): Add usage to printf.
12053
12054 2018-03-14  Yao Qi  <qiyao@sourceware.org>
12055
12056         * MAINTAINERS: Update my email address.
12057
12058 2018-03-13  Tom Tromey  <tom@tromey.com>
12059
12060         * machoread.c (macho_check_dsym): Change filenamep to a
12061         std::string*.
12062         (macho_symfile_read): Update.
12063         * symfile.c (load_command): Use std::string.
12064
12065 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
12066
12067         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
12068         to error message string.
12069         (riscv_register_name): Use xsnprintf instead of sprintf.
12070         (riscv_insn::fetch_instruction): Use gdb_assert instead of
12071         internal_error.
12072         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
12073         error.
12074         (riscv_push_dummy_call): Likewise.
12075
12076 2018-03-12  Tom Tromey  <tom@tromey.com>
12077
12078         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
12079         Use gdb::byte_vector.
12080         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
12081
12082 2018-03-12  Yao Qi  <yao.qi@linaro.org>
12083
12084         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
12085         parameter type to readable_regcache.
12086         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
12087         the declaration.
12088
12089 2018-03-11  Tom Tromey  <tom@tromey.com>
12090
12091         * dwarf2read.c (struct nextfield): Add initializers.
12092         (struct nextfnfield): Remove.
12093         (struct fnfieldlist): Add initializers.  Remove "length" and
12094         "head", use std::vector.
12095         (struct decl_field_list): Remove.
12096         (struct field_info): Add initializers.
12097         <fields, baseclasses>: Now std::vector.
12098         <nbaseclasses, nfnfields, typedef_field_list_count,
12099         nested_types_list_count>: Remove.
12100         (dwarf2_add_field, dwarf2_add_type_defn)
12101         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
12102         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
12103         (process_structure_scope): Update.
12104
12105 2018-03-11  Tom Tromey  <tom@tromey.com>
12106
12107         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
12108         for use by std::sort.
12109         (build_type_psymtabs_1): Use std::vector.
12110
12111 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
12112
12113         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
12114         and LIBMPFR in the printed configuration.
12115
12116 2018-03-08  Tom Tromey  <tom@tromey.com>
12117
12118         * source.c (get_filename_and_charpos): Use scoped_fd.
12119         * nto-procfs.c (procfs_open_1): Use scoped_fd.
12120         (procfs_pidlist): Likewise.
12121         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
12122         (iterate_over_mappings): Likewise.
12123
12124 2018-03-08  Tom Tromey  <tom@tromey.com>
12125
12126         * infcall.c (struct call_return_meta_info)
12127         <stack_temporaries_enabled>: Remove.
12128         (get_call_return_value, call_function_by_hand_dummy): Update.
12129         * thread.c (disable_thread_stack_temporaries): Remove.
12130         (enable_thread_stack_temporaries): Remove.
12131         (thread_stack_temporaries_enabled_p): Return bool.
12132         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
12133         (get_last_thread_stack_temporary): Update.
12134         * eval.c (evaluate_subexp): Update.
12135         * gdbthread.h (class enable_thread_stack_temporaries): Now a
12136         class, not a function.
12137         (value_ptr, value_vec): Remove typedefs.
12138         (class thread_info) <stack_temporaries_enabled>: Now bool.
12139         <stack_temporaries>: Now a std::vector.
12140         (thread_stack_temporaries_enabled_p)
12141         (value_in_thread_stack_temporaries): Return bool.
12142
12143 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
12144
12145         * remote.c (putpkt_binary): Fix omitted bytes reporting.
12146         (getpkt_or_notif_sane_1): Likewise.
12147
12148 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12149
12150         * build-id.c (build_id_to_debug_bfd): Use std::string.
12151
12152 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12153
12154         * build-id.c (find_separate_debug_file_by_buildid): Return
12155         std::string.
12156         * build-id.h (find_separate_debug_file_by_buildid): Return
12157         std::string.
12158         * coffread.c (coff_symfile_read): Adjust to std::string.
12159         * elfread.c (elf_symfile_read): Adjust to std::string.
12160         * symfile.c (separate_debug_file_exists): Change parameter to
12161         std::string.
12162         (find_separate_debug_file): Return std::string.
12163         (find_separate_debug_file_by_debuglink): Return std::string.
12164         * symfile.h (find_separate_debug_file_by_debuglink): Return
12165         std::string.
12166
12167 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12168
12169         * common/xml-utils.c (xml_escape_text): Move code to...
12170         (xml_escape_text_append): ... this new function.
12171         * common/xml-utils.h (xml_escape_text_append): New declaration.
12172         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
12173         New function.
12174         (_initialize_xml_utils): register test_xml_escape_text_append as
12175         a selftest.
12176
12177 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
12178
12179         * defs.h: Remove MAX_REGISTER_SIZE.
12180         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
12181         asserts.
12182         * python/py-unwind.c (pyuw_sniffer): Likewise.
12183
12184 2018-03-07  Tom Tromey  <tom@tromey.com>
12185
12186         * linux-tdep.c (linux_info_proc): Update.
12187         * target.h (struct target_ops) <to_fileio_readlink>: Return
12188         optional<string>.
12189         (target_fileio_readlink): Return optional<string>.
12190         * remote.c (remote_hostio_readlink): Return optional<string>.
12191         * inf-child.c (inf_child_fileio_readlink): Return
12192         optional<string>.
12193         * target.c (target_fileio_readlink): Return optional<string>.
12194
12195 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
12196
12197         * regcache.c (cooked_read_test): Add riscv to the list of
12198         architectures that have a save_reggroup.
12199
12200 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12201
12202         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
12203         value is not a dynamic class object.
12204
12205 2018-03-06  Tom Tromey  <tom@tromey.com>
12206
12207         * rust-exp.y: Formatting fixes.
12208
12209 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12210
12211         * riscv-tdep.c (riscv_register_name): Remove target description
12212         support.
12213         (riscv_gdbarch_init): Remove target description check.
12214
12215 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12216
12217         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
12218         comment.
12219         * riscv-tdep.h: Likewise.
12220
12221 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12222
12223         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
12224         (riscv_pseudo_register_write): Delete.
12225         (riscv_gdbarch_init): Remove all use of pseudo registers.
12226
12227 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12228
12229         * record-btrace.c (btrace_print_lines): Replace cleanup
12230         parameter with RAII equivalents.
12231         (btrace_insn_history): Replace cleanup with RAII equivalents.
12232         * ui-out.h (make_cleanup_ui_out_list_begin_end,
12233         make_cleanup_ui_out_tuple_begin_end): Remove.
12234         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
12235         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
12236         make_cleanup_ui_out_list_begin_end): Remove.
12237
12238 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12239
12240         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
12241         parameter types to std::vector.  Use bool.
12242         (record_btrace_wait): Replace VEC(tp_t) with
12243         std::vector<thread_info *>.
12244         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
12245
12246 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12247
12248         * record-btrace.c (record_btrace_disable_callback): Remove.
12249         (struct scoped_btrace_disable): New.
12250         (record_btrace_open): Use scoped_btrace_disable.
12251
12252 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12253
12254         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
12255         reading values from registers.
12256
12257 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12258
12259         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
12260         where appropriate.
12261
12262 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12263
12264         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
12265         change parameter type.  Use GDB's print functions, and use
12266         core_addr_to_string where appropriate.
12267         (riscv_push_dummy_call): Use core_addr_to_string where
12268         appropriate, update call to riscv_print_arg_location, and reindent
12269         a few lines.
12270         (riscv_return_value): Update call to riscv_print_arg_location.
12271
12272 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12273             Tim Newsome <tim@sifive.com>
12274             Albert Ou <a0u@eecs.berkeley.edu>
12275             Darius Rad <darius@bluespec.com>
12276
12277         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
12278         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
12279         (ALLDEPFILES): Add riscv-tdep.c
12280         * configure.tgt: Add riscv support.
12281         * riscv-tdep.c: New file.
12282         * riscv-tdep.h: New file.
12283         * NEWS: Mention new target.
12284         * MAINTAINERS: Add entry for riscv.
12285
12286 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12287
12288         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
12289         fields within aggregates.
12290
12291 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
12292
12293         * record-btrace.c (btrace_print_lines): Change type of flags to
12294         gdb_disassembly_flags.
12295
12296 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12297
12298         * fbsd-nat.c: Include "inf-ptrace.h".
12299         (USE_SIGTRAP_SIGINFO): Conditionally define.
12300         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
12301         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
12302         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
12303         function.
12304         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
12305         Likewise.
12306         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
12307         Likewise.
12308         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
12309         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
12310         "supports_stopped_by_hw_breakpoint" target methods.
12311
12312 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12313
12314         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
12315         * fbsd-nat.c (debug_fbsd_nat): New variable.
12316         (show_fbsd_nat_debug): New function.
12317         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
12318         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
12319
12320 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12321
12322         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
12323         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
12324         prototype.
12325         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
12326         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
12327         method.
12328
12329 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12330
12331         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
12332         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
12333
12334 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12335
12336         * charset.c (struct charset_vector): New.
12337         (charsets): Change type to charset_vector.
12338         (find_charset_names): Adjust.
12339         (add_one): Adjust.
12340         (_initialize_charset): Adjust.
12341
12342 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12343
12344         * progspace.h (struct program_space) <deleted_solibs>: Change
12345         type to std::vector<std::string>.
12346         * progspace.c (clear_program_space_solib_cache): Adjust.
12347         * breakpoint.c (print_solib_event): Adjust.
12348         (check_status_catch_solib): Adjust.
12349         * solib.c (update_solib_list): Adjust.
12350         * ui-out.h (class ui_out) <field_string>: New overload.
12351         * ui-out.c (ui_out::field_string): New overload.
12352
12353 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12354
12355         * progspace.h (struct program_space): Add constructor and
12356         destructor, initialize fields.
12357         (add_program_space): Remove.
12358         * progspace.c (add_program_space): Rename to...
12359         (program_space::program_space): ... this.
12360         (release_program_space): Rename to...
12361         (program_space::~program_space): ... this.
12362         (delete_program_space): Use delete to delete program_space.
12363         (initialize_progspace): Use new to allocate program_space.
12364         * inferior.c (add_inferior_with_spaces): Likewise.
12365         (clone_inferior_command): Likewise.
12366         * infrun.c (follow_fork_inferior): Likewise.
12367         (handle_vfork_child_exec_or_exit): Likewise.
12368
12369 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12370
12371         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
12372         (delim_string_to_char_ptr_vec): Return std::vector of
12373         gdb::unique_xmalloc_ptr.
12374         (dirnames_to_char_ptr_vec_append): Take std::vector of
12375         gdb::unique_xmalloc_ptr.
12376         (dirnames_to_char_ptr_vec): Return std::vector of
12377         gdb::unique_xmalloc_ptr.
12378         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
12379         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
12380         (delim_string_to_char_ptr_vec): Return an std::vector of
12381         gdb::unique_xmalloc_ptr, adjust the code.
12382         (dirnames_to_char_ptr_vec_append): Take an std::vector of
12383         gdb::unique_xmalloc_ptr, adjust the code.
12384         (dirnames_to_char_ptr_vec): Return an std::vector of
12385         gdb::unique_xmalloc_ptr, adjust the code.
12386         * auto-load.c (auto_load_safe_path_vec): Change type to
12387         std::vector of gdb::unique_xmalloc_ptr.
12388         (auto_load_expand_dir_vars): Return an std::vector of
12389         gdb::unique_xmalloc_ptr, adjust the code.
12390         (auto_load_safe_path_vec_update): Adjust.
12391         (filename_is_in_auto_load_safe_path_vec): Adjust.
12392         (auto_load_objfile_script_1): Adjust.
12393         * build-id.c (build_id_to_debug_bfd): Adjust.
12394         * linux-thread-db.c (thread_db_load_search): Adjust.
12395         * source.c (add_path): Adjust.
12396         (openp): Adjust.
12397         * symfile.c (find_separate_debug_file): Adjust.
12398         * utils.c (do_free_char_ptr_vec): Remove.
12399         (make_cleanup_free_char_ptr_vec): Remove.
12400
12401 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
12402
12403         PR gdb/22907
12404         * common/pathstuff.c: Conditionally include "<windows.h>".
12405
12406 2018-03-01  Georg Sauthoff  <mail@georg.so>
12407
12408         PR gdb/22888
12409         * gcore.in: Quote variables and switch interpreter to bash.
12410
12411 2018-03-01  Tom Tromey  <tom@tromey.com>
12412
12413         * dwarf2read.c (alloc_discriminant_info): Fix default_index
12414         assertion.  Add assertion for discriminant_index.
12415         (quirk_rust_enum): Use correct base type name in univariant case.
12416
12417 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
12418
12419         * record.c (get_call_history_modifiers): Return a
12420         record_print_flags.
12421         (cmd_record_call_history): Adjust.
12422         * record-btrace.c (record_btrace_call_history): Adjust.
12423         (record_btrace_call_history_range): Adjust.
12424         (record_btrace_call_history_from): Adjust.
12425         * target-debug.h (target_debug_print_record_print_flags): New.
12426         * target-delegates.c: Re-generate.
12427         * target.c (target_call_history): Change flags type.
12428         (target_call_history_from): Likewise.
12429         (target_call_history_range): Likewise.
12430         * target.h (struct target_ops) <target_call_history>: Likewise.
12431         (target_call_history_from): Likewise.
12432         (target_call_history_range): Likewise.
12433
12434 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
12435             Simon Marchi  <simon.marchi@polymtl.ca>
12436
12437         * common/common-utils.c: Include "sys/stat.h".
12438         (is_regular_file): Move here from "source.c"; change return
12439         type to "bool".
12440         * common/common-utils.h (is_regular_file): New prototype.
12441         * common/pathstuff.c (contains_dir_separator): New function.
12442         * common/pathstuff.h (contains_dir_separator): New prototype.
12443         * source.c: Don't include "sys/stat.h".
12444         (is_regular_file): Move to "common/common-utils.c".
12445
12446 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
12447
12448         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
12449         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
12450         * auto-load.c: Include "common/pathstuff.h".
12451         * common/common-def.h (current_directory): Move here.
12452         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
12453         function.
12454         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
12455         prototype.
12456         * common/pathstuff.c: New file.
12457         * common/pathstuff.h: New file.
12458         * compile/compile.c: Include "common/pathstuff.h".
12459         * defs.h (current_directory): Move to "common/common-defs.h".
12460         * dwarf2read.c: Include "common/pathstuff.h".
12461         * exec.c: Likewise.
12462         * guile/scm-safe-call.c: Likewise.
12463         * linux-thread-db.c: Likewise.
12464         * main.c: Likewise.
12465         * nto-tdep.c: Likewise.
12466         * objfiles.c: Likewise.
12467         * source.c: Likewise.
12468         * symtab.c: Likewise.
12469         * utils.c: Include "common/pathstuff.h".
12470         (gdb_realpath): Move to "common/pathstuff.c".
12471         (gdb_realpath_keepfile): Likewise.
12472         (gdb_abspath): Likewise.
12473         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
12474         (gdb_realpath_keepfile): Likewise.
12475         (gdb_abspath): Likewise.
12476
12477 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
12478
12479         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
12480         wildcard process pid for super_resume for kernels with a
12481         specific bug.
12482
12483 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
12484
12485         * compile/compile.c (get_args): Add additional comments
12486         explaining function.
12487
12488 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
12489             Tom Tromey  <tom@tromey.com>
12490
12491         * target.h (memory_write_request_s): Remove typedef.  Don't define
12492         VEC.
12493         (target_write_memory_blocks): Change argument to std::vector.
12494         (struct memory_write_request): Add constructor.
12495         * target-memory.c (compare_block_starting_address): Return bool.
12496         Change argument types.
12497         (claim_memory): Change arguments to use std::vector.
12498         (split_regular_and_flash_blocks, blocks_to_erase)
12499         (compute_garbled_blocks): Likewise.
12500         (cleanup_request_data, cleanup_write_requests_vector): Remove.
12501         (target_write_memory_blocks): Change argument to std::vector.
12502         * symfile.c (struct load_section_data): Add constructor and
12503         destructor.  Use std::vector for "requests".
12504         (struct load_progress_data): Add initializers.
12505         (load_section_callback): Update.  Use "new".
12506         (clear_memory_write_data): Remove.
12507         (generic_load): Update.
12508
12509 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
12510
12511         * arch/aarch64.h: Use common/tdesc.h.
12512
12513 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
12514
12515         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
12516         architecture with a 64-bit ABI.
12517
12518 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
12519
12520         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
12521         ahead of target description loading.
12522
12523 2018-02-26  Tom Tromey  <tom@tromey.com>
12524
12525         * stack.c (backtrace_command_1): Update.
12526         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
12527         of "flags".
12528         * python/py-framefilter.c (py_print_frame)
12529         (gdbpy_apply_frame_filter): Change type of "flags".
12530         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
12531         of "flags".
12532         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
12533         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
12534         * extension.h (enum frame_filter_flag): Rename from
12535         frame_filter_flags.
12536         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
12537         (apply_ext_lang_frame_filter): Change type of "flags".
12538         * extension.c (apply_ext_lang_frame_filter): Change type of
12539         "flags".
12540         * extension-priv.h (struct extension_language_ops)
12541         <apply_frame_filter>: Change type of "flags".
12542
12543 2018-02-26  Tom Tromey  <tom@tromey.com>
12544
12545         PR python/16497:
12546         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
12547         off-by-one in py_end computation.
12548         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
12549         PRINT_MORE_FRAMES.
12550         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
12551         constant.
12552
12553 2018-02-26  Tom Tromey  <tom@tromey.com>
12554
12555         * dwarf2read.c (struct variant_field): New.
12556         (struct nextfield) <variant>: New field.
12557         (dwarf2_add_field): Handle DW_TAG_variant_part.
12558         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
12559         discriminated union.
12560         (read_structure_type): Handle DW_TAG_variant_part.
12561         (handle_struct_member_die): New function, extracted from
12562         process_structure_scope.  Handle DW_TAG_variant.
12563         (process_structure_scope): Handle discriminated unions.  Call
12564         handle_struct_member_die.
12565
12566 2018-02-26  Tom Tromey  <tom@tromey.com>
12567
12568         * rust-lang.h (rust_last_path_segment): Declare.
12569         * rust-lang.c (rust_last_path_segment): Now public.  Change
12570         contract.
12571         (struct disr_info): Remove.
12572         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
12573         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
12574         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
12575         (rust_enum_p, rust_enum_variant): New function.
12576         (rust_underscore_fields): Remove "offset" parameter.
12577         (rust_print_enum): New function.
12578         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
12579         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
12580         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
12581         enums.
12582         (rust_internal_print_type): New function, from rust_print_type.
12583         Remove enum code.
12584         (rust_print_type): Call rust_internal_print_type.
12585         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
12586         Update enum handling.
12587         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
12588         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
12589         (rust_union_quirks): New functions.
12590         (process_full_comp_unit, process_full_type_unit): Call
12591         rust_union_quirks.
12592         (process_structure_scope): Update rust_unions if necessary.
12593
12594 2018-02-26  Tom Tromey  <tom@tromey.com>
12595
12596         * value.h (value_union_variant): Declare.
12597         * valops.c (value_union_variant): New function.
12598         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
12599         (struct discriminant_info): New.
12600         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
12601         enumerator.
12602         (struct main_type) <flag_discriminated_union>: New field.
12603
12604 2018-02-26  Tom Tromey  <tom@tromey.com>
12605
12606         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12607         unittests/unpack-selftests.c.
12608         * unittests/unpack-selftests.c: New file.
12609         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
12610
12611 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12612
12613         * dwarf2read.c (struct partial_die_info) <read>: New method.
12614         (read_partial_die): Remove the declaration.
12615         (load_partial_dies): Update.
12616         (partial_die_info::partial_die_info):
12617         (read_partial_die): Change it to partial_die_info::read.
12618
12619 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12620
12621         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
12622         (fixup_partial_die): Remove declaration.
12623         (scan_partial_symbols): Update.
12624         (partial_die_parent_scope): Likewise.
12625         (partial_die_full_name): Likewise.
12626         (fixup_partial_die): Change it to partial_die_info::fixup.
12627
12628 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12629
12630         * dwarf2read.c (read_partial_die): Update the declaration.
12631         (load_partial_dies): Caller update.
12632         (read_partial_die): Remove one argument abbrev_len.
12633
12634 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12635
12636         * dwarf2read.c (struct partial_die_info): Add ctor, delete
12637         assignment operator.
12638         (load_partial_dies): Use ctor and copy ctor.
12639         (read_partial_die): Update.
12640         (dwarf2_cu::find_partial_die): Use ctor.
12641
12642 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12643
12644         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
12645         (find_partial_die_in_comp_unit): Change it to
12646         dwarf2_cu::find_partial_die.
12647         (find_partial_die): Update.
12648
12649 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12650
12651         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
12652         is NULL.
12653
12654 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12655
12656         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
12657
12658 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
12659
12660         * arch/amd64.h: Use common/tdesc.h.
12661         * arch/i386.c: Likewise.
12662         * arch/i386.h: Likewise.
12663         * arch/tic6x.c: Likewise.
12664         * arch/tdesc.h: Move file from here...
12665         * common/tdesc.h: ...to here.
12666         * features/aarch64-core.c: Regenerate.
12667         * features/aarch64-fpu.c: Regenerate.
12668         * features/i386/32bit-avx.c: Regenerate.
12669         * features/i386/32bit-avx512.c: Regenerate.
12670         * features/i386/32bit-core.c: Regenerate.
12671         * features/i386/32bit-linux.c: Regenerate.
12672         * features/i386/32bit-mpx.c: Regenerate.
12673         * features/i386/32bit-pkeys.c: Regenerate.
12674         * features/i386/32bit-sse.c: Regenerate.
12675         * features/i386/64bit-avx.c: Regenerate.
12676         * features/i386/64bit-avx512.c: Regenerate.
12677         * features/i386/64bit-core.c: Regenerate.
12678         * features/i386/64bit-linux.c: Regenerate.
12679         * features/i386/64bit-mpx.c: Regenerate.
12680         * features/i386/64bit-pkeys.c: Regenerate.
12681         * features/i386/64bit-segments.c: Regenerate.
12682         * features/i386/64bit-sse.c: Regenerate.
12683         * features/i386/x32-core.c: Regenerate.
12684         * features/tic6x-c6xp.c: Regenerate.
12685         * features/tic6x-core.c: Regenerate.
12686         * features/tic6x-gp.c: Regenerate.
12687         * target-descriptions.c: Use common/tdesc.h.
12688         * target-descriptions.h: Likewise.
12689
12690 2018-02-24  Tom Tromey  <tom@tromey.com>
12691
12692         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
12693         (try_thread_db_load_from_dir, thread_db_load_search): Use
12694         std::string.
12695         (info_auto_load_libthread_db_compare): Return bool.  Change
12696         argument types.
12697         (info_auto_load_libthread_db): Use std::vector, std::string.
12698         Remove cleanups.
12699
12700 2018-02-24  Tom Tromey  <tom@tromey.com>
12701
12702         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
12703         std::string.
12704         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
12705         std::string*.
12706         * gdbarch.c: Rebuild.
12707         * gdbarch.h: Rebuild.
12708         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
12709         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
12710         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
12711         std::string*.
12712
12713 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
12714
12715         * gdbtypes.h (sect_offset): Change type to uint64_t.
12716         (sect_offset_str): New function.
12717         * dwarf2read.c (create_addrmap_from_aranges): Use
12718         sect_offset_str.
12719         (error_check_comp_unit_head): Likewise.
12720         (create_debug_type_hash_table): Likewise.
12721         (read_cutu_die_from_dwo): Likewise.
12722         (init_cutu_and_read_dies): Likewise.
12723         (init_cutu_and_read_dies_no_follow): Likewise.
12724         (process_psymtab_comp_unit_reader): Likewise.
12725         (partial_die_parent_scope): Likewise.
12726         (peek_die_abbrev): Likewise.
12727         (process_queue): Likewise.
12728         (dwarf2_physname): Likewise.
12729         (read_namespace_alias): Likewise.
12730         (read_import_statement): Likewise.
12731         (create_dwo_cu_reader): Likewise.
12732         (create_cus_hash_table): Likewise.
12733         (lookup_dwo_cutu): Likewise.
12734         (inherit_abstract_dies): Likewise.
12735         (read_func_scope): Likewise.
12736         (read_call_site_scope): Likewise.
12737         (dwarf2_add_member_fn): Likewise.
12738         (read_common_block): Likewise.
12739         (read_module_type): Likewise.
12740         (read_typedef): Likewise.
12741         (read_subrange_type): Likewise.
12742         (load_partial_dies): Likewise.
12743         (read_partial_die): Likewise.
12744         (find_partial_die): Likewise.
12745         (read_str_index): Likewise.
12746         (dwarf2_string_attr): Likewise.
12747         (build_error_marker_type): Likewise.
12748         (lookup_die_type): Likewise.
12749         (dump_die_shallow): Likewise.
12750         (follow_die_ref): Likewise.
12751         (dwarf2_fetch_die_loc_sect_off): Likewise.
12752         (dwarf2_fetch_constant_bytes): Likewise.
12753         (follow_die_sig): Likewise.
12754         (get_signatured_type): Likewise.
12755         (get_DW_AT_signature_type): Likewise.
12756         (dwarf2_find_containing_comp_unit): Likewise.
12757         (set_die_type): Likewise.
12758
12759 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
12760
12761         * arch/aarch64.c: Include "common-defs.h".
12762         * arch/amd64.c: Likewise.
12763         * arch/i386.c: Likewise.
12764
12765 2018-02-21  Tom Tromey  <tom@tromey.com>
12766
12767         * value.h: (extract_field_op): Update.
12768         * eval.c (extract_field_op): Return a const char *.
12769         * expression.h (parse_expression_for_completion): Update.
12770         * completer.c (complete_expression): Update.
12771         (add_struct_fields): Make fieldname const.
12772         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
12773         (mark_completion_tag, parse_exp_in_context_1): Update.
12774         (parse_expression_for_completion): Change "name" to
12775         unique_xmalloc_ptr*.
12776
12777 2018-02-21  Tom Tromey  <tom@tromey.com>
12778
12779         * infcall.c (call_function_by_hand_dummy): Use std::vector.
12780
12781 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12782
12783         * avr-tdep.c (avr_read_pc): Change parameter type to
12784         readable_regcache.
12785         * gdbarch.sh (read_pc): Likewise.
12786         * gdbarch.c: Re-generated.
12787         * gdbarch.h: Re-generated.
12788         * hppa-tdep.c (hppa_read_pc): Change parameter type to
12789         readable_regcache.
12790         * ia64-tdep.c (ia64_read_pc): Likewise.
12791         * mips-tdep.c (mips_read_pc): Likewise.
12792         * spu-tdep.c (spu_read_pc): Likewise.
12793
12794 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12795
12796         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
12797         * regcache-dump.c: New file.
12798         * regcache.c: Move register_dump to regcache-dump.c.
12799         (maintenance_print_registers): Likewise.
12800         (maintenance_print_raw_registers): Likewise.
12801         (maintenance_print_cooked_registers): Likewise.
12802         (maintenance_print_register_groups): Likewise.
12803         (maintenance_print_remote_registers): Likewise.
12804         (_initialize_regcache): Likewise.
12805         * regcache.h (register_dump): Moved from regcache.c.
12806
12807 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12808
12809         * regcache.c (regcache::regcache): Update.
12810         (regcache::invalidate): Move it to detached_regcache::invalidate.
12811         (get_thread_arch_aspace_regcache): Update.
12812         (regcache::raw_update): Update.
12813         (regcache::cooked_read): Remove some code.
12814         (regcache::cooked_read_value): Likewise.
12815         (regcache::raw_write): Remove assert on m_readonly_p.
12816         (regcache::raw_supply_integer): Move it to
12817         detached_regcache::raw_supply_integer.
12818         (regcache::raw_supply_zeroed): Likewise.
12819         * regcache.h (detached_regcache) <raw_supply_integer>: New
12820         declaration.
12821         <raw_supply_zeroed, invalidate>: Likewise.
12822         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
12823         <invalidate>: Likewise.
12824         <m_readonly_p>: Removed.
12825
12826 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12827
12828         * infcmd.c (get_return_value): Let stop_regs point to
12829         get_current_regcache.
12830         * regcache.c (regcache::regcache): Remove.
12831         (register_dump_reg_buffer): New class.
12832         (regcache_print): Adjust.
12833         * regcache.h (regcache): Remove constructors.
12834
12835 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12836
12837         * regcache.c (class register_dump): New class.
12838         (register_dump_regcache, register_dump_none): New class.
12839         (register_dump_remote, register_dump_groups): New class.
12840         (regcache_print): Update.
12841         * regcache.h (regcache_dump_what): Move it to regcache.c.
12842         (regcache) <dump>: Remove.
12843
12844 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12845
12846         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
12847          reg_buffer_rw *.
12848         (jit_unwind_reg_set_impl): Call raw_supply.
12849         (jit_frame_sniffer): Use reg_buffer_rw.
12850         * record-full.c (record_full_core_regbuf): Change its type.
12851         (record_full_core_open_1): Use reg_buffer_rw.
12852         (record_full_close): Likewise.
12853         (record_full_core_fetch_registers): Use regcache->raw_supply.
12854         (record_full_core_store_registers): Likewise.
12855         * regcache.c (regcache::get_register_status): Move it to
12856         reg_buffer.
12857         (regcache_raw_set_cached_value): Remove.
12858         (regcache::raw_set_cached_value): Remove.
12859         (regcache::raw_write): Call raw_supply.
12860         (regcache::raw_supply): Move it to reg_buffer_rw.
12861         * regcache.h (regcache_raw_set_cached_value): Remove.
12862         (reg_buffer_rw): New class.
12863
12864 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12865
12866         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
12867         readonly_detached_regcache.
12868         (dummy_frame_prev_register): Use regcache->cooked_read.
12869         * frame.c (frame_save_as_regcache): Change return type.
12870         (frame_pop): Update.
12871         * frame.h (frame_save_as_regcache): Update declaration.
12872         * inferior.h (get_infcall_suspend_state_regcache): Update
12873         declaration.
12874         * infrun.c (infcall_suspend_state) <registers>: use
12875         readonly_detached_regcache.
12876         (save_infcall_suspend_state): Don't use regcache_dup.
12877         (get_infcall_suspend_state_regcache): Change return type.
12878         * linux-fork.c (struct fork_info) <savedregs>: Change to
12879         readonly_detached_regcache.
12880         <pc>: New field.
12881         (fork_save_infrun_state): Don't use regcache_dup.
12882         (info_checkpoints_command): Adjust.
12883         * mi/mi-main.c (register_changed_p): Update declaration.
12884         (mi_cmd_data_list_changed_registers): Use
12885         readonly_detached_regcache.
12886         (register_changed_p): Change parameter type to
12887         readonly_detached_regcache.
12888         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
12889         readonly_detached_regcache.
12890         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
12891         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
12892         New.
12893         (regcache::save): Move it to reg_buffer.
12894         (regcache::restore): Change parameter type.
12895         (regcache_dup): Remove.
12896         * regcache.h (reg_buffer) <save>: New method.
12897         (readonly_detached_regcache): New class.
12898         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
12899         readonly_detached_regcache.
12900         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
12901
12902 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12903
12904         * frame.c (frame_save_as_regcache): Use regcache method save.
12905         (frame_pop): Use regcache method restore.
12906         * infrun.c (restore_infcall_suspend_state): Likewise.
12907         * linux-fork.c (fork_load_infrun_state): Likewise.
12908         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
12909         save.
12910         * regcache.c (regcache_save): Remove.
12911         (regcache::restore): More asserts.
12912         (regcache_cpy): Remove.
12913         * regcache.h (regcache_save): Remove the declaration.
12914         (regcache::restore): Move from private to public.
12915         Remove the friend declaration of regcache_cpy.
12916         (regcache_cpy): Remove declaration.
12917
12918 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12919
12920         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
12921         parameter type to 'readable_regcache *'.
12922         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
12923         * arm-tdep.c (arm_neon_quad_read): Likewise.
12924         (arm_pseudo_read): Likewise.
12925         * avr-tdep.c (avr_pseudo_register_read): Likewise.
12926         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
12927         * frv-tdep.c (frv_pseudo_register_read): Likewise.
12928         * gdbarch.c: Re-generated.
12929         * gdbarch.h: Re-generated.
12930         * gdbarch.sh (pseudo_register_read): Change parameter type to
12931         'readable_regcache *'.
12932         (pseudo_register_read_value): Likewise.
12933         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
12934         (h8300_pseudo_register_read): Likewise.
12935         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
12936         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
12937         (i386_pseudo_register_read_into_value): Likewise.
12938         (i386_pseudo_register_read_value): Likewise.
12939         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
12940         declaration.
12941         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
12942         * m32c-tdep.c (m32c_raw_read): Likewise.
12943         (m32c_read_flg): Likewise.
12944         (m32c_banked_register): Likewise.
12945         (m32c_banked_read): Likewise.
12946         (m32c_sb_read): Likewise.
12947         (m32c_part_read): Likewise.
12948         (m32c_cat_read): Likewise.
12949         (m32c_r3r2r1r0_read): Likewise.
12950         (m32c_pseudo_register_read): Likewise.
12951         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
12952         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
12953         (mep_pseudo_cr64_read): Likewise.
12954         (mep_pseudo_register_read): Likewise.
12955         * mips-tdep.c (mips_pseudo_register_read): Likewise.
12956         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
12957         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
12958         * regcache.c (regcache::raw_read): Move it to readable_regcache.
12959         (regcache::cooked_read): Likewise.
12960         (regcache::cooked_read_value): Likewise.
12961         (regcache_cooked_read_signed):
12962         (regcache::cooked_read): Likewise.
12963         * regcache.h (readable_regcache): New class.
12964         (regcache): Inherit readable_regcache.  Move some methods to
12965         readable_regcache.
12966         * rl78-tdep.c (rl78_pseudo_register_read): Change
12967         parameter type to 'readable_regcache *'.
12968         * rs6000-tdep.c (do_regcache_raw_read): Remove.
12969         (e500_pseudo_register_read): Change parameter type to
12970         'readable_regcache *'.
12971         (dfp_pseudo_register_read): Likewise.
12972         (vsx_pseudo_register_read): Likewise.
12973         (efpr_pseudo_register_read): Likewise.
12974         * s390-tdep.c (s390_pseudo_register_read): Likewise.
12975         * sh-tdep.c (sh_pseudo_register_read): Likewise.
12976         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
12977         (sh64_pseudo_register_read): Likewise.
12978         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
12979         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
12980         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
12981         (spu_pseudo_register_read): Likewise.
12982         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
12983         (xtensa_pseudo_register_read): Likewise.
12984
12985 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12986
12987         * regcache.c (regcache::regcache): Call reg_buffer ctor.
12988         (regcache::arch): Move it to reg_buffer::arch.
12989         (regcache::register_buffer): Likewise.
12990         (regcache::assert_regnum): Likewise.
12991         (regcache::num_raw_registers): Likewise.
12992         * regcache.h (reg_buffer): New class.
12993         (regcache): Inherit reg_buffer.
12994
12995 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
12996
12997         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
12998         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
12999
13000 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
13001
13002         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
13003
13004 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
13005
13006         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
13007         (SFILES): Remove common/*.c files.
13008         (COMMON_OBS): Remove some *.o files built from common/*.c files.
13009         * common/common.host: Add common reference.
13010         * configure.ac: Likewise.
13011         * configure: Regenerate.
13012
13013 2018-02-16  Yao Qi  <yao.qi@linaro.org>
13014
13015         * block.c (block_namespace_info): Inherit allocate_on_obstack.
13016         (block_initialize_namespace): Use new.
13017         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
13018         (dwarf2_free_objfile): Use delete.
13019         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
13020         (copy_type_recursive): Use new.
13021         * gdb_obstack.h (allocate_on_obstack): New.
13022
13023 2018-02-15  Yao Qi  <yao.qi@linaro.org>
13024
13025         PR gdb/22849
13026         * inferior.c (exit_inferior_1): Reset inf->control.
13027
13028 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
13029
13030         * ada-lang.c (ada_to_fixed_value_create): Delete advance
13031         declaration.
13032
13033 2018-02-14  Pedro Alves  <palves@redhat.com>
13034
13035         * frame-unwind.c (frame_unwind_try_unwinder): Always call
13036         frame_cleanup_after_sniffer on exception.
13037
13038 2018-02-14  Tom Tromey  <tom@tromey.com>
13039
13040         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
13041         const.
13042         (solib_bfd_open): Make pathname const.
13043         * solib.c (solib_bfd_open): Make pathname const.
13044         * solib-spu.c (spu_bfd_fopen): Make name const.
13045         (spu_bfd_open): Make pathname const.
13046         * solib-darwin.c (darwin_bfd_open): Make pathname const.
13047         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
13048
13049 2018-02-14  Tom Tromey  <tom@tromey.com>
13050
13051         * symfile.c (symfile_bfd_open): Update.
13052         * source.h (openp, source_full_path_of, find_and_open_source):
13053         Change argument type to unique_xmalloc_ptr.
13054         * source.c (openp): Take a unique_xmalloc_ptr.
13055         (source_full_path_of, find_and_open_source): Likewise.
13056         (open_source_file, symtab_to_fullname): Update.
13057         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
13058         unique_xmalloc_ptr.
13059         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
13060         (exec_file_find): Update.
13061         * psymtab.c (psymtab_to_fullname): Update.
13062         * nto-tdep.h (nto_find_and_open_solib): Update.
13063         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
13064         unique_xmalloc_ptr.
13065         * exec.c (exec_file_attach): Update.
13066         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
13067         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
13068
13069 2018-02-14  Tom Tromey  <tom@tromey.com>
13070
13071         * solib.c: Include source.h.
13072         * nto-tdep.c: Include source.h.
13073         * mi/mi-cmd-env.c: Include source.h.
13074         * infcmd.c: Include source.h.
13075         * exec.c: Include source.h.
13076         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
13077         (add_path, directory_switch, source_path, init_source_path): Move
13078         declarations...
13079         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
13080         (add_path, directory_switch, source_path, init_source_path):
13081         ...here.
13082
13083 2018-02-14  Tom Tromey  <tom@tromey.com>
13084
13085         * solist.h (exec_file_find, solib_find): Return
13086         unique_xmalloc_ptr.
13087         (solib_bfd_fopen): Take a const char *.
13088         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
13089         (exec_file_find, solib_find): Likewise.
13090         (solib_bfd_fopen): Do not take ownership of "pathname".
13091         (solib_bfd_open): Use unique_xmalloc_ptr.
13092         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
13093         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
13094         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
13095         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
13096
13097 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
13098
13099         * ada-lang.c (name_match_type_from_name): Remove reference to
13100         ada_name_for_lookup in function's documentation.
13101         * ada-lang.h (ada_name_for_lookup): Delete declaration.
13102
13103 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
13104
13105         * defs.h (enum openp_flags): New enum.
13106         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
13107         Move to enum openp_flags.
13108         (openp_flags): New enum flags.
13109         (openp): Change parameter type to openp_flags.
13110         * source.c (openp): Change parameter type to openp_flags.
13111         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
13112         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
13113
13114 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
13115
13116         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
13117         per-command.
13118
13119 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
13120
13121         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
13122         into...
13123         (class dwarf2_queue_guard): ...the destructor of this new class.
13124         (dw2_do_instantiate_symtab): Create instance of the new class
13125         dwarf2_queue_guard, remove cleanup.
13126
13127 2018-02-09  Tom Tromey  <tom@tromey.com>
13128
13129         * source.c (find_source_lines): Don't reference past the end of
13130         the vector.
13131
13132 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13133
13134         * remote.c (remote_btrace_maybe_reopen): Change error message.
13135         * btrace.c (btrace_enable): Likewise.
13136         (parse_xml_btrace): Likewise.
13137         (parse_xml_btrace_conf): Likewise.
13138
13139 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13140
13141         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
13142         (linux_enable_pt, linux_enable_bts): Call
13143         diagnose_perf_event_open_fail.
13144
13145 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13146
13147         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
13148         Remove parameter and change return type.  Update callers.  Move it.
13149         (linux_enable_bts, linux_enable_pt): Improve error message.
13150         (linux_enable_pt): Remove zero buffer size check.
13151         (linux_enable_btrace): Improve error messages.  Remove NULL return
13152         check.
13153
13154 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13155
13156         * btrace.c (btrace_enable): Remove target_supports_btrace call.
13157         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
13158         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
13159         (linux_supports_pt, linux_supports_btrace): Remove.
13160         (linux_enable_bts): Call cpu_supports_bts.
13161         * nat/linux-btrace.h (linux_supports_btrace): Remove.
13162         * remote.c (remote_supports_btrace): Remove.
13163         (init_remote_ops): Remove remote_supports_btrace.
13164         * target-delegates.c: Regenerated.
13165         * target.c (target_supports_btrace): Remove.
13166         * target.h (target_ops) <to_supports_btrace>: Remove
13167         (target_supports_btrace): Remove.
13168         * x86-linux-nat.c (x86_linux_create_target): Remove
13169         linux_supports_btrace.
13170
13171 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13172
13173         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
13174         btrace failed.
13175         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
13176         exception and use message in own exception.
13177
13178 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13179
13180         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
13181         (perf_event_pt_event_type): Use gdb_file_up.
13182         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
13183         scoped_fd, and scoped_mmap.
13184
13185 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13186
13187         * common/scoped_mmap.h: New.
13188         * unittests/scoped_mmap-selftest.c: New.
13189         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13190         unittests/scoped_mmap-selftest.c.
13191
13192 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13193
13194         * common/scoped_fd.h: New.
13195         * unittests/scoped_fd-selftest.c: New.
13196         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13197         unittests/scoped_fd-selftest.c.
13198
13199 2018-02-09  Tom Tromey  <tom@tromey.com>
13200
13201         * auto-load.c (auto_load_section_scripts): Use
13202         gdb::unique_xmalloc_ptr.
13203
13204 2018-02-09  Tom Tromey  <tom@tromey.com>
13205
13206         * auto-load.c (execute_script_contents): Use std::string.
13207
13208 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
13209
13210         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
13211         Python function, rather than a new command.
13212
13213 2018-02-08  Tom Tromey  <tom@tromey.com>
13214
13215         * solib.c (solib_find_1): Use std::string.
13216         (solib_bfd_fopen): Use unique_xmalloc_ptr.
13217
13218 2018-02-08  Tom Tromey  <tom@tromey.com>
13219
13220         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
13221
13222 2018-02-08  Tom Tromey  <tom@tromey.com>
13223
13224         * source.c (find_source_lines): Use gdb::def_vector.
13225
13226 2018-02-08  Tom Tromey  <tom@tromey.com>
13227
13228         * macrocmd.c (struct temporary_macro_definition): New.
13229         (macro_define_command): Use temporary_macro_definition.  Remove
13230         cleanups.
13231         (free_macro_definition_ptr): Remove.
13232
13233 2018-02-08  Tom Tromey  <tom@tromey.com>
13234
13235         * macroexp.c (maybe_expand): Use std::string.
13236
13237 2018-02-08  Tom Tromey  <tom@tromey.com>
13238
13239         * macroexp.c (struct macro_buffer): Add initializers for some
13240         members.
13241         (init_buffer, init_shared_buffer, free_buffer)
13242         (free_buffer_return_text): Remove.
13243         (macro_buffer): New constructors.
13244         (~macro_buffer): New destructor.
13245         (macro_buffer::set_shared): New method.
13246         (macro_buffer::resize_buffer, macro_buffer::appendc)
13247         (macro_buffer::appendmem): Now methods, not free functions.
13248         (set_token, append_tokens_without_splicing, stringify)
13249         (macro_stringify): Update.
13250         (gather_arguments): Change return type.  Remove argc_p argument,
13251         add args_ptr argument.  Use std::vector.
13252         (substitute_args): Remove argc argument.  Accept std::vector.
13253         (expand): Update.  Use std::vector.
13254         (scan, macro_expand, macro_expand_next): Update.
13255
13256 2018-02-08  Tom Tromey  <tom@tromey.com>
13257
13258         * symtab.c (default_collect_symbol_completion_matches_break_on):
13259         Use unique_xmalloc_ptr.
13260         * macroscope.h: (sal_macro_scope, user_macro_scope)
13261         (default_macro_scope): Return unique_xmalloc_ptr.
13262         * macroscope.c (sal_macro_scope, user_macro_scope)
13263         (default_macro_scope): Return unique_xmalloc_ptr.
13264         * macroexp.h (macro_expand, macro_expand_once): Return
13265         unique_xmalloc_ptr.
13266         * macroexp.c (macro_expand, macro_expand_once): Return
13267         unique_xmalloc_ptr.
13268         * macrocmd.c (macro_expand_command, macro_expand_once_command)
13269         (info_macro_command, info_macros_command): Use
13270         unique_xmalloc_ptr.
13271         * compile/compile-c-support.c (write_macro_definitions): Use
13272         unique_xmalloc_ptr.
13273         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
13274
13275 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
13276
13277         * value.c (value_static_field): Assign field type instead of
13278         containing type when returning an optimized out value.
13279
13280 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13281
13282         * ft32-tdep.c (ft32_read_pc): Remove.
13283         (ft32_write_pc): Remove.
13284         (ft32_gdbarch_init): Update.
13285         * m32r-tdep.c (m32r_read_pc): Remove.
13286         (m32r_gdbarch_init): Update.
13287         * mep-tdep.c (mep_read_pc): Remove.
13288         (mep_gdbarch_init): Update.
13289         * microblaze-tdep.c (microblaze_write_pc): Remove.
13290         (microblaze_gdbarch_init): Update.
13291         * mn10300-tdep.c (mn10300_read_pc): Remove.
13292         (mn10300_write_pc): Remove.
13293         (mn10300_gdbarch_init): Update.
13294         * moxie-tdep.c (moxie_read_pc): Remove.
13295         (moxie_write_pc): Remove.
13296         (moxie_gdbarch_init): Update.
13297
13298 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13299
13300         * expprint.c (print_subexp_standard): Handle
13301         OP_F77_UNDETERMINED_ARGLIST.
13302         (dump_subexp_body_standard): Likewise.
13303
13304 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
13305
13306         * target-descriptions.c (tdesc_element_visitor) Add empty
13307         implementations.
13308         (tdesc_type): Move make_gdb_type from here.
13309         (tdesc_type_builtin): Likewise.
13310         (tdesc_type_vector): Likewise.
13311         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
13312         (make_gdb_type_struct): Move from tdesc_type_with_fields.
13313         (make_gdb_type_union): Likewise.
13314         (make_gdb_type_flags): Likewise.
13315         (make_gdb_type_enum): Likewise.
13316         (make_gdb_type): New function.
13317         (tdesc_register_type): Use static make_gdb_type.
13318
13319 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
13320
13321         * infcmd.c (default_print_one_register_info): Align natural-format
13322         column values consistently one under another.
13323         (pad_to_column): New function.
13324
13325 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
13326
13327         * dwarf2read.c (dwarf2_physname): Move commment.
13328
13329 2018-02-01  Leszek Swirski  <leszeks@google.com>
13330
13331         * varobj.c (varobj_formatted_print_options): Allow recursive
13332         pretty printing if pretty printing is enabled.
13333
13334 2018-02-01  Leszek Swirski  <leszeks@google.com>
13335
13336         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
13337         names after a structop as a filename.
13338
13339 2018-02-01  Yao Qi  <yao.qi@linaro.org>
13340
13341         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
13342         (arm_record_coproc_data_proc): Likewise.
13343
13344 2018-02-01  Yao Qi  <yao.qi@linaro.org>
13345
13346         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
13347
13348 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
13349
13350         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
13351         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
13352
13353 2018-01-31  Pedro Alves  <palves@redhat.com>
13354
13355         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
13356         * inflow.c (child_terminal_save_inferior): Wrap reference to
13357         tcgetpgrp in HAVE_TERMIOS_H.
13358         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
13359         _WIN32.
13360         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
13361         always iterate over all inferiors.
13362         (gdbsim_cntrl_c): Adjust.
13363         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
13364
13365 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13366
13367         * gdbtypes.c (lookup_array_range_type): Make sure the array's
13368         index type is objfile-owned if the element type is as well.
13369
13370 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13371
13372         GDB 8.1 released.
13373
13374 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13375
13376         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
13377         "features/s390x-linux64.c".
13378         (_initialize_s390_linux_tdep): Remove initialization of tdescs
13379         s390_linux32 and s390x_linux64.
13380         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
13381         default tdesc.
13382         * s390-tdep.c: Include "features/s390-linux32.c" and
13383         "features/s390x-linux64.c".
13384         (s390_tdesc_valid): Add check for tdesc_has_registers.
13385         (s390_gdbarch_init): Make sure there is always a valid tdesc.
13386         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
13387         tdesc_s390x_linux64.
13388         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
13389         tdesc_s390x_linux64 to...
13390         * s390-tdep.h: ...here.
13391
13392 2018-01-30  Pedro Alves  <palves@redhat.com>
13393
13394         PR gdb/13211
13395         * config.in, configure: Regenerate.
13396         * configure.ac: Check for getpgid.
13397         * go32-nat.c (go32_pass_ctrlc): New.
13398         (go32_target): Install it.
13399         * inf-child.c (inf_child_target): Install
13400         child_terminal_save_inferior, child_pass_ctrlc and
13401         child_interrupt.
13402         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
13403         (inf_ptrace_target): No longer install it.
13404         * infcmd.c (interrupt_target_1): Adjust.
13405         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
13406         (child_interrupt): Declare.
13407         (inferior::terminal_state): New.
13408         * inflow.c (struct terminal_info): Update comments.
13409         (inferior_process_group): Delete.
13410         (terminal_is_ours): Delete.
13411         (gdb_tty_state): New.
13412         (child_terminal_init): Adjust.
13413         (is_gdb_terminal, sharing_input_terminal_1)
13414         (sharing_input_terminal): New functions.
13415         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
13416         Set the process's actual process group in the foreground if
13417         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
13418         mark terminal as the inferior's if not sharing GDB's terminal.
13419         Don't check attach_flag.
13420         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
13421         pass down a target_terminal_state.
13422         (child_terminal_save_inferior): New, factored out from ...
13423         (child_terminal_ours_1): ... this.  Handle
13424         target_terminal_state::is_ours_for_output.
13425         (child_interrupt, child_pass_ctrlc): New.
13426         (inflow_inferior_exit): Clear the inferior's terminal_state.
13427         (copy_terminal_info): Copy the inferior's terminal state.
13428         (_initialize_inflow): Remove reference to terminal_is_ours.
13429         * inflow.h (inferior_process_group): Delete.
13430         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
13431         * procfs.c (procfs_target): Don't install procfs_interrupt.
13432         (procfs_interrupt): Delete.
13433         * remote.c (remote_serial_quit_handler): Adjust.
13434         (remote_interrupt): Remove ptid parameter.  Adjust.
13435         * target-delegates.c: Regenerate.
13436         * target.c: Include "terminal.h".
13437         (target_terminal::terminal_state): Rename to ...
13438         (target_terminal::m_terminal_state): ... this.
13439         (target_terminal::init): Adjust.
13440         (target_terminal::inferior): Adjust to per-inferior
13441         terminal_state.
13442         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
13443         (target_terminal::ours, target_terminal::ours_for_output): Use
13444         target_terminal_is_ours_kind.
13445         (target_interrupt): Remove ptid parameter.  Adjust.
13446         (default_target_pass_ctrlc): Adjust.
13447         * target.h (target_ops::to_terminal_save_inferior): New field.
13448         (target_ops::to_interrupt): Remove ptid_t parameter.
13449         (target_interrupt): Remove ptid_t parameter.  Update comment.
13450         (target_pass_ctrlc): Update comment.
13451         * target/target.h (target_terminal_state): New scoped enum,
13452         factored out of ...
13453         (target_terminal::terminal_state): ... here.
13454         (target_terminal::inferior): Update comments.
13455         (target_terminal::restore_inferior): New.
13456         (target_terminal::is_inferior, target_terminal::is_ours)
13457         (target_terminal::is_ours_for_output): Adjust.
13458         (target_terminal::scoped_restore_terminal_state): Adjust to
13459         rename, and call restore_inferior() instead of inferior().
13460         (target_terminal::scoped_restore_terminal_state::m_state): Change
13461         type.
13462         (target_terminal::terminal_state): Rename to ...
13463         (target_terminal::m_terminal_state): ... this and change type.
13464
13465 2018-01-30  Pedro Alves  <palves@redhat.com>
13466
13467         * linux-nat.c (wait_for_signal): New function.
13468         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
13469         directly.
13470         (async_terminal_is_ours)
13471         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
13472         (linux_nat_add_target): Don't override
13473         to_terminal_inferior/to_terminal_ours.
13474
13475 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
13476
13477         * remote.c (remote_follow_fork): Don't call "detach_inferior".
13478
13479 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
13480
13481         * dwarf2read.c (free_dwo_files): Add forward-declaration.
13482         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
13483         dwarf2_per_objfile_free here.
13484         (dwarf2_per_objfile_free): Remove.
13485         (_initialize_dwarf2_read): Don't register
13486         dwarf2_per_objfile_free as a registry cleanup.
13487
13488 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
13489
13490         Avoid compilation errors in MinGW native builds
13491
13492         The error is triggered by including python-internal.h, and the
13493         error message is:
13494
13495              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
13496                       from build-gnulib/import/math.h:27,
13497                       from d:/usr/Python26/include/pyport.h:235,
13498                       from d:/usr/Python26/include/Python.h:58,
13499                       from python/python-internal.h:94,
13500                       from python/py-arch.c:24:
13501              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
13502         using ::hypot;
13503                 ^~~~~
13504
13505         This happens because Python headers define 'hypot' to expand t
13506         '_hypot' in the Windows builds.
13507         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
13508         'hypoth'.  This avoids a compilation error.
13509
13510 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
13511
13512         * MAINTAINERS (Write After Approval): Fix ordering.
13513
13514 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
13515
13516         * MAINTAINERS (Write After Approval): Add Alan Hayward.
13517
13518 2018-01-26  Alan Modra  <amodra@gmail.com>
13519
13520         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
13521         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
13522         Remove nop.  Make const.  Comment.
13523         (powerpc32_plt_stub_so_2): New.
13524         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
13525         Correct count.  Update uses.
13526         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
13527         Move common code reading PLT entry word.  Correct
13528         powerpc32_plt_stub PLT address calculation.
13529         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
13530         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
13531         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
13532         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
13533         (ppc64_standard_linkage8): Likewise.
13534         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
13535         Correct insns description.
13536         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
13537
13538 2018-01-24  Pedro Alves  <palves@redhat.com>
13539
13540         GCC PR libstdc++/83906
13541         * gdbtypes.c (operator==(const dynamic_prop &,
13542         const dynamic_prop &)): New.
13543         (operator==(const range_bounds &, const range_bounds &)): New.
13544         (check_types_equal): Use them instead of memcmp.
13545         * gdbtypes.h (operator==(const dynamic_prop &,
13546         const dynamic_prop &)): Declare.
13547         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
13548         (operator==(const range_bounds &, const range_bounds &)): Declare.
13549         (operator!=(const range_bounds &, const range_bounds &)): Declare.
13550
13551 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13552
13553         * s390-linux-tdep.c (s390_record_address_mask)
13554         (s390_record_calc_disp_common, s390_record_calc_disp)
13555         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
13556         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
13557         (s390_process_record): Move to s390-tdep.c.
13558         (s390_linux_init_abi_any): Adjust.
13559         * s390-tdep.c (s390_record_address_mask)
13560         (s390_record_calc_disp_common, s390_record_calc_disp)
13561         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
13562         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
13563         (s390_process_record): Moved from s390-linux-tdep.c
13564         (s390_gdbarch_init): Adjust.
13565
13566 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13567
13568         * s390-linux-nat.c (s390-tdep.h): New include.
13569         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
13570         (HFILES_NO_SRCDIR): Add s390-tdep.h.
13571         (ALLDEPFILES): Add s390-tdep.c.
13572         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
13573         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
13574         * s390-tdep.h: ...this.  New file.
13575         * s390-linux-tdep.c (s390-tdep.h): New include.
13576         (_initialize_s390_tdep): Rename to...
13577         (_initialize_s390_linux_tdep): ...this and adjust.
13578         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
13579         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
13580         s390-tdep.h.
13581         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
13582         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
13583         (s390_is_partial_instruction, s390_software_single_step)
13584         (is_non_branch_ril, s390_displaced_step_copy_insn)
13585         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
13586         (s390_prologue_data, s390_addr, s390_store, s390_load)
13587         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
13588         (s390_register_call_saved, s390_guess_tracepoint_registers)
13589         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
13590         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
13591         (s390_pseudo_register_name, s390_pseudo_register_type)
13592         (s390_pseudo_register_read, s390_pseudo_register_write)
13593         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
13594         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
13595         (s390_addr_bits_remove, s390_address_class_type_flags)
13596         (s390_address_class_type_flags_to_name)
13597         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
13598         (s390_function_arg_float, s390_function_arg_vector)
13599         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
13600         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
13601         (s390_frame_align, s390_register_return_value, s390_return_value)
13602         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
13603         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
13604         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
13605         (s390_trad_frame_prev_register, s390_unwind_cache)
13606         (s390_prologue_frame_unwind_cache)
13607         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
13608         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
13609         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
13610         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
13611         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
13612         (s390_frame_base_address, s390_local_base_address)
13613         (s390_frame_base, s390_gcc_target_options)
13614         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
13615         (s390_validate_reg_range, s390_tdesc_valid)
13616         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
13617         * s390-tdep.c: ...this.  New file.
13618
13619 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13620
13621         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
13622         (s390_process_record, s390_gdbarch_tdep_alloc)
13623         (s390_linux_init_abi_any): Use/set new hook.
13624
13625 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13626
13627         * s390-linux-tdep.c (osabi.h): New include.
13628         (s390_linux_init_abi_31, s390_linux_init_abi_64)
13629         (s390_linux_init_abi_any): New functions.
13630         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
13631
13632 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13633
13634         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
13635         tdesc_has_registers check
13636
13637 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13638
13639         * s390-linux-tdep.c (s390_tdesc_valid): New function.
13640         (s390_validate_reg_range): New macro.
13641         (s390_gdbarch_init): Adjust.
13642
13643 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13644
13645         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
13646         (s390_gdbarch_tdep_alloc): Adjust.
13647         (s390_gdbarch_init): Adjust.
13648
13649 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13650
13651         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
13652         <have_tdb>: Change type to bool.
13653         (s390_gdbarch_tdep_alloc): Adjust.
13654         (s390_gdbarch_init): Adjust.
13655
13656 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13657
13658         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
13659         (gdbarch_tdep) <have_upper, have_vx>: New fields.
13660         (s390_gdbarch_tdep_alloc): New function.
13661         (s390_gdbarch_init): Allocate tdep at start and use its fields
13662         instead of separate variables.
13663
13664 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13665
13666         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
13667         when looking for cached gdbarch and add comment for remaining.
13668
13669 2018-01-22  Pedro Alves  <palves@redhat.com>
13670             Sergio Durigan Junior  <sergiodj@redhat.com>
13671
13672         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
13673         case.
13674
13675 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
13676
13677         * MAINTAINERS: Update my company e-mail address.
13678
13679 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13680
13681         * regcache.c (cooked_write_test): New function.
13682         (_initialize_regcache): Register the test.
13683
13684 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13685
13686         * ia64-tdep.c (ia64_pseudo_register_read): Call
13687         regcache->cooked_read instead of regcache_cooked_read_unsigned.
13688         * m32c-tdep.c (m32c_cat_read): Likewise.
13689         (m32c_r3r2r1r0_read): Likewise.
13690         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
13691         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
13692
13693 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13694
13695         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
13696         method raw_read instead of regcache_raw_read.
13697         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
13698         * arm-tdep.c (arm_neon_quad_read): Likewise.
13699         * avr-tdep.c (avr_pseudo_register_read): Likewise.
13700         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
13701         * frv-tdep.c (frv_pseudo_register_read): Likewise.
13702         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
13703         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
13704         (i386_pseudo_register_read_into_value): Likewise.
13705         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
13706         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
13707         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
13708         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
13709         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
13710         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
13711         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
13712         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
13713         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
13714
13715 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13716
13717         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
13718         * configure.tgt: Remove target mt.
13719         * mt-tdep.c: Remove.
13720         * regcache.c (cooked_read_test): Remove the check for mt.
13721
13722 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13723
13724         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
13725         instead of gdbarch_pseudo_register_read_value.
13726
13727 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
13728
13729         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
13730         language is Ada.
13731
13732 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
13733
13734         * linespec.c (create_sals_line_offset): Remove code that preserved
13735         the symtab_and_line's line number.
13736
13737 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13738
13739         * varobj.c (varobj_create): Don't set valid_block when creating a
13740         floating varobj.
13741
13742 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13743
13744         * varobj.c (varobj_create): Remove out of date comment.
13745
13746 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13747
13748         PR mi/20395
13749         * ada-exp.y (write_var_from_sym): Pass extra parameter when
13750         updating innermost block.
13751         * parse.c (innermost_block_tracker::update): Take extra type
13752         parameter, and check types match before updating innermost block.
13753         (write_dollar_variable): Update innermost block for registers.
13754         * parser-defs.h (enum innermost_block_tracker_type): New enum.
13755         (innermost_block_tracker::innermost_block_tracker): Initialise
13756         m_types member.
13757         (innermost_block_tracker::reset): Take type parameter.
13758         (innermost_block_tracker::update): Take type parameter, and pass
13759         type through as needed.
13760         (innermost_block_tracker::m_types): New member.
13761         * varobj.c (varobj_create): Pass type when reseting innermost
13762         block.
13763
13764 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13765
13766         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
13767         * ada-lang.c (resolve_subexp): Likewise.
13768         * breakpoint.c (set_breakpoint_condition) Likewise.
13769         (watch_command_1) Likewise.
13770         * c-exp.y (variable): Likewise.
13771         * d-exp.y (PrimaryExpression): Likewise.
13772         * f-exp.y (variable): Likewise.
13773         * go-exp.y (variable): Likewise.
13774         * m2-exp.y (variable): Likewise.
13775         * objfiles.c (objfile::~objfile): Likewise.
13776         * p-exp.y (variable): Likewise.
13777         * parse.c (innermost_block): Change type.
13778         * parser-defs.h (class innermost_block_tracker): New.
13779         (innermost_block): Change to innermost_block_tracker.
13780         * printcmd.c (display_command): Switch to innermost_block API.
13781         (do_one_display): Likewise.
13782         * rust-exp.y (do_one_display): Likewise.
13783         * symfile.c (clear_symtab_users): Likewise.
13784         * varobj.c (varobj_create): Switch to innermost_block API, replace
13785         use of innermost_block with block stored on varobj object.
13786
13787 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13788
13789         * expression.h (innermost_block): Remove declaration.
13790         * varobj.c: Add 'parser-defs.h' include.
13791
13792 2018-01-19  Tom Tromey  <tom@tromey.com>
13793
13794         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
13795         symbols in the static and global blocks.
13796
13797 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
13798
13799         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
13800         gdb_ptrace.h, and move including gdb_wait.h ...
13801         * nat/linux-ptrace.h: ... to here.
13802
13803 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13804
13805         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
13806         inf_ptrace_detach_success.
13807         (inf_ptrace_detach_success): Add inferior parameter, use it
13808         instead of inferior_ptid, pass it to detach_inferior.
13809         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
13810         parameter.
13811         * inferior.c (detach_inferior): Add overload that takes an
13812         inferior object.
13813         * inferior.h (detach_inferior): Likewise.
13814         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
13815         use inferior_ptid, adjust call to inf_ptrace_detach_success.
13816         * linux-thread-db.c (thread_db_detach): Use inf parameter.
13817
13818 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13819
13820         * target.h (struct target_ops) <to_detach>: Add inferior
13821         parameter.
13822         (target_detach): Likewise.
13823         * target.c (dispose_inferior): Pass inferior down.
13824         (target_detach): Pass inferior down.  Assert that it is equal to
13825         the current inferior.
13826         * aix-thread.c (aix_thread_detach): Pass inferior down.
13827         * corefile.c (core_file_command): Pass current_inferior() down.
13828         * corelow.c (core_detach): Add inferior parameter.
13829         * darwin-nat.c (darwin_detach): Likewise.
13830         * gnu-nat.c (gnu_detach): Likewise.
13831         * inf-ptrace.c (inf_ptrace_detach): Likewise.
13832         * infcmd.c (detach_command): Pass current_inferior() down to
13833         target_detach.
13834         * infrun.c (follow_fork_inferior): Pass parent_inf to
13835         target_detach.
13836         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
13837         target_detach.
13838         * linux-nat.c (linux_nat_detach): Add inferior parameter.
13839         * linux-thread-db.c (thread_db_detach): Likewise.
13840         * nto-procfs.c (procfs_detach): Likewise.
13841         * procfs.c (procfs_detach): Likewise.
13842         * record.c (record_detach): Likewise.
13843         * record.h (struct inferior): Forward-declare.
13844         (record_detach): Add inferior parameter.
13845         * remote-sim.c (gdbsim_detach): Likewise.
13846         * remote.c (remote_detach_1): Likewise.
13847         (remote_detach): Likewise.
13848         (extended_remote_detach): Likewise.
13849         * sol-thread.c (sol_thread_detach): Likewise.
13850         * target-debug.h (target_debug_print_inferior_p): New macro.
13851         * target-delegates.c: Re-generate.
13852         * top.c (kill_or_detach): Pass inferior down to target_detach.
13853         * windows-nat.c (windows_detach): Add inferior parameter.
13854
13855 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13856
13857         * target.h (struct target_ops) <to_detach>: Remove args
13858         parameter.
13859         (target_detach): Likewise.
13860         * target.c (dispose_inferior): Adjust.
13861         (target_detach): Remove args parameter, adjust.
13862         * aix-thread.c (aix_thread_detach): Adjust.
13863         * corefile.c (core_file_command): Adjust.
13864         * corelow.c (core_detach): Adjust.
13865         * darwin-nat.c (darwin_detach): Adjust.
13866         * gnu-nat.c (gnu_detach): Adjust.
13867         * inf-ptrace.c (inf_ptrace_detach): Adjust.
13868         * infcmd.c (detach_command): Adjust
13869         * infrun.c (follow_fork_inferior): Adjust.
13870         (handle_vfork_child_exec_or_exit): Adjust.
13871         * linux-fork.c (linux_fork_detach): Remove args parameter.
13872         * linux-fork.h (linux_fork_detach): Likewise.
13873         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
13874         * linux-thread-db.c (thread_db_detach): Likewise.
13875         * nto-procfs.c (procfs_detach): Likewise.
13876         * procfs.c (procfs_detach): Likewise.
13877         (do_detach): Remove signo parameter.
13878         * record.c (record_detach): Remove args parameter.
13879         * record.h (record_detach): Likewise.
13880         * remote-sim.c (gdbsim_detach): Likewise.
13881         * remote.c (remote_detach_1): Likewise.
13882         (remote_detach): Likewise.
13883         (extended_remote_detach): Likewise.
13884         * sol-thread.c (sol_thread_detach): Likewise.
13885         * target-delegates.c: Re-generate.
13886         * top.c (struct qt_args) <args>: Remove field.
13887         (kill_or_detach): Don't pass args.
13888         (quit_force): Don't set args.
13889         * windows-nat.c (windows_detach): Remove args parameter.
13890
13891 2018-01-19  Yao Qi  <yao.qi@linaro.org>
13892
13893         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
13894         (arm_linux_init_abi): Install it.
13895
13896 2018-01-19  Yao Qi  <yao.qi@linaro.org>
13897
13898         * osabi.c (gdb_osabi_names): Extend the regexp for
13899         arm-linux-gnueabihf.
13900
13901 2018-01-18  Yao Qi  <yao.qi@linaro.org>
13902
13903         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
13904         m_abbrevs.
13905         (abbrev_table::add_abbrev): Update.
13906         (abbrev_table::lookup_abbrev): Update.
13907
13908 2018-01-18  Yao Qi  <yao.qi@linaro.org>
13909
13910         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
13911
13912 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
13913
13914         * compile/compile.c (compile_to_object): Convert "triplet_rx"
13915         to "std::string".
13916
13917 2018-01-17  Tom Tromey  <tom@tromey.com>
13918
13919         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
13920
13921 2018-01-17  Tom Tromey  <tom@tromey.com>
13922
13923         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
13924         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
13925         (create_array_type_with_stride): Update.
13926         * dwarf2read.c (set_die_type): Update.
13927
13928 2018-01-17  Tom Tromey  <tom@tromey.com>
13929
13930         * dwarf2read.c (delayed_method_info): Remove typedef.
13931         (dwarf2_cu::method_info): Now a std::vector.
13932         (add_to_method_list): Update.
13933         (free_delayed_list): Remove.
13934         (compute_delayed_physnames): Update.
13935         (process_full_comp_unit, process_full_type_unit): Clear the method
13936         list.  Remove cleanups.
13937         (psymtab_include_file_name): Add name_holder parameter.  Use
13938         unique_xmalloc_ptr.
13939         (dwarf_decode_lines): Update.
13940
13941 2018-01-17  Tom Tromey  <tom@tromey.com>
13942             Simon Marchi  <simon.marchi@ericsson.com>
13943
13944         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
13945         (dwarf2_per_objfile::free_cached_comp_units)
13946         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
13947         (init_cutu_and_read_dies_no_follow): Update.
13948         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
13949         (dwarf2_cu::~dwarf2_cu): New.
13950         (free_heap_comp_unit, free_stack_comp_unit): Remove.
13951         (age_cached_comp_units, free_one_cached_comp_unit): Update.
13952
13953 2018-01-17  Tom Tromey  <tom@tromey.com>
13954             Simon Marchi  <simon.marchi@ericsson.com>
13955
13956         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
13957         (struct die_reader_specs) <abbrev_table>: New member.
13958         (struct abbrev_table): Add constructor.
13959         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
13960         <abbrev_obstack>: Now an auto_obstack.
13961         (abbrev_table_up): New typedef.
13962         (init_cu_die_reader): Add abbrev_table parameter.
13963         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
13964         Add result_dwo_abbrev_table.
13965         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
13966         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
13967         Update.
13968         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
13969         parameter.
13970         (skip_children): Update.
13971         (abbrev_table::alloc_abbrev): Rename from
13972         abbrev_table_alloc_abbrev.
13973         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
13974         (abbrev_table::lookup_abbrev): Rename from
13975         abbrev_table_lookup_abbrev.
13976         (abbrev_table_read_table): Return abbrev_table_up.
13977         (abbrev_table_free, abbrev_table_free_cleanup)
13978         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
13979         (load_partial_dies): Update.
13980
13981 2018-01-17  Tom Tromey  <tom@tromey.com>
13982
13983         * dwarf2read.c (dwarf2_compute_name): Update comment.
13984         (read_func_scope, read_variable): Update.
13985         (new_symbol): Remove.
13986         (new_symbol_full): Rename to new_symbol.
13987
13988 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
13989
13990         PR gdb/16577
13991         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
13992         a warning instead of throwing an error, set section size to 0 and return
13993         NULL.
13994         * gdb_bfd.h (gdb_bfd_map_section): Update description.
13995
13996 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
13997
13998         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
13999         std::string.
14000         (linux_ptrace_attach_fail_reason_string): Likewise.
14001         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
14002         Likewise.
14003         (linux_ptrace_attach_fail_reason_string): Likewise.
14004         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
14005
14006 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14007
14008         * linux-nat.c (linux_nat_attach): Remove xstrdup.
14009
14010 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
14011
14012         PR gdb/21559
14013         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
14014         checking for fs_base/gs_base fields in struct user_regs_struct.
14015         * configure: Regenerate.
14016
14017 2018-01-17  Yao Qi  <yao.qi@linaro.org>
14018
14019         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
14020         function.
14021         (aarch64_linux_init_abi): Install it to gdbarch hook
14022         gcc_target_options.
14023
14024 2018-01-15  Pedro Alves  <palves@redhat.com>
14025
14026         * common/signals-state-save-restore.c
14027         (save_original_signals_state): Fix typos.
14028
14029 2017-01-12  Tom Tromey  <tom@tromey.com>
14030             Sergio Durigan Junior  <sergiodj@redhat.com>
14031
14032         * Makefile.in (install-only): Install gdb-add-index.
14033
14034 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
14035
14036         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
14037
14038 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
14039
14040         * infrun.c (keep_going_pass_signal): Clear step-over info when
14041         insert_breakpoints fails.
14042
14043 2018-01-11  Pedro Alves  <palves@redhat.com>
14044
14045         PR gdb/22583
14046         * infrun.c (resume): Rename to ...
14047         (resume_1): ... this.
14048         (resume): Reimplement as wrapper around resume_1.
14049
14050 2018-01-11  Pedro Alves  <palves@redhat.com>
14051
14052         PR remote/22597
14053         * remote.c (remote_parse_stop_reply): Default to the last-set
14054         general thread instead of to 'magic_null_ptid'.
14055
14056 2018-01-10  Pedro Alves  <palves@redhat.com>
14057
14058         * language.h (language_get_symbol_name_matcher): Rename ...
14059         (get_symbol_name_matcher): ... this.
14060         * language.c (language_get_symbol_name_matcher): Ditto.
14061         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
14062         callers adjusted.
14063
14064 2018-01-10  Pedro Alves  <palves@redhat.com>
14065
14066         PR gdb/22670
14067         * dwarf2read.c
14068         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
14069         Adjust to use language_get_symbol_name_matcher instead of
14070         language_defn::la_get_symbol_name_matcher.
14071         * language.c (language_get_symbol_name_matcher): If in Ada mode
14072         and the lookup name is a verbatim match, return Ada's matcher.
14073         * language.h (language_get_symbol_name_matcher): Adjust comment.
14074         (ada_lookup_name_info::verbatim_p):: New method.
14075
14076 2018-01-10  Pedro Alves  <palves@redhat.com>
14077
14078         PR gdb/22670
14079         * ada-lang.c (ada_collect_symbol_completion_matches): If the
14080         minsym's language is language_auto or language_cplus, pass down
14081         language_ada instead.
14082         * symtab.c (compare_symbol_name): Don't frob symbol language here.
14083
14084 2018-01-10  Pedro Alves  <palves@redhat.com>
14085
14086         PR gdb/22670
14087         * minsyms.c (linkage_name_str): New function.
14088         (iterate_over_minimal_symbols): Use it.
14089
14090 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14091
14092         * NEWS: Document that 'info proc' now works on FreeBSD.
14093
14094 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14095
14096         * configure.ac: Check for kinfo_getfile in libutil.
14097         * configure: Regenerate.
14098         * config.in: Regenerate.
14099         * fbsd-nat.c: Include "fbsd-tdep.h".
14100         (fbsd_fetch_cmdline): New.
14101         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
14102         rather than calling error.
14103         (fbsd_info_proc): New.
14104         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
14105         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
14106         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
14107
14108 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14109
14110         * fbsd-nat.c (struct free_deleter): Remove.
14111         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
14112
14113 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14114
14115         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
14116         NULL for an empty pathname.
14117
14118 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14119
14120         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
14121         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
14122         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
14123         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
14124         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
14125         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
14126         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
14127         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
14128         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
14129         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
14130         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
14131         (fbsd_core_fetch_timeval, fbsd_print_sigset)
14132         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
14133         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
14134         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
14135
14136 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
14137
14138         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
14139         (gnu_xfer_auxv): New function.
14140         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
14141         TARGET_OBJECT_AUXV.
14142
14143 2018-01-08  Yao Qi  <yao.qi@linaro.org>
14144             Simon Marchi  <simon.marchi@ericsson.com>
14145
14146         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
14147         common/selftest.c.
14148         (COMMON_OBS): Remove selftest.o.
14149         * configure.ac: Append selftest-arch.c and common/selftest.c to
14150         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
14151         * configure: Re-generated.
14152         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
14153         GDB_SELF_TEST.
14154         (maintenance_info_selftests): Likewise.
14155
14156 2018-01-08  Xavier Roirand  <roirand@adacore.com>
14157
14158         * ada-valprint.c (val_print_packed_array_elements): Use
14159         proper number of elements when printing an array indexed
14160         by an enumeration type.
14161
14162 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14163
14164         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
14165         (dw2_get_file_names_reader): Adjust.
14166         (lookup_dwo_signatured_type): Adjust.
14167         (lookup_dwp_signatured_type): Adjust.
14168         (lookup_signatured_type): Adjust.
14169         (create_type_unit_group): Adjust.
14170         (get_type_unit_group): Adjust.
14171         (process_psymtab_comp_unit_reader): Adjust.
14172         (build_type_psymtabs_reader): Adjust.
14173         (scan_partial_symbols): Adjust.
14174         (add_partial_symbol): Adjust.
14175         (add_partial_subprogram): Adjust.
14176         (peek_die_abbrev): Adjust.
14177         (fixup_go_packaging): Adjust.
14178         (process_imported_unit_die): Adjust.
14179         (dwarf2_compute_name): Adjust.
14180         (dwarf2_physname): Adjust.
14181         (read_import_statement): Adjust.
14182         (handle_DW_AT_stmt_list): Adjust.
14183         (read_file_scope): Adjust.
14184         (read_func_scope): Adjust.
14185         (read_lexical_block_scope): Adjust.
14186         (read_call_site_scope): Adjust.
14187         (read_variable): Adjust.
14188         (dwarf2_rnglists_process): Adjust.
14189         (dwarf2_ranges_process): Adjust.
14190         (dwarf2_ranges_read): Adjust.
14191         (dwarf2_get_pc_bounds): Adjust.
14192         (dwarf2_record_block_ranges): Adjust.
14193         (dwarf2_add_field): Adjust.
14194         (dwarf2_add_member_fn): Adjust.
14195         (read_structure_type): Adjust.
14196         (process_structure_scope): Adjust.
14197         (read_enumeration_type): Adjust.
14198         (read_array_type): Adjust.
14199         (mark_common_block_symbol_computed): Adjust.
14200         (read_common_block): Adjust.
14201         (read_namespace_type): Adjust.
14202         (read_namespace): Adjust.
14203         (read_module_type): Adjust.
14204         (read_tag_pointer_type): Adjust.
14205         (read_tag_ptr_to_member_type): Adjust.
14206         (read_tag_string_type): Adjust.
14207         (read_subroutine_type): Adjust.
14208         (read_typedef): Adjust.
14209         (read_base_type): Adjust.
14210         (attr_to_dynamic_prop): Adjust.
14211         (read_subrange_type): Adjust.
14212         (read_unspecified_type): Adjust.
14213         (dwarf2_read_abbrevs): Adjust.
14214         (load_partial_dies): Adjust.
14215         (read_partial_die): Adjust.
14216         (find_partial_die): Adjust.
14217         (guess_partial_die_structure_name): Adjust.
14218         (fixup_partial_die): Adjust.
14219         (read_attribute_value): Adjust.
14220         (read_addr_index): Adjust.
14221         (read_addr_index_from_leb128): Adjust.
14222         (read_str_index): Adjust.
14223         (dwarf2_string_attr): Adjust.
14224         (get_debug_line_section): Adjust.
14225         (dwarf_decode_line_header): Adjust.
14226         (lnp_state_machine::check_line_address): Adjust.
14227         (dwarf_decode_lines_1): Adjust.
14228         (dwarf_decode_lines): Adjust.
14229         (dwarf2_start_symtab): Adjust.
14230         (var_decode_location): Adjust.
14231         (new_symbol_full): Adjust.
14232         (dwarf2_const_value_data): Adjust.
14233         (dwarf2_const_value_attr): Adjust.
14234         (dwarf2_const_value): Adjust.
14235         (die_type): Adjust.
14236         (die_containing_type): Adjust.
14237         (build_error_marker_type): Adjust.
14238         (lookup_die_type): Adjust.
14239         (guess_full_die_structure_name): Adjust.
14240         (anonymous_struct_prefix): Adjust.
14241         (determine_prefix): Adjust.
14242         (dwarf2_name): Adjust.
14243         (follow_die_ref_or_sig): Adjust.
14244         (follow_die_offset): Adjust.
14245         (follow_die_ref): Adjust.
14246         (follow_die_sig_1): Adjust.
14247         (follow_die_sig): Adjust.
14248         (get_signatured_type): Adjust.
14249         (get_DW_AT_signature_type): Adjust.
14250         (decode_locdesc): Adjust.
14251         (dwarf_decode_macros): Adjust.
14252         (cu_debug_loc_section): Adjust.
14253         (fill_in_loclist_baton): Adjust.
14254         (dwarf2_symbol_mark_computed): Adjust.
14255         (init_one_comp_unit): Don't assign
14256         dwarf2_cu::dwarf2_per_objfile.
14257         (set_die_type): Adjust.
14258
14259 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14260
14261         * dwarf2read.c (struct mapped_debug_names): Add constructor.
14262         <dwarf2_per_objfile>: New field.
14263         (dwarf2_per_objfile): Remove global.
14264         (get_dwarf2_per_objfile): New function.
14265         (set_dwarf2_per_objfile): New function.
14266         (dwarf2_build_psymtabs_hard): Change objfile parameter to
14267         dwarf2_per_objfile.
14268         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14269         (read_abbrev_offset): Likewise.
14270         (read_indirect_string): Likewise.
14271         (read_indirect_line_string): Likewise.
14272         (read_indirect_string_at_offset): Likewise.
14273         (read_indirect_string_from_dwz): Likewise.
14274         (dwarf2_find_containing_comp_unit): Change objfile parameter to
14275         dwarf2_per_objfile.
14276         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
14277         (create_all_comp_units): Change objfile parameter to
14278         dwarf2_per_objfile.
14279         (create_all_type_units): Likewise.
14280         (process_queue): Add dwarf2_per_objfile parameter.
14281         (read_and_check_comp_unit_head): Likewise.
14282         (lookup_dwo_unit_in_dwp): Likewise.
14283         (get_dwp_file): Likewise.
14284         (process_cu_includes): Likewise.
14285         (struct free_dwo_file_cleanup_data): New struct.
14286         (dwarf2_has_info): Use get_dwarf2_per_objfile and
14287         set_dwarf2_per_objfile.
14288         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
14289         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
14290         context, adjust calls.
14291         (dw2_instantiate_symtab): Likewise.
14292         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
14293         (dw2_get_cu): Likewise.
14294         (create_cu_from_index_list): Change objfile parameter to
14295         dwarf2_per_objfile.
14296         (create_cus_from_index_list): Get dwarf2_per_objfile from
14297         context, adjust calls.
14298         (create_cus_from_index): Likewise.
14299         (create_signatured_type_table_from_index): Change objfile
14300         parameter to dwarf2_per_objfile.
14301         (create_signatured_type_table_from_debug_names): Change objfile
14302         parameter to dwarf2_per_objfile.
14303         (create_addrmap_from_index): Likewise.
14304         (create_addrmap_from_aranges): Likewise.
14305         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
14306         (dw2_setup): Remove.
14307         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
14308         context.
14309         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
14310         get_dwarf2_per_objfile.
14311         (dw2_forget_cached_source_info): Likewise.
14312         (dw2_map_symtabs_matching_filename): Likewise.
14313         (struct dw2_symtab_iterator) <index>: Remove.
14314         <dwarf2_per_objfile>: New field.
14315         (dw2_symtab_iter_init): Replace index parameter with
14316         dwarf2_per_objfile.
14317         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
14318         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
14319         (dw2_print_stats): Likewise.
14320         (dw2_dump): Likewise.
14321         (dw2_expand_symtabs_for_function): Likewise.
14322         (dw2_expand_all_symtabs): Likewise.
14323         (dw2_expand_symtabs_with_fullname): Likewise.
14324         (dw2_expand_marked_cus): Replace index and objfile parameters
14325         with dwarf2_per_objfile.
14326         (dw_expand_symtabs_matching_file_matcher): Add
14327         dwarf2_per_objfile parameter and adjust calls.
14328         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
14329         adjust calls.
14330         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
14331         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
14332         adjust calls.
14333         (create_cus_from_debug_names_list): Replace objfile parameter
14334         with dwarf2_per_objfile and adjust calls.
14335         (create_cus_from_debug_names): Likewise.
14336         (dwarf2_read_debug_names): Likewise.
14337         (mapped_debug_names::namei_to_name): Adjust call.
14338         (dw2_debug_names_iterator::next): Likewise.
14339         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
14340         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
14341         (dw2_debug_names_dump): Likewise.
14342         (dw2_debug_names_expand_symtabs_for_function): Likewise.
14343         (dw2_debug_names_expand_symtabs_matching): Likewise.
14344         (dwarf2_initialize_objfile): Likewise.
14345         (dwarf2_build_psymtabs): Likewise.
14346         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
14347         this_cu.
14348         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
14349         (read_and_check_comp_unit_head): Likewise.
14350         (read_abbrev_offset): Likewise.
14351         (create_debug_type_hash_table): Likewise.
14352         (create_debug_types_hash_table): Likewise.
14353         (create_all_type_units): Replace objfile parameter with
14354         dwarf2_per_objfile.
14355         (add_type_unit): Add dwarf2_per_objfile parameter.
14356         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
14357         with dwarf2_per_objfile.
14358         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
14359         (lookup_dwp_signatured_type): Likewise.
14360         (lookup_signatured_type): Likewise.
14361         (read_cutu_die_from_dwo): Likewise.
14362         (init_tu_and_read_dwo_dies): Likewise.
14363         (init_cutu_and_read_dies): Likewise.
14364         (init_cutu_and_read_dies_no_follow): Likewise.
14365         (allocate_type_unit_groups_table): Add objfile parameter.
14366         (create_type_unit_group): Use dwarf2_per_objfile from cu.
14367         (get_type_unit_group): Likewise.
14368         (process_psymtab_comp_unit): Update call.
14369         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
14370         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
14371         (print_tu_stats): Likewise.
14372         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
14373         in void* parameter.
14374         (build_type_psymtabs): Change objfile parameter to
14375         dwarf2_per_objfile.
14376         (process_skeletonless_type_unit): Use dwarf2_per_objfile
14377         passed in void* parameter.
14378         (process_skeletonless_type_units): Change objfile parameter to
14379         dwarf2_per_objfile.
14380         (set_partial_user): Likewise.
14381         (dwarf2_build_psymtabs_hard): Likewise.
14382         (read_comp_units_from_section): Likewise.
14383         (create_all_comp_units): Likewise.
14384         (scan_partial_symbols): Update calls.
14385         (add_partial_symbol): Likewise.
14386         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
14387         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
14388         (process_queue): Add dwarf2_per_objfile parameter.
14389         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
14390         (compute_compunit_symtab_includes): Likewise.
14391         (process_cu_includes): Add dwarf2_per_objfile parameter.
14392         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
14393         (process_full_type_unit): Likewise.
14394         (process_imported_unit_die): Update call.
14395         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
14396         (read_file_scope): Likewise.
14397         (allocate_dwo_file_hash_table): Add objfile parameter.
14398         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
14399         (create_cus_hash_table): Likewise.
14400         (create_dwp_hash_table): Likewise.
14401         (create_dwo_unit_in_dwp_v1): Likewise.
14402         (create_dwp_v2_section): Likewise.
14403         (create_dwo_unit_in_dwp_v2): Likewise.
14404         (lookup_dwo_unit_in_dwp): Likewise.
14405         (try_open_dwop_file): Likewise.
14406         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
14407         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
14408         cleanup to include a reference to dwarf2_per_objfile.
14409         (open_dwp_file): Add dwarf2_per_objfile parameter.
14410         (open_and_init_dwp_file): Likewise.
14411         (get_dwp_file): Likewise.
14412         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
14413         (queue_and_load_all_dwo_tus): Update call.
14414         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
14415         data.
14416         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
14417         (dwarf2_ranges_process): Likewise.
14418         (dwarf2_get_pc_bounds): Likewise.
14419         (mark_common_block_symbol_computed): Likewise.
14420         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14421         (dwarf2_read_abbrevs): Update call.
14422         (read_partial_die): Use dwarf2_per_objfile from cu.
14423         (find_partial_die): Likewise.
14424         (fixup_partial_die): Likewise.
14425         (read_attribute_value): Likewise.
14426         (read_indirect_string_at_offset_from): Add objfile parameter.
14427         (read_indirect_string_at_offset): Add dwarf2_per_objfile
14428         parameter.
14429         (read_indirect_string_from_dwz): Add objfile parameter.
14430         (read_indirect_string): Add objfile parameter.
14431         (read_addr_index_1): Add dwarf2_per_objfile parameter.
14432         (read_addr_index): Use dwarf2_per_objfile from cu.
14433         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
14434         call dw2_setup.
14435         (read_str_index): Use dwarf2_per_objfile from cu.
14436         (get_debug_line_section): Likewise.
14437         (read_formatted_entries): Add dwarf2_per_objfile parameter.
14438         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
14439         (new_symbol_full): Use dwarf2_per_objfile from cu.
14440         (build_error_marker_type): Likewise.
14441         (lookup_die_type): Likewise.
14442         (determine_prefix): Likewise.
14443         (follow_die_offset): Likewise.
14444         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
14445         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
14446         (dwarf2_fetch_die_type_sect_off): Likewise.
14447         (dwarf2_get_die_type): Likewise.
14448         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
14449         (get_signatured_type): Likewise.
14450         (get_DW_AT_signature_type): Likewise.
14451         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
14452         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
14453         (cu_debug_loc_section): Likewise.
14454         (fill_in_loclist_baton): Likewise.
14455         (dwarf2_symbol_mark_computed): Likewise.
14456         (dwarf2_find_containing_comp_unit): Change objfile parameter to
14457         dwarf2_per_objfile.
14458         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
14459         parameter.
14460         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
14461         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
14462         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
14463         (set_die_type): Use dwarf2_free_objfile from cu.
14464         (get_die_type_at_offset): Likewise.
14465         (dwarf2_per_objfile_free): Don't assign global variable.
14466         (debug_names) <constructor>: Add dwarf2_per_objfile
14467         parameter, update m_debugstrlookup construction.
14468         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
14469         parameter.
14470         <m_dwarf2_per_objfile>: New field.
14471         <lookup>: Use m_dwarf2_per_objfile.
14472         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
14473         (psyms_seen_size): Likewise.
14474         (write_gdbindex): Replace objfile parameter with
14475         dwarf2_per_objfile.
14476         (write_debug_names): Likewise.
14477         (write_psymtabs_to_index): Likewise.
14478         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
14479         calls.
14480
14481 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14482
14483         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
14484         <dwarf2_per_objfile>: New field.
14485         (struct dwarf2_per_cu_data) <objfile>: Remove.
14486         <dwarf2_per_objfile>: New field.
14487         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
14488         of objfile.
14489         (create_signatured_type_table_from_index): Likewise.
14490         (create_debug_type_hash_table): Likewise.
14491         (fill_in_sig_entry_from_dwo_entry): Likewise.
14492         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
14493         (create_type_unit_group): Assign dwarf2_per_objfile instead of
14494         objfile.
14495         (create_partial_symtab): Access objfile through
14496         dwarf2_per_objfile.
14497         (process_psymtab_comp_unit_reader): Likewise.
14498         (read_comp_units_from_section): Likewise.
14499         (scan_partial_symbols): Likewise.
14500         (add_partial_symbol): Likewise.
14501         (add_partial_subprogram): Likewise.
14502         (peek_die_abbrev): Likewise.
14503         (fixup_go_packaging): Likewise.
14504         (process_full_comp_unit): Likewise.
14505         (process_full_type_unit): Likewise.
14506         (process_imported_unit_die): Likewise.
14507         (dwarf2_compute_name): Likewise.
14508         (dwarf2_physname): Likewise.
14509         (read_import_statement): Likewise.
14510         (create_cus_hash_table): Assign dwarf2_physname instead of
14511         objfile.
14512         (read_func_scope): Access objfile through dwarf2_per_objfile.
14513         (read_lexical_block_scope): Likewise.
14514         (read_call_site_scope): Likewise.
14515         (read_variable): Likewise.
14516         (dwarf2_rnglists_process): Likewise.
14517         (dwarf2_ranges_process): Likewise.
14518         (dwarf2_ranges_read): Likewise.
14519         (dwarf2_record_block_ranges): Likewise.
14520         (dwarf2_add_field): Likewise.
14521         (dwarf2_add_member_fn): Likewise.
14522         (read_structure_type): Likewise.
14523         (process_structure_scope): Likewise.
14524         (read_enumeration_type): Likewise.
14525         (read_array_type): Likewise.
14526         (read_common_block): Likewise.
14527         (read_namespace_type): Likewise.
14528         (read_namespace): Likewise.
14529         (read_module_type): Likewise.
14530         (read_tag_pointer_type): Likewise.
14531         (read_tag_ptr_to_member_type): Likewise.
14532         (read_tag_string_type): Likewise.
14533         (read_subroutine_type): Likewise.
14534         (read_typedef): Likewise.
14535         (read_base_type): Likewise.
14536         (attr_to_dynamic_prop): Likewise.
14537         (read_subrange_type): Likewise.
14538         (read_unspecified_type): Likewise.
14539         (load_partial_dies): Likewise.
14540         (read_partial_die): Likewise.
14541         (find_partial_die): Likewise.
14542         (guess_partial_die_structure_name): Likewise.
14543         (fixup_partial_die): Likewise.
14544         (read_attribute_value): Likewise.
14545         (read_addr_index_from_leb128): Likewise.
14546         (dwarf2_read_addr_index): Likewise.
14547         (dwarf2_string_attr): Likewise.
14548         (lnp_state_machine::check_line_address): Likewise.
14549         (dwarf_decode_lines_1): Likewise.
14550         (dwarf_decode_lines): Likewise.
14551         (dwarf2_start_symtab): Likewise.
14552         (var_decode_location): Likewise.
14553         (new_symbol_full): Likewise.
14554         (dwarf2_const_value_data): Likewise.
14555         (dwarf2_const_value_attr): Likewise.
14556         (dwarf2_const_value): Likewise.
14557         (die_type): Likewise.
14558         (die_containing_type): Likewise.
14559         (lookup_die_type): Likewise.
14560         (guess_full_die_structure_name): Likewise.
14561         (anonymous_struct_prefix): Likewise.
14562         (dwarf2_name): Likewise.
14563         (follow_die_ref_or_sig): Likewise.
14564         (follow_die_offset): Likewise.
14565         (follow_die_ref): Likewise.
14566         (dwarf2_fetch_die_loc_sect_off): Likewise.
14567         (dwarf2_fetch_constant_bytes): Likewise.
14568         (dwarf2_fetch_die_type_sect_off): Likewise.
14569         (dwarf2_get_die_type): Likewise.
14570         (follow_die_sig): Likewise.
14571         (decode_locdesc): Likewise.
14572         (dwarf2_per_cu_objfile): Likewise.
14573         (dwarf2_per_cu_text_offset): Likewise.
14574         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
14575         objfile.
14576         (set_die_type): Access objfile through
14577         dwarf2_per_objfile.
14578
14579 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14580
14581         * valprint.c (converted_character_d): Remove typedef.
14582         (DEF_VEC_O (converted_character_d)): Remove.
14583         (count_next_character): Use std::vector.
14584         (print_converted_chars_to_obstack): Likewise.
14585         (generic_printstr): Likewise.
14586
14587 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14588
14589         * xml-support.h (struct gdb_xml_value): Add constructor.
14590         <value>: Change type to unique_xmalloc_ptr.
14591         (gdb_xml_value_s): Remove typedef.
14592         (DEF_VEC_O (gdb_xml_value_s)): Remove.
14593         (gdb_xml_element_start_handler): Change parameter type to
14594         std::vector.
14595         (xml_find_attribute): Likewise.
14596         * xml-support.c (xml_find_attribute): Change parameter type to
14597         std::vector and adjust.
14598         (gdb_xml_values_cleanup): Remove.
14599         (gdb_xml_parser::start_element): Adjust to std::vector.
14600         (xinclude_start_include): Change paraeter type to std::vector
14601         and adjust.
14602         * btrace.c (check_xml_btrace_version): Likewise.
14603         (parse_xml_btrace_block): Likewise.
14604         (parse_xml_btrace_pt_config_cpu): Likewise.
14605         (parse_xml_btrace_pt): Likewise.
14606         (parse_xml_btrace_conf_bts): Likewise.
14607         (parse_xml_btrace_conf_pt): Likewise.
14608         * memory-map.c (memory_map_start_memory): Likewise.
14609         (memory_map_start_property): Likewise.
14610         * osdata.c (osdata_start_osdata): Likewise.
14611         (osdata_start_item): Likewise.
14612         (osdata_start_column): Likewise.
14613         * remote.c (start_thread): Likewise.
14614         * solib-aix.c (library_list_start_library): Likewise.
14615         (library_list_start_list): Likewise.
14616         * solib-svr4.c (library_list_start_library): Likewise.
14617         (svr4_library_list_start_list): Likewise.
14618         * solib-target.c (library_list_start_segment): Likewise.
14619         (library_list_start_section): Likewise.
14620         (library_list_start_library): Likewise.
14621         (library_list_start_list): Likewise.
14622         * tracepoint.c (traceframe_info_start_memory): Likewise.
14623         (traceframe_info_start_tvar): Likewise.
14624         * xml-syscall.c (syscall_start_syscall): Likewise.
14625         * xml-tdesc.c (tdesc_start_target): Likewise.
14626         (tdesc_start_feature): Likewise.
14627         (tdesc_start_reg): Likewise.
14628         (tdesc_start_union): Likewise.
14629         (tdesc_start_struct): Likewise.
14630         (tdesc_start_flags): Likewise.
14631         (tdesc_start_enum): Likewise.
14632         (tdesc_start_field): Likewise.
14633         (tdesc_start_enum_value): Likewise.
14634         (tdesc_start_vector): Likewise.
14635
14636 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14637
14638         * extension.h (struct xmethod_worker) <clone>: Remove.
14639         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
14640         Remove.
14641         (python_xmethod_worker::clone): Remove.
14642         * valops.c (find_overload_match): Use std::move instead of
14643         clone.
14644
14645 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14646
14647         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
14648         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
14649         <free_xmethod_worker_data>: Remove.
14650         <get_matching_xmethod_workers>: Chance VEC to std::vector.
14651         <get_xmethod_arg_types>: Remove.
14652         <get_xmethod_result_type>: Remove.
14653         <invoke_xmethod>: Remove.
14654         * extension.c (new_xmethod_worker): Remove.
14655         (clone_xmethod_worker): Remove.
14656         (get_matching_xmethod_workers): Return void, pass std::vector by
14657         pointer.
14658         (get_xmethod_arg_types): Rename to...
14659         (xmethod_worker::get_arg_types): ... this, and adjust.
14660         (get_xmethod_result_type): Rename to...
14661         (xmethod_worker::get_result_type): ... this, and adjust.
14662         (invoke_xmethod): Remove.
14663         (free_xmethod_worker): Remove.
14664         (free_xmethod_worker_vec): Remove.
14665         * extension.h (enum ext_lang_rc): Move here from
14666         extension-priv.h.
14667         (struct xmethod_worker): Add constructor and destructor.
14668         <data>: Remove.
14669         <value>: Remove.
14670         <invoke, clone, do_get_result_type, do_get_arg_types>: New
14671         virtual pure methods.
14672         <get_arg_types, get_result_type>: New methods.
14673         (xmethod_worker_ptr): Remove typedef.
14674         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
14675         (xmethod_worker_vec): Remove typedef.
14676         (xmethod_worker_up): New typedef.
14677         (invoke_xmethod): Remove.
14678         (clone_xmethod_worker): Remove.
14679         (free_xmethod_worker): Remove.
14680         (free_xmethod_worker_vec): Remove.
14681         (get_xmethod_arg_types): Remove.
14682         (get_xmethod_result_type): Remove.
14683         * valops.c (find_method_list): Use std::vector, don't use
14684         intermediate vector.
14685         (value_find_oload_method_list): Use std::vector.
14686         (find_overload_match): Use std::vector.
14687         (find_oload_champ): Use std::vector.
14688         * value.c (value_free): Use operator delete.
14689         (value_of_xmethod): Rename to...
14690         (value_from_xmethod): ... this.  Don't assign
14691         xmethod_worker::value, take rvalue-reference.
14692         (result_type_of_xmethod): Adjust.
14693         (call_xmethod): Adjust.
14694         * value.h: Include extension.h.
14695         (struct xmethod_worker): Don't forward-declare.
14696         (value_of_xmethod): Rename to...
14697         (value_from_xmethod): ... this, take rvalue-reference.
14698         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
14699         (struct python_xmethod_worker): ... this, add constructor and
14700         destructor.
14701         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
14702         (gdbpy_free_xmethod_worker_data): Rename to...
14703         (python_xmethod_worker::~python_xmethod_worker): ... this and
14704         adjust.
14705         (gdbpy_clone_xmethod_worker_data): Rename to...
14706         (python_xmethod_worker::clone): ... this and adjust.
14707         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
14708         temporary vector.
14709         (gdbpy_get_xmethod_arg_types): Rename to...
14710         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
14711         (gdbpy_get_xmethod_result_type): Rename to...
14712         (python_xmethod_worker::do_get_result_type): ... this and
14713         adjust.
14714         (gdbpy_invoke_xmethod): Rename to...
14715         (python_xmethod_worker::invoke): ... this and adjust.
14716         (new_python_xmethod_worker): Rename to...
14717         (python_xmethod_worker::python_xmethod_worker): ... this and
14718         adjust.
14719         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
14720         Remove.
14721         (gdbpy_free_xmethod_worker_data): Remove.
14722         (gdbpy_get_matching_xmethod_workers): Use std::vector.
14723         (gdbpy_get_xmethod_arg_types): Remove.
14724         (gdbpy_get_xmethod_result_type): Remove.
14725         (gdbpy_invoke_xmethod): Remove.
14726         * python/python.c (python_extension_ops): Remove obsolete
14727         callbacks.
14728
14729 2018-01-05  Pedro Alves  <palves@redhat.com>
14730
14731         PR gdb/18653
14732         * common/signals-state-save-restore.c
14733         (save_original_signals_state): New parameter 'quiet'.  Warn if we
14734         find a custom handler preinstalled, instead of internal erroring.
14735         But only warn if !quiet.
14736         * common/signals-state-save-restore.h
14737         (save_original_signals_state): New parameter 'quiet'.
14738         * main.c (captured_main_1): Move save_original_signals_state call
14739         after option handling, and pass QUIET.
14740
14741 2018-01-05  Pedro Alves  <palves@redhat.com>
14742
14743         * spu-tdep.c (spu_catch_start): Pass
14744         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
14745
14746 2018-01-05  Pedro Alves  <palves@redhat.com>
14747
14748         PR gdb/22670
14749         * ada-lang.c (literal_symbol_name_matcher): New function.
14750         (ada_get_symbol_name_matcher): Use it for
14751         symbol_name_match_type::SEARCH_NAME.
14752         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
14753         it down instead of assuming symbol_name_match_type::FULL.
14754         * block.h (block_lookup_symbol): New parameter 'match_type'.
14755         * c-valprint.c (print_unpacked_pointer): Use
14756         lookup_symbol_search_name instead of lookup_symbol.
14757         * compile/compile-object-load.c (get_out_value_type): Pass down
14758         symbol_name_match_type::SEARCH_NAME.
14759         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
14760         symbol_name_match_type::FULL.
14761         * cp-support.c (cp_get_symbol_name_matcher): Handle
14762         symbol_name_match_type::SEARCH_NAME.
14763         * infrun.c (insert_exception_resume_breakpoint): Use
14764         lookup_symbol_search_name.
14765         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
14766         * psymtab.c (maintenance_check_psymtabs): Use
14767         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
14768         * stack.c (print_frame_args): Use lookup_symbol_search_name and
14769         SYMBOL_SEARCH_NAME.
14770         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
14771         if symbol_name_match_type::SEARCH_NAME.
14772         (lookup_symbol_in_language): Pass down
14773         symbol_name_match_type::FULL.
14774         (lookup_symbol_search_name): New.
14775         (lookup_language_this): Pass down
14776         symbol_name_match_type::SEARCH_NAME.
14777         (lookup_symbol_aux, lookup_local_symbol): New parameter
14778         'match_type'.  Pass it down.
14779         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
14780         (lookup_symbol_search_name): New declaration.
14781         (lookup_symbol_in_block): New 'match_type' parameter.
14782
14783 2018-01-05  Pedro Alves  <palves@redhat.com>
14784
14785         PR gdb/22670
14786         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
14787         ada_lookup_symbol.
14788         (ada_lookup_symbol): Reimplement in terms of
14789         ada_lookup_symbol_list, bits factored out from
14790         ada_lookup_encoded_symbol.
14791
14792 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14793
14794         * ada-exp.y (write_object_renaming): When subscripting an array
14795         using a symbol as the index, pass the block in call to
14796         ada_lookup_encoded_symbol when looking that symbol up.
14797
14798 2018-01-05  Jerome Guitton  <guitton@adacore.com>
14799
14800         * ada-lang.c (ada_array_length): Use ada_index_type instead of
14801         TYPE_INDEX_TYPE.
14802
14803 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14804
14805         * ada-lang.c (ada_to_fixed_value_create): Add handling of
14806         the case where VALUE_LVAL (val0) is not lval_memory.
14807
14808 2018-01-05  Xavier Roirand  <roirand@adacore.com>
14809
14810         * ada-valprint.c (print_optional_low_bound): Handle
14811         character-indexed array printing like boolean-indexed array
14812         printing.
14813
14814 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14815
14816         * NEWS: Create a new section for the next release branch.
14817         Rename the section of the current branch, now that it has
14818         been cut.
14819
14820 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14821
14822         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
14823         * version.in: Bump version to 8.1.50.DATE-git.
14824
14825 2018-01-03  Xavier Roirand  <roirand@adacore.com>
14826
14827         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
14828         Add field.
14829         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
14830         Add field.
14831         (default_exception_support_info) <catch_handlers_sym>: Add field.
14832         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
14833         (ada_exception_name_addr_1): Add "catch handlers" handling.
14834         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
14835         Update all callers.
14836         (create_excep_cond_exprs) <ex>: Add parameter.
14837         (re_set_exception): Update create_excep_cond_exprs call.
14838         (print_it_exception, print_one_exception, print_mention_exception)
14839         (print_recreate_exception): Add "catch handler" handling.
14840         (allocate_location_catch_handlers, re_set_catch_handlers)
14841         (check_status_catch_handlers, print_it_catch_handlers)
14842         (print_one_catch_handlers, print_mention_catch_handlers)
14843         (print_recreate_catch_handlers): New function.
14844         (catch_handlers_breakpoint_ops): New variable.
14845         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
14846         Add parameter.  Add "catch handler" handling.
14847         (ada_exception_sym_name, ada_exception_breakpoint_ops):
14848         Add "catch handler" handling.
14849         (ada_exception_catchpoint_cond_string): Add "catch handler"
14850         handling.
14851         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
14852         call.
14853         (catch_ada_handlers_command): New function.
14854         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
14855         operations structure.
14856         (_initialize_ada_language): Add "catch handlers" command entry.
14857         * NEWS: Document "catch handlers" feature.
14858
14859 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14860
14861         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
14862         account when creating the array type of the slice.
14863         (ada_value_slice): Likewise.
14864
14865 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14866
14867         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
14868         New enum value.
14869         (create_array_type_with_stride): Add byte_stride_prop parameter.
14870         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
14871         New parameter.  Update all callers in this file.
14872         (array_type_has_dynamic_stride): New function.
14873         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
14874         of arrays with dynamic byte strides.
14875         * dwarf2read.c (read_array_type): Add support for dynamic
14876         DW_AT_byte_stride attributes.
14877
14878 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14879
14880         * dwarf2read.c (read_unspecified_type): Treat
14881         DW_TAG_enumeration_type DIEs from Ada units as stubs.
14882
14883 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14884
14885         Update copyright year range in all GDB files.
14886
14887 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
14888
14889         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
14890         and gdb/testsuite/gdb.base/step-line.c.
14891
14892 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14893
14894         * copyright.py (main): Dump the contents of
14895         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
14896         even if BY_HAND is empty.
14897
14898 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14899
14900         * top.c (print_gdb_version): Update Copyright year in version
14901         message.
14902
14903 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14904
14905         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
14906
14907 For older changes see ChangeLog-2017.
14908 \f
14909 Local Variables:
14910 mode: change-log
14911 left-margin: 8
14912 fill-column: 74
14913 version-control: never
14914 coding: utf-8
14915 End: