Fix SYMBOL_LANGUAGE assertion failure on AIX.
[external/binutils.git] / gdb / ChangeLog
1 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
2
3         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
4         symtab_start instead of always using language_unknown.
5
6 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
7
8         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
9         READ_P parameter, catch and ignore register access errors from
10         either the old or new MISA location.
11         (riscv_has_feature): Update call to riscv_read_misa_reg.
12
13 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
14
15         * python/py-function.c (convert_values_to_python): Return
16         gdbpy_ref<>.  Add header comment.
17         (fnpy_call): Adjust.
18
19 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
20
21         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
22         (cmdpy_completer_handle_brkchars): Adjust.
23         (cmdpy_completer): Adjust.
24
25 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
26
27         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
28         Pass correct regnum to raw_supply_zeroed.
29
30 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
31
32         * regcache.c (cooked_read_test): Add CSKY to the list of
33         architectures with a save_reggroup
34
35 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
36
37         PR gdb/23368
38         * infrun.c (follow_exec): In the follow_exec_mode_new case,
39         transfer terminal state from old new new inferior.
40         * terminal.h (swap_terminal_info): New function.
41         * inflow.c (swap_terminal_info): New function.
42
43 2018-10-23  Tom Tromey  <tom@tromey.com>
44
45         * record-btrace.c (get_thread_current_frame_id): Rename from
46         get_thread_current_frame.  Return a frame_id.
47         (record_btrace_start_replaying): Update.
48
49 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
50
51         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
52         for CSRs.
53
54 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
55
56         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
57         have_nonsteppable_watchpoint attribute to 1.
58
59 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
60
61         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
62         register names.
63         (struct register_alias): Rename to...
64         (struct riscv_register_alias): ...this, and update comment.
65         (riscv_register_aliases): Update type, and alias names.  Remove
66         CSR names from this list.
67         (riscv_register_name): Use riscv_gdb_reg_names for int and float
68         register names.  Add an extra assertion.
69         (riscv_is_regnum_a_named_csr): New function.
70         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
71
72 2018-10-22  Jim Wilson  <jimw@sifive.com>
73
74         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
75         FP reg smaller than FP reg size, and fill with -1 instead of 0.
76
77         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
78         (riscv_register_type): Use them.
79         (riscv_print_one_register_info): Handle union of floats same as float.
80         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
81         riscv_fpreg_q_type fields.
82
83 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
84
85         * gdbarch.sh (gdbarch_num_cooked_regs): New.
86         * gdbarch.h: Re-generate.
87         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
88         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
89         * eval.c (evaluate_subexp_standard): Likewise.
90         * findvar.c (value_of_register): Likewise.
91         (value_of_register_lazy): Likewise.
92         (address_from_register): Likewise.
93         * frame.c (get_frame_register_bytes): Likewise.
94         * gdbarch-selftests.c (register_to_value_test): Likewise.
95         * h8300-tdep.c (h8300_register_type): Likewise.
96         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
97         (i386_svr4_reg_to_regnum): Likewise.
98         * infcmd.c (default_print_registers_info): Likewise.
99         (registers_info): Likewise.
100         (print_vector_info): Likewise.
101         (default_print_float_info): Likewise.
102         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
103         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
104         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
105         (mi_cmd_data_list_changed_registers): Likewise.
106         (mi_cmd_data_list_register_values): Likewise.
107         (mi_cmd_data_write_register_values): Likewise.
108         (mi_cmd_trace_frame_collected): Likewise.
109         * mips-tdep.c (print_gp_register_row): Likewise.
110         (mips_print_registers_info): Likewise.
111         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
112         * regcache.c (init_regcache_descr): Likewise.
113         (register_size): Likewise.
114         (register_dump::dump): Likewise.
115         (cooked_read_test): Likewise.
116         (cooked_write_test): Likewise.
117         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
118         (rs6000_gdbarch_init): Likewise.
119         * stabsread.c (stab_reg_to_regnum): Likewise.
120         * stack.c (info_frame_command): Likewise.
121         * target-descriptions.c (tdesc_register_name): Likewise.
122         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
123         * tui/tui-regs.c (tui_show_register_group): Likewise.
124         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
125         (user_reg_map_regnum_to_name): Likewise.
126         (value_of_user_reg): Likewise.
127         (maintenance_print_user_registers): Likewise.
128         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
129         (xtensa_register_name): Likewise.
130         (xtensa_register_type): Likewise.
131         (xtensa_reg_to_regnum): Likewise.
132         (xtensa_pseudo_register_read): Likewise.
133         (xtensa_pseudo_register_write): Likewise.
134
135 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
136
137         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
138         correctly-sized buffer with raw_read.
139         (amd64_pseudo_register_write): Use correctly-sized buffer for
140         raw_read/raw_write.
141
142 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
143
144         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
145         in add_prefix_cmd of set print type.
146
147 2018-10-19  Tom Tromey  <tom@tromey.com>
148
149         PR tui/18388:
150         * NEWS: Mention tabset deprecation.
151         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
152         (update_tab_width): New function.
153         (tui_set_tab_width, tui_show_tab_width): New functions.
154         (tui_set_tab_width_command): Use update_tab_width.
155         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
156         Add new "set tui tab-width" command.
157         * tui/tui-source.c (tui_set_source_content): Update.
158         * tui/tui-disasm.c (tui_set_disassem_content): Update.
159         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
160         Don't declare.
161         (tui_tab_width): Declare.
162         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
163         (tui_set_default_tab_len): Remove.
164
165 2018-10-19  Tom Tromey  <tom@tromey.com>
166
167         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
168         (key_is_backspace, tui_getc): Don't declare.
169         * tui/tui-io.c (key_is_start_sequence): Now static.
170         (key_is_end_sequence, key_is_backspace): Remove.
171         (tui_getc): Now static.
172
173 2018-10-19  Tom Tromey  <tom@tromey.com>
174
175         * symfile.c (reread_symbols): Clear "static_links".
176
177 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
178
179         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
180         define.
181         (aarch64_linux_sigframe_init): Extra boundary checks.
182
183 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
184
185         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
186         the possibly non-existent tdesc type 'vec128', but the type of raw
187         register v16 instead.
188
189 2018-10-19  Gary Benson <gbenson@redhat.com>
190
191         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
192
193 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
194
195         PR cli/23785
196         * cli/cli-dump.c (restore_binary_file): Check if "file" is
197         NULL.
198
199 2018-10-17  Paul Koning  <paul_koning@dell.com>
200
201         * charset.c (convert_between_encodings): Fix unsigned overflow.
202
203 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
204
205         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
206         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
207         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
208         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
209         New functions.
210         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
211         and fbsd_info_proc_mappings_header.
212         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
213         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
214         New.
215
216 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
217
218         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
219         Solaris Maintainer.
220
221 2018-10-15  Tom Tromey  <tom@tromey.com>
222
223         * tui/tui.c (strcat_to_buf): Remove casts.
224         * tui/tui-winsource.c (tui_show_source_line)
225         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
226         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
227         * tui/tui-windata.c (tui_first_data_item_displayed)
228         (tui_delete_data_content_windows, tui_erase_data_content)
229         (tui_display_all_data, tui_display_data_from)
230         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
231         * tui/tui-win.c (tui_set_win_height)
232         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
233         casts.
234         * tui/tui-win.c (tui_resize_all): Remove casts.
235         (tui_scroll_backward_command, tui_set_focus)
236         (tui_set_tab_width_command): Likewise.
237         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
238         * tui/tui-regs.c (tui_show_register_group): Remove cast.
239         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
240         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
241         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
242         Remove casts.
243
244 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
245
246         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
247         AArch64/ARM maintainer.
248
249 2018-10-11  Gary Benson <gbenson@redhat.com>
250
251         * interps.h (interp::m_name): Make private and mutable.
252         * interps.c (interp::~interp): Free m_name.
253
254 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
255             Simon Marchi <simark@simark.ca>
256
257         * README (`configure' options): Add documentation for new
258         "--enable-unit-tests" option.
259         * acinclude.m4: Include "selftest.m4".
260         * configure: Regenerate.
261         * configure.ac: Use "GDB_AC_SELFTEST".
262         * maint.c (maintenance_selftest): Update message informing
263         that selftests have been disabled.
264         (maintenance_info_selftests): Likewise.
265         * selftest.m4: New file.
266
267 2018-10-10  Gary Benson <gbenson@redhat.com>
268
269         * remote.c (remote_target::remote_send_printf): Add
270         missing va_end found by Coverity.
271
272 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
273
274         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
275
276 2018-10-09  Tom Tromey  <tom@tromey.com>
277
278         * configure: Rebuild.
279         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
280         * NEWS: Update --enable-ubsan documentation.
281
282 2018-10-09  Gary Benson <gbenson@redhat.com>
283
284         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
285         found by Coverity.
286
287 2018-10-08  Tom Tromey  <tom@tromey.com>
288
289         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
290         variable.
291         (riscv_fbsd_init_abi): Likewise.
292
293 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
294         * valops.c (value_struct_elt_for_reference): Rename local variable
295         to work around the shadowing a previous local warning.
296
297 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
298
299         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
300         * NEWS: Mention new FreeBSD/riscv native configuration.
301         * configure.host: Add riscv*-*-freebsd*.
302         * configure.nat: Likewise.
303         * riscv-fbsd-nat.c: New file.
304
305 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
306
307         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
308         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
309         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
310         * NEWS: Mention new FreeBSD/riscv target.
311         * configure.tgt: Add riscv*-*-freebsd*.
312         * riscv-fbsd-tdep.c: New file.
313         * riscv-fbsd-tdep.h: New file.
314
315 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
316
317         * regcache.h (struct regcache_map_entry): Note that this type can
318         be used with traditional frame caches.
319         * trad-frame.c (trad_frame_set_reg_regmap): New.
320         * trad-frame.h (trad_frame_set_reg_regmap): New.
321
322 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
323
324         PR c++/16841
325         * valops.c (get_virtual_base_offset): New function.
326         (value_struct_elt_for_reference): Use it to get virtual base offset
327         and add it in calculating class member address.
328
329 2018-10-08   John Darrington <john@darrington.wattle.id.au>
330
331     * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
332       (check_producer): Check if the producer is codewarrior.
333       (producer_is_codewarrior): New function.
334       (lnp_state_machine::record_line): Ignore is_stmt flag for records
335        produced by codewarrior.
336       (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
337
338 2018-10-06  Tom Tromey  <tom@tromey.com>
339
340         PR python/19399:
341         * python/py-inferior.c: Add "architecture" entry.
342         (infpy_architecture): New function.
343
344 2018-10-06  Tom Tromey  <tom@tromey.com>
345
346         PR python/21765:
347         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
348         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
349         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
350         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
351
352 2018-10-06  Tom Tromey  <tom@tromey.com>
353
354         PR build/17077:
355         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
356         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
357         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
358         #include.
359
360 2018-10-06  Tom Tromey  <tom@tromey.com>
361
362         * python/py-breakpoint.c (bppy_get_location): Handle a
363         bp_breakpoint without a location.
364
365 2018-10-06  Tom Tromey  <tom@tromey.com>
366
367         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
368         (_RegEx): Reformat help text.
369         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
370         (AnyCallerIs, AnyCallerMatches): Reformat help text.
371         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
372         text.
373         * python/lib/gdb/command/xmethods.py (InfoXMethod)
374         (EnableXMethod, DisableXMethod): Remove help indentation.
375         Capitalize meta-syntactic variables.
376         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
377         (EnableUnwinder, DisableUnwinder): Remove help indentation.
378         Capitalize meta-syntactic variables.
379         * python/lib/gdb/command/explore.py (ExploreCommand)
380         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
381         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
382         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
383         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
384         Remove help indentation.
385         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
386         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
387         (DisableFrameFilter, SetFrameFilterPriority)
388         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
389
390 2018-10-06  Tom Tromey  <tom@tromey.com>
391
392         PR tui/28819:
393         * tui/tui-io.c (gdb_wgetch): New function.
394         (tui_mld_getc, tui_getc): Use it.
395
396 2018-10-05  Tom Tromey  <tom@tromey.com>
397
398         * sol-thread.c (sol_thread_target::wait): Rename inner
399         "save_ptid".
400
401 2018-10-04  Tom Tromey  <tom@tromey.com>
402
403         * configure: Rebuild.
404         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
405
406 2018-10-04  Tom Tromey  <tom@tromey.com>
407
408         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
409         declaration of "block".
410
411 2018-10-04  Tom Tromey  <tom@tromey.com>
412
413         * common/filestuff.c (fdwalk): Remove inner declaration of
414         "result".
415
416 2018-10-04  Tom Tromey  <tom@tromey.com>
417
418         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
419         "structs_addr" and hoist declaration.
420
421 2018-10-04  Tom Tromey  <tom@tromey.com>
422
423         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
424         variable "size".
425
426 2018-10-04  Tom Tromey  <tom@tromey.com>
427
428         * mdebugread.c (parse_partial_symbols): Use std::string.
429
430 2018-10-04  Tom Tromey  <tom@tromey.com>
431
432         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
433         * p-valprint.c (pascal_val_print): Split inner "i" variable.
434         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
435         header.
436         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
437         more inner scope.
438         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
439         * varobj.c (varobj_update): Rename inner "newobj",
440         "type_changed".
441         * valprint.c (generic_emit_char): Rename inner "buf".
442         * valops.c (find_overload_match): Rename inner "temp".
443         (value_struct_elt_for_reference): Declare "v" in more inner
444         scope.
445         * v850-tdep.c (v850_push_dummy_call): Rename "len".
446         * unittests/array-view-selftests.c (run_tests): Rename inner
447         "vec".
448         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
449         header.
450         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
451         "tsv" in more inner scope.
452         (print_one_static_tracepoint_marker): Rename inner
453         "tuple_emitter".
454         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
455         (tic6x_push_dummy_call): Don't redeclare "addr".
456         * target-float.c: Declare "dto" lower.
457         * symtab.c (lookup_local_symbol): Rename inner "sym".
458         (find_pc_sect_line): Rename inner "pc".
459         * stack.c (print_frame): Don't redeclare "gdbarch".
460         (return_command): Rename inner "gdbarch".
461         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
462         "sp".
463         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
464         header.
465         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
466         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
467         scope.
468         * remote.c (remote_target::update_thread_list): Don't redeclare
469         "tp".
470         (remote_target::process_initial_stop_replies): Rename inner
471         "thread".
472         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
473         (remote_target::wait_as): Don't redeclare "stop_reply".
474         (remote_target::get_thread_local_address): Rename inner
475         "result".
476         (remote_target::get_tib_address): Likewise.
477
478         * regcache.c (cooked_read_test): Rename "regnum".
479         * record-btrace.c (cmd_record_btrace_start): Rename inner
480         "exception".
481         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
482         loop header.
483         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
484         header.
485         (ppu2spu_sniffer): Rename inner "buf".
486         * parse.c (operator_check_standard): Rename inner "type",
487         "objfile".
488         * p-valprint.c (pascal_val_print): Introduce new scope for
489         "low_bound", "high_bound".
490         * p-exp.y (yylex): Declare "i" in loop header.
491         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
492         Lower declaration of "s".
493         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
494         header.
495         (nios2_push_dummy_call): Rename "len".
496         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
497         "buf".
498         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
499         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
500         (linux_xfer_osdata_modules): Likewise.
501         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
502         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
503         (mips_o64_push_dummy_call): Likewise.
504         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
505         "op".
506         * mi/mi-main.c (list_available_thread_groups): Rename inner
507         "tuple_emitter".
508         (mi_cmd_data_read_memory): Rename inner "opts".
509         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
510         "tuple_emitter".
511         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
512         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
513         more inner scope.
514         (parse_partial_symbols): Rename inner "pst", "p", "name"
515         * main.c (captured_main_1): Rename inner "i"s.
516         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
517         "oso2".
518         * linux-tdep.c (linux_info_proc): Rename inner "filename".
519         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
520         * infrun.c (handle_no_resumed): Don't redeclare "thread".
521         (handle_signal_stop): Rename inner "gdbarch".
522         (handle_command): Declare "signum" in loop header.
523         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
524         "status".
525         (examine_prologue): Rename inner "sol" and "sof".
526         (ia64_extract_return_value): Rename inner "val".  Declare another
527         "val" in a more inner scope.
528         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
529         inner scope.
530         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
531         "except".
532         * findvar.c (default_read_var_value): Don't redeclare "addr".
533         * f-exp.y (yylex): Declare "i" in loop header.
534         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
535         Rename inner "type", "expect_type".
536         (evaluate_subexp_for_sizeof): Rename inner "pc".
537         * elfread.c (elf_symfile_read): Rename inner "abfd".
538         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
539         "bytes_read".
540         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
541         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
542         (dwarf_decode_line_header): Rename inner "lh".
543         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
544         "offset".  Declare "i" in loop header.
545         (disassemble_dwarf_expression): Rename inner "addr_size".
546         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
547         inner "result".
548         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
549         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
550         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
551         "inner_list_emitter".
552         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
553         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
554         declaration in a block.
555         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
556         * cp-valprint.c (cp_print_value_fields): Don't redeclare
557         "obstack_final_size".
558         * cp-support.c (inspect_type): Declare "i" in loop header.
559         * compile/compile.c (compile_instance::insert_symbol_error):
560         Rename inner "e".
561         * common/agent.c (agent_run_command): Remove inner "ret"
562         declaration.
563         * coffread.c (coff_symfile_read): Rename inner "name".
564         (coff_symfile_read): Rename inner "abfd".
565         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
566         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
567         "high".
568         * c-exp.y (lex_one_token): Move "len" declaration lower.
569         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
570         "gdbarch".
571         (create_exception_master_breakpoint): Likewise.  Don't redeclare
572         "b".
573         (watch_command_1): Declare "mark" later.
574         (clear_command): Don't shadow "a" or "b".
575         (delete_command): Rename inner "b".
576         (delete_trace_command): Likewise.
577         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
578         "op".
579         (arm_gdbarch_init): Remove inner "e_flags".
580         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
581         "offset" in inner blocks.
582
583 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
584
585         * dwarf-index-write.c (file_write): Don't write if the vector is
586         empty.
587
588 2018-10-05  Tom de Vries  <tdevries@suse.de>
589
590         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
591         PyArg_ParseTuple call.
592
593 2018-10-05  Tom de Vries  <tdevries@suse.de>
594
595         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
596         PyArg_ParseTuple call.
597
598 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
599
600         * psymtab.c (recursively_search_psymtabs): Reformat parameters
601         to avoid exceeding 80 characters per line limit.
602
603 2018-10-04  Tom Tromey  <tom@tromey.com>
604
605         * symfile.c (syms_from_objfile_1, finish_new_objfile)
606         (reread_symbols): Update.
607         * complaints.h (clear_complaints): Remove argument.
608         * complaints.c (enum complaint_series): Remove.
609         (series): Remove global.
610         (complaint_internal): Update.
611         (clear_complaints): Remove argument.
612
613 2018-10-04  Tom Tromey  <tom@tromey.com>
614
615         * symfile.c (symbol_file_add_with_addrs): Do not print "no
616         debugging symbols" message if there is a separate debug objfile.
617
618 2018-10-04  Tom Tromey  <tom@tromey.com>
619
620         PR cli/19551:
621         * symfile.c (symbol_file_add_with_addrs): Update output.
622         * psymtab.c (require_partial_symbols): Update output.
623
624 2018-10-04  Tom Tromey  <tom@tromey.com>
625
626         PR cli/22234:
627         * complaints.c: Emit \n.
628
629 2018-10-04  Tom Tromey  <tom@tromey.com>
630
631         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
632         (separate_debug_file_exists, find_separate_debug_file)
633         (add_symbol_file_command, reread_symbols, allocate_symtab)
634         (allocate_compunit_symtab): Use filtered printing, not
635         unfiltered.
636         * psymtab.c (require_partial_symbols, dump_psymtab)
637         (allocate_psymtab): Use filtered printing, not unfiltered.
638
639 2018-10-04  Tom Tromey  <tom@tromey.com>
640
641         * complaints.c (complaint_internal): Correctly check complaint
642         count.
643
644 2018-10-04  Tom Tromey  <tom@tromey.com>
645
646         * complaints.h (struct complaints): Remove declaration.
647         * complaints.c (clear_complaints): Remove an unused variable.
648
649 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
650
651         * MAINTAINERS (Write After Approval): Add self.
652
653 2018-10-03  Tom Tromey  <tom@tromey.com>
654
655         * guile/scm-value.c (gdbscm_value_to_string): Initialize
656         "buffer_contents".
657         * coffread.c (coff_symtab_read): Initialize "newobj".
658
659 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
660
661         * dwarf2read.c (read_func_scope): Remove struct keyword in
662         range-based for.
663
664 2018-10-03  Tom Tromey  <tom@tromey.com>
665
666         * README: Mention --enable-ubsan.
667         * NEWS: Mention --enable-ubsan.
668         * acinclude.m4: Include sanitize.m4.
669         * configure: Rebuild.
670         * configure.ac: Call AM_GDB_UBSAN.
671         * sanitize.m4: New file.
672
673 2018-10-03  Tom Tromey  <tom@tromey.com>
674
675         * expression.h (enum exp_opcode): Use uint8_t as base type.
676         * expprint.c (op_name): Handle invalid opcodes.
677
678 2018-10-03  Tom Tromey  <tom@tromey.com>
679
680         * parse.c (prefixify_expression): Add assert.
681         (parse_exp_in_context_1): Throw exception if the expression is
682         empty.
683
684 2018-10-03  Tom Tromey  <tom@tromey.com>
685
686         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
687
688 2018-10-03  Tom Tromey  <tom@tromey.com>
689
690         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
691
692 2018-10-03  Tom Tromey  <tom@tromey.com>
693
694         * dwarf2read.c (read_subrange_type): Make "negative_mask"
695         unsigned.
696
697 2018-10-03  Tom Tromey  <tom@tromey.com>
698
699         * findvar.c (extract_integer): Do work in an unsigned type.
700
701 2018-10-03  Tom Tromey  <tom@tromey.com>
702
703         * common/enum-flags.h (enum_flags::operator~): Add static assert.
704         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
705         base type.
706         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
707         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
708         type.
709         * c-lang.h (enum c_string_type_values): Use unsigned as base
710         type.
711         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
712
713 2018-10-03  Tom Tromey  <tom@tromey.com>
714
715         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
716         <~dwarf2_frame_state_reg_info>: Update.
717         <dwarf2_frame_state_reg_info>: Update.
718         <alloc_regs>: Add assertion.  Update.
719         <reg>: Now a std::vector.
720         <num_regs>: Remove.
721         <swap>: Update.
722         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
723         (execute_cfa_program_test, dwarf2_frame_cache): Update.
724
725 2018-10-03  Tom Tromey  <tom@tromey.com>
726
727         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
728
729 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
730
731         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
732
733 2018-10-02  Tom Tromey  <tom@tromey.com>
734
735         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
736
737 2018-10-02  John Darrington <john@darrington.wattle.id.au>
738
739         * NEWS: Mention changed commands.
740         * ser-uds.c: New file.
741         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
742         * configure: Regenerate.
743         * Makefile.in: Add new file.
744         * serial.c (serial_open): Check if filename is a socket
745           and lookup the appropriate interface accordingly.
746
747 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
748
749         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
750         define.
751         (AARCH64_EXTRA_MAGIC): Likewise.
752         (AARCH64_FPSIMD_MAGIC): Likewise.
753         (AARCH64_SVE_MAGIC): Likewise.
754         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
755         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
756         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
757         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
758         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
759         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
760         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
761         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
762         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
763         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
764         (read_aarch64_ctx): Add function.
765         (aarch64_linux_sigframe_init): Detect FP registers.
766
767 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
768
769         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
770         (AARCH64_D0_REGNUM): Likewise.
771         (AARCH64_S0_REGNUM): Likewise.
772         (AARCH64_H0_REGNUM): Likewise.
773         (AARCH64_B0_REGNUM): Likewise.
774         (AARCH64_SVE_V0_REGNUM): Likewise.
775         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
776         (AARCH64_D0_REGNUM): Likewise.
777         (AARCH64_S0_REGNUM): Likewise.
778         (AARCH64_H0_REGNUM): Likewise.
779         (AARCH64_B0_REGNUM): Likewise.
780         (AARCH64_SVE_V0_REGNUM): Likewise.
781
782 2018-10-01  Gary Benson <gbenson@redhat.com>
783
784         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
785         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
786         prfpregset_t instead of gdb_prfpregset_t.
787         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
788         * configure, config.in: Rebuild.
789
790 2018-10-01  Gary Benson <gbenson@redhat.com>
791
792         * common/gdb_proc_service.h: New file, factored out from...
793         * gdb_proc_service.h: Moved common code to the above file.
794         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
795
796 2018-10-01  Gary Benson <gbenson@redhat.com>
797
798         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
799         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
800
801 2018-10-01  Gary Benson <gbenson@redhat.com>
802
803         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
804         (AC_CHECK_HEADERS): Check for linux/elf.h.
805         * configure, config.in: Rebuild.
806         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
807         doesn't define elf_fpregset_t.
808
809 2018-10-01  Gary Benson <gbenson@redhat.com>
810
811         * gdb_proc_service.h: Whitespace change.
812
813 2018-10-01  Tom Tromey  <tom@tromey.com>
814
815         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
816         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
817         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
818
819 2018-10-01  Tom Tromey  <tom@tromey.com>
820
821         * README: Minor change.
822
823 2018-09-30  Pedro Alves  <palves@redhat.com>
824
825         * darwin-nat-info.c (darwin_debug_regions_recurse)
826         (info_mach_exceptions_command): Remove unused local variables.
827         * darwin-nat.c (darwin_decode_notify_message)
828         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
829         (darwin_stop_inferior, darwin_setup_exceptions)
830         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
831         (darwin_nat_target::attach, darwin_nat_target::detach)
832         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
833         local variables.
834         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
835         variables.
836
837 2018-09-29  Tom Tromey  <tom@tromey.com>
838
839         * README: Remove some leftover text.
840
841 2018-09-29  Tom Tromey  <tom@tromey.com>
842
843         * PROBLEMS: Rewrite.
844         * README: Update.
845
846 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
847
848         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
849         case with explicit breakpoint kind.
850         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
851         'additional_info' and related logic.
852         (riscv_debug_breakpoints): New variable.
853         (riscv_breakpoint_kind_from_pc): Use the length of the existing
854         instruction to determine the breakpoint kind.
855         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
856         flag.  Update description of 'set/show riscv
857         use-compressed-breakpoints' flag.
858
859 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
860
861         (NEWS): Mention changes to frame related commands.
862         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
863         (add_prefix_cmd_suppress_notification): New function.
864         (add_com_suppress_notification): Call
865         add_cmd_suppress_notification.
866         * command.h (add_cmd_suppress_notification): Declare.
867         (add_prefix_cmd_suppress_notification): Declare.
868         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
869         (parse_frame_specification): Moved from stack.c, with
870         simplification to handle a single argument.
871         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
872         switch to the selected frame.  Add a header comment.
873         * stack.c: Remove 'safe-ctype.h' include.
874         (find_frame_for_function): Add declaration.
875         (find_frame_for_address): New function.
876         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
877         (frame_selection_by_function_completer): New function.
878         (info_frame_command): Rename to...
879         (info_frame_command_core): ...this, and update parameter types.
880         (select_frame_command): Rename to...
881         (select_frame_command_core): ...this, and update parameter types.
882         (frame_command): Rename to...
883         (frame_command_core): ...this, and update parameter types.
884         (class frame_command_helper): New class to wrap implementations of
885         frame related sub-commands.
886         (frame_apply_cmd_list): New static global.
887         (frame_cmd_list): Make static.
888         (select_frame_cmd_list): New global for sub-commands.
889         (info_frame_cmd_list): New global for sub-commands.
890         (_initialize_stack): Register sub-commands for 'frame',
891         'select-frame', and 'info frame'.  Update 'frame apply' commands
892         to use frame_apply_cmd_list.  Move function local static
893         frame_apply_list to file static frame_apply_cmd_list for
894         consistency.
895         * stack.h (select_frame_command): Delete declarationn.
896         (select_frame_for_mi): Declare new function.
897
898 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
899
900         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
901         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
902         and NOP.
903
904 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
905
906         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
907
908 2018-09-26  Tom Tromey  <tom@tromey.com>
909
910         * valops.c (auto_abandon): Remove dead code.
911
912 2018-09-26  Tom Tromey  <tom@tromey.com>
913
914         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
915
916 2018-09-24  Tom Tromey  <tom@tromey.com>
917
918         * common/pathstuff.c (get_standard_cache_dir): Make
919         "xdg_cache_home" and "home" const.
920         * top.c (init_history): Make "tmpenv" const.
921         * main.c (get_init_files): Make "homedir" const.
922
923 2018-09-23  Tom Tromey  <tom@tromey.com>
924
925         PR python/18852:
926         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
927
928 2018-09-23  Tom Tromey  <tom@tromey.com>
929
930         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
931         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
932         * python/python-internal.h (gdbpy_handle_exception): Declare.
933         * python/py-utils.c (gdbpy_handle_exception): New function.
934
935 2018-09-23  Tom Tromey  <tom@tromey.com>
936
937         PR python/17284:
938         * python/py-type.c (typy_template_argument): Check for negative
939         argument number.
940
941 2018-09-23  Tom Tromey  <tom@tromey.com>
942
943         PR python/14062:
944         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
945
946 2018-09-23  Tom Tromey  <tom@tromey.com>
947
948         PR python/18170:
949         * python/py-value.c (valpy_int): Allow conversion from pointer
950         type.
951
952 2018-09-23  Tom Tromey  <tom@tromey.com>
953
954         PR python/20126:
955         * python/py-value.c (valpy_int): Respect type sign.
956
957 2018-09-23  Tom Tromey  <tom@tromey.com>
958
959         PR python/18352;
960         * python/py-value.c (valpy_float): Allow conversions from int or
961         char.
962         (valpy_int, valpy_long): Allow conversions from float.
963
964 2018-09-23  Tom Tromey  <tom@tromey.com>
965
966         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
967         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
968
969 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
970
971         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
972         __sighndlr.
973         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
974
975 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
976
977         * windows-nat.c (windows_nat_target::wait): Remove a spurious
978         target_terminal::ours().
979
980 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
981
982         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
983         of vl to ULONGEST.
984
985 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
986
987         * breakpoint.c (update_inserted_breakpoint_locations): Remove
988         redundant condition.
989
990 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
991
992         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
993
994         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
995         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
996         * sol-thread.c (ps_pdmodel): Don't guard definition.
997
998         * procfs.c: Fix formatting.
999
1000         * procfs.c (sysset_t_alloc): Remove.
1001         (create_procinfo): Use XNEW instead of sysset_t_alloc.
1002         (procfs_debug_inferior): Likewise.
1003         (procfs_set_exec_trap): Likewise.
1004         (proc_set_traced_sysentry): Don't allocate argp dynamically.
1005         (proc_set_traced_sysexit): Likewise.
1006
1007         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
1008         (dead_procinfo): Likewise.
1009         (proc_warn): Likewise.
1010         (proc_error): Likewise.
1011         (proc_get_LDT_entry): Likewise.
1012         (do_attach): Likewise.
1013         (procfs_target::pid_to_str): Likewise.
1014         (iterate_over_mappings): Likewise.
1015
1016         * procfs.c (create_procinfo): Fix ARI warning.
1017         (proc_get_status): Likewise.
1018         (proc_stop_process): Likewise.
1019         (proc_run_process): Likewise.
1020         (proc_kill): Likewise.
1021         (proc_get_LDT_entry): Likewise.
1022         (procfs_find_LDT_entry): Likewise.
1023         (proc_update_threads): Likewise.
1024         (proc_iterate_over_threads): Likewise.
1025         (do_attach): Likewise.
1026         (procfs_xfer_memory): Likewise.
1027         (invalidate_cache): Likewise.
1028         (procfs_target::resume): Likewise.
1029         (procfs_init_inferior): Likewise.
1030         (procfs_set_exec_trap): Likewise.
1031         (procfs_target::thread_alive): Likewise.
1032         (procfs_target::pid_to_exec_file): Likewise.
1033         (iterate_over_mappings): Likewise.
1034         (procfs_target::make_corefile_notes): Likewise.
1035         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
1036
1037         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
1038         (procfs_find_LDT_entry): Likewise.
1039         * sol-thread.c (ps_lgetLDT): Likewise.
1040
1041 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1042
1043         PR tdep/17903
1044         * procfs.c (procfs_target): Declare pid_to_exec_file.
1045         (procfs_target::pid_to_exec_file): New.
1046
1047 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1048
1049         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
1050         renaming.
1051         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
1052         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
1053
1054 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1055
1056         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
1057         (supply_fpregset, fill_fpregset): Move ...
1058         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
1059         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
1060         Remove references to ioctl-based procfs.
1061         Include <sys/reg.h>.
1062         Remove PR_MODEL_NATIVE guards.
1063         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
1064         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
1065
1066 2018-09-19  Xavier Roirand  <roirand@adacore.com>
1067
1068         PR gdb/20981:
1069         * solib-darwin.c (darwin_get_dyld_bfd): New function.
1070         (darwin_solib_get_all_image_info_addr_at_init): Update call.
1071         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
1072
1073 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
1074
1075         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
1076         (fbsd_print_sockaddr_in6): Likewise.
1077
1078 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
1079             Chris January  <chris.january@arm.com>
1080
1081         * eval.c (skip_undetermined_arglist): Skip argument list helper.
1082         (evaluate_subexp_standard): Return a dummy type when
1083         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
1084         OP_F77_UNDETERMINED_ARGLIST case.
1085         * expression.h (enum noside): Update comment.
1086
1087 2018-09-19  George Vasick <george.vasick@oracle.com>
1088
1089         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
1090
1091 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
1092             April Chin <april.chin@oracle.com>
1093             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1094
1095         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
1096         uint_t lwpid_t.
1097         (create_procinfo): Print pids in /proc without leading zeros.
1098
1099 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
1100
1101         * nios2-tdep.c (nios2_gcc_target_options): New.
1102         (nios2_gdb_arch_init): Install new hook.
1103
1104 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
1105
1106         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
1107         New file.
1108         * update-gnulib.sh: Apply patch.
1109         * configure: Re-generate.
1110
1111 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1112
1113         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
1114         description.  Make "info proc" command descriptions more
1115         consistent.
1116
1117 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1118
1119         * NEWS: Mention 'info proc files' command.
1120
1121 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1122
1123         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
1124         descriptors for IP_FILES and IP_ALL.
1125
1126 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1127
1128         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
1129         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
1130         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
1131         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
1132         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
1133         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
1134         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
1135         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
1136         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
1137         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
1138         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
1139         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
1140         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
1141         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
1142         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
1143         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
1144         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
1145         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
1146         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
1147         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
1148         (struct fbsd_sockaddr_un): New types.
1149         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
1150         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
1151         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
1152         (fbsd_core_info_proc_files): New functions.
1153         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
1154         IP_ALL.
1155         * fbsd-tdep.h (fbsd_info_proc_files_header)
1156         (fbsd_info_proc_files_entry): New.
1157
1158 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1159
1160         * defs.h (enum info_proc_what) [IP_FILES]: New value.
1161         * infcmd.c (info_proc_cmd_files): New function.
1162         (_initialize_infcmd): Register 'info proc files' command.
1163
1164 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1165
1166         * gnulib/aclocal-m4-deps.mk: Re-generate.
1167         * gnulib/aclocal.m4: Re-generate.
1168         * gnulib/config.in: Re-generate.
1169         * gnulib/configure: Re-generate.
1170         * gnulib/import/Makefile.am: Re-generate.
1171         * gnulib/import/Makefile.in: Re-generate.
1172         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
1173         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
1174         * gnulib/import/arpa_inet.in.h: New file.
1175         * gnulib/import/inet_ntop.c: New file.
1176         * gnulib/import/m4/arpa_inet_h.m4: New file.
1177         * gnulib/import/m4/inet_ntop.m4: New file.
1178         * gnulib/import/m4/netinet_in_h.m4: New file.
1179         * gnulib/import/m4/socklen.m4: New file.
1180         * gnulib/import/m4/sockpfaf.m4: New file.
1181         * gnulib/import/m4/stdalign.m4: New file.
1182         * gnulib/import/m4/sys_uio_h.m4: New file.
1183         * gnulib/import/netinet_in.in.h: New file.
1184         * gnulib/import/stdalign.in.h: New file.
1185         * gnulib/import/sys_socket.c: New file.
1186         * gnulib/import/sys_socket.in.h: New file.
1187         * gnulib/import/sys_uio.in.h: New file.
1188         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
1189         module.
1190
1191 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1192
1193         * gnulib/aclocal-m4-deps.mk: New file.
1194         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
1195         deterministically.
1196
1197 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1198
1199         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
1200         KVE_PATH.
1201
1202 2018-09-18  Tom Tromey  <tom@tromey.com>
1203
1204         * compile/compile-object-load.c (struct
1205         link_hash_table_cleanup_data): Add constructor and destructor.
1206         Use DISABLE_COPY_AND_ASSIGN.
1207         (~link_hash_table_cleanup_data): Rename from
1208         link_hash_table_free.  Now a destructor.
1209         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
1210
1211 2018-09-18  Tom Tromey  <tom@tromey.com>
1212
1213         * compile/compile-object-run.c (do_module_cleanup): Use delete.
1214         * compile/compile-object-load.c (struct munmap_list): Move to
1215         header file.
1216         (munmap_list::add): Rename from munmap_list_add; rewrite.
1217         (munmap_list::~munmap_list): Rename from munmap_list_free.
1218         (munmap_listp_free_cleanup): Remove.
1219         (compile_object_load): Update.
1220         * compile/compile-object-load.h (struct munmap_list): Move from
1221         compile-object-load.c.  Rewrite.
1222
1223 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
1224
1225         * aarch64-tdep.c (pass_in_v): Use register size.
1226         (aarch64_extract_return_value): Likewise.
1227         (aarch64_store_return_value): Likewise.
1228
1229 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1230
1231         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
1232         rlim_t.
1233
1234 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1235
1236         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
1237         Fix short help line.
1238
1239 2018-09-17  Tom Tromey  <tom@tromey.com>
1240
1241         PR python/20445:
1242         * configure: Rebuild.
1243         * configure.ac: Conditionally use -DNDEBUG for Python.
1244
1245 2018-09-17  Tom Tromey  <tom@tromey.com>
1246
1247         * configure: Rebuild.
1248         * configure.ac: Use gmp as a library dependency when checking for
1249         mpfr.
1250
1251 2018-09-17  Pedro Alves  <palves@redhat.com>
1252
1253         * python/py-inferior.c (find_inferior_object): Delete.
1254
1255 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
1256
1257         * compile/compile-cplus-types.c
1258         (compile_cplus_instance::enter_scope): Don't use new_scope after
1259         std::move.
1260
1261 2018-09-17  Tom Tromey  <tom@tromey.com>
1262
1263         * common/pathstuff.c (get_standard_cache_dir): Use
1264         ~/Library/Caches on macOS.
1265         * common/pathstuff.h (get_standard_cache_dir): Update comment.
1266
1267 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
1268
1269         PR python/23669
1270         * breakpoint.c (commands_cmd_element): New.
1271         (_initialize_breakpoint): Assign commands_cmd_element.
1272         * breakpoint.h (commands_cmd_element): New.
1273         * cli/cli-script.c (while_cmd_element, if_command,
1274         define_cmd_element): New.
1275         (command_name_equals): Remove.
1276         (process_next_line): Compare commands by pointer, not by name.
1277         (_initialize_cli_script): Assign the various cmd_list_element
1278         variables.
1279         * compile/compile.c (compile_cmd_element): New.
1280         (_initialize_compile): Assign compile_cmd_element.
1281         * compile/compile.h (compile_cmd_element): New.
1282         * guile/guile.c (guile_cmd_element): New.
1283         (install_gdb_commands): Assign guile_cmd_element.
1284         * guile/guile.h (guile_cmd_element): New.
1285         * python/python.c (python_cmd_element): New.
1286         (_initialize_python): Assign python_cmd_element.
1287         * python/python.h (python_cmd_element): New.
1288         * tracepoint.c (while_stepping_cmd_element): New.
1289         (_initialize_tracepoint): Assign while_stepping_cmd_element.
1290         * tracepoint.h (while_stepping_cmd_element): New.
1291
1292 2018-09-17  Tom Tromey  <tom@tromey.com>
1293
1294         * infrun.c (save_infcall_suspend_state): Return
1295         infcall_suspend_state_up.
1296         (save_infcall_control_state): Return infcall_control_state_up.
1297         * inferior.h (save_infcall_suspend_state)
1298         (save_infcall_control_state): Declare later.  Return unique
1299         pointers.
1300
1301 2018-09-17  Tom Tromey  <tom@tromey.com>
1302
1303         * infrun.c (struct stop_context): Declare constructor,
1304         destructor, "changed" method.
1305         (stop_context::stop_context): Rename from save_stop_context.
1306         (stop_context::~stop_context): Rename from
1307         release_stop_context_cleanup.
1308         (normal_stop): Update.
1309         (stop_context::changed): Rename from stop_context_changed.  Return
1310         bool.
1311
1312 2018-09-17  Tom Tromey  <tom@tromey.com>
1313
1314         * inferior.h (struct infcall_suspend_state_deleter): New.
1315         (infcall_suspend_state_up): New typedef.
1316         (struct infcall_control_state_deleter): New.
1317         (infcall_control_state_up): New typedef.
1318         (make_cleanup_restore_infcall_suspend_state)
1319         (make_cleanup_restore_infcall_control_state): Don't declare.
1320         * infcall.c (call_function_by_hand_dummy): Update.
1321         * infrun.c (do_restore_infcall_suspend_state_cleanup)
1322         (make_cleanup_restore_infcall_suspend_state): Remove.
1323         (do_restore_infcall_control_state_cleanup)
1324         (make_cleanup_restore_infcall_control_state): Remove.
1325
1326 2018-09-17  Tom Tromey  <tom@tromey.com>
1327
1328         * gdbthread.h (struct thread_control_state): Add initializer.
1329         (class thread_info) <control>: Remove initializer.
1330         * inferior.h (struct inferior_control_state): Add initializer.
1331         (class inferior) <control>: Remove initializer.
1332         (exit_inferior_1): Update.
1333         * infrun.c (struct infcall_control_state): Add constructors.
1334         (save_infcall_control_state): Use new.
1335         (restore_infcall_control_state, discard_infcall_control_state):
1336         Use delete.
1337
1338 2018-09-17  Tom Tromey  <tom@tromey.com>
1339
1340         * infrun.c (struct infcall_suspend_state) <registers>: Now a
1341         unique_ptr.
1342         <siginfo_data>: Now a unique_xmalloc_ptr.
1343         (save_infcall_suspend_state, restore_infcall_suspend_state)
1344         (discard_infcall_suspend_state)
1345         (get_infcall_suspend_state_regcache): Update.
1346
1347 2018-09-17  Tom Tromey  <tom@tromey.com>
1348
1349         * gdbthread.h (struct thread_suspend_state): Add initializers.
1350         (class thread_info) <suspend>: Remove initializer.
1351         * infrun.c (struct infcall_suspend_state): Add initializers.
1352         (save_infcall_suspend_state): Use new.
1353         (discard_infcall_suspend_state): Use delete.
1354
1355 2018-09-16  Tom Tromey  <tom@tromey.com>
1356
1357         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
1358         Remove.
1359         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
1360         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
1361         (py_varobj_iter_new): Likewise.
1362         (py_varobj_get_iterator): Use gdbpy_ref.
1363
1364 2018-09-16  Tom Tromey  <tom@tromey.com>
1365
1366         * python/py-threadevent.c (py_get_event_thread): Simplify.
1367         * python/py-inferior.c (infpy_thread_from_thread_handle):
1368         Return immediately after calling thread_to_thread_object.  Use
1369         Py_RETURN_NONE.
1370         (thread_to_thread_object): Set the exception on a NULL return.
1371
1372 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
1373
1374         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
1375
1376 2018-09-16  Tom Tromey  <tom@tromey.com>
1377
1378         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
1379         Remove.
1380
1381 2018-09-16  Tom Tromey  <tom@tromey.com>
1382
1383         * python/python-internal.h (thread_to_thread_object): Change
1384         return type.
1385         * python/py-inferior.c (thread_to_thread_object): Return a new
1386         reference.
1387         (infpy_thread_from_thread_handle): Update.
1388         * python/py-infthread.c (gdbpy_selected_thread): Update.
1389         * python/py-stopevent.c (create_stop_event_object): Update.
1390         * python/py-threadevent.c (py_get_event_thread): Return a new
1391         reference.
1392         (py_get_event_thread): Update.
1393         * python/py-event.h (py_get_event_thread): Change return type.
1394         * python/py-continueevent.c (create_continue_event_object):
1395         Update.
1396
1397 2018-09-16  Tom Tromey  <tom@tromey.com>
1398
1399         * python/py-progspace.c (pspy_get_objfiles): Update.
1400         * python/python-internal.h (objfile_to_objfile_object): Change
1401         return type.
1402         * python/py-newobjfileevent.c (create_new_objfile_event_object):
1403         Update.
1404         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1405         Update.
1406         * python/python.c (gdbpy_get_current_objfile): Update.
1407         (gdbpy_objfiles): Update.
1408         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
1409         Update.
1410         (objfile_to_objfile_object): Return a new reference.
1411         * python/py-symtab.c (stpy_get_objfile): Update.
1412         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
1413         Update.
1414
1415 2018-09-16  Tom Tromey  <tom@tromey.com>
1416
1417         * python/py-inferior.c (infpy_get_progspace): Update.
1418         * python/python-internal.h (pspace_to_pspace_object): Change
1419         return type.
1420         * python/py-newobjfileevent.c
1421         (create_clear_objfiles_event_object): Update.
1422         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1423         Update.
1424         * python/python.c (gdbpy_get_current_progspace): Update.
1425         (gdbpy_progspaces): Update.
1426         * python/py-progspace.c (pspace_to_pspace_object): Return a new
1427         reference.
1428         * python/py-objfile.c (objfpy_get_progspace): Update.
1429         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
1430         Update.
1431
1432 2018-09-16  Tom Tromey  <tom@tromey.com>
1433
1434         * python/lib/gdb/__init__.py (current_progspace, objfiles)
1435         (solib_name, block_for_pc, find_pc_line): New functions.
1436         (execute_unwinders): Update.
1437         * python/py-block.c (gdbpy_block_for_pc): Remove.
1438         * python/py-inferior.c (infpy_get_progspace): New function.
1439         (inferior_object_getset) <progspace>: Add.
1440         * python/py-progspace.c (pspy_objfiles): Rewrite.
1441         (pspy_solib_name, pspy_block_for_pc)
1442         (pspy_find_pc_line, pspy_is_valid): New functions.
1443         (progspace_object_methods): Add entries for solib_name,
1444         block_for_pc, find_pc_line, is_valid.
1445         * python/python-internal.h (gdbpy_block_for_pc)
1446         (build_objfiles_list): Don't declare.
1447         * python/python.c: Don't include solib.h.
1448         (gdbpy_solib_name, gdbpy_find_pc_line)
1449         (gdbpy_get_current_progspace, build_objfiles_list)
1450         (gdbpy_objfiles): Remove.
1451         (GdbMethods) <current_progspace, objfiles, block_for_pc,
1452         solib_name, find_pc_line>: Remove entries.
1453
1454 2018-09-16  Tom Tromey  <tom@tromey.com>
1455
1456         * top.c (new_ui_command): Use GNU style for metasyntactic
1457         variables.
1458         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
1459         variables.
1460         * maint.c (maintenance_translate_address): Remove "<>" around
1461         text.
1462         * interps.c (interpreter_exec_cmd): Use GNU style for
1463         metasyntactic variables.
1464         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
1465         metasyntactic variables.
1466         * tracepoint.c (tfind_range_command): Use GNU style for
1467         metasyntactic variables.
1468         (tfind_outside_command): Likewise.
1469         (_initialize_tracepoint): Likewise.
1470         * remote.c (extended_remote_target::create_inferior): Use GNU
1471         style for metasyntactic variables.
1472         * sparc64-tdep.c (adi_examine_command): Use GNU style for
1473         metasyntactic variables.
1474         (adi_assign_command): Likewise.
1475
1476 2018-09-16  Tom Tromey  <tom@tromey.com>
1477
1478         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
1479         metasyntactic variables.  Print message if no disassembler options
1480         are available.
1481
1482 2018-09-15  Tom Tromey  <tom@tromey.com>
1483
1484         * infcmd.c (get_inferior_args): Return const char *.
1485         * inferior.h (get_inferior_args): Return type now const.
1486         * linux-tdep.c (linux_fill_prpsinfo): Update.
1487         * procfs.c (procfs_target::make_corefile_notes): Update.
1488
1489 2018-09-07  Tom Tromey  <tom@tromey.com>
1490
1491         * python/python.c (execute_gdb_command): Call bpstat_do_actions
1492         inside the TRY.
1493
1494 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
1495
1496         * nios2-tdep.c (nios2_type_align): New.
1497         (nios2_gdb_arch_init): Install type_align hook.
1498
1499 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
1500
1501         * eval.c (fake_method::fake_method): Call xzalloc directly for a
1502         type that is neither object file owned, nor gdbarch owned.
1503         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
1504         gdbarch is non-NULL.
1505         (alloc_type_instance): Allocate non-objfile owned types on the
1506         gdbarch obstack.
1507         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
1508         using TYPE_ALLOC to ensure memory is allocated on the correct
1509         obstack.
1510         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
1511         obstack, or the gdbarch obstack.
1512         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
1513
1514 2018-09-14  Tom Tromey  <tom@tromey.com>
1515
1516         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
1517         block.
1518
1519 2018-09-14  Tom Tromey  <tom@tromey.com>
1520
1521         * nat/fork-inferior.c (get_startup_shell): Remove "static".
1522
1523 2018-09-13  Tom Tromey  <tom@tromey.com>
1524
1525         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
1526         static.
1527
1528 2018-09-13  Tom Tromey  <tom@tromey.com>
1529
1530         * exec.c (try_open_exec_file): Use std::string.
1531
1532 2018-09-13  Tom Tromey  <tom@tromey.com>
1533
1534         * utils.h (gdb_bfd_errmsg): Return std::string.
1535         * exec.c (exec_file_attach): Update.
1536         * compile/compile-object-load.c (compile_object_load): Update.
1537         * utils.c (gdb_bfd_errmsg): Return std::string.
1538
1539 2018-09-13  Tom Tromey  <tom@tromey.com>
1540
1541         * procfs.c (struct procinfo_deleter): New.
1542         (procinfo_up): New typedef.
1543         (do_destroy_procinfo_cleanup): Remove.
1544         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
1545
1546 2018-09-13  Tom Tromey  <tom@tromey.com>
1547
1548         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
1549
1550 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1551 2018-09-13  Tom Tromey  <tom@tromey.com>
1552
1553         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
1554         (pspy_get_objfiles): New function.
1555         (progspace_object_methods): New.
1556         (pspace_object_type): Add tp_methods callback.
1557         * python/python-internal.h (build_objfiles_list): New
1558         declaration.
1559         * python/python.c (build_objfiles_list): New function.
1560         (gdbpy_objfiles): Implement using build_objfiles_list.
1561         * NEWS: Mention the Progspace.objfiles method.
1562
1563 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1564
1565         * python/py-inferior.c (infpy_get_progspace): New function.
1566         (inferior_object_getset): Add progspace property.
1567         * NEWS: Mention the new property.
1568
1569 2018-09-13  Tom Tromey  <tom@tromey.com>
1570
1571         PR rust/23650:
1572         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
1573
1574 2018-09-13  Tom Tromey  <tom@tromey.com>
1575
1576         PR rust/23626:
1577         * rust-lang.c (rust_enum_variant): Now static.
1578         (rust_empty_enum_p): New function.
1579         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
1580         Handle empty enum.
1581
1582 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1583
1584         * python/py-inferior.c (infpy_repr): New.
1585         (inferior_object_type): Register infpy_repr.
1586         * python/py-objfile.c (objfpy_repr): New.
1587         (objfile_object_type): Register objfpy_repr.
1588
1589 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
1590
1591         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
1592
1593 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
1594
1595         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
1596         typo.
1597
1598 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
1599
1600         * common/common-utils.c: Don't include '<sys/stat.h>'.
1601         (is_regular_file): Move to...
1602         * common/filestuff.c (is_regular_file): ... here.
1603         * common/common-utils.h (is_regular_file): Move to...
1604         * common/filestuff.h (is_regular_file): ... here.
1605
1606 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
1607
1608         * skip.c (debug_skip): New variable.
1609         (skiplist_entry::do_skip_file_p): Add debug output.
1610         (skiplist_entry::do_skip_gfile_p): Likewise.
1611         (skiplist_entry::skip_function_p): Likewise.
1612         (_initialize_step_skip): Create debug command.
1613         * NEWS: Mention set/show debug skip.
1614
1615 2018-09-11  Xavier Roirand  <roirand@adacore.com>
1616
1617         * darwin-nat.c (should_disable_startup_with_shell):
1618         New function.
1619         (darwin_nat_target::create_inferior): Add call.
1620
1621 2018-09-11  Xavier Roirand  <roirand@adacore.com>
1622
1623         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
1624         inf_port, msg_state>: Initialize.
1625         (struct darwin_thread_info) <signaled, single_step>: Change
1626         type and initialize.
1627         (struct darwin_thread_info) <event>: Initialize.
1628
1629 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
1630
1631         PR gdb/23555
1632         PR gdb/23558
1633         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
1634         guesses.
1635
1636 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
1637
1638         Revert:
1639         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
1640
1641         PR gdb/23555
1642         PR gdb/23558
1643         * gnulib/aclocal.m4: Regenerate.
1644         * gnulib/config.in: Regenerate.
1645         * gnulib/configure: Regenerate.
1646         * gnulib/import/Makefile.am: Update.
1647         * gnulib/import/Makefile.in: Update.
1648         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
1649         * gnulib/import/_Noreturn.h: ... this.
1650         * gnulib/import/alloca.in.h: Update.
1651         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
1652         * gnulib/import/arg-nonnull.h: ... this.
1653         * gnulib/import/assure.h: Update.
1654         * gnulib/import/at-func.c: Update.
1655         * gnulib/import/basename-lgpl.c: Update.
1656         * gnulib/import/extra/snippet/c++defs.h: Rename to...
1657         * gnulib/import/c++defs.h: ... this.
1658         * gnulib/import/canonicalize-lgpl.c: Update.
1659         * gnulib/import/cdefs.h: Update.
1660         * gnulib/import/chdir-long.c: Update.
1661         * gnulib/import/chdir-long.h: Update.
1662         * gnulib/import/cloexec.c: Update.
1663         * gnulib/import/cloexec.h: Update.
1664         * gnulib/import/close.c: Update.
1665         * gnulib/import/closedir.c: Update.
1666         * gnulib/import/config.charset: Update.
1667         * gnulib/import/dirent-private.h: Update.
1668         * gnulib/import/dirent.in.h: Update.
1669         * gnulib/import/dirfd.c: Update.
1670         * gnulib/import/dirname-lgpl.c: Update.
1671         * gnulib/import/dirname.h: Update.
1672         * gnulib/import/dosname.h: Update.
1673         * gnulib/import/dup-safer-flag.c: Update.
1674         * gnulib/import/dup-safer.c: Update.
1675         * gnulib/import/dup.c: Update.
1676         * gnulib/import/dup2.c: Update.
1677         * gnulib/import/errno.in.h: Update.
1678         * gnulib/import/error.c: Update.
1679         * gnulib/import/error.h: Update.
1680         * gnulib/import/exitfail.c: Update.
1681         * gnulib/import/exitfail.h: Update.
1682         * gnulib/import/extra/update-copyright: Update.
1683         * gnulib/import/fchdir.c: Update.
1684         * gnulib/import/fcntl.c: Update.
1685         * gnulib/import/fcntl.in.h: Update.
1686         * gnulib/import/fd-hook.c: Update.
1687         * gnulib/import/fd-hook.h: Update.
1688         * gnulib/import/fd-safer-flag.c: Update.
1689         * gnulib/import/fd-safer.c: Update.
1690         * gnulib/import/fdopendir.c: Update.
1691         * gnulib/import/filename.h: Update.
1692         * gnulib/import/filenamecat-lgpl.c: Update.
1693         * gnulib/import/filenamecat.h: Update.
1694         * gnulib/import/flexmember.h: Update.
1695         * gnulib/import/float+.h: Update.
1696         * gnulib/import/float.c: Update.
1697         * gnulib/import/float.in.h: Update.
1698         * gnulib/import/fnmatch.c: Update.
1699         * gnulib/import/fnmatch.in.h: Update.
1700         * gnulib/import/fnmatch_loop.c: Update.
1701         * gnulib/import/fpucw.h: Update.
1702         * gnulib/import/frexp.c: Update.
1703         * gnulib/import/frexpl.c: Update.
1704         * gnulib/import/fstat.c: Update.
1705         * gnulib/import/fstatat.c: Update.
1706         * gnulib/import/getcwd-lgpl.c: Update.
1707         * gnulib/import/getcwd.c: Update.
1708         * gnulib/import/getdtablesize.c: Update.
1709         * gnulib/import/getlogin_r.c: Update.
1710         * gnulib/import/getprogname.c: Update.
1711         * gnulib/import/getprogname.h: Update.
1712         * gnulib/import/gettext.h: Update.
1713         * gnulib/import/gettimeofday.c: Update.
1714         * gnulib/import/glob-libc.h: Update.
1715         * gnulib/import/glob.c: Update.
1716         * gnulib/import/glob.in.h: Update.
1717         * gnulib/import/glob_internal.h: Update.
1718         * gnulib/import/glob_pattern_p.c: Update.
1719         * gnulib/import/globfree.c: Update.
1720         * gnulib/import/hard-locale.c: Update.
1721         * gnulib/import/hard-locale.h: Update.
1722         * gnulib/import/intprops.h: Update.
1723         * gnulib/import/inttypes.in.h: Update.
1724         * gnulib/import/isnan.c: Update.
1725         * gnulib/import/isnand-nolibm.h: Update.
1726         * gnulib/import/isnand.c: Update.
1727         * gnulib/import/isnanl-nolibm.h: Update.
1728         * gnulib/import/isnanl.c: Update.
1729         * gnulib/import/itold.c: Update.
1730         * gnulib/import/libc-config.h: Update.
1731         * gnulib/import/limits.in.h: Update.
1732         * gnulib/import/localcharset.c: Update.
1733         * gnulib/import/localcharset.h: Update.
1734         * gnulib/import/localtime-buffer.c: Update.
1735         * gnulib/import/localtime-buffer.h: Update.
1736         * gnulib/import/lstat.c: Update.
1737         * gnulib/import/m4/00gnulib.m4: Update.
1738         * gnulib/import/m4/__inline.m4: Update.
1739         * gnulib/import/m4/absolute-header.m4: Update.
1740         * gnulib/import/m4/alloca.m4: Update.
1741         * gnulib/import/m4/builtin-expect.m4: Update.
1742         * gnulib/import/m4/canonicalize.m4: Update.
1743         * gnulib/import/m4/chdir-long.m4: Update.
1744         * gnulib/import/m4/close.m4: Update.
1745         * gnulib/import/m4/closedir.m4: Update.
1746         * gnulib/import/m4/configmake.m4: Update.
1747         * gnulib/import/m4/d-ino.m4: Update.
1748         * gnulib/import/m4/d-type.m4: Update.
1749         * gnulib/import/m4/dirent_h.m4: Update.
1750         * gnulib/import/m4/dirfd.m4: Update.
1751         * gnulib/import/m4/dirname.m4: Update.
1752         * gnulib/import/m4/double-slash-root.m4: Update.
1753         * gnulib/import/m4/dup.m4: Update.
1754         * gnulib/import/m4/dup2.m4: Update.
1755         * gnulib/import/m4/eealloc.m4: Update.
1756         * gnulib/import/m4/environ.m4: Update.
1757         * gnulib/import/m4/errno_h.m4: Update.
1758         * gnulib/import/m4/error.m4: Update.
1759         * gnulib/import/m4/exponentd.m4: Update.
1760         * gnulib/import/m4/exponentl.m4: Update.
1761         * gnulib/import/m4/extensions.m4: Update.
1762         * gnulib/import/m4/extern-inline.m4: Update.
1763         * gnulib/import/m4/fchdir.m4: Update.
1764         * gnulib/import/m4/fcntl-o.m4: Update.
1765         * gnulib/import/m4/fcntl.m4: Update.
1766         * gnulib/import/m4/fcntl_h.m4: Update.
1767         * gnulib/import/m4/fdopendir.m4: Update.
1768         * gnulib/import/m4/filenamecat.m4: Update.
1769         * gnulib/import/m4/flexmember.m4: Update.
1770         * gnulib/import/m4/float_h.m4: Update.
1771         * gnulib/import/m4/fnmatch.m4: Update.
1772         * gnulib/import/m4/fnmatch_h.m4: Update.
1773         * gnulib/import/m4/fpieee.m4: Update.
1774         * gnulib/import/m4/frexp.m4: Update.
1775         * gnulib/import/m4/frexpl.m4: Update.
1776         * gnulib/import/m4/fstat.m4: Update.
1777         * gnulib/import/m4/fstatat.m4: Update.
1778         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
1779         * gnulib/import/m4/getcwd-path-max.m4: Update.
1780         * gnulib/import/m4/getcwd.m4: Update.
1781         * gnulib/import/m4/getdtablesize.m4: Update.
1782         * gnulib/import/m4/getlogin.m4: Update.
1783         * gnulib/import/m4/getlogin_r.m4: Update.
1784         * gnulib/import/m4/getpagesize.m4: Update.
1785         * gnulib/import/m4/getprogname.m4: Update.
1786         * gnulib/import/m4/gettimeofday.m4: Update.
1787         * gnulib/import/m4/glibc21.m4: Update.
1788         * gnulib/import/m4/glob.m4: Update.
1789         * gnulib/import/m4/glob_h.m4: Update.
1790         * gnulib/import/m4/gnulib-cache.m4: Update.
1791         * gnulib/import/m4/gnulib-common.m4: Update.
1792         * gnulib/import/m4/gnulib-comp.m4: Update.
1793         * gnulib/import/m4/gnulib-tool.m4: Update.
1794         * gnulib/import/m4/hard-locale.m4: Update.
1795         * gnulib/import/m4/include_next.m4: Update.
1796         * gnulib/import/m4/inttypes-pri.m4: Update.
1797         * gnulib/import/m4/inttypes.m4: Update.
1798         * gnulib/import/m4/isnand.m4: Update.
1799         * gnulib/import/m4/isnanl.m4: Update.
1800         * gnulib/import/m4/largefile.m4: Update.
1801         * gnulib/import/m4/limits-h.m4: Update.
1802         * gnulib/import/m4/localcharset.m4: Update.
1803         * gnulib/import/m4/locale-fr.m4: Update.
1804         * gnulib/import/m4/locale-ja.m4: Update.
1805         * gnulib/import/m4/locale-zh.m4: Update.
1806         * gnulib/import/m4/localtime-buffer.m4: Update.
1807         * gnulib/import/m4/longlong.m4: Update.
1808         * gnulib/import/m4/lstat.m4: Update.
1809         * gnulib/import/m4/malloc.m4: Update.
1810         * gnulib/import/m4/malloca.m4: Update.
1811         * gnulib/import/m4/math_h.m4: Update.
1812         * gnulib/import/m4/mbrtowc.m4: Update.
1813         * gnulib/import/m4/mbsinit.m4: Update.
1814         * gnulib/import/m4/mbsrtowcs.m4: Update.
1815         * gnulib/import/m4/mbstate_t.m4: Update.
1816         * gnulib/import/m4/memchr.m4: Update.
1817         * gnulib/import/m4/memmem.m4: Update.
1818         * gnulib/import/m4/mempcpy.m4: Update.
1819         * gnulib/import/m4/memrchr.m4: Update.
1820         * gnulib/import/m4/mkdir.m4: Update.
1821         * gnulib/import/m4/mkstemp.m4: Update.
1822         * gnulib/import/m4/mmap-anon.m4: Update.
1823         * gnulib/import/m4/mode_t.m4: Update.
1824         * gnulib/import/m4/msvc-inval.m4: Update.
1825         * gnulib/import/m4/msvc-nothrow.m4: Update.
1826         * gnulib/import/m4/multiarch.m4: Update.
1827         * gnulib/import/m4/nocrash.m4: Update.
1828         * gnulib/import/m4/off_t.m4: Update.
1829         * gnulib/import/m4/onceonly.m4: Update.
1830         * gnulib/import/m4/open-cloexec.m4: Update.
1831         * gnulib/import/m4/open.m4: Update.
1832         * gnulib/import/m4/openat.m4: Update.
1833         * gnulib/import/m4/opendir.m4: Update.
1834         * gnulib/import/m4/pathmax.m4: Update.
1835         * gnulib/import/m4/rawmemchr.m4: Update.
1836         * gnulib/import/m4/readdir.m4: Update.
1837         * gnulib/import/m4/readlink.m4: Update.
1838         * gnulib/import/m4/realloc.m4: Update.
1839         * gnulib/import/m4/rename.m4: Update.
1840         * gnulib/import/m4/rewinddir.m4: Update.
1841         * gnulib/import/m4/rmdir.m4: Update.
1842         * gnulib/import/m4/save-cwd.m4: Update.
1843         * gnulib/import/m4/secure_getenv.m4: Update.
1844         * gnulib/import/m4/setenv.m4: Update.
1845         * gnulib/import/m4/signal_h.m4: Update.
1846         * gnulib/import/m4/ssize_t.m4: Update.
1847         * gnulib/import/m4/stat-time.m4: Update.
1848         * gnulib/import/m4/stat.m4: Update.
1849         * gnulib/import/m4/std-gnu11.m4: Update.
1850         * gnulib/import/m4/stdbool.m4: Update.
1851         * gnulib/import/m4/stddef_h.m4: Update.
1852         * gnulib/import/m4/stdint.m4: Update.
1853         * gnulib/import/m4/stdio_h.m4: Update.
1854         * gnulib/import/m4/stdlib_h.m4: Update.
1855         * gnulib/import/m4/strchrnul.m4: Update.
1856         * gnulib/import/m4/strdup.m4: Update.
1857         * gnulib/import/m4/strerror.m4: Update.
1858         * gnulib/import/m4/string_h.m4: Update.
1859         * gnulib/import/m4/strstr.m4: Update.
1860         * gnulib/import/m4/strtok_r.m4: Update.
1861         * gnulib/import/m4/sys_socket_h.m4: Update.
1862         * gnulib/import/m4/sys_stat_h.m4: Update.
1863         * gnulib/import/m4/sys_time_h.m4: Update.
1864         * gnulib/import/m4/sys_types_h.m4: Update.
1865         * gnulib/import/m4/tempname.m4: Update.
1866         * gnulib/import/m4/time_h.m4: Update.
1867         * gnulib/import/m4/unistd-safer.m4: Update.
1868         * gnulib/import/m4/unistd_h.m4: Update.
1869         * gnulib/import/m4/warn-on-use.m4: Update.
1870         * gnulib/import/m4/wchar_h.m4: Update.
1871         * gnulib/import/m4/wchar_t.m4: Update.
1872         * gnulib/import/m4/wctype_h.m4: Update.
1873         * gnulib/import/m4/wint_t.m4: Update.
1874         * gnulib/import/malloc.c: Update.
1875         * gnulib/import/malloc/scratch_buffer.h: Update.
1876         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
1877         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
1878         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
1879         * gnulib/import/malloca.c: Update.
1880         * gnulib/import/malloca.h: Update.
1881         * gnulib/import/malloca.valgrind: Update.
1882         * gnulib/import/math.in.h: Update.
1883         * gnulib/import/mbrtowc.c: Update.
1884         * gnulib/import/mbsinit.c: Update.
1885         * gnulib/import/mbsrtowcs-impl.h: Update.
1886         * gnulib/import/mbsrtowcs-state.c: Update.
1887         * gnulib/import/mbsrtowcs.c: Update.
1888         * gnulib/import/memchr.c: Update.
1889         * gnulib/import/memmem.c: Update.
1890         * gnulib/import/mempcpy.c: Update.
1891         * gnulib/import/memrchr.c: Update.
1892         * gnulib/import/mkdir.c: Update.
1893         * gnulib/import/mkstemp.c: Update.
1894         * gnulib/import/msvc-inval.c: Update.
1895         * gnulib/import/msvc-inval.h: Update.
1896         * gnulib/import/msvc-nothrow.c: Update.
1897         * gnulib/import/msvc-nothrow.h: Update.
1898         * gnulib/import/open.c: Update.
1899         * gnulib/import/openat-die.c: Update.
1900         * gnulib/import/openat-priv.h: Update.
1901         * gnulib/import/openat-proc.c: Update.
1902         * gnulib/import/openat.c: Update.
1903         * gnulib/import/openat.h: Update.
1904         * gnulib/import/opendir.c: Update.
1905         * gnulib/import/pathmax.h: Update.
1906         * gnulib/import/pipe-safer.c: Update.
1907         * gnulib/import/rawmemchr.c: Update.
1908         * gnulib/import/readdir.c: Update.
1909         * gnulib/import/readlink.c: Update.
1910         * gnulib/import/realloc.c: Update.
1911         * gnulib/import/ref-add.sin: Update.
1912         * gnulib/import/ref-del.sin: Update.
1913         * gnulib/import/rename.c: Update.
1914         * gnulib/import/rewinddir.c: Update.
1915         * gnulib/import/rmdir.c: Update.
1916         * gnulib/import/same-inode.h: Update.
1917         * gnulib/import/save-cwd.c: Update.
1918         * gnulib/import/save-cwd.h: Update.
1919         * gnulib/import/scratch_buffer.h: Update.
1920         * gnulib/import/secure_getenv.c: Update.
1921         * gnulib/import/setenv.c: Update.
1922         * gnulib/import/signal.in.h: Update.
1923         * gnulib/import/stat-time.c: Update.
1924         * gnulib/import/stat-time.h: Update.
1925         * gnulib/import/stat-w32.c: Update.
1926         * gnulib/import/stat-w32.h: Update.
1927         * gnulib/import/stat.c: Update.
1928         * gnulib/import/stdbool.in.h: Update.
1929         * gnulib/import/stddef.in.h: Update.
1930         * gnulib/import/stdint.in.h: Update.
1931         * gnulib/import/stdio.in.h: Update.
1932         * gnulib/import/stdlib.in.h: Update.
1933         * gnulib/import/str-two-way.h: Update.
1934         * gnulib/import/strchrnul.c: Update.
1935         * gnulib/import/strdup.c: Update.
1936         * gnulib/import/streq.h: Update.
1937         * gnulib/import/strerror-override.c: Update.
1938         * gnulib/import/strerror-override.h: Update.
1939         * gnulib/import/strerror.c: Update.
1940         * gnulib/import/string.in.h: Update.
1941         * gnulib/import/stripslash.c: Update.
1942         * gnulib/import/strnlen1.c: Update.
1943         * gnulib/import/strnlen1.h: Update.
1944         * gnulib/import/strstr.c: Update.
1945         * gnulib/import/strtok_r.c: Update.
1946         * gnulib/import/sys_stat.in.h: Update.
1947         * gnulib/import/sys_time.in.h: Update.
1948         * gnulib/import/sys_types.in.h: Update.
1949         * gnulib/import/tempname.c: Update.
1950         * gnulib/import/tempname.h: Update.
1951         * gnulib/import/time.in.h: Update.
1952         * gnulib/import/unistd--.h: Update.
1953         * gnulib/import/unistd-safer.h: Update.
1954         * gnulib/import/unistd.in.h: Update.
1955         * gnulib/import/unsetenv.c: Update.
1956         * gnulib/import/verify.h: Update.
1957         * gnulib/import/extra/snippet/warn-on-use.h: Update.
1958         * gnulib/import/wchar.in.h: Update.
1959         * gnulib/import/wctype.in.h: Update.
1960         * gnulib/import/xalloc-oversized.h: Update.
1961         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
1962         "53e2c179f26a890fa6685af4b6c1397ee370433b".
1963
1964 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
1965
1966         * record-btrace.c (get_thread_current_frame): Remove
1967         old_inferior_ptid.
1968
1969 2018-09-10  Jerome Guitton  <guitton@adacore.com>
1970
1971         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
1972         with check_tag to 1 if and only if the type is tagged and the
1973         component being searched cannot been found in the current
1974         view. Otherwise, always call ada_to_fixed_type with
1975         check_tag to 0.
1976
1977 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1978
1979         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
1980         declaration.
1981         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
1982         * ada-varobj.c (ada_varobj_get_number_of_children,
1983         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
1984
1985 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1986
1987         * ada-valprint.c (ada_value_print): Use type instead of
1988         enclosing type.
1989
1990 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1991
1992         * ada-lang.c (ada_value_subscript): Handle case when parameter is
1993         an array of access to unconstrained array.
1994
1995 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1996
1997         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
1998         (ada_check_typedef): Use it.
1999
2000 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2001
2002         * ada-varobj.c (ada_varobj_describe_struct_child)
2003         (ada_varobj_describe_child): Handle union case like struct one.
2004
2005 2018-09-10  Tom Tromey  <tom@tromey.com>
2006
2007         PR python/18380:
2008         * python/python.c (_initialize_python): Make example in "python"
2009         help work in Python 3.
2010
2011 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
2012
2013         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
2014         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
2015         $(EXEEXT) to the script, as it is not a program.
2016
2017 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
2018
2019         * python/py-prettyprint.c (pretty_print_one_value): Return
2020         gdbpy_ref<>.
2021         (print_string_repr): Adjust.
2022         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
2023         * python/python-internal.h (apply_varobj_pretty_printer): Return
2024         gdbpy_ref<>.
2025         * varobj.c (varobj_value_get_print_value): Adjust.
2026
2027 2018-09-08  Tom Tromey  <tom@tromey.com>
2028
2029         PR python/16047:
2030         * python/py-prettyprint.c (pretty_print_one_value): Check for
2031         to_string method.
2032
2033 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2034
2035         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
2036         replace_operator_with_call.
2037
2038 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2039
2040         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
2041
2042 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2043
2044         * ada-typeprint.c (print_range): Print the bounds using TYPE
2045         rather than its TYPE_TARGET_TYPE.
2046
2047 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2048
2049         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
2050         call to ada_to_fixed_value_create.
2051
2052 2018-09-08  Jerome Guitton  <guitton@adacore.com>
2053
2054         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
2055
2056 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2057
2058         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
2059         by calls to error.
2060
2061 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2062
2063         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
2064         Move update of loop variable "fi".
2065
2066 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2067
2068         * ada-lang.c (value_assign_to_component): In the case of
2069         big-endian targets, extract the bits of the given VAL
2070         using an src_offset of zero if container is not a scalar.
2071
2072 2018-09-06  Simon Ser  <contact@emersion.fr>
2073
2074         PR gdb/23105
2075         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
2076         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2077         * fbsd-tdep.c (fbsd_make_note_desc): New.
2078         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
2079         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
2080         * target.h (enum target_object) Add FreeBSD-specific
2081         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2082
2083 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2084
2085         * compile/compile-c.h (generate_c_for_variable_locations):
2086         Change reference to pointer.
2087         * compile/compile-c-support.c (compile_program) <compute>:
2088         Likewise.
2089         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
2090         (generate_c_for_for_one_variable): Likewise
2091         (generate_c_for_variable_locations): Likewise
2092         * compile/compile-c-types.c (compile_c_instance::convert_type):
2093         Likewise
2094         * compile/compile-cplus-symbols.c (convert_one_symbol):
2095         std::move the scope passed to enter_scope.
2096         * compile/compile-cplus-types.c
2097         (compile_cplus_instance::enter_scope): Make parameter
2098         rvalue-reference.
2099         (compile_cplus_instance::new_scope): Change reference to
2100         pointer.
2101         (compile_cplus_instance::convert_type): Likewise
2102         (compile_cplus_convert_typedef): std::move the scope passed to
2103         enter_scope.
2104         (compile_cplus_convert_struct_or_union): Likewise.
2105         (compile_cplus_convert_enum): Likewise.
2106         (compile_cplus_convert_namespace): Likewise.
2107         * compile/compile-cplus.h (compile_cplus_instance)
2108         <enter_scope>: Make parameter rvalue-reference.
2109         * compile/compile-internal.h (compile_instance)
2110         <get_cached_type>: Likewise
2111         * compile/compile-loc2c.c (push): Likewise
2112         (pushf): Likewise
2113         (unary): Likewise
2114         (binary): Likewise
2115         (print_label): Likewise
2116         (pushf_register_address): Likewise
2117         (pushf_register): Likewise
2118         (do_compile_dwarf_expr_to_c): Likewise
2119         (compile_dwarf_expr_to_c): Likewise
2120         (compile_dwarf_bounds_to_c): Likewise
2121         * compile/compile.c (compile_instance::get_cached_type):
2122         Likewise
2123         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
2124         (compile_dwarf_bounds_to_c): Likewise
2125         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
2126         (dwarf2_compile_property_to_c): Likewise
2127         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
2128         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
2129         Likewise
2130
2131 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2132
2133         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
2134         * tui/tui-data.c (init_content_element): Don't initialize it.
2135
2136 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2137
2138         * tui/tui-data.h (struct tui_win_info)
2139         <detail::opaque>: Remove.
2140         * tui/tui-data.c (init_win_info): Remove assignment.
2141
2142 2018-09-05  Tom Tromey  <tom@tromey.com>
2143
2144         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
2145         -Wformat-nonliteral.
2146         * target-float.c (host_float_ops<T>::to_string)
2147         (host_float_ops<T>::from_string): Use
2148         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2149         * configure: Rebuild.
2150
2151 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
2152
2153         * printcmd.c (printf_c_string): Use
2154         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2155         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
2156
2157 2018-09-05  Tom Tromey  <tom@tromey.com>
2158
2159         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
2160
2161 2018-09-05  Tom de Vries  <tdevries@suse.de>
2162
2163         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
2164         with resolve_abstract_p == true.
2165         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
2166         defaulting to false. Propagate resolve_abstract_p to
2167         dwarf2_fetch_die_loc_sect_off.
2168         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
2169         parameter, defaulting to false.
2170         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
2171         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
2172         parameter.
2173         * dwarf2read.h (struct die_info): Forward-declare.
2174         (die_info_ptr): New typedef.
2175         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
2176
2177 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
2178
2179         GDB 8.2 released.
2180
2181 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
2182             Pedro Alves  <palves@redhat.com>
2183
2184         * gnulib/Makefile.in (aclocal_m4_deps): Move to
2185         "aclocal-m4-deps.mk".  Include file here.
2186         $(srcdir)/aclocal.m4: Add "configure.ac".
2187         * gnulib/aclocal-m4-deps.mk: New file.
2188         * gnulib/update-gnulib.sh: Automatically update
2189         "aclocal-m4-deps.mk".
2190
2191 2018-09-04  Tom Tromey  <tom@tromey.com>
2192
2193         * configure: Rebuild.
2194         * configure.ac: Remove multi-ice code.
2195
2196 2018-09-04  Tom Tromey  <tom@tromey.com>
2197
2198         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
2199         (ada-exp.o): Update.
2200
2201 2018-09-04  Tom Tromey  <tom@tromey.com>
2202
2203         * Makefile.in (printcmd.o, target-float.o): Remove.
2204         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
2205
2206 2018-09-04  Tom Tromey  <tom@tromey.com>
2207
2208         * gnulib/Makefile.in: Remove obsolete comment.
2209         * Makefile.in: Remove obsolete comment.
2210
2211 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
2212
2213         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
2214         line with '+'.
2215
2216 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2217
2218         * riscv-tdep.c: Add 'prologue-value.h' include.
2219         (struct riscv_unwind_cache): New struct.
2220         (riscv_debug_unwinder): New global.
2221         (riscv_scan_prologue): Update arguments, capture register details
2222         from prologue scan.
2223         (riscv_skip_prologue): Reformat arguments line, move end of
2224         prologue calculation into riscv_scan_prologue.
2225         (riscv_frame_cache): Update return type, create
2226         riscv_unwind_cache, scan the prologue, and fill in remaining cache
2227         details.
2228         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
2229         (riscv_frame_prev_register): Use the trad_frame within the
2230         riscv_unwind_cache.
2231         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
2232         flag.
2233
2234 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2235
2236         * trad-frame.h (trad_frame_set_realreg): Declare.
2237         (trad_frame_set_addr): Declare.
2238         * trad-frame.c (trad_frame_set_realreg): Define new function.
2239         (trad_frame_set_addr): Define new function.
2240         (trad_frame_set_reg_realreg): Use new function.
2241         (trad_frame_set_reg_addr): Use new function.
2242
2243 2018-09-01  Keith Seitz  <keiths@redhat.com>
2244
2245         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
2246         pulongest instead of "%lld".
2247         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
2248         ATTRIBUTE_UNUSED.
2249
2250 2018-08-31  Tom Tromey  <tom@tromey.com>
2251
2252         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
2253         variant part type.
2254
2255 2018-08-31  Pedro Alves  <palves@redhat.com>
2256
2257         * gdbarch.h: Regenerate.
2258
2259 2018-08-31  Pedro Alves  <palves@redhat.com>
2260
2261         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
2262         * target.h (Hardware watchpoint interfaces): Describe
2263         continuable/steppable/non-steppable watchpoints.
2264         * gdbarch.h, gdbarch.c: Regenerate.
2265
2266 2018-08-31  Pedro Alves  <palves@redhat.com>
2267
2268         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
2269         Delete.
2270         * s390-linux-nat.c
2271         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
2272         * target.h (target_ops::have_continuable_watchpoint): Delete.
2273         (target_have_continuable_watchpoint): Delete.
2274         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
2275         * target-delegates.c: Regenerate.
2276
2277 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
2278
2279         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
2280         the files present in "gnulib/import/m4/".
2281
2282 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2283
2284         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
2285         c.sw, c.swsp, and c.sdsp.
2286
2287 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2288
2289         * riscv-tdep.c (struct riscv_inferior_data): Delete.
2290         (riscv_read_misa_reg): Don't cache value read into inferior data.
2291         (riscv_new_inferior_data): Delete.
2292         (riscv_inferior_data_cleanup): Delete.
2293         (riscv_inferior_data): Delete.
2294         (riscv_invalidate_inferior_data): Delete.
2295         (_initialize_riscv_tdep): Remove initialisation of inferior data.
2296
2297 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
2298
2299         * compile/compile-cplus-types.c
2300         (compile_cplus_instance::leave_scope): Take the address of scope
2301         object.
2302         (compile_cplus_instance::convert_qualified_base): Compare quals
2303         to 0.
2304
2305 2018-08-30  Keith Seitz  <keiths@redhat.com>
2306
2307         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
2308         Use "%s" and host_address_to_string instead of "%p" in printf.
2309
2310 2018-08-29  Keith Seitz  <keiths@redhat.com>
2311
2312         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
2313         and compile-cplus-types.c.
2314         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
2315         * c-lang.c (cplus_language_defn): Set C++ compile functions.
2316         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
2317         Declare.
2318         * compile/compile-c-support.c: Include compile-cplus.h.
2319         (load_libcompile): Templatize.
2320         (get_compile_context): "New" function.
2321         (c_get_compile_context): Use get_compile_context.
2322         (cplus_get_compile_context): New function.
2323         (cplus_push_user_expression, cplus_pop_user_expression)
2324         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
2325         (cplus_compute_program): Define new structs/functions.
2326         * compile/compile-cplus-symmbols.c: New file.
2327         * compile/compile-cplus-types.c: New file.
2328         * compile/compile-cplus.h: New file.
2329         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
2330         Declare.
2331         * compile/compile-object-load.c (get_out_value_type): Use
2332         strncmp_iw when comparing symbol names.
2333         (compile_object_load): Add mst_bss and mst_data.
2334         * compile/compile.c (_initialize_compile): Remove
2335         -Wno-implicit-function-declaration from `compile_args'.
2336         * compile/gcc-cp-plugin.h: New file.
2337         * NEWS: Mention C++ compile support and new debug options.
2338
2339 2018-08-29  Keith Seitz  <keiths@redhat.com>
2340
2341         * linespec.c (collect_info::add_symbol): Make virtual.
2342         (struct symbol_searcher_collect_info): New struct.
2343         (symbol_searcher::find_all_symbols): New method.
2344         * symtab.h (class symbol_searcher): New class.
2345
2346 2018-08-29  Keith Seitz  <keiths@redhat.com>
2347
2348         * linespec.c (struct linespec) <function_symbols, label_symbols>:
2349         Change to vector of block_symbol.  Update all users.
2350         (struct collect_info) <symbols>: Likewise.
2351         (collect_info::add_symbol): Take block_symbol as argument.
2352         Update all callers.
2353         (decode_compound_collector) <m_symbols>: Change type to vector
2354         of block_symbol.  Update all users.
2355         (decode_compound_collector::operator ()): Change parameter type
2356         to block_symbol.
2357         (find_method, find_function_symbols, find_linespec_symbols)
2358         (find_label_symbols_in_block, find_label_symbols): Change symbol
2359         vectors to block_symbol vectors.
2360         * symtab.h (symbol_found_callback_ftype): Change parameter type to
2361         block_symbol.
2362
2363 2018-08-29  Keith Seitz  <keiths@redhat.com>
2364
2365         * linespec.c (symbolp): Remove typedef and VEC definitions.
2366         (bound_minimal_symbol_d): Likewise.
2367
2368 2018-08-29  Keith Seitz  <keiths@redhat.com>
2369
2370         * linespec.c (decode_compound_collector::decode_compound_collector):
2371         Remove initialization for `m_symtabs'.
2372         (decode_compound_collector::release_symbols): Change return type
2373         to std::vector.  Update all callers.
2374         (class decode_compound_collector) <m_symbols>: Change type to
2375         std::vector.
2376         (lookup_prefix_sym): Change return type to std::vector.  Update all
2377         callers.
2378         (compare_symbols): Remove.
2379         (std_compare_symbols): Rename to `compare_symbols'.
2380         (find_method): Change `sym_classes' parameter to std::vector.
2381         Update all callers.  Use std::sort to sort sym_classes.
2382         (find_linespec_symbols): Remove cleanup.
2383
2384 2018-08-29  Keith Seitz  <keiths@redhat.com>
2385
2386         * linespec.c (struct linespec) <minimal_symbols>: Change type to
2387         std::vector.  Update all users.
2388         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
2389         (struct collect_info) <minimal_symbols>: Likewise.
2390         (compare_msymbols): Return bool.  Change parameters to const
2391         bound_minimal_symbol references.
2392         (find_method, find_function_symbols, find_linespec_symbols): Change
2393         `minsyms' parameter to std::vector.  Update all callers.
2394
2395 2018-08-29  Keith Seitz  <keiths@redhat.com>
2396
2397         * linespec.c (struct linespec) <label_symbols>: Change type to
2398         std::vector.  Update all users.
2399         (find_label_symbols_in_block): Change `result' parameter to
2400         std::vector.  Update all callers.
2401         (find_label_symbols): Return std::vector.  Update all callers.
2402
2403 2018-08-29  Keith Seitz  <keiths@redhat.com>
2404
2405         * linespec.c (struct linespec) <function_symbols>: Change type to
2406         std::vector.  Update all users.
2407         (struct collect_info) <function_symbols>: Likewise.
2408         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
2409         (std_compare_symbols): New function.
2410         (find_method, find_function_symbols, find_linespec_symbols)
2411         (find_label_symbols_in_block): Change `symbols' parameter to
2412         std::vector.  Update all callers.
2413         (find_label_symbols): Likewise for `function_symbols' and
2414         `label_funcs_ret'.
2415
2416 2018-08-29  Keith Seitz  <keiths@redhat.com>
2417
2418         * linespec.c (symtab_vector_up): Define.
2419         (struct linespec) <file_symtabs>: Change type to std::vector *.
2420         Update all uses.
2421         (struct collect_info) <file_symtabs>: Likewise.
2422         (collect_symtabs_from_filename): Return symtab_vector_up.
2423         Update all callers.
2424         (decode_objc): Remove cleanup.
2425         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
2426         (symtab_collector::release_symtabs): Return symtab_vector_up.
2427         Update all callers.
2428         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
2429         Update all users.
2430         (collect_symtabs_from_filename, symtabs_from_filename): Return
2431         symtab_vector_up.  Update all callers.
2432
2433 2018-08-29  Tom Tromey  <tom@tromey.com>
2434
2435         * csky-tdep.c (csky_analyze_prologue): Use
2436         core_addr_to_string_nz.
2437
2438 2018-08-29  Tom Tromey  <tom@tromey.com>
2439
2440         * windows-nat.c (struct xlate_exception) <them>: Change type to
2441         DWORD.
2442         (xlate): Fix formatting.  Remove last entry.
2443         (struct xlate_exception, xlate): Comment out.
2444         (windows_nat_target::resume): Use ranged for.
2445
2446 2018-08-29  Jim Wilson  <jimw@sifive.com>
2447
2448         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
2449         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
2450         of NT_PRFPREG.
2451         (riscv_linux_nat_target::store_registers): Likewise.
2452
2453 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
2454
2455         PR gdb/23555
2456         PR gdb/23558
2457         * gnulib/aclocal.m4: Regenerate.
2458         * gnulib/config.in: Regenerate.
2459         * gnulib/configure: Regenerate.
2460         * gnulib/import/Makefile.am: Update.
2461         * gnulib/import/Makefile.in: Update.
2462         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
2463         * gnulib/import/_Noreturn.h: ... this.
2464         * gnulib/import/alloca.in.h: Update.
2465         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
2466         * gnulib/import/arg-nonnull.h: ... this.
2467         * gnulib/import/assure.h: Update.
2468         * gnulib/import/at-func.c: Update.
2469         * gnulib/import/basename-lgpl.c: Update.
2470         * gnulib/import/extra/snippet/c++defs.h: Rename to...
2471         * gnulib/import/c++defs.h: ... this.
2472         * gnulib/import/canonicalize-lgpl.c: Update.
2473         * gnulib/import/cdefs.h: Update.
2474         * gnulib/import/chdir-long.c: Update.
2475         * gnulib/import/chdir-long.h: Update.
2476         * gnulib/import/cloexec.c: Update.
2477         * gnulib/import/cloexec.h: Update.
2478         * gnulib/import/close.c: Update.
2479         * gnulib/import/closedir.c: Update.
2480         * gnulib/import/config.charset: Update.
2481         * gnulib/import/dirent-private.h: Update.
2482         * gnulib/import/dirent.in.h: Update.
2483         * gnulib/import/dirfd.c: Update.
2484         * gnulib/import/dirname-lgpl.c: Update.
2485         * gnulib/import/dirname.h: Update.
2486         * gnulib/import/dosname.h: Update.
2487         * gnulib/import/dup-safer-flag.c: Update.
2488         * gnulib/import/dup-safer.c: Update.
2489         * gnulib/import/dup.c: Update.
2490         * gnulib/import/dup2.c: Update.
2491         * gnulib/import/errno.in.h: Update.
2492         * gnulib/import/error.c: Update.
2493         * gnulib/import/error.h: Update.
2494         * gnulib/import/exitfail.c: Update.
2495         * gnulib/import/exitfail.h: Update.
2496         * gnulib/import/extra/update-copyright: Update.
2497         * gnulib/import/fchdir.c: Update.
2498         * gnulib/import/fcntl.c: Update.
2499         * gnulib/import/fcntl.in.h: Update.
2500         * gnulib/import/fd-hook.c: Update.
2501         * gnulib/import/fd-hook.h: Update.
2502         * gnulib/import/fd-safer-flag.c: Update.
2503         * gnulib/import/fd-safer.c: Update.
2504         * gnulib/import/fdopendir.c: Update.
2505         * gnulib/import/filename.h: Update.
2506         * gnulib/import/filenamecat-lgpl.c: Update.
2507         * gnulib/import/filenamecat.h: Update.
2508         * gnulib/import/flexmember.h: Update.
2509         * gnulib/import/float+.h: Update.
2510         * gnulib/import/float.c: Update.
2511         * gnulib/import/float.in.h: Update.
2512         * gnulib/import/fnmatch.c: Update.
2513         * gnulib/import/fnmatch.in.h: Update.
2514         * gnulib/import/fnmatch_loop.c: Update.
2515         * gnulib/import/fpucw.h: Update.
2516         * gnulib/import/frexp.c: Update.
2517         * gnulib/import/frexpl.c: Update.
2518         * gnulib/import/fstat.c: Update.
2519         * gnulib/import/fstatat.c: Update.
2520         * gnulib/import/getcwd-lgpl.c: Update.
2521         * gnulib/import/getcwd.c: Update.
2522         * gnulib/import/getdtablesize.c: Update.
2523         * gnulib/import/getlogin_r.c: Update.
2524         * gnulib/import/getprogname.c: Update.
2525         * gnulib/import/getprogname.h: Update.
2526         * gnulib/import/gettext.h: Update.
2527         * gnulib/import/gettimeofday.c: Update.
2528         * gnulib/import/glob-libc.h: Update.
2529         * gnulib/import/glob.c: Update.
2530         * gnulib/import/glob.in.h: Update.
2531         * gnulib/import/glob_internal.h: Update.
2532         * gnulib/import/glob_pattern_p.c: Update.
2533         * gnulib/import/globfree.c: Update.
2534         * gnulib/import/hard-locale.c: Update.
2535         * gnulib/import/hard-locale.h: Update.
2536         * gnulib/import/intprops.h: Update.
2537         * gnulib/import/inttypes.in.h: Update.
2538         * gnulib/import/isnan.c: Update.
2539         * gnulib/import/isnand-nolibm.h: Update.
2540         * gnulib/import/isnand.c: Update.
2541         * gnulib/import/isnanl-nolibm.h: Update.
2542         * gnulib/import/isnanl.c: Update.
2543         * gnulib/import/itold.c: Update.
2544         * gnulib/import/libc-config.h: Update.
2545         * gnulib/import/limits.in.h: Update.
2546         * gnulib/import/localcharset.c: Update.
2547         * gnulib/import/localcharset.h: Update.
2548         * gnulib/import/localtime-buffer.c: Update.
2549         * gnulib/import/localtime-buffer.h: Update.
2550         * gnulib/import/lstat.c: Update.
2551         * gnulib/import/m4/00gnulib.m4: Update.
2552         * gnulib/import/m4/__inline.m4: Update.
2553         * gnulib/import/m4/absolute-header.m4: Update.
2554         * gnulib/import/m4/alloca.m4: Update.
2555         * gnulib/import/m4/builtin-expect.m4: Update.
2556         * gnulib/import/m4/canonicalize.m4: Update.
2557         * gnulib/import/m4/chdir-long.m4: Update.
2558         * gnulib/import/m4/close.m4: Update.
2559         * gnulib/import/m4/closedir.m4: Update.
2560         * gnulib/import/m4/configmake.m4: Update.
2561         * gnulib/import/m4/d-ino.m4: Update.
2562         * gnulib/import/m4/d-type.m4: Update.
2563         * gnulib/import/m4/dirent_h.m4: Update.
2564         * gnulib/import/m4/dirfd.m4: Update.
2565         * gnulib/import/m4/dirname.m4: Update.
2566         * gnulib/import/m4/double-slash-root.m4: Update.
2567         * gnulib/import/m4/dup.m4: Update.
2568         * gnulib/import/m4/dup2.m4: Update.
2569         * gnulib/import/m4/eealloc.m4: Update.
2570         * gnulib/import/m4/environ.m4: Update.
2571         * gnulib/import/m4/errno_h.m4: Update.
2572         * gnulib/import/m4/error.m4: Update.
2573         * gnulib/import/m4/exponentd.m4: Update.
2574         * gnulib/import/m4/exponentl.m4: Update.
2575         * gnulib/import/m4/extensions.m4: Update.
2576         * gnulib/import/m4/extern-inline.m4: Update.
2577         * gnulib/import/m4/fchdir.m4: Update.
2578         * gnulib/import/m4/fcntl-o.m4: Update.
2579         * gnulib/import/m4/fcntl.m4: Update.
2580         * gnulib/import/m4/fcntl_h.m4: Update.
2581         * gnulib/import/m4/fdopendir.m4: Update.
2582         * gnulib/import/m4/filenamecat.m4: Update.
2583         * gnulib/import/m4/flexmember.m4: Update.
2584         * gnulib/import/m4/float_h.m4: Update.
2585         * gnulib/import/m4/fnmatch.m4: Update.
2586         * gnulib/import/m4/fnmatch_h.m4: Update.
2587         * gnulib/import/m4/fpieee.m4: Update.
2588         * gnulib/import/m4/frexp.m4: Update.
2589         * gnulib/import/m4/frexpl.m4: Update.
2590         * gnulib/import/m4/fstat.m4: Update.
2591         * gnulib/import/m4/fstatat.m4: Update.
2592         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
2593         * gnulib/import/m4/getcwd-path-max.m4: Update.
2594         * gnulib/import/m4/getcwd.m4: Update.
2595         * gnulib/import/m4/getdtablesize.m4: Update.
2596         * gnulib/import/m4/getlogin.m4: Update.
2597         * gnulib/import/m4/getlogin_r.m4: Update.
2598         * gnulib/import/m4/getpagesize.m4: Update.
2599         * gnulib/import/m4/getprogname.m4: Update.
2600         * gnulib/import/m4/gettimeofday.m4: Update.
2601         * gnulib/import/m4/glibc21.m4: Update.
2602         * gnulib/import/m4/glob.m4: Update.
2603         * gnulib/import/m4/glob_h.m4: Update.
2604         * gnulib/import/m4/gnulib-cache.m4: Update.
2605         * gnulib/import/m4/gnulib-common.m4: Update.
2606         * gnulib/import/m4/gnulib-comp.m4: Update.
2607         * gnulib/import/m4/gnulib-tool.m4: Update.
2608         * gnulib/import/m4/hard-locale.m4: Update.
2609         * gnulib/import/m4/include_next.m4: Update.
2610         * gnulib/import/m4/inttypes-pri.m4: Update.
2611         * gnulib/import/m4/inttypes.m4: Update.
2612         * gnulib/import/m4/isnand.m4: Update.
2613         * gnulib/import/m4/isnanl.m4: Update.
2614         * gnulib/import/m4/largefile.m4: Update.
2615         * gnulib/import/m4/limits-h.m4: Update.
2616         * gnulib/import/m4/localcharset.m4: Update.
2617         * gnulib/import/m4/locale-fr.m4: Update.
2618         * gnulib/import/m4/locale-ja.m4: Update.
2619         * gnulib/import/m4/locale-zh.m4: Update.
2620         * gnulib/import/m4/localtime-buffer.m4: Update.
2621         * gnulib/import/m4/longlong.m4: Update.
2622         * gnulib/import/m4/lstat.m4: Update.
2623         * gnulib/import/m4/malloc.m4: Update.
2624         * gnulib/import/m4/malloca.m4: Update.
2625         * gnulib/import/m4/math_h.m4: Update.
2626         * gnulib/import/m4/mbrtowc.m4: Update.
2627         * gnulib/import/m4/mbsinit.m4: Update.
2628         * gnulib/import/m4/mbsrtowcs.m4: Update.
2629         * gnulib/import/m4/mbstate_t.m4: Update.
2630         * gnulib/import/m4/memchr.m4: Update.
2631         * gnulib/import/m4/memmem.m4: Update.
2632         * gnulib/import/m4/mempcpy.m4: Update.
2633         * gnulib/import/m4/memrchr.m4: Update.
2634         * gnulib/import/m4/mkdir.m4: Update.
2635         * gnulib/import/m4/mkstemp.m4: Update.
2636         * gnulib/import/m4/mmap-anon.m4: Update.
2637         * gnulib/import/m4/mode_t.m4: Update.
2638         * gnulib/import/m4/msvc-inval.m4: Update.
2639         * gnulib/import/m4/msvc-nothrow.m4: Update.
2640         * gnulib/import/m4/multiarch.m4: Update.
2641         * gnulib/import/m4/nocrash.m4: Update.
2642         * gnulib/import/m4/off_t.m4: Update.
2643         * gnulib/import/m4/onceonly.m4: Update.
2644         * gnulib/import/m4/open-cloexec.m4: Update.
2645         * gnulib/import/m4/open.m4: Update.
2646         * gnulib/import/m4/openat.m4: Update.
2647         * gnulib/import/m4/opendir.m4: Update.
2648         * gnulib/import/m4/pathmax.m4: Update.
2649         * gnulib/import/m4/rawmemchr.m4: Update.
2650         * gnulib/import/m4/readdir.m4: Update.
2651         * gnulib/import/m4/readlink.m4: Update.
2652         * gnulib/import/m4/realloc.m4: Update.
2653         * gnulib/import/m4/rename.m4: Update.
2654         * gnulib/import/m4/rewinddir.m4: Update.
2655         * gnulib/import/m4/rmdir.m4: Update.
2656         * gnulib/import/m4/save-cwd.m4: Update.
2657         * gnulib/import/m4/secure_getenv.m4: Update.
2658         * gnulib/import/m4/setenv.m4: Update.
2659         * gnulib/import/m4/signal_h.m4: Update.
2660         * gnulib/import/m4/ssize_t.m4: Update.
2661         * gnulib/import/m4/stat-time.m4: Update.
2662         * gnulib/import/m4/stat.m4: Update.
2663         * gnulib/import/m4/std-gnu11.m4: Update.
2664         * gnulib/import/m4/stdbool.m4: Update.
2665         * gnulib/import/m4/stddef_h.m4: Update.
2666         * gnulib/import/m4/stdint.m4: Update.
2667         * gnulib/import/m4/stdio_h.m4: Update.
2668         * gnulib/import/m4/stdlib_h.m4: Update.
2669         * gnulib/import/m4/strchrnul.m4: Update.
2670         * gnulib/import/m4/strdup.m4: Update.
2671         * gnulib/import/m4/strerror.m4: Update.
2672         * gnulib/import/m4/string_h.m4: Update.
2673         * gnulib/import/m4/strstr.m4: Update.
2674         * gnulib/import/m4/strtok_r.m4: Update.
2675         * gnulib/import/m4/sys_socket_h.m4: Update.
2676         * gnulib/import/m4/sys_stat_h.m4: Update.
2677         * gnulib/import/m4/sys_time_h.m4: Update.
2678         * gnulib/import/m4/sys_types_h.m4: Update.
2679         * gnulib/import/m4/tempname.m4: Update.
2680         * gnulib/import/m4/time_h.m4: Update.
2681         * gnulib/import/m4/unistd-safer.m4: Update.
2682         * gnulib/import/m4/unistd_h.m4: Update.
2683         * gnulib/import/m4/warn-on-use.m4: Update.
2684         * gnulib/import/m4/wchar_h.m4: Update.
2685         * gnulib/import/m4/wchar_t.m4: Update.
2686         * gnulib/import/m4/wctype_h.m4: Update.
2687         * gnulib/import/m4/wint_t.m4: Update.
2688         * gnulib/import/malloc.c: Update.
2689         * gnulib/import/malloc/scratch_buffer.h: Update.
2690         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
2691         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
2692         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
2693         * gnulib/import/malloca.c: Update.
2694         * gnulib/import/malloca.h: Update.
2695         * gnulib/import/malloca.valgrind: Update.
2696         * gnulib/import/math.in.h: Update.
2697         * gnulib/import/mbrtowc.c: Update.
2698         * gnulib/import/mbsinit.c: Update.
2699         * gnulib/import/mbsrtowcs-impl.h: Update.
2700         * gnulib/import/mbsrtowcs-state.c: Update.
2701         * gnulib/import/mbsrtowcs.c: Update.
2702         * gnulib/import/memchr.c: Update.
2703         * gnulib/import/memmem.c: Update.
2704         * gnulib/import/mempcpy.c: Update.
2705         * gnulib/import/memrchr.c: Update.
2706         * gnulib/import/mkdir.c: Update.
2707         * gnulib/import/mkstemp.c: Update.
2708         * gnulib/import/msvc-inval.c: Update.
2709         * gnulib/import/msvc-inval.h: Update.
2710         * gnulib/import/msvc-nothrow.c: Update.
2711         * gnulib/import/msvc-nothrow.h: Update.
2712         * gnulib/import/open.c: Update.
2713         * gnulib/import/openat-die.c: Update.
2714         * gnulib/import/openat-priv.h: Update.
2715         * gnulib/import/openat-proc.c: Update.
2716         * gnulib/import/openat.c: Update.
2717         * gnulib/import/openat.h: Update.
2718         * gnulib/import/opendir.c: Update.
2719         * gnulib/import/pathmax.h: Update.
2720         * gnulib/import/pipe-safer.c: Update.
2721         * gnulib/import/rawmemchr.c: Update.
2722         * gnulib/import/readdir.c: Update.
2723         * gnulib/import/readlink.c: Update.
2724         * gnulib/import/realloc.c: Update.
2725         * gnulib/import/ref-add.sin: Update.
2726         * gnulib/import/ref-del.sin: Update.
2727         * gnulib/import/rename.c: Update.
2728         * gnulib/import/rewinddir.c: Update.
2729         * gnulib/import/rmdir.c: Update.
2730         * gnulib/import/same-inode.h: Update.
2731         * gnulib/import/save-cwd.c: Update.
2732         * gnulib/import/save-cwd.h: Update.
2733         * gnulib/import/scratch_buffer.h: Update.
2734         * gnulib/import/secure_getenv.c: Update.
2735         * gnulib/import/setenv.c: Update.
2736         * gnulib/import/signal.in.h: Update.
2737         * gnulib/import/stat-time.c: Update.
2738         * gnulib/import/stat-time.h: Update.
2739         * gnulib/import/stat-w32.c: Update.
2740         * gnulib/import/stat-w32.h: Update.
2741         * gnulib/import/stat.c: Update.
2742         * gnulib/import/stdbool.in.h: Update.
2743         * gnulib/import/stddef.in.h: Update.
2744         * gnulib/import/stdint.in.h: Update.
2745         * gnulib/import/stdio.in.h: Update.
2746         * gnulib/import/stdlib.in.h: Update.
2747         * gnulib/import/str-two-way.h: Update.
2748         * gnulib/import/strchrnul.c: Update.
2749         * gnulib/import/strdup.c: Update.
2750         * gnulib/import/streq.h: Update.
2751         * gnulib/import/strerror-override.c: Update.
2752         * gnulib/import/strerror-override.h: Update.
2753         * gnulib/import/strerror.c: Update.
2754         * gnulib/import/string.in.h: Update.
2755         * gnulib/import/stripslash.c: Update.
2756         * gnulib/import/strnlen1.c: Update.
2757         * gnulib/import/strnlen1.h: Update.
2758         * gnulib/import/strstr.c: Update.
2759         * gnulib/import/strtok_r.c: Update.
2760         * gnulib/import/sys_stat.in.h: Update.
2761         * gnulib/import/sys_time.in.h: Update.
2762         * gnulib/import/sys_types.in.h: Update.
2763         * gnulib/import/tempname.c: Update.
2764         * gnulib/import/tempname.h: Update.
2765         * gnulib/import/time.in.h: Update.
2766         * gnulib/import/unistd--.h: Update.
2767         * gnulib/import/unistd-safer.h: Update.
2768         * gnulib/import/unistd.in.h: Update.
2769         * gnulib/import/unsetenv.c: Update.
2770         * gnulib/import/verify.h: Update.
2771         * gnulib/import/extra/snippet/warn-on-use.h: Update.
2772         * gnulib/import/wchar.in.h: Update.
2773         * gnulib/import/wctype.in.h: Update.
2774         * gnulib/import/xalloc-oversized.h: Update.
2775         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
2776         "53e2c179f26a890fa6685af4b6c1397ee370433b".
2777
2778 2018-08-16  Gary Benson <gbenson@redhat.com>
2779
2780         PR gdb/13000:
2781         * gdb/main.c (captured_main_1): Exit with nonzero status
2782         in batch mode if the last command to be executed failed.
2783         * NEWS: Mention the above.
2784
2785 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
2786
2787         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
2788         end of warning message.
2789
2790 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2791
2792         PR gdb/22943:
2793         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
2794         (aarch64_extract_return_value): Use
2795         aapcs_is_vfp_call_or_return_candidate.
2796         (aarch64_return_in_memory): Likewise.
2797         (aarch64_store_return_value): Likewise.
2798
2799 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2800
2801         * aarch64-tdep.c
2802         (aapcs_is_vfp_call_or_return_candidate): Make static
2803         (pass_in_v_or_stack): Remove function.
2804         (pass_in_v_vfp_candidate): New function.
2805         (aarch64_push_dummy_call): Check for float register candidates.
2806
2807 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2808
2809         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
2810         (aapcs_is_vfp_call_or_return_candidate_1): New function.
2811         (aapcs_is_vfp_call_or_return_candidate): Likewise.
2812
2813 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
2814
2815         PR build/23399
2816         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
2817         (struct ipa_sym_addresses): Rename to...
2818         (struct ipa_sym_addresses_common): ... this.
2819         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
2820
2821 2018-08-28  Tom Tromey  <tom@tromey.com>
2822
2823         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2824         (token_fifo): Now a std::vector.
2825         (yylex, c_parse): Update.
2826         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2827         (token_fifo): Now a std::vector.
2828         (yylex, d_parse): Update.
2829         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2830         (token_fifo): Now a std::vector.
2831         (yylex, go_parse): Update.
2832
2833 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
2834
2835         * parser-defs.h (struct type_stack) <elements>: Change type to
2836         std::vector<union type_stack_elt>.
2837         <depth, size>: Remove.
2838         * parse.c (parse_exp_in_context_1): Adjust.
2839         (type_stack_reserve): Remove.
2840         (check_type_stack_depth): Remove.
2841         (insert_into_type_stack): Adjust to std::vector.
2842         (insert_type): Likewise.
2843         (push_type): Likewise.
2844         (push_type_int): Likewise.
2845         (insert_type_address_space): Likewise.
2846         (pop_type): Likewise.
2847         (pop_type_int): Likewise.
2848         (pop_typelist): Likewise.
2849         (pop_type_stack): Likewise.
2850         (append_type_stack): Likewise.
2851         (push_type_stack): Likewise.
2852         (get_type_stack): Likewise.
2853         (type_stack_cleanup): Likewise.
2854         (push_typelist): Likewise.
2855         (follow_types): Likewise.
2856         (_initialize_parse): Likewise.
2857
2858 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
2859
2860         * NEWS: Mention csky target.
2861
2862 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
2863             Hafiz Abid Qadeer  <abidh@codesourcery.com>
2864             Don Breazeal  <donb@codesourcery.com>
2865
2866         * csky-linux-tdep.c: New file.
2867         * csky-tdep.c: Likewise.
2868         * csky-tdep.h: Likewise.
2869         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
2870         csky-tdep.o.
2871         (HFILES_NO_SRCDIR): Add csky-tdep.h.
2872         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
2873         * configure.tgt: Add csky support.
2874
2875 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
2876
2877         * python/py-framefilter.c (py_print_frame): Print frame architecture
2878         when printing on an MI output.
2879
2880 2018-08-27  Tom Tromey  <tom@tromey.com>
2881
2882         PR build/23087:
2883         * configure: Rebuild.
2884         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
2885
2886 2018-08-27  Tom Tromey  <tom@tromey.com>
2887
2888         * aarch64-linux-tdep.c
2889         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
2890         casts to int.
2891
2892 2018-08-27  Tom Tromey  <tom@tromey.com>
2893
2894         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
2895         unsigned.
2896         (ppc64_standard_linkage1, ppc64_standard_linkage2)
2897         (ppc64_standard_linkage3, ppc64_standard_linkage4)
2898         (ppc64_standard_linkage5, ppc64_standard_linkage6)
2899         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
2900         unsigned.
2901
2902 2018-08-27  Tom Tromey  <tom@tromey.com>
2903
2904         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
2905         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
2906
2907 2018-08-27  Tom Tromey  <tom@tromey.com>
2908
2909         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
2910         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
2911         ULONGEST_MAX.
2912         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
2913         ULONGEST_MAX.
2914         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
2915         ULONGEST_MAX.
2916         * sparc-linux-tdep.c (sparc32_linux_sigframe)
2917         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
2918         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
2919         ULONGEST_MAX.
2920         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
2921         (ppc64_linux_sigaction_tramp_frame)
2922         (ppc32_linux_sighandler_tramp_frame)
2923         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
2924         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
2925         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
2926         * mn10300-linux-tdep.c (am33_linux_sigframe)
2927         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
2928         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
2929         * mips-linux-tdep.c (mips_linux_o32_sigframe)
2930         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
2931         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
2932         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
2933         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
2934         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
2935         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
2936         * microblaze-linux-tdep.c
2937         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
2938         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
2939         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
2940         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
2941         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
2942         * common/common-types.h (ULONGEST_MAX): New define.
2943         (CORE_ADDR_MAX): Fix formatting.
2944         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
2945         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
2946         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
2947         (arm_linux_rt_sigreturn_tramp_frame)
2948         (arm_eabi_linux_sigreturn_tramp_frame)
2949         (arm_eabi_linux_rt_sigreturn_tramp_frame)
2950         (thumb2_eabi_linux_sigreturn_tramp_frame)
2951         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
2952         (arm_linux_restart_syscall_tramp_frame)
2953         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
2954         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
2955         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
2956         ULONGEST_MAX.
2957         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
2958
2959 2018-08-27  Tom Tromey  <tom@tromey.com>
2960
2961         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
2962         CORE_ADDR_MAX.
2963         * mips-tdep.c (mips_deal_with_atomic_sequence)
2964         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
2965         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
2966         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
2967         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
2968         CORE_ADDR_MAX.
2969         * aarch64-tdep.c (aarch64_software_single_step): Use
2970         CORE_ADDR_MAX.
2971
2972 2018-08-27  Tom Tromey  <tom@tromey.com>
2973
2974         * linespec.c (complete_linespec_component): Add cast to "char".
2975         * completer.c (completion_tracker::build_completion_result): Add
2976         cast to "char".
2977
2978 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
2979
2980         * solist.h (struct solist, struct target_so_ops): Fix
2981         indentation.
2982
2983 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
2984
2985         * ada-tasks.c (ada_task_info_s): Remove typedef.
2986         (DEF_VEC_O(ada_task_info_s)): Remove.
2987         (struct ada_tasks_inferior_data): Initialize fields.
2988         <task_list>: Make an std::vector.
2989         (get_ada_tasks_inferior_data): Allocate with new.
2990         (ada_get_task_number): Adjust.
2991         (get_task_number_from_id): Likewise.
2992         (valid_task_id): Likewise.
2993         (ada_get_task_info_from_ptid): Likewise.
2994         (iterate_over_live_ada_tasks): Likewise.
2995         (add_ada_task): Likewise.
2996         (read_known_tasks): Likewise.
2997         (ada_build_task_list): Likewise.
2998         (print_ada_task_info): Likewise.
2999         (info_task): Likewise.
3000         (task_command_1): Likewise.
3001
3002 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3003
3004         * ada-lang.c (add_angle_brackets): Return std::string.
3005
3006 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
3007
3008         * python/py-threadevent.c (py_get_event_thread): Initialize
3009         pythread.
3010
3011 2018-08-24  Pedro Alves  <palves@redhat.com>
3012
3013         * python/py-bpevent.c (create_breakpoint_event_object): Use
3014         copy-initialization.
3015         * python/py-continueevent.c (emit_continue_event): Use
3016         copy-initialization.
3017         * python/py-exitedevent.c (create_exited_event_object): Return a
3018         gdbpy_ref<>.
3019         (emit_exited_event): Use copy-initialization.
3020         * python/py-inferior.c (python_new_inferior)
3021         (python_inferior_deleted, add_thread_object): Use
3022         copy-initialization.
3023         * python/py-infevents.c (create_inferior_call_event_object)
3024         (create_register_changed_event_object)
3025         (create_memory_changed_event_object): Return a gdbpy_ref<>.
3026         (emit_inferior_call_event, emit_memory_changed_event)
3027         (emit_register_changed_event): Use copy-initialization.
3028         * python/py-newobjfileevent.c (create_new_objfile_event_object):
3029         Return a gdbpy_ref<>.
3030         (emit_new_objfile_event): Use copy-initialization.
3031         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
3032         (emit_clear_objfiles_event): Use copy-initialization.
3033         * python/py-signalevent.c (create_signal_event_object): Use
3034         copy-initialization.
3035         * python/py-threadevent.c (create_thread_event_object): Use
3036         copy-initialization.
3037
3038 2018-08-24  Pedro Alves  <palves@redhat.com>
3039             Simon Marchi  <simon.marchi@ericsson.com>
3040
3041         PR gdb/23379
3042         * python/py-continueevent.c: Include "gdbthread.h".
3043         (create_continue_event_object): Add intro comment.  Add 'ptid'
3044         parameter.  Use it to find thread to pass to
3045         create_thread_event_object.
3046         (emit_continue_event): Pass PTID down to
3047         create_continue_event_object.
3048         * python/py-event.h (py_get_event_thread): Declare.
3049         (create_thread_event_object): Remove default from 'thread'
3050         parameter.
3051         * python/py-stopevent.c (create_stop_event_object): Use
3052         py_get_event_thread.
3053         * python/py-threadevent.c (get_event_thread): Rename to ...
3054         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
3055         and use it to find the thread.
3056         (create_thread_event_object): Assert that THREAD isn't null.
3057         Don't find the event thread here.
3058
3059 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
3060
3061         * block.h (blockrange, blockranges): New struct declarations.
3062         (struct block): Add new field named `ranges'.
3063         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
3064         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
3065         macros for accessing ranges in struct block.
3066         (make_blockranges): New declaration.
3067         block.c (make_blockranges): New function.
3068         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
3069         for block.
3070         * symtab.h (find_pc_partial_function): Add new parameter `block'.
3071         * blockframe.c (cache_pc_function_block): New static global.
3072         (clear_pc_function_cache): Clear cache_pc_function_block.
3073         (find_pc_partial_function): Move comment to symtab.h.  Add
3074         support for non-contiguous blocks.
3075         * cli/cli-cmds.c (block.h): Include.
3076         (print_disassembly): Handle printing of non-contiguous blocks.
3077         (disassemble_current_function): Likewise.
3078         (disassemble_command): Likewise.
3079
3080         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
3081         BLOCK_START.
3082         * blockframe.c (get_pc_function_start): Likewise.
3083         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
3084         (gcc_symbol_address): Likewise.
3085         * compile/compile-object-run.c (compile_object_run): Likewise.
3086         * compile/compile.c (get_expr_block_and_pc): Likewise.
3087         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
3088         (func_addr_to_tail_call_list): Likewise.
3089         * findvar.c (default_read_var_value): Likewise.
3090         * inline-frame.c (inline_frame_this_id): Likewise.
3091         (skip-inline_frames): Likewise.
3092         * infcmd.c (until_next_command): Likewise.
3093         * linespec.c (convert_linespec_to_sals): Likewise.
3094         * parse.c (parse_exp_in_context_1): Likewise.
3095         * printcmd.c (build_address_symbolic): likewise.
3096         (info_address_command): Likewise.
3097         symtab.c (find_function_start_sal): Likewise.
3098         (skip_prologue_sal): Likewise.
3099         (find_function_alias_target): Likewise.
3100         (find_gnu_ifunc): Likewise.
3101         * stack.c (find_frame_funname): Likewise.
3102         * symtab.c (fixup_symbol_section): Likewise.
3103         (find_function_start_sal): Likewise.
3104         (skip_prologue_sal): Likewsie.
3105         (find_function_alias_target): Likewise.
3106         (find_gnu_ifunc): Likewise.
3107         * tracepoint.c (info_scope_command): Likewise.
3108         * value.c (value_fn_field): Likewise.
3109
3110         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
3111         in place of find_pc_partial_function.
3112         * blockframe.c (find_function_entry_range_from_pc): New function.
3113         * symtab.h (find_function_entry_range_from_pc): Declare and document.
3114         * objfiles.c (objfile_relocate1): Relocate start and end addresses
3115         for each range in a block.
3116
3117
3118 2018-08-23  Xavier Roirand  <roirand@adacore.com>
3119
3120         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
3121         incrementation.
3122
3123 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3124
3125         * solib-svr4.c (read_program_headers_from_bfd): Return
3126         gdb::optional<gdb::byte_vector>.
3127         (svr4_exec_displacement): Adjust.
3128
3129 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3130
3131         * solib-svr4.c (read_program_header): Return
3132         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
3133         (find_program_interpreter): Return
3134         gdb::optional<gdb::byte_vector>.
3135         (scan_dyntag_auxv): Adjust.
3136         (enable_break): Adjust.
3137         (svr4_exec_displacement): Adjust.
3138
3139 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3140
3141         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
3142         * inf-child.c (inf_child_target::terminal_save_inferior): New.
3143
3144 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3145
3146         * guile/scm-string.c (gdbscm_scm_from_printf): Use
3147         string_vprintf.
3148         * guile/scm-utils.c (gdbscm_printf): Likewise.
3149         * serial.c (serial_printf): Likewise.
3150         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
3151
3152 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
3153
3154         * stack.c (print_frame): Print frame architecture when printing on
3155         an MI output.
3156         * NEWS: Mention new "arch" attribute in frame output.
3157
3158 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3159
3160         * arch/aarch64.h (aarch64_regnum): Update comment.
3161
3162 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3163
3164         * NEWS: Add SVE to 8.2 section.
3165
3166 2018-08-21  Pedro Alves  <palves@redhat.com>
3167
3168         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
3169         out from gdbscm_parse_function_args.
3170         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
3171         gdbscm_parse_function_args_1.
3172
3173 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
3174
3175         PR gdb/17816
3176         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
3177         operator.
3178
3179 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
3180
3181         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
3182
3183 2018-08-19  Michael Spang  <spang@google.com>
3184
3185         PR gdb/11786
3186         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
3187         for PT_TLS segments.
3188
3189 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
3190
3191         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
3192         dwarf_variable_value.
3193         * dwarf2-frame.c (class dwarf_expr_executor):
3194         Add override for dwarf_variable_value.
3195         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
3196         (class symbol_needs_eval_context): Likewise.
3197         (indirect_synthetic_pointer): Add forward declaration.
3198         (sect_variable_value): New function.
3199         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
3200         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
3201         for DW_OP_GNU_variable_value.
3202
3203 2018-08-16  Tom Tromey  <tom@tromey.com>
3204
3205         * top.c (read_command_file): Update.
3206         (command_line_input): Remove "repeat" argument.
3207         * ada-lang.c (get_selections): Update.
3208         * linespec.c (decode_line_2): Update.
3209         * defs.h (command_line_input): Remove argument.
3210         * cli/cli-script.c (read_next_line): Update.
3211         * python/py-gdb-readline.c: Update.
3212
3213 2018-08-17  Tom Tromey  <tom@tromey.com>
3214
3215         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
3216         command_line_input.
3217
3218 2018-08-15  Tom Tromey  <tom@tromey.com>
3219
3220         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
3221
3222 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
3223
3224         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
3225         If used, use find_pc_partial_function to find address range
3226         to disassemble.
3227         * mi/mi-main.c (mi_cmd_list_features): Report
3228         "data-disassemble-a-option" feature.
3229         * NEWS: Mention new -data-disassemble option -a.
3230
3231 2018-08-13  Tom Tromey  <tom@tromey.com>
3232
3233         * common/common-defs.h (_FORTIFY_SOURCE): Define.
3234
3235 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3236
3237         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
3238         (aarch64_linux_collect_sve_regset): Likewise.
3239         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
3240         * regcache.h (regcache_map_entry_size): New function.
3241
3242 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3243
3244         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
3245         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
3246         (SVE_HEADER_VL_LENGTH): Likewise.
3247         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
3248         (SVE_HEADER_FLAGS_LENGTH): Likewise.
3249         (SVE_HEADER_RESERVED_LENGTH): Likewise.
3250         (SVE_HEADER_SIZE_OFFSET): Likewise.
3251         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
3252         (SVE_HEADER_VL_OFFSET): Likewise.
3253         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
3254         (SVE_HEADER_FLAGS_OFFSET): Likewise.
3255         (SVE_HEADER_RESERVED_OFFSET): Likewise.
3256         (SVE_HEADER_SIZE): Likewise.
3257         (aarch64_linux_core_read_vq): Add function.
3258         (aarch64_linux_core_read_description): Check for SVE section.
3259
3260 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3261
3262         * aarch64-fbsd-tdep.c
3263         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
3264         collect_size.
3265         * aarch64-linux-tdep.c
3266         (aarch64_linux_iterate_over_regset_sections): Likewise.
3267         * alpha-linux-tdep.c
3268         (alpha_linux_iterate_over_regset_sections):
3269         * alpha-nbsd-tdep.c
3270         (alphanbsd_iterate_over_regset_sections): Likewise.
3271         * amd64-fbsd-tdep.c
3272         (amd64fbsd_iterate_over_regset_sections): Likewise.
3273         * amd64-linux-tdep.c
3274         (amd64_linux_iterate_over_regset_sections): Likewise.
3275         * arm-bsd-tdep.c
3276         (armbsd_iterate_over_regset_sections): Likewise.
3277         * arm-fbsd-tdep.c
3278         (arm_fbsd_iterate_over_regset_sections): Likewise.
3279         * arm-linux-tdep.c
3280         (arm_linux_iterate_over_regset_sections): Likewise.
3281         * corelow.c (get_core_registers_cb): Likewise.
3282         (core_target::fetch_registers): Likewise.
3283         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
3284         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
3285         * gdbarch.h (void): Regenerate.
3286         * gdbarch.sh: Add supply_size and collect_size.
3287         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
3288         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
3289         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
3290         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
3291         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
3292         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
3293         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
3294         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
3295         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
3296         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
3297         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
3298         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
3299         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
3300         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
3301         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections): Likewise.
3302         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
3303         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
3304         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
3305         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
3306         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
3307         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
3308         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections): Likewise.
3309         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
3310         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
3311         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
3312         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
3313         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
3314         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
3315         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
3316         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
3317
3318 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
3319
3320         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
3321         with string_printf.
3322
3323 2018-08-10  Keith Seitz  <keiths@redhat.com>
3324
3325         * compile/compile-c-support.c (add_code_header, add_code_footer):
3326         Move into policy class.
3327         (c_push_user_expression, pop_user_expression_nop)
3328         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
3329         (compile_program): New host class.
3330         (c_compile_program): New typedef.
3331         (c_compute_porgram): Use c_compile_program.
3332
3333 2018-08-10  Keith Seitz  <keiths@redhat.com>
3334
3335         * compile/compile-internal.h (compile_instance::~compile_instance):
3336         Remove calls to htab_delete.
3337         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
3338         * compile.c (compile_instance::compile_instance): Initialize
3339         htab unique pointers.
3340         (compile_instance::get_cached_type, compile_instance::insert_type)
3341         (compile_instance::error_symbol_once): Update for unique_ptr.
3342
3343 2018-08-10  Keith Seitz  <keiths@redhat.com>
3344
3345         * compile/compile-c-symbols.c (struct symbol_error)
3346         (hash_symbol_error, eq_symbol_error, del_symbol_error)
3347         (compile_instance::insert_symbol_error)
3348         (compile_instance::error_symbol_once): Move to ...
3349         * compile/compile.c: ... here.
3350
3351 2018-08-10  Keith Seitz  <keiths@redhat.com>
3352
3353         * compile/compile-c-support.c (c_get_compile_context): Use `new'
3354         instead of `new_compile_instance'.
3355         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
3356         Update description.
3357         If the symbol error map is not initialized, create it.
3358         (generate_c_for_for_one_symbol): Do not check/initialize
3359         the symbol error map.
3360         * compile/compile-c-types.c (compile_c_instance): Make a class.
3361         Update all callers.
3362         (compile_instance::compile_instance): Initialize the type cache.
3363         (get_cached_type): New function.
3364         (insert_type): Update description.
3365         (compile_c_instance::m_default_cflags): Define.
3366         (convert_type): Update description.  Use get_cached_type.
3367         (delete_instance): Moved to destructor.
3368         (new_compile_instance): Moved to constructor.
3369         * compile/compile-c.h (compile_c_instance): Make class inheriting
3370         from compile_instance.
3371         <base>: Remove field.
3372         <type_map, symbol_err_map>: Move to base class.
3373         <c_plugin>: Rename to `m_plugin' and remove pointer type.
3374         * compile/compile-internal.h (compile_instance): Make class.
3375         <type_map_t, symbol_err_map_t>: Define.
3376         <fe>: Rename to `m_gcc_fe'.
3377         <scope, block, gcc_target_options>: Add `m_' prefix.
3378         <m_type_map, m_symbol_err_map>: New fields, moved from
3379         compile_c_instance.
3380         <destroy>: Remove.
3381         (convert_type, new_compile_instance): Remove.
3382         * compile/compile.c (cleanup_compile_instance): Remove.
3383         (compile_to_object): Use unique_ptr to eliminate cleanups.
3384         (compile_instance::set_print_callback, compile_instance::version)
3385         (compile_instance::set_verbose)
3386         (compile_instance::set_driver_filename)
3387         (compile_instance::set_triplet_regexp)
3388         (compile_instance::set_arguments)
3389         (compile_instance::set_source_file)
3390         (compile_instance::compile): Define.
3391
3392 2018-08-10  Keith Seitz  <keiths@redhat.com>
3393
3394         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
3395         * compile/compile-c-types.c: Define GCC_METHODN macros and include
3396         gcc-c-fe.def to define C plugin.
3397         (delete_instance): Delete `c_plugin'.
3398         (new_compile_instance): Initialize `c_plugin'.
3399         * compile/compile-c.h: Include gcc_c_plugin.h.
3400         (struct compile_c_instance) <c_plugin>: New member.
3401         * gcc-c-plugin.h: New file.
3402         Update all callers with API change.
3403
3404 2018-08-10  Keith Seitz  <keiths@redhat.com>
3405
3406         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
3407         (HFILES_NO_SRCDIR): ... to here.
3408         Add compile-internal.h and compile-c.h.
3409         * compile/compile-c-support.c: Include compile-c.h.
3410         * compile/compile-c-symbols.c: Include compile-c.h.
3411         (generate_c_for_variable_locations): Update comment.
3412         * compile/compile-c-types.c: Include compile-c.h.
3413         * compile/compile-c.h: New file -- moved C language declarations
3414         from other files here.
3415         * compile/compile-internal.h: Do not include hashtab.h or
3416         common/enum-flags.h.
3417         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
3418         (gcc_convert_symbol, gcc_symbol_address)
3419         (generate_c_for_variable_locations, c_get_mode_for_size)
3420         (c_get_range_decl_name): Definitions moved to compile-c.h.
3421         * compile/compile-loc2c.c: Include compile-c.h.
3422
3423 2018-08-10  Keith Seitz  <keiths@redhat.com>
3424
3425         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
3426         (c_symbol_substitution_name): ... this.
3427         Update all callers.
3428
3429 2018-08-10  Keith Seitz  <keiths@redhat.com>
3430
3431         * compile/compile-c-support.c (c_compute_program): Use
3432         unique_xmalloc_ptr to eliminate cleanup.
3433         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
3434         Return a unique_xmalloc_ptr and eliminate cleanup.
3435         * compile/compile-internal.h (generate_c_for_variable_locations):
3436         Return unique_xmalloc_ptr and update description.
3437
3438 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
3439
3440         * corelow.c (core_target::get_core_register_section): Rename
3441         min_size to section_min_size.
3442
3443 2018-08-09  Jim Wilson  <jimw@sifive.com>
3444
3445         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
3446         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
3447         * NEWS: Mention new GNU/Linux RISC-V target.
3448         * configure.host: Add riscv*-*-linux*.
3449         * configure.nat: Add riscv*.
3450         * configure.tgt: Add riscv*-*-linux*.
3451         * riscv-linux-nat.c: New file.
3452         * riscv-linux-tdep.c: New file.
3453
3454 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3455
3456         * infrun.c (resume): Make static, add forward declaration.
3457         (proceed): Update header comment.
3458         * infrun.h (resume): Delete declaration.
3459
3460 2018-08-09  Tom Tromey  <tom@tromey.com>
3461
3462         * riscv-tdep.h: Minor formatting fixes.
3463
3464 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
3465
3466         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
3467         * dwarf-index-cache.c (create_dir_and_check): Likewise.
3468         (test_mkdir_recursive): Likewise.
3469         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
3470
3471 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3472
3473         * valarith.c (value_subscripted_rvalue): If an array is not in
3474         memory, and we don't know the upper bound, then we can't know that
3475         the requested element exists or not.
3476
3477 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
3478
3479         * target.c (str_comma_list_concat_elem): Fix typo in comment.
3480         (target_options_to_string): Add comment.
3481
3482 2018-08-08  Tom Tromey  <tom@tromey.com>
3483
3484         * unittests/scoped_mmap-selftests.c: Check result of "write".
3485
3486 2018-08-08  Jim Wilson  <jimw@sifive.com>
3487
3488         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
3489         (decode_register_index_short): New.
3490         (decode_j_type_insn, decode_cj_type_insn): New.
3491         (decode_b_type_insn, decode_cb_type_insn): New.
3492         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
3493         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
3494         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
3495         is_c_sw_insn instead of is_sw_insn.
3496         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
3497         (riscv_software_single_step): New.
3498         * riscv-tdep.h (riscv_software_single_step): Declare.
3499
3500         * riscv-tdep.c (riscv_isa_xlen): Drop static.
3501         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
3502
3503 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
3504
3505         PR gdb/18050:
3506         * target.c (dispose_inferior): Don't dispose of inferiors that are
3507         already killed.
3508
3509 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
3510
3511         * remote.c (remote_target::download_tracepoint): Change char* to
3512         const char*.
3513
3514 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
3515
3516         * target.h (target_options_to_string): Return an std::string.
3517         * target.c (str_comma_list_concat_elem): Return void, use
3518         std::string.
3519         (do_option): Likewise.
3520         (target_options_to_string): Return an std::string.
3521         * linux-nat.c (linux_nat_target::wait): Adjust.
3522         * target-debug.h (target_debug_print_options): Adjust.
3523
3524 2018-08-07  Tom Tromey  <tom@tromey.com>
3525
3526         * Makefile.in (CPPFLAGS): New variable.
3527         (INTERNAL_CPPFLAGS): Use it.
3528
3529 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3530
3531         * NEWS: Mention the index cache.
3532
3533 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3534
3535         * common/pathstuff.h (get_standard_cache_dir): New.
3536         * common/pathstuff.c (get_standard_cache_dir): New.
3537         * build-id.h (build_id_to_string): New.
3538         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
3539         DEBUG_STR_SUFFIX): Move to here.
3540         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
3541         DEBUG_STR_SUFFIX): Move from there.
3542         (write_psymtabs_to_index): Make non-static, add basename
3543         parameter.  Write to temporary files, rename when done.
3544         (save_gdb_index_command): Adjust call to
3545         write_psymtabs_to_index.
3546         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
3547         field.
3548         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
3549         (get_gdb_index_contents_from_cache): New.
3550         (get_gdb_index_contents_from_cache_dwz): New.
3551         (dwarf2_initialize_objfile): Read index from cache.
3552         (dwarf2_build_psymtabs): Save to index.
3553         * dwarf-index-cache.h: New file.
3554         * dwarf-index-cache.c: New file.
3555         * dwarf-index-write.h: New file.
3556
3557 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3558
3559         * gnulib/aclocal.m4: Re-generate.
3560         * gnulib/config.in: Re-generate.
3561         * gnulib/configure: Re-generate.
3562         * gnulib/import/Makefile.am: Re-generate.
3563         * gnulib/import/Makefile.in: Re-generate.
3564         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
3565         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
3566         * gnulib/import/m4/mkdir.m4: New file.
3567         * gnulib/import/mkdir.c: New file.
3568         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
3569         module.
3570
3571 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3572
3573         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
3574         * common/scoped_mmap.c: New file.
3575         * common/scoped_mmap.h (destroy): New method.
3576         (~scoped_mmap, reset): Use destroy.
3577         (scoped_mmap): New move constructor.
3578         (mmap_file): New declaration.
3579         * unittests/scoped_mmap-selftests.c (test_normal,
3580         test_invalid_filename, run_tests): New functions.
3581         (_initialize_scoped_mmap_selftests): Register selftest.
3582
3583 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3584
3585         * dwarf2read.c (read_gdb_index_from_section): Rename to...
3586         (read_gdb_index_from_buffer): ... this.  Remove section
3587         parameter, add buffer parameter.
3588         (get_gdb_index_contents_ftype,
3589         get_gdb_index_contents_dwz_ftype): New typedefs.
3590         (dwarf2_read_gdb_index): Add callback parameters to get the
3591         index contents.
3592         (get_gdb_index_contents_from_section): New.
3593         (dwarf2_initialize_objfile): Update call to
3594         dwarf2_read_gdb_index.
3595
3596 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3597
3598         * common/filestuff.h (gdb_fopen_cloexec): New overload.
3599         (gdb_open_cloexec): Likewise.
3600         * nat/linux-osdata.c (command_from_pid): Use string_printf.
3601         (commandline_from_pid): Likewise.
3602         (linux_xfer_osdata_threads): Likewise.
3603         (linux_xfer_osdata_fds): Likewise.
3604         * ada-lang.c (is_package_name): Likewise.
3605         * auxv.c (procfs_xfer_auxv): Likewise.
3606         * breakpoint.c (print_one_breakpoint_location): Use
3607         uiout::field_fmt.
3608         (print_one_catch_solib): Use string_printf.
3609         * coff-pe-read.c (add_pe_exported_sym): Likewise.
3610         (add_pe_forwarded_sym): Likewise.
3611         * dwarf2read.c (create_type_unit_group): Likewise.
3612         (build_error_marker_type): Likewise.
3613         * infcall.c (get_function_name): Likewise.
3614         * valprint.c (print_converted_chars_to_obstack): Likewise.
3615         * xtensa-tdep.c (xtensa_register_type): Likewise.
3616
3617 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
3618
3619         * remote.c (remote_target::download_tracepoint): Fix format
3620         string errors.
3621
3622 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3623
3624         * tracefile.c: Include common/byte-vector.h.
3625         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
3626         with trace_regblock_size if needed.  Update uses of buf.
3627
3628 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3629
3630         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
3631         std::vector<unsigned char>.
3632         * tracepoint.c (collection_list::collection_list): Remove
3633         m_regs_mask initializer from initializer list.  Resize
3634         m_regs_mask using the largest remote register number.
3635         (collection_list::add_remote_register): Remove size check on
3636         m_regs_mask.  Use at to access element.
3637         (collection_list::stringify): Change type of temp_buf to
3638         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
3639         stringify the register mask.  Use pack_hex_byte for the register
3640         mask.
3641
3642 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3643
3644         * tracepoint.h (class collection_list) <add_register>: Remove.
3645         <add_remote_register, add_ax_registers, add_local_register>:
3646         Declare.
3647         <add_memrange>: Add scope parameter.
3648         * tracepoint.c (encode_actions_1): Likewise.
3649         (collection_list::add_register): Rename to ...
3650         (collection_list::add_remote_register): ... this.  Update
3651         comment.
3652         (collection_list::add_ax_registers, add_local_register): New
3653         methods.
3654         (collection_list::add_memrange): Add scope parameter.  Call
3655         add_local_register instead of add_register.
3656         (finalize_tracepoint_aexpr): New function.
3657         (collection_list::collect_symbol): Update calls to add_memrange.
3658         Call add_local_register instead of add_register.  Call
3659         add_ax_registers.  Call finalize_tracepoint_aexpr.
3660         (encode_actions_1): Get remote regnos for $reg action.  Call
3661         add_remote_register, add_ax_registers, and add_local_register.
3662         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
3663         (validate_actionline): Call finalize_tracepoint_aexpr.
3664
3665 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3666
3667         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
3668         Replace array buf with gdb::char_vector buf, of size
3669         get_remote_packet_size ().  Replace references to buf and
3670         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
3671         and xsnprintf with snprintf.  Raise errors if the buffer is too
3672         small.
3673
3674 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3675
3676         * remote.c (remote_target::download_tracepoint): Fix the has_more
3677         predicate in the QTDP action list iteration.
3678
3679 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3680
3681         * remote.c (remote_target::download_tracepoint): Fix indentation
3682         in for block.
3683
3684 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3685
3686         * proc-api.c (_initialize_proc_api): Remove c, unused.
3687         * procfs.c (procfs_init_inferior): Remove signals, unused.
3688         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
3689         unused.
3690
3691 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
3692             Andrew Burgess  <andrew.burgess@embecosm.com>
3693
3694         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
3695         'W_STOPCODE (0)' as this could be ambiguous.
3696
3697 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
3698
3699         * ser-tcp.c (net_open): Fix thinko when deciding whether to
3700         disable TCP's Nagle algorithm (use "ai_protocol" instead of
3701         "ai_socktype").
3702
3703 2018-08-02  Tom Tromey  <tom@tromey.com>
3704
3705         PR symtab/16842.
3706         * dwarf2read.c (read_func_scope): Set symtab on template parameter
3707         symbols.
3708         (process_structure_scope): Likewise.
3709
3710 2018-08-02  Xavier Roirand  <roirand@adacore.com>
3711
3712         PR gdb/22629:
3713         * darwin-nat.c (darwin_kill_inferior): Fix handling of
3714         kill inferior.
3715
3716 2018-08-02  Tom Tromey  <tom@tromey.com>
3717
3718         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
3719         (darwin_suspend_inferior, darwin_resume_inferior)
3720         (darwin_decode_notify_message, darwin_resume_inferior_threads)
3721         (darwin_check_new_threads): Check result of get_darwin_inferior.
3722
3723 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
3724
3725         GDB 8.1.1 released.
3726
3727 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
3728
3729         * varobj.c (varobj_get_path_expr_parent): Report an error if
3730         parent is a dynamic varobj.
3731
3732 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
3733
3734         * gnulib/aclocal.m4: Re-generate.
3735         * gnulib/config.in: Re-generate.
3736         * gnulib/configure: Re-generate.
3737         * gnulib/import/Makefile.in: Re-generate.
3738         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
3739         * gnulib/import/m4/onceonly.m4: Re-generate.
3740
3741 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
3742
3743         * target-descriptions.c (struct xml_test_tdesc): New.
3744         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
3745         (record_xml_tdesc): Update.
3746         (maintenance_check_xml_descriptions): Update.
3747         * target-descriptions.h (record_xml_tdesc): Update comment.
3748
3749 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
3750
3751         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
3752         checking array bounds are defined.
3753
3754 2018-07-30  Tom Tromey  <tom@tromey.com>
3755
3756         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
3757         irreflexivity violation.
3758
3759 2018-07-30  Tom Tromey  <tom@tromey.com>
3760
3761         * cli/cli-decode.c (lookup_cmd): Remove lint code.
3762         * value.c (unpack_long): Remove lint code.
3763         * valops.c (value_ind): Remove lint code.
3764         * valarith.c (value_x_binop, value_x_unop, value_equal)
3765         (value_pos): Remove lint code.
3766
3767 2018-07-28  Tom de Vries  <tdevries@suse.de>
3768
3769         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
3770         with undefined upper bound as <optimized out>.
3771
3772 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
3773
3774         * gcore.in: Rename variable "name" to "prefix".  Expand
3775         "usage" text.
3776
3777 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
3778
3779         * windows-nat.c (windows_nat_target::create_inferior): Update to
3780         call close() in global namespace.
3781
3782 2018-07-26  Tom Tromey  <tom@tromey.com>
3783
3784         * dwarf-index-write.c (add_address_entry): Don't add objfile
3785         offsets.
3786         * dbxread.c (find_stab_function): Rename from
3787         find_stab_function_addr.  Return a bound_minimal_symbol.
3788         (read_dbx_symtab): Use raw_text_low, raw_text_high.
3789         Don't add objfile offsets.
3790         (end_psymtab): Use raw_text_low, raw_text_high,
3791         MSYMBOL_VALUE_RAW_ADDRESS.
3792         (read_ofile_symtab): Update.
3793         (process_one_symbol): Update.
3794         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
3795         offsets.
3796         (dw2_relocate): Remove.
3797         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
3798         searching addrmap.
3799         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
3800         Update.
3801         (process_psymtab_comp_unit_reader, add_partial_symbol)
3802         (add_partial_subprogram, dwarf2_ranges_read): Update.
3803         (load_partial_dies): Update.
3804         (add_address_entry): Don't add objfile offsets.
3805         (dwarf2_build_include_psymtabs): Update.
3806         (create_addrmap_from_aranges): Don't add objfile offsets.
3807         (dw2_find_pc_sect_compunit_symtab): Update.
3808         * mdebugread.c (parse_symbol): Don't add objfile offsets.
3809         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
3810         Update.
3811         (parse_partial_symbols): Don't add objfile offsets.  Use
3812         raw_text_low, raw_text_high.  Update.
3813         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
3814         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
3815         or call 'relocate' quick function.  Clear psymbol_map.
3816         * psympriv.h (struct partial_symbol) <address>: Add section
3817         offset.
3818         <set_unrelocated_address>: Rename from set_address.
3819         <raw_text_low, raw_text_high>: New methods.
3820         <text_low, text_high>: Add objfile parameter.
3821         (add_psymbol_to_bcache): Add 'section' parameter.  Call
3822         set_unrelocated_address.
3823         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3824         (find_pc_psymbol): Update.
3825         (fixup_psymbol_section, relocate_psymtabs): Remove.
3826         (dump_psymtab, psym_functions): Update.
3827         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
3828         parameter.
3829         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
3830         (start_psymtab_common): Update.
3831         * symfile-debug.c (debug_qf_relocate): Remove.
3832         (debug_sym_quick_functions): Update.
3833         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
3834         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
3835         Update.
3836
3837 2018-07-26  Tom Tromey  <tromey@redhat.com>
3838
3839         * dbxread.c (end_psymtab): Use text_high_valid and
3840         text_low_valid.
3841         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
3842         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
3843         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
3844         Update comment.
3845         <text_low_valid, text_high_valid>: New fields.
3846         <set_text_low, set_text_high>: Update.
3847         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
3848
3849 2018-07-26  Tom Tromey  <tom@tromey.com>
3850
3851         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
3852         Update.
3853         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
3854         textlow and texthigh fields.
3855         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
3856         Update.
3857         * mdebugread.c (parse_lines, parse_partial_symbols)
3858         (psymtab_to_symtab_1): Update.
3859         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
3860         Rename fields.  Update comment.  Now private.
3861         <text_low, text_high, set_text_low, set_text_high>: New methods.
3862         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3863         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
3864         (start_psymtab_common, maintenance_info_psymtabs)
3865         (maintenance_check_psymtabs): Update.
3866         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
3867         texthigh fields.
3868         (scan_xcoff_symtab): Update.
3869
3870 2018-07-26  Tom Tromey  <tromey@redhat.com>
3871
3872         * psympriv.h (struct partial_symbol) <unrelocated_address,
3873         address, set_address>: New methods.
3874         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
3875         (fixup_psymbol_section, relocate_psymtabs): Update.
3876         (print_partial_symbols): Add 'objfile' parameter.  Update.
3877         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
3878         Update.
3879
3880 2018-07-26  Tom Tromey  <tom@tromey.com>
3881
3882         * dwarf-index-write.c (write_psymbols, debug_names::insert)
3883         (debug_names::write_psymbols): Update.
3884         * psympriv.h (struct partial_symbol): Derive from
3885         general_symbol_info.
3886         <obj_section>: New method.
3887         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
3888         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3889         (find_pc_sect_psymbol, fixup_psymbol_section)
3890         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
3891         (print_partial_symbols, recursively_search_psymtabs)
3892         (compare_psymbols, psymbol_hash, psymbol_compare)
3893         (add_psymbol_to_bcache, maintenance_check_psymtabs)
3894         (psymbol_name_matches, psym_fill_psymbol_map): Update.
3895
3896 2018-07-26  Tom Tromey  <tromey@redhat.com>
3897
3898         * dbxread.c (end_psymtab): Remove dead code.
3899
3900 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
3901
3902         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
3903         DWARF unwinders are disabled.
3904         * dwarf2-frame.c: Add dwarf2read.h include.
3905         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
3906         disabled.
3907         (dwarf2_frame_unwinders_enabled_p): Define.
3908         (show_dwarf_unwinders_enabled_p): New function.
3909         (_initialize_dwarf2_frame): Register switch to control DWARF
3910         unwinder use.
3911         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
3912         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
3913         (show_dwarf_cmdlist): Remove static keyword.
3914         * dwarf2read.h (set_dwarf_cmdlist): Declare.
3915         (show_dwarf_cmdlist): Declare.
3916         * NEWS: Document new feature.
3917
3918 2018-07-26  Tom de Vries  <tdevries@suse.de>
3919
3920         PR breakpoints/23366
3921         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
3922
3923 2018-07-26  Tom de Vries  <tdevries@suse.de>
3924
3925         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
3926         DW_AT_count can't be translated to a dynamic prop.
3927
3928 2018-07-25  Tom de Vries  <tdevries@suse.de>
3929
3930         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
3931         try/catch.
3932
3933 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
3934
3935         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
3936
3937 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
3938
3939         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
3940
3941 2018-07-24  Keith Seitz  <keiths@redhat.comt
3942
3943         PR symtab/23010
3944         * dwarf2read.c (dw2_add_symbol_to_list): New function.
3945         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
3946         instead of add_symbol_to_list.
3947         (read_file_scope): Call prepare_one_comp_unit before reading
3948         any other DIEs.
3949
3950 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
3951
3952         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
3953
3954 2018-07-24  Tom Tromey  <tom@tromey.com>
3955
3956         * utils.c (malloc, realloc, free): Don't declare.
3957         * configure, config.in: Rebuild.
3958         * configure.ac: Don't check for declarations of free, malloc, or
3959         realloc.
3960
3961 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
3962
3963         * aarch64-linux-nat.c
3964         (aarch64_linux_nat_target::stopped_data_address): Remove unused
3965         variable.
3966         * arm-linux-nat.c (fetch_regs): Likewise.
3967         (store_regs): Likewise.
3968         (fetch_vfp_regs): Likewise.
3969         (store_vfp_regs): Likewise.
3970         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
3971         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
3972         (arm_linux_nat_target::insert_watchpoint): Likewise.
3973         (arm_linux_nat_target::remove_watchpoint): Likewise.
3974         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
3975         Likewise.
3976         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
3977         Likewise.
3978         * ppc-linux-nat.c (fetch_register): Likewise.
3979         (fetch_all_gp_regs): Likewise.
3980         (fetch_ppc_registers): Likewise.
3981         (store_all_gp_regs): Likewise.
3982         (store_ppc_registers): Likewise.
3983         (hwdebug_insert_point): Likewise.
3984         (can_use_watchpoint_cond_accel): Likewise.
3985         * remote-sim.c (gdb_os_write_stdout): Likewise.
3986
3987 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
3988             Tom Tromey  <tom@tromey.com>
3989
3990         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
3991         test for it.
3992         * configure: Rebuild.
3993
3994 2018-07-22  Tom Tromey  <tom@tromey.com>
3995
3996         * regformats/regdat.sh: Define xmltarget_${name} inside
3997         #ifndef IN_PROCESS_AGENT.
3998
3999 2018-07-22  Tom Tromey  <tom@tromey.com>
4000
4001         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
4002
4003 2018-07-22  Tom Tromey  <tom@tromey.com>
4004
4005         * symfile.c (reread_symbols): Notify iter, not objfile.
4006
4007 2018-07-22  Tom Tromey  <tom@tromey.com>
4008
4009         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
4010         Use arch_ops.
4011         (ravenscar_thread_target::prepare_to_store): Likewise.
4012
4013 2018-07-22  Tom Tromey  <tom@tromey.com>
4014
4015         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
4016         unused variable.  Call value_fetch_lazy when needed.
4017         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
4018         Remove unused variable.  Call value_fetch_lazy when needed.
4019
4020 2018-07-22  Tom Tromey  <tom@tromey.com>
4021
4022         * m32c-tdep.c (mark_dma): Return void.
4023         (make_regs): Remove unused declarations.
4024
4025 2018-07-22  Tom Tromey  <tom@tromey.com>
4026
4027         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
4028         cmdscm_get_valid_command_smob_arg_unsafe for effect.
4029         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
4030         bkscm_get_valid_block_smob_arg_unsafe for effect.
4031
4032 2018-07-22  Tom Tromey  <tom@tromey.com>
4033
4034         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
4035         value_type.
4036
4037 2018-07-22  Tom Tromey  <tom@tromey.com>
4038
4039         * windows-nat.c (saved_context): Conditionally define.
4040         * remote.c (remote_target::remote_btrace_maybe_reopen):
4041         Conditionally declare "warned".
4042         * inflow.c (sigquit_ours): Conditionally define.
4043         (new_tty): Move "tty" declaration inside #if.
4044         * guile/guile.c (guile_datadir): Conditionally define.
4045         * charset.c (set_be_le_names): Move some declarations inside #if.
4046         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
4047         #if.
4048         (parse_xml_btrace_conf): Likewise.
4049
4050 2018-07-22  Tom Tromey  <tom@tromey.com>
4051
4052         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
4053
4054 2018-07-22  Tom Tromey  <tom@tromey.com>
4055
4056         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
4057         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
4058         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
4059         * buildsym-legacy.c (get_macro_table): Remove unused variable.
4060         * stack.c (frame_apply_level_command): Remove unused variable.
4061         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
4062         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
4063         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
4064         unused variable.
4065         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
4066         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
4067         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
4068         variable.
4069         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
4070         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
4071         variable.
4072         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
4073         Remove unused variable.
4074         * cli/cli-script.c (recurse_read_control_structure): Remove unused
4075         variable.
4076         * common/tdesc.c (print_xml_feature::visit): Remove unused
4077         variable.
4078         * compile/compile-object-load.c (store_regs): Remove unused
4079         variables.
4080         * complaints.c (clear_complaints): Remove unused variable.
4081         * corelow.c (core_target_open): Remove unused variable.
4082         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
4083         variable.
4084         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
4085         variable.
4086         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
4087         variable.
4088         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
4089         variable.
4090         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
4091         variable.
4092         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
4093         variable.
4094         * ia64-tdep.c (examine_prologue): Remove unused variable.
4095         * infcall.c (run_inferior_call): Remove unused variable.
4096         * inferior.c (exit_inferior): Remove unused variable.
4097         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
4098         * linespec.c (decode_line_2): Remove unused variable.
4099         * linux-nat.c (super_close): Remove.
4100         * linux-tdep.c (linux_info_proc): Remove unused variable.
4101         * mi/mi-main.c (mi_execute_command): Remove unused variable.
4102         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
4103         Remove unused variable.
4104         * parse.c (find_minsym_type_and_address): Remove unused variable.
4105         * printcmd.c (info_symbol_command, printf_floating): Remove unused
4106         variable.
4107         * python/py-breakpoint.c (bppy_set_commands): Remove unused
4108         variable.
4109         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
4110         variables.
4111         * record-btrace.c (record_btrace_target::store_registers): Remove
4112         unused variable.
4113         (cmd_show_record_btrace_cpu): Remove unused variable.
4114         * riscv-tdep.c (riscv_register_reggroup_p)
4115         (riscv_push_dummy_call, riscv_return_value): Remove unused
4116         variable.
4117         * rust-exp.y (literal): Remove unused variable.
4118         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
4119         unused variable.
4120         <STRUCTOP_ANONYMOUS>: Likewise.
4121         * s390-linux-tdep.c (s390_linux_init_abi_31)
4122         (s390_linux_init_abi_64): Remove unused variable.
4123         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
4124         (file_select_thread, net_windows_open, _initialize_ser_windows):
4125         Remove unused variables.
4126         * symtab.c (find_pc_sect_line): Remove unused variable.
4127         * target-memory.c (compute_garbled_blocks): Remove unused
4128         variable.
4129         (target_write_memory_blocks): Remove unused variable.
4130         * target.c (target_stack::unpush): Remove unused variables.
4131         * tracepoint.c (start_tracing, all_tracepoint_actions)
4132         (merge_uploaded_trace_state_variables)
4133         (print_one_static_tracepoint_marker): Remove unused variable.
4134         * unittests/basic_string_view/element_access/char/1.cc (test01):
4135         Remove unused variable.
4136         * windows-nat.c (windows_continue, windows_add_all_dlls)
4137         (do_initial_windows_stuff, windows_nat_target::create_inferior):
4138         Remove unused variables.
4139
4140 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
4141
4142         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
4143         attr_profile in HAVE_ELF.
4144         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
4145         HAVE_ELF.
4146
4147 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
4148
4149         * frame.c (frame_register_unwind): Change parameter name.
4150         (frame_unwind_register): Likewise.
4151         (frame_unwind_register_value): Likewise.
4152         (frame_unwind_register_signed): Likewise.
4153         (frame_unwind_register_unsigned): Likewise.
4154         * frame.h (frame_register_unwind): Likewise.
4155         (frame_unwind_register): Likewise.
4156         (frame_unwind_register_value): Likewise.
4157         (frame_unwind_register_signed): Likewise.
4158         (frame_unwind_register_unsigned): Likewise.
4159         (frame_unwind_arch): Likewise.
4160
4161 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4162
4163         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
4164         ISA maintenance.
4165
4166 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4167
4168         * mips-linux-nat.c (mips_linux_nat_target::read_description):
4169         Call `get_ptrace_pid' rather than extracting the ptrace PID by
4170         hand.
4171
4172 2018-07-20  Keith Seitz  <keiths@redhat.com>
4173
4174         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
4175         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
4176         m_compunit_symtab, m_language>: Add "m_" prefix.
4177         Update all uses.
4178         * buildsym.c: Update all uses.
4179
4180 2018-07-20  Tom Tromey  <tom@tromey.com>
4181
4182         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
4183         * buildsym.h (record_line_ftype): Remove typedef.
4184
4185 2018-07-20  Tom Tromey  <tom@tromey.com>
4186
4187         * buildsym-legacy.h (augment_type_symtab): Don't declare.
4188         (end_expandable_symtab): Likewise.
4189         (end_symtab_get_static_block): Likewise.
4190         (end_symtab_from_static_block): Likewise.
4191         * buildsym-legacy.c (augment_type_symtab): Remove.
4192         (end_expandable_symtab): Remove.
4193         (end_symtab_get_static_block): Remove.
4194         (end_symtab_from_static_block): Remove.
4195
4196 2018-07-20  Tom Tromey  <tom@tromey.com>
4197
4198         * dwarf2read.c: Include buildsym.h.
4199         (struct dwarf2_cu) <builder>: New method.
4200         (fixup_go_packaging): Update.
4201         (process_full_comp_unit, process_full_type_unit): Update.  Don't
4202         use scoped_free_pendings.
4203         (using_directives): Add "cu" parameter, remove "language".
4204         (read_import_statement, setup_type_unit_groups, )
4205         (read_func_scope, read_lexical_block_scope)
4206         (dwarf2_record_block_ranges, read_namespace): Update.
4207         (lnp_state_machine::lnp_state_machine): Add cu parameter.
4208         (lnp_state_machine::handle_end_sequence): Update.
4209         (class lnp_state_machine) <m_cu>: New member.
4210         <m_record_line_callback>: Remove.
4211         <m_currently_recording_lines>: New member.
4212         (lnp_state_machine::handle_set_file): Update.
4213         (noop_record_line): Remove.
4214         (dwarf_record_line_p): Add cu parameter.
4215         (dwarf_record_line_1, dwarf_finish_line): Likewise.
4216         (lnp_state_machine::record_line)
4217         (lnp_state_machine::lnp_state_machine)
4218         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
4219         (dwarf_decode_lines): Update.
4220         (dwarf2_start_subfile): Add cu parameter.
4221         (dwarf2_start_symtab, new_symbol): Update.
4222         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
4223         Remove dwarf2_per_objfile parameter.
4224         (dwarf_decode_macros): Update.
4225
4226 2018-07-20  Tom Tromey  <tom@tromey.com>
4227
4228         * stabsread.c (define_symbol): Update.
4229         * buildsym-legacy.h (get_buildsym_compunit): Declare.
4230         * dwarf2read.c (new_symbol): Update.
4231         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
4232         * cp-namespace.c: Include buildsym.h.
4233         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
4234         * buildsym-legacy.c (get_buildsym_compunit): New function.
4235
4236 2018-07-20  Tom Tromey  <tom@tromey.com>
4237
4238         * xcoffread.c: Include buildsym-legacy.h.
4239         * windows-nat.c: Include buildsym-legacy.h.
4240         * stabsread.c: Include buildsym-legacy.h.
4241         * mdebugread.c: Include buildsym-legacy.h.
4242         * buildsym-legacy.h: New file.
4243         * buildsym-legacy.c: New file, from buildsym.c.
4244         * go32-nat.c: Include buildsym-legacy.h.
4245         * dwarf2read.c: Include buildsym-legacy.h.
4246         * dbxread.c: Include buildsym-legacy.h.
4247         * cp-namespace.c: Include buildsym-legacy.h.
4248         * coffread.c: Include buildsym-legacy.h.
4249         * buildsym.h: Move some contents to buildsym-legacy.h.
4250         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
4251         buildsym-legacy.c.
4252         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
4253
4254 2018-07-20  Tom Tromey  <tom@tromey.com>
4255
4256         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
4257         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
4258         (buildsym_compunit::buildsym_compunit)
4259         (buildsym_compunit::~buildsym_compunit)
4260         (buildsym_compunit::get_macro_table): Define.
4261
4262 2018-07-20  Tom Tromey  <tom@tromey.com>
4263
4264         * buildsym.c (reset_symtab_globals): Remove.
4265         (buildsym_compunit::end_symtab_from_static_block): Update.
4266         (buildsym_compunit::augment_type_symtab): Update.
4267         (end_symtab_from_static_block): Call free_buildsym_compunit.
4268         (augment_type_symtab, end_symtab, end_expandable_symtab):
4269         Likewise.
4270
4271 2018-07-20  Tom Tromey  <tom@tromey.com>
4272
4273         * arch-utils.c: Do not include buildsym.h.
4274         * mipsread.c: Do not include buildsym.h.
4275         * machoread.c: Do not include buildsym.h.
4276         * elfread.c: Do not include buildsym.h.
4277
4278 2018-07-20  Tom Tromey  <tom@tromey.com>
4279
4280         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
4281         initialization.
4282         (buildsym_compunit): Add new constructor.
4283         (struct buildsym_compunit) <get_last_source_file, finish_block,
4284         record_block_range, start_subfile, patch_subfile_names,
4285         push_subfile, pop_subfile, record_line, get_compunit_symtab,
4286         set_last_source_start_addr, get_last_source_start_addr,
4287         get_local_using_directives, set_local_using_directives,
4288         get_global_using_directives, outermost_context_p,
4289         get_current_context_stack, get_context_stack_depth,
4290         get_current_subfile, get_local_symbols, get_file_symbols,
4291         get_global_symbols, record_debugformat, record_producer,
4292         push_context, pop_context, end_symtab_get_static_block,
4293         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
4294         New public methods.
4295         <record_pending_block, finish_block_internal, make_blockvector,
4296         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
4297         private methods.
4298         Update all users.
4299
4300 2018-05-22  Tom Tromey  <tom@tromey.com>
4301
4302         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
4303         parameter.
4304         (finish_block_internal): Update.
4305
4306 2018-07-20  Tom Tromey  <tom@tromey.com>
4307
4308         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
4309         parameter.
4310         (finish_block_internal): Update.
4311
4312 2018-07-20  Tom Tromey  <tom@tromey.com>
4313
4314         * buildsym.h (EXTERN): Don't define or undef.
4315         * buildsym.c (EXTERN): Don't define.
4316
4317 2018-07-20  Tom Tromey  <tom@tromey.com>
4318
4319         * buildsym.c: Remove TODO comment.
4320
4321 2018-07-20  Tom Tromey  <tom@tromey.com>
4322
4323         * coffread.c (coff_symtab_read): Update.
4324         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
4325         (xcoff_new_init): Update.
4326         * mipsread.c (mipscoff_new_init): Update.
4327         * mdebugread.c (mdebug_build_psymtabs): Update.
4328         * elfread.c (elf_new_init): Update.
4329         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
4330         Update.
4331         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
4332         (coffstab_build_psymtabs, elfstab_build_psymtabs)
4333         (stabsect_build_psymtabs): Update.
4334         * buildsym.h (buildsym_init): Don't declare.
4335         * buildsym.c: Update comment.
4336         (prepare_for_building): Remove.
4337         (start_symtab, restart_symtab): Update.
4338         (reset_symtab_globals): Update comment.
4339         (buildsym_init): Remove.
4340
4341 2018-07-20  Tom Tromey  <tom@tromey.com>
4342
4343         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
4344         * stabsread.c (patch_block_stabs, define_symbol, read_type)
4345         (read_enum_type, common_block_start, common_block_end)
4346         (cleanup_undefined_types_1, finish_global_stabs): Update.
4347         * mdebugread.c (psymtab_to_symtab_1): Update.
4348         * dwarf2read.c (fixup_go_packaging, read_func_scope)
4349         (read_lexical_block_scope, new_symbol): Update.
4350         * dbxread.c (process_one_symbol): Update.
4351         * coffread.c (coff_symtab_read, process_coff_symbol)
4352         (coff_read_enum_type): Update.
4353         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
4354         declare.
4355         (get_local_symbols, get_file_symbols, get_global_symbols): New
4356         functions.
4357         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
4358         m_global_symbols.
4359         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
4360         (~scoped_free_pendings): Update.
4361         (finish_block, prepare_for_building, reset_symtab_globals)
4362         (end_symtab_get_static_block, end_symtab_with_blockvector)
4363         (augment_type_symtab, push_context): Update.
4364         (get_local_symbols, get_file_symbols, get_global_symbols): New
4365         functions.
4366         (buildsym_init): Update.
4367
4368 2018-07-20  Tom Tromey  <tom@tromey.com>
4369
4370         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
4371         (process_full_type_unit): Likewise.
4372         (dwarf2_start_symtab): Set list_in_scope.
4373
4374 2018-07-20  Tom Tromey  <tom@tromey.com>
4375
4376         * dwarf2read.c (process_psymtab_comp_unit_reader)
4377         (build_type_psymtabs_reader): Do not set list_in_scope.
4378
4379 2018-07-20  Tom Tromey  <tom@tromey.com>
4380
4381         * buildsym.c (free_pendings): Remove.
4382         (add_symbol_to_list, scoped_free_pendings)
4383         (finish_block_internal, buildsym_init): Update.
4384
4385 2018-07-20  Tom Tromey  <tom@tromey.com>
4386
4387         * xcoffread.c (read_xcoff_symtab): Update.
4388         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
4389         Update.
4390         * dbxread.c (process_one_symbol): Update.
4391         * coffread.c (coff_symtab_read): Update.
4392         * buildsym.h (finish_block): Update.
4393         * buildsym.c (finish_block): Remove "listhead" argument.
4394         (end_symtab_get_static_block): Update.
4395
4396 2018-07-20  Tom Tromey  <tom@tromey.com>
4397
4398         * buildsym.h (class scoped_free_pendings): Remove constructor.
4399         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
4400         method.
4401         <m_pending_block_obstack, m_pending_blocks>: New members.
4402         (pending_block_obstack, pending_blocks): Remove.
4403         (scoped_free_pendings::scoped_free_pendings): Default.
4404         (~scoped_free_pendings): Update.
4405         (free_pending_blocks): Remove.
4406         (finish_block_internal, record_pending_block, make_blockvector)
4407         (end_symtab_get_static_block, augment_type_symtab, push_context)
4408         (buildsym_init): Update.
4409
4410 2018-07-20  Tom Tromey  <tom@tromey.com>
4411
4412         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
4413         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
4414         members.
4415         (pending_addrmap, pending_addrmap_obstack)
4416         (pending_addrmap_interesting): Remove.
4417         (scoped_free_pendings, record_block_range, make_blockvector)
4418         (prepare_for_building, reset_symtab_globals, buildsym_init):
4419         Update.
4420
4421 2018-07-20  Tom Tromey  <tom@tromey.com>
4422
4423         * xcoffread.c (process_linenos): Update.
4424         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
4425         * mdebugread.c (psymtab_to_symtab_1): Update.
4426         * dwarf2read.c (setup_type_unit_groups)
4427         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
4428         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
4429         * dbxread.c (process_one_symbol): Update.
4430         * coffread.c (coff_symtab_read, enter_linenos)
4431         (process_coff_symbol): Update.
4432         * buildsym.h (current_subfile): Don't declare.
4433         (get_current_subfile): Declare.
4434         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
4435         member.
4436         (start_subfile, free_buildsym_compunit, push_subfile)
4437         (prepare_for_building, start_symtab): Update.
4438         (get_current_subfile): New function.
4439
4440 2018-07-20  Tom Tromey  <tom@tromey.com>
4441
4442         * coffread.c (coff_symtab_read): Update.
4443         * xcoffread.c (read_xcoff_symtab): Update.
4444         * dwarf2read.c (new_symbol): Update.
4445         (read_func_scope, read_lexical_block_scope): Update.
4446         * dbxread.c (process_one_symbol): Update.
4447         * buildsym.h (context_stack, context_stack_depth): Don't declare.
4448         (outermost_context_p): Remove macro.
4449         (outermost_context_p, get_current_context_stack)
4450         (get_context_stack_depth): Declare.
4451         (pop_context): Return struct context_stack.
4452         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
4453         member.
4454         (context_stack_size): Remove.
4455         (INITIAL_CONTEXT_STACK_SIZE): Remove.
4456         (prepare_for_building, end_symtab_get_static_block)
4457         (augment_type_symtab, push_context): Update.
4458         (pop_context): Return struct context_stack.
4459         (outermost_context_p, get_current_context_stack)
4460         (get_context_stack_depth): New functions.
4461         (buildsym_init): Update.
4462
4463 2018-07-20  Tom Tromey  <tom@tromey.com>
4464
4465         * rust-exp.y: Now a pure parser.  Update all rules.
4466         (%union): Move earlier.
4467         (current_parser, work_obstack): Remove globals.
4468         (rust_parser, ~rust_parser): Update.
4469         (class rust_parser) <copy_name, concat3, crate_name, super_name,
4470         lex_character, lex_number, lex_string, lex_identifier,
4471         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
4472         convert_name, convert_params_to_expression,
4473         convert_ast_to_expression, ast_basic_type, ast_operation,
4474         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
4475         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
4476         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
4477         ast_array_type, ast_slice_type, ast_reference_type,
4478         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
4479         (rust_parse): Update.
4480         (rustyyerror, rustyylex): Add parser parameter.
4481         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
4482         (rust_lex_stringish_test, rust_lex_test_sequence)
4483         (rust_lex_test_trailing_dot, rust_lex_test_completion)
4484         (rust_lex_test_push_back, rust_lex_tests): Update.
4485
4486 2018-07-19  Pedro Alves  <palves@redhat.com>
4487
4488         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
4489         gdb::unique_xmalloc_ptr.
4490         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
4491         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
4492         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
4493         copy-initialization.
4494         * guile/scm-pretty-print.c (ppscm_print_children): Use
4495         gdb::unique_xmalloc_ptr instead of cleanups.
4496         (gdbscm_apply_val_pretty_printer): Remove cleanups.
4497         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
4498         gdb::unique_xmalloc_ptr.
4499         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
4500         Adjust to use gdb::unique_xmalloc_ptr.
4501         * guile/scm-utils.c (extract_arg): Adjust.
4502         * guile/scm-value.c (gdbscm_value_field): Adjust to use
4503         gdb::unique_xmalloc_ptr instead of a cleanup.
4504
4505 2018-07-19  Tom Tromey  <tom@tromey.com>
4506
4507         * utils.c (do_value_free_to_mark)
4508         (make_cleanup_value_free_to_mark): Remove.
4509         * utils.h (make_cleanup_value_free_to_mark): Remove.
4510
4511 2018-07-19  Pedro Alves  <palves@redhat.com>
4512
4513         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
4514         forwarding reference.
4515
4516 2018-07-18  Pedro Alves  <palves@redhat.com>
4517
4518         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
4519         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
4520         cleanup.
4521
4522 2018-07-18  Pedro Alves  <palves@redhat.com>
4523
4524         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
4525         exceptions.
4526         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
4527         (gdbscm_wrap): New.
4528         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
4529         directly instead of a cleanup.
4530         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
4531         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
4532         (vlscm_binop_gdbthrow): New, factored out from ...
4533         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
4534         (vlscm_rich_compare): Use gdbscm_wrap.
4535         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
4536         instead of a cleanup.
4537         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
4538         cleanup.
4539         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
4540         Use xfree directly instead of a cleanup.
4541         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
4542         Adjust to use gdbscm_wrap and scoped_value_mark.
4543         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
4544         (gdbscm_value_address, gdbscm_value_dereference)
4545         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
4546         scoped_value_mark.
4547         (gdbscm_value_dynamic_type): Use scoped_value_mark.
4548         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
4549         scoped_value_mark.
4550         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
4551         gdbscm_wrap and scoped_value_mark.
4552         (gdbscm_value_to_string): Use xfree directly instead of a
4553         cleanup.  Move 'buffer' unique_ptr to TRY scope.
4554         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
4555         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
4556         scoped_value_mark.
4557         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
4558         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
4559         scoped_value_mark.
4560         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
4561         gdbscm_wrap.
4562
4563 2018-07-18  Tom de Vries  <tdevries@suse.de>
4564
4565         * findvar.c (default_read_var_value): Also resolve dynamic type for
4566         LOC_OPTIMIZED_OUT vars.
4567
4568 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
4569
4570         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
4571         decoding.
4572
4573 2018-07-17  Tom Tromey  <tom@tromey.com>
4574
4575         * guile/scm-param.c (pascm_set_func, pascm_show_func)
4576         (compute_enum_list, pascm_set_param_value_x)
4577         (gdbscm_parameter_value): Update.
4578         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
4579         (gdbscm_scm_to_host_string): Update.
4580         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
4581         Update.
4582         * guile/scm-cmd.c (cmdscm_add_completion): Update.
4583         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
4584         * guile/scm-string.c (gdbscm_scm_to_string): Return
4585         unique_xmalloc_ptr.
4586         (gdbscm_scm_to_host_string): Likewise.
4587
4588 2018-07-17  Tom Tromey  <tom@tromey.com>
4589
4590         * guile/guile.c (gdbscm_eval_from_control_command): Update.
4591         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
4592         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
4593         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
4594         unique_xmalloc_ptr.
4595
4596 2018-07-17  Tom Tromey  <tom@tromey.com>
4597
4598         * guile/scm-param.c (pascm_signal_setshow_error): Update.
4599         * guile/guile-internal.h (gdbscm_exception_message_to_string):
4600         Update.
4601         * guile/scm-cmd.c (cmdscm_function): Update.
4602         * guile/scm-pretty-print.c
4603         (ppscm_print_exception_unless_memory_error): Update.
4604         * guile/scm-exception.c (gdbscm_exception_message_to_string):
4605         Return unique_xmalloc_ptr.
4606
4607 2018-07-17  Tom Tromey  <tom@tromey.com>
4608
4609         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
4610         Use string_printf.
4611
4612 2018-07-17  Jim Wilson  <jimw@sifive.com>
4613
4614         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
4615         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
4616         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
4617         unecessary braces after EF_RISCV_RVC test.  Delete call to
4618         set_gdbarch_decr_pc_after_break.
4619
4620         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
4621         RISCV_LAST_FP_REGNUM + 1.
4622         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
4623
4624 2018-07-17  Tom Tromey  <tom@tromey.com>
4625
4626         * configure.ac: Remove --disable-gdbcli.
4627         * configure: Rebuild.
4628         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
4629         (SUBDIR_CLI_CFLAGS): Remove.
4630         (SFILES): Use SUBDIR_CLI_SRCS.
4631         (COMMON_OBS): Use SUBDIR_CLI_OBS.
4632
4633 2018-07-17  Tom Tromey  <tom@tromey.com>
4634
4635         PR gdb/18624:
4636         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
4637
4638 2018-07-16  Jim Wilson  <jimw@sifive.com>
4639
4640         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
4641
4642 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
4643
4644         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
4645         variable.
4646         (libunwind_frame_sniffer): Likewise.
4647         (libunwind_frame_prev_register): Likewise.
4648         (libunwind_sigtramp_frame_sniffer): Likewise.
4649         * ia64-tdep.c (ia64_access_reg): Likewise.
4650         (ia64_access_rse_reg): Likewise.
4651         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
4652         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
4653
4654 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
4655
4656         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
4657
4658 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
4659
4660         * remote-sim.c (gdbsim_target::close,
4661         gdbsim_target::mourn_inferior): Remove unused variables.
4662
4663 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
4664
4665         * ia64-tdep.c (ktab_buf): New global.
4666         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
4667         (get_kernel_table): Adjust.
4668
4669 2018-07-16  Tom Tromey  <tom@tromey.com>
4670
4671         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
4672         * dwarf2read.c (using_directives, new_symbol): Use
4673         outermost_context_p.
4674         * dbxread.c (process_one_symbol): Use outermost_context_p.
4675         * coffread.c (coff_symtab_read): Use outermost_context_p.
4676
4677 2018-07-16  Tom Tromey  <tom@tromey.com>
4678
4679         * dwarf2read.c (using_directives, read_func_scope)
4680         (read_lexical_block_scope): Update.
4681         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
4682         * buildsym.h (local_using_directives, global_using_directives):
4683         Don't declare.
4684         (get_local_using_directives, set_local_using_directives)
4685         (get_global_using_directives): Declare.
4686         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
4687         m_global_using_directives>: New members.
4688         (finish_block_internal, prepare_for_building)
4689         (reset_symtab_globals, end_symtab_get_static_block)
4690         (push_context): Update.
4691         (get_local_using_directives, set_local_using_directives)
4692         (get_global_using_directives): New functions.
4693         (buildsym_init): Update.
4694
4695 2018-07-16  Tom Tromey  <tom@tromey.com>
4696
4697         * xcoffread.c (xcoff_initial_scan): Don't call
4698         free_pending_blocks.
4699         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
4700         * buildsym.h (class scoped_free_pendings): Add constructor.
4701         (free_pending_blocks): Don't declare.
4702         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
4703         (free_pending_blocks): Now static.
4704
4705 2018-07-16  Tom Tromey  <tom@tromey.com>
4706
4707         * buildsym.h (push_subfile, pop_subfile): Update declarations.
4708         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
4709         member.
4710         (struct subfile_stack): Remove.
4711         (subfile_stack): Remove.
4712         (push_subfile, pop_subfile, buildsym_init): Update.
4713
4714 2018-07-16  Tom Tromey  <tom@tromey.com>
4715
4716         * buildsym.c (push_subfile): Use gdb_assert.
4717         (pop_subfile): Use gdb_assert.
4718
4719 2018-07-16  Tom Tromey  <tom@tromey.com>
4720
4721         * buildsym.h (merge_symbol_lists): Remove.
4722         * buildsym.c (merge_symbol_lists): Remove.
4723
4724 2018-07-16  Tom Tromey  <tom@tromey.com>
4725
4726         * stabsread.c (scan_file_globals): Update comment.
4727         * stabsread.h (scan_file_globals): Move from buildsym.h.
4728         * buildsym.h (scan_file_globals): Move to stabsread.h.
4729
4730 2018-07-16  Tom Tromey  <tom@tromey.com>
4731
4732         * xcoffread.c (xcoff_new_init): Update.
4733         * mipsread.c (mipscoff_new_init): Update.
4734         * mdebugread.c (mdebug_build_psymtabs): Update.
4735         * elfread.c (elf_new_init): Update.
4736         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
4737         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
4738         * buildsym.h (buildsym_new_init): Don't declare.
4739         * buildsym.c (buildsym_new_init): Remove.
4740
4741 2018-07-16  Tom Tromey  <tom@tromey.com>
4742
4743         * stabsread.h (within_function): Move from buildsym.h.
4744         * stabsread.c (start_stabs): Clear within_function.
4745         * coffread.c (coff_start_symtab): Clear within_function.
4746         * buildsym.h (within_function): Move to stabsread.h.
4747         * buildsym.c (prepare_for_building): Update.
4748
4749 2018-07-16  Tom Tromey  <tom@tromey.com>
4750
4751         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
4752         * dwarf2read.c (dwarf2_start_symtab): Don't set
4753         processing_gcc_compilation.
4754         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
4755
4756 2018-07-16  Tom Tromey  <tom@tromey.com>
4757
4758         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
4759         (next_symbol_text_func): Move from buildsym.h.
4760         * stabsread.c (hashname): Move from buildsym.c.
4761         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
4762         (next_symbol_text_func, hashname): Move to stabsread.h.
4763         * buildsym.c: Don't include bcache.h
4764         (hashname): Move to stasbread.c.
4765
4766 2018-07-16  Tom Tromey  <tom@tromey.com>
4767
4768         * buildsym.h (context_stack_size): Don't declare.
4769         * buildsym.c (context_stack_size): New global.
4770
4771 2018-07-16  Tom Tromey  <tom@tromey.com>
4772
4773         * dbxread.c (processing_acc_compilation): New global.
4774         * buildsym.h (processing_acc_compilation): Don't declare.
4775
4776 2018-07-16  Tom Tromey  <tom@tromey.com>
4777
4778         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
4779         * dbxread.c (read_ofile_symtab): Update.
4780         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
4781         * buildsym.h (last_source_start_addr): Remove.
4782         (set_last_source_start_addr, get_last_source_start_addr):
4783         Declare.
4784         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
4785         parameter.
4786         (struct buildsym_compunit) <m_last_source_start_addr>: New
4787         member.
4788         (prepare_for_building): Remove start_addr parameter.
4789         (start_symtab, restart_symtab, end_symtab_get_static_block)
4790         (end_symtab_with_blockvector): Update.
4791         (set_last_source_start_addr, get_last_source_start_addr): New
4792         functions.
4793
4794 2018-07-16  Tom Tromey  <tom@tromey.com>
4795
4796         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
4797         member.
4798         (have_line_numbers): Remove.
4799         (record_line, prepare_for_building, end_symtab_get_static_block)
4800         (augment_type_symtab): Update.
4801
4802 2018-07-16  Tom Tromey  <tom@tromey.com>
4803
4804         * buildsym.c (~buildsym_compunit): Free the macro table.
4805         (struct buildsym_compunit) <get_macro_table, release_macros>: New
4806         methods.
4807         <m_pending_macros>: New member.
4808         (pending_macros): Remove.
4809         (~scoped_free_pendings, get_macro_table, prepare_for_building)
4810         (reset_symtab_globals, end_symtab_get_static_block)
4811         (end_symtab_with_blockvector, augment_type_symtab)
4812         (buildsym_init): Update.
4813
4814 2018-07-16  Tom Tromey  <tom@tromey.com>
4815
4816         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
4817         parameter.
4818         (buildsym_compunit::set_last_source_file): New method.
4819         <m_last_source_file>: New member.
4820         (prepare_for_building): Remove "name" parameter.
4821         (start_symtab, restart_symtab, reset_symtab_globals): Update.
4822         (last_source_file): Remove.
4823         (set_last_source_file, get_last_source_file): Update.
4824
4825 2018-07-16  Tom Tromey  <tom@tromey.com>
4826
4827         * buildsym.c (prepare_for_building): Add assert.
4828
4829 2018-07-16  Tom Tromey  <tom@tromey.com>
4830
4831         * buildsym.c (~buildsym_compunit): Update.
4832         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
4833         (start_subfile, patch_subfile_names)
4834         (end_symtab_with_blockvector): Update.
4835
4836 2018-07-16  Tom Tromey  <tom@tromey.com>
4837
4838         * buildsym.c (struct buildsym_compunit): Add constructor,
4839         destructor, initializers.
4840         (start_buildsym_compunit): Remove.
4841         (free_buildsym_compunit): Use "delete".
4842         (start_symtab, restart_symtab): Use "new".
4843
4844 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
4845
4846         * symfile.c (set_objfile_default_section_offset): Remove struct
4847         keyword.
4848
4849 2018-07-14  Stafford Horne  <shorne@gmail.com>
4850
4851         * (Responsible Maintainers): Add myself as or1k maintainer.
4852
4853 2018-07-13  Tom Tromey  <tom@tromey.com>
4854
4855         * symfile.c (set_objfile_default_section_offset): Use extra braces
4856         around initializer.
4857
4858 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
4859
4860         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
4861         non-branching basr.
4862
4863 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4864
4865         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
4866         unittests/cli-utils-selftests.c
4867         * unittests/cli-utils-selftests.c: New file.
4868
4869 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4870
4871         * NEWS: Mention new commands. Mention change to 'thread apply'.
4872
4873 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4874
4875         * thread.c (thr_try_catch_cmd): New function.
4876         (thread_apply_all_command): Handle qcs flags.
4877         (thread_apply_command): Handle qcs flags.
4878         (taas_command): New function.
4879         (tfaas_command): New function.
4880         (_initialize_thread): Update to setup the new commands 'taas
4881         and 'tfaas'. Change doc string for 'thread apply'.
4882
4883 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4884
4885         * stack.c: (trailing_outermost_frame): New function, mostly
4886         extracted from backtrace_command_1.
4887         (leading_innermost_frame): New function.
4888         (backtrace_command_1): Update to call trailing_outermost_frame.
4889         (frame_apply_command_count): New function.
4890         (frame_apply_level_command): New function.
4891         (frame_apply_all_command): New function.
4892         (frame_apply_command): New function.
4893         (faas_command): New function.
4894         (frame_cmd_list): New variable.
4895         (_initialize_stack): Update to setup the new commands 'frame apply'
4896         and 'faas'.
4897
4898 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4899
4900         * cli-utils.c (number_or_range_parser::get_number): Only handle
4901         numbers or convenience var as numbers.
4902         (parse_flags): New function.
4903         (parse_flags_qcs): New function.
4904         (number_or_range_parser::finished): Ensure parsing end is detected
4905         before end of string.
4906         * cli-utils.h (parse_flags): New function.
4907         (parse_flags_qcs): New function.
4908         (number_or_range_parser): Remove m_finished bool.
4909         (number_or_range_parser::skip_range): Set m_in_range to false.
4910
4911 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
4912
4913         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
4914         on Windows.
4915
4916 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
4917             Jan Kratochvil  <jan.kratochvil@redhat.com>
4918             Paul Fertser  <fercerpav@gmail.com>
4919             Tsutomu Seki  <sekiriki@gmail.com>
4920             Pedro Alves  <palves@redhat.com>
4921
4922         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
4923         'unittests/parse-connection-spec-selftests.c'.
4924         (COMMON_SFILES): Add 'common/netstuff.c'.
4925         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
4926         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
4927         * common/netstuff.c: New file.
4928         * common/netstuff.h: New file.
4929         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
4930         (wait_for_connect): Update comment.  New parameter
4931         'gdb::optional<int> sock' instead of 'struct serial *scb'.
4932         Use 'sock' directly instead of 'scb->fd'.
4933         (try_connect): New function, with code from 'net_open'.
4934         (net_open): Rewrite main loop to deal with multiple
4935         sockets/addresses.  Handle IPv6-style hostnames; implement
4936         support for IPv6 connections.
4937         * unittests/parse-connection-spec-selftests.c: New file.
4938
4939 2018-07-11  Pedro Alves  <palves@redhat.com>
4940
4941         PR gdb/23377
4942         * remote.c (remote_target::remote_detach_pid): Call
4943         set_current_process.
4944
4945 2018-07-11  Pedro Alves  <palves@redhat.com>
4946
4947         * h8300-tdep.c (h8300_gdbarch_init): Remove
4948         set_gdbarch_ecoff_reg_to_regnum calls.
4949
4950 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
4951
4952         PR c++/23373
4953         * c-typeprint.c (c_type_print_base_struct_union): Don't print
4954         offsets/sizes for static members of a class/struct.
4955
4956 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
4957
4958         * target-descriptions.c (tdesc_register_bitsize): Rename.
4959         * target-descriptions.h (tdesc_register_bitsize): Likewise.
4960         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
4961         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
4962
4963 2018-07-10  Tom Tromey  <tom@tromey.com>
4964
4965         * breakpoint.c (moribund_locations): Now static and a
4966         std::vector.
4967         (breakpoint_init_inferior, moribund_breakpoint_here_p)
4968         (build_bpstat_chain, update_global_location_list)
4969         (breakpoint_retire_moribund): Update.
4970         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
4971         VEC.
4972
4973 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
4974
4975         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
4976         (riscv_register_reggroup_p): Use new function, remove unneeded
4977         parenthesis.
4978         (riscv_push_dummy_call): Extend assert to compare against xlen or
4979         flen based on register type.
4980
4981 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
4982
4983         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
4984
4985 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4986
4987         * remote.c (show_hardware_watchpoint_limit): New function.
4988         (show_hardware_watchpoint_length_limit): New function.
4989         (show_hardware_breakpoint_limit): New function.
4990         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
4991         where appropriate, update help text.
4992
4993 2018-07-09  Tom Tromey  <tom@tromey.com>
4994
4995         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
4996         (CLIBS): Don't mention NAT_CLIBS.
4997
4998 2018-07-09  Tom Tromey  <tom@tromey.com>
4999
5000         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
5001         (LIBGDB_OBS, clean mostlyclean): Update.
5002         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
5003
5004 2018-07-09  Tom Tromey  <tom@tromey.com>
5005
5006         * Makefile.in (%.c: %.y): Use ECHO_YACC.
5007         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
5008         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
5009
5010 2018-07-09  Tom Tromey  <tom@tromey.com>
5011
5012         * Makefile.in (ALLDEPFILES): Remove exec.c.
5013         (COMMON_OBS): Remove exec.o.
5014         (COMMON_SFILES): Add exec.c.
5015
5016 2018-07-09  Tom Tromey  <tom@tromey.com>
5017
5018         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
5019
5020 2018-07-09  Tom Tromey  <tom@tromey.com>
5021
5022         * Makefile.in (clean mostlyclean): Remove stamp-version.
5023         (version.c): Depend on stamp-version.
5024         (stamp-version): New rule, from version.c rule.
5025
5026 2018-07-09  Tom Tromey  <tom@tromey.com>
5027
5028         * Makefile.in (init.c): Depend on stamp-init.
5029         (stamp-init): New rule, from init.c rule.
5030         (clean mostlyclean): Remove stamp-init.
5031
5032 2018-07-09  Tom Tromey  <tom@tromey.com>
5033
5034         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
5035         SUBDIR_GCC_COMPILE_SRCS.
5036
5037 2018-07-09  Tom Tromey  <tom@tromey.com>
5038
5039         * Makefile.in (init.c): Remove some unused sed rules.
5040
5041 2018-07-09  Tom Tromey  <tom@tromey.com>
5042
5043         * Makefile.in (TSOBS): Remove.
5044         (INIT_FILES): Update.
5045         (LIBGDB_OBS): Update.
5046         (COMMON_SFILES): Add inflow.c.
5047         (SFILES): Remove inflow.c.
5048
5049 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
5050
5051         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
5052
5053 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
5054
5055         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
5056         get_saveloc_name, is_signal_frame_name, step_name,
5057         init_remote_name, create_addr_space_name,
5058         destroy_addr_space_name, search_unwind_table_name,
5059         find_dyn_list_name): Constify.
5060
5061 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
5062
5063         * darwin-nat.c (darwin_pthread_kill): New function.
5064         (darwin_resume_thread): Use darwin_pthread_kill.
5065
5066 2018-07-05  Tom de Vries  <tdevries@suse.de>
5067
5068         * macroexp.c (macro_buffer) <operator=>: New member function.
5069
5070 2018-07-04  Tom Tromey  <tom@tromey.com>
5071
5072         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
5073
5074 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
5075
5076         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
5077         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
5078         * maint.c: Likewise.
5079         * top.c: Likewise.
5080
5081 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5082
5083         * NEWS: Create a new section for the next release branch.
5084         Rename the section of the current branch, now that it has
5085         been cut.
5086
5087 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5088
5089         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
5090         * version.in: Bump version to 8.2.50.DATE-git.
5091
5092 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
5093             Pedro Alves  <palves@redhat.com>
5094
5095         * linux-nat.c (linux_init_ptrace): Rename to ...
5096         (linux_init_ptrace_procfs): ... this.  Call
5097         linux_proc_init_warnings.
5098         (linux_nat_target::post_attach)
5099         (linux_nat_target::post_startup_inferior): Adjust.
5100         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
5101         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
5102
5103 2018-07-04  Tom de Vries  <tdevries@suse.de>
5104
5105         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
5106         check ...
5107         (read_comp_unit_head): ... here.
5108
5109 2018-07-03  Tom Tromey  <tom@tromey.com>
5110
5111         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
5112         (stop_tracing, tstatus_command)
5113         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
5114         (print_one_static_tracepoint_marker): Update.
5115         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
5116         std::vector.
5117         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
5118         VEC.
5119         (all_tracepoints, static_tracepoints_here): Return std::vector.
5120
5121 2018-07-03  Tom Tromey  <tom@tromey.com>
5122
5123         * common/ptid.c (ptid_equal): Remove.
5124         * common/ptid.h (ptid_equal): Don't declare.
5125         * ada-tasks.c: Update.
5126         * breakpoint.c: Update.
5127         * common/agent.c: Update.
5128         * corelow.c: Update.
5129         * darwin-nat-info.c: Update.
5130         * darwin-nat.c: Update.
5131         * dcache.c: Update.
5132         * dtrace-probe.c: Update.
5133         * dummy-frame.c: Update.
5134         * fbsd-nat.c: Update.
5135         * frame.c: Update.
5136         * gdbthread.h: Update.
5137         * gnu-nat.c: Update.
5138         * go32-nat.c: Update.
5139         * inf-loop.c: Update.
5140         * inf-ptrace.c: Update.
5141         * infcall.c: Update.
5142         * infcmd.c: Update.
5143         * inflow.c: Update.
5144         * infrun.c: Update.
5145         * linux-fork.c: Update.
5146         * linux-nat.c: Update.
5147         * linux-thread-db.c: Update.
5148         * mi/mi-cmd-var.c: Update.
5149         * mi/mi-interp.c: Update.
5150         * mi/mi-main.c: Update.
5151         * nto-procfs.c: Update.
5152         * ppc-linux-tdep.c: Update.
5153         * procfs.c: Update.
5154         * python/py-inferior.c: Update.
5155         * python/py-record-btrace.c: Update.
5156         * python/py-record.c: Update.
5157         * ravenscar-thread.c: Update.
5158         * regcache.c: Update.
5159         * remote-sim.c: Update.
5160         * remote.c: Update.
5161         * sol-thread.c: Update.
5162         * solib.c: Update.
5163         * target.c: Update.
5164         * tui/tui-stack.c: Update.
5165         * varobj.c: Update.
5166         * windows-nat.c: Update.
5167         * windows-tdep.c: Update.
5168
5169 2018-07-03  Tom Tromey  <tom@tromey.com>
5170
5171         * common/ptid.c (ptid_match): Remove.
5172         * common/ptid.h (ptid_match): Don't declare.
5173         * fbsd-nat.c: Update.
5174         * infcmd.c: Update.
5175         * infrun.c: Update.
5176         * linux-nat.c: Update.
5177         * record-btrace.c: Update.
5178         * regcache.c: Update.
5179         * remote.c: Update.
5180
5181 2018-07-03  Tom Tromey  <tom@tromey.com>
5182
5183         * common/ptid.c (ptid_tid_p): Remove.
5184         * common/ptid.h (ptid_tid_p): Don't declare.
5185         * sol-thread.c: Update.
5186
5187 2018-07-03  Tom Tromey  <tom@tromey.com>
5188
5189         * common/ptid.c (ptid_lwp_p): Remove.
5190         * common/ptid.h (ptid_lwp_p): Don't declare.
5191         * fbsd-nat.c: Update.
5192         * linux-nat.c: Update.
5193         * nat/linux-procfs.c: Update.
5194         * nat/x86-linux-dregs.c: Update.
5195         * sol-thread.c: Update.
5196
5197 2018-07-03  Tom Tromey  <tom@tromey.com>
5198
5199         * common/ptid.c (ptid_is_pid): Remove.
5200         * common/ptid.h (ptid_is_pid): Don't declare.
5201         * infrun.c: Update.
5202         * linux-nat.c: Update.
5203         * mi/mi-interp.c: Update.
5204         * remote.c: Update.
5205         * thread.c: Update.
5206
5207 2018-07-03  Tom Tromey  <tom@tromey.com>
5208
5209         * common/ptid.c (ptid_get_tid): Remove.
5210         * common/ptid.h (ptid_get_tid): Don't declare.
5211         * ada-tasks.c: Update.
5212         * aix-thread.c: Update.
5213         * bsd-uthread.c: Update.
5214         * darwin-nat.c: Update.
5215         * fbsd-nat.c: Update.
5216         * i386-darwin-nat.c: Update.
5217         * infrun.c: Update.
5218         * linux-tdep.c: Update.
5219         * nto-procfs.c: Update.
5220         * ppc-ravenscar-thread.c: Update.
5221         * python/py-infthread.c: Update.
5222         * ravenscar-thread.c: Update.
5223         * sol-thread.c: Update.
5224         * sparc-ravenscar-thread.c: Update.
5225         * windows-nat.c: Update.
5226
5227 2018-07-03  Tom Tromey  <tom@tromey.com>
5228
5229         * common/ptid.c (ptid_get_lwp): Remove.
5230         * common/ptid.h (ptid_get_lwp): Don't declare.
5231         * aarch64-linux-nat.c: Update.
5232         * ada-tasks.c: Update.
5233         * aix-thread.c: Update.
5234         * amd64-linux-nat.c: Update.
5235         * arm-linux-nat.c: Update.
5236         * corelow.c: Update.
5237         * fbsd-nat.c: Update.
5238         * fbsd-tdep.c: Update.
5239         * gnu-nat.c: Update.
5240         * i386-cygwin-tdep.c: Update.
5241         * i386-gnu-nat.c: Update.
5242         * i386-linux-nat.c: Update.
5243         * ia64-linux-nat.c: Update.
5244         * inf-ptrace.c: Update.
5245         * infrun.c: Update.
5246         * linux-fork.c: Update.
5247         * linux-nat.c: Update.
5248         * linux-tdep.c: Update.
5249         * linux-thread-db.c: Update.
5250         * mips-linux-nat.c: Update.
5251         * nat/aarch64-linux-hw-point.c: Update.
5252         * nat/aarch64-linux.c: Update.
5253         * nat/linux-btrace.c: Update.
5254         * nat/linux-osdata.c: Update.
5255         * nat/linux-procfs.c: Update.
5256         * nat/x86-linux-dregs.c: Update.
5257         * obsd-nat.c: Update.
5258         * ppc-fbsd-nat.c: Update.
5259         * ppc-linux-nat.c: Update.
5260         * procfs.c: Update.
5261         * python/py-infthread.c: Update.
5262         * ravenscar-thread.c: Update.
5263         * remote.c: Update.
5264         * s390-linux-nat.c: Update.
5265         * sol-thread.c: Update.
5266         * sol2-tdep.c: Update.
5267         * spu-linux-nat.c: Update.
5268         * x86-linux-nat.c: Update.
5269         * xtensa-linux-nat.c: Update.
5270
5271 2018-07-03  Tom Tromey  <tom@tromey.com>
5272
5273         * common/ptid.c (ptid_get_pid): Remove.
5274         * common/ptid.h (ptid_get_pid): Don't declare.
5275         * aarch64-linux-nat.c: Update.
5276         * ada-lang.c: Update.
5277         * aix-thread.c: Update.
5278         * alpha-bsd-nat.c: Update.
5279         * amd64-fbsd-nat.c: Update.
5280         * amd64-linux-nat.c: Update.
5281         * arm-linux-nat.c: Update.
5282         * arm-nbsd-nat.c: Update.
5283         * auxv.c: Update.
5284         * break-catch-syscall.c: Update.
5285         * breakpoint.c: Update.
5286         * bsd-uthread.c: Update.
5287         * corelow.c: Update.
5288         * ctf.c: Update.
5289         * darwin-nat.c: Update.
5290         * fbsd-nat.c: Update.
5291         * fbsd-tdep.c: Update.
5292         * gcore.c: Update.
5293         * gnu-nat.c: Update.
5294         * hppa-nbsd-nat.c: Update.
5295         * hppa-obsd-nat.c: Update.
5296         * i386-fbsd-nat.c: Update.
5297         * ia64-linux-nat.c: Update.
5298         * inf-ptrace.c: Update.
5299         * infcmd.c: Update.
5300         * inferior.c: Update.
5301         * inferior.h: Update.
5302         * inflow.c: Update.
5303         * infrun.c: Update.
5304         * linux-fork.c: Update.
5305         * linux-nat.c: Update.
5306         * linux-tdep.c: Update.
5307         * linux-thread-db.c: Update.
5308         * m68k-bsd-nat.c: Update.
5309         * mi/mi-interp.c: Update.
5310         * mi/mi-main.c: Update.
5311         * mips-linux-nat.c: Update.
5312         * mips-nbsd-nat.c: Update.
5313         * mips64-obsd-nat.c: Update.
5314         * nat/aarch64-linux-hw-point.c: Update.
5315         * nat/aarch64-linux.c: Update.
5316         * nat/linux-btrace.c: Update.
5317         * nat/linux-osdata.c: Update.
5318         * nat/linux-procfs.c: Update.
5319         * nat/x86-linux-dregs.c: Update.
5320         * nto-procfs.c: Update.
5321         * obsd-nat.c: Update.
5322         * ppc-linux-nat.c: Update.
5323         * ppc-nbsd-nat.c: Update.
5324         * ppc-obsd-nat.c: Update.
5325         * proc-service.c: Update.
5326         * procfs.c: Update.
5327         * python/py-inferior.c: Update.
5328         * python/py-infthread.c: Update.
5329         * ravenscar-thread.c: Update.
5330         * record.c: Update.
5331         * remote-sim.c: Update.
5332         * remote.c: Update.
5333         * rs6000-nat.c: Update.
5334         * s390-linux-nat.c: Update.
5335         * sh-nbsd-nat.c: Update.
5336         * sol-thread.c: Update.
5337         * sparc-nat.c: Update.
5338         * sparc64-tdep.c: Update.
5339         * spu-linux-nat.c: Update.
5340         * spu-tdep.c: Update.
5341         * target-debug.h: Update.
5342         * target.c: Update.
5343         * thread.c: Update.
5344         * tid-parse.c: Update.
5345         * tracefile-tfile.c: Update.
5346         * vax-bsd-nat.c: Update.
5347         * windows-nat.c: Update.
5348         * x86-linux-nat.c: Update.
5349         * x86-nat.c: Update.
5350
5351 2018-07-03  Tom Tromey  <tom@tromey.com>
5352
5353         * common/ptid.c (pid_to_ptid): Remove.
5354         * common/ptid.h (pid_to_ptid): Don't declare.
5355         * aix-thread.c: Update.
5356         * arm-linux-nat.c: Update.
5357         * common/ptid.c: Update.
5358         * common/ptid.h: Update.
5359         * corelow.c: Update.
5360         * ctf.c: Update.
5361         * darwin-nat.c: Update.
5362         * fbsd-nat.c: Update.
5363         * fork-child.c: Update.
5364         * gnu-nat.c: Update.
5365         * go32-nat.c: Update.
5366         * inf-ptrace.c: Update.
5367         * infcmd.c: Update.
5368         * inferior.c: Update.
5369         * infrun.c: Update.
5370         * linux-fork.c: Update.
5371         * linux-nat.c: Update.
5372         * nat/aarch64-linux-hw-point.c: Update.
5373         * nat/fork-inferior.c: Update.
5374         * nat/x86-linux-dregs.c: Update.
5375         * nto-procfs.c: Update.
5376         * obsd-nat.c: Update.
5377         * procfs.c: Update.
5378         * progspace.c: Update.
5379         * remote.c: Update.
5380         * rs6000-nat.c: Update.
5381         * s390-linux-nat.c: Update.
5382         * sol-thread.c: Update.
5383         * spu-linux-nat.c: Update.
5384         * target.c: Update.
5385         * top.c: Update.
5386         * tracefile-tfile.c: Update.
5387         * windows-nat.c: Update.
5388
5389 2018-07-03  Tom Tromey  <tom@tromey.com>
5390
5391         * common/ptid.h (ptid_build): Don't declare.
5392         * common/ptid.c (ptid_build): Remove.
5393         * aix-thread.c: Update.
5394         * bsd-kvm.c: Update.
5395         * bsd-uthread.c: Update.
5396         * common/agent.c: Update.
5397         * common/ptid.c: Update.
5398         * common/ptid.h: Update.
5399         * corelow.c: Update.
5400         * darwin-nat.c: Update.
5401         * fbsd-nat.c: Update.
5402         * gnu-nat.c: Update.
5403         * linux-fork.c: Update.
5404         * linux-nat.c: Update.
5405         * linux-thread-db.c: Update.
5406         * nat/linux-osdata.c: Update.
5407         * nat/linux-procfs.c: Update.
5408         * nto-procfs.c: Update.
5409         * obsd-nat.c: Update.
5410         * proc-service.c: Update.
5411         * procfs.c: Update.
5412         * ravenscar-thread.c: Update.
5413         * remote-sim.c: Update.
5414         * remote.c: Update.
5415         * sol-thread.c: Update.
5416         * target.c: Update.
5417         * windows-nat.c: Update.
5418
5419 2018-07-03  Tom Tromey  <tom@tromey.com>
5420
5421         * infrun.c (follow_exec): Use exit_inferior_silent.
5422         * inferior.c (exit_inferior_num_silent): Remove.
5423         * inferior.h (exit_inferior_num_silent): Don't declare.
5424
5425 2018-07-03  Tom Tromey  <tom@tromey.com>
5426
5427         PR cli/23340:
5428         * darwin-nat.c (darwin_attach_pid): Reset inferior and
5429         inferior_ptid on error.
5430
5431 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
5432             Simon Marchi  <simon.marchi@polymtl.ca>
5433
5434         PR tdep/8282
5435         * disasm.h (gdb_disassembler): Add
5436         `m_disassembler_options_holder'. member
5437         * disasm.c (get_all_disassembler_options): New function.
5438         (gdb_disassembler::gdb_disassembler): Use it.
5439         (gdb_buffered_insn_length_init_dis): Likewise.
5440         (gdb_buffered_insn_length): Adjust accordingly.
5441         (set_disassembler_options): Handle options with arguments.
5442         (show_disassembler_options_sfunc): Likewise.  Add a leading new
5443         line if showing options with descriptions.
5444         (disassembler_options_completer): Adapt to using the
5445         `disasm_options_and_args_t' structure.
5446         * mips-tdep.c (mips_disassembler_options): New variable.
5447         (mips_disassembler_options_o32): Likewise.
5448         (mips_disassembler_options_n32): Likewise.
5449         (mips_disassembler_options_n64): Likewise.
5450         (gdb_print_insn_mips): Don't set `disassembler_options'.
5451         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
5452         functions.
5453         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
5454         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
5455         `gdbarch_disassembler_options_implicit' and
5456         `gdbarch_valid_disassembler_options'.
5457         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
5458         `disasm_options_and_args_t' structure.
5459         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
5460         method.
5461         (valid_disassembler_options): Switch from `disasm_options_t' to
5462         the `disasm_options_and_args_t' structure.
5463         * NEWS: Document `set disassembler-options' support for the MIPS
5464         target.
5465         * gdbarch.h: Regenerate.
5466         * gdbarch.c: Regenerate.
5467
5468 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
5469
5470         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
5471
5472 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
5473
5474         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
5475         parameter in call to amd64_target_description.
5476         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
5477         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
5478         (amd64fbsd_init_abi): Likewise.
5479         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
5480         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
5481         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
5482         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
5483
5484 2018-06-29  Pedro Alves  <palves@redhat.com>
5485
5486         * gdb/amd64-tdep.h (amd64_create_target_description): Add
5487         "segments" parameter.
5488         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
5489         (_initialize_amd64_tdep): Update call to
5490         amd64_create_target_description.
5491         (amd64_target_description): Add "segments" parameter.  Adjust
5492         the implementation to use it.
5493         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
5494         call to amd64_create_target_description.
5495         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
5496         * gdb/arch/amd64.h (amd64_create_target_description): Add
5497         "segments" register.
5498         * gdb/arch/amd64.c (amd64_create_target_description): Add
5499         "segments" parameter.  Call create_feature_i386_64bit_segments
5500         only if SEGMENTS is true.
5501         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
5502         call to amd64_create_target_description.
5503
5504 2018-06-29  Pedro Alves  <palves@redhat.com>
5505
5506         * thread.c (thread_target_id_str): New, factored out from ...
5507         (print_thread_info_1): ... here.  Use it to compute the max
5508         "Target Id" column width.
5509
5510 2018-06-29  Pedro Alves  <palves@redhat.com>
5511
5512         * remote.c (remote_target::extra_thread_info): Delete
5513         'display_buf' and 'n' locals.  from the cache, regardless of
5514         packet mechanims is in use.  Use cache for qThreadExtra and qP
5515         methods too.
5516
5517 2018-06-29  Pedro Alves  <palves@redhat.com>
5518
5519         * blockframe.c (find_pc_sect_containing_function): New function.
5520         * breakpoint.c (print_breakpoint_location): Don't call
5521         find_pc_sect_function.
5522         * linespec.c (create_sals_line_offset): Record the location's
5523         symbol in the sal.
5524         * linespec.c (convert_address_location_to_sals): Fill in sal's
5525         symbol with find_pc_sect_containing_function.
5526         * symtab.c (find_function_start_sal): Rename to ...
5527         (find_function_start_sal_1): ... this.
5528         (find_function_start_sal): Reimplement as wrapper around
5529         find_function_start_sal_1, and use
5530         find_pc_sect_containing_function to fill in the sal's symbol.
5531         (find_function_start_sal(symbol*, bool)): Adjust.
5532         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
5533         comments.
5534         (find_pc_sect_containing_function): Declare.
5535
5536 2018-06-29  Pedro Alves  <palves@redhat.com>
5537
5538         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
5539         true if the the location has no symbol.
5540
5541 2018-06-28  Tom Tromey  <tom@tromey.com>
5542
5543         * NEWS: Mention --enable-codesign.
5544         * silent-rules.mk (ECHO_SIGN): New variable.
5545         * configure.ac: Add --enable-codesign.
5546         * configure: Rebuild.
5547         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
5548         (gdb$(EXEEXT)): Optionally invoke codesign.
5549
5550 2018-06-28  Pedro Alves  <palves@redhat.com>
5551
5552         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
5553         comments.
5554         (switch_to_thread_no_regs): Adjust comment.
5555         * infcmd.c (stop_pc): Delete.
5556         (post_create_inferior, info_program_command): Replace references
5557         to stop_pc with references to thread_info->suspend.stop_pc.
5558         * inferior.h (stop_pc): Delete declaration.
5559         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
5560         (handle_inferior_event_1, handle_signal_stop)
5561         (process_event_stop_test, keep_going_stepped_thread)
5562         (handle_step_into_function, handle_step_into_function_backward)
5563         (print_stop_location): Replace references to stop_pc with
5564         references to thread_info->suspend.stop_pc.
5565         (struct infcall_suspend_state) <stop_pc>: Delete field.
5566         (save_infcall_suspend_state, restore_infcall_suspend_state):
5567         Remove references to inf_stat->stop_pc.
5568         * linux-fork.c (fork_load_infrun_state): Likewise.
5569         * record-btrace.c (record_btrace_set_replay): Likewise.
5570         * record-full.c (record_full_goto_entry): Likewise.
5571         * remote.c (print_one_stopped_thread): Likewise.
5572         * target.c (target_resume): Extend comment.
5573         * thread.c (set_executing_thread): New.
5574         (set_executing): Use it.
5575         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
5576         Remove references to stop_pc.
5577
5578 2018-06-28  Pedro Alves  <palves@redhat.com>
5579
5580         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
5581         Moving fetching stop_pc until after ecs->event_thread is refreshed.
5582
5583 2018-06-28  Tom Tromey  <tom@tromey.com>
5584
5585         * coffread.c (coff_symfile_finish): Update.
5586         * xcoffread.c (xcoff_symfile_finish): Update.
5587         * elfread.c (elf_symfile_finish): Update.
5588         * symfile.h (dwarf2_free_objfile): Don't declare.
5589         * dwarf2read.c (_initialize_dwarf2_read): Use
5590         register_objfile_data_with_cleanup.
5591         (dwarf2_free_objfile): Now static.  Change signature.
5592
5593 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5594
5595         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
5596         option "-o" to add-symbol-file-load to add an offset to each
5597         section's load address.
5598         * symfile.c (set_objfile_default_section_offset): New function.
5599
5600 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5601
5602         * symfile.c (add_symbol_file_command): Make sure that sections
5603         with the same name are sorted in the same order.
5604
5605 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5606
5607         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
5608         require the second argument.  If omitted, load sections at the
5609         addresses specified in the file.
5610
5611 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5612
5613         * symfile.c (symbol_file_command, symbol_file_add_main_1)
5614         (_initialize_symfile): Add option "-o" to symbol-file to add an
5615         offset to each section of the symbol file.
5616
5617 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5618
5619         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
5620
5621 2018-06-27  Tom Tromey  <tom@tromey.com>
5622
5623         * stack.c (_initialize_stack): Update "func" help text.
5624
5625 2018-06-27  Tom Tromey  <tom@tromey.com>
5626
5627         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
5628         std::vector.
5629         (unwind_infopy_str, pyuw_create_unwind_info)
5630         (unwind_infopy_add_saved_register, pyuw_sniffer)
5631         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
5632         Update.
5633         (struct saved_reg): Add constructor.
5634         <value>: Now a gdbpy_ref<>.
5635
5636 2018-06-27  Tom Tromey  <tom@tromey.com>
5637
5638         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
5639
5640 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5641
5642         * gdb-gdb.py.in: Format using autopep8.
5643
5644 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5645
5646         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
5647         (type_lookup_function): Recognize CORE_ADDR values.
5648
5649 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5650
5651         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
5652         print tag_name.
5653
5654 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5655
5656         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
5657         <__lt__>: Add.
5658
5659 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5660
5661         * gdb-gdb.py: Move to...
5662         * gdb-gdb.py.in: ... here.
5663         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
5664         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
5665         dependencies.
5666         (distclean): Remove gdb-gdb.py when cleaning.
5667         (gdb-gdb.py, gdb-gdb.gdb): New rules.
5668         * configure: Re-generate.
5669
5670 2018-06-27  Pedro Alves  <palves@redhat.com>
5671
5672         * proc-service.c (get_ps_regcache): New.
5673         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
5674         (ps_lsetfpregs): Use it.
5675
5676 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
5677
5678         PR gdb/21695
5679         * dwarf2read.c (lnp_state_machine::check_line_address): Update declaration.
5680         (dwarf_decode_lines_1): Adjust.
5681
5682 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5683
5684         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
5685         override.
5686         <info_proc>: Likewise.
5687
5688 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
5689
5690         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
5691         to windows_fetch_one_register, and only handle the case of
5692         fetching one register.  Move the code that reloads the context
5693         and iterates over all registers if R is negative to...
5694         (windows_nat_target::fetch_registers): ... here.
5695         (do_windows_store_inferior_registers): Rename to
5696         windows_store_one_register, and only handle the case of storing
5697         one register.  Move the code that handles the case where r is
5698         negative to...
5699         (windows_nat_target::store_registers) ... here.
5700
5701 2018-06-26  Tom Tromey  <tom@tromey.com>
5702
5703         PR rust/22574:
5704         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
5705         * rust-lang.c (rust_print_struct_def): Add podata parameter.
5706         Update.
5707         (rust_internal_print_type): Add podata parameter.
5708         (rust_print_type): Update.
5709
5710 2018-06-26  Tom Tromey  <tom@tromey.com>
5711
5712         * typeprint.h (struct print_offset_data) <update, finish,
5713         maybe_print_hole>: New methods.
5714         <indentation>: New constant.
5715         * typeprint.c (print_offset_data::indentation): Define.
5716         (print_offset_data::maybe_print_hole, print_offset_data::update)
5717         (print_offset_data::finish): Move from c-typeprint.c and rename.
5718         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
5719         (print_spaces_filtered_with_print_options): Update.
5720         (c_print_type_union_field_offset, maybe_print_hole)
5721         (c_print_type_struct_field_offset): Move to typeprint.c and
5722         rename.
5723         (c_type_print_base_struct_union): Update.
5724
5725 2018-06-25  Pedro Alves  <palves@redhat.com>
5726
5727         * gdbthread.h (thread_info_ref, delete_thread)
5728         (delete_thread_silent, first_thread_of_inferior)
5729         (any_thread_of_inferior, switch_to_thread)
5730         (enable_thread_stack_temporaries)
5731         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
5732         (get_last_thread_stack_temporary)
5733         (value_in_thread_stack_temporaries, can_access_registers_thread):
5734         Spell out "struct thread_info" instead of just "thread_info".
5735         * inferior.h (notice_new_inferior): Likewise.
5736
5737 2018-06-25  Pedro Alves  <palves@redhat.com>
5738
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         detach_inferior.
5743         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
5744         delete_thread.
5745         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
5746         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
5747         and pass a thread_info pointer to delete_thread.
5748         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
5749         pass thread_info pointer to delete_thread.
5750         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
5751         delete_thread_silent call.
5752         * procfs.c (procfs_target::detach): Pass inferior pointer to
5753         detach_inferior.
5754         (procfs_target::wait): Pass thread_info pointer to delete_thread.
5755         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
5756         delete_thread_silent call.
5757         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
5758         pass thread_info pointer to delete_thread.
5759         (windows_nat_target::detach): Pass inferior pointer to
5760         delete_inferior.
5761
5762 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
5763
5764         * regcache.c (readable_regcache::read_part): Fix asserts.
5765         (reg_buffer::raw_collect_part): New function.
5766         (regcache::write_part): Fix asserts.
5767         (reg_buffer::raw_supply_part): New function.
5768         (regcache::transfer_regset_register): New helper function.
5769         (regcache::transfer_regset): Call new functions.
5770         (regcache_supply_regset): Use gdb_byte*.
5771         (regcache::supply_regset): Likewise.
5772         (regcache_collect_regset): Likewise.
5773         (regcache::collect_regset): Likewise.
5774         * regcache.h (reg_buffer::raw_collect_part): New declaration.
5775         (reg_buffer::raw_supply_part): Likewise.
5776         (regcache::transfer_regset_register): Likewise.
5777         (regcache::transfer_regset): Use gdb_byte*.
5778
5779 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
5780
5781         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
5782
5783 2018-06-21  Pedro Alves  <palves@redhat.com>
5784
5785         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
5786         instead of a ptid_t.  All callers adjusted.
5787         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
5788         adjusted.
5789         (print_ada_task_info, display_current_task_id, task_command_1):
5790         Adjust.
5791         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
5792         inferior_thread.
5793         (breakpoint_kind): Adjust.
5794         (remove_breakpoints_pid): Rename to ...
5795         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
5796         pointer.  All callers adjusted.
5797         (bpstat_clear_actions): Use inferior_thread.
5798         (get_bpstat_thread): New.
5799         (bpstat_do_actions): Use it.
5800         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
5801         to take a thread_info pointer.  All callers adjusted.
5802         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
5803         (breakpoint_re_set_thread): Use inferior_thread.
5804         * breakpoint.h (struct inferior): Forward declare.
5805         (bpstat_stop_status): Update.
5806         (remove_breakpoints_pid): Delete.
5807         (remove_breakpoints_inf): New.
5808         * bsd-uthread.c (bsd_uthread_target::wait)
5809         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
5810         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
5811         (maint_btrace_packet_history_cmd)
5812         (maint_btrace_clear_packet_history_cmd): Adjust.
5813         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
5814         inferior_thread.
5815         * cli/cli-interp.c: Include "inferior.h".
5816         * common/refcounted-object.h (struct
5817         refcounted_object_ref_policy): New.
5818         * compile/compile-object-load.c: Include gdbthread.h.
5819         (store_regs): Use inferior_thread.
5820         * corelow.c (core_target::close): Use current_inferior.
5821         (core_target_open): Adjust to use first_thread_of_inferior and use
5822         the current inferior.
5823         * ctf.c (ctf_target::close): Adjust to use current_inferior.
5824         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
5825         <thread>: ... this new field.  All references adjusted.
5826         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
5827         Take a thread_info pointer instead of a ptid_t.
5828         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
5829         (dummy_frame_discard, register_dummy_frame_dtor): Take a
5830         thread_info pointer instead of a ptid_t.
5831         * elfread.c: Include "inferior.h".
5832         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
5833         Use inferior_thread.
5834         * eval.c (evaluate_subexp): Likewise.
5835         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
5836         inferior_thread.
5837         * gdb_proc_service.h (struct thread_info): Forward declare.
5838         (struct ps_prochandle) <ptid>: Delete, replaced by ...
5839         <thread>: ... this new field.  All references adjusted.
5840         * gdbarch.h, gdbarch.c: Regenerate.
5841         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
5842         'thread' parameter.  All implementations and callers adjusted.
5843         * gdbthread.h (thread_info) <set_running>: New method.
5844         (delete_thread, delete_thread_silent): Take a thread_info pointer
5845         instead of a ptid.
5846         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
5847         (first_thread_of_process): Delete, replaced by ...
5848         (first_thread_of_inferior): ... this new function.  All callers
5849         adjusted.
5850         (any_live_thread_of_process): Delete, replaced by ...
5851         (any_live_thread_of_inferior): ... this new function.  All callers
5852         adjusted.
5853         (switch_to_thread, switch_to_no_thread): Declare.
5854         (is_executing): Delete.
5855         (enable_thread_stack_temporaries): Update comment.
5856         <enable_thread_stack_temporaries>: Take a thread_info pointer
5857         instead of a ptid_t.  Incref the thread.
5858         <~enable_thread_stack_temporaries>: Decref the thread.
5859         <m_ptid>: Delete
5860         <m_thr>: New.
5861         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
5862         (get_last_thread_stack_temporary)
5863         (value_in_thread_stack_temporaries, can_access_registers_thread):
5864         Take a thread_info pointer instead of a ptid_t.  All callers
5865         adjusted.
5866         * infcall.c (get_call_return_value): Use inferior_thread.
5867         (run_inferior_call): Work with thread pointers instead of ptid_t.
5868         (call_function_by_hand_dummy): Work with thread pointers instead
5869         of ptid_t.  Use thread_info_ref.
5870         * infcmd.c (proceed_thread_callback): Access thread's state
5871         directly.
5872         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
5873         access thread's state directly.
5874         (continue_command): Use inferior_thread.
5875         (info_program_command): Use find_thread_ptid and access thread
5876         state directly.
5877         (proceed_after_attach_callback): Use thread state directly.
5878         (notice_new_inferior): Take a thread_info pointer instead of a
5879         ptid_t.  All callers adjusted.
5880         (exit_inferior): Take an inferior pointer instead of a pid.  All
5881         callers adjusted.
5882         (exit_inferior_silent): New.
5883         (detach_inferior): Delete.
5884         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
5885         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
5886         (detach_inferior_command, kill_inferior_command): Use
5887         find_inferior_id instead of valid_gdb_inferior_id and
5888         gdb_inferior_id_to_pid.
5889         (inferior_command): Use inferior and thread pointers.
5890         * inferior.h (struct thread_info): Forward declare.
5891         (notice_new_inferior): Take a thread_info pointer instead of a
5892         ptid_t.  All callers adjusted.
5893         (detach_inferior): Delete declaration.
5894         (exit_inferior, exit_inferior_silent): Take an inferior pointer
5895         instead of a pid.  All callers adjusted.
5896         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
5897         (valid_gdb_inferior_id): Delete.
5898         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
5899         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
5900         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
5901         ...
5902         <inf>: ... this new field.
5903         <step_ptid>: Delete, replaced by ...
5904         <step_thread>: ... this new field.
5905         (get_displaced_stepping_state): Take an inferior pointer instead
5906         of a pid.  All callers adjusted.
5907         (displaced_step_in_progress_any_inferior): Adjust.
5908         (displaced_step_in_progress_thread): Take a thread pointer instead
5909         of a ptid_t.  All callers adjusted.
5910         (displaced_step_in_progress, add_displaced_stepping_state): Take
5911         an inferior pointer instead of a pid.  All callers adjusted.
5912         (get_displaced_step_closure_by_addr): Adjust.
5913         (remove_displaced_stepping_state): Take an inferior pointer
5914         instead of a pid.  All callers adjusted.
5915         (displaced_step_prepare_throw, displaced_step_prepare)
5916         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
5917         All callers adjusted.
5918         (start_step_over): Adjust.
5919         (infrun_thread_ptid_changed): Remove bit updating ptids in the
5920         displaced step queue.
5921         (do_target_resume): Adjust.
5922         (fetch_inferior_event): Use inferior_thread.
5923         (context_switch, get_inferior_stop_soon): Take an
5924         execution_control_state pointer instead of a ptid_t.  All callers
5925         adjusted.
5926         (switch_to_thread_cleanup): Delete.
5927         (stop_all_threads): Use scoped_restore_current_thread.
5928         * inline-frame.c: Include "gdbthread.h".
5929         (inline_state) <inline_state>: Take a thread pointer instead of a
5930         ptid_t.  All callers adjusted.
5931         <ptid>: Delete, replaced by ...
5932         <thread>: ... this new field.
5933         (find_inline_frame_state): Take a thread pointer instead of a
5934         ptid_t.  All callers adjusted.
5935         (skip_inline_frames, step_into_inline_frame)
5936         (inline_skipped_frames, inline_skipped_symbol): Take a thread
5937         pointer instead of a ptid_t.  All callers adjusted.
5938         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
5939         (inline_skipped_frames, inline_skipped_symbol): Likewise.
5940         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
5941         pointers directly.
5942         * linux-nat.c (get_detach_signal): Likewise.
5943         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
5944         (thread_db_notice_clone): Adjust.
5945         (thread_db_find_new_threads_silently)
5946         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
5947         a thread pointer instead of a ptid_t.  All callers adjusted.
5948         * mi/mi-cmd-var.c: Include "inferior.h".
5949         (mi_cmd_var_update_iter): Update to use thread pointers.
5950         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
5951         inferior directly.
5952         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
5953         out to ...
5954         (mi_output_running): ... this new function.
5955         (mi_on_resume_1): Adjust to use it.
5956         (mi_user_selected_context_changed): Adjust to use inferior_thread.
5957         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
5958         directly.
5959         (interrupt_thread_callback): : Adjust to use thread and inferior
5960         pointers.
5961         * proc-service.c: Include "gdbthread.h".
5962         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
5963         * progspace-and-thread.c: Include "inferior.h".
5964         * progspace.c: Include "inferior.h".
5965         * python/py-exitedevent.c (create_exited_event_object): Adjust to
5966         hold a reference to an inferior_object.
5967         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
5968         inferior_thread.
5969         * python/py-inferior.c (struct inferior_object): Give the type a
5970         tag name instead of a typedef.
5971         (python_on_normal_stop): No need to check if the current thread is
5972         listed.
5973         (inferior_to_inferior_object): Change return type to
5974         inferior_object.  All callers adjusted.
5975         (find_thread_object): Delete, bits factored out to ...
5976         (thread_to_thread_object): ... this new function.
5977         * python/py-infthread.c (create_thread_object): Use
5978         inferior_to_inferior_object.
5979         (thpy_is_stopped): Use thread pointer directly.
5980         (gdbpy_selected_thread): Use inferior_thread.
5981         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
5982         field, replaced with ...
5983         <thread>: ... this new field.  All users adjusted.
5984         (btpy_insn_or_gap_new): Drop const.
5985         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
5986         callers adjusted.
5987         * python/py-record.c: Include "gdbthread.h".
5988         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
5989         a ptid_t.  All callers adjusted.
5990         (gdbpy_current_recording): Use inferior_thread.
5991         * python/py-record.h (recpy_record_object) <ptid>: Delete
5992         field, replaced with ...
5993         <thread>: ... this new field.  All users adjusted.
5994         (recpy_element_object) <ptid>: Delete
5995         field, replaced with ...
5996         <thread>: ... this new field.  All users adjusted.
5997         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
5998         a ptid_t.  All callers adjusted.
5999         * python/py-threadevent.c: Include "gdbthread.h".
6000         (get_event_thread): Use thread_to_thread_object.
6001         * python/python-internal.h (struct inferior_object): Forward
6002         declare.
6003         (find_thread_object, find_inferior_object): Delete declarations.
6004         (thread_to_thread_object, inferior_to_inferior_object): New
6005         declarations.
6006         * record-btrace.c: Include "inferior.h".
6007         (require_btrace_thread): Use inferior_thread.
6008         (record_btrace_frame_sniffer)
6009         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
6010         (get_thread_current_frame): Use scoped_restore_current_thread and
6011         switch_to_thread.
6012         (get_thread_current_frame): Use thread pointer directly.
6013         (record_btrace_replay_at_breakpoint): Use thread's inferior
6014         pointer directly.
6015         * record-full.c: Include "inferior.h".
6016         * regcache.c: Include "gdbthread.h".
6017         (get_thread_arch_regcache): Use the inferior's address space
6018         directly.
6019         (get_thread_regcache, registers_changed_thread): New.
6020         * regcache.h (get_thread_regcache(thread_info *thread)): New
6021         overload.
6022         (registers_changed_thread): New.
6023         (remote_target) <remote_detach_1>: Swap order of parameters.
6024         (remote_add_thread): <remote_add_thread>: Return the new thread.
6025         (get_remote_thread_info(ptid_t)): New overload.
6026         (remote_target::remote_notice_new_inferior): Use thread pointers
6027         directly.
6028         (remote_target::process_initial_stop_replies): Use
6029         thread_info::set_running.
6030         (remote_target::remote_detach_1, remote_target::detach)
6031         (extended_remote_target::detach): Adjust.
6032         * stack.c (frame_show_address): Use inferior_thread.
6033         * target-debug.h (target_debug_print_thread_info_pp): New.
6034         * target-delegates.c: Regenerate.
6035         * target.c (default_thread_address_space): Delete.
6036         (memory_xfer_partial_1): Use current_inferior.
6037         (target_detach): Use current_inferior.
6038         (target_thread_address_space): Delete.
6039         (generic_mourn_inferior): Use current_inferior.
6040         * target.h (struct target_ops) <thread_address_space>: Delete.
6041         (target_thread_address_space): Delete.
6042         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
6043         pointers directly.
6044         (delete_thread_1, delete_thread, delete_thread_silent): Take a
6045         thread pointer instead of a ptid_t.  Adjust all callers.
6046         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
6047         (first_thread_of_process): Delete, replaced by ...
6048         (first_thread_of_inferior): ... this new function.  All callers
6049         adjusted.
6050         (any_thread_of_process): Rename to ...
6051         (any_thread_of_inferior): ... this, and take an inferior pointer.
6052         (any_live_thread_of_process): Rename to ...
6053         (any_live_thread_of_inferior): ... this, and take an inferior
6054         pointer.
6055         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6056         (value_in_thread_stack_temporaries)
6057         (get_last_thread_stack_temporary): Take a thread pointer instead
6058         of a ptid_t.  Adjust all callers.
6059         (thread_info::set_running): New.
6060         (validate_registers_access): Use inferior_thread.
6061         (can_access_registers_ptid): Rename to ...
6062         (can_access_registers_thread): ... this, and take a thread
6063         pointer.
6064         (print_thread_info_1): Adjust to compare thread pointers instead
6065         of ptids.
6066         (switch_to_no_thread, switch_to_thread): Make extern.
6067         (scoped_restore_current_thread::~scoped_restore_current_thread):
6068         Use m_thread pointer directly.
6069         (scoped_restore_current_thread::scoped_restore_current_thread):
6070         Use inferior_thread.
6071         (thread_command): Use thread pointer directly.
6072         (thread_num_make_value_helper): Use inferior_thread.
6073         * top.c (execute_command): Use inferior_thread.
6074         * tui/tui-interp.c: Include "inferior.h".
6075         * varobj.c (varobj_create): Use inferior_thread.
6076         (value_of_root_1): Use find_thread_global_id instead of
6077         global_thread_id_to_ptid.
6078
6079 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
6080
6081         * regcache.c (readable_regcache::read_part): Avoid memcpy when
6082         possible.
6083         (regcache::write_part): Likewise.
6084         (readable_regcache::cooked_read_part): Update comment.
6085         (readable_regcache::cooked_write_part): Likewise.
6086         * regcache.h: (readable_regcache::read_part): Likewise.
6087         (regcache::write_part): Likewise.
6088
6089 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
6090             Dirk Schubert  <dirk.schubert@arm.com>
6091
6092         * aarch64-linux-nat.c (post_attach): New.
6093         (aarch64_linux_nat_target::post_attach): Override post_attach to
6094         record the number of hardware debug registers.
6095
6096 2018-06-20  Tom Tromey  <tom@tromey.com>
6097
6098         * python/py-param.c (add_setshow_generic): Make parameters const.
6099         (parmpy_init): Update.
6100
6101 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
6102
6103         * regcache.h (regcache_cooked_read_ftype): Rename to...
6104         (register_read_ftype): ...this, change type to function_view.
6105         (class reg_buffer) <save>: Remove src parameter.
6106         (readonly_detached_regcache) <readonly_detached_regcache>: Make
6107         parameter non-const in first overload.  Remove src parameter in
6108         second overload.
6109         * regcache.c (do_cooked_read): Remove.
6110         (readonly_detached_regcache::readonly_detached_regcache): Make
6111         parameter non-const, adjust call to other constructor.
6112         (reg_buffer::save): Remove src parameter.
6113         * frame.c (do_frame_register_read): Remove.
6114         (frame_save_as_regcache): Use lambda function.
6115         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
6116         parameter to ppu2spu_data *.
6117         (ppu2spu_sniffer): Use lambda function.
6118
6119 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
6120
6121         * record-full.c (record_full_target::insert_breakpoint): Remove
6122         "struct" keyword, add const.
6123
6124 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
6125
6126         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
6127         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
6128         * configure.ac: Remove AC_PREREQ, add missing quoting.
6129         * gnulib/configure.ac: Modernize usage of
6130         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
6131         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
6132         (AUTOMAKE_VERSION): Bump to 1.15.1.
6133         * configure: Re-generate.
6134         * config.in: Re-generate.
6135         * aclocal.m4: Re-generate.
6136         * gnulib/aclocal.m4: Re-generate.
6137         * gnulib/config.in: Re-generate.
6138         * gnulib/configure: Re-generate.
6139         * gnulib/import/Makefile.in: Re-generate.
6140
6141 2018-06-19  Pedro Alves  <palves@redhat.com>
6142
6143         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
6144         (lookup_minimal_symbol_by_pc_section): ... here with
6145         gdb_assert_not_reached added.
6146
6147 2018-06-19  Pedro Alves  <palves@redhat.com>
6148
6149         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
6150         parameter with a block parameter.  Compare location's block symbol
6151         with the frame's block instead of addresses.
6152         (skip_inline_frames): Pass the current block instead of the
6153         frame's address.  Break out as soon as we determine the frame
6154         should not be skipped.
6155
6156 2018-06-18  Tom Tromey  <tom@tromey.com>
6157
6158         * solib-aix.c (solib_aix_get_section_offsets): Return
6159         unique_xmalloc_ptr.
6160         (solib_aix_solib_create_inferior_hook): Update.
6161
6162 2018-06-18  Tom Tromey  <tom@tromey.com>
6163
6164         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
6165
6166 2018-06-18  Tom Tromey  <tom@tromey.com>
6167
6168         * solib-frv.c (frv_relocate_main_executable): Use
6169         unique_xmalloc_ptr.
6170         * solib-dsbt.c (dsbt_relocate_main_executable): Use
6171         unique_xmalloc_ptr.
6172
6173 2018-06-18  Tom Tromey  <tom@tromey.com>
6174
6175         * objfiles.h (inhibit_section_map_updates): Update.
6176         (resume_section_map_updates, resume_section_map_updates_cleanup):
6177         Remove.
6178         * solib-svr4.c (svr4_handle_solib_event): Update.
6179         * objfiles.c (inhibit_section_map_updates): Return
6180         scoped_restore_tmpl<int>.
6181         (resume_section_map_updates, resume_section_map_updates_cleanup):
6182         Remove.
6183
6184 2018-06-18  Tom Tromey  <tom@tromey.com>
6185
6186         * valprint.h (read_string): Update.
6187         * valprint.c (read_string): Change type of "buffer".
6188         (val_print_string): Update.
6189         * python/py-value.c (valpy_string): Update.
6190         * language.h (struct language_defn) <la_get_string>: Change
6191         type of "buffer".
6192         (default_get_string, c_get_string): Update.
6193         * language.c (default_get_string): Change type of "buffer".
6194         * guile/scm-value.c (gdbscm_value_to_string): Update.
6195         * c-lang.c (c_get_string): Change type of "buffer".
6196
6197 2018-06-18  Tom Tromey  <tom@tromey.com>
6198
6199         * ser-mingw.c (struct pipe_state_destroyer): New.
6200         (pipe_state_up): New typedef.
6201         (cleanup_pipe_state): Remove.
6202         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
6203
6204 2018-06-18  Tom Tromey  <tom@tromey.com>
6205
6206         * rust-lang.h (rust_yyerror): Don't declare.
6207         * rust-lang.c (rust_language_defn): Update.
6208         * rust-exp.y (yyerror): Now static.
6209         * parse.c (parse_exp_in_context_1): Update.
6210         * p-lang.h (p_yyerror): Don't declare.
6211         * p-lang.c (p_language_defn): Update.
6212         * p-exp.y (yyerror): Now static.
6213         * opencl-lang.c (opencl_language_defn): Update.
6214         * objc-lang.c (objc_language_defn): Update.
6215         * m2-lang.h (m2_yyerror): Don't declare.
6216         * m2-lang.c (m2_language_defn): Update.
6217         * m2-exp.y (yyerror): Now static.
6218         * language.h (struct language_defn) <la_error>: Remove.
6219         * language.c (unk_lang_error): Remove.
6220         (unknown_language_defn, auto_language_defn): Remove.
6221         * go-lang.h (go_yyerror): Don't declare.
6222         * go-lang.c (go_language_defn): Update.
6223         * go-exp.y (yyerror): Now static.
6224         * f-lang.h (f_yyerror): Don't declare.
6225         * f-lang.c (f_language_defn): Update.
6226         * f-exp.y (yyerror): Now static.
6227         * d-lang.h (d_yyerror): Don't declare.
6228         * d-lang.c (d_language_defn): Update.
6229         * d-exp.y (yyerror): Now static.
6230         * c-lang.h (c_yyerror): Don't declare.
6231         * c-lang.c (c_language_defn, cplus_language_defn)
6232         (asm_language_defn, minimal_language_defn): Update.
6233         * c-exp.y (yyerror): Now static.
6234         * ada-lang.h (ada_yyerror): Don't declare.
6235         * ada-lang.c (ada_language_defn): Update.
6236         * ada-exp.y (yyerror): Now static.
6237
6238 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6239
6240         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
6241         (store_sveregs_to_thread): Likewise.
6242         (aarch64_linux_fetch_inferior_registers): Check for SVE.
6243         (aarch64_linux_store_inferior_registers): Likewise.
6244         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
6245         function.
6246         (aarch64_sve_regs_copy_to_regcache): Likewise.
6247         (aarch64_sve_regs_copy_from_regcache): Likewise.
6248         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
6249         declaration.
6250         (aarch64_sve_regs_copy_to_regcache): Likewise.
6251         (aarch64_sve_regs_copy_from_regcache): Likewise.
6252         (sve_context): Structure from Linux headers.
6253         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
6254         (SVE_SIG_ZREG_SIZE): Likewise.
6255         (SVE_SIG_PREG_SIZE): Likewise.
6256         (SVE_SIG_FFR_SIZE): Likewise.
6257         (SVE_SIG_REGS_OFFSET): Likewise.
6258         (SVE_SIG_ZREGS_OFFSET): Likewise.
6259         (SVE_SIG_ZREG_OFFSET): Likewise.
6260         (SVE_SIG_ZREGS_SIZE): Likewise.
6261         (SVE_SIG_PREGS_OFFSET): Likewise.
6262         (SVE_SIG_PREG_OFFSET): Likewise.
6263         (SVE_SIG_PREGS_SIZE): Likewise.
6264         (SVE_SIG_FFR_OFFSET): Likewise.
6265         (SVE_SIG_REGS_SIZE): Likewise.
6266         (SVE_SIG_CONTEXT_SIZE): Likewise.
6267         (SVE_PT_REGS_MASK): Likewise.
6268         (SVE_PT_REGS_FPSIMD): Likewise.
6269         (SVE_PT_REGS_SVE): Likewise.
6270         (SVE_PT_VL_INHERIT): Likewise.
6271         (SVE_PT_VL_ONEXEC): Likewise.
6272         (SVE_PT_REGS_OFFSET): Likewise.
6273         (SVE_PT_FPSIMD_OFFSET): Likewise.
6274         (SVE_PT_FPSIMD_SIZE): Likewise.
6275         (SVE_PT_SVE_ZREG_SIZE): Likewise.
6276         (SVE_PT_SVE_PREG_SIZE): Likewise.
6277         (SVE_PT_SVE_FFR_SIZE): Likewise.
6278         (SVE_PT_SVE_FPSR_SIZE): Likewise.
6279         (SVE_PT_SVE_FPCR_SIZE): Likewise.
6280         (__SVE_SIG_TO_PT): Likewise.
6281         (SVE_PT_SVE_OFFSET): Likewise.
6282         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
6283         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
6284         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
6285         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
6286         (SVE_PT_SVE_PREG_OFFSET): Likewise.
6287         (SVE_PT_SVE_PREGS_SIZE): Likewise.
6288         (SVE_PT_SVE_FFR_OFFSET): Likewise.
6289         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
6290         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
6291         (SVE_PT_SVE_SIZE): Likewise.
6292         (SVE_PT_SIZE): Likewise.
6293         (HAS_SVE_STATE): New define.
6294
6295 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6296
6297         * nat/aarch64-sve-linux-sigcontext.h: New file.
6298         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
6299         new files.
6300         (SVE_VQ_MIN): Likewise.
6301         (SVE_VQ_MAX): Likewise.
6302         (SVE_VL_MIN): Likewise.
6303         (SVE_VL_MAX): Likewise.
6304         (SVE_NUM_ZREGS): Likewise.
6305         (SVE_NUM_PREGS): Likewise.
6306         (sve_vl_valid): Likewise.
6307         (struct user_sve_header): Likewise.
6308
6309 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
6310             Richard Bunt <Richard.Bunt@arm.com>
6311
6312         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
6313         was requested by GDB.
6314
6315 2018-06-15  Tom de Vries  <tdevries@suse.de>
6316
6317         * MAINTAINERS (Write After Approval): Add Tom de Vries.
6318
6319 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
6320
6321         * gnulib/update-gnulib.sh: Print expected versions of
6322         autoconf/aclocal.
6323
6324 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
6325
6326         * arch-utils.c (default_type_align): Use type_length_units.
6327         * gdbtypes.c (type_align): Use type_length_units.
6328
6329 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6330
6331         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
6332         of 'define' command.
6333
6334 2018-06-14  Tom de Vries  <tdevries@suse.de>
6335
6336         PR cli/22573
6337         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
6338         get_no_prettyformat_print_options.
6339
6340 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
6341
6342         * sparc-nat.h: Include target.h.
6343         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
6344         <fetch_registers>: Remove this argument in function call.
6345         <store_registers>: Remove this argument in function call, remove
6346         extra semicolon.
6347         <low_forget_process>: Call sparc64_forget_process instead of
6348         sparc_forget_process.
6349
6350 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
6351
6352         * procfs.c (_initialize_procfs): Use add_inf_child_target.
6353         (procfs_target::make_corefile_notes): Adjust to new
6354         target_read_alloc return type.
6355
6356 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6357             Stephen Roberts  <stephen.roberts@arm.com>
6358
6359         PR gdb/22882
6360         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
6361         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
6362         Move should_notify_stop local into more inner scope.
6363
6364 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6365             Stephen Roberts  <stephen.roberts@arm.com>
6366
6367         PR gdb/22882
6368         * infrun.c (resume_1): Add call to mark_async_event_handler.
6369
6370 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6371
6372         * infrun.c (do_target_wait): Change old version of $pc printed.
6373
6374 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
6375
6376         * dwarf2read.c (read_index_from_section): Rename to...
6377         (read_gdb_index_from_section): ... this, update all callers.
6378         (dwarf2_read_index): Rename to...
6379         (dwarf2_read_gdb_index): ... this, update all callers.
6380
6381 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
6382
6383         * gdb/hppa-linux-nat.c
6384         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
6385         hppa_linux_nat_target::fetch_registers.
6386
6387 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6388
6389         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
6390         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
6391         (AARCH64_DWARF_SVE_FFR): Likewise.
6392         (AARCH64_DWARF_SVE_P0): Likewise.
6393         (AARCH64_DWARF_SVE_Z0): Likewise.
6394
6395 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6396
6397         * common/common-regcache.h (raw_compare): New function.
6398         * regcache.c (regcache::raw_compare): Likewise.
6399         * regcache.h (regcache::raw_compare): New declaration.
6400
6401 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6402
6403         * common/common-regcache.h (reg_buffer_common): New structure.
6404         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
6405         (reg_buffer::raw_supply): Likewise.
6406         (reg_buffer::raw_supply_integer): Likewise.
6407         (reg_buffer::raw_supply_zeroed): Likewise.
6408         (reg_buffer::raw_collect): Likewise.
6409         (reg_buffer::raw_collect_integer): Likewise.
6410         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
6411         (reg_buffer::raw_supply): Likewise.
6412         (reg_buffer::raw_supply_integer): Likewise.
6413         (reg_buffer::raw_supply_zeroed): Likewise.
6414         (reg_buffer::raw_collect): Likewise.
6415         (reg_buffer::raw_collect_integer): Likewise.
6416
6417 2018-06-10  Tom Tromey  <tom@tromey.com>
6418
6419         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
6420         (class remote_state) <stop_reply_queue>: Now std::vector.
6421         (remote_state::~remote_state)
6422         (remote_target::stop_reply_queue_length): Update.
6423         (struct queue_iter_param, remove_child_of_pending_fork)
6424         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
6425         (check_pending_event_prevents_wildcard_vcont_callback)
6426         (remove_stop_reply_for_inferior)
6427         (remove_stop_reply_of_remote_state)
6428         (remote_notif_remove_once_on_match)
6429         (stop_reply_match_ptid_and_ws)
6430         (remote_kill_child_of_pending_fork): Remove.
6431         (remote_target::remove_new_fork_children)
6432         (remote_target::check_pending_events_prevent_wildcard_vcont)
6433         (remote_target::discard_pending_stop_replies)
6434         (remote_target::discard_pending_stop_replies_in_queue)
6435         (remote_target::remote_notif_remove_queued_reply)
6436         (remote_target::queued_stop_reply)
6437         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
6438         (remote_target::wait, remote_target::kill_new_fork_children)
6439         (remote_target::async): Update.
6440
6441 2018-06-10  Tom Tromey  <tom@tromey.com>
6442
6443         * record-full.c (record_full_arch_list_cleanups): Remove.
6444         (record_full_message): Use try/catch.
6445         (record_full_wait_cleanups): Remove.
6446         (record_full_wait_1): Use try/catch.
6447         (record_full_restore): Likewise.
6448
6449 2018-06-10  Tom Tromey  <tom@tromey.com>
6450
6451         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
6452         declare VEC.  Add constructor.
6453         <in_target_beneath>: Now bool.
6454         (record_full_breakpoints): Now a std::vector, static.
6455         (record_full_sync_record_breakpoints)
6456         (record_full_init_record_breakpoints)
6457         (record_full_target::insert_breakpoint)
6458         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
6459
6460 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
6461
6462         * dwarf2read.c (process_cu_includes): Remove struct keyword.
6463         * serial.c (serial_interface_lookup): Remove struct keyword.
6464
6465 2018-06-10  Tom Tromey  <tom@tromey.com>
6466
6467         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
6468         method.
6469         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
6470         a method.
6471         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
6472         method.
6473         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
6474         "beneath" as a method.
6475         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
6476         Use "beneath" as a method.
6477
6478 2018-06-10  Tom Tromey  <tom@tromey.com>
6479
6480         * tracefile.c (struct trace_file_writer_deleter): New.
6481         <operator()>: Rename from trace_file_writer_xfree.
6482         (trace_file_writer_up): New typedef.
6483         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
6484
6485 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
6486
6487         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
6488         <m_registers, m_register_status>: Change type to
6489         std::unique_ptr.
6490         * regcache.c (reg_buffer::reg_buffer): Use new instead of
6491         XCNEWVEC.
6492
6493 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
6494
6495         * common/common-regcache.h (enum register_status): Add
6496         underlying type "signed char".
6497         * regcache.h (reg_buffer) <m_register_status>: Change type to
6498         register_status *.
6499         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
6500         register_status instead of signed char.
6501         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
6502         (reg_buffer::get_register_status): Remove cast.
6503         (readable_regcache::raw_read): Remove cast.
6504         (readable_regcache::cooked_read): Remove cast.
6505
6506 2018-06-09  Tom Tromey  <tom@tromey.com>
6507
6508         * source.c (reverse_search_command, forward_search_command): Use
6509         scoped_fd.
6510
6511 2018-06-09  Tom Tromey  <tom@tromey.com>
6512
6513         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
6514         (serial_ops_list): Now static, std::vector.
6515         (serial_interface_lookup, serial_add_interface): Update.
6516
6517 2018-06-09  Tom Tromey  <tom@tromey.com>
6518
6519         * dwarf2read.c (process_cu_includes): Update.
6520         (process_full_comp_unit): Update.
6521         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
6522         std::vector.
6523
6524 2018-06-08  Paul Koning  <paul_koning@dell.com>
6525
6526         PR gdb/23252
6527
6528         * python/python.c (do_start_initialization):
6529         Avoid call to internal Python API.
6530         (init__gdb_module): New function.
6531
6532 2018-06-08  Gary Benson <gbenson@redhat.com>
6533
6534         * linux-thread-db.c (valprint.h): New include.
6535         (struct check_thread_db_info): New structure.
6536         (check_thread_db_on_load, tdb_testinfo): New static globals.
6537         (check_thread_db, check_thread_db_callback): New functions.
6538         (try_thread_db_load_1): Run integrity checks if requested.
6539         (maintenance_check_libthread_db): New function.
6540         (_initialize_thread_db): Register "maint check libthread-db"
6541         and "maint set/show check-libthread-db".
6542         * NEWS: Mention the above new commands.
6543
6544 2018-06-08  Tom Tromey  <tom@tromey.com>
6545
6546         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
6547         now a method.
6548
6549 2018-06-08  Tom Tromey  <tom@tromey.com>
6550
6551         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
6552
6553 2018-06-08  Tom Tromey  <tom@tromey.com>
6554
6555         * common/btrace-common.h (struct btrace_data): Add constructor,
6556         destructor, move assignment operator.
6557         <empty, clear, fini>: New methods.
6558         <format>: Initialize.
6559         (btrace_data_init, btrace_data_fini, btrace_data_clear)
6560         (btrace_data_empty): Don't declare.
6561         * common/btrace-common.c (btrace_data_init): Remove.
6562         (btrace_data::fini): Rename from btrace_data_fini.
6563         (btrace_data::empty): Rename from btrace_data_empty.
6564         (btrace_data::clear): Rename from btrace_data_clear.  Return
6565         bool.
6566         * btrace.h (make_cleanup_btrace_data): Don't declare.
6567         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
6568         (parse_xml_btrace): Update.
6569         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
6570         (maint_btrace_clear_packet_history_cmd): Update.
6571
6572 2018-06-07  Pedro Alves  <palves@redhat.com>
6573
6574         * target.h (target_ops) <beneath>: Now a method.  All references
6575         updated.
6576         (class target_stack): New.
6577         * target.c (g_target_stack): New.
6578         (g_current_top_target): Delete.
6579         (current_top_target): Get the top target out of g_target_stack.
6580         (target_stack::push, target_stack::unpush): New.
6581         (push_target, unpush_target): Reimplement.
6582         (target_is_pushed): Reimplement in terms of g_target_stack.
6583         (target_ops::beneath, target_stack::find_beneath): New.
6584
6585 2018-06-07  Pedro Alves  <palves@redhat.com>
6586
6587         * target.h (find_target_beneath): Delete declaration.
6588         * target.c (find_target_beneath): Delete definition.
6589         * aix-thread.c: All callers of find_target_beneath adjusted to
6590         call target_ops::beneath instead.
6591         * bsd-uthread.c: Likewise.
6592         * linux-thread-db.c: Likewise.
6593         * ravenscar-thread.c: Likewise.
6594         * sol-thread.c: Likewise.
6595         * spu-multiarch.c: Likewise.
6596
6597 2018-06-07  Pedro Alves  <palves@redhat.com>
6598
6599         * target.h (target_ops) <beneath>: Now a method.  All references
6600         updated.
6601         (target_ops) <m_beneath>: New.
6602         * target.c (target_ops::beneath): New.
6603         * corelow.c: Adjust all references to target_ops::beneath.
6604         * linux-thread-db.c: Likewise.
6605         * make-target-delegates: Likewise.
6606         * record-btrace.c: Likewise.
6607         * record-full.c: Likewise.
6608         * remote.c: Likewise.
6609         * target.c: Likewise.
6610         * target-delegates.c: Regenerate.
6611
6612 2018-06-07  Pedro Alves  <palves@redhat.com>
6613
6614         * target.h (target_stack): Delete.
6615         (current_top_target): Declare function.
6616         * target.c (target_stack): Delete.
6617         (g_current_top_target): New.
6618         (current_top_target): New function.
6619         * auxv.c: Use current_top_target instead of target_stack
6620         throughout.
6621         * avr-tdep.c: Likewise.
6622         * breakpoint.c: Likewise.
6623         * corefile.c: Likewise.
6624         * elfread.c: Likewise.
6625         * eval.c: Likewise.
6626         * exceptions.c: Likewise.
6627         * frame.c: Likewise.
6628         * gdbarch-selftests.c: Likewise.
6629         * gnu-v3-abi.c: Likewise.
6630         * ia64-tdep.c: Likewise.
6631         * ia64-vms-tdep.c: Likewise.
6632         * infcall.c: Likewise.
6633         * infcmd.c: Likewise.
6634         * infrun.c: Likewise.
6635         * linespec.c: Likewise.
6636         * linux-tdep.c: Likewise.
6637         * minsyms.c: Likewise.
6638         * ppc-linux-nat.c: Likewise.
6639         * ppc-linux-tdep.c: Likewise.
6640         * procfs.c: Likewise.
6641         * regcache.c: Likewise.
6642         * remote.c: Likewise.
6643         * rs6000-tdep.c: Likewise.
6644         * s390-linux-nat.c: Likewise.
6645         * s390-tdep.c: Likewise.
6646         * solib-aix.c: Likewise.
6647         * solib-darwin.c: Likewise.
6648         * solib-dsbt.c: Likewise.
6649         * solib-spu.c: Likewise.
6650         * solib-svr4.c: Likewise.
6651         * solib-target.c: Likewise.
6652         * sparc-tdep.c: Likewise.
6653         * sparc64-tdep.c: Likewise.
6654         * spu-tdep.c: Likewise.
6655         * symfile.c: Likewise.
6656         * symtab.c: Likewise.
6657         * target-descriptions.c: Likewise.
6658         * target-memory.c: Likewise.
6659         * target.c: Likewise.
6660         * target.h: Likewise.
6661         * tracefile-tfile.c: Likewise.
6662         * tracepoint.c: Likewise.
6663         * valops.c: Likewise.
6664         * valprint.c: Likewise.
6665         * value.c: Likewise.
6666         * windows-tdep.c: Likewise.
6667         * mi/mi-main.c: Likewise.
6668
6669 2018-06-07  Tom Tromey  <tom@tromey.com>
6670
6671         * valprint.h (build_address_symbolic): Declare.
6672         * printcmd.c (print_address_symbolic): Update.
6673         (build_address_symbolic): Change "name" and "filename" to
6674         std::string.
6675         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
6676         Update.
6677         * defs.h (build_address_symbolic): Remove declaration.
6678
6679 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
6680
6681         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
6682         (aarch64_vnv_type): Add function.
6683         (aarch64_pseudo_register_name): Add V regs for SVE.
6684         (aarch64_pseudo_register_type): Likewise.
6685         (aarch64_pseudo_register_reggroup_p): Likewise.
6686         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
6687         (aarch64_pseudo_read_value): Add V regs for SVE.
6688         (aarch64_pseudo_write_2): Use V0 offset for SVE
6689         (aarch64_pseudo_write): Add V regs for SVE.
6690         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
6691
6692 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
6693
6694         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
6695         (sve_vl_from_vq): Likewise.
6696
6697 2018-06-05  Tom Tromey  <tom@tromey.com>
6698
6699         * cli/cli-cmds.c (show_version): Update.
6700         * top.c (print_gdb_version): Add "interactive" parameter.
6701         Update.
6702         * main.c (captured_main_1): Update.
6703         * top.h (print_gdb_version): Add "interactive" parameter and a
6704         comment.
6705
6706 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
6707
6708         * common/enum-flags.h: Add trailing semicolon to example in
6709         comment.
6710
6711 2018-06-05  Tom Tromey  <tom@tromey.com>
6712
6713         PR cli/12326:
6714         * NEWS: Add entry about pager.
6715         * utils.c (pagination_disabled_for_command): New global.
6716         (prompt_for_continue): Allow "c" response to prompt.
6717         (reinitialize_more_filter): Clear
6718         pagination_disabled_for_command.
6719         (fputs_maybe_filtered): Check pagination_disabled_for_command.
6720
6721 2018-06-04  Tom Tromey  <tom@tromey.com>
6722
6723         * ada-lang.h (ada_lookup_symbol_list): Update.
6724         * ada-lang.c (resolve_subexp): Update.
6725         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
6726         parameter.
6727         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
6728         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
6729         results parameter to std::vector.
6730         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
6731         Update.
6732         * ada-exp.y (block_lookup): Update.
6733         (select_possible_type_sym): Change type of syms.  Remove nsyms
6734         parameter.
6735         (write_var_or_type, write_name_assoc): Update.
6736
6737 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
6738
6739         * windows-nat.c (windows_nat_target::xfer_partial): Return
6740         TARGET_XFER_E_IO if we need to delegate to the target beneath
6741         but BENEATH is NULL.
6742
6743 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
6744
6745         * Makefile.in (config.status): Add configure.nat as a
6746         dependency.
6747
6748 2018-06-04  Tom Tromey  <tom@tromey.com>
6749
6750         * cp-name-parser.y (cpname_state): Add method declarations.
6751         (HANDLE_QUAL): Update.
6752         (cpname_state::d_grab, cpname_state::fill_comp)
6753         (cpname_state::make_operator, cpname_state::make_dtor)
6754         (cpname_state::make_builtin_type, cpname_state::make_name)
6755         (cpname_state::d_qualify, cpname_state::d_int_type)
6756         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
6757         (%union): Move earlier.
6758
6759 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6760
6761         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
6762
6763 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6764
6765         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
6766         (aarch64_pseudo_write_1): Likewise.
6767         (aarch64_pseudo_read_value): Use helper.
6768         (aarch64_pseudo_write): Likewise.
6769
6770 2018-06-04  Pedro Alves  <palves@redhat.com>
6771
6772         * darwin-nat.c (darwin_ops): Delete.
6773         (darwin_attach_pid): Use get_native_target.
6774
6775 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6776
6777         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
6778         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
6779
6780 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6781
6782         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
6783         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
6784         (aarch64_gdbarch_init): Check for SVE.
6785         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
6786
6787 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6788
6789         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
6790         * aarch64-tdep.h (aarch64_read_description): Likewise.
6791         * arch/aarch64.c (aarch64_create_target_description): Likewise.
6792         * arch/aarch64.h (aarch64_create_target_description): Likewise.
6793         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
6794         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
6795         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
6796
6797 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
6798
6799         * value.c (value_fetch_lazy_bitfield): New.
6800         (value_fetch_lazy_memory): New.
6801         (value_fetch_lazy_register): New.
6802         (value_fetch_lazy): Factor out to smaller functions.
6803
6804 2018-06-01  Tom Tromey  <tom@tromey.com>
6805
6806         * cp-name-parser.y (backslashable, represented): Now const.
6807
6808 2018-06-01  Tom Tromey  <tom@tromey.com>
6809
6810         * cp-name-parser.y: Include parser-defs.h.
6811         (parser_fprintf): Remove declaration.
6812
6813 2018-06-01  Tom Tromey  <tom@tromey.com>
6814
6815         * cp-name-parser.y: Use %pure-parser, %lex-param, and
6816         %parse-param.
6817         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
6818         (global_result): Remove globals.
6819         (struct cpname_state): New.
6820         (yyparse): Don't declare.
6821         (yylex, yyerror): Move declarations after %union.
6822         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
6823         (make_name): Add state parameter.
6824         Update all callers.
6825         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
6826         parameter.
6827         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
6828         Update.
6829         (yylex): Add lvalp, state parameters.
6830         (yyerror): Add state parameter.
6831         (cp_demangled_name_to_comp): Update.
6832
6833 2018-06-01  Tom Tromey  <tom@tromey.com>
6834
6835         * cp-name-parser.y (parser_fprintf): Declare.
6836         (GDB_YY_REMAP_PREFIX): Define.
6837         Include yy-remap.h.  Don't redefine yy* identifiers.
6838
6839 2018-06-01  Tom Tromey  <tom@tromey.com>
6840
6841         * python/py-type.c (typy_legacy_template_argument): Update.
6842         * cp-support.h (cp_demangled_name_to_comp): Update.
6843         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
6844         parameter to be a "std::string *".
6845         (main): Update.
6846
6847 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
6848
6849         * ada-lex.l: Include "diagnostics.h" instead of
6850         "common/diagnostics.h".
6851         * unittests/environ-selftests.c: Likewise.
6852         * common/diagnostics.h: Moved to ../include.
6853
6854 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
6855
6856         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
6857         to language_mode_manual while calling breakpoint_re_set_one.
6858
6859 2018-06-01  Tom Tromey  <tom@tromey.com>
6860
6861         * valops.c (value_cast_structs, destructor_name_p): Update.
6862         * symtab.c (gdb_mangle_name): Update.
6863         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
6864         Update.
6865         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
6866         (pascal_object_print_value_fields, pascal_object_print_value):
6867         Update.
6868         * p-typeprint.c (pascal_type_print_derivation_info): Update.
6869         * linespec.c (find_methods): Update.
6870         * gdbtypes.h (type_name_no_tag): Remove.
6871         (type_name_or_error): Rename from type_name_no_tag_or_error.
6872         * gdbtypes.c (type_name_no_tag): Remove.
6873         (type_name_or_error): Rename from type_name_no_tag_or_error.
6874         (lookup_struct_elt_type, check_typedef): Update.
6875         * expprint.c (print_subexp_standard): Update.
6876         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
6877         * d-namespace.c (d_lookup_nested_symbol): Update.
6878         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
6879         (cp_print_class_member): Update.
6880         * cp-namespace.c (cp_lookup_nested_symbol): Update.
6881         * completer.c (add_struct_fields): Update.
6882         * c-typeprint.c (cp_type_print_derivation_info)
6883         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
6884         Update.
6885         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
6886         (ada_prefer_type, ada_is_exception_sym): Update.
6887
6888 2018-06-01  Tom Tromey  <tom@tromey.com>
6889
6890         * valops.c (enum_constant_from_type, value_namespace_elt)
6891         (value_maybe_namespace_elt): Update.
6892         * valarith.c (find_size_for_pointer_math): Update.
6893         * target-descriptions.c (make_gdb_type): Update.
6894         * symmisc.c (print_symbol): Update.
6895         * stabsread.c (define_symbol, read_type)
6896         (complain_about_struct_wipeout, add_undefined_type)
6897         (cleanup_undefined_types_1): Update.
6898         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
6899         (rust_range_type_p, val_print_struct, rust_print_struct_def)
6900         (rust_internal_print_type, rust_composite_type)
6901         (rust_evaluate_funcall, rust_evaluate_subexp)
6902         (rust_inclusive_range_type_p): Update.
6903         * python/py-type.c (typy_get_tag): Update.
6904         * p-typeprint.c (pascal_type_print_base): Update.
6905         * mdebugread.c (parse_symbol, parse_type): Update.
6906         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
6907         Update.
6908         * guile/scm-type.c (gdbscm_type_tag): Update.
6909         * go-lang.c (sixg_string_p): Update.
6910         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
6911         Update.
6912         * gdbtypes.h (struct main_type) <tag_name>: Remove.
6913         (TYPE_TAG_NAME): Remove.
6914         * gdbtypes.c (type_name_no_tag): Simplify.
6915         (check_typedef, check_types_equal, recursive_dump_type)
6916         (copy_type_recursive, arch_composite_type): Update.
6917         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
6918         in summary mode when needed.
6919         * eval.c (evaluate_funcall): Update.
6920         * dwarf2read.c (fixup_go_packaging, read_structure_type)
6921         (process_structure_scope, read_enumeration_type)
6922         (read_namespace_type, read_module_type, determine_prefix): Update.
6923         * cp-support.c (inspect_type): Update.
6924         * coffread.c (process_coff_symbol, decode_base_type): Update.
6925         * c-varobj.c (c_is_path_expr_parent): Update.
6926         * c-typeprint.c (c_type_print_base_struct_union): Update.
6927         (c_type_print_base_1): Update.  Print struct/class/union/enum in
6928         summary when using C language.
6929         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
6930         (gen_maybe_namespace_elt): Update.
6931         * ada-lang.c (ada_type_name): Simplify.
6932         (empty_record, ada_template_to_fixed_record_type_1)
6933         (template_to_static_fixed_type)
6934         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
6935
6936 2018-06-01  Tom Tromey  <tom@tromey.com>
6937
6938         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
6939         c_print_type.
6940         * c-typeprint.c (c_print_type_1): Add "language" parameter.
6941         (c_print_type): Update.
6942         (c_print_type): New overload.
6943         (c_type_print_varspec_prefix, c_type_print_args)
6944         (c_type_print_varspec_suffix, c_print_type_no_offsets)
6945         (c_type_print_base_struct_union, c_type_print_base_1)
6946         (cp_type_print_method_args): Add "language" parameter.
6947         (c_type_print_base): Update.
6948         * c-lang.h (c_print_type): Add new overload.
6949
6950 2018-06-01  Tom Tromey  <tom@tromey.com>
6951
6952         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
6953         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
6954
6955 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
6956
6957         * aarch64-tdep.c (aarch64_sve_register_names): New const
6958         var.
6959         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
6960         (AARCH64_SVE_Z_REGS_NUM): New define.
6961         (AARCH64_SVE_P_REGS_NUM): Likewise.
6962         (AARCH64_SVE_NUM_REGS): Likewise.
6963
6964 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
6965
6966         * nat/linux-ptrace.h [__alpha__]
6967         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
6968         definitions.
6969
6970 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
6971
6972         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
6973         the endianness selected.
6974         * NEWS: Document `set endian auto' mode operation update.
6975
6976 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
6977
6978         * Makefile.in: Add new header.
6979         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
6980         (sve_vl_from_vg): Likewise.
6981         (sve_vq_from_vl): Likewise.
6982         (sve_vl_from_vq): Likewise.
6983         (sve_vq_from_vg): Likewise.
6984         (sve_vg_from_vq): Likewise.
6985         * configure.nat: Add new c file.
6986         * nat/aarch64-sve-linux-ptrace.c: New file.
6987         * nat/aarch64-sve-linux-ptrace.h: New file.
6988
6989 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
6990
6991         * aarch64-linux-nat.c (aarch64_linux_read_description):
6992         Add parmeter zero.
6993         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
6994         Likewise.
6995         * aarch64-tdep.c (tdesc_aarch64_list): Add.
6996         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
6997         (aarch64_gdbarch_init): Add parmeter zero.
6998         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
6999         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
7000         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
7001         parmeter.
7002         * doc/gdb.texinfo: Describe SVE feature
7003         * features/aarch64-sve.c: New file.
7004
7005 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
7006
7007         PR gdb/23210
7008         * gdbarch.sh (significant_addr_bit): Default to zero when
7009         not set by target architecture.
7010         * gdbarch.c: Re-generated.
7011         * utils.c (address_significant): Update.
7012
7013 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
7014
7015         * stack.c (func_command): Remove trailing newline in call to error.
7016
7017 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7018
7019         * regcache.h (regcache_raw_collect): Remove, update callers to
7020         use regcache::raw_collect.
7021         * regcache.c (regcache_raw_collect): Remove.
7022
7023 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7024
7025         * regcache.h (regcache_raw_supply): Remove, update callers to
7026         use detached_regcache::raw_supply.
7027         * regcache.c (regcache_raw_supply): Remove.
7028
7029 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7030
7031         * regcache.h (regcache_cooked_write_part): Remove, update
7032         callers to use regcache::cooked_write_part.
7033         * regcache.c (regcache_cooked_write_part): Remove.
7034
7035 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7036
7037         * regcache.h (regcache_cooked_read_part): Remove, update callers
7038         to use readable_regcache::cooked_read_part.
7039         * regcache.c (regcache_cooked_read_part): Remove.
7040
7041 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7042
7043         * regcache.h (regcache_cooked_read_value): Remove, update
7044         callers to use readable_regcache::cooked_read_value.
7045         * regcache.c (regcache_cooked_read_value): Remove.
7046
7047 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7048
7049         * regcache.h (regcache_cooked_write): Remove, update callers to
7050         use regcache::cooked_write.
7051         * regcache.c (regcache_cooked_write): Remove.
7052
7053 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7054
7055         * regcache.h (regcache_invalidate): Remove, update callers to
7056         use detached_regcache::invalidate instead.
7057         * regcache.c (regcache_invalidate): Remove.
7058
7059 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7060
7061         * regcache.h (regcache_raw_write_part): Remove, update callers
7062         to use regcache::raw_write_part instead.
7063         * regcache.c (regcache_raw_write_part): Remove.
7064
7065 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7066
7067         * regcache.h (regcache_raw_read_part): Remove, update callers to
7068         use readable_regcache::raw_read_part instead.
7069         * regcache.c (regcache_raw_read_part): Remove.
7070
7071 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7072
7073         * regcache.h (regcache_cooked_read): Remove, update callers to
7074         use readable_regcache::cooked_read instead.
7075         * regcache.c (regcache_cooked_read): Remove.
7076
7077 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7078
7079         * regcache.h (regcache_raw_write): Remove, update callers to use
7080         regcache::raw_write instead.
7081         * regcache.c (regcache_raw_write): Remove.
7082
7083 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7084
7085         * regcache.h (regcache_raw_read): Remove, update callers to use
7086         readable_regcache::raw_read instead.
7087         * regcache.c (regcache_raw_read): Remove.
7088
7089 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7090
7091         * regcache.h (regcache_raw_update): Remove, update callers to
7092         use readable_regcache::raw_update instead.
7093         * regcache.c (regcache_raw_update): Remove.
7094
7095 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7096
7097         * regcache.h (regcache_register_status): Remove, update callers
7098         to use reg_buffer::get_register_status directly instead.
7099         * regcache.c (regcache_register_status): Remove.
7100
7101 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7102
7103         * regcache.h (regcache_get_ptid): Remove, update all callers to
7104         call regcache::ptid instead.
7105         * regcache.c (regcache_get_ptid): Remove.
7106
7107 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7108
7109         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
7110
7111 2018-05-30  Pedro Alves  <palves@redhat.com>
7112
7113         * common/common-exceptions.h (exception_rethrow): Use
7114         ATTRIBUTE_NORETURN.
7115
7116 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
7117
7118         * breakpoint.c (print_solib_event, check_status_catch_solib):
7119         Remove struct keyword in range-based for loops.
7120         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
7121         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
7122         Likewise.
7123         * linespec.c (find_superclass_methods, search_minsyms_for_name):
7124         Likewise.
7125         * symfile.c (addr_info_make_relative): Likewise.
7126         * thread.c (value_in_thread_stack_temporaries): Likewise.
7127
7128 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
7129
7130         PR gdb/16841
7131         * valops.c (value_struct_elt_for_reference): Call check_typedef on
7132         aggregate type to get its real type before accessing it.
7133
7134 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
7135
7136         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
7137         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
7138         * coff-pe-read.c (add_pe_forwarded_sym): Replace
7139         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
7140         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
7141         * jit.c (jit_breakpoint_re_set_internal): Likewise.
7142         * printcmd.c (info_address_command): Likewise.
7143
7144 2018-05-29  Tom Tromey  <tom@tromey.com>
7145
7146         * windows-nat.c (handle_exception): Update fall-through comment.
7147
7148 2018-05-29  Tom Tromey  <tom@tromey.com>
7149
7150         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
7151         (struct program_space) <added_solibs>: Now a std::vector.
7152         * breakpoint.c (print_solib_event): Update.
7153         (check_status_catch_solib): Update.
7154         * progspace.c (clear_program_space_solib_cache): Update.
7155         * solib.c (update_solib_list): Update.
7156
7157 2018-05-29  Tom Tromey  <tom@tromey.com>
7158
7159         * python/py-type.c (typy_richcompare): Update.
7160         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
7161         * gdbtypes.h (types_deeply_equal): Return bool.
7162         (types_equal): Likewise.
7163         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
7164         declare VEC.
7165         (check_types_equal): Change worklist to std::vector.  Return
7166         bool.
7167         (struct type_equality_entry): Add constructor.
7168         (compare_maybe_null_strings): Return bool.
7169         (check_types_worklist): Return bool.  Change worklist to
7170         std::vector.
7171         (types_deeply_equal): Use std::vector.
7172         (types_equal): Return bool.
7173         (compare_maybe_null_strings): Simplify.
7174
7175 2018-05-29  Tom Tromey  <tom@tromey.com>
7176
7177         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
7178
7179 2018-05-29  Tom Tromey  <tom@tromey.com>
7180
7181         * objc-lang.h: Don't include cp-support.h.
7182         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
7183         declare VEC.
7184
7185 2018-05-27  Tom Tromey  <tom@tromey.com>
7186
7187         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
7188
7189 2018-05-25  Tom Tromey  <tom@tromey.com>
7190
7191         * value.c (value::location): Initialize.
7192
7193 2018-05-25  Tom Tromey  <tom@tromey.com>
7194
7195         * dbxread.c (init_bincl_list): Remove.
7196         (bincl_list): Now a std::vector.
7197         (bincls_allocated, next_bincl): Remove.
7198         (free_bincl_list, do_free_bincl_list_cleanup)
7199         (make_cleanup_free_bincl_list): Remove.
7200         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
7201         unique_xmalloc_ptr.
7202         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
7203         (struct header_file_location): Add constructor.
7204         (add_bincl_to_list): Remove.
7205
7206 2018-05-25  Tom Tromey  <tom@tromey.com>
7207
7208         * tui/tui.c (tui_enable): Update.
7209         * mi/mi-interp.c (mi_interp::init): Update.
7210         * interps.h (class interp) <name>: New method.
7211         <m_name>: Rename from name.
7212         (~scoped_restore_interp): Update.
7213         * interps.c (interp::interp): Update.
7214         (interp_add, interp_set, interp_lookup_existing)
7215         (current_interp_named_p): Update.
7216
7217 2018-05-25  Tom Tromey  <tom@tromey.com>
7218
7219         * interps.c (interp_name): Remove.
7220         * mi/mi-interp.c (mi_interp::init): Update.
7221         * interps.h (interp_name): Remove.
7222         (~scoped_restore_interp): Update.
7223         * tui/tui.c (tui_enable): Update.
7224
7225 2018-05-25  Tom Tromey  <tom@tromey.com>
7226
7227         * utils.c (fputs_maybe_filtered): Update.
7228         * linespec.c (decode_line_full): Update.
7229         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
7230         (mi_print_breakpoint_for_event, mi_solib_loaded)
7231         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
7232         (mi_user_selected_context_changed): Update.
7233         * mi/mi-main.c (mi_execute_command): Update.
7234         * cli/cli-script.c (execute_control_command): Update.
7235         * python/python.c (execute_gdb_command): Update.
7236         * solib.c (info_sharedlibrary_command): Update.
7237         * interps.c (interp_ui_out): Remove.
7238         * interps.h (interp_ui_out): Remove.
7239
7240 2018-05-25  Tom Tromey  <tom@tromey.com>
7241
7242         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
7243         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
7244         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
7245
7246 2018-05-25  Tom Tromey  <tom@tromey.com>
7247
7248         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
7249         * interps.c (interp_exec): Use scoped_restore.
7250
7251 2018-05-25  Tom Tromey  <tom@tromey.com>
7252
7253         * remote.c (remote_target::remote_file_get): Use
7254         gdb::byte_vector.
7255         (remote_target::remote_file_put): Likewise.
7256
7257 2018-05-25  Tom Tromey  <tom@tromey.com>
7258
7259         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
7260         a std::string.
7261         (get_pe_section_index, add_pe_exported_sym): Update.
7262         (read_pe_exported_syms): Use gdb::def_vector.
7263
7264 2018-05-25  Tom Tromey  <tom@tromey.com>
7265
7266         * frame.c (remove_prev_frame): Remove.
7267         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
7268
7269 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
7270
7271         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
7272         Remove prototypes.
7273         * mips-linux-nat.c (supply_fpregset): Always call
7274         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
7275         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
7276         `mips_fill_fpregset'.
7277         * mips-linux-tdep.c (mips_supply_fpregset)
7278         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
7279         (mips_fill_fpregset_wrapper): Remove functions.
7280         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
7281         (mips_linux_fpregset): Remove variable.
7282         (mips_linux_iterate_over_regset_sections): Use
7283         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
7284         (mips_linux_o32_sigframe_init): Remove comment.
7285
7286 2018-05-25  Pedro Alves  <palves@redhat.com>
7287
7288         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
7289         (struct readahead_cache, struct packet_reg, struct
7290         remote_arch_state, class remote_state): Move higher up in the
7291         file.
7292         (remote_target::m_remote_state): Now an object instead of a pointer.
7293         (remote_target::get_remote_state): Adjust.
7294
7295 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7296
7297         * stack.c (select_and_print_frame): Delete.
7298         (struct function_bounds): Move struct within function.
7299         (func_command): Most content moved into new function
7300         find_frame_for_function, use new function, print result, add
7301         function comment.
7302         (find_frame_for_function): New function, now returns a result.
7303
7304 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7305
7306         * stack.c (iterate_over_block_arg_vars): Fix comment.
7307         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
7308
7309 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7310
7311         PR gdb/23203
7312         * frame.c
7313         (scoped_restore_selected_frame::scoped_restore_selected_frame):
7314         Define.
7315         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
7316         Define.
7317         * frame.h (class scoped_restore_selected_frame): New class.
7318         * stack.c (print_frame_local_vars): Remove catching and rethrowing
7319         of any exception, use scoped_restore_selected_frame to restore the
7320         frame instead.
7321
7322 2018-05-24  Pedro Alves  <palves@redhat.com>
7323
7324         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
7325         override.
7326
7327 2018-05-23  Tom Tromey  <tom@tromey.com>
7328
7329         * complaints.c (struct complaints): Remove.
7330         (symfile_complaint_book): Remove.
7331         (series): New global.
7332         (complaint_internal): Update.
7333         (clear_complaints): Update.
7334
7335 2018-05-23  Tom Tromey  <tom@tromey.com>
7336
7337         * complaints.c (counters): New global.
7338         (struct complain): Remove.
7339         (struct complaints) <root>: Remove.
7340         (complaint_sentinel): Remove.
7341         (symfile_complaint_book): Update.
7342         (find_complaint) Remove.
7343         (complaint_internal, clear_complaints): Update.
7344
7345 2018-05-23  Tom Tromey  <tom@tromey.com>
7346
7347         * complaints.c (struct complain) <file, line>: Remove.
7348         (find_complaint): Remove file, line parameters.
7349         (complaint_internal): Update.
7350
7351 2018-05-23  Tom Tromey  <tom@tromey.com>
7352
7353         * complaints.c (vcomplaint): Remove.
7354         (complaint_internal) Merge in contents of vcomplaint.
7355
7356 2018-05-23  Tom Tromey  <tom@tromey.com>
7357
7358         * complaints.c (struct complaints) <explanation>: Remove.
7359         (symfile_explanations): Remove.
7360         (symfile_complaint_book): Update.
7361         (vcomplaint): Update.
7362         (struct explanation): Remove.
7363
7364 2018-05-23  Tom Tromey  <tom@tromey.com>
7365
7366         * complaints.c (symfile_complaints): Remove.
7367         (complaint_internal): Remove "complaints" parameter.
7368         (clear_complaints, vcomplaint): Remove "c" parameter.
7369         (get_complaints): Remove.
7370         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
7371         (dwarf2_debug_line_missing_file_complaint)
7372         (dwarf2_debug_line_missing_end_sequence_complaint)
7373         (dwarf2_complex_location_expr_complaint)
7374         (dwarf2_const_value_length_mismatch_complaint)
7375         (dwarf2_section_buffer_overflow_complaint)
7376         (dwarf2_macro_malformed_definition_complaint)
7377         (dwarf2_invalid_attrib_class_complaint)
7378         (create_addrmap_from_index, dw2_symtab_iter_next)
7379         (dw2_expand_marked_cus)
7380         (dw2_debug_names_iterator::find_vec_in_debug_names)
7381         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
7382         (create_debug_type_hash_table, init_cutu_and_read_dies)
7383         (partial_die_parent_scope, add_partial_enumeration)
7384         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
7385         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
7386         (read_import_statement, read_file_scope, create_dwo_cu_reader)
7387         (create_cus_hash_table, create_dwp_hash_table)
7388         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
7389         (dwarf2_rnglists_process, dwarf2_ranges_process)
7390         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
7391         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
7392         (handle_struct_member_die, process_structure_scope)
7393         (read_array_type, read_common_block, read_module_type)
7394         (read_tag_pointer_type, read_typedef, read_base_type)
7395         (read_subrange_type, load_partial_dies, partial_die_info::read)
7396         (partial_die_info::read, partial_die_info::read)
7397         (partial_die_info::read, read_checked_initial_length_and_offset)
7398         (dwarf2_string_attr, read_formatted_entries)
7399         (dwarf_decode_line_header)
7400         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
7401         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
7402         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
7403         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
7404         (get_signatured_type, get_DW_AT_signature_type)
7405         (decode_locdesc, file_file_name, consume_improper_spaces)
7406         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
7407         (dwarf_decode_macro_bytes, dwarf_decode_macros)
7408         (dwarf2_symbol_mark_computed, set_die_type)
7409         (read_attribute_value): Update.
7410         * stap-probe.c (handle_stap_probe, get_stap_base_address):
7411         Update.
7412         * dbxread.c (unknown_symtype_complaint)
7413         (lbrac_mismatch_complaint, repeated_header_complaint)
7414         (set_namestring, function_outside_compilation_unit_complaint)
7415         (read_dbx_symtab, process_one_symbol): Update.
7416         * gdbtypes.c (stub_noname_complaint): Update.
7417         * windows-nat.c (handle_unload_dll): Update.
7418         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
7419         (decode_base_type): Update.
7420         * xcoffread.c (bf_notfound_complaint, ef_complaint)
7421         (eb_complaint, record_include_begin, record_include_end)
7422         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
7423         (process_xcoff_symbol, read_symbol)
7424         (function_outside_compilation_unit_complaint)
7425         (scan_xcoff_symtab): Update.
7426         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
7427         * buildsym.c (finish_block_internal, make_blockvector)
7428         (end_symtab_get_static_block, augment_type_symtab): Update.
7429         * dtrace-probe.c (dtrace_process_dof)
7430         (dtrace_static_probe_ops::get_probes): Update.
7431         * complaints.h (struct complaint): Don't declare.
7432         (symfile_complaints): Remove.
7433         (complaint_internal): Remove "complaints" parameter.
7434         (complaint): Likewise.
7435         (clear_complaints): Likewise.
7436         * symfile.c (syms_from_objfile_1, finish_new_objfile)
7437         (reread_symbols): Update.
7438         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
7439         (dwarf2_frame_cache, decode_frame_entry): Update.
7440         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
7441         * objc-lang.c (lookup_objc_class, lookup_child_selector)
7442         (info_selectors_command): Update.
7443         * macrotab.c (macro_include, check_for_redefinition)
7444         (macro_undef): Update.
7445         * objfiles.c (filter_overlapping_sections): Update.
7446         * stabsread.c (invalid_cpp_abbrev_complaint)
7447         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
7448         (define_symbol, error_type, read_type, rs6000_builtin_type)
7449         (stabs_method_name_from_physname, read_member_functions)
7450         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
7451         (attach_fields_to_type, complain_about_struct_wipeout)
7452         (read_range_type, read_args, common_block_start)
7453         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
7454         Update.
7455         * mdebugread.c (index_complaint, unknown_ext_complaint)
7456         (basic_type_complaint, bad_tag_guess_complaint)
7457         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
7458         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
7459         (parse_procedure, parse_lines)
7460         (function_outside_compilation_unit_complaint)
7461         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
7462         (bad_tag_guess_complaint, reg_value_complaint): Update.
7463         * cp-support.c (demangled_name_complaint): Update.
7464         * macroscope.c (sal_macro_scope): Update.
7465         * dwarf-index-write.c (class debug_names): Update.
7466
7467 2018-05-23  Tom Tromey  <tom@tromey.com>
7468
7469         * complaints.c (clear_complaints): Remove "noisy" parameter.
7470         * complaints.h (clear_complaints): Update.
7471         * symfile.c (syms_from_objfile_1, finish_new_objfile)
7472         (reread_symbols): Update.
7473
7474 2018-05-23  Tom Tromey  <tom@tromey.com>
7475
7476         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
7477         SUBSEQUENT_MESSAGE.
7478         (vcomplaint, clear_complaints): Update.
7479         (symfile_explanations): Remove some messages.
7480
7481 2018-05-23  Tom Tromey  <tom@tromey.com>
7482
7483         * complaints.c (internal_complaint): Remove.
7484         * complaints.h (internal_complaint): Remove.
7485
7486 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
7487
7488         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
7489
7490 2018-05-22  Pedro Alves  <palves@redhat.com>
7491
7492         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
7493         (remote_fileio_badfd, remote_fileio_return_errno)
7494         (remote_fileio_return_success, remote_fileio_func_open)
7495         (remote_fileio_func_open, remote_fileio_func_close)
7496         (remote_fileio_func_read, remote_fileio_func_write)
7497         (remote_fileio_func_lseek, remote_fileio_func_rename)
7498         (remote_fileio_func_unlink, remote_fileio_func_stat)
7499         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
7500         (remote_fileio_func_isatty, remote_fileio_func_system): Add
7501         remote_target parameter.
7502         (remote_fio_func_map) <func>: Add remote_target parameter.
7503         (do_remote_fileio_request, remote_fileio_request):
7504         * remote-fileio.h (remote_fileio_request):
7505         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
7506         remote_target parameter.
7507         (remote_notif_process, handle_notification): Adjust to pass down
7508         the remote.
7509         (remote_notif_state_allocate): Add remote_target parameter.  Save
7510         it.
7511         * remote-notif.h (struct remote_target): Forward declare.
7512         (struct notif_client) <parse, ack, can_get_pending_events>: Add
7513         remote_target parameter.
7514         (struct remote_notif_state) <remote>: New field.
7515         (remote_notif_ack, remote_notif_parse): Add remote_target
7516         parameter.
7517         (remote_notif_state_allocate, remote_notif_state_allocate): Add
7518         remote_target parameter.
7519         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
7520         (threads_listing_context, rmt_thread_action, protocol_feature)
7521         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
7522         (packet_result, struct threads_listing_context, remote_state):
7523         Move definitions and declarations higher up.
7524         (remote_target) <~remote_target>: Declare.
7525         (remote_download_command_source, remote_file_put, remote_file_get)
7526         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
7527         (remote_hostio_pread_vFile, remote_hostio_send_command)
7528         (remote_hostio_set_filesystem, remote_hostio_open)
7529         (remote_hostio_close, remote_hostio_unlink, remote_state)
7530         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
7531         (get_memory_write_packet_size, get_memory_read_packet_size)
7532         (append_pending_thread_resumptions, remote_detach_1)
7533         (append_resumption, remote_resume_with_vcont)
7534         (add_current_inferior_and_thread, wait_ns, wait_as)
7535         (process_stop_reply, remote_notice_new_inferior)
7536         (process_initial_stop_replies, remote_add_thread)
7537         (btrace_sync_conf, remote_btrace_maybe_reopen)
7538         (remove_new_fork_children, kill_new_fork_children)
7539         (discard_pending_stop_replies, stop_reply_queue_length)
7540         (check_pending_events_prevent_wildcard_vcont)
7541         (discard_pending_stop_replies_in_queue, stop_reply)
7542         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
7543         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
7544         (remote_interrupt_as, remote_interrupt_ns)
7545         (remote_get_noisy_reply, remote_query_attached)
7546         (remote_add_inferior, remote_current_thread, get_current_thread)
7547         (set_thread, set_general_thread, set_continue_thread)
7548         (set_general_process, write_ptid)
7549         (remote_unpack_thread_info_response, remote_get_threadinfo)
7550         (parse_threadlist_response, remote_get_threadlist)
7551         (remote_threadlist_iterator, remote_get_threads_with_ql)
7552         (remote_get_threads_with_qxfer)
7553         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
7554         (get_offsets, remote_check_symbols, remote_supported_packet)
7555         (remote_query_supported, remote_packet_size)
7556         (remote_serial_quit_handler, remote_detach_pid)
7557         (remote_vcont_probe, remote_resume_with_hc)
7558         (send_interrupt_sequence, interrupt_query)
7559         (remote_notif_get_pending_events, fetch_register_using_p)
7560         (send_g_packet, process_g_packet, fetch_registers_using_g)
7561         (store_register_using_P, store_registers_using_G)
7562         (set_remote_traceframe, check_binary_download)
7563         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
7564         (remote_xfer_live_readonly_partial, remote_read_bytes)
7565         (remote_send_printf, remote_flash_write, readchar)
7566         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
7567         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
7568         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
7569         (extended_remote_disable_randomization, extended_remote_run)
7570         (send_environment_packet, extended_remote_environment_support)
7571         (extended_remote_set_inferior_cwd, remote_write_qxfer)
7572         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
7573         (packet_command): Now methods of ...
7574         (remote_target): ... this class.
7575         (m_remote_state) <remote_target>: New field.
7576         (struct remote_state) <stop_reply_queue,
7577         remote_async_inferior_event_token, wait_forever_enabled_p>: New
7578         fields.
7579         (remote_state::remote_state): Allocate stop_reply_queue.
7580         (remote_state): Delete global.
7581         (get_remote_state_raw): Delete.
7582         (remote_target::get_remote_state): Allocate m_remote_state on
7583         demand.
7584         (get_current_remote_target): New.
7585         (remote_ops, extended_remote_ops): Delete.
7586         (wait_forever_enabled_p, remote_async_inferior_event_token):
7587         Delete, moved to struct remote_state.
7588         (remote_target::close): Delete self.  Destruction bits split to
7589         ...
7590         (remote_target::~remote_target): ... this.
7591         (show_memory_packet_size): Adjust to use
7592         get_current_remote_target.
7593         (struct protocol_feature) <func>: Add remote_target parameter.
7594         All callers adjusted.
7595         (curr_quit_handler_target): New.
7596         (remote_serial_quit_handler): Reimplement.
7597         (remote_target::open_1): Adjust to use get_current_remote_target.
7598         Heap-allocate remote_target/extended_remote_target instances.
7599         (vcont_builder::vcont_builder): Add remote_target parameter, and
7600         save it in m_remote.  All callers adjusted.
7601         (vcont_builder::m_remote): New field.
7602         (vcont_builder::restart, vcont_builder::flush)
7603         (vcont_builder::push_action): Use it.
7604         (remote_target::commit_resume): Use it.
7605         (struct queue_iter_param) <remote>: New field.
7606         (remote_target::remove_new_fork_children): Fill in 'remote' field.
7607         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
7608         (check_pending_event_prevents_wildcard_vcont_callback)
7609         (remote_target::check_pending_events_prevent_wildcard_vcont)
7610         (remote_target::discard_pending_stop_replies)
7611         (remote_target::discard_pending_stop_replies_in_queue)
7612         (remote_target::remote_notif_remove_queued_reply): Fill in
7613         'remote' field.
7614         (remote_notif_get_pending_events): New.
7615         (remote_target::readchar, remote_target::remote_serial_write):
7616         Save/restore curr_quit_handler_target.
7617         (putpkt): New.
7618         (kill_new_fork_children): Fill in 'remote' field.
7619         (packet_command): Use get_current_remote_target, defer to
7620         remote_target method of same name.
7621         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
7622         parameter, and save it in m_remote.  All callers adjusted.
7623         (scoped_remote_fd::release): Use m_remote.
7624         (scoped_remote_fd::m_remote): New field.
7625         (remote_file_put, remote_file_get, remote_file_delete): Use
7626         get_current_remote_target, defer to remote_target method of same
7627         name.
7628         (remote_btrace_reset): Add remote_state paremeter.  Update all
7629         callers.
7630         (remote_async_inferior_event_handler). Pass down 'data'.
7631         (remote_new_objfile): Use get_current_remote_target.
7632         (remote_target::vcont_r_supported): New.
7633         (set_range_stepping): Use get_current_remote_target and
7634         remote_target::vcont_r_supported.
7635         (_initialize_remote): Don't allocate 'remote_state' and
7636         'stop_reply_queue' globals.
7637         * remote.h (struct remote_target): Forward declare.
7638         (getpkt, putpkt, remote_notif_get_pending_events): Add
7639         'remote_target' parameter.
7640
7641 2018-05-22  Pedro Alves  <palves@redhat.com>
7642
7643         * remote.c (vcont_builder): Now a class.  Make all data members
7644         private.
7645         (vcont_builder) <vcont_builder, restart, flush, push_action>:
7646         Declare methods.
7647         (vcont_builder_restart): Rename to ...
7648         (vcont_builder::restart): ... this.
7649         (vcont_builder_flush): Rename to ...
7650         (vcont_builder::flush): ... this.
7651         (vcont_builder_push_action): Rename to ...
7652         (vcont_builder::push_action): ... this.
7653         (remote_target::commit_resume): Adjust.
7654
7655 2018-05-22  Pedro Alves  <palves@redhat.com>
7656
7657         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
7658         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
7659         (get_fixed_memory_packet_size): New.
7660         (get_memory_packet_size): Use it.
7661         (set_memory_packet_size): Don't override the config size with
7662         DEFAULT_MAX_MEMORY_PACKET_SIZE.
7663         (show_memory_packet_size): Use get_fixed_memory_packet_size.
7664         Don't refer to get_memory_packet_size if not connected to a remote
7665         target.  Show "(default)" if configured size is 0.
7666
7667 2018-05-22  Pedro Alves  <palves@redhat.com>
7668
7669         * remote.c (remote_target::mourn_inferior): Move
7670         discard_pending_stop_replies call here from ...
7671         (_initialize_remote): ... here.
7672
7673 2018-05-22  Pedro Alves  <palves@redhat.com>
7674
7675         * remote.c (compare_section_command): Remove set_general_process
7676         call.
7677
7678 2018-05-22  Pedro Alves  <palves@redhat.com>
7679
7680         * remote.c (struct packet_reg, struct remote_arch_state):
7681         Move higher up in the file.
7682         (remote_state) <m_arch_states>: Store remote_arch_state values
7683         instead of remote_arch_state pointers.
7684         (remote_state::get_remote_arch_state): Adjust.
7685
7686 2018-05-22  Pedro Alves  <palves@redhat.com>
7687
7688         * remote.c: Include <unordered_map>.
7689         (remote_state): Now a class.
7690         (remote_state) <get_remote_arch_state>: Declare method.
7691         <get_remote_arch_state>: New field.
7692         (remote_arch_state) <remote_arch_state>: Declare ctor.
7693         <regs>: Now a unique_ptr.
7694         (remote_gdbarch_data_handle): Delete.
7695         (get_remote_arch_state): Delete.
7696         (remote_state::get_remote_arch_state): New.
7697         (get_remote_state): Adjust to call remote_state's
7698         get_remote_arch_state method.
7699         (init_remote_state): Delete, bits factored out to ...
7700         (remote_arch_state::remote_arch_state): ... this new method.
7701         (get_remote_packet_size, get_memory_packet_size)
7702         (process_g_packet, remote_target::fetch_registers)
7703         (remote_target::prepare_to_store, store_registers_using_G)
7704         (remote_target::store_registers, remote_target::get_trace_status):
7705         Adjust to call remote_state's method.
7706         (_initialize_remote): Remove reference to
7707         remote_gdbarch_data_handle.
7708
7709 2018-05-22  Pedro Alves  <palves@redhat.com>
7710
7711         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
7712         pread>: New method declarations.
7713         (remote_target::open_1): Adjust.
7714         (readahead_cache_invalidate): Rename to ...
7715         (readahead_cache::invalidate): ... this, and adjust to be a class
7716         method.
7717         (readahead_cache_invalidate_fd): Rename to ...
7718         (readahead_cache::invalidate_fd): ... this, and adjust to be a
7719         class method.
7720         (remote_hostio_pwrite): Adjust.
7721         (remote_hostio_pread_from_cache): Rename to ...
7722         (readahead_cache::pread): ... this, and adjust to be a class
7723         method.
7724         (remote_hostio_close): Adjust.
7725
7726 2018-05-22  Pedro Alves  <palves@redhat.com>
7727
7728         * remote.c (remote_hostio_close_cleanup): Delete.
7729         (class scoped_remote_fd): New.
7730         (remote_file_put, remote_file_get): Use it.
7731
7732 2018-05-22  Pedro Alves  <palves@redhat.com>
7733
7734         (struct vCont_action_support): Use bool and initialize all fields.
7735         (struct readahead_cache): Initialize all fields.
7736         (remote_state): Use bool and initialize all fields.
7737         (remote_state::remote_state, remote_state::~remote_state): New.
7738         (new_remote_state): Delete.
7739         (_initialize_remote): Use new to allocate remote_state.
7740
7741 2018-05-22  Pedro Alves  <palves@redhat.com>
7742             張俊芝  <zjz@zjz.name>
7743
7744         PR gdb/22973
7745         * c-exp.y: Include "c-support.h".
7746         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
7747         of tolower.  Use c_ident_is_alpha to scan names.
7748         * c-lang.c: Include "c-support.h".
7749         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
7750         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
7751         * c-support.h: New file, with bits factored out from ...
7752         * cp-name-parser.y: ... this file.
7753         Include "c-support.h".
7754         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
7755         c-support.h and renamed.
7756         (symbol_end, yylex): Adjust.
7757
7758 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7759
7760         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
7761         parameter type to CORE_ADDR.
7762         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
7763         parameter type in declaration to CORE_ADDR.
7764         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
7765         target_auxv_search to get AT_HWCAP and use the result to get the
7766         target description.
7767         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
7768         to CORE_ADDR. Remove the cast of the return value to unsigned
7769         long. Fix error predicate of target_auxv_search.
7770         (ppc_linux_nat_target::read_description): Change the type of the
7771         hwcap variable to CORE_ADDR.
7772
7773 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7774
7775         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
7776         if the size of fpscr is larger than 32 bits.
7777
7778 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7779
7780         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
7781         (ppc32_linux_vsxregmap): New global.
7782         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
7783         regcache_supply_regset, and regcache_collect_regset.
7784         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
7785         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
7786         (fetch_vsx_register, store_vsx_register): Remove.
7787         (fetch_vsx_registers): Add regno parameter. Get regset using
7788         ppc_linux_vsxregset. Use regset to supply registers.
7789         (store_vsx_registers): Add regno parameter. Get regset using
7790         ppc_linux_vsxregset. Use regset to collect registers.
7791         (fetch_register): Call fetch_vsx_registers instead of
7792         fetch_vsx_register.
7793         (store_register): Call store_vsx_registers instead of
7794         store_vsx_register.
7795         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
7796         new regno parameter.
7797         (store_ppc_registers): Call store_vsx_registers with -1 for the
7798         new regno parameter.
7799         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
7800         (ppc_collect_vsxregset): Remove.
7801
7802 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7803
7804         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
7805         offset fields.
7806         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
7807         for vector register offset fields.
7808         (ppc64_fbsd_reg_offsets): Likewise.
7809         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
7810         to vector register offset fields.
7811         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
7812         to vector register offset fields.
7813         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
7814         vector register offset fields.
7815         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
7816         initializers for vector register offset fields.
7817         (rs6000_aix64_reg_offsets): Likewise.
7818         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
7819         (ppc_supply_vrregset): Remove.
7820         (ppc_collect_vrregset): Remove.
7821         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
7822         (ppc_linux_vrregset) : New function.
7823         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
7824         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
7825         (ppc32_linux_vrregset): Remove.
7826         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
7827         and use result instead of ppc32_linux_vrregset.
7828         (ppc32_linux_reg_offsets): Remove initializers for vector register
7829         offset fields.
7830         (ppc64_linux_reg_offsets): Likewise.
7831         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
7832         * ppc-linux-nat.c: Include regset.h.
7833         (gdb_vrregset_t): Adjust comment to account for little-endian
7834         mode.
7835         (supply_vrregset, fill_vrregset): Remove.
7836         (fetch_altivec_register, store_altivec_register): Remove.
7837         (fetch_altivec_registers): Add regno parameter. Get regset using
7838         ppc_linux_vrregset. Use regset to supply registers.
7839         (store_altivec_registers): Add regno parameter. Get regset using
7840         ppc_linux_vrregset. Use regset to collect registers.
7841         (fetch_register): Call fetch_altivec_registers instead of
7842         fetch_altivec_register.
7843         (store_register): Call store_altivec_registers instead of
7844         store_altivec_register.
7845         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
7846         the new regno parameter.
7847         (store_ppc_registers): Call store_altivec_registers with -1 for
7848         the new regno parameter.
7849
7850 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7851
7852         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
7853         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
7854         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
7855         (gdb_vrregset_t): Change array type size to
7856         PPC_LINUX_SIZEOF_VRREGSET.
7857         (gdb_vsxregset_t): Change array type size to
7858         PPC_LINUX_SIZEOF_VSXREGSET.
7859         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
7860         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
7861         PPC_LINUX_SIZEOF_VSXREGSET.
7862
7863 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7864
7865         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
7866         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
7867         nat/ppc-linux.c.
7868         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
7869         ppc_linux_target_wordsize with tid.
7870         (ppc_linux_nat_target::read_description): Call ppc_linux_target
7871         wordsize with tid.
7872         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
7873         (ppc64_64bit_inferior_p): Add static and inline specifiers.
7874         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
7875         tid parameter. Remove static specifier.
7876         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
7877         (ppc_linux_target_wordsize): New declaration.
7878
7879 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7880
7881         * arch/ppc-linux-common.c: New file.
7882         * arch/ppc-linux-common.h: New file.
7883         * arch/ppc-linux-tdesc.h: New file.
7884         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
7885         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
7886         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
7887         arch/ppc-linux-tdesc.h.
7888         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
7889         arch/ppc-linux-tdesc.h.
7890         (ppc_linux_nat_target::read_description): Remove target
7891         description matching code. Fill a ppc_linux_features struct and
7892         call ppc_linux_match_description with it. Move comment about ISA
7893         2.05 to ppc-linux-common.c.
7894         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
7895         arch/ppc-linux-tdesc.h.
7896         (ppc_linux_core_read_description): Remove target description
7897         matching code. Fill a ppc_linux_features struct and call
7898         ppc_linux_match_description with it.
7899         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
7900         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
7901         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
7902         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
7903         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
7904         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
7905         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
7906         (tdesc_powerpc_e500l): Remove.
7907
7908 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
7909
7910         * ada-lang.c (catch_assert_command): Pass empty string instead
7911         of NULL for excep_string argument.
7912
7913 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
7914
7915         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
7916         the width of the requested register exceeds the width of the
7917         `ptrace' data type.
7918
7919 2018-05-21  Tom Tromey  <tom@tromey.com>
7920
7921         * printcmd.c (output_command): Remove.
7922         (output_command_const): Rename to output_command.
7923         * valprint.h (output_command): Rename from output_command_const.
7924         * tracepoint.c (trace_dump_actions): Call output_command.
7925
7926 2018-05-21  Tom Tromey  <tom@tromey.com>
7927
7928         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
7929         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
7930         * ada-lang.h (create_ada_exception_catchpoint): Update.
7931         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
7932         std::string.
7933         (create_excep_cond_exprs, ~ada_catchpoint)
7934         (should_stop_exception, print_one_exception)
7935         (print_mention_exception, print_recreate_exception): Update.
7936         (ada_get_next_arg): Remove.
7937         (catch_ada_exception_command_split): Use std::string.  Change type
7938         of "excep_string", "cond_string".
7939         (catch_ada_exception_command): Update.
7940         (create_ada_exception_catchpoint): Change type of excep_string.
7941         (ada_exception_sal): Remove excep_string parameter.
7942         (~ada_catchpoint): Remove.
7943
7944 2018-05-21  Tom Tromey  <tom@tromey.com>
7945
7946         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
7947         cleanup.
7948
7949 2018-05-21  Tom Tromey  <tom@tromey.com>
7950
7951         * ada-lang.c (ada_exception_message_1, ada_exception_message):
7952         Return unique_xmalloc_ptr.
7953         (print_it_exception): Update.
7954
7955 2018-05-21  Tom Tromey  <tom@tromey.com>
7956
7957         * tracepoint.c (trace_dump_actions): Use std::string.
7958
7959 2018-05-21  Tom Tromey  <tom@tromey.com>
7960
7961         * symfile.c (reread_symbols): Use std::string for original_name.
7962
7963 2018-05-21  Tom Tromey  <tom@tromey.com>
7964
7965         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
7966         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
7967         constructor.
7968
7969 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
7970
7971         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
7972         instance to...
7973         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
7974         * objfiles.c (get_objfile_bfd_data): Allocate
7975         objfile_per_bfd_storage with obstack_new when allocating on
7976         obstack.
7977
7978 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
7979
7980         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
7981         OBSTACK_ZALLOC.
7982         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
7983         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
7984         * mdebugread.c (mdebug_build_psymtabs): Likewise.
7985         (add_pending): Likewise.
7986         (parse_symbol): Likewise.
7987         (parse_partial_symbols): Likewise.
7988         (psymtab_to_symtab_1): Likewise.
7989         (new_psymtab): Likewise.
7990         (elfmdebug_build_psymtabs): Likewise.
7991         * minsyms.c (terminate_minimal_symbol_table): Likewise.
7992         * objfiles.c (get_objfile_bfd_data): Likewise.
7993         (objfile_register_static_link): Likewise.
7994         * psymtab.c (allocate_psymtab): Likewise.
7995         * stabsread.c (read_member_functions): Likewise.
7996         * xcoffread.c (xcoff_end_psymtab): Likewise.
7997
7998 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
7999
8000         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
8001         compiler supports std::is_trivially_constructible.
8002         * common/poison.h: Include obstack.h.
8003         (IsMallocable): Define to is_trivially_constructible if the
8004         compiler supports it, define to true_type otherwise.
8005         (xobnew): New.
8006         (XOBNEW): Redefine.
8007         (xobnewvec): New.
8008         (XOBNEWVEC): Redefine.
8009         * gdb_obstack.h (obstack_zalloc): New.
8010         (OBSTACK_ZALLOC): Redefine.
8011         (obstack_calloc): New.
8012         (OBSTACK_CALLOC): Redefine.
8013         (obstack_new): New.
8014         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
8015         (gdbarch_obstack): New declaration in gdbarch.h, definition in
8016         gdbarch.c.
8017         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
8018         obstack_calloc/obstack_zalloc.
8019         (gdbarch_obstack_zalloc): Remove.
8020         * target-descriptions.c (tdesc_data_init): Use obstack_new.
8021
8022 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8023
8024         * stack.c (backtrace_command_1): Remove useless variable int i.
8025
8026 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8027
8028         * stack.c (print_frame_info): Fix comment.
8029
8030 2018-05-18  Tom Tromey  <tom@tromey.com>
8031
8032         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
8033         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
8034         (~dwarf2_per_objfile): Update
8035         (dwarf2_get_dwz_file): Use new.
8036         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
8037         unique_ptr.
8038
8039 2018-05-18  Tom Tromey  <tom@tromey.com>
8040
8041         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
8042         unique_ptr.
8043         * dwarf2read.c (struct dwp_file): Add constructor and
8044         initializers.
8045         (open_and_init_dwp_file): Return a unique_ptr.
8046         (dwarf2_per_objfile, create_dwp_hash_table)
8047         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
8048         (lookup_dwo_unit_in_dwp): Update.
8049         (open_and_init_dwp_file, get_dwp_file): Update.
8050
8051 2018-05-18  Tom Tromey  <tom@tromey.com>
8052
8053         * dwarf2read.c (dwarf2_per_objfile): Update.
8054         (struct mapped_index): Add initializers.
8055         (dwarf2_read_index): Use new.
8056         (dw2_symtab_iter_init): Update.
8057         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
8058         unique_ptr.
8059
8060 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8061
8062         * dwarf2read.c (mapped_index) <total_size>: Remove.
8063
8064 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8065
8066         * unittests/format_pieces-selftests.c (test_format_specifier):
8067         Add ARI comments.
8068
8069 2018-05-18  Tom Tromey  <tom@tromey.com>
8070
8071         * c-typeprint.c (maybe_print_hole): New function.
8072         (c_print_type_struct_field_offset): Update.
8073         (c_type_print_base_struct_union): Call maybe_print_hole.
8074
8075 2018-05-17  Keith Seitz  <keiths@redhat.com>
8076
8077         * breakpoint.c (build_bpstat_chain): New function, moved from
8078         bpstat_stop_status.
8079         (bpstat_stop_status): Add optional parameter, `stop_chain'.
8080         If no stop chain is passed, call build_bpstat_chain to build it.
8081         * breakpoint.h (build_bpstat_chain): Declare.
8082         (bpstat_stop_status): Move documentation here from breakpoint.c.
8083         * infrun.c (handle_signal_stop): Before eliding inlined frames,
8084         build the stop chain and pass it to skip_inline_frames.
8085         Pass this stop chain to bpstat_stop_status.
8086         * inline-frame.c: Include breakpoint.h.
8087         (stopped_by_user_bp_inline_frame): New function.
8088         (skip_inline_frames): Add parameter `stop_chain'.
8089         Move documention to inline-frame.h.
8090         If non-NULL, use stopped_by_user_bp_inline_frame to determine
8091         whether the frame should be elided.
8092         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
8093         Add moved documentation and update for new parameter.
8094
8095 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
8096
8097         PR cli/14975
8098         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
8099         unittests/format_pieces-selftests.c.
8100         * common/format.h (format_piece) <operator==>: New.
8101         (format_pieces) <operator[]>: Remove.
8102         * common/format.c (format_pieces::format_pieces): Handle \e.
8103         * unittests/format_pieces-selftests.c: New.
8104
8105 2018-05-17  Tom Tromey  <tom@tromey.com>
8106
8107         PR symtab/23010:
8108         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
8109         (dw2_instantiate_symtab): Add skip_partial parameter.
8110         (dw2_find_last_source_symtab, dw2_map_expand_apply)
8111         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
8112         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
8113         (dw2_expand_symtabs_matching_one)
8114         (dw2_find_pc_sect_compunit_symtab)
8115         (dw2_debug_names_lookup_symbol)
8116         (dw2_debug_names_expand_symtabs_for_function): Update.
8117         (init_cutu_and_read_dies): Add skip_partial parameter.
8118         (process_psymtab_comp_unit, build_type_psymtabs_1)
8119         (process_skeletonless_type_unit, load_partial_comp_unit)
8120         (psymtab_to_symtab_1): Update.
8121         (load_full_comp_unit): Add skip_partial parameter.
8122         (process_imported_unit_die, dwarf2_read_addr_index)
8123         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
8124         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
8125         (read_signatured_type): Update.
8126
8127 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
8128
8129         * value.c (release_value): Remove unused variable.
8130         (record_latest_value): Likewise.
8131         (access_value_history): Likewise.
8132         (preserve_values): Likewise.
8133
8134 2018-05-17  Tom Tromey  <tom@tromey.com>
8135
8136         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
8137         Initialize.
8138
8139 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
8140
8141         PR gdb/22286
8142         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
8143         Also handle registers whose width is not a multiple of
8144         PTRACE_TYPE_RET.
8145         (linux_nat_trad_target::store_register): Likewise.
8146
8147 2018-05-16  Tom Tromey  <tom@tromey.com>
8148
8149         * gdbcore.h (core_bfd): Redefine.
8150         * corelow.c (core_target::close): Update.
8151         (core_target_open): Update.
8152         * progspace.h (struct program_space) <cbfd>: Now a
8153         gdb_bfd_ref_ptr.
8154
8155 2018-05-16  Tom Tromey  <tom@tromey.com>
8156
8157         PR cli/19551:
8158         * symfile-add-flags.h (enum symfile_add_flags)
8159         <SYMFILE_NOT_FILENAME>: New constant.
8160         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
8161         objfile name from BFD.
8162         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
8163         * minidebug.c (find_separate_debug_file_in_section): Put
8164         ".gnu_debugdata" into BFD's file name.
8165
8166 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
8167
8168         * regcache.c (regcache_read_ftype, regcache_write_ftype):
8169         Remove.
8170
8171 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
8172
8173         PR binutils/21446
8174         * aarch64-tdep.c (aarch64_analyze_prologue,
8175         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
8176         Indicate not interested in errors.
8177
8178 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8179
8180         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
8181         Supply the MIPS_ZERO_REGNUM register.
8182
8183 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8184
8185         * mips-tdep.c (mask_address_var): Make variable static.
8186
8187 2018-05-14  Tom Tromey  <tom@tromey.com>
8188
8189         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
8190
8191 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
8192
8193         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
8194         FXSAVE_ADDR for the mxcsr register.
8195
8196 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
8197
8198         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
8199
8200 2018-05-11  Pedro Alves  <palves@redhat.com>
8201
8202         * corelow.c (core_target) <core_target>: No longer inline.
8203         Initialize m_core_gdbarch, m_core_vec and build the section table
8204         here.
8205         <~core_target>: New.
8206         <core_gdbarch, get_core_register_section>: New methods.
8207         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
8208         factored out from ...
8209         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
8210         (core_ops): Delete.
8211         (sniff_core_bfd): Add gdbarch parameter.
8212         (core_close): Delete, merged into ...
8213         (core_target::close): ... here.  Delete self.
8214         (core_close_cleanup): Delete.
8215         (core_target_open): Allocate a core_target on the heap.  Use a
8216         unique_ptr instead of a cleanup.  Bits moved into the core_target
8217         ctor.  Adjust to use core_target methods instead of globals.
8218         (get_core_register_section): Rename to ...
8219         (core_target::get_core_register_section): ... this and adjust.
8220         (struct get_core_registers_cb_data): New.
8221         (get_core_registers_cb): Use it.  Use bool.
8222         (core_target::fetch_registers, core_target::files_info)
8223         (core_target::xfer_partial, core_target::read_description)
8224         (core_target::pid_to, core_target::thread_name): Adjust to
8225         reference class fields instead of globals.
8226         * target.h (struct target_ops_deleter, target_ops_up): New.
8227
8228 2018-05-11  Pedro Alves  <palves@redhat.com>
8229
8230         * corefile.c (core_file_command): Move to corelow.c.
8231         * corelow.c (the_core_target): Delete.
8232         (core_file_command): Moved from corefile.c.  Check exec_bfd
8233         instead of the_core_target.  Use target_detach instead of calling
8234         into the_core_target directly.
8235         (maybe_say_no_core_file_now): New.
8236         (core_target::detach): Use it.
8237         (_initialize_corelow): Remove references to the_core_target.
8238         * gdbcore.h (the_core_target): Delete.
8239
8240 2018-05-11  Tom Tromey  <tromey@redhat.com>
8241             Pedro Alves  <palves@redhat.com>
8242
8243         * corefile.c (core_bfd): Remove.
8244         * gdbcore.h (core_bfd): Now a macro.
8245         * progspace.h (struct program_space) <cbfd>: New field.
8246
8247 2018-05-11  Tom Tromey  <tom@tromey.com>
8248
8249         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
8250         gdb::def_vector.
8251
8252 2018-05-10  Tom Tromey  <tom@tromey.com>
8253
8254         * configure: Rebuild.
8255         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
8256
8257 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
8258
8259         PR server/23158:
8260         * regformats/regdat.sh: Adjust script, following the addition
8261         of the new expedite_regs parameter to init_target_desc.
8262
8263 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
8264     
8265         PR gdb/23127
8266         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
8267         set_gdbarch_significant_addr_bit.
8268         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
8269         set_gdbarch_significant_addr_bit.
8270         * utils.c (address_significant): Update to sign extend addr.
8271
8272 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
8273
8274         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
8275         (xtensa_linux_init_abi): Limit tdep->num_regs by
8276         tdep->num_nopriv_regs.
8277         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
8278         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
8279         not initialized.
8280
8281 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
8282
8283         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
8284
8285 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
8286
8287         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
8288         (I387_MXCSR_INIT_VAL): New constant.
8289         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
8290         buffer if it was supplied by the inferior.
8291         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
8292         (i387_xsave_get_clear_bv): New function.
8293         (i387_supply_xsave): Only read x87 control registers from the
8294         xsave buffer if the feature is enabled, and the state will have
8295         been written, otherwise, provide a suitable default.
8296         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
8297         including x87 control registers.  Update control registers if they
8298         have changed from the default value, and mark features as enabled
8299         as required.
8300         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
8301
8302 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
8303
8304         * spu-tdep.c (info_spu_event_command): Fix output formatting.
8305
8306 2018-05-07  Tom Tromey  <tom@tromey.com>
8307
8308         * configure: Rebuild.
8309         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
8310
8311 2018-05-07  Tom Tromey  <tom@tromey.com>
8312
8313         PR tdep/20362:
8314         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
8315         bit.  Use correct value for VDIV.
8316
8317 2018-05-04  Tom Tromey  <tom@tromey.com>
8318
8319         * configure: Rebuild.
8320         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
8321
8322 2018-05-04  Tom Tromey  <tom@tromey.com>
8323
8324         * linux-record.c (record_linux_system_call) <case
8325         RECORD_SYS_RECVFROM>: Add "break".
8326
8327 2018-05-04  Tom Tromey  <tom@tromey.com>
8328
8329         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
8330         Add missing "break".
8331         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
8332         Add missing "break".
8333
8334 2018-05-04  Tom Tromey  <tom@tromey.com>
8335
8336         * rs6000-tdep.c (ppc_process_record_op4)
8337         (ppc_process_record_op63): Add fall-through comment.
8338
8339 2018-05-04  Tom Tromey  <tom@tromey.com>
8340
8341         * i386-tdep.c (i386_process_record): Add fall-through comment.
8342
8343 2018-05-04  Tom Tromey  <tom@tromey.com>
8344
8345         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
8346         comment.
8347
8348 2018-05-04  Tom Tromey  <tom@tromey.com>
8349
8350         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
8351         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
8352         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
8353         comment.
8354         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
8355         comment.
8356         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
8357         comment.
8358
8359 2018-05-04  Tom Tromey  <tom@tromey.com>
8360
8361         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
8362
8363 2018-05-04  Tom Tromey  <tom@tromey.com>
8364
8365         * s390-tdep.c (s390_process_record): Fix fall-through comments.
8366         * xcoffread.c (scan_xcoff_symtab): Move comment later.
8367         * symfile.c (section_is_mapped): Fix fall-through comment.
8368         * stabsread.c (define_symbol, read_member_functions): Fix
8369         fall-through comment.
8370         * s390-linux-tdep.c (s390_process_record): Fix fall-through
8371         comment.
8372         * remote.c (remote_wait_as): Fix fall-through comment.
8373         * p-exp.y (yylex): Fix fall-through comment.
8374         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
8375         comment.
8376         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
8377         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
8378         * jv-exp.y (yylex): Fix fall-through comment.
8379         * go-exp.y (lex_one_token): Fix fall-through comment.
8380         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
8381         fall-through comment.
8382         * f-exp.y (yylex): Fix fall-through comment.
8383         * dwarf2read.c (process_die): Fix fall-through comments.
8384         * dbxread.c (process_one_symbol): Fix fall-through comment.
8385         * d-exp.y (lex_one_token): Fix fall-through comment.
8386         * cp-name-parser.y (yylex): Fix fall-through comment.
8387         * coffread.c (coff_symtab_read): Fix fall-through comment.
8388         * c-exp.y (lex_one_token): Fix fall-through comment.
8389         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
8390         comment.
8391         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
8392         comment.
8393
8394 2018-05-04  Tom Tromey  <tom@tromey.com>
8395
8396         PR python/22730:
8397         * NEWS: Mention gdb.execute change.
8398         * gdbcmd.h (execute_control_command): Don't declare.
8399         * python/python.c (execute_gdb_command): Use read_command_lines_1,
8400         execute_control_commands, execute_control_commands_to_string.
8401         * cli/cli-script.h (execute_control_commands)
8402         (execute_control_commands_to_string): Declare.
8403         (execute_control_command): Add from_tty parameter.
8404         * cli/cli-script.c (execute_control_commands)
8405         (execute_control_commands_to_string): New functions.
8406         (execute_user_command): Use execute_control_commands.
8407         (execute_control_command_1): Add "from_tty" parameter.  Update.
8408         (execute_control_command): Likewise.
8409
8410 2018-05-04  Tom Tromey  <tom@tromey.com>
8411
8412         PR python/22731:
8413         * NEWS: Mention that breakpoint commands are writable.
8414         * python/py-breakpoint.c (bppy_set_commands): New function.
8415         (breakpoint_object_getset) <"commands">: Use it.
8416
8417 2018-05-04  Tom Tromey  <tom@tromey.com>
8418
8419         * tracepoint.c (actions_command): Update.
8420         * mi/mi-cmd-break.c (mi_command_line_array)
8421         (mi_command_line_array_cnt, mi_command_line_array_ptr)
8422         (mi_read_next_line): Remove.
8423         (mi_cmd_break_commands): Update.
8424         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
8425         function_view.
8426         * cli/cli-script.c (get_command_line): Update.
8427         (process_next_line): Use function_view.  Constify.
8428         (recurse_read_control_structure, read_command_lines)
8429         (read_command_lines_1): Change argument types to function_view.
8430         (do_define_command, document_command): Update.
8431         * breakpoint.h (check_tracepoint_command): Don't declare.
8432         * breakpoint.c (check_tracepoint_command): Remove.
8433         (commands_command_1, create_tracepoint_from_upload): Update.
8434
8435 2018-05-04  Tom Tromey  <tom@tromey.com>
8436
8437         PR gdb/11750:
8438         * cli/cli-script.h (enum command_control_type) <define_control>:
8439         New constant.
8440         * cli/cli-script.c (multi_line_command_p): Handle define_control.
8441         (build_command_line, execute_control_command_1)
8442         (process_next_line): Likewise.
8443         (do_define_command): New function, extracted from define_command.
8444         (define_command): Use it.
8445
8446 2018-05-04  Tom Tromey  <tom@tromey.com>
8447
8448         * tracepoint.c (actions_command): Update.
8449         * cli/cli-script.h (read_command_lines): Update.
8450         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
8451         (MAX_TMPBUF): Remove define.
8452         (define_command): Use string_printf.
8453         (document_command): Likewise.
8454         * breakpoint.c (commands_command_1): Update.
8455
8456 2018-05-04  Tom Tromey  <tom@tromey.com>
8457
8458         * top.c (execute_command): Update.
8459         * cli/cli-script.h (print_command_lines): Now varargs.
8460         * cli/cli-script.c (print_command_lines): Now varargs.
8461         (execute_control_command_1) <case while_control, case if_control>:
8462         Update.
8463
8464 2018-05-04  Tom Tromey  <tom@tromey.com>
8465
8466         * tracepoint.c (all_tracepoint_actions): Rename from
8467         all_tracepoint_actions_and_cleanup.  Change return type.
8468         (actions_command, encode_actions_1, encode_actions)
8469         (trace_dump_actions, tdump_command): Update.
8470         * remote.c (remote_download_command_source): Update.
8471         * python/python.c (gdbpy_eval_from_control_command)
8472         (python_command, python_interactive_command): Update.
8473         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
8474         * guile/guile.c (guile_command)
8475         (gdbscm_eval_from_control_command, guile_command): Update.
8476         * compile/compile.c (compile_code_command)
8477         (compile_print_command, compile_to_object): Update.
8478         * cli/cli-script.h (struct command_lines_deleter): New.
8479         (counted_command_line): New typedef.
8480         (struct command_line): Add constructor, destructor.
8481         <body_list>: Remove.
8482         <body_list_0, body_list_1>: New members.
8483         (command_line_up): Remove typedef.
8484         (read_command_lines, read_command_lines_1, get_command_line):
8485         Update.
8486         (copy_command_lines): Don't declare.
8487         * cli/cli-script.c (build_command_line): Use "new".
8488         (get_command_line): Return counted_command_line.
8489         (print_command_lines, execute_user_command)
8490         (execute_control_command_1, while_command, if_command): Update.
8491         (realloc_body_list): Remove.
8492         (process_next_line, recurse_read_control_structure): Update.
8493         (read_command_lines, read_command_lines_1): Return counted_command_line.
8494         (free_command_lines): Use "delete".
8495         (copy_command_lines): Remove.
8496         (define_command, document_command, show_user_1): Update.
8497         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
8498         a counted_command_line.
8499         * breakpoint.h (counted_command_line): Remove typedef.
8500         (breakpoint_set_commands): Update.
8501         * breakpoint.c (check_no_tracepoint_commands)
8502         (validate_commands_for_breakpoint): Update.
8503         (breakpoint_set_commands): Change commands to be a
8504         counted_command_line.
8505         (commands_command_1, update_dprintf_command_list)
8506         (create_tracepoint_from_upload): Update.
8507
8508 2018-05-04  Tom Tromey  <tom@tromey.com>
8509
8510         * cli/cli-decode.h (cmd_list_element): New constructor.
8511         (~cmd_list_element): New destructor.
8512         (struct cmd_list_element): Add initializers.
8513         * cli/cli-decode.c (do_add_cmd): Use "new".
8514         (delete_cmd): Use "delete".
8515
8516 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
8517             Pedro Alves <palves@redhat.com>
8518
8519         PR breakpoints/19806 and support for PR external/20207.
8520         * NEWS: Mention Aarch64 watchpoint improvements.
8521         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
8522         watchpoints and PR external/20207 watchpoints.
8523         * nat/aarch64-linux-hw-point.c
8524         (kernel_supports_any_contiguous_range): New.
8525         (aarch64_watchpoint_offset): New.
8526         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
8527         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
8528         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
8529         (aarch64_align_watchpoint): New parameters aligned_offset_p and
8530         next_addr_orig_p.  Support PR external/20207 watchpoints.
8531         (aarch64_downgrade_regs): New.
8532         (aarch64_dr_state_insert_one_point): New parameters offset and
8533         addr_orig.
8534         (aarch64_dr_state_remove_one_point): Likewise.
8535         (aarch64_handle_breakpoint): Update caller.
8536         (aarch64_handle_aligned_watchpoint): Likewise.
8537         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
8538         aligned_offset.
8539         (aarch64_linux_set_debug_regs): Remove const from state.  Call
8540         aarch64_downgrade_regs.
8541         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
8542         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
8543         (DR_CONTROL_MASK): ... this.
8544         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
8545         (unsigned int aarch64_watchpoint_offset): New prototype.
8546         (aarch64_linux_set_debug_regs): Remove const from state.
8547         * utils.c (align_up, align_down): Move to ...
8548         * common/common-utils.c (align_up, align_down): ... here.
8549         * utils.h (align_up, align_down): Move to ...
8550         * common/common-utils.h (align_up, align_down): ... here.
8551
8552 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
8553
8554         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
8555         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
8556         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
8557         Re-implement to match the ABI as summarized in GCC's
8558         gcc/config/sparc/sparc.c.  All callers updated.
8559         (sparc32_store_arguments): Remove assertion.
8560
8561 2018-05-04  Tom Tromey  <tom@tromey.com>
8562
8563         * printcmd.c: Don't include tui.h.
8564         (decode_format): Use skip_spaces.
8565
8566 2018-05-04  Tom Tromey  <tom@tromey.com>
8567
8568         PR gdb/22619:
8569         * printcmd.c (last_count): New global.
8570         (x_command): Use saved count when repeating.
8571
8572 2018-05-04  Tom Tromey  <tom@tromey.com>
8573
8574         * nto-procfs.c (do_closedir_cleanup): Remove.
8575         (procfs_pidlist): Use gdb_dir_up.
8576         * procfs.c (do_closedir_cleanup): Remove.
8577         (proc_update_threads): Use gdb_dir_up.
8578         * common/filestuff.h (struct gdb_dir_deleter): New.
8579         (gdb_dir_up): New typedef.
8580
8581 2018-05-04  Tom Tromey  <tom@tromey.com>
8582
8583         * ada-lang.c (print_mention_exception): Use std::string.
8584
8585 2018-05-04  Tom Tromey  <tom@tromey.com>
8586
8587         * ada-lang.c (create_excep_cond_exprs): Update.
8588         (ada_exception_catchpoint_cond_string): Use std::string.
8589
8590 2018-05-04  Tom Tromey  <tom@tromey.com>
8591
8592         * ada-lang.c (xget_renaming_scope): Return std::string.
8593         (old_renaming_is_invisible): Update.
8594
8595 2018-05-04  Tom Tromey  <tom@tromey.com>
8596
8597         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
8598         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
8599
8600 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
8601
8602         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
8603
8604 2018-05-04  Tom Tromey  <tom@tromey.com>
8605
8606         * remote.c (remote_query_supported_append): Change type.
8607         (remote_check_symbols): Update.
8608
8609 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
8610
8611         PR gdb/11420
8612         * configure.ac: Prepend libpython.
8613         * python/python-config.py: Likewise.
8614         * configure: Regenerate.
8615
8616 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
8617
8618         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
8619
8620 2018-05-03  Pedro Alves  <palves@redhat.com>
8621
8622         * s390-linux-nat.c
8623         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
8624         override.  Write 'true' instead of '1'.
8625         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
8626         declaration.
8627
8628 2018-05-02  Pedro Alves  <palves@redhat.com>
8629
8630         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
8631         add_inf_child_target.
8632         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
8633         add_inf_child_target.
8634         * aix-thread.c (aix_thread_target_info): New.
8635         (aix_thread_target) <shortname, longname, doc>: Delete.
8636         <info>: New.
8637         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
8638         add_inf_child_target.
8639         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
8640         add_inf_child_target.
8641         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
8642         add_inf_child_target.
8643         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
8644         add_inf_child_target.
8645         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
8646         add_inf_child_target.
8647         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
8648         add_inf_child_target.
8649         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
8650         add_inf_child_target.
8651         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
8652         add_inf_child_target.
8653         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
8654         add_inf_child_target.
8655         * bfd-target.c (target_bfd_target_info): New.
8656         (target_bfd) <shortname, longname, doc>: Delete.
8657         <info>: New.
8658         * bsd-kvm.c (bsd_kvm_target_info): New.
8659         (bsd_kvm_target) <shortname, longname, doc>: Delete.
8660         <info>: New.
8661         (bsd_kvm_target::open): Rename to ...
8662         (bsd_kvm_target_open): ... this.  Adjust.
8663         * bsd-uthread.c (bsd_uthread_target_info): New.
8664         (bsd_uthread_target) <shortname, longname, doc>: Delete.
8665         <info>: New.
8666         * corefile.c (core_file_command): Adjust.
8667         * corelow.c (core_target_info): New.
8668         (core_target) <shortname, longname, doc>: Delete.
8669         <info>: New.
8670         (core_target::open): Rename to ...
8671         (core_target_open): ... this.  Adjust.
8672         * ctf.c (ctf_target_info): New.
8673         (ctf_target) <shortname, longname, doc>: Delete.
8674         <info>: New.
8675         (ctf_target::open): Rename to ...
8676         (ctf_target_open): ... this.
8677         (_initialize_ctf): Adjust.
8678         * exec.c (exec_target_info): New.
8679         (exec_target) <shortname, longname, doc>: Delete.
8680         <info>: New.
8681         (exec_target::open): Rename to ...
8682         (exec_target_open): ... this.
8683         * gdbcore.h (core_target_open): Declare.
8684         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
8685         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
8686         add_inf_child_target.
8687         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
8688         add_inf_child_target.
8689         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
8690         add_inf_child_target.
8691         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
8692         add_inf_child_target.
8693         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
8694         add_inf_child_target.
8695         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
8696         add_inf_child_target.
8697         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
8698         add_inf_child_target.
8699         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
8700         add_inf_child_target.
8701         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
8702         add_inf_child_target.
8703         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
8704         add_inf_child_target.
8705         * inf-child.c (inf_child_target_info): New.
8706         (inf_child_target::info): New.
8707         (inf_child_open_target): Remove 'target' parameter.  Use
8708         get_native_target instead.
8709         (inf_child_target::open): Delete.
8710         (add_inf_child_target): New.
8711         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
8712         Delete.
8713         <info>: New.
8714         (add_inf_child_target): Declare.
8715         (inf_child_open_target): Declare.
8716         * linux-thread-db.c (thread_db_target_info): New.
8717         (thread_db_target) <shortname, longname, doc>: Delete.
8718         <info>: New.
8719         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
8720         add_inf_child_target.
8721         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
8722         add_inf_child_target.
8723         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
8724         add_inf_child_target.
8725         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
8726         add_inf_child_target.
8727         * make-target-delegates (print_class): Adjust.
8728         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
8729         add_inf_child_target.
8730         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
8731         add_inf_child_target.
8732         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
8733         add_inf_child_target.
8734         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
8735         add_inf_child_target.
8736         * nto-procfs.c (nto_native_target_info): New.
8737         (nto_procfs_target_native) <shortname, longname, doc>:
8738         Delete.
8739         <info>: New.
8740         (nto_procfs_target_info): New.
8741         (nto_procfs_target_procfs) <shortname, longname, doc>:
8742         Delete.
8743         <info>: New.
8744         (init_procfs_targets): Adjust.
8745         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
8746         add_inf_child_target.
8747         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
8748         add_inf_child_target.
8749         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
8750         add_inf_child_target.
8751         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
8752         add_inf_child_target.
8753         * ravenscar-thread.c (ravenscar_target_info): New.
8754         (ravenscar_thread_target) <shortname, longname, doc>:
8755         Delete.
8756         <info>: New.
8757         * record-btrace.c (record_btrace_target_info):
8758         (record_btrace_target) <shortname, longname, doc>: Delete.
8759         <info>: New.
8760         (record_btrace_target::open): Rename to ...
8761         (record_btrace_target_open): ... this.  Adjust.
8762         * record-full.c (record_longname, record_doc): New.
8763         (record_full_base_target) <shortname, longname, doc>: Delete.
8764         <info>: New.
8765         (record_full_target_info): New.
8766         (record_full_target): <shortname>: Delete.
8767         <info>: New.
8768         (record_full_core_open_1, record_full_open_1): Update comments.
8769         (record_full_base_target::open): Rename to ...
8770         (record_full_open): ... this.
8771         (cmd_record_full_restore): Update.
8772         (_initialize_record_full): Update.
8773         * remote-sim.c (remote_sim_target_info): New.
8774         (gdbsim_target) <shortname, longname, doc>: Delete.
8775         <info>: New.
8776         (gdbsim_target::open): Rename to ...
8777         (gdbsim_target_open): ... this.
8778         (_initialize_remote_sim): Adjust.
8779         * remote.c (remote_doc): New.
8780         (remote_target_info): New.
8781         (remote_target) <shortname, longname, doc>: Delete.
8782         <info>: New.
8783         (extended_remote_target_info): New.
8784         (extended_remote_target) <shortname, longname, doc>: Delete.
8785         <info>: New.
8786         (remote_target::open_1): Make static.  Adjust.
8787         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
8788         * s390-linux-nat.c (_initialize_s390_nat): Use
8789         add_inf_child_target.
8790         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
8791         add_inf_child_target.
8792         * sol-thread.c (thread_db_target_info): New.
8793         (sol_thread_target) <shortname, longname, doc>: Delete.
8794         <info>: New.
8795         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
8796         add_inf_child_target.
8797         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
8798         add_inf_child_target.
8799         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
8800         add_inf_child_target.
8801         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
8802         add_inf_child_target.
8803         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
8804         add_inf_child_target.
8805         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
8806         add_inf_child_target.
8807         * spu-linux-nat.c (_initialize_spu_nat): Use
8808         add_inf_child_target.
8809         * spu-multiarch.c (spu_multiarch_target_info): New.
8810         (spu_multiarch_target) <shortname, longname, doc>: Delete.
8811         <info>: New.
8812         * target-delegates.c: Regenerate.
8813         * target.c: Include <unordered_map>.
8814         (target_ops_p): Delete.
8815         (DEF_VEC_P(target_ops_p)): Delete.
8816         (target_factories): New.
8817         (test_target_info): New.
8818         (test_target_ops::info): New.
8819         (open_target): Adjust to use target_factories.
8820         (add_target_with_completer): Rename to ...
8821         (add_target): ... this.  Change prototype.  Register target_info
8822         and open callback in target_factories.  Register target_info in
8823         command context instead of target_ops.
8824         (add_target): Delete old implementation.
8825         (add_deprecated_target_alias): Change prototype.  Adjust.
8826         (the_native_target): New.
8827         (set_native_target, get_native_target): New.
8828         (find_default_run_target): Use the_native_target.
8829         (find_attach_target, find_run_target): Simplify.
8830         (target_ops::open): Delete.
8831         (dummy_target_info): New.
8832         (dummy_target::shortname, dummy_target::longname)
8833         (dummy_target::doc): Delete.
8834         (dummy_target::info): New.
8835         (debug_target::shortname, debug_target::longname)
8836         (debug_target::doc): Delete.
8837         (debug_target::info): New.
8838         * target.h (struct target_info): New.
8839         (target_ops::~target_ops): Add comment.
8840         (target_ops::info): New.
8841         (target_ops::shortname, target_ops::longname, target_ops::doc): No
8842         longer virtual.  Implement in terms of target_info.
8843         (set_native_target, get_native_target): Declare.
8844         (target_open_ftype): New.
8845         (add_target, add_target_with_completer)
8846         (add_deprecated_target_alias): Change prototype.
8847         (test_target) <shortname, longname, doc>: Delete.
8848         <info>: New.
8849         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
8850         add_inf_child_target.
8851         * tracefile-tfile.c (tfile_target_info): New.
8852         (tfile_target) <shortname, longname, doc>: Delete.
8853         <info>: New.
8854         (tfile_target::open): Rename to ...
8855         (tfile_target_open): ... this.
8856         (_initialize_tracefile_tfile): Adjust.
8857         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
8858         add_inf_child_target.
8859         * windows-nat.c (_initialize_windows_nat): Use
8860         add_inf_child_target.
8861         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
8862         add_inf_child_target.
8863
8864 2018-05-02  Pedro Alves  <palves@redhat.com>
8865
8866         * linux-nat.h (linux_nat_target) <low_new_thread,
8867         low_delete_thread, low_new_fork, low_forget_process,
8868         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
8869         New virtual methods.
8870         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
8871         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
8872         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
8873         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
8874         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
8875         Delete.
8876         * linux-fork.c (delete_fork): Adjust to call low method.
8877         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
8878         (linux_nat_new_fork, linux_nat_forget_process_hook)
8879         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
8880         (linux_nat_status_is_event):
8881         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
8882         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
8883         to call low method.
8884         (sigtrap_is_event): Rename to ...
8885         (linux_nat_target::low_status_is_event): ... this.
8886         (linux_nat_set_status_is_event): Delete.
8887         (save_stop_reason, linux_nat_wait_1)
8888         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
8889         low methods.
8890         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
8891         (linux_nat_set_new_fork, linux_nat_set_forget_process)
8892         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
8893         (linux_nat_set_prepare_to_resume): Delete.
8894         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
8895         low virtual methods.
8896         * amd64-linux-nat.c: Likewise.
8897         * arm-linux-nat.c: Likewise.
8898         * i386-linux-nat.c: Likewise.
8899         * ia64-linux-nat.c: Likewise.
8900         * mips-linux-nat.c: Likewise.
8901         * ppc-linux-nat.c: Likewise.
8902         * s390-linux-nat.c: Likewise.
8903         * sparc64-linux-nat.c: Likewise.
8904         * x86-linux-nat.c: Likewise.
8905         * x86-linux-nat.h: Include "nat/x86-linux.h".
8906         (x86_linux_nat_target) <low_new_fork, low_forget_process,
8907         low_prepare_to_resume, low_new_thread, low_delete_thread>:
8908         Override methods.
8909
8910 2018-05-02  Pedro Alves  <palves@redhat.com>
8911
8912         * target.h (target_ops)
8913         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
8914         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
8915         stopped_by_watchpoint, have_continuable_watchpoint,
8916         stopped_data_address, watchpoint_addr_within_range,
8917         can_accel_watchpoint_condition, can_run, thread_alive,
8918         has_all_memory, has_memory, has_stack, has_registers,
8919         has_execution, can_async_p, is_async_p, supports_non_stop,
8920         always_non_stop_p, can_execute_reverse, supports_multi_process,
8921         supports_enable_disable_tracepoint,
8922         supports_disable_randomization, supports_string_tracing,
8923         supports_evaluation_of_breakpoint_conditions,
8924         can_run_breakpoint_commands, filesystem_is_local,
8925         can_download_tracepoint, get_trace_state_variable_value,
8926         set_trace_notes, get_tib_address, use_agent, can_use_agent,
8927         record_is_replaying, record_will_replay,
8928         augmented_libraries_svr4_read>: Adjust to return bool.
8929         * aarch64-linux-nat.c: All implementations adjusted.
8930         * aix-thread.c: All implementations adjusted.
8931         * arm-linux-nat.c: All implementations adjusted.
8932         * breakpoint.c: All implementations adjusted.
8933         * bsd-kvm.c: All implementations adjusted.
8934         * bsd-uthread.c: All implementations adjusted.
8935         * corelow.c: All implementations adjusted.
8936         * ctf.c: All implementations adjusted.
8937         * darwin-nat.c: All implementations adjusted.
8938         * darwin-nat.h: All implementations adjusted.
8939         * exec.c: All implementations adjusted.
8940         * fbsd-nat.c: All implementations adjusted.
8941         * fbsd-nat.h: All implementations adjusted.
8942         * gnu-nat.c: All implementations adjusted.
8943         * gnu-nat.h: All implementations adjusted.
8944         * go32-nat.c: All implementations adjusted.
8945         * ia64-linux-nat.c: All implementations adjusted.
8946         * inf-child.c: All implementations adjusted.
8947         * inf-child.h: All implementations adjusted.
8948         * inf-ptrace.c: All implementations adjusted.
8949         * inf-ptrace.h: All implementations adjusted.
8950         * linux-nat.c: All implementations adjusted.
8951         * linux-nat.h: All implementations adjusted.
8952         * mips-linux-nat.c: All implementations adjusted.
8953         * nto-procfs.c: All implementations adjusted.
8954         * ppc-linux-nat.c: All implementations adjusted.
8955         * procfs.c: All implementations adjusted.
8956         * ravenscar-thread.c: All implementations adjusted.
8957         * record-btrace.c: All implementations adjusted.
8958         * record-full.c: All implementations adjusted.
8959         * remote-sim.c: All implementations adjusted.
8960         * remote.c: All implementations adjusted.
8961         * s390-linux-nat.c: All implementations adjusted.
8962         * sol-thread.c: All implementations adjusted.
8963         * spu-multiarch.c: All implementations adjusted.
8964         * target-delegates.c: All implementations adjusted.
8965         * target.c: All implementations adjusted.
8966         * target.h: All implementations adjusted.
8967         * tracefile-tfile.c: All implementations adjusted.
8968         * tracefile.c: All implementations adjusted.
8969         * tracefile.h: All implementations adjusted.
8970         * windows-nat.c: All implementations adjusted.
8971         * x86-linux-nat.h: All implementations adjusted.
8972         * x86-nat.h: All implementations adjusted.
8973
8974 2018-05-02  Pedro Alves  <palves@redhat.com>
8975
8976         * make-target-delegates (scan_target_h): Don't trim lines here.
8977         Replace sequences of tabs and/or whitespace with a single
8978         whitespace.
8979         (top level, parsing methods): Trim each line before processing it
8980         here.
8981
8982 2018-05-02  Pedro Alves  <palves@redhat.com>
8983             John Baldwin  <jhb@freebsd.org>
8984
8985         * target.h (enum strata) <debug_stratum>: New.
8986         (struct target_ops) <all delegation methods>: Replace by C++
8987         virtual methods, and drop "to_" prefix.  All references updated
8988         throughout.
8989         <to_shortname, to_longname, to_doc, to_data,
8990         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
8991         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
8992         virtual methods.  All references updated throughout.
8993         <can_attach, supports_terminal_ours, can_create_inferior,
8994         get_thread_control_capabilities, attach_no_wait>: New
8995         virtual methods.
8996         <insert_breakpoint, remove_breakpoint>: Now
8997         TARGET_DEFAULT_NORETURN methods.
8998         <info_proc>: Now returns bool.
8999         <to_magic>: Delete.
9000         (OPS_MAGIC): Delete.
9001         (current_target): Delete.  All references replaced by references
9002         to ...
9003         (target_stack): ... this.  New.
9004         (target_shortname, target_longname): Adjust.
9005         (target_can_run): Now a function declaration.
9006         (default_child_has_all_memory, default_child_has_memory)
9007         (default_child_has_stack, default_child_has_registers)
9008         (default_child_has_execution): Remove target_ops parameter.
9009         (complete_target_initialization): Delete.
9010         (memory_breakpoint_target): New template class.
9011         (test_target_ops): Refactor as a C++ class with virtual methods.
9012         * make-target-delegates (NAME_PART): Tighten.
9013         (POINTER_PART, CP_SYMBOL): New.
9014         (SIMPLE_RETURN_PART): Reimplement.
9015         (VEC_RETURN_PART): Expect less.
9016         (RETURN_PART, VIRTUAL_PART): New.
9017         (METHOD): Adjust to C++ virtual methods.
9018         (scan_target_h): Remove reference to C99.
9019         (dname): Output "target_ops::" prefix.
9020         (write_function_header): Adjust to output a C++ class method.
9021         (write_declaration): New.
9022         (write_delegator): Adjust to output a C++ class method.
9023         (tdname): Output "dummy_target::" prefix.
9024         (write_tdefault, write_debugmethod): Adjust to output a C++ class
9025         method.
9026         (tdefault_names, debug_names): Delete.
9027         (return_types, tdefaults, styles, argtypes_array): New.
9028         (top level): All methods are delegators.
9029         (print_class): New.
9030         (top level): Print dummy_target and debug_target classes.
9031         * target-delegates.c: Regenerate.
9032         * target-debug.h (target_debug_print_enum_info_proc_what)
9033         (target_debug_print_thread_control_capabilities)
9034         (target_debug_print_thread_info_p): New.
9035         * target.c (dummy_target): Delete.
9036         (the_dummy_target, the_debug_target): New.
9037         (target_stack): Now extern.
9038         (set_targetdebug): Push/unpush debug target.
9039         (default_child_has_all_memory, default_child_has_memory)
9040         (default_child_has_stack, default_child_has_registers)
9041         (default_child_has_execution): Remove target_ops parameter.
9042         (complete_target_initialization): Delete.
9043         (add_target_with_completer): No longer call
9044         complete_target_initialization.
9045         (target_supports_terminal_ours): Use regular delegation.
9046         (update_current_target): Delete.
9047         (push_target): No longer check magic number.  Don't call
9048         update_current_target.
9049         (unpush_target): Don't call update_current_target.
9050         (target_is_pushed): No longer check magic number.
9051         (target_require_runnable): Skip for all stratums over
9052         process_stratum.
9053         (target_ops::info_proc): New.
9054         (target_info_proc): Use find_target_at and
9055         find_default_run_target.
9056         (target_supports_disable_randomization): Use regular delegation.
9057         (target_get_osdata): Use find_target_at.
9058         (target_ops::open, target_ops::close, target_ops::can_attach)
9059         (target_ops::attach, target_ops::can_create_inferior)
9060         (target_ops::create_inferior, target_ops::can_run)
9061         (target_can_run): New.
9062         (default_fileio_target): Use regular delegation.
9063         (target_ops::fileio_open, target_ops::fileio_pwrite)
9064         (target_ops::fileio_pread, target_ops::fileio_fstat)
9065         (target_ops::fileio_close, target_ops::fileio_unlink)
9066         (target_ops::fileio_readlink): New.
9067         (target_fileio_open_1, target_fileio_unlink)
9068         (target_fileio_readlink): Always call the target method.  Handle
9069         FILEIO_ENOSYS.
9070         (return_zero, return_zero_has_execution): Delete.
9071         (init_dummy_target): Delete.
9072         (dummy_target::dummy_target, dummy_target::shortname)
9073         (dummy_target::longname, dummy_target::doc)
9074         (debug_target::debug_target, debug_target::shortname)
9075         (debug_target::longname, debug_target::doc): New.
9076         (target_supports_delete_record): Use regular delegation.
9077         (setup_target_debug): Delete.
9078         (maintenance_print_target_stack): Skip debug_stratum.
9079         (initialize_targets): Instantiate the_dummy_target and
9080         the_debug_target.
9081         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
9082         use target_stack.
9083         (target_auxv_search, fprint_target_auxv): Adjust.
9084         (info_auxv_command): Adjust to use target_stack.
9085         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
9086         * exceptions.c (print_flush): Handle a NULL target_stack.
9087         * regcache.c (target_ops_no_register): Refactor as class with
9088         virtual methods.
9089
9090         * exec.c (exec_target): New class.
9091         (exec_ops): Now an exec_target.
9092         (exec_open, exec_close_1, exec_get_section_table)
9093         (exec_xfer_partial, exec_files_info, exec_has_memory)
9094         (exec_make_note_section): Refactor as exec_target methods.
9095         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
9096         Delete.
9097         (exec_target::find_memory_regions): New.
9098         (_initialize_exec): Don't call init_exec_ops.
9099         * gdbcore.h (exec_file_clear): Delete.
9100
9101         * corefile.c (core_target): Delete.
9102         (core_file_command): Adjust.
9103         * corelow.c (core_target): New class.
9104         (the_core_target): New.
9105         (core_close): Remove target_ops parameter.
9106         (core_close_cleanup): Adjust.
9107         (core_target::close): New.
9108         (core_open, core_detach, get_core_registers, core_files_info)
9109         (core_xfer_partial, core_thread_alive, core_read_description)
9110         (core_pid_to_str, core_thread_name, core_has_memory)
9111         (core_has_stack, core_has_registers, core_info_proc): Rework as
9112         core_target methods.
9113         (ignore, core_remove_breakpoint, init_core_ops): Delete.
9114         (_initialize_corelow): Initialize the_core_target.
9115         * gdbcore.h (core_target): Delete.
9116         (the_core_target): New.
9117
9118         * ctf.c: (ctf_target): New class.
9119         (ctf_ops): Now a ctf_target.
9120         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
9121         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
9122         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
9123         methods.
9124         (init_ctf_ops): Delete.
9125         (_initialize_ctf): Don't call it.
9126         * tracefile-tfile.c (tfile_target): New class.
9127         (tfile_ops): Now a tfile_target.
9128         (tfile_open, tfile_close, tfile_files_info)
9129         (tfile_get_tracepoint_status, tfile_trace_find)
9130         (tfile_fetch_registers, tfile_xfer_partial)
9131         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
9132         Refactor as tfile_target methods.
9133         (tfile_xfer_partial_features): Remove target_ops parameter.
9134         (init_tfile_ops): Delete.
9135         (_initialize_tracefile_tfile): Don't call it.
9136         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
9137         (tracefile_has_stack, tracefile_has_registers)
9138         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
9139         tracefile_target methods.
9140         (init_tracefile_ops): Delete.
9141         (tracefile_target::tracefile_target): New.
9142         * tracefile.h: Include "target.h".
9143         (tracefile_target): New class.
9144         (init_tracefile_ops): Delete.
9145
9146         * spu-multiarch.c (spu_multiarch_target): New class.
9147         (spu_ops): Now a spu_multiarch_target.
9148         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
9149         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
9150         (spu_search_memory, spu_mourn_inferior): Refactor as
9151         spu_multiarch_target methods.
9152         (init_spu_ops): Delete.
9153         (_initialize_spu_multiarch): Remove references to init_spu_ops,
9154         complete_target_initialization.
9155
9156         * ravenscar-thread.c (ravenscar_thread_target): New class.
9157         (ravenscar_ops): Now a ravenscar_thread_target.
9158         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
9159         (ravenscar_thread_alive, ravenscar_pid_to_str)
9160         (ravenscar_fetch_registers, ravenscar_store_registers)
9161         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
9162         (ravenscar_stopped_by_hw_breakpoint)
9163         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
9164         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
9165         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
9166         methods.
9167         (init_ravenscar_thread_ops): Delete.
9168         (_initialize_ravenscar): Remove references to
9169         init_ravenscar_thread_ops and complete_target_initialization.
9170
9171         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
9172         (bsd_uthread_target): New class.
9173         (bsd_uthread_ops): Now a bsd_uthread_target.
9174         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
9175         (bsd_uthread_close, bsd_uthread_mourn_inferior)
9176         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
9177         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
9178         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
9179         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
9180         (bsd_uthread_target): Delete function.
9181         (_initialize_bsd_uthread): Remove reference to
9182         complete_target_initialization.
9183
9184         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
9185         (target_bfd): ... this new class.
9186         (target_bfd_xfer_partial, target_bfd_get_section_table)
9187         (target_bfd_close): Refactor as target_bfd methods.
9188         (target_bfd::~target_bfd): New.
9189         (target_bfd_reopen): Adjust.
9190         (target_bfd::close): New.
9191
9192         * record-btrace.c (record_btrace_target): New class.
9193         (record_btrace_ops): Now a record_btrace_target.
9194         (record_btrace_open, record_btrace_stop_recording)
9195         (record_btrace_disconnect, record_btrace_close)
9196         (record_btrace_async, record_btrace_info)
9197         (record_btrace_insn_history, record_btrace_insn_history_range)
9198         (record_btrace_insn_history_from, record_btrace_call_history)
9199         (record_btrace_call_history_range)
9200         (record_btrace_call_history_from, record_btrace_record_method)
9201         (record_btrace_is_replaying, record_btrace_will_replay)
9202         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
9203         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
9204         (record_btrace_store_registers, record_btrace_prepare_to_store)
9205         (record_btrace_to_get_unwinder)
9206         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
9207         (record_btrace_commit_resume, record_btrace_wait)
9208         (record_btrace_stop, record_btrace_can_execute_reverse)
9209         (record_btrace_stopped_by_sw_breakpoint)
9210         (record_btrace_supports_stopped_by_sw_breakpoint)
9211         (record_btrace_stopped_by_hw_breakpoint)
9212         (record_btrace_supports_stopped_by_hw_breakpoint)
9213         (record_btrace_update_thread_list, record_btrace_thread_alive)
9214         (record_btrace_goto_begin, record_btrace_goto_end)
9215         (record_btrace_goto, record_btrace_stop_replaying_all)
9216         (record_btrace_execution_direction)
9217         (record_btrace_prepare_to_generate_core)
9218         (record_btrace_done_generating_core): Refactor as
9219         record_btrace_target methods.
9220         (init_record_btrace_ops): Delete.
9221         (_initialize_record_btrace): Remove reference to
9222         init_record_btrace_ops.
9223         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
9224         the execution_direction global.
9225         (record_full_base_target, record_full_target)
9226         (record_full_core_target): New classes.
9227         (record_full_ops): Now a record_full_target.
9228         (record_full_core_ops): Now a record_full_core_target.
9229         (record_full_target::detach, record_full_target::disconnect)
9230         (record_full_core_target::disconnect)
9231         (record_full_target::mourn_inferior, record_full_target::kill):
9232         New.
9233         (record_full_open, record_full_close, record_full_async): Refactor
9234         as methods of the record_full_base_target class.
9235         (record_full_resume, record_full_commit_resume): Refactor
9236         as methods of the record_full_target class.
9237         (record_full_wait, record_full_stopped_by_watchpoint)
9238         (record_full_stopped_data_address)
9239         (record_full_stopped_by_sw_breakpoint)
9240         (record_full_supports_stopped_by_sw_breakpoint)
9241         (record_full_stopped_by_hw_breakpoint)
9242         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
9243         methods of the record_full_base_target class.
9244         (record_full_store_registers, record_full_xfer_partial)
9245         (record_full_insert_breakpoint, record_full_remove_breakpoint):
9246         Refactor as methods of the record_full_target class.
9247         (record_full_can_execute_reverse, record_full_get_bookmark)
9248         (record_full_goto_bookmark, record_full_execution_direction)
9249         (record_full_record_method, record_full_info, record_full_delete)
9250         (record_full_is_replaying, record_full_will_replay)
9251         (record_full_goto_begin, record_full_goto_end, record_full_goto)
9252         (record_full_stop_replaying): Refactor as methods of the
9253         record_full_base_target class.
9254         (record_full_core_resume, record_full_core_kill)
9255         (record_full_core_fetch_registers)
9256         (record_full_core_prepare_to_store)
9257         (record_full_core_store_registers, record_full_core_xfer_partial)
9258         (record_full_core_insert_breakpoint)
9259         (record_full_core_remove_breakpoint)
9260         (record_full_core_has_execution): Refactor
9261         as methods of the record_full_core_target class.
9262         (record_full_base_target::supports_delete_record): New.
9263         (init_record_full_ops): Delete.
9264         (init_record_full_core_ops): Delete.
9265         (record_full_save): Refactor as method of the
9266         record_full_base_target class.
9267         (_initialize_record_full): Remove references to
9268         init_record_full_ops and init_record_full_core_ops.
9269
9270         * remote.c (remote_target, extended_remote_target): New classes.
9271         (remote_ops): Now a remote_target.
9272         (extended_remote_ops): Now an extended_remote_target.
9273         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
9274         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
9275         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
9276         (remote_pass_signals, remote_set_syscall_catchpoint)
9277         (remote_program_signals, )
9278         (remote_thread_always_alive): Remove target_ops parameter.
9279         (remote_thread_alive, remote_thread_name)
9280         (remote_update_thread_list, remote_threads_extra_info)
9281         (remote_static_tracepoint_marker_at)
9282         (remote_static_tracepoint_markers_by_strid)
9283         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
9284         (remote_open): Refactor as methods of remote_target.
9285         (extended_remote_open, extended_remote_detach)
9286         (extended_remote_attach, extended_remote_post_attach):
9287         (extended_remote_supports_disable_randomization)
9288         (extended_remote_create_inferior): : Refactor as method of
9289         extended_remote_target.
9290         (remote_set_permissions, remote_open_1, remote_detach)
9291         (remote_follow_fork, remote_follow_exec, remote_disconnect)
9292         (remote_resume, remote_commit_resume, remote_stop)
9293         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
9294         (remote_terminal_ours, remote_wait, remote_fetch_registers)
9295         (remote_prepare_to_store, remote_store_registers)
9296         (remote_flash_erase, remote_flash_done, remote_files_info)
9297         (remote_kill, remote_mourn, remote_insert_breakpoint)
9298         (remote_remove_breakpoint, remote_insert_watchpoint)
9299         (remote_watchpoint_addr_within_range)
9300         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
9301         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
9302         (remote_supports_stopped_by_sw_breakpoint)
9303         (remote_stopped_by_hw_breakpoint)
9304         (remote_supports_stopped_by_hw_breakpoint)
9305         (remote_stopped_by_watchpoint, remote_stopped_data_address)
9306         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
9307         (remote_verify_memory): Refactor as methods of remote_target.
9308         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
9309         parameter.
9310         (remote_xfer_partial, remote_get_memory_xfer_limit)
9311         (remote_search_memory, remote_rcmd, remote_memory_map)
9312         (remote_pid_to_str, remote_get_thread_local_address)
9313         (remote_get_tib_address, remote_read_description): Refactor as
9314         methods of remote_target.
9315         (remote_target::fileio_open, remote_target::fileio_pwrite)
9316         (remote_target::fileio_pread, remote_target::fileio_close): New.
9317         (remote_hostio_readlink, remote_hostio_fstat)
9318         (remote_filesystem_is_local, remote_can_execute_reverse)
9319         (remote_supports_non_stop, remote_supports_disable_randomization)
9320         (remote_supports_multi_process, remote_supports_cond_breakpoints)
9321         (remote_supports_enable_disable_tracepoint)
9322         (remote_supports_string_tracing)
9323         (remote_can_run_breakpoint_commands, remote_trace_init)
9324         (remote_download_tracepoint, remote_can_download_tracepoint)
9325         (remote_download_trace_state_variable, remote_enable_tracepoint)
9326         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
9327         (remote_trace_start, remote_get_trace_status)
9328         (remote_get_tracepoint_status, remote_trace_stop)
9329         (remote_trace_find, remote_get_trace_state_variable_value)
9330         (remote_save_trace_data, remote_get_raw_trace_data)
9331         (remote_set_disconnected_tracing, remote_core_of_thread)
9332         (remote_set_circular_trace_buffer, remote_traceframe_info)
9333         (remote_get_min_fast_tracepoint_insn_len)
9334         (remote_set_trace_buffer_size, remote_set_trace_notes)
9335         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
9336         (remote_disable_btrace, remote_teardown_btrace)
9337         (remote_read_btrace, remote_btrace_conf)
9338         (remote_augmented_libraries_svr4_read, remote_load)
9339         (remote_pid_to_exec_file, remote_can_do_single_step)
9340         (remote_execution_direction, remote_thread_handle_to_thread_info):
9341         Refactor as methods of remote_target.
9342         (init_remote_ops, init_extended_remote_ops): Delete.
9343         (remote_can_async_p, remote_is_async_p, remote_async)
9344         (remote_thread_events, remote_upload_tracepoints)
9345         (remote_upload_trace_state_variables): Refactor as methods of
9346         remote_target.
9347         (_initialize_remote): Remove references to init_remote_ops and
9348         init_extended_remote_ops.
9349
9350         * remote-sim.c (gdbsim_target): New class.
9351         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
9352         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
9353         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
9354         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
9355         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
9356         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
9357         Refactor as methods of gdbsim_target.
9358         (gdbsim_ops): Now a gdbsim_target.
9359         (init_gdbsim_ops): Delete.
9360         (gdbsim_cntrl_c): Adjust.
9361         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
9362
9363         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
9364         (the_amd64_linux_nat_target): New.
9365         (amd64_linux_fetch_inferior_registers)
9366         (amd64_linux_store_inferior_registers): Refactor as methods of
9367         amd64_linux_nat_target.
9368         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
9369         * i386-linux-nat.c: Don't include "linux-nat.h".
9370         (i386_linux_nat_target): New class.
9371         (the_i386_linux_nat_target): New.
9372         (i386_linux_fetch_inferior_registers)
9373         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
9374         as methods of i386_linux_nat_target.
9375         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
9376         * inf-child.c (inf_child_ops): Delete.
9377         (inf_child_fetch_inferior_registers)
9378         (inf_child_store_inferior_registers): Delete.
9379         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
9380         methods of inf_child_target.
9381         (inf_child_target::supports_terminal_ours)
9382         (inf_child_target::terminal_init)
9383         (inf_child_target::terminal_inferior)
9384         (inf_child_target::terminal_ours_for_output)
9385         (inf_child_target::terminal_ours, inf_child_target::interrupt)
9386         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
9387         New.
9388         (inf_child_open, inf_child_disconnect, inf_child_close)
9389         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
9390         (inf_child_post_startup_inferior, inf_child_can_run)
9391         (inf_child_pid_to_exec_file): Refactor as methods of
9392         inf_child_target.
9393         (inf_child_follow_fork): Delete.
9394         (inf_child_target::can_create_inferior)
9395         (inf_child_target::can_attach): New.
9396         (inf_child_target::has_all_memory, inf_child_target::has_memory)
9397         (inf_child_target::has_stack, inf_child_target::has_registers)
9398         (inf_child_target::has_execution): New.
9399         (inf_child_fileio_open, inf_child_fileio_pwrite)
9400         (inf_child_fileio_pread, inf_child_fileio_fstat)
9401         (inf_child_fileio_close, inf_child_fileio_unlink)
9402         (inf_child_fileio_readlink, inf_child_use_agent)
9403         (inf_child_can_use_agent): Refactor as methods of
9404         inf_child_target.
9405         (return_zero, inf_child_target): Delete.
9406         (inf_child_target::inf_child_target): New.
9407         * inf-child.h: Include "target.h".
9408         (inf_child_target): Delete function prototype.
9409         (inf_child_target): New class.
9410         (inf_child_open_target, inf_child_mourn_inferior)
9411         (inf_child_maybe_unpush_target): Delete.
9412         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
9413         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
9414         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
9415         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
9416         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
9417         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
9418         (inf_ptrace_wait, inf_ptrace_xfer_partial)
9419         (inf_ptrace_thread_alive, inf_ptrace_files_info)
9420         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
9421         methods of inf_ptrace_target.
9422         (inf_ptrace_target): Delete function.
9423         * inf-ptrace.h: Include "inf-child.h".
9424         (inf_ptrace_target): Delete function declaration.
9425         (inf_ptrace_target): New class.
9426         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
9427         * linux-nat.c (linux_target): New.
9428         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
9429         (linux_nat_target::~linux_nat_target): New.
9430         (linux_child_post_attach, linux_child_post_startup_inferior)
9431         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
9432         (linux_child_remove_fork_catchpoint)
9433         (linux_child_insert_vfork_catchpoint)
9434         (linux_child_remove_vfork_catchpoint)
9435         (linux_child_insert_exec_catchpoint)
9436         (linux_child_remove_exec_catchpoint)
9437         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
9438         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
9439         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
9440         (linux_nat_stopped_data_address)
9441         (linux_nat_stopped_by_sw_breakpoint)
9442         (linux_nat_supports_stopped_by_sw_breakpoint)
9443         (linux_nat_stopped_by_hw_breakpoint)
9444         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
9445         (linux_nat_kill, linux_nat_mourn_inferior)
9446         (linux_nat_xfer_partial, linux_nat_thread_alive)
9447         (linux_nat_update_thread_list, linux_nat_pid_to_str)
9448         (linux_nat_thread_name, linux_child_pid_to_exec_file)
9449         (linux_child_static_tracepoint_markers_by_strid)
9450         (linux_nat_is_async_p, linux_nat_can_async_p)
9451         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
9452         (linux_nat_supports_multi_process)
9453         (linux_nat_supports_disable_randomization, linux_nat_async)
9454         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
9455         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
9456         (linux_nat_fileio_open, linux_nat_fileio_readlink)
9457         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
9458         methods of linux_nat_target.
9459         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
9460         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
9461         parameter.
9462         (check_stopped_by_watchpoint): Adjust.
9463         (linux_xfer_partial): Delete.
9464         (linux_target_install_ops, linux_target, linux_nat_add_target):
9465         Delete.
9466         (linux_nat_target::linux_nat_target): New.
9467         * linux-nat.h: Include "inf-ptrace.h".
9468         (linux_nat_target): New.
9469         (linux_target, linux_target_install_ops, linux_nat_add_target):
9470         Delete function declarations.
9471         (linux_target): Declare global.
9472         * linux-thread-db.c (thread_db_target): New.
9473         (thread_db_target::thread_db_target): New.
9474         (thread_db_ops): Delete.
9475         (the_thread_db_target): New.
9476         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
9477         (thread_db_update_thread_list, thread_db_pid_to_str)
9478         (thread_db_extra_thread_info)
9479         (thread_db_thread_handle_to_thread_info)
9480         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
9481         (thread_db_resume): Refactor as methods of thread_db_target.
9482         (init_thread_db_ops): Delete.
9483         (_initialize_thread_db): Remove reference to init_thread_db_ops.
9484         * x86-linux-nat.c: Don't include "linux-nat.h".
9485         (super_post_startup_inferior): Delete.
9486         (x86_linux_nat_target::~x86_linux_nat_target): New.
9487         (x86_linux_child_post_startup_inferior)
9488         (x86_linux_read_description, x86_linux_enable_btrace)
9489         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
9490         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
9491         methods of x86_linux_nat_target.
9492         (x86_linux_create_target): Delete.  Bits folded ...
9493         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
9494         pointer.
9495         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
9496         (x86_linux_nat_target): New class.
9497         (x86_linux_create_target): Delete.
9498         (x86_linux_add_target): Now takes a linux_nat_target pointer.
9499         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
9500         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
9501         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
9502         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
9503         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
9504         make extern.
9505         (x86_use_watchpoints): Delete.
9506         * x86-nat.h: Include "breakpoint.h" and "target.h".
9507         (x86_use_watchpoints): Delete.
9508         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
9509         (x86_stopped_by_watchpoint, x86_stopped_data_address)
9510         (x86_insert_watchpoint, x86_remove_watchpoint)
9511         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
9512         (x86_stopped_by_hw_breakpoint): New declarations.
9513         (x86_nat_target): New template class.
9514
9515         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
9516         (the_ppc_linux_nat_target): New.
9517         (ppc_linux_fetch_inferior_registers)
9518         (ppc_linux_can_use_hw_breakpoint)
9519         (ppc_linux_region_ok_for_hw_watchpoint)
9520         (ppc_linux_ranged_break_num_registers)
9521         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
9522         (ppc_linux_insert_mask_watchpoint)
9523         (ppc_linux_remove_mask_watchpoint)
9524         (ppc_linux_can_accel_watchpoint_condition)
9525         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
9526         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
9527         (ppc_linux_watchpoint_addr_within_range)
9528         (ppc_linux_masked_watch_num_registers)
9529         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
9530         (ppc_linux_read_description): Refactor as methods of
9531         ppc_linux_nat_target.
9532         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
9533
9534         * procfs.c (procfs_xfer_partial): Delete forward declaration.
9535         (procfs_target): New class.
9536         (the_procfs_target): New.
9537         (procfs_target): Delete function.
9538         (procfs_auxv_parse, procfs_attach, procfs_detach)
9539         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
9540         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
9541         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
9542         (procfs_create_inferior, procfs_update_thread_list)
9543         (procfs_thread_alive, procfs_pid_to_str)
9544         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
9545         (procfs_stopped_data_address, procfs_insert_watchpoint)
9546         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
9547         (proc_find_memory_regions, procfs_info_proc)
9548         (procfs_make_note_section): Refactor as methods of procfs_target.
9549         (_initialize_procfs): Adjust.
9550         * sol-thread.c (sol_thread_target): New class.
9551         (sol_thread_ops): Now a sol_thread_target.
9552         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
9553         (sol_thread_fetch_registers, sol_thread_store_registers)
9554         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
9555         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
9556         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
9557         (init_sol_thread_ops): Delete.
9558         (_initialize_sol_thread): Adjust.  Remove references to
9559         init_sol_thread_ops and complete_target_initialization.
9560
9561         * windows-nat.c (windows_nat_target): New class.
9562         (windows_fetch_inferior_registers)
9563         (windows_store_inferior_registers, windows_resume, windows_wait)
9564         (windows_attach, windows_detach, windows_pid_to_exec_file)
9565         (windows_files_info, windows_create_inferior)
9566         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
9567         (windows_close, windows_pid_to_str, windows_xfer_partial)
9568         (windows_get_tib_address, windows_get_ada_task_ptid)
9569         (windows_thread_name, windows_thread_alive): Refactor as
9570         windows_nat_target methods.
9571         (do_initial_windows_stuff): Adjust.
9572         (windows_target): Delete function.
9573         (_initialize_windows_nat): Adjust.
9574
9575         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
9576         (darwin_mourn_inferior, darwin_kill_inferior)
9577         (darwin_create_inferior, darwin_attach, darwin_detach)
9578         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
9579         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
9580         (darwin_supports_multi_process): Refactor as darwin_nat_target
9581         methods.
9582         (darwin_resume_to, darwin_files_info): Delete.
9583         (_initialize_darwin_inferior): Rename to ...
9584         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
9585         * darwin-nat.h: Include "inf-child.h".
9586         (darwin_nat_target): New class.
9587         (darwin_complete_target): Delete.
9588         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
9589         (darwin_target): New.
9590         (i386_darwin_fetch_inferior_registers)
9591         (i386_darwin_store_inferior_registers): Refactor as methods of
9592         darwin_nat_target.
9593         (darwin_complete_target): Delete, with ...
9594         (_initialize_i386_darwin_nat): ... bits factored out here.
9595
9596         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
9597         (the_alpha_linux_nat_target): New.
9598         (alpha_linux_register_u_offset): Refactor as
9599         alpha_linux_nat_target method.
9600         (_initialize_alpha_linux_nat): Adjust.
9601         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
9602         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
9603         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
9604         methods of linux_nat_trad_target.
9605         (linux_trad_target): Delete.
9606         * linux-nat-trad.h (linux_trad_target): Delete function.
9607         (linux_nat_trad_target): New class.
9608         * mips-linux-nat.c (mips_linux_nat_target): New class.
9609         (super_fetch_registers, super_store_registers, super_close):
9610         Delete.
9611         (the_mips_linux_nat_target): New.
9612         (mips64_linux_regsets_fetch_registers)
9613         (mips64_linux_regsets_store_registers)
9614         (mips64_linux_fetch_registers, mips64_linux_store_registers)
9615         (mips_linux_register_u_offset, mips_linux_read_description)
9616         (mips_linux_can_use_hw_breakpoint)
9617         (mips_linux_stopped_by_watchpoint)
9618         (mips_linux_stopped_data_address)
9619         (mips_linux_region_ok_for_hw_watchpoint)
9620         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
9621         (mips_linux_close): Refactor as methods of mips_linux_nat.
9622         (_initialize_mips_linux_nat): Adjust to C++ification.
9623
9624         * aix-thread.c (aix_thread_target): New class.
9625         (aix_thread_ops): Now an aix_thread_target.
9626         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
9627         (aix_thread_fetch_registers, aix_thread_store_registers)
9628         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
9629         (aix_thread_thread_alive, aix_thread_pid_to_str)
9630         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
9631         Refactor as methods of aix_thread_target.
9632         (init_aix_thread_ops): Delete.
9633         (_initialize_aix_thread): Remove references to init_aix_thread_ops
9634         and complete_target_initialization.
9635         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
9636         (rs6000_nat_target): New class.
9637         (the_rs6000_nat_target): New.
9638         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
9639         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
9640         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
9641         (super_create_inferior): Delete.
9642         (_initialize_rs6000_nat): Adjust to C++ification.
9643
9644         * arm-linux-nat.c (arm_linux_nat_target): New class.
9645         (the_arm_linux_nat_target): New.
9646         (arm_linux_fetch_inferior_registers)
9647         (arm_linux_store_inferior_registers, arm_linux_read_description)
9648         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
9649         (arm_linux_remove_hw_breakpoint)
9650         (arm_linux_region_ok_for_hw_watchpoint)
9651         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
9652         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
9653         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
9654         arm_linux_nat_target.
9655         (_initialize_arm_linux_nat): Adjust to C++ification.
9656
9657         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
9658         (the_aarch64_linux_nat_target): New.
9659         (aarch64_linux_fetch_inferior_registers)
9660         (aarch64_linux_store_inferior_registers)
9661         (aarch64_linux_child_post_startup_inferior)
9662         (aarch64_linux_read_description)
9663         (aarch64_linux_can_use_hw_breakpoint)
9664         (aarch64_linux_insert_hw_breakpoint)
9665         (aarch64_linux_remove_hw_breakpoint)
9666         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
9667         (aarch64_linux_region_ok_for_hw_watchpoint)
9668         (aarch64_linux_stopped_data_address)
9669         (aarch64_linux_stopped_by_watchpoint)
9670         (aarch64_linux_watchpoint_addr_within_range)
9671         (aarch64_linux_can_do_single_step): Refactor as methods of
9672         aarch64_linux_nat_target.
9673         (super_post_startup_inferior): Delete.
9674         (_initialize_aarch64_linux_nat): Adjust to C++ification.
9675
9676         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
9677         (the_hppa_linux_nat_target): New.
9678         (hppa_linux_fetch_inferior_registers)
9679         (hppa_linux_store_inferior_registers): Refactor as methods of
9680         hppa_linux_nat_target.
9681         (_initialize_hppa_linux_nat): Adjust to C++ification.
9682
9683         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
9684         (the_ia64_linux_nat_target): New.
9685         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
9686         (ia64_linux_stopped_data_address)
9687         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
9688         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
9689         ia64_linux_nat_target methods.
9690         (super_xfer_partial): Delete.
9691         (_initialize_ia64_linux_nat): Adjust to C++ification.
9692
9693         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
9694         (the_m32r_linux_nat_target): New.
9695         (m32r_linux_fetch_inferior_registers)
9696         (m32r_linux_store_inferior_registers): Refactor as
9697         m32r_linux_nat_target methods.
9698         (_initialize_m32r_linux_nat): Adjust to C++ification.
9699
9700         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
9701         (the_m68k_linux_nat_target): New.
9702         (m68k_linux_fetch_inferior_registers)
9703         (m68k_linux_store_inferior_registers): Refactor as
9704         m68k_linux_nat_target methods.
9705         (_initialize_m68k_linux_nat): Adjust to C++ification.
9706
9707         * s390-linux-nat.c (s390_linux_nat_target): New class.
9708         (the_s390_linux_nat_target): New.
9709         (s390_linux_fetch_inferior_registers)
9710         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
9711         (s390_insert_watchpoint, s390_remove_watchpoint)
9712         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
9713         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
9714         (s390_auxv_parse, s390_read_description): Refactor as methods of
9715         s390_linux_nat_target.
9716         (_initialize_s390_nat): Adjust to C++ification.
9717
9718         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
9719         (the_sparc_linux_nat_target): New.
9720         (_initialize_sparc_linux_nat): Adjust to C++ification.
9721         * sparc-nat.c (sparc_fetch_inferior_registers)
9722         (sparc_store_inferior_registers): Remove target_ops parameter.
9723         * sparc-nat.h (sparc_fetch_inferior_registers)
9724         (sparc_store_inferior_registers): Remove target_ops parameter.
9725         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
9726         (the_sparc64_linux_nat_target): New.
9727         (_initialize_sparc64_linux_nat): Adjust to C++ification.
9728
9729         * spu-linux-nat.c (spu_linux_nat_target): New class.
9730         (the_spu_linux_nat_target): New.
9731         (spu_child_post_startup_inferior, spu_child_post_attach)
9732         (spu_child_wait, spu_fetch_inferior_registers)
9733         (spu_store_inferior_registers, spu_xfer_partial)
9734         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
9735         methods.
9736         (_initialize_spu_nat): Adjust to C++ification.
9737
9738         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
9739         (the_tilegx_linux_nat_target): New.
9740         (fetch_inferior_registers, store_inferior_registers):
9741         Refactor as methods.
9742         (_initialize_tile_linux_nat): Adjust to C++ification.
9743
9744         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
9745         (the_xtensa_linux_nat_target): New.
9746         (xtensa_linux_fetch_inferior_registers)
9747         (xtensa_linux_store_inferior_registers): Refactor as
9748         xtensa_linux_nat_target methods.
9749         (_initialize_xtensa_linux_nat): Adjust to C++ification.
9750
9751         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
9752         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
9753         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
9754         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
9755         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
9756         (fbsd_stopped_by_sw_breakpoint)
9757         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
9758         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
9759         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
9760         (fbsd_post_startup_inferior, fbsd_post_attach)
9761         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
9762         (fbsd_set_syscall_catchpoint)
9763         (super_xfer_partial, super_resume, super_wait)
9764         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
9765         (fbsd_handle_debug_trap): Remove target_ops parameter.
9766         (fbsd_nat_add_target): Delete.
9767         * fbsd-nat.h: Include "inf-ptrace.h".
9768         (fbsd_nat_add_target): Delete.
9769         (USE_SIGTRAP_SIGINFO): Define.
9770         (fbsd_nat_target): New class.
9771
9772         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
9773         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
9774         (amd64bsd_target): Delete.
9775         * amd64-bsd-nat.h: New file.
9776         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
9777         "x86-bsd-nat.h".
9778         (amd64_fbsd_nat_target): New class.
9779         (the_amd64_fbsd_nat_target): New.
9780         (amd64fbsd_read_description): Refactor as method of
9781         amd64_fbsd_nat_target.
9782         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
9783         (_initialize_amd64fbsd_nat): Adjust to C++ification.
9784         * amd64-nat.h (amd64bsd_target): Delete function declaration.
9785         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
9786         (i386bsd_store_inferior_registers): Remove target_ops parameter.
9787         (i386bsd_target): Delete.
9788         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
9789         (i386bsd_fetch_inferior_registers)
9790         (i386bsd_store_inferior_registers): Declare.
9791         (i386_bsd_nat_target): New class.
9792         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
9793         (the_i386_fbsd_nat_target): New.
9794         (i386fbsd_resume, i386fbsd_read_description): Refactor as
9795         i386_fbsd_nat_target methods.
9796         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
9797         (_initialize_i386fbsd_nat): Adjust to C++ification.
9798         * x86-bsd-nat.c (super_mourn_inferior): Delete.
9799         (x86bsd_mourn_inferior, x86bsd_target): Delete.
9800         (_initialize_x86_bsd_nat): Adjust to C++ification.
9801         * x86-bsd-nat.h: Include "x86-nat.h".
9802         (x86bsd_target): Delete declaration.
9803         (x86bsd_nat_target): New class.
9804
9805         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
9806         (the_aarch64_fbsd_nat_target): New.
9807         (aarch64_fbsd_fetch_inferior_registers)
9808         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
9809         aarch64_fbsd_nat_target.
9810         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
9811         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
9812         (the_alpha_bsd_nat_target): New.
9813         (alphabsd_fetch_inferior_registers)
9814         (alphabsd_store_inferior_registers): Refactor as
9815         alpha_bsd_nat_target methods.
9816         (_initialize_alphabsd_nat): Refactor as methods of
9817         alpha_bsd_nat_target.
9818         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
9819         (the_amd64_nbsd_nat_target): New.
9820         (_initialize_amd64nbsd_nat): Adjust to C++ification.
9821         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
9822         (the_amd64_obsd_nat_target): New.
9823         (_initialize_amd64obsd_nat): Adjust to C++ification.
9824         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
9825         (the_arm_fbsd_nat_target): New.
9826         (arm_fbsd_fetch_inferior_registers)
9827         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
9828         (_initialize_arm_fbsd_nat): Refactor as methods of
9829         arm_fbsd_nat_target.
9830         (_initialize_arm_fbsd_nat): Adjust to C++ification.
9831         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
9832         (the_arm_netbsd_nat_target): New.
9833         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
9834         arm_netbsd_nat_target.
9835         (_initialize_arm_netbsd_nat): Adjust to C++ification.
9836         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
9837         (the_hppa_nbsd_nat_target): New.
9838         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
9839         hppa_nbsd_nat_target methods.
9840         (_initialize_hppanbsd_nat): Adjust to C++ification.
9841         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
9842         (the_hppa_obsd_nat_target): New.
9843         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
9844         methods of hppa_obsd_nat_target.
9845         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
9846         add_target.
9847         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
9848         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
9849         add_target.
9850         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
9851         (_initialize_i386obsd_nat): Use add_target.
9852         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
9853         (the_m68k_bsd_nat_target): New.
9854         (m68kbsd_fetch_inferior_registers)
9855         (m68kbsd_store_inferior_registers): Refactor as methods of
9856         m68k_bsd_nat_target.
9857         (_initialize_m68kbsd_nat): Adjust to C++ification.
9858         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
9859         (the_mips_fbsd_nat_target): New.
9860         (mips_fbsd_fetch_inferior_registers)
9861         (mips_fbsd_store_inferior_registers): Refactor as methods of
9862         mips_fbsd_nat_target.
9863         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
9864         add_target.
9865         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
9866         (the_mips_nbsd_nat_target): New.
9867         (mipsnbsd_fetch_inferior_registers)
9868         (mipsnbsd_store_inferior_registers): Refactor as methods of
9869         mips_nbsd_nat_target.
9870         (_initialize_mipsnbsd_nat): Adjust to C++ification.
9871         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
9872         (the_mips64_obsd_nat_target): New.
9873         (mips64obsd_fetch_inferior_registers)
9874         (mips64obsd_store_inferior_registers): Refactor as methods of
9875         mips64_obsd_nat_target.
9876         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
9877         add_target.
9878         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
9879         nbsd_nat_target.
9880         * nbsd-nat.h: Include "inf-ptrace.h".
9881         (nbsd_nat_target): New class.
9882         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
9883         (obsd_wait): Refactor as methods of obsd_nat_target.
9884         (obsd_add_target): Delete.
9885         * obsd-nat.h: Include "inf-ptrace.h".
9886         (obsd_nat_target): New class.
9887         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
9888         (the_ppc_fbsd_nat_target): New.
9889         (ppcfbsd_fetch_inferior_registers)
9890         (ppcfbsd_store_inferior_registers): Refactor as methods of
9891         ppc_fbsd_nat_target.
9892         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
9893         add_target.
9894         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
9895         (the_ppc_nbsd_nat_target): New.
9896         (ppcnbsd_fetch_inferior_registers)
9897         (ppcnbsd_store_inferior_registers): Refactor as methods of
9898         ppc_nbsd_nat_target.
9899         (_initialize_ppcnbsd_nat): Adjust to C++ification.
9900         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
9901         (the_ppc_obsd_nat_target): New.
9902         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
9903         methods of ppc_obsd_nat_target.
9904         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
9905         add_target.
9906         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
9907         (the_sh_nbsd_nat_target): New.
9908         (shnbsd_fetch_inferior_registers)
9909         (shnbsd_store_inferior_registers): Refactor as methods of
9910         sh_nbsd_nat_target.
9911         (_initialize_shnbsd_nat): Adjust to C++ification.
9912         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
9913         (inf_ptrace_xfer_partial): Delete.
9914         (sparc_xfer_partial, sparc_target): Delete.
9915         * sparc-nat.h (sparc_fetch_inferior_registers)
9916         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
9917         (sparc_target): Delete function declaration.
9918         (sparc_target): New template class.
9919         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
9920         (_initialize_sparcnbsd_nat): Adjust to C++ification.
9921         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
9922         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
9923         add_target.
9924         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
9925         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
9926         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
9927         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
9928         add_target.
9929         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
9930         (the_vax_bsd_nat_target): New.
9931         (vaxbsd_fetch_inferior_registers)
9932         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
9933         methods.
9934         (_initialize_vaxbsd_nat): Adjust to C++ification.
9935
9936         * bsd-kvm.c (bsd_kvm_target): New class.
9937         (bsd_kvm_ops): Now a bsd_kvm_target.
9938         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
9939         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
9940         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
9941         bsd_kvm_target.
9942         (bsd_kvm_return_one): Delete.
9943         (bsd_kvm_add_target): Adjust to C++ification.
9944
9945         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
9946         (nto_procfs_target_procfs): New classes.
9947         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
9948         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
9949         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
9950         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
9951         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
9952         (procfs_remove_hw_breakpoint, procfs_resume)
9953         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
9954         (procfs_kill_inferior, procfs_store_registers)
9955         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
9956         as methods of nto_procfs_target.
9957         (nto_procfs_ops): Now an nto_procfs_target_procfs.
9958         (nto_native_ops): Delete.
9959         (procfs_open, procfs_native_open): Delete.
9960         (nto_native_ops): Now an nto_procfs_target_native.
9961         (init_procfs_targets): Adjust to C++ification.
9962         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
9963         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
9964         Refactor as methods of nto_procfs_target.
9965
9966         * go32-nat.c (go32_nat_target): New class.
9967         (the_go32_nat_target): New.
9968         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
9969         (go32_store_registers, go32_xfer_partial, go32_files_info)
9970         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
9971         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
9972         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
9973         (go32_pid_to_str): Refactor as methods of go32_nat_target.
9974         (go32_target): Delete.
9975         (_initialize_go32_nat): Adjust to C++ification.
9976
9977         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
9978         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
9979         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
9980         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
9981         gnu_nat_target.
9982         (gnu_target): Delete.
9983         * gnu-nat.h (gnu_target): Delete.
9984         (gnu_nat_target): New class.
9985         * i386-gnu-nat.c (gnu_base_target): New.
9986         (i386_gnu_nat_target): New class.
9987         (the_i386_gnu_nat_target): New.
9988         (_initialize_i386gnu_nat): Adjust to C++ification.
9989
9990 2018-05-02  Pedro Alves  <palves@redhat.com>
9991
9992         * bfd-target.c (target_bfd_xclose): Rename to ...
9993         (target_bfd_close): ... this.
9994         (target_bfd_reopen): Adjust.
9995         * target.c (target_close): Remove references to to_xclose.
9996         * target.h (target_ops::to_xclose): Delete.
9997         (target_ops::to_close): Update comments.
9998
9999 2018-05-02  Pedro Alves  <palves@redhat.com>
10000
10001         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
10002         "linux-nat.h".
10003         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
10004         * inf-ptrace.c (inf_ptrace_register_u_offset)
10005         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10006         (inf_ptrace_store_register, inf_ptrace_store_registers)
10007         (inf_ptrace_trad_target): Move to ...
10008         * linux-nat-trad.c: ... this new file.
10009         * linux-nat-trad.h: New file.
10010         * linux-nat.c (linux_target_install_ops): Make extern.
10011         (linux_trad_target): Delete.
10012         * linux-nat.h (linux_trad_target): Delete declaration.
10013         (linux_target_install_ops): Declare.
10014         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
10015         "linux-nat.h".
10016
10017 2018-05-02  Pedro Alves  <palves@redhat.com>
10018
10019         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10020         procfs_target/add_target here.
10021         * procfs.c (procfs_target): Make static.
10022         (_initialize_procfs): Call add_target here.
10023         * procfs.h (struct target_ops): Remove forward declaration.
10024         (procfs_target): Remove declaration.
10025         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
10026
10027 2018-05-02  Pedro Alves  <palves@redhat.com>
10028
10029         * procfs.c (procfs_stopped_by_watchpoint)
10030         (procfs_insert_watchpoint, procfs_remove_watchpoint)
10031         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
10032         Forward declare.
10033         (procfs_use_watchpoints): Delete, move contents...
10034         (procfs_target): ... here.
10035         * procfs.h (procfs_use_watchpoints): Delete declaration.
10036         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10037         procfs_use_watchpoints.
10038         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
10039         procfs_use_watchpoints.
10040
10041 2018-05-02  Tom Tromey  <tom@tromey.com>
10042
10043         PR python/20084:
10044         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
10045         and var_zuinteger_unlimited.
10046         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
10047         and PARAM_ZUINTEGER_UNLIMITED.
10048         (set_parameter_value): Handle var_zuinteger and
10049         var_zuinteger_unlimited.
10050         (add_setshow_generic): Likewise.
10051         (parmpy_init): Likewise.
10052
10053 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
10054
10055         PR rust/23124
10056         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
10057         pointer is not null before dereferencing it.
10058
10059 2018-04-30  Tom Tromey  <tom@tromey.com>
10060
10061         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
10062         is_mi_like_p.
10063
10064 2018-04-30  Tom Tromey  <tom@tromey.com>
10065
10066         * breakpoint.c (mention): Remove use of is_mi_like_p.
10067         (print_mention_ranged_breakpoint): Likewise.
10068         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
10069         of is_mi_like_p.
10070
10071 2018-04-30  Tom Tromey  <tom@tromey.com>
10072
10073         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
10074
10075 2018-04-30  Tom Tromey  <tom@tromey.com>
10076
10077         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
10078         (info_spu_event_command): Remove some uses of is_mi_like_p.
10079
10080 2018-04-30  Tom Tromey  <tom@tromey.com>
10081
10082         * python/py-framefilter.c (py_print_single_arg)
10083         (enumerate_locals, py_print_args, py_print_frame): Remove some
10084         uses of is_mi_like_p.
10085
10086 2018-04-30  Tom Tromey  <tom@tromey.com>
10087
10088         * ui-out.c: Update.
10089         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
10090         * ui-out.h (ui_out::is_mi_like_p): Now const.
10091         (ui_out::do_is_mi_like_p): Now const.
10092         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
10093
10094 2018-04-30  Tom Tromey  <tom@tromey.com>
10095
10096         * varobj.c (varobj_set_visualizer): Use new_reference.
10097         * python/python.c (gdbpy_decode_line): Use new_reference.
10098         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
10099         new_reference.
10100
10101 2018-04-30  Tom Tromey  <tom@tromey.com>
10102
10103         * varobj.c (install_new_value): Use new_reference.
10104         * value.h (value_incref): Return void.  Swap intro comment with
10105         value_decref.
10106         * value.c (set_value_parent): Use new_reference.
10107         (value_incref): Return void.  Update intro comment.
10108         (release_value): Use new_reference.
10109         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
10110
10111 2018-04-30  Tom Tromey  <tom@tromey.com>
10112
10113         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
10114         * gdb_bfd.h (new_bfd_ref): Remove.
10115         (gdb_bfd_open): Update comment.
10116         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
10117         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
10118         (gdb_bfd_fdopenr): Use new_reference.
10119         * exec.c (exec_file_attach): Use new_reference.
10120
10121 2018-04-30  Tom Tromey  <tom@tromey.com>
10122
10123         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
10124         method.
10125
10126 2018-04-30  Tom Tromey  <tom@tromey.com>
10127
10128         * jit.c (jit_read_code_entry): Use type_align.
10129         * i386-tdep.c (i386_gdbarch_init): Don't call
10130         set_gdbarch_long_long_align_bit.
10131         * gdbarch.sh: Remove long_long_align_bit.
10132         * gdbarch.c, gdbarch.h: Rebuild.
10133         * arc-tdep.c (arc_type_align): New function.
10134         (arc_gdbarch_init): Use arc_type_align.  Don't call
10135         set_gdbarch_long_long_align_bit.
10136
10137 2018-04-30  Tom Tromey  <tom@tromey.com>
10138
10139         * rust-lang.c (rust_type_alignment): Remove.
10140         (rust_composite_type): Use type_align.
10141
10142 2018-04-30  Tom Tromey  <tom@tromey.com>
10143
10144         * NEWS: Mention Type.align.
10145         * python/py-type.c (typy_get_alignof): New function.
10146         (type_object_getset): Add "alignof".
10147
10148 2018-04-30  Tom Tromey  <tom@tromey.com>
10149
10150         PR exp/17095:
10151         * NEWS: Update.
10152         * std-operator.def (UNOP_ALIGNOF): New operator.
10153         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
10154         New.
10155         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
10156         * c-lang.c (c_op_print_tab): Add alignof.
10157         * c-exp.y (ALIGNOF): New token.
10158         (exp): Add "ALIGNOF" production.
10159         (ident_tokens): Add _Alignof and alignof.
10160
10161 2018-04-30  Tom Tromey  <tom@tromey.com>
10162
10163         * i386-tdep.c (i386_type_align): New function.
10164         (i386_gdbarch_init): Update.
10165         * gdbarch.sh (type_align): New method.
10166         * gdbarch.c, gdbarch.h: Rebuild.
10167         * arch-utils.h (default_type_align): Declare.
10168         * arch-utils.c (default_type_align): New function.
10169         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
10170         (struct type) <align_log2>: New field.
10171         <instance_flags>: Now a bitfield.
10172         (TYPE_RAW_ALIGN): New macro.
10173         (type_align, type_raw_align, set_type_align): Declare.
10174         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
10175         functions.
10176         * dwarf2read.c (quirk_rust_enum): Set type alignment.
10177         (get_alignment, maybe_set_alignment): New functions.
10178         (read_structure_type, read_enumeration_type, read_array_type)
10179         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
10180         (read_subrange_type, read_base_type): Set type alignment.
10181
10182 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
10183
10184         * dwarf2read.c (read_index_from_section): Use bool.
10185
10186 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
10187
10188         PR gdb/22950
10189         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
10190         with #ifdef.
10191
10192 2018-04-29  John Reiser  <jreiser@BitWagon.com>
10193
10194         PR build/22873
10195         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
10196         last step, and do it atomically.
10197
10198 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
10199
10200         * compile/compile-c-types.c (convert_int, convert_float):
10201         Update for C FE v1.
10202
10203 2018-04-27  Tom Tromey  <tom@tromey.com>
10204
10205         PR rust/22545:
10206         * rust-lang.c (rust_inclusive_range_type_p): New function.
10207         (rust_range): Handle inclusive ranges.
10208         (rust_compute_range): Likewise.
10209         * rust-exp.y (struct rust_op) <inclusive>: New field.
10210         (DOTDOTEQ): New constant.
10211         (range_expr): Add "..=" productions.
10212         (operator_tokens): Add "..=" token.
10213         (ast_range): Add "inclusive" parameter.
10214         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
10215         ranges.
10216         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
10217         bounds values.
10218         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
10219         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
10220         Update comments.
10221         * expprint.c (print_subexp_standard): Handle new bounds values.
10222         (dump_subexp_body_standard): Likewise.
10223
10224 2018-04-27  Tom Tromey  <tom@tromey.com>
10225
10226         * configure: Rebuild.
10227         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
10228         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
10229         "OVERRIDE".
10230         (class symbol_needs_eval_context): Likewise.
10231         * dwarf2read.c (mock_mapped_index::symbol_name_count)
10232         (mock_mapped_index::symbol_name_at): Use "override".  Remove
10233         "virtual".
10234         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
10235         "override".
10236         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
10237         * aarch64-tdep.c (instruction_reader::read): Use "override".
10238         (instruction_reader_test::read): Likewise.
10239         * arm-tdep.c (instruction_reader::read): Use "override".
10240         (instruction_reader_thumb::read): Likewise.
10241
10242 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
10243
10244         PR remote/9665
10245         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
10246         instead of remote_send.
10247         (remote_send): Remove.
10248
10249 2018-04-26  Pedro Alves  <palves@redhat.com>
10250
10251         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
10252         find_function_start_sal instead of find_pc_line.
10253
10254 2018-04-26  Pedro Alves  <palves@redhat.com>
10255
10256         * breakpoint.c (set_breakpoint_location_function): Handle
10257         mst_data_gnu_ifunc.
10258         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
10259         * elfread.c (elf_symtab_read): Give data symbols with
10260         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
10261         (elf_rel_plt_read): Update comment.
10262         * linespec.c (convert_linespec_to_sals): Handle
10263         mst_data_gnu_ifunc.
10264         (minsym_found): Handle mst_data_gnu_ifunc.
10265         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
10266         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
10267         * parse.c (find_minsym_type_and_address): Handle
10268         mst_data_gnu_ifunc.
10269         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
10270         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
10271         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
10272         comment.
10273         <mst_data_gnu_ifunc>: New enumerator.
10274
10275 2018-04-26  Pedro Alves  <palves@redhat.com>
10276
10277         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
10278         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
10279         'want_trampoline' parameter by a lookup_msym_prefer parameter.
10280         Handle it.
10281         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
10282         (lookup_minimal_symbol_by_pc): Adjust.
10283         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
10284         (lookup_solib_trampoline_symbol_by_pc): Adjust.
10285         * minsyms.h (lookup_msym_prefer): New enum.
10286         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10287         parameter by a lookup_msym_prefer parameter.
10288
10289 2018-04-26  Pedro Alves  <palves@redhat.com>
10290
10291         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
10292         ends in "@plt" instead of looking at the symbol's section.
10293
10294 2018-04-26  Pedro Alves  <palves@redhat.com>
10295
10296         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
10297         all references.
10298         (find_pc_partial_function_gnu_ifunc): Rename to ...
10299         (find_pc_partial_function): ... this, and remove references to
10300         'is_gnu_ifunc_p'.
10301         (find_pc_partial_function): Delete old implementation.
10302         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
10303
10304 2018-04-26  Pedro Alves  <palves@redhat.com>
10305
10306         * linespec.c (struct bound_minimal_symbol_search_key): New.
10307         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
10308         skip first line if we found a GNU ifunc minimal symbol by name.
10309         (compare_msymbols): Change parameters to work with a destructured
10310         lhs minsym.
10311         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
10312         functions.
10313
10314 2018-04-26  Pedro Alves  <palves@redhat.com>
10315
10316         * breakpoint.c (set_breakpoint_location_function): Don't resolve
10317         ifunc targets here.  Instead, if we have an ifunc minsym, use its
10318         address/name.
10319         (add_location_to_breakpoint): Store the minsym and the objfile in
10320         the breakpoint location.
10321         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
10322         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
10323         Record the minsym in the sal.
10324         * symtab.h (symtab_and_line) <msymbol>: New field.
10325
10326 2018-04-26  Pedro Alves  <palves@redhat.com>
10327
10328         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
10329         unless we actually resolved the ifunc.
10330
10331 2018-04-26  Pedro Alves  <palves@redhat.com>
10332
10333         * c-exp.y (variable production): Prefer ifunc minsyms over
10334         regular function symbols.
10335         * symtab.c (find_gnu_ifunc): New function.
10336         * minsyms.h (lookup_msym_prefer): New enum.
10337         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10338         parameter by a lookup_msym_prefer parameter.
10339         * symtab.h (find_gnu_ifunc): New declaration.
10340
10341 2018-04-26  Pedro Alves  <palves@redhat.com>
10342
10343         * blockframe.c (find_gnu_ifunc_target_type): New function.
10344         (find_function_type): New.
10345         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
10346         return a value with a memory address.
10347         (eval_call): For calls to GNU ifunc functions, try to find the
10348         type of the target function from the type that the resolver
10349         returns.
10350         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
10351         symbols.
10352         * infcall.c (find_function_return_type): Delete.
10353         (find_function_addr): Add 'function_type' parameter.  For calls to
10354         GNU ifunc functions, try to find the type of the target function
10355         from the type that the resolver returns, and return it via
10356         FUNCTION_TYPE.
10357         (call_function_by_hand_dummy): Adjust to use the function type
10358         returned by find_function_addr.
10359         (find_function_addr): Add 'function_type' parameter and move
10360         description here.
10361         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
10362         declarations.
10363
10364 2018-04-26  Pedro Alves  <palves@redhat.com>
10365
10366         * c-exp.y (variable production): Skip finding an alias for ifunc
10367         symbols.
10368
10369 2018-04-26  Pedro Alves  <palves@redhat.com>
10370
10371         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
10372
10373 2018-04-25  Pedro Alves  <palves@redhat.com>
10374
10375         * infcmd.c (kill_command): Print the pid as string, not the whole
10376         thread's ptid.  Add comment.  s/has been killed/killed/ in output
10377         message.
10378         * remote.c (remote_detach_1): Print the pid as string, not the
10379         whole thread's ptid.
10380
10381 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
10382             Sergio Durigan Junior  <sergiodj@redhat.com>
10383             Pedro Alves  <palves@redhat.com>
10384
10385         * infcmd.c (kill_command): Print message when inferior has
10386         been killed.
10387         * inferior.c (print_inferior_events): Remove 'static'.  Set as
10388         '1'.
10389         (add_inferior): Improve message printed when
10390         'print_inferior_events' is on.
10391         (exit_inferior): Remove message printed when
10392         'print_inferior_events' is on.
10393         (detach_inferior): Improve message printed when
10394         'print_inferior_events' is on.
10395         (initialize_inferiors): Use 'add_inferior_silent' to set
10396         'current_inferior_'.
10397         * inferior.h (print_inferior_events): Declare here as
10398         'extern'.
10399         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
10400         '[Detaching...]' messages when 'print_inferior_events' is on.
10401         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
10402         as prefix/suffix for messages.  Remove periods.  Fix erroneous
10403         'Detaching after fork from child...', replace it by '... from
10404         parent...'.
10405         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
10406         prefix/suffix when printing 'Detaching...' messages.  Print
10407         them when 'print_inferior_events' is on.
10408         * remote.c (remote_detach_1): Print message when detaching
10409         from inferior and '!is_fork_parent'.
10410
10411 2018-04-24  Tom Tromey  <tom@tromey.com>
10412
10413         * cli-out.h: Reindent.
10414
10415 2018-04-24  Tom Tromey  <tom@tromey.com>
10416
10417         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
10418         (cli_ui_out::do_field_string): Use fputs_filtered.
10419         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
10420
10421 2018-04-23  Tom Tromey  <tom@tromey.com>
10422
10423         * guile/scm-frame.c (gdbscm_frame_read_var): Use
10424         gdb::unique_xmalloc_ptr.
10425
10426 2018-04-23  Tom Tromey  <tom@tromey.com>
10427
10428         * configure: Rebuild.
10429
10430 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
10431
10432         PR gdb/23095
10433         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
10434         prepare_for_testing.  Set normal_bp to r_debug_state if target
10435         is bsd.
10436
10437 2018-04-21  Pedro Alves  <palves@redhat.com>
10438             Rajendra SY  <rajendra.sy@gmail.com>
10439
10440         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
10441         * remote.c (extended_remote_attach): In all-stop mode, mark the
10442         thread as executing.
10443
10444 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
10445
10446         * thread.c (thread_apply_all_command): Fix comment.
10447         (thread_command): Fix comment.
10448
10449 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
10450
10451         * common/tdesc.h (tdesc_create_feature): Remove xml filename
10452         parameter.
10453         * features/aarch64-core.c (create_feature_aarch64_core):
10454         Regenerate.
10455         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
10456         Likewise.
10457         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
10458         Likewise.
10459         * features/i386/32bit-avx512.c
10460         (create_feature_i386_32bit_avx512): Likewise.
10461         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
10462         Likewise.
10463         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
10464         Likewise.
10465         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
10466         Likewise.
10467         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
10468         Likewise.
10469         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
10470         Likewise.
10471         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
10472         Likewise.
10473         * features/i386/64bit-avx512.c
10474         (create_feature_i386_64bit_avx512): Likewise.
10475         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
10476         Likewise.
10477         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
10478         Likewise.
10479         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
10480         Likewise.
10481         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
10482         Likewise.
10483         * features/i386/64bit-segments.c
10484         (create_feature_i386_64bit_segments): Likewise.
10485         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
10486         Likewise.
10487         * features/i386/x32-core.c
10488         (create_feature_i386_x32_core): Likewise.
10489         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
10490         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
10491         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
10492         * target-descriptions.c: In generated code, don't pass xml
10493         filename.
10494
10495 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10496
10497         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
10498         (print_xml_feature::visit_post): Likewise.
10499         (print_xml_feature::visit): Likewise.
10500         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
10501         (print_xml_feature): Add new class.
10502         * regformats/regdat.sh: Null xmltarget on feature targets.
10503         * target-descriptions.c (struct target_desc): Add xmltarget.
10504         (maintenance_check_tdesc_xml_convert): Add unittest function.
10505         (tdesc_get_features_xml): Add function to get xml.
10506         (maintenance_check_xml_descriptions): Test xml generation.
10507         * xml-tdesc.c (string_read_description_xml): Add function.
10508         * xml-tdesc.h (string_read_description_xml): Add declaration.
10509
10510 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10511
10512         * features/Makefile: Add feature marker to targets with new style
10513         target descriptions.
10514         * regformats/aarch64.dat: Regenerate.
10515         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
10516         * regformats/i386/amd64-avx-linux.dat: Likewise.
10517         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
10518         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
10519         * regformats/i386/amd64-linux.dat: Likewise.
10520         * regformats/i386/amd64-mpx-linux.dat: Likewise.
10521         * regformats/i386/amd64.dat: Likewise.
10522         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
10523         * regformats/i386/i386-avx-linux.dat: Likewise.
10524         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
10525         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
10526         * regformats/i386/i386-linux.dat: Likewise.
10527         * regformats/i386/i386-mmx-linux.dat: Likewise.
10528         * regformats/i386/i386-mpx-linux.dat: Likewise.
10529         * regformats/i386/i386.dat: Likewise.
10530         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
10531         * regformats/i386/x32-avx-linux.dat: Likewise.
10532         * regformats/i386/x32-linux.dat: Likewise.
10533         * regformats/tic6x-c62x-linux.dat: Likewise.
10534         * regformats/tic6x-c64x-linux.dat: Likewise.
10535         * regformats/tic6x-c64xp-linux.dat: Likewise.
10536         * regformats/regdat.sh: Parse feature marker.
10537
10538 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10539
10540         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
10541         (tdesc_osabi_name): Likewise.
10542         * target-descriptions.c (tdesc_architecture_name): Add new
10543         function.
10544         (tdesc_osabi_name): Likewise.
10545
10546 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10547
10548         * common/tdesc.c (tdesc_predefined_type): Move to here.
10549         (tdesc_named_type): Likewise.
10550         (tdesc_create_vector): Likewise.
10551         (tdesc_create_struct): Likewise.
10552         (tdesc_set_struct_size): Likewise.
10553         (tdesc_create_union): Likewise.
10554         (tdesc_create_flags): Likewise.
10555         (tdesc_create_enum): Likewise.
10556         (tdesc_add_field): Likewise.
10557         (tdesc_add_typed_bitfield): Likewise.
10558         (tdesc_add_bitfield): Likewise.
10559         (tdesc_add_flag): Likewise.
10560         (tdesc_add_enum_value): Likewise.
10561         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
10562         (struct tdesc_type_vector): Likewise.
10563         (struct tdesc_type_field): Likewise.
10564         (struct tdesc_type_with_fields): Likewise.
10565         (tdesc_create_enum): Add declaration.
10566         (tdesc_add_typed_bitfield): Likewise.
10567         (tdesc_add_enum_value): Likewise.
10568         * target-descriptions.c (tdesc_type_field): Move from here.
10569         (tdesc_type_builtin): Likewise.
10570         (tdesc_type_vector): Likewise.
10571         (tdesc_type_with_fields): Likewise.
10572         (tdesc_predefined_types): Likewise.
10573         (tdesc_named_type): Likewise.
10574         (tdesc_create_vector): Likewise.
10575         (tdesc_create_struct): Likewise.
10576         (tdesc_set_struct_size): Likewise.
10577         (tdesc_create_union): Likewise.
10578         (tdesc_create_flags): Likewise.
10579         (tdesc_create_enum): Likewise.
10580         (tdesc_add_field): Likewise.
10581         (tdesc_add_typed_bitfield): Likewise.
10582         (tdesc_add_bitfield): Likewise.
10583         (tdesc_add_flag): Likewise.
10584         (tdesc_add_enum_value): Likewise.
10585         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
10586         (tdesc_add_typed_bitfield): Likewise.
10587         (tdesc_add_enum_value): Likewise.
10588
10589 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10590
10591         * common/tdesc.c (tdesc_feature::accept): Move to here.
10592         (tdesc_feature::operator==): Likewise.
10593         (tdesc_create_reg): Likewise.
10594         * common/tdesc.h (tdesc_type_kind): Likewise.
10595         (struct tdesc_type): Likewise.
10596         (struct tdesc_feature): Likewise.
10597         * regformats/regdat.sh: Create a feature.
10598         * target-descriptions.c (tdesc_type_kind): Move from here.
10599         (tdesc_type): Likewise.
10600         (tdesc_type_up): Likewise.
10601         (tdesc_feature): Likewise.
10602         (tdesc_create_reg): Likewise.
10603
10604 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10605
10606         * Makefile.in: Add arch/tdesc.c
10607         * common/tdesc.c: New file.
10608         * common/tdesc.h (tdesc_element_visitor): Move to here.
10609         (tdesc_element): Likewise.
10610         (tdesc_reg): Likewise.
10611         (tdesc_reg_up): Likewise.
10612         * regformats/regdef.h (reg): Add offset to constructors.
10613         * target-descriptions.c (tdesc_element_visitor): Move from here.
10614         (tdesc_element): Likewise.
10615         (tdesc_reg): Likewise.
10616         (tdesc_reg_up): Likewise.
10617
10618 2018-04-17  Tom Tromey  <tom@tromey.com>
10619
10620         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
10621         discriminant field.
10622
10623 2018-04-17  Tom Tromey  <tom@tromey.com>
10624
10625         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
10626
10627 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
10628
10629         * symtab.c (print_symbol_info): Skip printing filename and line
10630         number when `last' is NULL.
10631         (symtab_symbol_info): Use empty string instead of NULL for first
10632         invocation of print_symbol_info.
10633         (rbreak_command): Pass NULL to `last' parameter of
10634         print_symbol_info.
10635
10636 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
10637
10638         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
10639         instead of nullptr.
10640
10641 2018-04-16  Pedro Alves  <palves@redhat.com>
10642
10643         * MAINTAINERS (sh): Remove.
10644         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
10645         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
10646         (ALLDEPFILES): Remove sh64-tdep.c.
10647         * NEWS: Mentions that support for SH-5/SH64 is removed.
10648         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
10649         (sh*-*-openbsd*): Ditto.
10650         (sh64-*-elf*): Remove.
10651         (sh*): Remove.
10652         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
10653         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
10654         * sh-tdep.c: No longer include "sh64-tdep.h".
10655         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
10656         * sh64-tdep.c, sh64-tdep.h: Remove files.
10657
10658 2018-04-16  Pedro Alves  <palves@redhat.com>
10659
10660         * MAINTAINERS: Remove m88k.
10661         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
10662         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
10663         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
10664         * NEWS: Mention that support for m88k was removed.
10665         * configure.host (m88*-*-*): Remove support.
10666         * configure.nat (m88k-*-*): Remove support.
10667         * configure.tgt (m88*-*-openbsd*): Remove.
10668         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
10669
10670 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
10671
10672         * configure.tgt (x86_tobjs): New variable.
10673         (amd64_tobjs, i386_tobjs): Use it.
10674
10675 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
10676
10677         * symtab.c (print_symbol_info): Precede the symbol definition by
10678         the line number when available.
10679         * NEWS: Advertise this enhancement.
10680
10681 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10682
10683         * NEWS (New options): announce set/show record btrace cpu.
10684         * btrace.c: Include record-btrace.h.
10685         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
10686         the vendor is unknown.
10687         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
10688         Maybe overwrite the btrace configuration's cpu.
10689         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
10690         (btrace_fetch): Add cpu parameter.  Update callers.
10691         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
10692         Maybe overwrite the btrace configuration's cpu.  Skip enabling
10693         errata workarounds if the vendor is unknown.
10694         * python/py-record-btrace.c: Include record-btrace.h.
10695         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
10696         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
10697         * record-btrace.c (record_btrace_cpu_state_kind): New.
10698         (record_btrace_cpu): New.
10699         (set_record_btrace_cpu_cmdlist): New.
10700         (record_btrace_get_cpu): New.
10701         (require_btrace_thread, record_btrace_info)
10702         (record_btrace_resume_thread): Call record_btrace_get_cpu.
10703         (cmd_set_record_btrace_cpu_none): New.
10704         (cmd_set_record_btrace_cpu_auto): New.
10705         (cmd_set_record_btrace_cpu): New.
10706         (cmd_show_record_btrace_cpu): New.
10707         (_initialize_record_btrace): Initialize set/show record btrace cpu
10708         commands.
10709         * record-btrace.h (record_btrace_get_cpu): New.
10710
10711 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10712
10713         * record.c (set_record_command): Fix typo in message.
10714
10715 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10716
10717         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
10718
10719 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10720
10721         * infrun.c (process_event_stop_test): Call
10722         gdbarch_in_indirect_branch_thunk.
10723         * gdbarch.sh (in_indirect_branch_thunk): New.
10724         * gdbarch.c: Regenerated.
10725         * gdbarch.h: Regenerated.
10726         * x86-tdep.h: New.
10727         * x86-tdep.c: New.
10728         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
10729         (HFILES_NO_SRCDIR): Add x86-tdep.h.
10730         (ALLDEPFILES): Add x86-tdep.c.
10731         * arch-utils.h (default_in_indirect_branch_thunk): New.
10732         * arch-utils.c (default_in_indirect_branch_thunk): New.
10733         * i386-tdep: Include x86-tdep.h.
10734         (i386_in_indirect_branch_thunk): New.
10735         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
10736         function.
10737         * amd64-tdep: Include x86-tdep.h.
10738         (amd64_in_indirect_branch_thunk): New.
10739         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
10740
10741 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
10742
10743         PR gdb/23053
10744         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
10745         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
10746         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
10747         regression.
10748
10749 2018-04-12  Tom Tromey  <tom@tromey.com>
10750
10751         * rust-lang.c (rust_print_struct_def): Remove univariant code.
10752         (rust_evaluate_subexp): Likewise.
10753
10754 2018-04-12  Pedro Alves  <palves@redhat.com>
10755
10756         * procfs.c (procfs_detach): Make forward declaration's prototype
10757         match definition's protototype.
10758         (proc_get_LDT_entry): Remove stale do_cleanups call.
10759
10760 2018-04-12  Pedro Alves  <palves@redhat.com>
10761
10762         * target.h (target_ops::to_has_exited): Delete.
10763         (target_has_exited): Delete.
10764         * target-delegates.c: Regenerate.
10765
10766 2018-04-11  Pedro Alves  <palves@redhat.com>
10767
10768         * target.c (fileio_fh_t::t): Add comment.
10769         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
10770         (target_fileio_close): Handle a NULL target.
10771         (invalidate_fileio_fh): New.
10772         (target_close): Call it.
10773         * remote.c (remote_hostio_send_command): No longer check whether
10774         remote_desc is open.
10775
10776 2018-04-11  Pedro Alves  <palves@redhat.com>
10777
10778         * target.c (fileio_fh_t): Make it a named struct instead of a
10779         typedef.
10780         (fileio_fh_t::is_closed): New method.
10781         (DEF_VEC_O (fileio_fh_t)): Remove.
10782         (fileio_fhandles): Now a std::vector.
10783         (is_closed_fileio_fh): Delete.
10784         (acquire_fileio_fd): Adjust.  Rename parameters.
10785         (release_fileio_fd): Adjust.
10786         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
10787         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
10788         (target_fileio_close): Adjust.
10789
10790 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
10791
10792         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
10793         index.
10794
10795 2018-04-10  Pedro Alves  <palves@redhat.com>
10796
10797         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
10798         (scoped_finish_thread_state): New class.
10799         * infcmd.c (run_command_1): Use it instead of finish_thread_state
10800         cleanup.
10801         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
10802         (fetch_inferior_event, normal_stop): Likewise.
10803         * thread.c (finish_thread_state_cleanup): Delete.
10804
10805 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10806             Pedro Alves  <palves@redhat.com>
10807
10808         * value.c: Include "selftest.h" and "common/array-view.h".
10809         (struct range) <operator ==>: New.
10810         (test_ranges_contain): New.
10811         (check_ranges_vector): New.
10812         (test_insert_into_bit_range_vector): New.
10813         (_initialize_values): Register selftests.
10814         * common/array-view.h (operator==, operator!=): New.
10815
10816 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10817
10818         * common/gdb_vecs.h (unordered_remove): Add overload that takes
10819         an iterator.
10820         * inline-frame.c: Include <algorithm>.
10821         (struct inline_state): Add constructor.
10822         (inline_state_s): Remove.
10823         (DEF_VEC_O(inline_state_s)): Remove.
10824         (inline_states): Change type to std::vector.
10825         (find_inline_frame_state): Adjust to std::vector.
10826         (allocate_inline_frame_state): Remove.
10827         (clear_inline_frame_state): Adjust to std::vector.
10828         (skip_inline_frames): Adjust to std::vector.
10829
10830 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10831
10832         * tracepoint.h (struct trace_state_variable): Add constructor.
10833         <name>: Change type to std::string.
10834         * tracepoint.c (tsv_s): Remove.
10835         (DEF_VEC_O(tsv_s)): Remove.
10836         (tvariables): Change to std::vector.
10837         (create_trace_state_variable): Adjust to std::vector.
10838         (find_trace_state_variable): Likewise.
10839         (find_trace_state_variable_by_number): Likewise.
10840         (delete_trace_state_variable): Likewise.
10841         (trace_variable_command): Adjust to std::string.
10842         (delete_trace_variable_command): Likewise.
10843         (tvariables_info_1): Adjust to std::vector.
10844         (save_trace_state_variables): Likewise.
10845         (start_tracing): Likewise.
10846         (merge_uploaded_trace_state_variables): Adjust to std::vector
10847         and std::string.
10848         * target.h (struct target_ops)
10849         <to_download_trace_state_variable>: Pass reference to
10850         trace_state_variable.
10851         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
10852         * target-delegates.c: Re-generate.
10853         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
10854         (mi_tsv_deleted): Likewise.
10855         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
10856         * remote.c (remote_download_trace_state_variable): Change
10857         pointer to reference and adjust.
10858         * make-target-delegates (parse_argtypes): Handle references.
10859         (write_function_header): Likewise.
10860         (munge_type): Likewise.
10861
10862 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10863
10864         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
10865         string_view-selftests.c.
10866         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
10867         testsuite.
10868         * unittests/basic_string_view/cons/char/1.cc: Likewise.
10869         * unittests/basic_string_view/cons/char/2.cc: Likewise.
10870         * unittests/basic_string_view/cons/char/3.cc: Likewise.
10871         * unittests/basic_string_view/element_access/char/1.cc:
10872         Likewise.
10873         * unittests/basic_string_view/element_access/char/empty.cc:
10874         Likewise.
10875         * unittests/basic_string_view/element_access/char/front_back.cc:
10876         Likewise.
10877         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
10878         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
10879         Likewise.
10880         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
10881         Likewise.
10882         * unittests/basic_string_view/modifiers/swap/char/1.cc:
10883         Likewise.
10884         * unittests/basic_string_view/operations/compare/char/1.cc:
10885         Likewise.
10886         * unittests/basic_string_view/operations/compare/char/13650.cc:
10887         Likewise.
10888         * unittests/basic_string_view/operations/copy/char/1.cc:
10889         Likewise.
10890         * unittests/basic_string_view/operations/data/char/1.cc:
10891         Likewise.
10892         * unittests/basic_string_view/operations/find/char/1.cc:
10893         Likewise.
10894         * unittests/basic_string_view/operations/find/char/2.cc:
10895         Likewise.
10896         * unittests/basic_string_view/operations/find/char/3.cc:
10897         Likewise.
10898         * unittests/basic_string_view/operations/find/char/4.cc:
10899         Likewise.
10900         * unittests/basic_string_view/operations/rfind/char/1.cc:
10901         Likewise.
10902         * unittests/basic_string_view/operations/rfind/char/2.cc:
10903         Likewise.
10904         * unittests/basic_string_view/operations/rfind/char/3.cc:
10905         Likewise.
10906         * unittests/basic_string_view/operations/substr/char/1.cc:
10907         Likewise.
10908         * unittests/basic_string_view/operators/char/2.cc: Likewise.
10909         * unittests/string_view-selftests.c: New file.
10910
10911 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10912
10913         * unittests/basic_string_view/capacity/1.cc: New file.
10914         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
10915         * unittests/basic_string_view/cons/char/1.cc: New file.
10916         * unittests/basic_string_view/cons/char/2.cc: New file.
10917         * unittests/basic_string_view/cons/char/3.cc: New file.
10918         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
10919         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
10920         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
10921         * unittests/basic_string_view/element_access/char/1.cc: New file.
10922         * unittests/basic_string_view/element_access/char/2.cc: New file.
10923         * unittests/basic_string_view/element_access/char/empty.cc: New file.
10924         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
10925         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
10926         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
10927         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
10928         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
10929         * unittests/basic_string_view/include.cc: New file.
10930         * unittests/basic_string_view/inserters/char/1.cc: New file.
10931         * unittests/basic_string_view/inserters/char/2.cc: New file.
10932         * unittests/basic_string_view/inserters/char/3.cc: New file.
10933         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
10934         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
10935         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
10936         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
10937         * unittests/basic_string_view/literals/types.cc: New file.
10938         * unittests/basic_string_view/literals/values.cc: New file.
10939         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
10940         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
10941         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
10942         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
10943         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
10944         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
10945         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
10946         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
10947         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
10948         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
10949         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
10950         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
10951         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
10952         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
10953         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
10954         * unittests/basic_string_view/operations/data/char/1.cc: New file.
10955         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
10956         * unittests/basic_string_view/operations/find/char/1.cc: New file.
10957         * unittests/basic_string_view/operations/find/char/2.cc: New file.
10958         * unittests/basic_string_view/operations/find/char/3.cc: New file.
10959         * unittests/basic_string_view/operations/find/char/4.cc: New file.
10960         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
10961         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
10962         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
10963         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
10964         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
10965         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
10966         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
10967         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
10968         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
10969         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
10970         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
10971         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
10972         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
10973         * unittests/basic_string_view/operators/char/2.cc: New file.
10974         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
10975         * unittests/basic_string_view/range_access/char/1.cc: New file.
10976         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
10977         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
10978         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
10979         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
10980         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
10981         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
10982         * unittests/basic_string_view/requirements/typedefs.cc: New file.
10983         * unittests/basic_string_view/typedefs.cc: New file.
10984         * unittests/basic_string_view/types/1.cc: New file.
10985
10986 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10987
10988         * common/gdb_string_view.h: Remove libstdc++ implementation
10989         details, adjust to gdb reality.
10990         * common/gdb_string_view.tcc: Likewise.
10991         * cli/cli-script.c (struct string_view): Remove.
10992         (user_args) <m_args>: Change element type to gdb::string_view.
10993         (user_args::insert_args): Adjust.
10994
10995 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10996
10997         * common/gdb_string_view.h: New file.
10998         * common/gdb_string_view.tcc: New file.
10999
11000 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11001
11002         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
11003         * configure: Re-generate.
11004
11005 2018-04-09  Pedro Alves  <palves@redhat.com>
11006
11007         * gdbarch.sh: Include "observable.h" instead of "observer.h".
11008         (set_target_gdbarch): Call
11009         gdb::observers::architecture_changed.notify instead of
11010         observer_notify_architecture_changed.
11011
11012 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11013
11014         * tracepoint.c (struct current_traceframe_cleanup): Remove.
11015         (do_restore_current_traceframe_cleanup): Remove.
11016         (restore_current_traceframe_cleanup_dtor): Remove.
11017         (make_cleanup_restore_current_traceframe): Remove.
11018         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
11019         New.
11020         * tracepoint.h (struct scoped_restore_current_traceframe): New.
11021         * infrun.c (fetch_inferior_event): Use
11022         scoped_restore_current_traceframe.
11023
11024 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11025
11026         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
11027         Remove.
11028         <n_allocated_type_units>: Remove.
11029         <all_type_units>: Change to std::vector.
11030         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11031         to std::vector change.
11032         (dwarf2_per_objfile::get_cutu): Likewise.
11033         (dwarf2_per_objfile::get_tu): Likewise.
11034         (create_signatured_type_table_from_index): Likewise.
11035         (create_signatured_type_table_from_debug_names): Likewise.
11036         (dw2_symtab_iter_next): Likewise.
11037         (dw2_print_stats): Likewise.
11038         (dw2_expand_all_symtabs): Likewise.
11039         (dw2_expand_marked_cus): Likewise.
11040         (dw2_debug_names_iterator::next): Likewise.
11041         (dwarf2_initialize_objfile): Likewise.
11042         (add_signatured_type_cu_to_table): Likewise.
11043         (create_all_type_units): Likewise.
11044         (add_type_unit): Likewise.
11045         (struct tu_abbrev_offset): Add constructor.
11046         (build_type_psymtabs_1): Adjust to std::vector change.
11047         (print_tu_stats): Likewise.
11048         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11049         (write_debug_names): Likewise.
11050
11051 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11052
11053         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
11054         Make an std::vector.
11055         <n_comp_units>: Remove.
11056         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11057         to std::vector change.
11058         (dwarf2_per_objfile::get_cutu): Likewise.
11059         (dwarf2_per_objfile::get_cu): Likewise.
11060         (create_cus_from_index): Likewise.
11061         (create_addrmap_from_index): Likewise.
11062         (create_addrmap_from_aranges): Likewise.
11063         (dwarf2_read_index): Likewise.
11064         (dw2_find_last_source_symtab): Likewise.
11065         (dw2_map_symtabs_matching_filename): Likewise.
11066         (dw2_symtab_iter_next): Likewise.
11067         (dw2_print_stats): Likewise.
11068         (dw2_expand_all_symtabs): Likewise.
11069         (dw2_expand_symtabs_with_fullname): Likewise.
11070         (dw2_expand_marked_cus): Likewise.
11071         (dw2_map_symbol_filenames): Likewise.
11072         (create_cus_from_debug_names): Likewise.
11073         (dwarf2_read_debug_names): Likewise.
11074         (dw2_debug_names_iterator::next): Likewise.
11075         (dwarf2_initialize_objfile): Likewise.
11076         (set_partial_user): Likewise.
11077         (dwarf2_build_psymtabs_hard): Likewise.
11078         (read_comp_units_from_section): Remove arguments, adjust to
11079         std::vector change.
11080         (create_all_comp_units): Adjust to std::vector and
11081         read_comp_units_from_section changes.
11082         (dwarf2_find_containing_comp_unit): Adjust to std::vector
11083         change.
11084         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11085         (psyms_seen_size): Likewise.
11086         (write_gdbindex): Likewise.
11087         (write_debug_names): Likewise.
11088
11089 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11090
11091         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
11092         with dwarf2_per_objfile.
11093         (create_cus_from_index): Likewise.
11094         (create_signatured_type_table_from_index): Likewise.
11095         (dwarf2_read_index): Likewise.
11096         (dwarf2_initialize_objfile): Likewise.
11097         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
11098         per_cu rather than get_dwarf2_per_objfile.
11099
11100 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11101
11102         * dwarf2read.h (struct signatured_type): Forward declare.
11103         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
11104         New methods.
11105         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
11106         (dw2_get_cutu): ...this.
11107         (dwarf2_per_objfile::get_cu): Rename from...
11108         (dw2_get_cu): ...this.
11109         (dwarf2_per_objfile::get_tu): New.
11110         (create_addrmap_from_index): Adjust.
11111         (create_addrmap_from_aranges): Adjust.
11112         (dw2_find_last_source_symtab): Adjust.
11113         (dw2_map_symtabs_matching_filename): Adjust.
11114         (dw2_symtab_iter_next): Adjust.
11115         (dw2_print_stats): Adjust.
11116         (dw2_expand_all_symtabs): Adjust.
11117         (dw2_expand_symtabs_with_fullname): Adjust.
11118         (dw2_expand_marked_cus): Adjust.
11119         (dw_expand_symtabs_matching_file_matcher): Adjust.
11120         (dw2_map_symbol_filenames): Adjust.
11121         (dw2_debug_names_iterator::next): Adjust.
11122         (dwarf2_initialize_objfile): Adjust.
11123         (set_partial_user): Adjust.
11124         (dwarf2_build_psymtabs_hard): Adjust.
11125
11126 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11127
11128         * dwarf2read.c (create_signatured_type_table_from_debug_names):
11129         Remove unused variables.
11130         (dw2_map_symtabs_matching_filename): Likewise.
11131         (dwarf2_record_block_ranges): Likewise.
11132         (dwarf2_read_addr_index): Likewise.
11133         (follow_die_offset): Likewise.
11134
11135 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11136
11137         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
11138         to symbol_file_add_main.
11139
11140 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11141
11142         PR mi/22299
11143         * mi/mi-console.c (do_fputc_async_safe): New.
11144         (mi_console_file::write_async_safe): New.
11145         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
11146         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
11147         New.
11148         * ui-file.c (ui_file::putstrn): Adjust call to
11149         fputstrn_unfiltered.
11150         * utils.c (printchar): Replace do_fputs and do_fprintf
11151         parameters by do_fputc.
11152         (fputstr_filtered): Adjust call to printchar.
11153         (fputstr_unfiltered): Likewise.
11154         (fputstrn_filtered): Likewise.
11155         (fputstrn_unfiltered): Add do_fputc parameter, pass to
11156         printchar.
11157         * utils.h (do_fputc_ftype): New typedef.
11158         (fputstrn_unfiltered): Add do_fputc parameter.
11159
11160 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11161
11162         * regformats/i386/i386-avx.dat: Remove.
11163
11164 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11165
11166         PR gdb/22979
11167         * amd64-tdep.c (amd64_none_init_abi): New function.
11168         (amd64_x32_none_init_abi): New function.
11169         (_initialize_amd64_tdep): Register handlers for x86-64 and
11170         x64_32 with GDB_OSABI_NONE.
11171         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
11172         GDB_OSABI_NONE osabi.
11173
11174 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11175
11176         PR gdb/22980
11177         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
11178         GDB_OSABI_NONE.
11179         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
11180         * osabi.c (gdb_osabi_names): Add "unknown" entry.
11181
11182 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11183
11184         * common/byte-vector.h (char_vector): New type.
11185         * target.h (target_read_alloc): Return
11186         gdb::optional<byte_vector>.
11187         (target_read_stralloc): Return gdb::optional<char_vector>.
11188         (target_get_osdata): Return gdb::optional<char_vector>.
11189         * target.c (target_read_alloc_1): Templatize.  Replacement
11190         manual memory management with vector.
11191         (target_read_alloc): Change return type, adjust.
11192         (target_read_stralloc): Change return type, adjust.
11193         (target_get_osdata): Change return type, adjust.
11194         * auxv.c (struct auxv_info) <length>: Remove.
11195         <data>: Change type to gdb::optional<byte_vector>.
11196         (auxv_inferior_data_cleanup): Free auxv_info with delete.
11197         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
11198         (target_auxv_search): Adjust.
11199         (fprint_target_auxv): Adjust.
11200         * avr-tdep.c (avr_io_reg_read_command): Adjust.
11201         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
11202         (linux_make_corefile_notes): Adjust.
11203         * osdata.c (get_osdata): Adjust.
11204         * remote.c (remote_get_threads_with_qxfer): Adjust.
11205         (remote_memory_map): Adjust.
11206         (remote_traceframe_info): Adjust.
11207         (btrace_read_config): Adjust.
11208         (remote_read_btrace): Adjust.
11209         (remote_pid_to_exec_file): Adjust.
11210         * solib-aix.c (solib_aix_get_library_list): Adjust.
11211         * solib-dsbt.c (decode_loadmap): Don't free buf.
11212         (dsbt_get_initial_loadmaps): Adjust.
11213         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
11214         * solib-target.c (solib_target_current_sos): Adjust.
11215         * tracepoint.c (sdata_make_value): Adjust.
11216         * xml-support.c (xinclude_start_include): Adjust.
11217         (xml_fetch_content_from_file): Adjust.
11218         * xml-support.h (xml_fetch_another): Change return type.
11219         (xml_fetch_content_from_file): Change return type.
11220         * xml-syscall.c (xml_init_syscalls_info): Adjust.
11221         * xml-tdesc.c (file_read_description_xml): Adjust.
11222         (fetch_available_features_from_target): Change return type.
11223         (target_fetch_description_xml): Adjust.
11224         (target_read_description_xml): Adjust.
11225
11226 2018-04-06  Tom Tromey  <tom@tromey.com>
11227
11228         * value.c (~value): Update.
11229         (struct value) <contents>: Now unique_xmalloc_ptr.
11230         (value_contents_bits_eq, allocate_value_contents)
11231         (value_contents_raw, value_contents_all_raw)
11232         (value_contents_for_printing, value_contents_for_printing_const)
11233         (set_value_enclosing_type): Update.
11234
11235 2018-04-06  Tom Tromey  <tom@tromey.com>
11236
11237         * value.c (range_s): Remove typedef, VEC.
11238         (struct range): Add operator<.
11239         (range_lessthan): Remove.
11240         (ranges_contain): Change type.
11241         (~value): Update.
11242         (struct value) <unavailable, optimized_out>: Now std::vector.
11243         (value_entirely_available)
11244         (value_entirely_covered_by_range_vector)
11245         (value_entirely_unavailable, value_entirely_optimized_out):
11246         Update.
11247         (insert_into_bit_range_vector): Change argument type.
11248         (find_first_range_overlap): Likewise.
11249         (struct ranges_and_idx, value_contents_bits_eq)
11250         (require_not_optimized_out, require_available): Update.
11251         (ranges_copy_adjusted): Change argument types.
11252         (value_optimized_out, value_copy, value_fetch_lazy): Update.
11253
11254 2018-04-06  Tom Tromey  <tom@tromey.com>
11255
11256         * value.c (~value): Update.
11257         (struct value) <parent>: Now a value_ref_ptr.
11258         (value_parent, set_value_parent, value_address, value_copy):
11259         Update.
11260
11261 2018-04-06  Tom Tromey  <tom@tromey.com>
11262
11263         * value.c (struct value): Add constructor, destructor, and member
11264         initializers.
11265         (allocate_value_lazy, value_decref): Update.
11266
11267 2018-04-06  Tom Tromey  <tom@tromey.com>
11268
11269         * value.c (struct value) <released, next>: Remove.
11270         (all_values): Now a std::vector.
11271         (allocate_value_lazy): Update.
11272         (value_next): Remove.
11273         (value_mark, value_free_to_mark, release_value)
11274         (value_release_to_mark): Update.
11275
11276 2018-04-06  Tom Tromey  <tom@tromey.com>
11277
11278         * value.h (fetch_subexp_value, value_release_to_mark): Update.
11279         (free_value_chain): Remove.
11280         * value.c (free_value_chain): Remove.
11281         (value_release_to_mark): Return a std::vector.
11282         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
11283         std::vector.
11284         (check_condition): Update.
11285         * eval.c (fetch_subexp_value): Change "val_chain" to a
11286         std::vector.
11287         * breakpoint.c (update_watchpoint): Update.
11288         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
11289
11290 2018-04-06  Tom Tromey  <tom@tromey.com>
11291
11292         * value.h (free_all_values): Remove.
11293         * value.c (free_all_values): Remove.
11294
11295 2018-04-06  Tom Tromey  <tom@tromey.com>
11296
11297         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
11298         (value_history_chain, value_history_count): Remove.
11299         (value_history): New global.
11300         (record_latest_value, access_value_history, show_values)
11301         (preserve_values): Update.
11302
11303 2018-04-06  Tom Tromey  <tom@tromey.com>
11304
11305         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
11306         * varobj.c (varobj_set_display_format, varobj_set_value)
11307         (install_default_visualizer, construct_visualizer)
11308         (install_new_value, ~varobj, varobj_get_value_type)
11309         (my_value_of_variable, varobj_editable_p): Update.
11310         * c-varobj.c (c_describe_child, c_value_of_variable)
11311         (cplus_number_of_children, cplus_describe_child): Update.
11312         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
11313         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
11314         (ada_value_of_variable, ada_value_is_changeable_p): Update.
11315
11316 2018-04-06  Tom Tromey  <tom@tromey.com>
11317
11318         * printcmd.c (last_examine_address): Change type to
11319         value_ref_ptr.
11320         (do_examine, x_command): Update.
11321
11322 2018-04-06  Tom Tromey  <tom@tromey.com>
11323
11324         * value.c (release_value): Update.
11325         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
11326         (struct bpstats) <val>: Now a value_ref_ptr.
11327         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11328         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11329         (~watchpoint, print_it_watchpoint, watch_command_1)
11330         (invalidate_bp_value_on_memory_change): Update.
11331
11332 2018-04-06  Tom Tromey  <tom@tromey.com>
11333
11334         * varobj.c (varobj_clear_saved_item)
11335         (update_dynamic_varobj_children, install_new_value, ~varobj):
11336         Update.
11337         * value.h (value_incref): Move declaration earlier.
11338         (value_decref): Rename from value_free.
11339         (struct value_ref_policy): New.
11340         (value_ref_ptr): New typedef.
11341         (struct value_deleter): Remove.
11342         (gdb_value_up): Remove typedef.
11343         (release_value): Change return type.
11344         (release_value_or_incref): Remove.
11345         * value.c (set_value_parent): Update.
11346         (value_incref): Change return type.
11347         (value_decref): Rename from value_free.
11348         (value_free_to_mark, free_all_values, free_value_chain): Update.
11349         (release_value): Return value_ref_ptr.
11350         (release_value_or_incref): Remove.
11351         (record_latest_value, set_internalvar, clear_internalvar):
11352         Update.
11353         * stack.c (info_frame_command): Don't call value_free.
11354         * python/py-value.c (valpy_dealloc, valpy_new)
11355         (value_to_value_object): Update.
11356         * printcmd.c (do_examine): Update.
11357         * opencl-lang.c (lval_func_free_closure): Update.
11358         * mi/mi-main.c (register_changed_p): Don't call value_free.
11359         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
11360         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
11361         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
11362         value_free.
11363         * guile/scm-value.c (vlscm_free_value_smob)
11364         (vlscm_scm_from_value): Update.
11365         * frame.c (frame_register_unwind, frame_unwind_register_signed)
11366         (frame_unwind_register_unsigned, get_frame_register_bytes)
11367         (put_frame_register_bytes): Don't call value_free.
11368         * findvar.c (address_from_register): Don't call value_free.
11369         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
11370         * dwarf2loc.c (entry_data_value_free_closure)
11371         (value_of_dwarf_reg_entry, free_pieced_value_closure)
11372         (dwarf2_evaluate_loc_desc_full): Update.
11373         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11374         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11375         (~watchpoint, watch_command_1)
11376         (invalidate_bp_value_on_memory_change): Update.
11377         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
11378
11379 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
11380
11381         PR gdb/23022
11382         * warning.m4: Add -Wno-error=deprecated-register.
11383         * configure: Re-generate.
11384
11385 2018-04-05  Tom Tromey  <tom@tromey.com>
11386
11387         * linespec.h: Remove include of "vec.h".
11388
11389 2018-04-05  Tom Tromey  <tom@tromey.com>
11390
11391         * linespec.c (typep): Remove typedef.
11392         (find_methods, find_superclass_methods): Take a std::vector.
11393         (find_method): Use std::vector.
11394
11395 2018-04-05  Tom Tromey  <tom@tromey.com>
11396
11397         * utils.c (compare_strings): Remove.
11398         * utils.h (compare_strings): Remove.
11399         * objc-lang.h (find_imps): Update.
11400         * objc-lang.c (find_methods): Take a std::vector.
11401         (uniquify_strings, find_imps): Likewise.
11402         * linespec.c (find_methods): Take a std::vector.
11403         (decode_objc): Use std::vector.
11404         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
11405         a std::vector.
11406         (find_method, find_function_symbols): Use std::vector.
11407
11408 2018-04-05  Tom Tromey  <tom@tromey.com>
11409
11410         * completer.c (completion_tracker::completion_tracker): Remove
11411         cast.
11412         (completion_tracker::discard_completions): Likewise.
11413         * breakpoint.c (ambiguous_names_p): Remove cast.
11414         * ada-lang.c (_initialize_ada_language): Remove cast.
11415         * utils.h (streq): Update.
11416         (streq_hash): Add new declaration.
11417         * utils.c (streq): Return bool.
11418         (streq_hash): New function.
11419
11420 2018-04-05  Tom Tromey  <tom@tromey.com>
11421
11422         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
11423         Remove a string copy.
11424
11425 2018-04-05  Tom Tromey  <tom@tromey.com>
11426
11427         * linespec.c (filter_results): Use std::vector.
11428         (decode_line_2, decode_line_full): Update.
11429
11430 2018-04-05  Tom Tromey  <tom@tromey.com>
11431
11432         * linespec.c (canonical_to_fullform): Return std::string.
11433         (filter_results): Update.
11434         (struct decode_line_2_item): Add constructor.
11435         <fullform, displayform>: Now std::string.
11436         (decode_line_2_compare_items): Now a std::sort comparator.
11437         (decode_line_2): Update.
11438
11439 2018-04-05  Tom Tromey  <tom@tromey.com>
11440
11441         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
11442         (unexpected_linespec_error): Update.
11443         (linespec_parse_basic, parse_linespec): Update.
11444
11445 2018-04-05  Tom Tromey  <tom@tromey.com>
11446
11447         * linespec.c (linespec_parse_basic): Reindent.
11448
11449 2018-04-05  Tom Tromey  <tom@tromey.com>
11450
11451         * minsyms.h (iterate_over_minimal_symbols): Update.
11452         * minsyms.c (iterate_over_minimal_symbols): Take a
11453         gdb::function_view.
11454         * linespec.c (struct collect_minsyms): Remove.
11455         (compare_msyms): Now a std::sort comparator.
11456         (add_minsym): Add parameters.
11457         (search_minsyms_for_name): Update.  Use std::vector.
11458
11459 2018-04-03  Tom Tromey  <tom@tromey.com>
11460
11461         * mipsread.c (read_alphacoff_dynamic_symtab): Use
11462         gdb::byte_vector.
11463
11464 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
11465
11466         * MAINTAINERS (Write After Approval): Add Weimin Pan.
11467
11468 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
11469
11470         PR gdb/16959
11471         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
11472         printing static type.
11473
11474 2018-04-01  Tom Tromey  <tom@tromey.com>
11475
11476         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
11477         (rs6000_xfer_shared_libraries): Update.
11478
11479 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
11480
11481         * common/gdb_vecs.h (char_ptr): Remove.
11482         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
11483
11484 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
11485
11486         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
11487         with std::vector.
11488         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
11489
11490 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
11491
11492         * tracepoint.h (struct uploaded_tp): Initialize fields.
11493         <actions, step_actions, cmd_strings>: Change type to
11494         std::vector<char *>.
11495         * tracepoint.c (get_uploaded_tp): Allocate with new.
11496         (free_uploaded_tps): Free with delete.
11497         (parse_tracepoint_definition): Adjust to std::vector change.
11498         * breakpoint.c (read_uploaded_action): Likewise.
11499         (create_tracepoint_from_upload): Likewise.
11500         * ctf.c (ctf_write_uploaded_tp): Likewise.
11501         (SET_ARRAY_FIELD): Likewise.
11502         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
11503
11504 2018-03-30  Tom Tromey  <tom@tromey.com>
11505
11506         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
11507         std::unique_ptr.
11508         (svr4_keep_data_in_core): Update.
11509         (svr4_read_so_list): Update.
11510
11511 2018-03-30  Tom Tromey  <tom@tromey.com>
11512
11513         * windows-nat.c (handle_output_debug_string, handle_exception):
11514         Update.
11515         * target.h (target_read_string): Update.
11516         * target.c (target_read_string): Change "string" to
11517         unique_xmalloc_ptr.
11518         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
11519         Update.
11520         * solib-frv.c (frv_current_sos): Update.
11521         * solib-dsbt.c (dsbt_current_sos): Update.
11522         * solib-darwin.c (darwin_current_sos): Update.
11523         * linux-thread-db.c (inferior_has_bug): Update.
11524         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
11525         Update.  Remove alloca.
11526         * ada-lang.c (ada_main_name): Update.
11527
11528 2018-03-30  Tom Tromey  <tom@tromey.com>
11529
11530         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
11531         (struct dwo_file_deleter): New.
11532         (dwo_file_up): New typedef.
11533         (open_and_init_dwo_file): Use dwo_file_up.
11534         (free_dwo_file_cleanup): Remove.
11535
11536 2018-03-30  Tom Tromey  <tom@tromey.com>
11537
11538         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
11539         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
11540
11541 2018-03-30  Tom Tromey  <tom@tromey.com>
11542
11543         * dwarf2read.c (class free_cached_comp_units): New class.
11544         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
11545         (free_cached_comp_units): Remove function.
11546
11547 2018-03-30  Tom Tromey  <tom@tromey.com>
11548
11549         * utils.h (make_cleanup_unpush_target): Remove.
11550         * inf-ptrace.c (struct target_unpusher): New.
11551         (target_unpush_up) New typedef.
11552         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
11553         target_unpush_up.
11554         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
11555
11556 2018-03-27  Tom Tromey  <tom@tromey.com>
11557
11558         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
11559
11560 2018-03-27  Pedro Alves  <palves@redhat.com>
11561             Tom Tromey  <tom@tromey.com>
11562
11563         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
11564         destructor.  Now a class.
11565         (gdb_readline_wrapper_cleanup): Remove function.
11566         (gdb_readline_wrapper): Remove cleanups.
11567
11568 2018-03-27  Tom Tromey  <tom@tromey.com>
11569
11570         * typeprint.h (struct type_print_options) <local_typedefs,
11571         global_typedefs>: Remove "struct" keyword.
11572         (class typedef_hash_table): New class.
11573         (recursively_update_typedef_hash, add_template_parameters)
11574         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
11575         (find_typedef_in_hash): Don't declare.
11576         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
11577         (typedef_hash_table::recursively_update): Rename from
11578         recursively_update_typedef_hash.  Now a member.
11579         (typedef_hash_table::add_template_parameters): Rename from
11580         add_template_parameters.  Now a member.
11581         (typedef_hash_table::typedef_hash_table): Now a constructor;
11582         rename from create_typedef_hash.
11583         (typedef_hash_table::~typedef_hash_table): Now a destructor;
11584         rename from free_typedef_hash.
11585         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
11586         (do_free_global_table): Remove.
11587         (typedef_hash_table::typedef_hash_table): New constructor; renamed
11588         from copy_type_recursive.
11589         (create_global_typedef_table): Remove.
11590         (typedef_hash_table::find_global_typedef): Now a member of
11591         typedef_hash_table.
11592         (typedef_hash_table::find_typedef): Rename from
11593         find_typedef_in_hash; now a member.
11594         (whatis_exp): Update.
11595         * extension.h (struct ext_lang_type_printers): Add constructor and
11596         destructor.
11597         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
11598         declare.
11599         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
11600         Now a constructor; rename from start_ext_lang_type_printers.
11601         (ext_lang_type_printers): Now a destructor; rename from
11602         free_ext_lang_type_printers.
11603         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
11604         Update.
11605         (c_type_print_base_struct_union): Update.  Remove cleanups.
11606
11607 2018-03-27  Tom Tromey  <tom@tromey.com>
11608
11609         * dwarf-index-write.c: Include <cmath>.
11610
11611 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
11612
11613         * NEWS: Add entry describing new "set|show varsize-limit" command.
11614         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
11615         command.
11616         * printcmd.c (_initialize_printcmd): Add "set var" alias of
11617         "set variable".
11618
11619 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
11620
11621         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
11622         dwarf-index-write.c
11623         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
11624         * dwarf-index-common.c: New file.
11625         * dwarf-index-common.h: New file.
11626         * dwarf-index-write.c: New file.
11627         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
11628         (struct dwarf2_section_info): Move from here.
11629         (dwarf2_section_info_def): Likewise.
11630         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
11631         (offset_type): Likewise.
11632         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
11633         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
11634         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
11635         (byte_swap): Likewise.
11636         (MAYBE_SWAP): Likewise.
11637         (dwarf2_per_cu_ptr): Likewise.
11638         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
11639         (struct tu_stats): Likewise.
11640         (struct dwarf2_per_objfile): Likewise.
11641         (struct dwarf2_per_cu_data): Likewise.
11642         (struct signatured_type): Likewise.
11643         (sig_type_ptr): Likewise.
11644         (DEF_VEC_P (sig_type_ptr)): Likewise.
11645         (INDEX4_SUFFIX): Likewise.
11646         (INDEX5_SUFFIX): Likewise.
11647         (DEBUG_STR_SUFFIX): Likewise.
11648         (dwarf2_read_section): Make non-static.
11649         (mapped_index_string_hash): Move from here.
11650         (dwarf5_djb_hash): Likewise.
11651         (file_write): Likewise.
11652         (class data_buf): Likewise.
11653         (struct symtab_index_entry): Likewise.
11654         (struct mapped_symtab): Likewise.
11655         (find_slot): Likewise.
11656         (hash_expand): Likewise.
11657         (add_index_entry): Likewise.
11658         (uniquify_cu_indices): Likewise.
11659         (class c_str_view): Likewise.
11660         (class c_str_view_hasher): Likewise.
11661         (class vector_hasher): Likewise.
11662         (write_hash_table): Likewise.
11663         (psym_index_map): Likewise.
11664         (struct addrmap_index_data): Likewise.
11665         (add_address_entry): Likewise.
11666         (add_address_entry_worker): Likewise.
11667         (write_address_map): Likewise.
11668         (symbol_kind): Likewise.
11669         (write_psymbols): Likewise.
11670         (struct signatured_type_index_data): Likewise.
11671         (write_one_signatured_type): Likewise.
11672         (recursively_count_psymbols): Likewise.
11673         (recursively_write_psymbols): Likewise.
11674         (class debug_names): Likewise.
11675         (check_dwarf64_offsets): Likewise.
11676         (psyms_seen_size): Likewise.
11677         (write_gdbindex): Likewise.
11678         (write_debug_names): Likewise.
11679         (assert_file_size): Likewise.
11680         (write_psymtabs_to_index): Likewise.
11681         (save_gdb_index_command): Likewise.
11682         (_initialize_dwarf2_read): Don't register the "save gdb-index"
11683         command.
11684         * dwarf2read.h: New file.
11685
11686 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
11687
11688         PR gdb/22670
11689         * dwarf2read.c (dwarf2_physname): Do not return the demangled
11690         symbol name if the CU's language stores symbol names in linkage
11691         format.
11692         * language.h (struct language_defn)
11693         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
11694         all instances of this struct.
11695
11696 2018-03-26  Tom Tromey  <tom@tromey.com>
11697
11698         * stack.c (backtrace_command_1): Remove verbose code.
11699
11700 2018-03-26  Tom Tromey  <tom@tromey.com>
11701
11702         * python/py-framefilter.c (py_print_type): Don't catch
11703         exceptions.  Return void.
11704         (py_print_value): Likewise.
11705         (py_print_single_arg): Likewise.
11706         (enumerate_args): Don't catch exceptions.
11707         (py_print_args): Likewise.
11708         (py_print_frame): Likewise.
11709         (gdbpy_apply_frame_filter): Catch exceptions here.
11710
11711 2018-03-26  Tom Tromey  <tom@tromey.com>
11712
11713         * stack.c (_initialize_stack): Remove trailing newlines from help
11714         text.  Add "Usage" line to "backtrace" help.
11715
11716 2018-03-26  Tom Tromey  <tom@tromey.com>
11717
11718         PR python/16486:
11719         * python/py-framefilter.c (py_print_args): Call wrap_hint.
11720
11721 2018-03-26  Tom Tromey  <tom@tromey.com>
11722
11723         * python/py-framefilter.c (py_print_single_arg): Return
11724         EXT_LANG_BT_ERROR from catch.
11725
11726 2018-03-26  Tom Tromey  <tom@tromey.com>
11727
11728         PR backtrace/15584:
11729         * stack.c (backtrace_command_1): Move some code into no-filters
11730         "if".
11731
11732 2018-03-26  Tom Tromey  <tom@tromey.com>
11733
11734         * python/py-framefilter.c (throw_quit_or_print_exception): New
11735         function.
11736         (gdbpy_apply_frame_filter): Use it.
11737
11738 2018-03-26  Tom Tromey  <tom@tromey.com>
11739
11740         PR cli/17716:
11741         * python/py-framefilter.c (py_print_type, py_print_value)
11742         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
11743         RETURN_MASK_ERROR.
11744
11745 2018-03-26  Tom Tromey  <tom@tromey.com>
11746
11747         * python/py-framefilter.c (enumerate_args): Use
11748         gdb::unique_xmalloc_ptr.
11749
11750 2018-03-26  Tom Tromey  <tom@tromey.com>
11751
11752         * python/py-framefilter.c (py_print_frame): Return
11753         EXT_LANG_BT_OK.
11754         (gdbpy_apply_frame_filter): Update comment.
11755         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
11756         Remove.
11757         <EXT_LANG_BT_NO_FILTERS>: Change value.
11758
11759 2018-03-26  Tom Tromey  <tom@tromey.com>
11760
11761         PR backtrace/15582:
11762         * stack.c (backtrace_command): Parse "hide" argument.
11763         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
11764         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
11765         constant.
11766
11767 2018-03-26  Tom Tromey  <tom@tromey.com>
11768
11769         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
11770         add "flags".
11771         (backtrace_command): Remove "fulltrace", add "flags".
11772
11773 2018-03-26  Tom Tromey  <tom@tromey.com>
11774
11775         * stack.c (backtrace_command): Rewrite command line parsing.
11776
11777 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
11778
11779         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
11780
11781 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
11782
11783         * filename-seen-cache.h: Add include guard.
11784
11785 2018-03-26  Keith Seitz  <keiths@redhat.com>
11786
11787         * symfile.c (place_section): Remove "struct" from section_addr_info
11788         in comment.
11789         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
11790         "struct" keyword from section_addr_info.
11791
11792 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
11793
11794         * regformats/regdef.h (reg): Add constructors.
11795
11796 2018-03-25  Pedro Alves  <palves@redhat.com>
11797
11798         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
11799         if then/else bodies in var_func_name extraction.
11800
11801 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
11802
11803         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
11804         lookup_minimal_symbol() to find symbol entry.
11805         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
11806
11807 2018-03-23  Keith Seitz  <keiths@redhat.com>
11808
11809         PR c++/22968
11810         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
11811         nested type definitions for C++, too.
11812
11813 2018-03-23  Tom Tromey  <tom@tromey.com>
11814
11815         * machoread.c (struct oso_el): Add a constructor.  Don't define as
11816         a typedef.
11817         (macho_register_oso): Remove.
11818         (macho_symtab_read): Take a std::vector.
11819         (oso_el_compare_name): Now a std::sort comparator.
11820         (macho_symfile_read_all_oso): Take a std::vector.
11821         (macho_symfile_read): Use std::vector.  Remove cleanups.
11822
11823 2018-03-22  Tom Tromey  <tom@tromey.com>
11824
11825         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
11826         (record_full_goto_bookmark): Use std::string.
11827
11828 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11829
11830         PR tdep/18295
11831         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
11832         a single mask.
11833
11834 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11835
11836         * rs6000-tdep.c (store_insn_p): New function.
11837         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
11838         and cr_reg to their unshifted values. Use store_insn_p to
11839         match LR saves using either R1 or fdata->alloca_reg. Use
11840         store_insn_p to match CR saves. Set alloca_reg_offset
11841         when alloca_reg and framep are set. Remove lr_reg shift
11842         when assigning to fdata->lr_register.
11843
11844 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11845
11846         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
11847         command line args instead of emitting a warning.
11848
11849 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
11850
11851         * tracepoint.h (struct static_tracepoint_marker): Initialize
11852         fields, define default constructor, move constructor and move
11853         assignment, disable the rest.
11854         <str_id, extra>: Make std::string.
11855         (release_static_tracepoint_marker): Remove.
11856         (free_current_marker): Remove.
11857         * tracepoint.c (free_current_marker): Remove.
11858         (parse_static_tracepoint_marker_definition): Adjust to
11859         std::string, use new hex2str overload.
11860         (release_static_tracepoint_marker): Remove.
11861         (print_one_static_tracepoint_marker): Get marker by reference
11862         and adjust to std::string.
11863         (info_static_tracepoint_markers_command): Adjust to std::vector
11864         changes
11865         * target.h (static_tracepoint_marker_p): Remove typedef.
11866         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
11867         (struct target_ops) <to_static_tracepoint_marker_at>: Return
11868         bool.
11869         <to_static_tracepoint_markers_by_strid>: Return std::vector.
11870         * target-debug.h
11871         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
11872         (target_debug_print_std_vector_static_tracepoint_marker): New.
11873         (target_debug_print_struct_static_tracepoint_marker_p): Rename
11874         to...
11875         (target_debug_print_static_tracepoint_marker_p): ... this.
11876         * target-delegates.c: Re-generate.
11877         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
11878         Make std::string.
11879         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
11880         (decode_static_tracepoint_spec): Adjust to std::vector.
11881         (tracepoint_print_one_detail): Adjust to std::string.
11882         (strace_marker_decode_location): Adjust to std::string.
11883         (update_static_tracepoint): Adjust to std::string, remove call
11884         to release_static_tracepoint_marker.
11885         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
11886         Adjust to std::vector.
11887         * remote.c (remote_static_tracepoint_marker_at): Return bool.
11888         (remote_static_tracepoint_markers_by_strid): Adjust to
11889         std::vector.
11890         * common/rsp-low.h (hex2str): New overload with explicit count
11891         of bytes.
11892         * common/rsp-low.c (hex2str): New overload with explicit count
11893         of bytes.
11894         * unittests/rsp-low-selftests.c (test_hex2str): New function.
11895         (_initialize_rsp_low_selftests): Add test_hex2str test.
11896         * unittests/tracepoint-selftests.c
11897         (test_parse_static_tracepoint_marker_definition): Adjust to
11898         std::string.
11899
11900 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
11901
11902         * tracepoint.c (parse_static_tracepoint_marker_definition):
11903         Consider case where the definition is followed by more
11904         definitions.
11905         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11906         tracepoint-selftests.c.
11907         * unittests/tracepoint-selftests.c: New.
11908
11909 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11910
11911         * MAINTAINERS (Write After Approval): Add Pedro Franco de
11912         Carvalho.
11913
11914 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
11915
11916         * symtab.c (find_pc_sect_line): fixed indentation.
11917
11918 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
11919
11920         * symtab.c (find_pc_sect_line): now uses binary search.
11921
11922 2018-03-19  Tom Tromey  <tom@tromey.com>
11923
11924         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
11925         "IDENT" production.
11926
11927 2018-03-19  Pedro Alves  <palves@redhat.com>
11928             Tom Tromey  <tom@tromey.com>
11929
11930         * unittests/observable-selftests.c: New file.
11931         * common/observable.h: New file.
11932         * observable.h: New file.
11933         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
11934         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
11935         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
11936         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
11937         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
11938         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
11939         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
11940         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
11941         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
11942         python/py-breakpoint.c, python/py-finishbreakpoint.c,
11943         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
11944         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
11945         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
11946         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
11947         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
11948         tui/tui-interp.c, valops.c: Update all users.
11949         * tui/tui-hooks.c (tui_bp_created_observer)
11950         (tui_bp_deleted_observer, tui_bp_modified_observer)
11951         (tui_inferior_exit_observer, tui_before_prompt_observer)
11952         (tui_normal_stop_observer, tui_register_changed_observer):
11953         Remove.
11954         (tui_observers_token): New global.
11955         (attach_or_detach, tui_attach_detach_observers): New functions.
11956         (tui_install_hooks, tui_remove_hooks): Use
11957         tui_attach_detach_observers.
11958         * record-btrace.c (record_btrace_thread_observer): Remove.
11959         (record_btrace_thread_observer_token): New global.
11960         * observer.sh: Remove.
11961         * observer.c: Rename to observable.c.
11962         * observable.c (namespace gdb_observers): Define new objects.
11963         (observer_debug): Move into gdb_observers namespace.
11964         (struct observer, struct observer_list, xalloc_observer_list_node)
11965         (xfree_observer_list_node, generic_observer_attach)
11966         (generic_observer_detach, generic_observer_notify): Remove.
11967         (_initialize_observer): Update.
11968         Don't include observer.inc.
11969         * Makefile.in (generated_files): Remove observer.h, observer.inc.
11970         (clean mostlyclean): Likewise.
11971         (observer.h, observer.inc): Remove targets.
11972         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
11973         (COMMON_SFILES): Use observable.c, not observer.c.
11974         * .gitignore: Remove observer.h.
11975
11976 2018-03-18  Tom Tromey  <tom@tromey.com>
11977
11978         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
11979         gdb::def_vector.
11980         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
11981
11982 2018-03-17  Tom Tromey  <tom@tromey.com>
11983
11984         * auto-load.c (auto_load_objfile_script_1): Use std::string.
11985
11986 2018-03-17  Tom Tromey  <tom@tromey.com>
11987
11988         * target.c (class scoped_target_fd): New.
11989         (target_fileio_close_cleanup): Remove.
11990         (target_fileio_read_alloc_1): Use scoped_target_fd.
11991
11992 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
11993
11994         * silent-rules.mk: New.
11995         * Makefile.in: Include silent-rules.mk
11996         (srcdir, VPATH, top_srcdir): Move up.
11997         (COMPILE): Add ECHO_CXX.
11998         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
11999         (init.c): Add ECHO_INIT_C.
12000         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
12001         (version.c): Add ECHO_GEN.
12002         (printcmd.o): Add ECHO_CXX.
12003         (target-float.o): Add ECHO_CXX.
12004         (ada-exp.o): Add ECHO_CXX.
12005         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
12006         (insight$(EXEEXT)): Add ECHO_CXXLD.
12007         * gnulib/configure.ac: Add AM_SILENT_RULES.
12008         * gnulib/aclocal.m4: Re-generate.
12009         * gnulib/configure: Re-generate.
12010         * gnulib/import/Makefile.in: Re-generate.
12011
12012 2018-03-16  Tom Tromey  <tom@tromey.com>
12013
12014         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
12015         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
12016         * utils.c (do_free_section_addr_info)
12017         (make_cleanup_free_section_addr_info): Remove.
12018         * symfile.h (struct other_sections): Add constructor.
12019         (struct section_addr_info): Remove.
12020         (section_addr_info): New typedef.
12021         (struct sym_fns) <sym_offsets>: Change type of parameter.
12022         (build_section_addr_info_from_objfile)
12023         (relative_addr_info_to_section_offsets, addr_info_make_relative)
12024         (default_symfile_offsets, symbol_file_add)
12025         (symbol_file_add_from_bfd)
12026         (build_section_addr_info_from_section_table): Update.
12027         (alloc_section_addr_info, free_section_addr_info): Don't declare.
12028         * symfile.c (alloc_section_addr_info): Remove.
12029         (build_section_addr_info_from_section_table): Change return type.
12030         Update.
12031         (build_section_addr_info_from_bfd)
12032         (build_section_addr_info_from_objfile): Likewise.
12033         (free_section_addr_info): Remove.
12034         (relative_addr_info_to_section_offsets): Change type of "addrs".
12035         (addrs_section_compar): Now a std::sort comparator.
12036         (addrs_section_sort): Change return type.
12037         (addr_info_make_relative): Change type of "addrs".  Update.
12038         (default_symfile_offsets, syms_from_objfile_1)
12039         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
12040         (symbol_file_add_separate): Update.
12041         (symbol_file_add): Change type of "addrs".  Update.
12042         (add_symbol_file_command): Update.  Remove cleanups.
12043         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
12044         cleanups.
12045         * symfile-debug.c (debug_sym_offsets): Change type of "info".
12046         * solib.c (solib_read_symbols): Update.
12047         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
12048         * machoread.c (macho_symfile_offsets): Update.
12049         * jit.c (jit_bfd_try_read_symtab): Update.
12050
12051 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
12052
12053         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12054         unittests/utils-selftests.c.
12055         * unittests/utils-selftests.c: New file.
12056
12057 2018-03-14  Tom Tromey  <tom@tromey.com>
12058
12059         PR cli/14977:
12060         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
12061         for NULL.
12062
12063 2018-03-14  Tom Tromey  <tom@tromey.com>
12064
12065         PR cli/19918:
12066         * printcmd.c (printf_pointer): Allow "-" in format.
12067
12068 2018-03-14  Tom Tromey  <tom@tromey.com>
12069
12070         * printcmd.c (_initialize_printcmd): Add usage to printf.
12071
12072 2018-03-14  Yao Qi  <qiyao@sourceware.org>
12073
12074         * MAINTAINERS: Update my email address.
12075
12076 2018-03-13  Tom Tromey  <tom@tromey.com>
12077
12078         * machoread.c (macho_check_dsym): Change filenamep to a
12079         std::string*.
12080         (macho_symfile_read): Update.
12081         * symfile.c (load_command): Use std::string.
12082
12083 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
12084
12085         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
12086         to error message string.
12087         (riscv_register_name): Use xsnprintf instead of sprintf.
12088         (riscv_insn::fetch_instruction): Use gdb_assert instead of
12089         internal_error.
12090         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
12091         error.
12092         (riscv_push_dummy_call): Likewise.
12093
12094 2018-03-12  Tom Tromey  <tom@tromey.com>
12095
12096         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
12097         Use gdb::byte_vector.
12098         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
12099
12100 2018-03-12  Yao Qi  <yao.qi@linaro.org>
12101
12102         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
12103         parameter type to readable_regcache.
12104         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
12105         the declaration.
12106
12107 2018-03-11  Tom Tromey  <tom@tromey.com>
12108
12109         * dwarf2read.c (struct nextfield): Add initializers.
12110         (struct nextfnfield): Remove.
12111         (struct fnfieldlist): Add initializers.  Remove "length" and
12112         "head", use std::vector.
12113         (struct decl_field_list): Remove.
12114         (struct field_info): Add initializers.
12115         <fields, baseclasses>: Now std::vector.
12116         <nbaseclasses, nfnfields, typedef_field_list_count,
12117         nested_types_list_count>: Remove.
12118         (dwarf2_add_field, dwarf2_add_type_defn)
12119         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
12120         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
12121         (process_structure_scope): Update.
12122
12123 2018-03-11  Tom Tromey  <tom@tromey.com>
12124
12125         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
12126         for use by std::sort.
12127         (build_type_psymtabs_1): Use std::vector.
12128
12129 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
12130
12131         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
12132         and LIBMPFR in the printed configuration.
12133
12134 2018-03-08  Tom Tromey  <tom@tromey.com>
12135
12136         * source.c (get_filename_and_charpos): Use scoped_fd.
12137         * nto-procfs.c (procfs_open_1): Use scoped_fd.
12138         (procfs_pidlist): Likewise.
12139         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
12140         (iterate_over_mappings): Likewise.
12141
12142 2018-03-08  Tom Tromey  <tom@tromey.com>
12143
12144         * infcall.c (struct call_return_meta_info)
12145         <stack_temporaries_enabled>: Remove.
12146         (get_call_return_value, call_function_by_hand_dummy): Update.
12147         * thread.c (disable_thread_stack_temporaries): Remove.
12148         (enable_thread_stack_temporaries): Remove.
12149         (thread_stack_temporaries_enabled_p): Return bool.
12150         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
12151         (get_last_thread_stack_temporary): Update.
12152         * eval.c (evaluate_subexp): Update.
12153         * gdbthread.h (class enable_thread_stack_temporaries): Now a
12154         class, not a function.
12155         (value_ptr, value_vec): Remove typedefs.
12156         (class thread_info) <stack_temporaries_enabled>: Now bool.
12157         <stack_temporaries>: Now a std::vector.
12158         (thread_stack_temporaries_enabled_p)
12159         (value_in_thread_stack_temporaries): Return bool.
12160
12161 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
12162
12163         * remote.c (putpkt_binary): Fix omitted bytes reporting.
12164         (getpkt_or_notif_sane_1): Likewise.
12165
12166 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12167
12168         * build-id.c (build_id_to_debug_bfd): Use std::string.
12169
12170 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12171
12172         * build-id.c (find_separate_debug_file_by_buildid): Return
12173         std::string.
12174         * build-id.h (find_separate_debug_file_by_buildid): Return
12175         std::string.
12176         * coffread.c (coff_symfile_read): Adjust to std::string.
12177         * elfread.c (elf_symfile_read): Adjust to std::string.
12178         * symfile.c (separate_debug_file_exists): Change parameter to
12179         std::string.
12180         (find_separate_debug_file): Return std::string.
12181         (find_separate_debug_file_by_debuglink): Return std::string.
12182         * symfile.h (find_separate_debug_file_by_debuglink): Return
12183         std::string.
12184
12185 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12186
12187         * common/xml-utils.c (xml_escape_text): Move code to...
12188         (xml_escape_text_append): ... this new function.
12189         * common/xml-utils.h (xml_escape_text_append): New declaration.
12190         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
12191         New function.
12192         (_initialize_xml_utils): register test_xml_escape_text_append as
12193         a selftest.
12194
12195 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
12196
12197         * defs.h: Remove MAX_REGISTER_SIZE.
12198         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
12199         asserts.
12200         * python/py-unwind.c (pyuw_sniffer): Likewise.
12201
12202 2018-03-07  Tom Tromey  <tom@tromey.com>
12203
12204         * linux-tdep.c (linux_info_proc): Update.
12205         * target.h (struct target_ops) <to_fileio_readlink>: Return
12206         optional<string>.
12207         (target_fileio_readlink): Return optional<string>.
12208         * remote.c (remote_hostio_readlink): Return optional<string>.
12209         * inf-child.c (inf_child_fileio_readlink): Return
12210         optional<string>.
12211         * target.c (target_fileio_readlink): Return optional<string>.
12212
12213 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
12214
12215         * regcache.c (cooked_read_test): Add riscv to the list of
12216         architectures that have a save_reggroup.
12217
12218 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12219
12220         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
12221         value is not a dynamic class object.
12222
12223 2018-03-06  Tom Tromey  <tom@tromey.com>
12224
12225         * rust-exp.y: Formatting fixes.
12226
12227 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12228
12229         * riscv-tdep.c (riscv_register_name): Remove target description
12230         support.
12231         (riscv_gdbarch_init): Remove target description check.
12232
12233 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12234
12235         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
12236         comment.
12237         * riscv-tdep.h: Likewise.
12238
12239 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12240
12241         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
12242         (riscv_pseudo_register_write): Delete.
12243         (riscv_gdbarch_init): Remove all use of pseudo registers.
12244
12245 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12246
12247         * record-btrace.c (btrace_print_lines): Replace cleanup
12248         parameter with RAII equivalents.
12249         (btrace_insn_history): Replace cleanup with RAII equivalents.
12250         * ui-out.h (make_cleanup_ui_out_list_begin_end,
12251         make_cleanup_ui_out_tuple_begin_end): Remove.
12252         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
12253         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
12254         make_cleanup_ui_out_list_begin_end): Remove.
12255
12256 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12257
12258         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
12259         parameter types to std::vector.  Use bool.
12260         (record_btrace_wait): Replace VEC(tp_t) with
12261         std::vector<thread_info *>.
12262         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
12263
12264 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12265
12266         * record-btrace.c (record_btrace_disable_callback): Remove.
12267         (struct scoped_btrace_disable): New.
12268         (record_btrace_open): Use scoped_btrace_disable.
12269
12270 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12271
12272         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
12273         reading values from registers.
12274
12275 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12276
12277         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
12278         where appropriate.
12279
12280 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12281
12282         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
12283         change parameter type.  Use GDB's print functions, and use
12284         core_addr_to_string where appropriate.
12285         (riscv_push_dummy_call): Use core_addr_to_string where
12286         appropriate, update call to riscv_print_arg_location, and reindent
12287         a few lines.
12288         (riscv_return_value): Update call to riscv_print_arg_location.
12289
12290 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12291             Tim Newsome <tim@sifive.com>
12292             Albert Ou <a0u@eecs.berkeley.edu>
12293             Darius Rad <darius@bluespec.com>
12294
12295         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
12296         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
12297         (ALLDEPFILES): Add riscv-tdep.c
12298         * configure.tgt: Add riscv support.
12299         * riscv-tdep.c: New file.
12300         * riscv-tdep.h: New file.
12301         * NEWS: Mention new target.
12302         * MAINTAINERS: Add entry for riscv.
12303
12304 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12305
12306         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
12307         fields within aggregates.
12308
12309 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
12310
12311         * record-btrace.c (btrace_print_lines): Change type of flags to
12312         gdb_disassembly_flags.
12313
12314 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12315
12316         * fbsd-nat.c: Include "inf-ptrace.h".
12317         (USE_SIGTRAP_SIGINFO): Conditionally define.
12318         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
12319         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
12320         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
12321         function.
12322         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
12323         Likewise.
12324         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
12325         Likewise.
12326         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
12327         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
12328         "supports_stopped_by_hw_breakpoint" target methods.
12329
12330 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12331
12332         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
12333         * fbsd-nat.c (debug_fbsd_nat): New variable.
12334         (show_fbsd_nat_debug): New function.
12335         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
12336         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
12337
12338 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12339
12340         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
12341         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
12342         prototype.
12343         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
12344         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
12345         method.
12346
12347 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12348
12349         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
12350         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
12351
12352 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12353
12354         * charset.c (struct charset_vector): New.
12355         (charsets): Change type to charset_vector.
12356         (find_charset_names): Adjust.
12357         (add_one): Adjust.
12358         (_initialize_charset): Adjust.
12359
12360 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12361
12362         * progspace.h (struct program_space) <deleted_solibs>: Change
12363         type to std::vector<std::string>.
12364         * progspace.c (clear_program_space_solib_cache): Adjust.
12365         * breakpoint.c (print_solib_event): Adjust.
12366         (check_status_catch_solib): Adjust.
12367         * solib.c (update_solib_list): Adjust.
12368         * ui-out.h (class ui_out) <field_string>: New overload.
12369         * ui-out.c (ui_out::field_string): New overload.
12370
12371 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12372
12373         * progspace.h (struct program_space): Add constructor and
12374         destructor, initialize fields.
12375         (add_program_space): Remove.
12376         * progspace.c (add_program_space): Rename to...
12377         (program_space::program_space): ... this.
12378         (release_program_space): Rename to...
12379         (program_space::~program_space): ... this.
12380         (delete_program_space): Use delete to delete program_space.
12381         (initialize_progspace): Use new to allocate program_space.
12382         * inferior.c (add_inferior_with_spaces): Likewise.
12383         (clone_inferior_command): Likewise.
12384         * infrun.c (follow_fork_inferior): Likewise.
12385         (handle_vfork_child_exec_or_exit): Likewise.
12386
12387 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12388
12389         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
12390         (delim_string_to_char_ptr_vec): Return std::vector of
12391         gdb::unique_xmalloc_ptr.
12392         (dirnames_to_char_ptr_vec_append): Take std::vector of
12393         gdb::unique_xmalloc_ptr.
12394         (dirnames_to_char_ptr_vec): Return std::vector of
12395         gdb::unique_xmalloc_ptr.
12396         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
12397         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
12398         (delim_string_to_char_ptr_vec): Return an std::vector of
12399         gdb::unique_xmalloc_ptr, adjust the code.
12400         (dirnames_to_char_ptr_vec_append): Take an std::vector of
12401         gdb::unique_xmalloc_ptr, adjust the code.
12402         (dirnames_to_char_ptr_vec): Return an std::vector of
12403         gdb::unique_xmalloc_ptr, adjust the code.
12404         * auto-load.c (auto_load_safe_path_vec): Change type to
12405         std::vector of gdb::unique_xmalloc_ptr.
12406         (auto_load_expand_dir_vars): Return an std::vector of
12407         gdb::unique_xmalloc_ptr, adjust the code.
12408         (auto_load_safe_path_vec_update): Adjust.
12409         (filename_is_in_auto_load_safe_path_vec): Adjust.
12410         (auto_load_objfile_script_1): Adjust.
12411         * build-id.c (build_id_to_debug_bfd): Adjust.
12412         * linux-thread-db.c (thread_db_load_search): Adjust.
12413         * source.c (add_path): Adjust.
12414         (openp): Adjust.
12415         * symfile.c (find_separate_debug_file): Adjust.
12416         * utils.c (do_free_char_ptr_vec): Remove.
12417         (make_cleanup_free_char_ptr_vec): Remove.
12418
12419 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
12420
12421         PR gdb/22907
12422         * common/pathstuff.c: Conditionally include "<windows.h>".
12423
12424 2018-03-01  Georg Sauthoff  <mail@georg.so>
12425
12426         PR gdb/22888
12427         * gcore.in: Quote variables and switch interpreter to bash.
12428
12429 2018-03-01  Tom Tromey  <tom@tromey.com>
12430
12431         * dwarf2read.c (alloc_discriminant_info): Fix default_index
12432         assertion.  Add assertion for discriminant_index.
12433         (quirk_rust_enum): Use correct base type name in univariant case.
12434
12435 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
12436
12437         * record.c (get_call_history_modifiers): Return a
12438         record_print_flags.
12439         (cmd_record_call_history): Adjust.
12440         * record-btrace.c (record_btrace_call_history): Adjust.
12441         (record_btrace_call_history_range): Adjust.
12442         (record_btrace_call_history_from): Adjust.
12443         * target-debug.h (target_debug_print_record_print_flags): New.
12444         * target-delegates.c: Re-generate.
12445         * target.c (target_call_history): Change flags type.
12446         (target_call_history_from): Likewise.
12447         (target_call_history_range): Likewise.
12448         * target.h (struct target_ops) <target_call_history>: Likewise.
12449         (target_call_history_from): Likewise.
12450         (target_call_history_range): Likewise.
12451
12452 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
12453             Simon Marchi  <simon.marchi@polymtl.ca>
12454
12455         * common/common-utils.c: Include "sys/stat.h".
12456         (is_regular_file): Move here from "source.c"; change return
12457         type to "bool".
12458         * common/common-utils.h (is_regular_file): New prototype.
12459         * common/pathstuff.c (contains_dir_separator): New function.
12460         * common/pathstuff.h (contains_dir_separator): New prototype.
12461         * source.c: Don't include "sys/stat.h".
12462         (is_regular_file): Move to "common/common-utils.c".
12463
12464 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
12465
12466         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
12467         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
12468         * auto-load.c: Include "common/pathstuff.h".
12469         * common/common-def.h (current_directory): Move here.
12470         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
12471         function.
12472         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
12473         prototype.
12474         * common/pathstuff.c: New file.
12475         * common/pathstuff.h: New file.
12476         * compile/compile.c: Include "common/pathstuff.h".
12477         * defs.h (current_directory): Move to "common/common-defs.h".
12478         * dwarf2read.c: Include "common/pathstuff.h".
12479         * exec.c: Likewise.
12480         * guile/scm-safe-call.c: Likewise.
12481         * linux-thread-db.c: Likewise.
12482         * main.c: Likewise.
12483         * nto-tdep.c: Likewise.
12484         * objfiles.c: Likewise.
12485         * source.c: Likewise.
12486         * symtab.c: Likewise.
12487         * utils.c: Include "common/pathstuff.h".
12488         (gdb_realpath): Move to "common/pathstuff.c".
12489         (gdb_realpath_keepfile): Likewise.
12490         (gdb_abspath): Likewise.
12491         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
12492         (gdb_realpath_keepfile): Likewise.
12493         (gdb_abspath): Likewise.
12494
12495 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
12496
12497         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
12498         wildcard process pid for super_resume for kernels with a
12499         specific bug.
12500
12501 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
12502
12503         * compile/compile.c (get_args): Add additional comments
12504         explaining function.
12505
12506 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
12507             Tom Tromey  <tom@tromey.com>
12508
12509         * target.h (memory_write_request_s): Remove typedef.  Don't define
12510         VEC.
12511         (target_write_memory_blocks): Change argument to std::vector.
12512         (struct memory_write_request): Add constructor.
12513         * target-memory.c (compare_block_starting_address): Return bool.
12514         Change argument types.
12515         (claim_memory): Change arguments to use std::vector.
12516         (split_regular_and_flash_blocks, blocks_to_erase)
12517         (compute_garbled_blocks): Likewise.
12518         (cleanup_request_data, cleanup_write_requests_vector): Remove.
12519         (target_write_memory_blocks): Change argument to std::vector.
12520         * symfile.c (struct load_section_data): Add constructor and
12521         destructor.  Use std::vector for "requests".
12522         (struct load_progress_data): Add initializers.
12523         (load_section_callback): Update.  Use "new".
12524         (clear_memory_write_data): Remove.
12525         (generic_load): Update.
12526
12527 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
12528
12529         * arch/aarch64.h: Use common/tdesc.h.
12530
12531 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
12532
12533         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
12534         architecture with a 64-bit ABI.
12535
12536 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
12537
12538         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
12539         ahead of target description loading.
12540
12541 2018-02-26  Tom Tromey  <tom@tromey.com>
12542
12543         * stack.c (backtrace_command_1): Update.
12544         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
12545         of "flags".
12546         * python/py-framefilter.c (py_print_frame)
12547         (gdbpy_apply_frame_filter): Change type of "flags".
12548         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
12549         of "flags".
12550         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
12551         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
12552         * extension.h (enum frame_filter_flag): Rename from
12553         frame_filter_flags.
12554         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
12555         (apply_ext_lang_frame_filter): Change type of "flags".
12556         * extension.c (apply_ext_lang_frame_filter): Change type of
12557         "flags".
12558         * extension-priv.h (struct extension_language_ops)
12559         <apply_frame_filter>: Change type of "flags".
12560
12561 2018-02-26  Tom Tromey  <tom@tromey.com>
12562
12563         PR python/16497:
12564         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
12565         off-by-one in py_end computation.
12566         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
12567         PRINT_MORE_FRAMES.
12568         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
12569         constant.
12570
12571 2018-02-26  Tom Tromey  <tom@tromey.com>
12572
12573         * dwarf2read.c (struct variant_field): New.
12574         (struct nextfield) <variant>: New field.
12575         (dwarf2_add_field): Handle DW_TAG_variant_part.
12576         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
12577         discriminated union.
12578         (read_structure_type): Handle DW_TAG_variant_part.
12579         (handle_struct_member_die): New function, extracted from
12580         process_structure_scope.  Handle DW_TAG_variant.
12581         (process_structure_scope): Handle discriminated unions.  Call
12582         handle_struct_member_die.
12583
12584 2018-02-26  Tom Tromey  <tom@tromey.com>
12585
12586         * rust-lang.h (rust_last_path_segment): Declare.
12587         * rust-lang.c (rust_last_path_segment): Now public.  Change
12588         contract.
12589         (struct disr_info): Remove.
12590         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
12591         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
12592         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
12593         (rust_enum_p, rust_enum_variant): New function.
12594         (rust_underscore_fields): Remove "offset" parameter.
12595         (rust_print_enum): New function.
12596         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
12597         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
12598         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
12599         enums.
12600         (rust_internal_print_type): New function, from rust_print_type.
12601         Remove enum code.
12602         (rust_print_type): Call rust_internal_print_type.
12603         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
12604         Update enum handling.
12605         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
12606         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
12607         (rust_union_quirks): New functions.
12608         (process_full_comp_unit, process_full_type_unit): Call
12609         rust_union_quirks.
12610         (process_structure_scope): Update rust_unions if necessary.
12611
12612 2018-02-26  Tom Tromey  <tom@tromey.com>
12613
12614         * value.h (value_union_variant): Declare.
12615         * valops.c (value_union_variant): New function.
12616         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
12617         (struct discriminant_info): New.
12618         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
12619         enumerator.
12620         (struct main_type) <flag_discriminated_union>: New field.
12621
12622 2018-02-26  Tom Tromey  <tom@tromey.com>
12623
12624         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12625         unittests/unpack-selftests.c.
12626         * unittests/unpack-selftests.c: New file.
12627         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
12628
12629 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12630
12631         * dwarf2read.c (struct partial_die_info) <read>: New method.
12632         (read_partial_die): Remove the declaration.
12633         (load_partial_dies): Update.
12634         (partial_die_info::partial_die_info):
12635         (read_partial_die): Change it to partial_die_info::read.
12636
12637 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12638
12639         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
12640         (fixup_partial_die): Remove declaration.
12641         (scan_partial_symbols): Update.
12642         (partial_die_parent_scope): Likewise.
12643         (partial_die_full_name): Likewise.
12644         (fixup_partial_die): Change it to partial_die_info::fixup.
12645
12646 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12647
12648         * dwarf2read.c (read_partial_die): Update the declaration.
12649         (load_partial_dies): Caller update.
12650         (read_partial_die): Remove one argument abbrev_len.
12651
12652 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12653
12654         * dwarf2read.c (struct partial_die_info): Add ctor, delete
12655         assignment operator.
12656         (load_partial_dies): Use ctor and copy ctor.
12657         (read_partial_die): Update.
12658         (dwarf2_cu::find_partial_die): Use ctor.
12659
12660 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12661
12662         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
12663         (find_partial_die_in_comp_unit): Change it to
12664         dwarf2_cu::find_partial_die.
12665         (find_partial_die): Update.
12666
12667 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12668
12669         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
12670         is NULL.
12671
12672 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12673
12674         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
12675
12676 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
12677
12678         * arch/amd64.h: Use common/tdesc.h.
12679         * arch/i386.c: Likewise.
12680         * arch/i386.h: Likewise.
12681         * arch/tic6x.c: Likewise.
12682         * arch/tdesc.h: Move file from here...
12683         * common/tdesc.h: ...to here.
12684         * features/aarch64-core.c: Regenerate.
12685         * features/aarch64-fpu.c: Regenerate.
12686         * features/i386/32bit-avx.c: Regenerate.
12687         * features/i386/32bit-avx512.c: Regenerate.
12688         * features/i386/32bit-core.c: Regenerate.
12689         * features/i386/32bit-linux.c: Regenerate.
12690         * features/i386/32bit-mpx.c: Regenerate.
12691         * features/i386/32bit-pkeys.c: Regenerate.
12692         * features/i386/32bit-sse.c: Regenerate.
12693         * features/i386/64bit-avx.c: Regenerate.
12694         * features/i386/64bit-avx512.c: Regenerate.
12695         * features/i386/64bit-core.c: Regenerate.
12696         * features/i386/64bit-linux.c: Regenerate.
12697         * features/i386/64bit-mpx.c: Regenerate.
12698         * features/i386/64bit-pkeys.c: Regenerate.
12699         * features/i386/64bit-segments.c: Regenerate.
12700         * features/i386/64bit-sse.c: Regenerate.
12701         * features/i386/x32-core.c: Regenerate.
12702         * features/tic6x-c6xp.c: Regenerate.
12703         * features/tic6x-core.c: Regenerate.
12704         * features/tic6x-gp.c: Regenerate.
12705         * target-descriptions.c: Use common/tdesc.h.
12706         * target-descriptions.h: Likewise.
12707
12708 2018-02-24  Tom Tromey  <tom@tromey.com>
12709
12710         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
12711         (try_thread_db_load_from_dir, thread_db_load_search): Use
12712         std::string.
12713         (info_auto_load_libthread_db_compare): Return bool.  Change
12714         argument types.
12715         (info_auto_load_libthread_db): Use std::vector, std::string.
12716         Remove cleanups.
12717
12718 2018-02-24  Tom Tromey  <tom@tromey.com>
12719
12720         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
12721         std::string.
12722         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
12723         std::string*.
12724         * gdbarch.c: Rebuild.
12725         * gdbarch.h: Rebuild.
12726         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
12727         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
12728         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
12729         std::string*.
12730
12731 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
12732
12733         * gdbtypes.h (sect_offset): Change type to uint64_t.
12734         (sect_offset_str): New function.
12735         * dwarf2read.c (create_addrmap_from_aranges): Use
12736         sect_offset_str.
12737         (error_check_comp_unit_head): Likewise.
12738         (create_debug_type_hash_table): Likewise.
12739         (read_cutu_die_from_dwo): Likewise.
12740         (init_cutu_and_read_dies): Likewise.
12741         (init_cutu_and_read_dies_no_follow): Likewise.
12742         (process_psymtab_comp_unit_reader): Likewise.
12743         (partial_die_parent_scope): Likewise.
12744         (peek_die_abbrev): Likewise.
12745         (process_queue): Likewise.
12746         (dwarf2_physname): Likewise.
12747         (read_namespace_alias): Likewise.
12748         (read_import_statement): Likewise.
12749         (create_dwo_cu_reader): Likewise.
12750         (create_cus_hash_table): Likewise.
12751         (lookup_dwo_cutu): Likewise.
12752         (inherit_abstract_dies): Likewise.
12753         (read_func_scope): Likewise.
12754         (read_call_site_scope): Likewise.
12755         (dwarf2_add_member_fn): Likewise.
12756         (read_common_block): Likewise.
12757         (read_module_type): Likewise.
12758         (read_typedef): Likewise.
12759         (read_subrange_type): Likewise.
12760         (load_partial_dies): Likewise.
12761         (read_partial_die): Likewise.
12762         (find_partial_die): Likewise.
12763         (read_str_index): Likewise.
12764         (dwarf2_string_attr): Likewise.
12765         (build_error_marker_type): Likewise.
12766         (lookup_die_type): Likewise.
12767         (dump_die_shallow): Likewise.
12768         (follow_die_ref): Likewise.
12769         (dwarf2_fetch_die_loc_sect_off): Likewise.
12770         (dwarf2_fetch_constant_bytes): Likewise.
12771         (follow_die_sig): Likewise.
12772         (get_signatured_type): Likewise.
12773         (get_DW_AT_signature_type): Likewise.
12774         (dwarf2_find_containing_comp_unit): Likewise.
12775         (set_die_type): Likewise.
12776
12777 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
12778
12779         * arch/aarch64.c: Include "common-defs.h".
12780         * arch/amd64.c: Likewise.
12781         * arch/i386.c: Likewise.
12782
12783 2018-02-21  Tom Tromey  <tom@tromey.com>
12784
12785         * value.h: (extract_field_op): Update.
12786         * eval.c (extract_field_op): Return a const char *.
12787         * expression.h (parse_expression_for_completion): Update.
12788         * completer.c (complete_expression): Update.
12789         (add_struct_fields): Make fieldname const.
12790         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
12791         (mark_completion_tag, parse_exp_in_context_1): Update.
12792         (parse_expression_for_completion): Change "name" to
12793         unique_xmalloc_ptr*.
12794
12795 2018-02-21  Tom Tromey  <tom@tromey.com>
12796
12797         * infcall.c (call_function_by_hand_dummy): Use std::vector.
12798
12799 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12800
12801         * avr-tdep.c (avr_read_pc): Change parameter type to
12802         readable_regcache.
12803         * gdbarch.sh (read_pc): Likewise.
12804         * gdbarch.c: Re-generated.
12805         * gdbarch.h: Re-generated.
12806         * hppa-tdep.c (hppa_read_pc): Change parameter type to
12807         readable_regcache.
12808         * ia64-tdep.c (ia64_read_pc): Likewise.
12809         * mips-tdep.c (mips_read_pc): Likewise.
12810         * spu-tdep.c (spu_read_pc): Likewise.
12811
12812 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12813
12814         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
12815         * regcache-dump.c: New file.
12816         * regcache.c: Move register_dump to regcache-dump.c.
12817         (maintenance_print_registers): Likewise.
12818         (maintenance_print_raw_registers): Likewise.
12819         (maintenance_print_cooked_registers): Likewise.
12820         (maintenance_print_register_groups): Likewise.
12821         (maintenance_print_remote_registers): Likewise.
12822         (_initialize_regcache): Likewise.
12823         * regcache.h (register_dump): Moved from regcache.c.
12824
12825 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12826
12827         * regcache.c (regcache::regcache): Update.
12828         (regcache::invalidate): Move it to detached_regcache::invalidate.
12829         (get_thread_arch_aspace_regcache): Update.
12830         (regcache::raw_update): Update.
12831         (regcache::cooked_read): Remove some code.
12832         (regcache::cooked_read_value): Likewise.
12833         (regcache::raw_write): Remove assert on m_readonly_p.
12834         (regcache::raw_supply_integer): Move it to
12835         detached_regcache::raw_supply_integer.
12836         (regcache::raw_supply_zeroed): Likewise.
12837         * regcache.h (detached_regcache) <raw_supply_integer>: New
12838         declaration.
12839         <raw_supply_zeroed, invalidate>: Likewise.
12840         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
12841         <invalidate>: Likewise.
12842         <m_readonly_p>: Removed.
12843
12844 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12845
12846         * infcmd.c (get_return_value): Let stop_regs point to
12847         get_current_regcache.
12848         * regcache.c (regcache::regcache): Remove.
12849         (register_dump_reg_buffer): New class.
12850         (regcache_print): Adjust.
12851         * regcache.h (regcache): Remove constructors.
12852
12853 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12854
12855         * regcache.c (class register_dump): New class.
12856         (register_dump_regcache, register_dump_none): New class.
12857         (register_dump_remote, register_dump_groups): New class.
12858         (regcache_print): Update.
12859         * regcache.h (regcache_dump_what): Move it to regcache.c.
12860         (regcache) <dump>: Remove.
12861
12862 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12863
12864         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
12865          reg_buffer_rw *.
12866         (jit_unwind_reg_set_impl): Call raw_supply.
12867         (jit_frame_sniffer): Use reg_buffer_rw.
12868         * record-full.c (record_full_core_regbuf): Change its type.
12869         (record_full_core_open_1): Use reg_buffer_rw.
12870         (record_full_close): Likewise.
12871         (record_full_core_fetch_registers): Use regcache->raw_supply.
12872         (record_full_core_store_registers): Likewise.
12873         * regcache.c (regcache::get_register_status): Move it to
12874         reg_buffer.
12875         (regcache_raw_set_cached_value): Remove.
12876         (regcache::raw_set_cached_value): Remove.
12877         (regcache::raw_write): Call raw_supply.
12878         (regcache::raw_supply): Move it to reg_buffer_rw.
12879         * regcache.h (regcache_raw_set_cached_value): Remove.
12880         (reg_buffer_rw): New class.
12881
12882 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12883
12884         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
12885         readonly_detached_regcache.
12886         (dummy_frame_prev_register): Use regcache->cooked_read.
12887         * frame.c (frame_save_as_regcache): Change return type.
12888         (frame_pop): Update.
12889         * frame.h (frame_save_as_regcache): Update declaration.
12890         * inferior.h (get_infcall_suspend_state_regcache): Update
12891         declaration.
12892         * infrun.c (infcall_suspend_state) <registers>: use
12893         readonly_detached_regcache.
12894         (save_infcall_suspend_state): Don't use regcache_dup.
12895         (get_infcall_suspend_state_regcache): Change return type.
12896         * linux-fork.c (struct fork_info) <savedregs>: Change to
12897         readonly_detached_regcache.
12898         <pc>: New field.
12899         (fork_save_infrun_state): Don't use regcache_dup.
12900         (info_checkpoints_command): Adjust.
12901         * mi/mi-main.c (register_changed_p): Update declaration.
12902         (mi_cmd_data_list_changed_registers): Use
12903         readonly_detached_regcache.
12904         (register_changed_p): Change parameter type to
12905         readonly_detached_regcache.
12906         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
12907         readonly_detached_regcache.
12908         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
12909         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
12910         New.
12911         (regcache::save): Move it to reg_buffer.
12912         (regcache::restore): Change parameter type.
12913         (regcache_dup): Remove.
12914         * regcache.h (reg_buffer) <save>: New method.
12915         (readonly_detached_regcache): New class.
12916         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
12917         readonly_detached_regcache.
12918         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
12919
12920 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12921
12922         * frame.c (frame_save_as_regcache): Use regcache method save.
12923         (frame_pop): Use regcache method restore.
12924         * infrun.c (restore_infcall_suspend_state): Likewise.
12925         * linux-fork.c (fork_load_infrun_state): Likewise.
12926         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
12927         save.
12928         * regcache.c (regcache_save): Remove.
12929         (regcache::restore): More asserts.
12930         (regcache_cpy): Remove.
12931         * regcache.h (regcache_save): Remove the declaration.
12932         (regcache::restore): Move from private to public.
12933         Remove the friend declaration of regcache_cpy.
12934         (regcache_cpy): Remove declaration.
12935
12936 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12937
12938         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
12939         parameter type to 'readable_regcache *'.
12940         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
12941         * arm-tdep.c (arm_neon_quad_read): Likewise.
12942         (arm_pseudo_read): Likewise.
12943         * avr-tdep.c (avr_pseudo_register_read): Likewise.
12944         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
12945         * frv-tdep.c (frv_pseudo_register_read): Likewise.
12946         * gdbarch.c: Re-generated.
12947         * gdbarch.h: Re-generated.
12948         * gdbarch.sh (pseudo_register_read): Change parameter type to
12949         'readable_regcache *'.
12950         (pseudo_register_read_value): Likewise.
12951         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
12952         (h8300_pseudo_register_read): Likewise.
12953         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
12954         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
12955         (i386_pseudo_register_read_into_value): Likewise.
12956         (i386_pseudo_register_read_value): Likewise.
12957         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
12958         declaration.
12959         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
12960         * m32c-tdep.c (m32c_raw_read): Likewise.
12961         (m32c_read_flg): Likewise.
12962         (m32c_banked_register): Likewise.
12963         (m32c_banked_read): Likewise.
12964         (m32c_sb_read): Likewise.
12965         (m32c_part_read): Likewise.
12966         (m32c_cat_read): Likewise.
12967         (m32c_r3r2r1r0_read): Likewise.
12968         (m32c_pseudo_register_read): Likewise.
12969         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
12970         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
12971         (mep_pseudo_cr64_read): Likewise.
12972         (mep_pseudo_register_read): Likewise.
12973         * mips-tdep.c (mips_pseudo_register_read): Likewise.
12974         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
12975         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
12976         * regcache.c (regcache::raw_read): Move it to readable_regcache.
12977         (regcache::cooked_read): Likewise.
12978         (regcache::cooked_read_value): Likewise.
12979         (regcache_cooked_read_signed):
12980         (regcache::cooked_read): Likewise.
12981         * regcache.h (readable_regcache): New class.
12982         (regcache): Inherit readable_regcache.  Move some methods to
12983         readable_regcache.
12984         * rl78-tdep.c (rl78_pseudo_register_read): Change
12985         parameter type to 'readable_regcache *'.
12986         * rs6000-tdep.c (do_regcache_raw_read): Remove.
12987         (e500_pseudo_register_read): Change parameter type to
12988         'readable_regcache *'.
12989         (dfp_pseudo_register_read): Likewise.
12990         (vsx_pseudo_register_read): Likewise.
12991         (efpr_pseudo_register_read): Likewise.
12992         * s390-tdep.c (s390_pseudo_register_read): Likewise.
12993         * sh-tdep.c (sh_pseudo_register_read): Likewise.
12994         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
12995         (sh64_pseudo_register_read): Likewise.
12996         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
12997         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
12998         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
12999         (spu_pseudo_register_read): Likewise.
13000         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
13001         (xtensa_pseudo_register_read): Likewise.
13002
13003 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13004
13005         * regcache.c (regcache::regcache): Call reg_buffer ctor.
13006         (regcache::arch): Move it to reg_buffer::arch.
13007         (regcache::register_buffer): Likewise.
13008         (regcache::assert_regnum): Likewise.
13009         (regcache::num_raw_registers): Likewise.
13010         * regcache.h (reg_buffer): New class.
13011         (regcache): Inherit reg_buffer.
13012
13013 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
13014
13015         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
13016         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
13017
13018 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
13019
13020         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
13021
13022 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
13023
13024         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
13025         (SFILES): Remove common/*.c files.
13026         (COMMON_OBS): Remove some *.o files built from common/*.c files.
13027         * common/common.host: Add common reference.
13028         * configure.ac: Likewise.
13029         * configure: Regenerate.
13030
13031 2018-02-16  Yao Qi  <yao.qi@linaro.org>
13032
13033         * block.c (block_namespace_info): Inherit allocate_on_obstack.
13034         (block_initialize_namespace): Use new.
13035         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
13036         (dwarf2_free_objfile): Use delete.
13037         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
13038         (copy_type_recursive): Use new.
13039         * gdb_obstack.h (allocate_on_obstack): New.
13040
13041 2018-02-15  Yao Qi  <yao.qi@linaro.org>
13042
13043         PR gdb/22849
13044         * inferior.c (exit_inferior_1): Reset inf->control.
13045
13046 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
13047
13048         * ada-lang.c (ada_to_fixed_value_create): Delete advance
13049         declaration.
13050
13051 2018-02-14  Pedro Alves  <palves@redhat.com>
13052
13053         * frame-unwind.c (frame_unwind_try_unwinder): Always call
13054         frame_cleanup_after_sniffer on exception.
13055
13056 2018-02-14  Tom Tromey  <tom@tromey.com>
13057
13058         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
13059         const.
13060         (solib_bfd_open): Make pathname const.
13061         * solib.c (solib_bfd_open): Make pathname const.
13062         * solib-spu.c (spu_bfd_fopen): Make name const.
13063         (spu_bfd_open): Make pathname const.
13064         * solib-darwin.c (darwin_bfd_open): Make pathname const.
13065         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
13066
13067 2018-02-14  Tom Tromey  <tom@tromey.com>
13068
13069         * symfile.c (symfile_bfd_open): Update.
13070         * source.h (openp, source_full_path_of, find_and_open_source):
13071         Change argument type to unique_xmalloc_ptr.
13072         * source.c (openp): Take a unique_xmalloc_ptr.
13073         (source_full_path_of, find_and_open_source): Likewise.
13074         (open_source_file, symtab_to_fullname): Update.
13075         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
13076         unique_xmalloc_ptr.
13077         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
13078         (exec_file_find): Update.
13079         * psymtab.c (psymtab_to_fullname): Update.
13080         * nto-tdep.h (nto_find_and_open_solib): Update.
13081         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
13082         unique_xmalloc_ptr.
13083         * exec.c (exec_file_attach): Update.
13084         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
13085         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
13086
13087 2018-02-14  Tom Tromey  <tom@tromey.com>
13088
13089         * solib.c: Include source.h.
13090         * nto-tdep.c: Include source.h.
13091         * mi/mi-cmd-env.c: Include source.h.
13092         * infcmd.c: Include source.h.
13093         * exec.c: Include source.h.
13094         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
13095         (add_path, directory_switch, source_path, init_source_path): Move
13096         declarations...
13097         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
13098         (add_path, directory_switch, source_path, init_source_path):
13099         ...here.
13100
13101 2018-02-14  Tom Tromey  <tom@tromey.com>
13102
13103         * solist.h (exec_file_find, solib_find): Return
13104         unique_xmalloc_ptr.
13105         (solib_bfd_fopen): Take a const char *.
13106         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
13107         (exec_file_find, solib_find): Likewise.
13108         (solib_bfd_fopen): Do not take ownership of "pathname".
13109         (solib_bfd_open): Use unique_xmalloc_ptr.
13110         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
13111         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
13112         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
13113         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
13114
13115 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
13116
13117         * ada-lang.c (name_match_type_from_name): Remove reference to
13118         ada_name_for_lookup in function's documentation.
13119         * ada-lang.h (ada_name_for_lookup): Delete declaration.
13120
13121 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
13122
13123         * defs.h (enum openp_flags): New enum.
13124         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
13125         Move to enum openp_flags.
13126         (openp_flags): New enum flags.
13127         (openp): Change parameter type to openp_flags.
13128         * source.c (openp): Change parameter type to openp_flags.
13129         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
13130         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
13131
13132 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
13133
13134         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
13135         per-command.
13136
13137 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
13138
13139         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
13140         into...
13141         (class dwarf2_queue_guard): ...the destructor of this new class.
13142         (dw2_do_instantiate_symtab): Create instance of the new class
13143         dwarf2_queue_guard, remove cleanup.
13144
13145 2018-02-09  Tom Tromey  <tom@tromey.com>
13146
13147         * source.c (find_source_lines): Don't reference past the end of
13148         the vector.
13149
13150 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13151
13152         * remote.c (remote_btrace_maybe_reopen): Change error message.
13153         * btrace.c (btrace_enable): Likewise.
13154         (parse_xml_btrace): Likewise.
13155         (parse_xml_btrace_conf): Likewise.
13156
13157 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13158
13159         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
13160         (linux_enable_pt, linux_enable_bts): Call
13161         diagnose_perf_event_open_fail.
13162
13163 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13164
13165         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
13166         Remove parameter and change return type.  Update callers.  Move it.
13167         (linux_enable_bts, linux_enable_pt): Improve error message.
13168         (linux_enable_pt): Remove zero buffer size check.
13169         (linux_enable_btrace): Improve error messages.  Remove NULL return
13170         check.
13171
13172 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13173
13174         * btrace.c (btrace_enable): Remove target_supports_btrace call.
13175         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
13176         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
13177         (linux_supports_pt, linux_supports_btrace): Remove.
13178         (linux_enable_bts): Call cpu_supports_bts.
13179         * nat/linux-btrace.h (linux_supports_btrace): Remove.
13180         * remote.c (remote_supports_btrace): Remove.
13181         (init_remote_ops): Remove remote_supports_btrace.
13182         * target-delegates.c: Regenerated.
13183         * target.c (target_supports_btrace): Remove.
13184         * target.h (target_ops) <to_supports_btrace>: Remove
13185         (target_supports_btrace): Remove.
13186         * x86-linux-nat.c (x86_linux_create_target): Remove
13187         linux_supports_btrace.
13188
13189 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13190
13191         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
13192         btrace failed.
13193         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
13194         exception and use message in own exception.
13195
13196 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13197
13198         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
13199         (perf_event_pt_event_type): Use gdb_file_up.
13200         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
13201         scoped_fd, and scoped_mmap.
13202
13203 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13204
13205         * common/scoped_mmap.h: New.
13206         * unittests/scoped_mmap-selftest.c: New.
13207         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13208         unittests/scoped_mmap-selftest.c.
13209
13210 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13211
13212         * common/scoped_fd.h: New.
13213         * unittests/scoped_fd-selftest.c: New.
13214         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13215         unittests/scoped_fd-selftest.c.
13216
13217 2018-02-09  Tom Tromey  <tom@tromey.com>
13218
13219         * auto-load.c (auto_load_section_scripts): Use
13220         gdb::unique_xmalloc_ptr.
13221
13222 2018-02-09  Tom Tromey  <tom@tromey.com>
13223
13224         * auto-load.c (execute_script_contents): Use std::string.
13225
13226 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
13227
13228         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
13229         Python function, rather than a new command.
13230
13231 2018-02-08  Tom Tromey  <tom@tromey.com>
13232
13233         * solib.c (solib_find_1): Use std::string.
13234         (solib_bfd_fopen): Use unique_xmalloc_ptr.
13235
13236 2018-02-08  Tom Tromey  <tom@tromey.com>
13237
13238         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
13239
13240 2018-02-08  Tom Tromey  <tom@tromey.com>
13241
13242         * source.c (find_source_lines): Use gdb::def_vector.
13243
13244 2018-02-08  Tom Tromey  <tom@tromey.com>
13245
13246         * macrocmd.c (struct temporary_macro_definition): New.
13247         (macro_define_command): Use temporary_macro_definition.  Remove
13248         cleanups.
13249         (free_macro_definition_ptr): Remove.
13250
13251 2018-02-08  Tom Tromey  <tom@tromey.com>
13252
13253         * macroexp.c (maybe_expand): Use std::string.
13254
13255 2018-02-08  Tom Tromey  <tom@tromey.com>
13256
13257         * macroexp.c (struct macro_buffer): Add initializers for some
13258         members.
13259         (init_buffer, init_shared_buffer, free_buffer)
13260         (free_buffer_return_text): Remove.
13261         (macro_buffer): New constructors.
13262         (~macro_buffer): New destructor.
13263         (macro_buffer::set_shared): New method.
13264         (macro_buffer::resize_buffer, macro_buffer::appendc)
13265         (macro_buffer::appendmem): Now methods, not free functions.
13266         (set_token, append_tokens_without_splicing, stringify)
13267         (macro_stringify): Update.
13268         (gather_arguments): Change return type.  Remove argc_p argument,
13269         add args_ptr argument.  Use std::vector.
13270         (substitute_args): Remove argc argument.  Accept std::vector.
13271         (expand): Update.  Use std::vector.
13272         (scan, macro_expand, macro_expand_next): Update.
13273
13274 2018-02-08  Tom Tromey  <tom@tromey.com>
13275
13276         * symtab.c (default_collect_symbol_completion_matches_break_on):
13277         Use unique_xmalloc_ptr.
13278         * macroscope.h: (sal_macro_scope, user_macro_scope)
13279         (default_macro_scope): Return unique_xmalloc_ptr.
13280         * macroscope.c (sal_macro_scope, user_macro_scope)
13281         (default_macro_scope): Return unique_xmalloc_ptr.
13282         * macroexp.h (macro_expand, macro_expand_once): Return
13283         unique_xmalloc_ptr.
13284         * macroexp.c (macro_expand, macro_expand_once): Return
13285         unique_xmalloc_ptr.
13286         * macrocmd.c (macro_expand_command, macro_expand_once_command)
13287         (info_macro_command, info_macros_command): Use
13288         unique_xmalloc_ptr.
13289         * compile/compile-c-support.c (write_macro_definitions): Use
13290         unique_xmalloc_ptr.
13291         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
13292
13293 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
13294
13295         * value.c (value_static_field): Assign field type instead of
13296         containing type when returning an optimized out value.
13297
13298 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13299
13300         * ft32-tdep.c (ft32_read_pc): Remove.
13301         (ft32_write_pc): Remove.
13302         (ft32_gdbarch_init): Update.
13303         * m32r-tdep.c (m32r_read_pc): Remove.
13304         (m32r_gdbarch_init): Update.
13305         * mep-tdep.c (mep_read_pc): Remove.
13306         (mep_gdbarch_init): Update.
13307         * microblaze-tdep.c (microblaze_write_pc): Remove.
13308         (microblaze_gdbarch_init): Update.
13309         * mn10300-tdep.c (mn10300_read_pc): Remove.
13310         (mn10300_write_pc): Remove.
13311         (mn10300_gdbarch_init): Update.
13312         * moxie-tdep.c (moxie_read_pc): Remove.
13313         (moxie_write_pc): Remove.
13314         (moxie_gdbarch_init): Update.
13315
13316 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13317
13318         * expprint.c (print_subexp_standard): Handle
13319         OP_F77_UNDETERMINED_ARGLIST.
13320         (dump_subexp_body_standard): Likewise.
13321
13322 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
13323
13324         * target-descriptions.c (tdesc_element_visitor) Add empty
13325         implementations.
13326         (tdesc_type): Move make_gdb_type from here.
13327         (tdesc_type_builtin): Likewise.
13328         (tdesc_type_vector): Likewise.
13329         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
13330         (make_gdb_type_struct): Move from tdesc_type_with_fields.
13331         (make_gdb_type_union): Likewise.
13332         (make_gdb_type_flags): Likewise.
13333         (make_gdb_type_enum): Likewise.
13334         (make_gdb_type): New function.
13335         (tdesc_register_type): Use static make_gdb_type.
13336
13337 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
13338
13339         * infcmd.c (default_print_one_register_info): Align natural-format
13340         column values consistently one under another.
13341         (pad_to_column): New function.
13342
13343 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
13344
13345         * dwarf2read.c (dwarf2_physname): Move commment.
13346
13347 2018-02-01  Leszek Swirski  <leszeks@google.com>
13348
13349         * varobj.c (varobj_formatted_print_options): Allow recursive
13350         pretty printing if pretty printing is enabled.
13351
13352 2018-02-01  Leszek Swirski  <leszeks@google.com>
13353
13354         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
13355         names after a structop as a filename.
13356
13357 2018-02-01  Yao Qi  <yao.qi@linaro.org>
13358
13359         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
13360         (arm_record_coproc_data_proc): Likewise.
13361
13362 2018-02-01  Yao Qi  <yao.qi@linaro.org>
13363
13364         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
13365
13366 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
13367
13368         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
13369         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
13370
13371 2018-01-31  Pedro Alves  <palves@redhat.com>
13372
13373         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
13374         * inflow.c (child_terminal_save_inferior): Wrap reference to
13375         tcgetpgrp in HAVE_TERMIOS_H.
13376         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
13377         _WIN32.
13378         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
13379         always iterate over all inferiors.
13380         (gdbsim_cntrl_c): Adjust.
13381         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
13382
13383 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13384
13385         * gdbtypes.c (lookup_array_range_type): Make sure the array's
13386         index type is objfile-owned if the element type is as well.
13387
13388 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13389
13390         GDB 8.1 released.
13391
13392 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13393
13394         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
13395         "features/s390x-linux64.c".
13396         (_initialize_s390_linux_tdep): Remove initialization of tdescs
13397         s390_linux32 and s390x_linux64.
13398         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
13399         default tdesc.
13400         * s390-tdep.c: Include "features/s390-linux32.c" and
13401         "features/s390x-linux64.c".
13402         (s390_tdesc_valid): Add check for tdesc_has_registers.
13403         (s390_gdbarch_init): Make sure there is always a valid tdesc.
13404         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
13405         tdesc_s390x_linux64.
13406         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
13407         tdesc_s390x_linux64 to...
13408         * s390-tdep.h: ...here.
13409
13410 2018-01-30  Pedro Alves  <palves@redhat.com>
13411
13412         PR gdb/13211
13413         * config.in, configure: Regenerate.
13414         * configure.ac: Check for getpgid.
13415         * go32-nat.c (go32_pass_ctrlc): New.
13416         (go32_target): Install it.
13417         * inf-child.c (inf_child_target): Install
13418         child_terminal_save_inferior, child_pass_ctrlc and
13419         child_interrupt.
13420         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
13421         (inf_ptrace_target): No longer install it.
13422         * infcmd.c (interrupt_target_1): Adjust.
13423         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
13424         (child_interrupt): Declare.
13425         (inferior::terminal_state): New.
13426         * inflow.c (struct terminal_info): Update comments.
13427         (inferior_process_group): Delete.
13428         (terminal_is_ours): Delete.
13429         (gdb_tty_state): New.
13430         (child_terminal_init): Adjust.
13431         (is_gdb_terminal, sharing_input_terminal_1)
13432         (sharing_input_terminal): New functions.
13433         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
13434         Set the process's actual process group in the foreground if
13435         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
13436         mark terminal as the inferior's if not sharing GDB's terminal.
13437         Don't check attach_flag.
13438         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
13439         pass down a target_terminal_state.
13440         (child_terminal_save_inferior): New, factored out from ...
13441         (child_terminal_ours_1): ... this.  Handle
13442         target_terminal_state::is_ours_for_output.
13443         (child_interrupt, child_pass_ctrlc): New.
13444         (inflow_inferior_exit): Clear the inferior's terminal_state.
13445         (copy_terminal_info): Copy the inferior's terminal state.
13446         (_initialize_inflow): Remove reference to terminal_is_ours.
13447         * inflow.h (inferior_process_group): Delete.
13448         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
13449         * procfs.c (procfs_target): Don't install procfs_interrupt.
13450         (procfs_interrupt): Delete.
13451         * remote.c (remote_serial_quit_handler): Adjust.
13452         (remote_interrupt): Remove ptid parameter.  Adjust.
13453         * target-delegates.c: Regenerate.
13454         * target.c: Include "terminal.h".
13455         (target_terminal::terminal_state): Rename to ...
13456         (target_terminal::m_terminal_state): ... this.
13457         (target_terminal::init): Adjust.
13458         (target_terminal::inferior): Adjust to per-inferior
13459         terminal_state.
13460         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
13461         (target_terminal::ours, target_terminal::ours_for_output): Use
13462         target_terminal_is_ours_kind.
13463         (target_interrupt): Remove ptid parameter.  Adjust.
13464         (default_target_pass_ctrlc): Adjust.
13465         * target.h (target_ops::to_terminal_save_inferior): New field.
13466         (target_ops::to_interrupt): Remove ptid_t parameter.
13467         (target_interrupt): Remove ptid_t parameter.  Update comment.
13468         (target_pass_ctrlc): Update comment.
13469         * target/target.h (target_terminal_state): New scoped enum,
13470         factored out of ...
13471         (target_terminal::terminal_state): ... here.
13472         (target_terminal::inferior): Update comments.
13473         (target_terminal::restore_inferior): New.
13474         (target_terminal::is_inferior, target_terminal::is_ours)
13475         (target_terminal::is_ours_for_output): Adjust.
13476         (target_terminal::scoped_restore_terminal_state): Adjust to
13477         rename, and call restore_inferior() instead of inferior().
13478         (target_terminal::scoped_restore_terminal_state::m_state): Change
13479         type.
13480         (target_terminal::terminal_state): Rename to ...
13481         (target_terminal::m_terminal_state): ... this and change type.
13482
13483 2018-01-30  Pedro Alves  <palves@redhat.com>
13484
13485         * linux-nat.c (wait_for_signal): New function.
13486         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
13487         directly.
13488         (async_terminal_is_ours)
13489         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
13490         (linux_nat_add_target): Don't override
13491         to_terminal_inferior/to_terminal_ours.
13492
13493 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
13494
13495         * remote.c (remote_follow_fork): Don't call "detach_inferior".
13496
13497 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
13498
13499         * dwarf2read.c (free_dwo_files): Add forward-declaration.
13500         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
13501         dwarf2_per_objfile_free here.
13502         (dwarf2_per_objfile_free): Remove.
13503         (_initialize_dwarf2_read): Don't register
13504         dwarf2_per_objfile_free as a registry cleanup.
13505
13506 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
13507
13508         Avoid compilation errors in MinGW native builds
13509
13510         The error is triggered by including python-internal.h, and the
13511         error message is:
13512
13513              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
13514                       from build-gnulib/import/math.h:27,
13515                       from d:/usr/Python26/include/pyport.h:235,
13516                       from d:/usr/Python26/include/Python.h:58,
13517                       from python/python-internal.h:94,
13518                       from python/py-arch.c:24:
13519              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
13520         using ::hypot;
13521                 ^~~~~
13522
13523         This happens because Python headers define 'hypot' to expand t
13524         '_hypot' in the Windows builds.
13525         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
13526         'hypoth'.  This avoids a compilation error.
13527
13528 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
13529
13530         * MAINTAINERS (Write After Approval): Fix ordering.
13531
13532 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
13533
13534         * MAINTAINERS (Write After Approval): Add Alan Hayward.
13535
13536 2018-01-26  Alan Modra  <amodra@gmail.com>
13537
13538         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
13539         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
13540         Remove nop.  Make const.  Comment.
13541         (powerpc32_plt_stub_so_2): New.
13542         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
13543         Correct count.  Update uses.
13544         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
13545         Move common code reading PLT entry word.  Correct
13546         powerpc32_plt_stub PLT address calculation.
13547         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
13548         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
13549         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
13550         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
13551         (ppc64_standard_linkage8): Likewise.
13552         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
13553         Correct insns description.
13554         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
13555
13556 2018-01-24  Pedro Alves  <palves@redhat.com>
13557
13558         GCC PR libstdc++/83906
13559         * gdbtypes.c (operator==(const dynamic_prop &,
13560         const dynamic_prop &)): New.
13561         (operator==(const range_bounds &, const range_bounds &)): New.
13562         (check_types_equal): Use them instead of memcmp.
13563         * gdbtypes.h (operator==(const dynamic_prop &,
13564         const dynamic_prop &)): Declare.
13565         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
13566         (operator==(const range_bounds &, const range_bounds &)): Declare.
13567         (operator!=(const range_bounds &, const range_bounds &)): Declare.
13568
13569 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13570
13571         * s390-linux-tdep.c (s390_record_address_mask)
13572         (s390_record_calc_disp_common, s390_record_calc_disp)
13573         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
13574         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
13575         (s390_process_record): Move to s390-tdep.c.
13576         (s390_linux_init_abi_any): Adjust.
13577         * s390-tdep.c (s390_record_address_mask)
13578         (s390_record_calc_disp_common, s390_record_calc_disp)
13579         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
13580         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
13581         (s390_process_record): Moved from s390-linux-tdep.c
13582         (s390_gdbarch_init): Adjust.
13583
13584 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13585
13586         * s390-linux-nat.c (s390-tdep.h): New include.
13587         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
13588         (HFILES_NO_SRCDIR): Add s390-tdep.h.
13589         (ALLDEPFILES): Add s390-tdep.c.
13590         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
13591         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
13592         * s390-tdep.h: ...this.  New file.
13593         * s390-linux-tdep.c (s390-tdep.h): New include.
13594         (_initialize_s390_tdep): Rename to...
13595         (_initialize_s390_linux_tdep): ...this and adjust.
13596         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
13597         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
13598         s390-tdep.h.
13599         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
13600         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
13601         (s390_is_partial_instruction, s390_software_single_step)
13602         (is_non_branch_ril, s390_displaced_step_copy_insn)
13603         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
13604         (s390_prologue_data, s390_addr, s390_store, s390_load)
13605         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
13606         (s390_register_call_saved, s390_guess_tracepoint_registers)
13607         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
13608         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
13609         (s390_pseudo_register_name, s390_pseudo_register_type)
13610         (s390_pseudo_register_read, s390_pseudo_register_write)
13611         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
13612         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
13613         (s390_addr_bits_remove, s390_address_class_type_flags)
13614         (s390_address_class_type_flags_to_name)
13615         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
13616         (s390_function_arg_float, s390_function_arg_vector)
13617         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
13618         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
13619         (s390_frame_align, s390_register_return_value, s390_return_value)
13620         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
13621         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
13622         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
13623         (s390_trad_frame_prev_register, s390_unwind_cache)
13624         (s390_prologue_frame_unwind_cache)
13625         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
13626         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
13627         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
13628         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
13629         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
13630         (s390_frame_base_address, s390_local_base_address)
13631         (s390_frame_base, s390_gcc_target_options)
13632         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
13633         (s390_validate_reg_range, s390_tdesc_valid)
13634         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
13635         * s390-tdep.c: ...this.  New file.
13636
13637 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13638
13639         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
13640         (s390_process_record, s390_gdbarch_tdep_alloc)
13641         (s390_linux_init_abi_any): Use/set new hook.
13642
13643 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13644
13645         * s390-linux-tdep.c (osabi.h): New include.
13646         (s390_linux_init_abi_31, s390_linux_init_abi_64)
13647         (s390_linux_init_abi_any): New functions.
13648         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
13649
13650 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13651
13652         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
13653         tdesc_has_registers check
13654
13655 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13656
13657         * s390-linux-tdep.c (s390_tdesc_valid): New function.
13658         (s390_validate_reg_range): New macro.
13659         (s390_gdbarch_init): Adjust.
13660
13661 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13662
13663         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
13664         (s390_gdbarch_tdep_alloc): Adjust.
13665         (s390_gdbarch_init): Adjust.
13666
13667 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13668
13669         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
13670         <have_tdb>: Change type to bool.
13671         (s390_gdbarch_tdep_alloc): Adjust.
13672         (s390_gdbarch_init): Adjust.
13673
13674 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13675
13676         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
13677         (gdbarch_tdep) <have_upper, have_vx>: New fields.
13678         (s390_gdbarch_tdep_alloc): New function.
13679         (s390_gdbarch_init): Allocate tdep at start and use its fields
13680         instead of separate variables.
13681
13682 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13683
13684         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
13685         when looking for cached gdbarch and add comment for remaining.
13686
13687 2018-01-22  Pedro Alves  <palves@redhat.com>
13688             Sergio Durigan Junior  <sergiodj@redhat.com>
13689
13690         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
13691         case.
13692
13693 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
13694
13695         * MAINTAINERS: Update my company e-mail address.
13696
13697 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13698
13699         * regcache.c (cooked_write_test): New function.
13700         (_initialize_regcache): Register the test.
13701
13702 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13703
13704         * ia64-tdep.c (ia64_pseudo_register_read): Call
13705         regcache->cooked_read instead of regcache_cooked_read_unsigned.
13706         * m32c-tdep.c (m32c_cat_read): Likewise.
13707         (m32c_r3r2r1r0_read): Likewise.
13708         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
13709         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
13710
13711 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13712
13713         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
13714         method raw_read instead of regcache_raw_read.
13715         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
13716         * arm-tdep.c (arm_neon_quad_read): Likewise.
13717         * avr-tdep.c (avr_pseudo_register_read): Likewise.
13718         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
13719         * frv-tdep.c (frv_pseudo_register_read): Likewise.
13720         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
13721         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
13722         (i386_pseudo_register_read_into_value): Likewise.
13723         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
13724         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
13725         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
13726         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
13727         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
13728         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
13729         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
13730         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
13731         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
13732
13733 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13734
13735         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
13736         * configure.tgt: Remove target mt.
13737         * mt-tdep.c: Remove.
13738         * regcache.c (cooked_read_test): Remove the check for mt.
13739
13740 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13741
13742         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
13743         instead of gdbarch_pseudo_register_read_value.
13744
13745 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
13746
13747         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
13748         language is Ada.
13749
13750 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
13751
13752         * linespec.c (create_sals_line_offset): Remove code that preserved
13753         the symtab_and_line's line number.
13754
13755 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13756
13757         * varobj.c (varobj_create): Don't set valid_block when creating a
13758         floating varobj.
13759
13760 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13761
13762         * varobj.c (varobj_create): Remove out of date comment.
13763
13764 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13765
13766         PR mi/20395
13767         * ada-exp.y (write_var_from_sym): Pass extra parameter when
13768         updating innermost block.
13769         * parse.c (innermost_block_tracker::update): Take extra type
13770         parameter, and check types match before updating innermost block.
13771         (write_dollar_variable): Update innermost block for registers.
13772         * parser-defs.h (enum innermost_block_tracker_type): New enum.
13773         (innermost_block_tracker::innermost_block_tracker): Initialise
13774         m_types member.
13775         (innermost_block_tracker::reset): Take type parameter.
13776         (innermost_block_tracker::update): Take type parameter, and pass
13777         type through as needed.
13778         (innermost_block_tracker::m_types): New member.
13779         * varobj.c (varobj_create): Pass type when reseting innermost
13780         block.
13781
13782 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13783
13784         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
13785         * ada-lang.c (resolve_subexp): Likewise.
13786         * breakpoint.c (set_breakpoint_condition) Likewise.
13787         (watch_command_1) Likewise.
13788         * c-exp.y (variable): Likewise.
13789         * d-exp.y (PrimaryExpression): Likewise.
13790         * f-exp.y (variable): Likewise.
13791         * go-exp.y (variable): Likewise.
13792         * m2-exp.y (variable): Likewise.
13793         * objfiles.c (objfile::~objfile): Likewise.
13794         * p-exp.y (variable): Likewise.
13795         * parse.c (innermost_block): Change type.
13796         * parser-defs.h (class innermost_block_tracker): New.
13797         (innermost_block): Change to innermost_block_tracker.
13798         * printcmd.c (display_command): Switch to innermost_block API.
13799         (do_one_display): Likewise.
13800         * rust-exp.y (do_one_display): Likewise.
13801         * symfile.c (clear_symtab_users): Likewise.
13802         * varobj.c (varobj_create): Switch to innermost_block API, replace
13803         use of innermost_block with block stored on varobj object.
13804
13805 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13806
13807         * expression.h (innermost_block): Remove declaration.
13808         * varobj.c: Add 'parser-defs.h' include.
13809
13810 2018-01-19  Tom Tromey  <tom@tromey.com>
13811
13812         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
13813         symbols in the static and global blocks.
13814
13815 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
13816
13817         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
13818         gdb_ptrace.h, and move including gdb_wait.h ...
13819         * nat/linux-ptrace.h: ... to here.
13820
13821 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13822
13823         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
13824         inf_ptrace_detach_success.
13825         (inf_ptrace_detach_success): Add inferior parameter, use it
13826         instead of inferior_ptid, pass it to detach_inferior.
13827         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
13828         parameter.
13829         * inferior.c (detach_inferior): Add overload that takes an
13830         inferior object.
13831         * inferior.h (detach_inferior): Likewise.
13832         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
13833         use inferior_ptid, adjust call to inf_ptrace_detach_success.
13834         * linux-thread-db.c (thread_db_detach): Use inf parameter.
13835
13836 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13837
13838         * target.h (struct target_ops) <to_detach>: Add inferior
13839         parameter.
13840         (target_detach): Likewise.
13841         * target.c (dispose_inferior): Pass inferior down.
13842         (target_detach): Pass inferior down.  Assert that it is equal to
13843         the current inferior.
13844         * aix-thread.c (aix_thread_detach): Pass inferior down.
13845         * corefile.c (core_file_command): Pass current_inferior() down.
13846         * corelow.c (core_detach): Add inferior parameter.
13847         * darwin-nat.c (darwin_detach): Likewise.
13848         * gnu-nat.c (gnu_detach): Likewise.
13849         * inf-ptrace.c (inf_ptrace_detach): Likewise.
13850         * infcmd.c (detach_command): Pass current_inferior() down to
13851         target_detach.
13852         * infrun.c (follow_fork_inferior): Pass parent_inf to
13853         target_detach.
13854         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
13855         target_detach.
13856         * linux-nat.c (linux_nat_detach): Add inferior parameter.
13857         * linux-thread-db.c (thread_db_detach): Likewise.
13858         * nto-procfs.c (procfs_detach): Likewise.
13859         * procfs.c (procfs_detach): Likewise.
13860         * record.c (record_detach): Likewise.
13861         * record.h (struct inferior): Forward-declare.
13862         (record_detach): Add inferior parameter.
13863         * remote-sim.c (gdbsim_detach): Likewise.
13864         * remote.c (remote_detach_1): Likewise.
13865         (remote_detach): Likewise.
13866         (extended_remote_detach): Likewise.
13867         * sol-thread.c (sol_thread_detach): Likewise.
13868         * target-debug.h (target_debug_print_inferior_p): New macro.
13869         * target-delegates.c: Re-generate.
13870         * top.c (kill_or_detach): Pass inferior down to target_detach.
13871         * windows-nat.c (windows_detach): Add inferior parameter.
13872
13873 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13874
13875         * target.h (struct target_ops) <to_detach>: Remove args
13876         parameter.
13877         (target_detach): Likewise.
13878         * target.c (dispose_inferior): Adjust.
13879         (target_detach): Remove args parameter, adjust.
13880         * aix-thread.c (aix_thread_detach): Adjust.
13881         * corefile.c (core_file_command): Adjust.
13882         * corelow.c (core_detach): Adjust.
13883         * darwin-nat.c (darwin_detach): Adjust.
13884         * gnu-nat.c (gnu_detach): Adjust.
13885         * inf-ptrace.c (inf_ptrace_detach): Adjust.
13886         * infcmd.c (detach_command): Adjust
13887         * infrun.c (follow_fork_inferior): Adjust.
13888         (handle_vfork_child_exec_or_exit): Adjust.
13889         * linux-fork.c (linux_fork_detach): Remove args parameter.
13890         * linux-fork.h (linux_fork_detach): Likewise.
13891         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
13892         * linux-thread-db.c (thread_db_detach): Likewise.
13893         * nto-procfs.c (procfs_detach): Likewise.
13894         * procfs.c (procfs_detach): Likewise.
13895         (do_detach): Remove signo parameter.
13896         * record.c (record_detach): Remove args parameter.
13897         * record.h (record_detach): Likewise.
13898         * remote-sim.c (gdbsim_detach): Likewise.
13899         * remote.c (remote_detach_1): Likewise.
13900         (remote_detach): Likewise.
13901         (extended_remote_detach): Likewise.
13902         * sol-thread.c (sol_thread_detach): Likewise.
13903         * target-delegates.c: Re-generate.
13904         * top.c (struct qt_args) <args>: Remove field.
13905         (kill_or_detach): Don't pass args.
13906         (quit_force): Don't set args.
13907         * windows-nat.c (windows_detach): Remove args parameter.
13908
13909 2018-01-19  Yao Qi  <yao.qi@linaro.org>
13910
13911         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
13912         (arm_linux_init_abi): Install it.
13913
13914 2018-01-19  Yao Qi  <yao.qi@linaro.org>
13915
13916         * osabi.c (gdb_osabi_names): Extend the regexp for
13917         arm-linux-gnueabihf.
13918
13919 2018-01-18  Yao Qi  <yao.qi@linaro.org>
13920
13921         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
13922         m_abbrevs.
13923         (abbrev_table::add_abbrev): Update.
13924         (abbrev_table::lookup_abbrev): Update.
13925
13926 2018-01-18  Yao Qi  <yao.qi@linaro.org>
13927
13928         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
13929
13930 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
13931
13932         * compile/compile.c (compile_to_object): Convert "triplet_rx"
13933         to "std::string".
13934
13935 2018-01-17  Tom Tromey  <tom@tromey.com>
13936
13937         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
13938
13939 2018-01-17  Tom Tromey  <tom@tromey.com>
13940
13941         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
13942         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
13943         (create_array_type_with_stride): Update.
13944         * dwarf2read.c (set_die_type): Update.
13945
13946 2018-01-17  Tom Tromey  <tom@tromey.com>
13947
13948         * dwarf2read.c (delayed_method_info): Remove typedef.
13949         (dwarf2_cu::method_info): Now a std::vector.
13950         (add_to_method_list): Update.
13951         (free_delayed_list): Remove.
13952         (compute_delayed_physnames): Update.
13953         (process_full_comp_unit, process_full_type_unit): Clear the method
13954         list.  Remove cleanups.
13955         (psymtab_include_file_name): Add name_holder parameter.  Use
13956         unique_xmalloc_ptr.
13957         (dwarf_decode_lines): Update.
13958
13959 2018-01-17  Tom Tromey  <tom@tromey.com>
13960             Simon Marchi  <simon.marchi@ericsson.com>
13961
13962         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
13963         (dwarf2_per_objfile::free_cached_comp_units)
13964         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
13965         (init_cutu_and_read_dies_no_follow): Update.
13966         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
13967         (dwarf2_cu::~dwarf2_cu): New.
13968         (free_heap_comp_unit, free_stack_comp_unit): Remove.
13969         (age_cached_comp_units, free_one_cached_comp_unit): Update.
13970
13971 2018-01-17  Tom Tromey  <tom@tromey.com>
13972             Simon Marchi  <simon.marchi@ericsson.com>
13973
13974         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
13975         (struct die_reader_specs) <abbrev_table>: New member.
13976         (struct abbrev_table): Add constructor.
13977         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
13978         <abbrev_obstack>: Now an auto_obstack.
13979         (abbrev_table_up): New typedef.
13980         (init_cu_die_reader): Add abbrev_table parameter.
13981         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
13982         Add result_dwo_abbrev_table.
13983         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
13984         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
13985         Update.
13986         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
13987         parameter.
13988         (skip_children): Update.
13989         (abbrev_table::alloc_abbrev): Rename from
13990         abbrev_table_alloc_abbrev.
13991         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
13992         (abbrev_table::lookup_abbrev): Rename from
13993         abbrev_table_lookup_abbrev.
13994         (abbrev_table_read_table): Return abbrev_table_up.
13995         (abbrev_table_free, abbrev_table_free_cleanup)
13996         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
13997         (load_partial_dies): Update.
13998
13999 2018-01-17  Tom Tromey  <tom@tromey.com>
14000
14001         * dwarf2read.c (dwarf2_compute_name): Update comment.
14002         (read_func_scope, read_variable): Update.
14003         (new_symbol): Remove.
14004         (new_symbol_full): Rename to new_symbol.
14005
14006 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
14007
14008         PR gdb/16577
14009         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
14010         a warning instead of throwing an error, set section size to 0 and return
14011         NULL.
14012         * gdb_bfd.h (gdb_bfd_map_section): Update description.
14013
14014 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14015
14016         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
14017         std::string.
14018         (linux_ptrace_attach_fail_reason_string): Likewise.
14019         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
14020         Likewise.
14021         (linux_ptrace_attach_fail_reason_string): Likewise.
14022         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
14023
14024 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14025
14026         * linux-nat.c (linux_nat_attach): Remove xstrdup.
14027
14028 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
14029
14030         PR gdb/21559
14031         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
14032         checking for fs_base/gs_base fields in struct user_regs_struct.
14033         * configure: Regenerate.
14034
14035 2018-01-17  Yao Qi  <yao.qi@linaro.org>
14036
14037         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
14038         function.
14039         (aarch64_linux_init_abi): Install it to gdbarch hook
14040         gcc_target_options.
14041
14042 2018-01-15  Pedro Alves  <palves@redhat.com>
14043
14044         * common/signals-state-save-restore.c
14045         (save_original_signals_state): Fix typos.
14046
14047 2017-01-12  Tom Tromey  <tom@tromey.com>
14048             Sergio Durigan Junior  <sergiodj@redhat.com>
14049
14050         * Makefile.in (install-only): Install gdb-add-index.
14051
14052 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
14053
14054         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
14055
14056 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
14057
14058         * infrun.c (keep_going_pass_signal): Clear step-over info when
14059         insert_breakpoints fails.
14060
14061 2018-01-11  Pedro Alves  <palves@redhat.com>
14062
14063         PR gdb/22583
14064         * infrun.c (resume): Rename to ...
14065         (resume_1): ... this.
14066         (resume): Reimplement as wrapper around resume_1.
14067
14068 2018-01-11  Pedro Alves  <palves@redhat.com>
14069
14070         PR remote/22597
14071         * remote.c (remote_parse_stop_reply): Default to the last-set
14072         general thread instead of to 'magic_null_ptid'.
14073
14074 2018-01-10  Pedro Alves  <palves@redhat.com>
14075
14076         * language.h (language_get_symbol_name_matcher): Rename ...
14077         (get_symbol_name_matcher): ... this.
14078         * language.c (language_get_symbol_name_matcher): Ditto.
14079         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
14080         callers adjusted.
14081
14082 2018-01-10  Pedro Alves  <palves@redhat.com>
14083
14084         PR gdb/22670
14085         * dwarf2read.c
14086         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
14087         Adjust to use language_get_symbol_name_matcher instead of
14088         language_defn::la_get_symbol_name_matcher.
14089         * language.c (language_get_symbol_name_matcher): If in Ada mode
14090         and the lookup name is a verbatim match, return Ada's matcher.
14091         * language.h (language_get_symbol_name_matcher): Adjust comment.
14092         (ada_lookup_name_info::verbatim_p):: New method.
14093
14094 2018-01-10  Pedro Alves  <palves@redhat.com>
14095
14096         PR gdb/22670
14097         * ada-lang.c (ada_collect_symbol_completion_matches): If the
14098         minsym's language is language_auto or language_cplus, pass down
14099         language_ada instead.
14100         * symtab.c (compare_symbol_name): Don't frob symbol language here.
14101
14102 2018-01-10  Pedro Alves  <palves@redhat.com>
14103
14104         PR gdb/22670
14105         * minsyms.c (linkage_name_str): New function.
14106         (iterate_over_minimal_symbols): Use it.
14107
14108 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14109
14110         * NEWS: Document that 'info proc' now works on FreeBSD.
14111
14112 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14113
14114         * configure.ac: Check for kinfo_getfile in libutil.
14115         * configure: Regenerate.
14116         * config.in: Regenerate.
14117         * fbsd-nat.c: Include "fbsd-tdep.h".
14118         (fbsd_fetch_cmdline): New.
14119         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
14120         rather than calling error.
14121         (fbsd_info_proc): New.
14122         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
14123         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
14124         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
14125
14126 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14127
14128         * fbsd-nat.c (struct free_deleter): Remove.
14129         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
14130
14131 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14132
14133         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
14134         NULL for an empty pathname.
14135
14136 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14137
14138         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
14139         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
14140         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
14141         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
14142         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
14143         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
14144         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
14145         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
14146         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
14147         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
14148         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
14149         (fbsd_core_fetch_timeval, fbsd_print_sigset)
14150         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
14151         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
14152         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
14153
14154 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
14155
14156         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
14157         (gnu_xfer_auxv): New function.
14158         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
14159         TARGET_OBJECT_AUXV.
14160
14161 2018-01-08  Yao Qi  <yao.qi@linaro.org>
14162             Simon Marchi  <simon.marchi@ericsson.com>
14163
14164         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
14165         common/selftest.c.
14166         (COMMON_OBS): Remove selftest.o.
14167         * configure.ac: Append selftest-arch.c and common/selftest.c to
14168         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
14169         * configure: Re-generated.
14170         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
14171         GDB_SELF_TEST.
14172         (maintenance_info_selftests): Likewise.
14173
14174 2018-01-08  Xavier Roirand  <roirand@adacore.com>
14175
14176         * ada-valprint.c (val_print_packed_array_elements): Use
14177         proper number of elements when printing an array indexed
14178         by an enumeration type.
14179
14180 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14181
14182         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
14183         (dw2_get_file_names_reader): Adjust.
14184         (lookup_dwo_signatured_type): Adjust.
14185         (lookup_dwp_signatured_type): Adjust.
14186         (lookup_signatured_type): Adjust.
14187         (create_type_unit_group): Adjust.
14188         (get_type_unit_group): Adjust.
14189         (process_psymtab_comp_unit_reader): Adjust.
14190         (build_type_psymtabs_reader): Adjust.
14191         (scan_partial_symbols): Adjust.
14192         (add_partial_symbol): Adjust.
14193         (add_partial_subprogram): Adjust.
14194         (peek_die_abbrev): Adjust.
14195         (fixup_go_packaging): Adjust.
14196         (process_imported_unit_die): Adjust.
14197         (dwarf2_compute_name): Adjust.
14198         (dwarf2_physname): Adjust.
14199         (read_import_statement): Adjust.
14200         (handle_DW_AT_stmt_list): Adjust.
14201         (read_file_scope): Adjust.
14202         (read_func_scope): Adjust.
14203         (read_lexical_block_scope): Adjust.
14204         (read_call_site_scope): Adjust.
14205         (read_variable): Adjust.
14206         (dwarf2_rnglists_process): Adjust.
14207         (dwarf2_ranges_process): Adjust.
14208         (dwarf2_ranges_read): Adjust.
14209         (dwarf2_get_pc_bounds): Adjust.
14210         (dwarf2_record_block_ranges): Adjust.
14211         (dwarf2_add_field): Adjust.
14212         (dwarf2_add_member_fn): Adjust.
14213         (read_structure_type): Adjust.
14214         (process_structure_scope): Adjust.
14215         (read_enumeration_type): Adjust.
14216         (read_array_type): Adjust.
14217         (mark_common_block_symbol_computed): Adjust.
14218         (read_common_block): Adjust.
14219         (read_namespace_type): Adjust.
14220         (read_namespace): Adjust.
14221         (read_module_type): Adjust.
14222         (read_tag_pointer_type): Adjust.
14223         (read_tag_ptr_to_member_type): Adjust.
14224         (read_tag_string_type): Adjust.
14225         (read_subroutine_type): Adjust.
14226         (read_typedef): Adjust.
14227         (read_base_type): Adjust.
14228         (attr_to_dynamic_prop): Adjust.
14229         (read_subrange_type): Adjust.
14230         (read_unspecified_type): Adjust.
14231         (dwarf2_read_abbrevs): Adjust.
14232         (load_partial_dies): Adjust.
14233         (read_partial_die): Adjust.
14234         (find_partial_die): Adjust.
14235         (guess_partial_die_structure_name): Adjust.
14236         (fixup_partial_die): Adjust.
14237         (read_attribute_value): Adjust.
14238         (read_addr_index): Adjust.
14239         (read_addr_index_from_leb128): Adjust.
14240         (read_str_index): Adjust.
14241         (dwarf2_string_attr): Adjust.
14242         (get_debug_line_section): Adjust.
14243         (dwarf_decode_line_header): Adjust.
14244         (lnp_state_machine::check_line_address): Adjust.
14245         (dwarf_decode_lines_1): Adjust.
14246         (dwarf_decode_lines): Adjust.
14247         (dwarf2_start_symtab): Adjust.
14248         (var_decode_location): Adjust.
14249         (new_symbol_full): Adjust.
14250         (dwarf2_const_value_data): Adjust.
14251         (dwarf2_const_value_attr): Adjust.
14252         (dwarf2_const_value): Adjust.
14253         (die_type): Adjust.
14254         (die_containing_type): Adjust.
14255         (build_error_marker_type): Adjust.
14256         (lookup_die_type): Adjust.
14257         (guess_full_die_structure_name): Adjust.
14258         (anonymous_struct_prefix): Adjust.
14259         (determine_prefix): Adjust.
14260         (dwarf2_name): Adjust.
14261         (follow_die_ref_or_sig): Adjust.
14262         (follow_die_offset): Adjust.
14263         (follow_die_ref): Adjust.
14264         (follow_die_sig_1): Adjust.
14265         (follow_die_sig): Adjust.
14266         (get_signatured_type): Adjust.
14267         (get_DW_AT_signature_type): Adjust.
14268         (decode_locdesc): Adjust.
14269         (dwarf_decode_macros): Adjust.
14270         (cu_debug_loc_section): Adjust.
14271         (fill_in_loclist_baton): Adjust.
14272         (dwarf2_symbol_mark_computed): Adjust.
14273         (init_one_comp_unit): Don't assign
14274         dwarf2_cu::dwarf2_per_objfile.
14275         (set_die_type): Adjust.
14276
14277 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14278
14279         * dwarf2read.c (struct mapped_debug_names): Add constructor.
14280         <dwarf2_per_objfile>: New field.
14281         (dwarf2_per_objfile): Remove global.
14282         (get_dwarf2_per_objfile): New function.
14283         (set_dwarf2_per_objfile): New function.
14284         (dwarf2_build_psymtabs_hard): Change objfile parameter to
14285         dwarf2_per_objfile.
14286         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14287         (read_abbrev_offset): Likewise.
14288         (read_indirect_string): Likewise.
14289         (read_indirect_line_string): Likewise.
14290         (read_indirect_string_at_offset): Likewise.
14291         (read_indirect_string_from_dwz): Likewise.
14292         (dwarf2_find_containing_comp_unit): Change objfile parameter to
14293         dwarf2_per_objfile.
14294         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
14295         (create_all_comp_units): Change objfile parameter to
14296         dwarf2_per_objfile.
14297         (create_all_type_units): Likewise.
14298         (process_queue): Add dwarf2_per_objfile parameter.
14299         (read_and_check_comp_unit_head): Likewise.
14300         (lookup_dwo_unit_in_dwp): Likewise.
14301         (get_dwp_file): Likewise.
14302         (process_cu_includes): Likewise.
14303         (struct free_dwo_file_cleanup_data): New struct.
14304         (dwarf2_has_info): Use get_dwarf2_per_objfile and
14305         set_dwarf2_per_objfile.
14306         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
14307         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
14308         context, adjust calls.
14309         (dw2_instantiate_symtab): Likewise.
14310         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
14311         (dw2_get_cu): Likewise.
14312         (create_cu_from_index_list): Change objfile parameter to
14313         dwarf2_per_objfile.
14314         (create_cus_from_index_list): Get dwarf2_per_objfile from
14315         context, adjust calls.
14316         (create_cus_from_index): Likewise.
14317         (create_signatured_type_table_from_index): Change objfile
14318         parameter to dwarf2_per_objfile.
14319         (create_signatured_type_table_from_debug_names): Change objfile
14320         parameter to dwarf2_per_objfile.
14321         (create_addrmap_from_index): Likewise.
14322         (create_addrmap_from_aranges): Likewise.
14323         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
14324         (dw2_setup): Remove.
14325         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
14326         context.
14327         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
14328         get_dwarf2_per_objfile.
14329         (dw2_forget_cached_source_info): Likewise.
14330         (dw2_map_symtabs_matching_filename): Likewise.
14331         (struct dw2_symtab_iterator) <index>: Remove.
14332         <dwarf2_per_objfile>: New field.
14333         (dw2_symtab_iter_init): Replace index parameter with
14334         dwarf2_per_objfile.
14335         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
14336         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
14337         (dw2_print_stats): Likewise.
14338         (dw2_dump): Likewise.
14339         (dw2_expand_symtabs_for_function): Likewise.
14340         (dw2_expand_all_symtabs): Likewise.
14341         (dw2_expand_symtabs_with_fullname): Likewise.
14342         (dw2_expand_marked_cus): Replace index and objfile parameters
14343         with dwarf2_per_objfile.
14344         (dw_expand_symtabs_matching_file_matcher): Add
14345         dwarf2_per_objfile parameter and adjust calls.
14346         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
14347         adjust calls.
14348         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
14349         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
14350         adjust calls.
14351         (create_cus_from_debug_names_list): Replace objfile parameter
14352         with dwarf2_per_objfile and adjust calls.
14353         (create_cus_from_debug_names): Likewise.
14354         (dwarf2_read_debug_names): Likewise.
14355         (mapped_debug_names::namei_to_name): Adjust call.
14356         (dw2_debug_names_iterator::next): Likewise.
14357         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
14358         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
14359         (dw2_debug_names_dump): Likewise.
14360         (dw2_debug_names_expand_symtabs_for_function): Likewise.
14361         (dw2_debug_names_expand_symtabs_matching): Likewise.
14362         (dwarf2_initialize_objfile): Likewise.
14363         (dwarf2_build_psymtabs): Likewise.
14364         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
14365         this_cu.
14366         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
14367         (read_and_check_comp_unit_head): Likewise.
14368         (read_abbrev_offset): Likewise.
14369         (create_debug_type_hash_table): Likewise.
14370         (create_debug_types_hash_table): Likewise.
14371         (create_all_type_units): Replace objfile parameter with
14372         dwarf2_per_objfile.
14373         (add_type_unit): Add dwarf2_per_objfile parameter.
14374         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
14375         with dwarf2_per_objfile.
14376         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
14377         (lookup_dwp_signatured_type): Likewise.
14378         (lookup_signatured_type): Likewise.
14379         (read_cutu_die_from_dwo): Likewise.
14380         (init_tu_and_read_dwo_dies): Likewise.
14381         (init_cutu_and_read_dies): Likewise.
14382         (init_cutu_and_read_dies_no_follow): Likewise.
14383         (allocate_type_unit_groups_table): Add objfile parameter.
14384         (create_type_unit_group): Use dwarf2_per_objfile from cu.
14385         (get_type_unit_group): Likewise.
14386         (process_psymtab_comp_unit): Update call.
14387         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
14388         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
14389         (print_tu_stats): Likewise.
14390         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
14391         in void* parameter.
14392         (build_type_psymtabs): Change objfile parameter to
14393         dwarf2_per_objfile.
14394         (process_skeletonless_type_unit): Use dwarf2_per_objfile
14395         passed in void* parameter.
14396         (process_skeletonless_type_units): Change objfile parameter to
14397         dwarf2_per_objfile.
14398         (set_partial_user): Likewise.
14399         (dwarf2_build_psymtabs_hard): Likewise.
14400         (read_comp_units_from_section): Likewise.
14401         (create_all_comp_units): Likewise.
14402         (scan_partial_symbols): Update calls.
14403         (add_partial_symbol): Likewise.
14404         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
14405         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
14406         (process_queue): Add dwarf2_per_objfile parameter.
14407         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
14408         (compute_compunit_symtab_includes): Likewise.
14409         (process_cu_includes): Add dwarf2_per_objfile parameter.
14410         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
14411         (process_full_type_unit): Likewise.
14412         (process_imported_unit_die): Update call.
14413         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
14414         (read_file_scope): Likewise.
14415         (allocate_dwo_file_hash_table): Add objfile parameter.
14416         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
14417         (create_cus_hash_table): Likewise.
14418         (create_dwp_hash_table): Likewise.
14419         (create_dwo_unit_in_dwp_v1): Likewise.
14420         (create_dwp_v2_section): Likewise.
14421         (create_dwo_unit_in_dwp_v2): Likewise.
14422         (lookup_dwo_unit_in_dwp): Likewise.
14423         (try_open_dwop_file): Likewise.
14424         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
14425         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
14426         cleanup to include a reference to dwarf2_per_objfile.
14427         (open_dwp_file): Add dwarf2_per_objfile parameter.
14428         (open_and_init_dwp_file): Likewise.
14429         (get_dwp_file): Likewise.
14430         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
14431         (queue_and_load_all_dwo_tus): Update call.
14432         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
14433         data.
14434         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
14435         (dwarf2_ranges_process): Likewise.
14436         (dwarf2_get_pc_bounds): Likewise.
14437         (mark_common_block_symbol_computed): Likewise.
14438         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14439         (dwarf2_read_abbrevs): Update call.
14440         (read_partial_die): Use dwarf2_per_objfile from cu.
14441         (find_partial_die): Likewise.
14442         (fixup_partial_die): Likewise.
14443         (read_attribute_value): Likewise.
14444         (read_indirect_string_at_offset_from): Add objfile parameter.
14445         (read_indirect_string_at_offset): Add dwarf2_per_objfile
14446         parameter.
14447         (read_indirect_string_from_dwz): Add objfile parameter.
14448         (read_indirect_string): Add objfile parameter.
14449         (read_addr_index_1): Add dwarf2_per_objfile parameter.
14450         (read_addr_index): Use dwarf2_per_objfile from cu.
14451         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
14452         call dw2_setup.
14453         (read_str_index): Use dwarf2_per_objfile from cu.
14454         (get_debug_line_section): Likewise.
14455         (read_formatted_entries): Add dwarf2_per_objfile parameter.
14456         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
14457         (new_symbol_full): Use dwarf2_per_objfile from cu.
14458         (build_error_marker_type): Likewise.
14459         (lookup_die_type): Likewise.
14460         (determine_prefix): Likewise.
14461         (follow_die_offset): Likewise.
14462         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
14463         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
14464         (dwarf2_fetch_die_type_sect_off): Likewise.
14465         (dwarf2_get_die_type): Likewise.
14466         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
14467         (get_signatured_type): Likewise.
14468         (get_DW_AT_signature_type): Likewise.
14469         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
14470         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
14471         (cu_debug_loc_section): Likewise.
14472         (fill_in_loclist_baton): Likewise.
14473         (dwarf2_symbol_mark_computed): Likewise.
14474         (dwarf2_find_containing_comp_unit): Change objfile parameter to
14475         dwarf2_per_objfile.
14476         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
14477         parameter.
14478         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
14479         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
14480         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
14481         (set_die_type): Use dwarf2_free_objfile from cu.
14482         (get_die_type_at_offset): Likewise.
14483         (dwarf2_per_objfile_free): Don't assign global variable.
14484         (debug_names) <constructor>: Add dwarf2_per_objfile
14485         parameter, update m_debugstrlookup construction.
14486         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
14487         parameter.
14488         <m_dwarf2_per_objfile>: New field.
14489         <lookup>: Use m_dwarf2_per_objfile.
14490         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
14491         (psyms_seen_size): Likewise.
14492         (write_gdbindex): Replace objfile parameter with
14493         dwarf2_per_objfile.
14494         (write_debug_names): Likewise.
14495         (write_psymtabs_to_index): Likewise.
14496         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
14497         calls.
14498
14499 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14500
14501         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
14502         <dwarf2_per_objfile>: New field.
14503         (struct dwarf2_per_cu_data) <objfile>: Remove.
14504         <dwarf2_per_objfile>: New field.
14505         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
14506         of objfile.
14507         (create_signatured_type_table_from_index): Likewise.
14508         (create_debug_type_hash_table): Likewise.
14509         (fill_in_sig_entry_from_dwo_entry): Likewise.
14510         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
14511         (create_type_unit_group): Assign dwarf2_per_objfile instead of
14512         objfile.
14513         (create_partial_symtab): Access objfile through
14514         dwarf2_per_objfile.
14515         (process_psymtab_comp_unit_reader): Likewise.
14516         (read_comp_units_from_section): Likewise.
14517         (scan_partial_symbols): Likewise.
14518         (add_partial_symbol): Likewise.
14519         (add_partial_subprogram): Likewise.
14520         (peek_die_abbrev): Likewise.
14521         (fixup_go_packaging): Likewise.
14522         (process_full_comp_unit): Likewise.
14523         (process_full_type_unit): Likewise.
14524         (process_imported_unit_die): Likewise.
14525         (dwarf2_compute_name): Likewise.
14526         (dwarf2_physname): Likewise.
14527         (read_import_statement): Likewise.
14528         (create_cus_hash_table): Assign dwarf2_physname instead of
14529         objfile.
14530         (read_func_scope): Access objfile through dwarf2_per_objfile.
14531         (read_lexical_block_scope): Likewise.
14532         (read_call_site_scope): Likewise.
14533         (read_variable): Likewise.
14534         (dwarf2_rnglists_process): Likewise.
14535         (dwarf2_ranges_process): Likewise.
14536         (dwarf2_ranges_read): Likewise.
14537         (dwarf2_record_block_ranges): Likewise.
14538         (dwarf2_add_field): Likewise.
14539         (dwarf2_add_member_fn): Likewise.
14540         (read_structure_type): Likewise.
14541         (process_structure_scope): Likewise.
14542         (read_enumeration_type): Likewise.
14543         (read_array_type): Likewise.
14544         (read_common_block): Likewise.
14545         (read_namespace_type): Likewise.
14546         (read_namespace): Likewise.
14547         (read_module_type): Likewise.
14548         (read_tag_pointer_type): Likewise.
14549         (read_tag_ptr_to_member_type): Likewise.
14550         (read_tag_string_type): Likewise.
14551         (read_subroutine_type): Likewise.
14552         (read_typedef): Likewise.
14553         (read_base_type): Likewise.
14554         (attr_to_dynamic_prop): Likewise.
14555         (read_subrange_type): Likewise.
14556         (read_unspecified_type): Likewise.
14557         (load_partial_dies): Likewise.
14558         (read_partial_die): Likewise.
14559         (find_partial_die): Likewise.
14560         (guess_partial_die_structure_name): Likewise.
14561         (fixup_partial_die): Likewise.
14562         (read_attribute_value): Likewise.
14563         (read_addr_index_from_leb128): Likewise.
14564         (dwarf2_read_addr_index): Likewise.
14565         (dwarf2_string_attr): Likewise.
14566         (lnp_state_machine::check_line_address): Likewise.
14567         (dwarf_decode_lines_1): Likewise.
14568         (dwarf_decode_lines): Likewise.
14569         (dwarf2_start_symtab): Likewise.
14570         (var_decode_location): Likewise.
14571         (new_symbol_full): Likewise.
14572         (dwarf2_const_value_data): Likewise.
14573         (dwarf2_const_value_attr): Likewise.
14574         (dwarf2_const_value): Likewise.
14575         (die_type): Likewise.
14576         (die_containing_type): Likewise.
14577         (lookup_die_type): Likewise.
14578         (guess_full_die_structure_name): Likewise.
14579         (anonymous_struct_prefix): Likewise.
14580         (dwarf2_name): Likewise.
14581         (follow_die_ref_or_sig): Likewise.
14582         (follow_die_offset): Likewise.
14583         (follow_die_ref): Likewise.
14584         (dwarf2_fetch_die_loc_sect_off): Likewise.
14585         (dwarf2_fetch_constant_bytes): Likewise.
14586         (dwarf2_fetch_die_type_sect_off): Likewise.
14587         (dwarf2_get_die_type): Likewise.
14588         (follow_die_sig): Likewise.
14589         (decode_locdesc): Likewise.
14590         (dwarf2_per_cu_objfile): Likewise.
14591         (dwarf2_per_cu_text_offset): Likewise.
14592         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
14593         objfile.
14594         (set_die_type): Access objfile through
14595         dwarf2_per_objfile.
14596
14597 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14598
14599         * valprint.c (converted_character_d): Remove typedef.
14600         (DEF_VEC_O (converted_character_d)): Remove.
14601         (count_next_character): Use std::vector.
14602         (print_converted_chars_to_obstack): Likewise.
14603         (generic_printstr): Likewise.
14604
14605 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14606
14607         * xml-support.h (struct gdb_xml_value): Add constructor.
14608         <value>: Change type to unique_xmalloc_ptr.
14609         (gdb_xml_value_s): Remove typedef.
14610         (DEF_VEC_O (gdb_xml_value_s)): Remove.
14611         (gdb_xml_element_start_handler): Change parameter type to
14612         std::vector.
14613         (xml_find_attribute): Likewise.
14614         * xml-support.c (xml_find_attribute): Change parameter type to
14615         std::vector and adjust.
14616         (gdb_xml_values_cleanup): Remove.
14617         (gdb_xml_parser::start_element): Adjust to std::vector.
14618         (xinclude_start_include): Change paraeter type to std::vector
14619         and adjust.
14620         * btrace.c (check_xml_btrace_version): Likewise.
14621         (parse_xml_btrace_block): Likewise.
14622         (parse_xml_btrace_pt_config_cpu): Likewise.
14623         (parse_xml_btrace_pt): Likewise.
14624         (parse_xml_btrace_conf_bts): Likewise.
14625         (parse_xml_btrace_conf_pt): Likewise.
14626         * memory-map.c (memory_map_start_memory): Likewise.
14627         (memory_map_start_property): Likewise.
14628         * osdata.c (osdata_start_osdata): Likewise.
14629         (osdata_start_item): Likewise.
14630         (osdata_start_column): Likewise.
14631         * remote.c (start_thread): Likewise.
14632         * solib-aix.c (library_list_start_library): Likewise.
14633         (library_list_start_list): Likewise.
14634         * solib-svr4.c (library_list_start_library): Likewise.
14635         (svr4_library_list_start_list): Likewise.
14636         * solib-target.c (library_list_start_segment): Likewise.
14637         (library_list_start_section): Likewise.
14638         (library_list_start_library): Likewise.
14639         (library_list_start_list): Likewise.
14640         * tracepoint.c (traceframe_info_start_memory): Likewise.
14641         (traceframe_info_start_tvar): Likewise.
14642         * xml-syscall.c (syscall_start_syscall): Likewise.
14643         * xml-tdesc.c (tdesc_start_target): Likewise.
14644         (tdesc_start_feature): Likewise.
14645         (tdesc_start_reg): Likewise.
14646         (tdesc_start_union): Likewise.
14647         (tdesc_start_struct): Likewise.
14648         (tdesc_start_flags): Likewise.
14649         (tdesc_start_enum): Likewise.
14650         (tdesc_start_field): Likewise.
14651         (tdesc_start_enum_value): Likewise.
14652         (tdesc_start_vector): Likewise.
14653
14654 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14655
14656         * extension.h (struct xmethod_worker) <clone>: Remove.
14657         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
14658         Remove.
14659         (python_xmethod_worker::clone): Remove.
14660         * valops.c (find_overload_match): Use std::move instead of
14661         clone.
14662
14663 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14664
14665         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
14666         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
14667         <free_xmethod_worker_data>: Remove.
14668         <get_matching_xmethod_workers>: Chance VEC to std::vector.
14669         <get_xmethod_arg_types>: Remove.
14670         <get_xmethod_result_type>: Remove.
14671         <invoke_xmethod>: Remove.
14672         * extension.c (new_xmethod_worker): Remove.
14673         (clone_xmethod_worker): Remove.
14674         (get_matching_xmethod_workers): Return void, pass std::vector by
14675         pointer.
14676         (get_xmethod_arg_types): Rename to...
14677         (xmethod_worker::get_arg_types): ... this, and adjust.
14678         (get_xmethod_result_type): Rename to...
14679         (xmethod_worker::get_result_type): ... this, and adjust.
14680         (invoke_xmethod): Remove.
14681         (free_xmethod_worker): Remove.
14682         (free_xmethod_worker_vec): Remove.
14683         * extension.h (enum ext_lang_rc): Move here from
14684         extension-priv.h.
14685         (struct xmethod_worker): Add constructor and destructor.
14686         <data>: Remove.
14687         <value>: Remove.
14688         <invoke, clone, do_get_result_type, do_get_arg_types>: New
14689         virtual pure methods.
14690         <get_arg_types, get_result_type>: New methods.
14691         (xmethod_worker_ptr): Remove typedef.
14692         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
14693         (xmethod_worker_vec): Remove typedef.
14694         (xmethod_worker_up): New typedef.
14695         (invoke_xmethod): Remove.
14696         (clone_xmethod_worker): Remove.
14697         (free_xmethod_worker): Remove.
14698         (free_xmethod_worker_vec): Remove.
14699         (get_xmethod_arg_types): Remove.
14700         (get_xmethod_result_type): Remove.
14701         * valops.c (find_method_list): Use std::vector, don't use
14702         intermediate vector.
14703         (value_find_oload_method_list): Use std::vector.
14704         (find_overload_match): Use std::vector.
14705         (find_oload_champ): Use std::vector.
14706         * value.c (value_free): Use operator delete.
14707         (value_of_xmethod): Rename to...
14708         (value_from_xmethod): ... this.  Don't assign
14709         xmethod_worker::value, take rvalue-reference.
14710         (result_type_of_xmethod): Adjust.
14711         (call_xmethod): Adjust.
14712         * value.h: Include extension.h.
14713         (struct xmethod_worker): Don't forward-declare.
14714         (value_of_xmethod): Rename to...
14715         (value_from_xmethod): ... this, take rvalue-reference.
14716         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
14717         (struct python_xmethod_worker): ... this, add constructor and
14718         destructor.
14719         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
14720         (gdbpy_free_xmethod_worker_data): Rename to...
14721         (python_xmethod_worker::~python_xmethod_worker): ... this and
14722         adjust.
14723         (gdbpy_clone_xmethod_worker_data): Rename to...
14724         (python_xmethod_worker::clone): ... this and adjust.
14725         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
14726         temporary vector.
14727         (gdbpy_get_xmethod_arg_types): Rename to...
14728         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
14729         (gdbpy_get_xmethod_result_type): Rename to...
14730         (python_xmethod_worker::do_get_result_type): ... this and
14731         adjust.
14732         (gdbpy_invoke_xmethod): Rename to...
14733         (python_xmethod_worker::invoke): ... this and adjust.
14734         (new_python_xmethod_worker): Rename to...
14735         (python_xmethod_worker::python_xmethod_worker): ... this and
14736         adjust.
14737         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
14738         Remove.
14739         (gdbpy_free_xmethod_worker_data): Remove.
14740         (gdbpy_get_matching_xmethod_workers): Use std::vector.
14741         (gdbpy_get_xmethod_arg_types): Remove.
14742         (gdbpy_get_xmethod_result_type): Remove.
14743         (gdbpy_invoke_xmethod): Remove.
14744         * python/python.c (python_extension_ops): Remove obsolete
14745         callbacks.
14746
14747 2018-01-05  Pedro Alves  <palves@redhat.com>
14748
14749         PR gdb/18653
14750         * common/signals-state-save-restore.c
14751         (save_original_signals_state): New parameter 'quiet'.  Warn if we
14752         find a custom handler preinstalled, instead of internal erroring.
14753         But only warn if !quiet.
14754         * common/signals-state-save-restore.h
14755         (save_original_signals_state): New parameter 'quiet'.
14756         * main.c (captured_main_1): Move save_original_signals_state call
14757         after option handling, and pass QUIET.
14758
14759 2018-01-05  Pedro Alves  <palves@redhat.com>
14760
14761         * spu-tdep.c (spu_catch_start): Pass
14762         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
14763
14764 2018-01-05  Pedro Alves  <palves@redhat.com>
14765
14766         PR gdb/22670
14767         * ada-lang.c (literal_symbol_name_matcher): New function.
14768         (ada_get_symbol_name_matcher): Use it for
14769         symbol_name_match_type::SEARCH_NAME.
14770         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
14771         it down instead of assuming symbol_name_match_type::FULL.
14772         * block.h (block_lookup_symbol): New parameter 'match_type'.
14773         * c-valprint.c (print_unpacked_pointer): Use
14774         lookup_symbol_search_name instead of lookup_symbol.
14775         * compile/compile-object-load.c (get_out_value_type): Pass down
14776         symbol_name_match_type::SEARCH_NAME.
14777         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
14778         symbol_name_match_type::FULL.
14779         * cp-support.c (cp_get_symbol_name_matcher): Handle
14780         symbol_name_match_type::SEARCH_NAME.
14781         * infrun.c (insert_exception_resume_breakpoint): Use
14782         lookup_symbol_search_name.
14783         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
14784         * psymtab.c (maintenance_check_psymtabs): Use
14785         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
14786         * stack.c (print_frame_args): Use lookup_symbol_search_name and
14787         SYMBOL_SEARCH_NAME.
14788         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
14789         if symbol_name_match_type::SEARCH_NAME.
14790         (lookup_symbol_in_language): Pass down
14791         symbol_name_match_type::FULL.
14792         (lookup_symbol_search_name): New.
14793         (lookup_language_this): Pass down
14794         symbol_name_match_type::SEARCH_NAME.
14795         (lookup_symbol_aux, lookup_local_symbol): New parameter
14796         'match_type'.  Pass it down.
14797         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
14798         (lookup_symbol_search_name): New declaration.
14799         (lookup_symbol_in_block): New 'match_type' parameter.
14800
14801 2018-01-05  Pedro Alves  <palves@redhat.com>
14802
14803         PR gdb/22670
14804         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
14805         ada_lookup_symbol.
14806         (ada_lookup_symbol): Reimplement in terms of
14807         ada_lookup_symbol_list, bits factored out from
14808         ada_lookup_encoded_symbol.
14809
14810 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14811
14812         * ada-exp.y (write_object_renaming): When subscripting an array
14813         using a symbol as the index, pass the block in call to
14814         ada_lookup_encoded_symbol when looking that symbol up.
14815
14816 2018-01-05  Jerome Guitton  <guitton@adacore.com>
14817
14818         * ada-lang.c (ada_array_length): Use ada_index_type instead of
14819         TYPE_INDEX_TYPE.
14820
14821 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14822
14823         * ada-lang.c (ada_to_fixed_value_create): Add handling of
14824         the case where VALUE_LVAL (val0) is not lval_memory.
14825
14826 2018-01-05  Xavier Roirand  <roirand@adacore.com>
14827
14828         * ada-valprint.c (print_optional_low_bound): Handle
14829         character-indexed array printing like boolean-indexed array
14830         printing.
14831
14832 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14833
14834         * NEWS: Create a new section for the next release branch.
14835         Rename the section of the current branch, now that it has
14836         been cut.
14837
14838 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14839
14840         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
14841         * version.in: Bump version to 8.1.50.DATE-git.
14842
14843 2018-01-03  Xavier Roirand  <roirand@adacore.com>
14844
14845         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
14846         Add field.
14847         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
14848         Add field.
14849         (default_exception_support_info) <catch_handlers_sym>: Add field.
14850         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
14851         (ada_exception_name_addr_1): Add "catch handlers" handling.
14852         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
14853         Update all callers.
14854         (create_excep_cond_exprs) <ex>: Add parameter.
14855         (re_set_exception): Update create_excep_cond_exprs call.
14856         (print_it_exception, print_one_exception, print_mention_exception)
14857         (print_recreate_exception): Add "catch handler" handling.
14858         (allocate_location_catch_handlers, re_set_catch_handlers)
14859         (check_status_catch_handlers, print_it_catch_handlers)
14860         (print_one_catch_handlers, print_mention_catch_handlers)
14861         (print_recreate_catch_handlers): New function.
14862         (catch_handlers_breakpoint_ops): New variable.
14863         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
14864         Add parameter.  Add "catch handler" handling.
14865         (ada_exception_sym_name, ada_exception_breakpoint_ops):
14866         Add "catch handler" handling.
14867         (ada_exception_catchpoint_cond_string): Add "catch handler"
14868         handling.
14869         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
14870         call.
14871         (catch_ada_handlers_command): New function.
14872         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
14873         operations structure.
14874         (_initialize_ada_language): Add "catch handlers" command entry.
14875         * NEWS: Document "catch handlers" feature.
14876
14877 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14878
14879         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
14880         account when creating the array type of the slice.
14881         (ada_value_slice): Likewise.
14882
14883 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14884
14885         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
14886         New enum value.
14887         (create_array_type_with_stride): Add byte_stride_prop parameter.
14888         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
14889         New parameter.  Update all callers in this file.
14890         (array_type_has_dynamic_stride): New function.
14891         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
14892         of arrays with dynamic byte strides.
14893         * dwarf2read.c (read_array_type): Add support for dynamic
14894         DW_AT_byte_stride attributes.
14895
14896 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14897
14898         * dwarf2read.c (read_unspecified_type): Treat
14899         DW_TAG_enumeration_type DIEs from Ada units as stubs.
14900
14901 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14902
14903         Update copyright year range in all GDB files.
14904
14905 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
14906
14907         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
14908         and gdb/testsuite/gdb.base/step-line.c.
14909
14910 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14911
14912         * copyright.py (main): Dump the contents of
14913         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
14914         even if BY_HAND is empty.
14915
14916 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14917
14918         * top.c (print_gdb_version): Update Copyright year in version
14919         message.
14920
14921 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14922
14923         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
14924
14925 For older changes see ChangeLog-2017.
14926 \f
14927 Local Variables:
14928 mode: change-log
14929 left-margin: 8
14930 fill-column: 74
14931 version-control: never
14932 coding: utf-8
14933 End: