gdb/riscv: Remove redundant code, and catch more errors when accessing MISA
[external/binutils.git] / gdb / ChangeLog
1 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
2
3         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
4         READ_P parameter, catch and ignore register access errors from
5         either the old or new MISA location.
6         (riscv_has_feature): Update call to riscv_read_misa_reg.
7
8 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
9
10         * python/py-function.c (convert_values_to_python): Return
11         gdbpy_ref<>.  Add header comment.
12         (fnpy_call): Adjust.
13
14 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
15
16         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
17         (cmdpy_completer_handle_brkchars): Adjust.
18         (cmdpy_completer): Adjust.
19
20 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
21
22         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
23         Pass correct regnum to raw_supply_zeroed.
24
25 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
26
27         * regcache.c (cooked_read_test): Add CSKY to the list of
28         architectures with a save_reggroup
29
30 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
31
32         PR gdb/23368
33         * infrun.c (follow_exec): In the follow_exec_mode_new case,
34         transfer terminal state from old new new inferior.
35         * terminal.h (swap_terminal_info): New function.
36         * inflow.c (swap_terminal_info): New function.
37
38 2018-10-23  Tom Tromey  <tom@tromey.com>
39
40         * record-btrace.c (get_thread_current_frame_id): Rename from
41         get_thread_current_frame.  Return a frame_id.
42         (record_btrace_start_replaying): Update.
43
44 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
45
46         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
47         for CSRs.
48
49 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
50
51         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
52         have_nonsteppable_watchpoint attribute to 1.
53
54 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
55
56         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
57         register names.
58         (struct register_alias): Rename to...
59         (struct riscv_register_alias): ...this, and update comment.
60         (riscv_register_aliases): Update type, and alias names.  Remove
61         CSR names from this list.
62         (riscv_register_name): Use riscv_gdb_reg_names for int and float
63         register names.  Add an extra assertion.
64         (riscv_is_regnum_a_named_csr): New function.
65         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
66
67 2018-10-22  Jim Wilson  <jimw@sifive.com>
68
69         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
70         FP reg smaller than FP reg size, and fill with -1 instead of 0.
71
72         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
73         (riscv_register_type): Use them.
74         (riscv_print_one_register_info): Handle union of floats same as float.
75         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
76         riscv_fpreg_q_type fields.
77
78 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
79
80         * gdbarch.sh (gdbarch_num_cooked_regs): New.
81         * gdbarch.h: Re-generate.
82         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
83         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
84         * eval.c (evaluate_subexp_standard): Likewise.
85         * findvar.c (value_of_register): Likewise.
86         (value_of_register_lazy): Likewise.
87         (address_from_register): Likewise.
88         * frame.c (get_frame_register_bytes): Likewise.
89         * gdbarch-selftests.c (register_to_value_test): Likewise.
90         * h8300-tdep.c (h8300_register_type): Likewise.
91         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
92         (i386_svr4_reg_to_regnum): Likewise.
93         * infcmd.c (default_print_registers_info): Likewise.
94         (registers_info): Likewise.
95         (print_vector_info): Likewise.
96         (default_print_float_info): Likewise.
97         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
98         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
99         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
100         (mi_cmd_data_list_changed_registers): Likewise.
101         (mi_cmd_data_list_register_values): Likewise.
102         (mi_cmd_data_write_register_values): Likewise.
103         (mi_cmd_trace_frame_collected): Likewise.
104         * mips-tdep.c (print_gp_register_row): Likewise.
105         (mips_print_registers_info): Likewise.
106         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
107         * regcache.c (init_regcache_descr): Likewise.
108         (register_size): Likewise.
109         (register_dump::dump): Likewise.
110         (cooked_read_test): Likewise.
111         (cooked_write_test): Likewise.
112         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
113         (rs6000_gdbarch_init): Likewise.
114         * stabsread.c (stab_reg_to_regnum): Likewise.
115         * stack.c (info_frame_command): Likewise.
116         * target-descriptions.c (tdesc_register_name): Likewise.
117         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
118         * tui/tui-regs.c (tui_show_register_group): Likewise.
119         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
120         (user_reg_map_regnum_to_name): Likewise.
121         (value_of_user_reg): Likewise.
122         (maintenance_print_user_registers): Likewise.
123         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
124         (xtensa_register_name): Likewise.
125         (xtensa_register_type): Likewise.
126         (xtensa_reg_to_regnum): Likewise.
127         (xtensa_pseudo_register_read): Likewise.
128         (xtensa_pseudo_register_write): Likewise.
129
130 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
131
132         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
133         correctly-sized buffer with raw_read.
134         (amd64_pseudo_register_write): Use correctly-sized buffer for
135         raw_read/raw_write.
136
137 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
138
139         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
140         in add_prefix_cmd of set print type.
141
142 2018-10-19  Tom Tromey  <tom@tromey.com>
143
144         PR tui/18388:
145         * NEWS: Mention tabset deprecation.
146         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
147         (update_tab_width): New function.
148         (tui_set_tab_width, tui_show_tab_width): New functions.
149         (tui_set_tab_width_command): Use update_tab_width.
150         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
151         Add new "set tui tab-width" command.
152         * tui/tui-source.c (tui_set_source_content): Update.
153         * tui/tui-disasm.c (tui_set_disassem_content): Update.
154         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
155         Don't declare.
156         (tui_tab_width): Declare.
157         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
158         (tui_set_default_tab_len): Remove.
159
160 2018-10-19  Tom Tromey  <tom@tromey.com>
161
162         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
163         (key_is_backspace, tui_getc): Don't declare.
164         * tui/tui-io.c (key_is_start_sequence): Now static.
165         (key_is_end_sequence, key_is_backspace): Remove.
166         (tui_getc): Now static.
167
168 2018-10-19  Tom Tromey  <tom@tromey.com>
169
170         * symfile.c (reread_symbols): Clear "static_links".
171
172 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
173
174         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
175         define.
176         (aarch64_linux_sigframe_init): Extra boundary checks.
177
178 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
179
180         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
181         the possibly non-existent tdesc type 'vec128', but the type of raw
182         register v16 instead.
183
184 2018-10-19  Gary Benson <gbenson@redhat.com>
185
186         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
187
188 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
189
190         PR cli/23785
191         * cli/cli-dump.c (restore_binary_file): Check if "file" is
192         NULL.
193
194 2018-10-17  Paul Koning  <paul_koning@dell.com>
195
196         * charset.c (convert_between_encodings): Fix unsigned overflow.
197
198 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
199
200         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
201         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
202         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
203         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
204         New functions.
205         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
206         and fbsd_info_proc_mappings_header.
207         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
208         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
209         New.
210
211 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
212
213         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
214         Solaris Maintainer.
215
216 2018-10-15  Tom Tromey  <tom@tromey.com>
217
218         * tui/tui.c (strcat_to_buf): Remove casts.
219         * tui/tui-winsource.c (tui_show_source_line)
220         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
221         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
222         * tui/tui-windata.c (tui_first_data_item_displayed)
223         (tui_delete_data_content_windows, tui_erase_data_content)
224         (tui_display_all_data, tui_display_data_from)
225         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
226         * tui/tui-win.c (tui_set_win_height)
227         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
228         casts.
229         * tui/tui-win.c (tui_resize_all): Remove casts.
230         (tui_scroll_backward_command, tui_set_focus)
231         (tui_set_tab_width_command): Likewise.
232         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
233         * tui/tui-regs.c (tui_show_register_group): Remove cast.
234         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
235         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
236         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
237         Remove casts.
238
239 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
240
241         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
242         AArch64/ARM maintainer.
243
244 2018-10-11  Gary Benson <gbenson@redhat.com>
245
246         * interps.h (interp::m_name): Make private and mutable.
247         * interps.c (interp::~interp): Free m_name.
248
249 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
250             Simon Marchi <simark@simark.ca>
251
252         * README (`configure' options): Add documentation for new
253         "--enable-unit-tests" option.
254         * acinclude.m4: Include "selftest.m4".
255         * configure: Regenerate.
256         * configure.ac: Use "GDB_AC_SELFTEST".
257         * maint.c (maintenance_selftest): Update message informing
258         that selftests have been disabled.
259         (maintenance_info_selftests): Likewise.
260         * selftest.m4: New file.
261
262 2018-10-10  Gary Benson <gbenson@redhat.com>
263
264         * remote.c (remote_target::remote_send_printf): Add
265         missing va_end found by Coverity.
266
267 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
268
269         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
270
271 2018-10-09  Tom Tromey  <tom@tromey.com>
272
273         * configure: Rebuild.
274         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
275         * NEWS: Update --enable-ubsan documentation.
276
277 2018-10-09  Gary Benson <gbenson@redhat.com>
278
279         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
280         found by Coverity.
281
282 2018-10-08  Tom Tromey  <tom@tromey.com>
283
284         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
285         variable.
286         (riscv_fbsd_init_abi): Likewise.
287
288 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
289         * valops.c (value_struct_elt_for_reference): Rename local variable
290         to work around the shadowing a previous local warning.
291
292 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
293
294         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
295         * NEWS: Mention new FreeBSD/riscv native configuration.
296         * configure.host: Add riscv*-*-freebsd*.
297         * configure.nat: Likewise.
298         * riscv-fbsd-nat.c: New file.
299
300 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
301
302         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
303         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
304         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
305         * NEWS: Mention new FreeBSD/riscv target.
306         * configure.tgt: Add riscv*-*-freebsd*.
307         * riscv-fbsd-tdep.c: New file.
308         * riscv-fbsd-tdep.h: New file.
309
310 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
311
312         * regcache.h (struct regcache_map_entry): Note that this type can
313         be used with traditional frame caches.
314         * trad-frame.c (trad_frame_set_reg_regmap): New.
315         * trad-frame.h (trad_frame_set_reg_regmap): New.
316
317 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
318
319         PR c++/16841
320         * valops.c (get_virtual_base_offset): New function.
321         (value_struct_elt_for_reference): Use it to get virtual base offset
322         and add it in calculating class member address.
323
324 2018-10-08   John Darrington <john@darrington.wattle.id.au>
325
326     * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
327       (check_producer): Check if the producer is codewarrior.
328       (producer_is_codewarrior): New function.
329       (lnp_state_machine::record_line): Ignore is_stmt flag for records
330        produced by codewarrior.
331       (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
332
333 2018-10-06  Tom Tromey  <tom@tromey.com>
334
335         PR python/19399:
336         * python/py-inferior.c: Add "architecture" entry.
337         (infpy_architecture): New function.
338
339 2018-10-06  Tom Tromey  <tom@tromey.com>
340
341         PR python/21765:
342         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
343         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
344         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
345         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
346
347 2018-10-06  Tom Tromey  <tom@tromey.com>
348
349         PR build/17077:
350         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
351         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
352         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
353         #include.
354
355 2018-10-06  Tom Tromey  <tom@tromey.com>
356
357         * python/py-breakpoint.c (bppy_get_location): Handle a
358         bp_breakpoint without a location.
359
360 2018-10-06  Tom Tromey  <tom@tromey.com>
361
362         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
363         (_RegEx): Reformat help text.
364         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
365         (AnyCallerIs, AnyCallerMatches): Reformat help text.
366         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
367         text.
368         * python/lib/gdb/command/xmethods.py (InfoXMethod)
369         (EnableXMethod, DisableXMethod): Remove help indentation.
370         Capitalize meta-syntactic variables.
371         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
372         (EnableUnwinder, DisableUnwinder): Remove help indentation.
373         Capitalize meta-syntactic variables.
374         * python/lib/gdb/command/explore.py (ExploreCommand)
375         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
376         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
377         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
378         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
379         Remove help indentation.
380         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
381         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
382         (DisableFrameFilter, SetFrameFilterPriority)
383         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
384
385 2018-10-06  Tom Tromey  <tom@tromey.com>
386
387         PR tui/28819:
388         * tui/tui-io.c (gdb_wgetch): New function.
389         (tui_mld_getc, tui_getc): Use it.
390
391 2018-10-05  Tom Tromey  <tom@tromey.com>
392
393         * sol-thread.c (sol_thread_target::wait): Rename inner
394         "save_ptid".
395
396 2018-10-04  Tom Tromey  <tom@tromey.com>
397
398         * configure: Rebuild.
399         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
400
401 2018-10-04  Tom Tromey  <tom@tromey.com>
402
403         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
404         declaration of "block".
405
406 2018-10-04  Tom Tromey  <tom@tromey.com>
407
408         * common/filestuff.c (fdwalk): Remove inner declaration of
409         "result".
410
411 2018-10-04  Tom Tromey  <tom@tromey.com>
412
413         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
414         "structs_addr" and hoist declaration.
415
416 2018-10-04  Tom Tromey  <tom@tromey.com>
417
418         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
419         variable "size".
420
421 2018-10-04  Tom Tromey  <tom@tromey.com>
422
423         * mdebugread.c (parse_partial_symbols): Use std::string.
424
425 2018-10-04  Tom Tromey  <tom@tromey.com>
426
427         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
428         * p-valprint.c (pascal_val_print): Split inner "i" variable.
429         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
430         header.
431         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
432         more inner scope.
433         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
434         * varobj.c (varobj_update): Rename inner "newobj",
435         "type_changed".
436         * valprint.c (generic_emit_char): Rename inner "buf".
437         * valops.c (find_overload_match): Rename inner "temp".
438         (value_struct_elt_for_reference): Declare "v" in more inner
439         scope.
440         * v850-tdep.c (v850_push_dummy_call): Rename "len".
441         * unittests/array-view-selftests.c (run_tests): Rename inner
442         "vec".
443         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
444         header.
445         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
446         "tsv" in more inner scope.
447         (print_one_static_tracepoint_marker): Rename inner
448         "tuple_emitter".
449         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
450         (tic6x_push_dummy_call): Don't redeclare "addr".
451         * target-float.c: Declare "dto" lower.
452         * symtab.c (lookup_local_symbol): Rename inner "sym".
453         (find_pc_sect_line): Rename inner "pc".
454         * stack.c (print_frame): Don't redeclare "gdbarch".
455         (return_command): Rename inner "gdbarch".
456         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
457         "sp".
458         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
459         header.
460         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
461         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
462         scope.
463         * remote.c (remote_target::update_thread_list): Don't redeclare
464         "tp".
465         (remote_target::process_initial_stop_replies): Rename inner
466         "thread".
467         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
468         (remote_target::wait_as): Don't redeclare "stop_reply".
469         (remote_target::get_thread_local_address): Rename inner
470         "result".
471         (remote_target::get_tib_address): Likewise.
472
473         * regcache.c (cooked_read_test): Rename "regnum".
474         * record-btrace.c (cmd_record_btrace_start): Rename inner
475         "exception".
476         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
477         loop header.
478         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
479         header.
480         (ppu2spu_sniffer): Rename inner "buf".
481         * parse.c (operator_check_standard): Rename inner "type",
482         "objfile".
483         * p-valprint.c (pascal_val_print): Introduce new scope for
484         "low_bound", "high_bound".
485         * p-exp.y (yylex): Declare "i" in loop header.
486         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
487         Lower declaration of "s".
488         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
489         header.
490         (nios2_push_dummy_call): Rename "len".
491         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
492         "buf".
493         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
494         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
495         (linux_xfer_osdata_modules): Likewise.
496         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
497         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
498         (mips_o64_push_dummy_call): Likewise.
499         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
500         "op".
501         * mi/mi-main.c (list_available_thread_groups): Rename inner
502         "tuple_emitter".
503         (mi_cmd_data_read_memory): Rename inner "opts".
504         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
505         "tuple_emitter".
506         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
507         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
508         more inner scope.
509         (parse_partial_symbols): Rename inner "pst", "p", "name"
510         * main.c (captured_main_1): Rename inner "i"s.
511         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
512         "oso2".
513         * linux-tdep.c (linux_info_proc): Rename inner "filename".
514         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
515         * infrun.c (handle_no_resumed): Don't redeclare "thread".
516         (handle_signal_stop): Rename inner "gdbarch".
517         (handle_command): Declare "signum" in loop header.
518         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
519         "status".
520         (examine_prologue): Rename inner "sol" and "sof".
521         (ia64_extract_return_value): Rename inner "val".  Declare another
522         "val" in a more inner scope.
523         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
524         inner scope.
525         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
526         "except".
527         * findvar.c (default_read_var_value): Don't redeclare "addr".
528         * f-exp.y (yylex): Declare "i" in loop header.
529         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
530         Rename inner "type", "expect_type".
531         (evaluate_subexp_for_sizeof): Rename inner "pc".
532         * elfread.c (elf_symfile_read): Rename inner "abfd".
533         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
534         "bytes_read".
535         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
536         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
537         (dwarf_decode_line_header): Rename inner "lh".
538         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
539         "offset".  Declare "i" in loop header.
540         (disassemble_dwarf_expression): Rename inner "addr_size".
541         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
542         inner "result".
543         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
544         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
545         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
546         "inner_list_emitter".
547         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
548         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
549         declaration in a block.
550         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
551         * cp-valprint.c (cp_print_value_fields): Don't redeclare
552         "obstack_final_size".
553         * cp-support.c (inspect_type): Declare "i" in loop header.
554         * compile/compile.c (compile_instance::insert_symbol_error):
555         Rename inner "e".
556         * common/agent.c (agent_run_command): Remove inner "ret"
557         declaration.
558         * coffread.c (coff_symfile_read): Rename inner "name".
559         (coff_symfile_read): Rename inner "abfd".
560         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
561         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
562         "high".
563         * c-exp.y (lex_one_token): Move "len" declaration lower.
564         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
565         "gdbarch".
566         (create_exception_master_breakpoint): Likewise.  Don't redeclare
567         "b".
568         (watch_command_1): Declare "mark" later.
569         (clear_command): Don't shadow "a" or "b".
570         (delete_command): Rename inner "b".
571         (delete_trace_command): Likewise.
572         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
573         "op".
574         (arm_gdbarch_init): Remove inner "e_flags".
575         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
576         "offset" in inner blocks.
577
578 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
579
580         * dwarf-index-write.c (file_write): Don't write if the vector is
581         empty.
582
583 2018-10-05  Tom de Vries  <tdevries@suse.de>
584
585         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
586         PyArg_ParseTuple call.
587
588 2018-10-05  Tom de Vries  <tdevries@suse.de>
589
590         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
591         PyArg_ParseTuple call.
592
593 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
594
595         * psymtab.c (recursively_search_psymtabs): Reformat parameters
596         to avoid exceeding 80 characters per line limit.
597
598 2018-10-04  Tom Tromey  <tom@tromey.com>
599
600         * symfile.c (syms_from_objfile_1, finish_new_objfile)
601         (reread_symbols): Update.
602         * complaints.h (clear_complaints): Remove argument.
603         * complaints.c (enum complaint_series): Remove.
604         (series): Remove global.
605         (complaint_internal): Update.
606         (clear_complaints): Remove argument.
607
608 2018-10-04  Tom Tromey  <tom@tromey.com>
609
610         * symfile.c (symbol_file_add_with_addrs): Do not print "no
611         debugging symbols" message if there is a separate debug objfile.
612
613 2018-10-04  Tom Tromey  <tom@tromey.com>
614
615         PR cli/19551:
616         * symfile.c (symbol_file_add_with_addrs): Update output.
617         * psymtab.c (require_partial_symbols): Update output.
618
619 2018-10-04  Tom Tromey  <tom@tromey.com>
620
621         PR cli/22234:
622         * complaints.c: Emit \n.
623
624 2018-10-04  Tom Tromey  <tom@tromey.com>
625
626         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
627         (separate_debug_file_exists, find_separate_debug_file)
628         (add_symbol_file_command, reread_symbols, allocate_symtab)
629         (allocate_compunit_symtab): Use filtered printing, not
630         unfiltered.
631         * psymtab.c (require_partial_symbols, dump_psymtab)
632         (allocate_psymtab): Use filtered printing, not unfiltered.
633
634 2018-10-04  Tom Tromey  <tom@tromey.com>
635
636         * complaints.c (complaint_internal): Correctly check complaint
637         count.
638
639 2018-10-04  Tom Tromey  <tom@tromey.com>
640
641         * complaints.h (struct complaints): Remove declaration.
642         * complaints.c (clear_complaints): Remove an unused variable.
643
644 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
645
646         * MAINTAINERS (Write After Approval): Add self.
647
648 2018-10-03  Tom Tromey  <tom@tromey.com>
649
650         * guile/scm-value.c (gdbscm_value_to_string): Initialize
651         "buffer_contents".
652         * coffread.c (coff_symtab_read): Initialize "newobj".
653
654 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
655
656         * dwarf2read.c (read_func_scope): Remove struct keyword in
657         range-based for.
658
659 2018-10-03  Tom Tromey  <tom@tromey.com>
660
661         * README: Mention --enable-ubsan.
662         * NEWS: Mention --enable-ubsan.
663         * acinclude.m4: Include sanitize.m4.
664         * configure: Rebuild.
665         * configure.ac: Call AM_GDB_UBSAN.
666         * sanitize.m4: New file.
667
668 2018-10-03  Tom Tromey  <tom@tromey.com>
669
670         * expression.h (enum exp_opcode): Use uint8_t as base type.
671         * expprint.c (op_name): Handle invalid opcodes.
672
673 2018-10-03  Tom Tromey  <tom@tromey.com>
674
675         * parse.c (prefixify_expression): Add assert.
676         (parse_exp_in_context_1): Throw exception if the expression is
677         empty.
678
679 2018-10-03  Tom Tromey  <tom@tromey.com>
680
681         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
682
683 2018-10-03  Tom Tromey  <tom@tromey.com>
684
685         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
686
687 2018-10-03  Tom Tromey  <tom@tromey.com>
688
689         * dwarf2read.c (read_subrange_type): Make "negative_mask"
690         unsigned.
691
692 2018-10-03  Tom Tromey  <tom@tromey.com>
693
694         * findvar.c (extract_integer): Do work in an unsigned type.
695
696 2018-10-03  Tom Tromey  <tom@tromey.com>
697
698         * common/enum-flags.h (enum_flags::operator~): Add static assert.
699         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
700         base type.
701         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
702         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
703         type.
704         * c-lang.h (enum c_string_type_values): Use unsigned as base
705         type.
706         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
707
708 2018-10-03  Tom Tromey  <tom@tromey.com>
709
710         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
711         <~dwarf2_frame_state_reg_info>: Update.
712         <dwarf2_frame_state_reg_info>: Update.
713         <alloc_regs>: Add assertion.  Update.
714         <reg>: Now a std::vector.
715         <num_regs>: Remove.
716         <swap>: Update.
717         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
718         (execute_cfa_program_test, dwarf2_frame_cache): Update.
719
720 2018-10-03  Tom Tromey  <tom@tromey.com>
721
722         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
723
724 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
725
726         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
727
728 2018-10-02  Tom Tromey  <tom@tromey.com>
729
730         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
731
732 2018-10-02  John Darrington <john@darrington.wattle.id.au>
733
734         * NEWS: Mention changed commands.
735         * ser-uds.c: New file.
736         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
737         * configure: Regenerate.
738         * Makefile.in: Add new file.
739         * serial.c (serial_open): Check if filename is a socket
740           and lookup the appropriate interface accordingly.
741
742 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
743
744         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
745         define.
746         (AARCH64_EXTRA_MAGIC): Likewise.
747         (AARCH64_FPSIMD_MAGIC): Likewise.
748         (AARCH64_SVE_MAGIC): Likewise.
749         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
750         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
751         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
752         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
753         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
754         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
755         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
756         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
757         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
758         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
759         (read_aarch64_ctx): Add function.
760         (aarch64_linux_sigframe_init): Detect FP registers.
761
762 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
763
764         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
765         (AARCH64_D0_REGNUM): Likewise.
766         (AARCH64_S0_REGNUM): Likewise.
767         (AARCH64_H0_REGNUM): Likewise.
768         (AARCH64_B0_REGNUM): Likewise.
769         (AARCH64_SVE_V0_REGNUM): Likewise.
770         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
771         (AARCH64_D0_REGNUM): Likewise.
772         (AARCH64_S0_REGNUM): Likewise.
773         (AARCH64_H0_REGNUM): Likewise.
774         (AARCH64_B0_REGNUM): Likewise.
775         (AARCH64_SVE_V0_REGNUM): Likewise.
776
777 2018-10-01  Gary Benson <gbenson@redhat.com>
778
779         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
780         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
781         prfpregset_t instead of gdb_prfpregset_t.
782         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
783         * configure, config.in: Rebuild.
784
785 2018-10-01  Gary Benson <gbenson@redhat.com>
786
787         * common/gdb_proc_service.h: New file, factored out from...
788         * gdb_proc_service.h: Moved common code to the above file.
789         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
790
791 2018-10-01  Gary Benson <gbenson@redhat.com>
792
793         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
794         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
795
796 2018-10-01  Gary Benson <gbenson@redhat.com>
797
798         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
799         (AC_CHECK_HEADERS): Check for linux/elf.h.
800         * configure, config.in: Rebuild.
801         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
802         doesn't define elf_fpregset_t.
803
804 2018-10-01  Gary Benson <gbenson@redhat.com>
805
806         * gdb_proc_service.h: Whitespace change.
807
808 2018-10-01  Tom Tromey  <tom@tromey.com>
809
810         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
811         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
812         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
813
814 2018-10-01  Tom Tromey  <tom@tromey.com>
815
816         * README: Minor change.
817
818 2018-09-30  Pedro Alves  <palves@redhat.com>
819
820         * darwin-nat-info.c (darwin_debug_regions_recurse)
821         (info_mach_exceptions_command): Remove unused local variables.
822         * darwin-nat.c (darwin_decode_notify_message)
823         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
824         (darwin_stop_inferior, darwin_setup_exceptions)
825         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
826         (darwin_nat_target::attach, darwin_nat_target::detach)
827         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
828         local variables.
829         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
830         variables.
831
832 2018-09-29  Tom Tromey  <tom@tromey.com>
833
834         * README: Remove some leftover text.
835
836 2018-09-29  Tom Tromey  <tom@tromey.com>
837
838         * PROBLEMS: Rewrite.
839         * README: Update.
840
841 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
842
843         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
844         case with explicit breakpoint kind.
845         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
846         'additional_info' and related logic.
847         (riscv_debug_breakpoints): New variable.
848         (riscv_breakpoint_kind_from_pc): Use the length of the existing
849         instruction to determine the breakpoint kind.
850         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
851         flag.  Update description of 'set/show riscv
852         use-compressed-breakpoints' flag.
853
854 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
855
856         (NEWS): Mention changes to frame related commands.
857         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
858         (add_prefix_cmd_suppress_notification): New function.
859         (add_com_suppress_notification): Call
860         add_cmd_suppress_notification.
861         * command.h (add_cmd_suppress_notification): Declare.
862         (add_prefix_cmd_suppress_notification): Declare.
863         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
864         (parse_frame_specification): Moved from stack.c, with
865         simplification to handle a single argument.
866         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
867         switch to the selected frame.  Add a header comment.
868         * stack.c: Remove 'safe-ctype.h' include.
869         (find_frame_for_function): Add declaration.
870         (find_frame_for_address): New function.
871         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
872         (frame_selection_by_function_completer): New function.
873         (info_frame_command): Rename to...
874         (info_frame_command_core): ...this, and update parameter types.
875         (select_frame_command): Rename to...
876         (select_frame_command_core): ...this, and update parameter types.
877         (frame_command): Rename to...
878         (frame_command_core): ...this, and update parameter types.
879         (class frame_command_helper): New class to wrap implementations of
880         frame related sub-commands.
881         (frame_apply_cmd_list): New static global.
882         (frame_cmd_list): Make static.
883         (select_frame_cmd_list): New global for sub-commands.
884         (info_frame_cmd_list): New global for sub-commands.
885         (_initialize_stack): Register sub-commands for 'frame',
886         'select-frame', and 'info frame'.  Update 'frame apply' commands
887         to use frame_apply_cmd_list.  Move function local static
888         frame_apply_list to file static frame_apply_cmd_list for
889         consistency.
890         * stack.h (select_frame_command): Delete declarationn.
891         (select_frame_for_mi): Declare new function.
892
893 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
894
895         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
896         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
897         and NOP.
898
899 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
900
901         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
902
903 2018-09-26  Tom Tromey  <tom@tromey.com>
904
905         * valops.c (auto_abandon): Remove dead code.
906
907 2018-09-26  Tom Tromey  <tom@tromey.com>
908
909         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
910
911 2018-09-24  Tom Tromey  <tom@tromey.com>
912
913         * common/pathstuff.c (get_standard_cache_dir): Make
914         "xdg_cache_home" and "home" const.
915         * top.c (init_history): Make "tmpenv" const.
916         * main.c (get_init_files): Make "homedir" const.
917
918 2018-09-23  Tom Tromey  <tom@tromey.com>
919
920         PR python/18852:
921         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
922
923 2018-09-23  Tom Tromey  <tom@tromey.com>
924
925         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
926         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
927         * python/python-internal.h (gdbpy_handle_exception): Declare.
928         * python/py-utils.c (gdbpy_handle_exception): New function.
929
930 2018-09-23  Tom Tromey  <tom@tromey.com>
931
932         PR python/17284:
933         * python/py-type.c (typy_template_argument): Check for negative
934         argument number.
935
936 2018-09-23  Tom Tromey  <tom@tromey.com>
937
938         PR python/14062:
939         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
940
941 2018-09-23  Tom Tromey  <tom@tromey.com>
942
943         PR python/18170:
944         * python/py-value.c (valpy_int): Allow conversion from pointer
945         type.
946
947 2018-09-23  Tom Tromey  <tom@tromey.com>
948
949         PR python/20126:
950         * python/py-value.c (valpy_int): Respect type sign.
951
952 2018-09-23  Tom Tromey  <tom@tromey.com>
953
954         PR python/18352;
955         * python/py-value.c (valpy_float): Allow conversions from int or
956         char.
957         (valpy_int, valpy_long): Allow conversions from float.
958
959 2018-09-23  Tom Tromey  <tom@tromey.com>
960
961         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
962         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
963
964 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
965
966         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
967         __sighndlr.
968         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
969
970 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
971
972         * windows-nat.c (windows_nat_target::wait): Remove a spurious
973         target_terminal::ours().
974
975 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
976
977         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
978         of vl to ULONGEST.
979
980 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
981
982         * breakpoint.c (update_inserted_breakpoint_locations): Remove
983         redundant condition.
984
985 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
986
987         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
988
989         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
990         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
991         * sol-thread.c (ps_pdmodel): Don't guard definition.
992
993         * procfs.c: Fix formatting.
994
995         * procfs.c (sysset_t_alloc): Remove.
996         (create_procinfo): Use XNEW instead of sysset_t_alloc.
997         (procfs_debug_inferior): Likewise.
998         (procfs_set_exec_trap): Likewise.
999         (proc_set_traced_sysentry): Don't allocate argp dynamically.
1000         (proc_set_traced_sysexit): Likewise.
1001
1002         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
1003         (dead_procinfo): Likewise.
1004         (proc_warn): Likewise.
1005         (proc_error): Likewise.
1006         (proc_get_LDT_entry): Likewise.
1007         (do_attach): Likewise.
1008         (procfs_target::pid_to_str): Likewise.
1009         (iterate_over_mappings): Likewise.
1010
1011         * procfs.c (create_procinfo): Fix ARI warning.
1012         (proc_get_status): Likewise.
1013         (proc_stop_process): Likewise.
1014         (proc_run_process): Likewise.
1015         (proc_kill): Likewise.
1016         (proc_get_LDT_entry): Likewise.
1017         (procfs_find_LDT_entry): Likewise.
1018         (proc_update_threads): Likewise.
1019         (proc_iterate_over_threads): Likewise.
1020         (do_attach): Likewise.
1021         (procfs_xfer_memory): Likewise.
1022         (invalidate_cache): Likewise.
1023         (procfs_target::resume): Likewise.
1024         (procfs_init_inferior): Likewise.
1025         (procfs_set_exec_trap): Likewise.
1026         (procfs_target::thread_alive): Likewise.
1027         (procfs_target::pid_to_exec_file): Likewise.
1028         (iterate_over_mappings): Likewise.
1029         (procfs_target::make_corefile_notes): Likewise.
1030         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
1031
1032         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
1033         (procfs_find_LDT_entry): Likewise.
1034         * sol-thread.c (ps_lgetLDT): Likewise.
1035
1036 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1037
1038         PR tdep/17903
1039         * procfs.c (procfs_target): Declare pid_to_exec_file.
1040         (procfs_target::pid_to_exec_file): New.
1041
1042 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1043
1044         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
1045         renaming.
1046         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
1047         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
1048
1049 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1050
1051         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
1052         (supply_fpregset, fill_fpregset): Move ...
1053         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
1054         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
1055         Remove references to ioctl-based procfs.
1056         Include <sys/reg.h>.
1057         Remove PR_MODEL_NATIVE guards.
1058         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
1059         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
1060
1061 2018-09-19  Xavier Roirand  <roirand@adacore.com>
1062
1063         PR gdb/20981:
1064         * solib-darwin.c (darwin_get_dyld_bfd): New function.
1065         (darwin_solib_get_all_image_info_addr_at_init): Update call.
1066         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
1067
1068 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
1069
1070         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
1071         (fbsd_print_sockaddr_in6): Likewise.
1072
1073 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
1074             Chris January  <chris.january@arm.com>
1075
1076         * eval.c (skip_undetermined_arglist): Skip argument list helper.
1077         (evaluate_subexp_standard): Return a dummy type when
1078         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
1079         OP_F77_UNDETERMINED_ARGLIST case.
1080         * expression.h (enum noside): Update comment.
1081
1082 2018-09-19  George Vasick <george.vasick@oracle.com>
1083
1084         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
1085
1086 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
1087             April Chin <april.chin@oracle.com>
1088             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1089
1090         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
1091         uint_t lwpid_t.
1092         (create_procinfo): Print pids in /proc without leading zeros.
1093
1094 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
1095
1096         * nios2-tdep.c (nios2_gcc_target_options): New.
1097         (nios2_gdb_arch_init): Install new hook.
1098
1099 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
1100
1101         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
1102         New file.
1103         * update-gnulib.sh: Apply patch.
1104         * configure: Re-generate.
1105
1106 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1107
1108         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
1109         description.  Make "info proc" command descriptions more
1110         consistent.
1111
1112 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1113
1114         * NEWS: Mention 'info proc files' command.
1115
1116 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1117
1118         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
1119         descriptors for IP_FILES and IP_ALL.
1120
1121 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1122
1123         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
1124         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
1125         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
1126         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
1127         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
1128         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
1129         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
1130         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
1131         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
1132         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
1133         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
1134         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
1135         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
1136         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
1137         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
1138         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
1139         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
1140         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
1141         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
1142         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
1143         (struct fbsd_sockaddr_un): New types.
1144         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
1145         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
1146         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
1147         (fbsd_core_info_proc_files): New functions.
1148         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
1149         IP_ALL.
1150         * fbsd-tdep.h (fbsd_info_proc_files_header)
1151         (fbsd_info_proc_files_entry): New.
1152
1153 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1154
1155         * defs.h (enum info_proc_what) [IP_FILES]: New value.
1156         * infcmd.c (info_proc_cmd_files): New function.
1157         (_initialize_infcmd): Register 'info proc files' command.
1158
1159 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1160
1161         * gnulib/aclocal-m4-deps.mk: Re-generate.
1162         * gnulib/aclocal.m4: Re-generate.
1163         * gnulib/config.in: Re-generate.
1164         * gnulib/configure: Re-generate.
1165         * gnulib/import/Makefile.am: Re-generate.
1166         * gnulib/import/Makefile.in: Re-generate.
1167         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
1168         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
1169         * gnulib/import/arpa_inet.in.h: New file.
1170         * gnulib/import/inet_ntop.c: New file.
1171         * gnulib/import/m4/arpa_inet_h.m4: New file.
1172         * gnulib/import/m4/inet_ntop.m4: New file.
1173         * gnulib/import/m4/netinet_in_h.m4: New file.
1174         * gnulib/import/m4/socklen.m4: New file.
1175         * gnulib/import/m4/sockpfaf.m4: New file.
1176         * gnulib/import/m4/stdalign.m4: New file.
1177         * gnulib/import/m4/sys_uio_h.m4: New file.
1178         * gnulib/import/netinet_in.in.h: New file.
1179         * gnulib/import/stdalign.in.h: New file.
1180         * gnulib/import/sys_socket.c: New file.
1181         * gnulib/import/sys_socket.in.h: New file.
1182         * gnulib/import/sys_uio.in.h: New file.
1183         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
1184         module.
1185
1186 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1187
1188         * gnulib/aclocal-m4-deps.mk: New file.
1189         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
1190         deterministically.
1191
1192 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1193
1194         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
1195         KVE_PATH.
1196
1197 2018-09-18  Tom Tromey  <tom@tromey.com>
1198
1199         * compile/compile-object-load.c (struct
1200         link_hash_table_cleanup_data): Add constructor and destructor.
1201         Use DISABLE_COPY_AND_ASSIGN.
1202         (~link_hash_table_cleanup_data): Rename from
1203         link_hash_table_free.  Now a destructor.
1204         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
1205
1206 2018-09-18  Tom Tromey  <tom@tromey.com>
1207
1208         * compile/compile-object-run.c (do_module_cleanup): Use delete.
1209         * compile/compile-object-load.c (struct munmap_list): Move to
1210         header file.
1211         (munmap_list::add): Rename from munmap_list_add; rewrite.
1212         (munmap_list::~munmap_list): Rename from munmap_list_free.
1213         (munmap_listp_free_cleanup): Remove.
1214         (compile_object_load): Update.
1215         * compile/compile-object-load.h (struct munmap_list): Move from
1216         compile-object-load.c.  Rewrite.
1217
1218 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
1219
1220         * aarch64-tdep.c (pass_in_v): Use register size.
1221         (aarch64_extract_return_value): Likewise.
1222         (aarch64_store_return_value): Likewise.
1223
1224 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1225
1226         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
1227         rlim_t.
1228
1229 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1230
1231         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
1232         Fix short help line.
1233
1234 2018-09-17  Tom Tromey  <tom@tromey.com>
1235
1236         PR python/20445:
1237         * configure: Rebuild.
1238         * configure.ac: Conditionally use -DNDEBUG for Python.
1239
1240 2018-09-17  Tom Tromey  <tom@tromey.com>
1241
1242         * configure: Rebuild.
1243         * configure.ac: Use gmp as a library dependency when checking for
1244         mpfr.
1245
1246 2018-09-17  Pedro Alves  <palves@redhat.com>
1247
1248         * python/py-inferior.c (find_inferior_object): Delete.
1249
1250 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
1251
1252         * compile/compile-cplus-types.c
1253         (compile_cplus_instance::enter_scope): Don't use new_scope after
1254         std::move.
1255
1256 2018-09-17  Tom Tromey  <tom@tromey.com>
1257
1258         * common/pathstuff.c (get_standard_cache_dir): Use
1259         ~/Library/Caches on macOS.
1260         * common/pathstuff.h (get_standard_cache_dir): Update comment.
1261
1262 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
1263
1264         PR python/23669
1265         * breakpoint.c (commands_cmd_element): New.
1266         (_initialize_breakpoint): Assign commands_cmd_element.
1267         * breakpoint.h (commands_cmd_element): New.
1268         * cli/cli-script.c (while_cmd_element, if_command,
1269         define_cmd_element): New.
1270         (command_name_equals): Remove.
1271         (process_next_line): Compare commands by pointer, not by name.
1272         (_initialize_cli_script): Assign the various cmd_list_element
1273         variables.
1274         * compile/compile.c (compile_cmd_element): New.
1275         (_initialize_compile): Assign compile_cmd_element.
1276         * compile/compile.h (compile_cmd_element): New.
1277         * guile/guile.c (guile_cmd_element): New.
1278         (install_gdb_commands): Assign guile_cmd_element.
1279         * guile/guile.h (guile_cmd_element): New.
1280         * python/python.c (python_cmd_element): New.
1281         (_initialize_python): Assign python_cmd_element.
1282         * python/python.h (python_cmd_element): New.
1283         * tracepoint.c (while_stepping_cmd_element): New.
1284         (_initialize_tracepoint): Assign while_stepping_cmd_element.
1285         * tracepoint.h (while_stepping_cmd_element): New.
1286
1287 2018-09-17  Tom Tromey  <tom@tromey.com>
1288
1289         * infrun.c (save_infcall_suspend_state): Return
1290         infcall_suspend_state_up.
1291         (save_infcall_control_state): Return infcall_control_state_up.
1292         * inferior.h (save_infcall_suspend_state)
1293         (save_infcall_control_state): Declare later.  Return unique
1294         pointers.
1295
1296 2018-09-17  Tom Tromey  <tom@tromey.com>
1297
1298         * infrun.c (struct stop_context): Declare constructor,
1299         destructor, "changed" method.
1300         (stop_context::stop_context): Rename from save_stop_context.
1301         (stop_context::~stop_context): Rename from
1302         release_stop_context_cleanup.
1303         (normal_stop): Update.
1304         (stop_context::changed): Rename from stop_context_changed.  Return
1305         bool.
1306
1307 2018-09-17  Tom Tromey  <tom@tromey.com>
1308
1309         * inferior.h (struct infcall_suspend_state_deleter): New.
1310         (infcall_suspend_state_up): New typedef.
1311         (struct infcall_control_state_deleter): New.
1312         (infcall_control_state_up): New typedef.
1313         (make_cleanup_restore_infcall_suspend_state)
1314         (make_cleanup_restore_infcall_control_state): Don't declare.
1315         * infcall.c (call_function_by_hand_dummy): Update.
1316         * infrun.c (do_restore_infcall_suspend_state_cleanup)
1317         (make_cleanup_restore_infcall_suspend_state): Remove.
1318         (do_restore_infcall_control_state_cleanup)
1319         (make_cleanup_restore_infcall_control_state): Remove.
1320
1321 2018-09-17  Tom Tromey  <tom@tromey.com>
1322
1323         * gdbthread.h (struct thread_control_state): Add initializer.
1324         (class thread_info) <control>: Remove initializer.
1325         * inferior.h (struct inferior_control_state): Add initializer.
1326         (class inferior) <control>: Remove initializer.
1327         (exit_inferior_1): Update.
1328         * infrun.c (struct infcall_control_state): Add constructors.
1329         (save_infcall_control_state): Use new.
1330         (restore_infcall_control_state, discard_infcall_control_state):
1331         Use delete.
1332
1333 2018-09-17  Tom Tromey  <tom@tromey.com>
1334
1335         * infrun.c (struct infcall_suspend_state) <registers>: Now a
1336         unique_ptr.
1337         <siginfo_data>: Now a unique_xmalloc_ptr.
1338         (save_infcall_suspend_state, restore_infcall_suspend_state)
1339         (discard_infcall_suspend_state)
1340         (get_infcall_suspend_state_regcache): Update.
1341
1342 2018-09-17  Tom Tromey  <tom@tromey.com>
1343
1344         * gdbthread.h (struct thread_suspend_state): Add initializers.
1345         (class thread_info) <suspend>: Remove initializer.
1346         * infrun.c (struct infcall_suspend_state): Add initializers.
1347         (save_infcall_suspend_state): Use new.
1348         (discard_infcall_suspend_state): Use delete.
1349
1350 2018-09-16  Tom Tromey  <tom@tromey.com>
1351
1352         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
1353         Remove.
1354         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
1355         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
1356         (py_varobj_iter_new): Likewise.
1357         (py_varobj_get_iterator): Use gdbpy_ref.
1358
1359 2018-09-16  Tom Tromey  <tom@tromey.com>
1360
1361         * python/py-threadevent.c (py_get_event_thread): Simplify.
1362         * python/py-inferior.c (infpy_thread_from_thread_handle):
1363         Return immediately after calling thread_to_thread_object.  Use
1364         Py_RETURN_NONE.
1365         (thread_to_thread_object): Set the exception on a NULL return.
1366
1367 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
1368
1369         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
1370
1371 2018-09-16  Tom Tromey  <tom@tromey.com>
1372
1373         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
1374         Remove.
1375
1376 2018-09-16  Tom Tromey  <tom@tromey.com>
1377
1378         * python/python-internal.h (thread_to_thread_object): Change
1379         return type.
1380         * python/py-inferior.c (thread_to_thread_object): Return a new
1381         reference.
1382         (infpy_thread_from_thread_handle): Update.
1383         * python/py-infthread.c (gdbpy_selected_thread): Update.
1384         * python/py-stopevent.c (create_stop_event_object): Update.
1385         * python/py-threadevent.c (py_get_event_thread): Return a new
1386         reference.
1387         (py_get_event_thread): Update.
1388         * python/py-event.h (py_get_event_thread): Change return type.
1389         * python/py-continueevent.c (create_continue_event_object):
1390         Update.
1391
1392 2018-09-16  Tom Tromey  <tom@tromey.com>
1393
1394         * python/py-progspace.c (pspy_get_objfiles): Update.
1395         * python/python-internal.h (objfile_to_objfile_object): Change
1396         return type.
1397         * python/py-newobjfileevent.c (create_new_objfile_event_object):
1398         Update.
1399         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1400         Update.
1401         * python/python.c (gdbpy_get_current_objfile): Update.
1402         (gdbpy_objfiles): Update.
1403         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
1404         Update.
1405         (objfile_to_objfile_object): Return a new reference.
1406         * python/py-symtab.c (stpy_get_objfile): Update.
1407         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
1408         Update.
1409
1410 2018-09-16  Tom Tromey  <tom@tromey.com>
1411
1412         * python/py-inferior.c (infpy_get_progspace): Update.
1413         * python/python-internal.h (pspace_to_pspace_object): Change
1414         return type.
1415         * python/py-newobjfileevent.c
1416         (create_clear_objfiles_event_object): Update.
1417         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1418         Update.
1419         * python/python.c (gdbpy_get_current_progspace): Update.
1420         (gdbpy_progspaces): Update.
1421         * python/py-progspace.c (pspace_to_pspace_object): Return a new
1422         reference.
1423         * python/py-objfile.c (objfpy_get_progspace): Update.
1424         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
1425         Update.
1426
1427 2018-09-16  Tom Tromey  <tom@tromey.com>
1428
1429         * python/lib/gdb/__init__.py (current_progspace, objfiles)
1430         (solib_name, block_for_pc, find_pc_line): New functions.
1431         (execute_unwinders): Update.
1432         * python/py-block.c (gdbpy_block_for_pc): Remove.
1433         * python/py-inferior.c (infpy_get_progspace): New function.
1434         (inferior_object_getset) <progspace>: Add.
1435         * python/py-progspace.c (pspy_objfiles): Rewrite.
1436         (pspy_solib_name, pspy_block_for_pc)
1437         (pspy_find_pc_line, pspy_is_valid): New functions.
1438         (progspace_object_methods): Add entries for solib_name,
1439         block_for_pc, find_pc_line, is_valid.
1440         * python/python-internal.h (gdbpy_block_for_pc)
1441         (build_objfiles_list): Don't declare.
1442         * python/python.c: Don't include solib.h.
1443         (gdbpy_solib_name, gdbpy_find_pc_line)
1444         (gdbpy_get_current_progspace, build_objfiles_list)
1445         (gdbpy_objfiles): Remove.
1446         (GdbMethods) <current_progspace, objfiles, block_for_pc,
1447         solib_name, find_pc_line>: Remove entries.
1448
1449 2018-09-16  Tom Tromey  <tom@tromey.com>
1450
1451         * top.c (new_ui_command): Use GNU style for metasyntactic
1452         variables.
1453         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
1454         variables.
1455         * maint.c (maintenance_translate_address): Remove "<>" around
1456         text.
1457         * interps.c (interpreter_exec_cmd): Use GNU style for
1458         metasyntactic variables.
1459         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
1460         metasyntactic variables.
1461         * tracepoint.c (tfind_range_command): Use GNU style for
1462         metasyntactic variables.
1463         (tfind_outside_command): Likewise.
1464         (_initialize_tracepoint): Likewise.
1465         * remote.c (extended_remote_target::create_inferior): Use GNU
1466         style for metasyntactic variables.
1467         * sparc64-tdep.c (adi_examine_command): Use GNU style for
1468         metasyntactic variables.
1469         (adi_assign_command): Likewise.
1470
1471 2018-09-16  Tom Tromey  <tom@tromey.com>
1472
1473         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
1474         metasyntactic variables.  Print message if no disassembler options
1475         are available.
1476
1477 2018-09-15  Tom Tromey  <tom@tromey.com>
1478
1479         * infcmd.c (get_inferior_args): Return const char *.
1480         * inferior.h (get_inferior_args): Return type now const.
1481         * linux-tdep.c (linux_fill_prpsinfo): Update.
1482         * procfs.c (procfs_target::make_corefile_notes): Update.
1483
1484 2018-09-07  Tom Tromey  <tom@tromey.com>
1485
1486         * python/python.c (execute_gdb_command): Call bpstat_do_actions
1487         inside the TRY.
1488
1489 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
1490
1491         * nios2-tdep.c (nios2_type_align): New.
1492         (nios2_gdb_arch_init): Install type_align hook.
1493
1494 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
1495
1496         * eval.c (fake_method::fake_method): Call xzalloc directly for a
1497         type that is neither object file owned, nor gdbarch owned.
1498         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
1499         gdbarch is non-NULL.
1500         (alloc_type_instance): Allocate non-objfile owned types on the
1501         gdbarch obstack.
1502         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
1503         using TYPE_ALLOC to ensure memory is allocated on the correct
1504         obstack.
1505         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
1506         obstack, or the gdbarch obstack.
1507         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
1508
1509 2018-09-14  Tom Tromey  <tom@tromey.com>
1510
1511         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
1512         block.
1513
1514 2018-09-14  Tom Tromey  <tom@tromey.com>
1515
1516         * nat/fork-inferior.c (get_startup_shell): Remove "static".
1517
1518 2018-09-13  Tom Tromey  <tom@tromey.com>
1519
1520         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
1521         static.
1522
1523 2018-09-13  Tom Tromey  <tom@tromey.com>
1524
1525         * exec.c (try_open_exec_file): Use std::string.
1526
1527 2018-09-13  Tom Tromey  <tom@tromey.com>
1528
1529         * utils.h (gdb_bfd_errmsg): Return std::string.
1530         * exec.c (exec_file_attach): Update.
1531         * compile/compile-object-load.c (compile_object_load): Update.
1532         * utils.c (gdb_bfd_errmsg): Return std::string.
1533
1534 2018-09-13  Tom Tromey  <tom@tromey.com>
1535
1536         * procfs.c (struct procinfo_deleter): New.
1537         (procinfo_up): New typedef.
1538         (do_destroy_procinfo_cleanup): Remove.
1539         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
1540
1541 2018-09-13  Tom Tromey  <tom@tromey.com>
1542
1543         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
1544
1545 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1546 2018-09-13  Tom Tromey  <tom@tromey.com>
1547
1548         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
1549         (pspy_get_objfiles): New function.
1550         (progspace_object_methods): New.
1551         (pspace_object_type): Add tp_methods callback.
1552         * python/python-internal.h (build_objfiles_list): New
1553         declaration.
1554         * python/python.c (build_objfiles_list): New function.
1555         (gdbpy_objfiles): Implement using build_objfiles_list.
1556         * NEWS: Mention the Progspace.objfiles method.
1557
1558 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1559
1560         * python/py-inferior.c (infpy_get_progspace): New function.
1561         (inferior_object_getset): Add progspace property.
1562         * NEWS: Mention the new property.
1563
1564 2018-09-13  Tom Tromey  <tom@tromey.com>
1565
1566         PR rust/23650:
1567         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
1568
1569 2018-09-13  Tom Tromey  <tom@tromey.com>
1570
1571         PR rust/23626:
1572         * rust-lang.c (rust_enum_variant): Now static.
1573         (rust_empty_enum_p): New function.
1574         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
1575         Handle empty enum.
1576
1577 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1578
1579         * python/py-inferior.c (infpy_repr): New.
1580         (inferior_object_type): Register infpy_repr.
1581         * python/py-objfile.c (objfpy_repr): New.
1582         (objfile_object_type): Register objfpy_repr.
1583
1584 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
1585
1586         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
1587
1588 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
1589
1590         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
1591         typo.
1592
1593 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
1594
1595         * common/common-utils.c: Don't include '<sys/stat.h>'.
1596         (is_regular_file): Move to...
1597         * common/filestuff.c (is_regular_file): ... here.
1598         * common/common-utils.h (is_regular_file): Move to...
1599         * common/filestuff.h (is_regular_file): ... here.
1600
1601 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
1602
1603         * skip.c (debug_skip): New variable.
1604         (skiplist_entry::do_skip_file_p): Add debug output.
1605         (skiplist_entry::do_skip_gfile_p): Likewise.
1606         (skiplist_entry::skip_function_p): Likewise.
1607         (_initialize_step_skip): Create debug command.
1608         * NEWS: Mention set/show debug skip.
1609
1610 2018-09-11  Xavier Roirand  <roirand@adacore.com>
1611
1612         * darwin-nat.c (should_disable_startup_with_shell):
1613         New function.
1614         (darwin_nat_target::create_inferior): Add call.
1615
1616 2018-09-11  Xavier Roirand  <roirand@adacore.com>
1617
1618         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
1619         inf_port, msg_state>: Initialize.
1620         (struct darwin_thread_info) <signaled, single_step>: Change
1621         type and initialize.
1622         (struct darwin_thread_info) <event>: Initialize.
1623
1624 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
1625
1626         PR gdb/23555
1627         PR gdb/23558
1628         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
1629         guesses.
1630
1631 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
1632
1633         Revert:
1634         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
1635
1636         PR gdb/23555
1637         PR gdb/23558
1638         * gnulib/aclocal.m4: Regenerate.
1639         * gnulib/config.in: Regenerate.
1640         * gnulib/configure: Regenerate.
1641         * gnulib/import/Makefile.am: Update.
1642         * gnulib/import/Makefile.in: Update.
1643         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
1644         * gnulib/import/_Noreturn.h: ... this.
1645         * gnulib/import/alloca.in.h: Update.
1646         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
1647         * gnulib/import/arg-nonnull.h: ... this.
1648         * gnulib/import/assure.h: Update.
1649         * gnulib/import/at-func.c: Update.
1650         * gnulib/import/basename-lgpl.c: Update.
1651         * gnulib/import/extra/snippet/c++defs.h: Rename to...
1652         * gnulib/import/c++defs.h: ... this.
1653         * gnulib/import/canonicalize-lgpl.c: Update.
1654         * gnulib/import/cdefs.h: Update.
1655         * gnulib/import/chdir-long.c: Update.
1656         * gnulib/import/chdir-long.h: Update.
1657         * gnulib/import/cloexec.c: Update.
1658         * gnulib/import/cloexec.h: Update.
1659         * gnulib/import/close.c: Update.
1660         * gnulib/import/closedir.c: Update.
1661         * gnulib/import/config.charset: Update.
1662         * gnulib/import/dirent-private.h: Update.
1663         * gnulib/import/dirent.in.h: Update.
1664         * gnulib/import/dirfd.c: Update.
1665         * gnulib/import/dirname-lgpl.c: Update.
1666         * gnulib/import/dirname.h: Update.
1667         * gnulib/import/dosname.h: Update.
1668         * gnulib/import/dup-safer-flag.c: Update.
1669         * gnulib/import/dup-safer.c: Update.
1670         * gnulib/import/dup.c: Update.
1671         * gnulib/import/dup2.c: Update.
1672         * gnulib/import/errno.in.h: Update.
1673         * gnulib/import/error.c: Update.
1674         * gnulib/import/error.h: Update.
1675         * gnulib/import/exitfail.c: Update.
1676         * gnulib/import/exitfail.h: Update.
1677         * gnulib/import/extra/update-copyright: Update.
1678         * gnulib/import/fchdir.c: Update.
1679         * gnulib/import/fcntl.c: Update.
1680         * gnulib/import/fcntl.in.h: Update.
1681         * gnulib/import/fd-hook.c: Update.
1682         * gnulib/import/fd-hook.h: Update.
1683         * gnulib/import/fd-safer-flag.c: Update.
1684         * gnulib/import/fd-safer.c: Update.
1685         * gnulib/import/fdopendir.c: Update.
1686         * gnulib/import/filename.h: Update.
1687         * gnulib/import/filenamecat-lgpl.c: Update.
1688         * gnulib/import/filenamecat.h: Update.
1689         * gnulib/import/flexmember.h: Update.
1690         * gnulib/import/float+.h: Update.
1691         * gnulib/import/float.c: Update.
1692         * gnulib/import/float.in.h: Update.
1693         * gnulib/import/fnmatch.c: Update.
1694         * gnulib/import/fnmatch.in.h: Update.
1695         * gnulib/import/fnmatch_loop.c: Update.
1696         * gnulib/import/fpucw.h: Update.
1697         * gnulib/import/frexp.c: Update.
1698         * gnulib/import/frexpl.c: Update.
1699         * gnulib/import/fstat.c: Update.
1700         * gnulib/import/fstatat.c: Update.
1701         * gnulib/import/getcwd-lgpl.c: Update.
1702         * gnulib/import/getcwd.c: Update.
1703         * gnulib/import/getdtablesize.c: Update.
1704         * gnulib/import/getlogin_r.c: Update.
1705         * gnulib/import/getprogname.c: Update.
1706         * gnulib/import/getprogname.h: Update.
1707         * gnulib/import/gettext.h: Update.
1708         * gnulib/import/gettimeofday.c: Update.
1709         * gnulib/import/glob-libc.h: Update.
1710         * gnulib/import/glob.c: Update.
1711         * gnulib/import/glob.in.h: Update.
1712         * gnulib/import/glob_internal.h: Update.
1713         * gnulib/import/glob_pattern_p.c: Update.
1714         * gnulib/import/globfree.c: Update.
1715         * gnulib/import/hard-locale.c: Update.
1716         * gnulib/import/hard-locale.h: Update.
1717         * gnulib/import/intprops.h: Update.
1718         * gnulib/import/inttypes.in.h: Update.
1719         * gnulib/import/isnan.c: Update.
1720         * gnulib/import/isnand-nolibm.h: Update.
1721         * gnulib/import/isnand.c: Update.
1722         * gnulib/import/isnanl-nolibm.h: Update.
1723         * gnulib/import/isnanl.c: Update.
1724         * gnulib/import/itold.c: Update.
1725         * gnulib/import/libc-config.h: Update.
1726         * gnulib/import/limits.in.h: Update.
1727         * gnulib/import/localcharset.c: Update.
1728         * gnulib/import/localcharset.h: Update.
1729         * gnulib/import/localtime-buffer.c: Update.
1730         * gnulib/import/localtime-buffer.h: Update.
1731         * gnulib/import/lstat.c: Update.
1732         * gnulib/import/m4/00gnulib.m4: Update.
1733         * gnulib/import/m4/__inline.m4: Update.
1734         * gnulib/import/m4/absolute-header.m4: Update.
1735         * gnulib/import/m4/alloca.m4: Update.
1736         * gnulib/import/m4/builtin-expect.m4: Update.
1737         * gnulib/import/m4/canonicalize.m4: Update.
1738         * gnulib/import/m4/chdir-long.m4: Update.
1739         * gnulib/import/m4/close.m4: Update.
1740         * gnulib/import/m4/closedir.m4: Update.
1741         * gnulib/import/m4/configmake.m4: Update.
1742         * gnulib/import/m4/d-ino.m4: Update.
1743         * gnulib/import/m4/d-type.m4: Update.
1744         * gnulib/import/m4/dirent_h.m4: Update.
1745         * gnulib/import/m4/dirfd.m4: Update.
1746         * gnulib/import/m4/dirname.m4: Update.
1747         * gnulib/import/m4/double-slash-root.m4: Update.
1748         * gnulib/import/m4/dup.m4: Update.
1749         * gnulib/import/m4/dup2.m4: Update.
1750         * gnulib/import/m4/eealloc.m4: Update.
1751         * gnulib/import/m4/environ.m4: Update.
1752         * gnulib/import/m4/errno_h.m4: Update.
1753         * gnulib/import/m4/error.m4: Update.
1754         * gnulib/import/m4/exponentd.m4: Update.
1755         * gnulib/import/m4/exponentl.m4: Update.
1756         * gnulib/import/m4/extensions.m4: Update.
1757         * gnulib/import/m4/extern-inline.m4: Update.
1758         * gnulib/import/m4/fchdir.m4: Update.
1759         * gnulib/import/m4/fcntl-o.m4: Update.
1760         * gnulib/import/m4/fcntl.m4: Update.
1761         * gnulib/import/m4/fcntl_h.m4: Update.
1762         * gnulib/import/m4/fdopendir.m4: Update.
1763         * gnulib/import/m4/filenamecat.m4: Update.
1764         * gnulib/import/m4/flexmember.m4: Update.
1765         * gnulib/import/m4/float_h.m4: Update.
1766         * gnulib/import/m4/fnmatch.m4: Update.
1767         * gnulib/import/m4/fnmatch_h.m4: Update.
1768         * gnulib/import/m4/fpieee.m4: Update.
1769         * gnulib/import/m4/frexp.m4: Update.
1770         * gnulib/import/m4/frexpl.m4: Update.
1771         * gnulib/import/m4/fstat.m4: Update.
1772         * gnulib/import/m4/fstatat.m4: Update.
1773         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
1774         * gnulib/import/m4/getcwd-path-max.m4: Update.
1775         * gnulib/import/m4/getcwd.m4: Update.
1776         * gnulib/import/m4/getdtablesize.m4: Update.
1777         * gnulib/import/m4/getlogin.m4: Update.
1778         * gnulib/import/m4/getlogin_r.m4: Update.
1779         * gnulib/import/m4/getpagesize.m4: Update.
1780         * gnulib/import/m4/getprogname.m4: Update.
1781         * gnulib/import/m4/gettimeofday.m4: Update.
1782         * gnulib/import/m4/glibc21.m4: Update.
1783         * gnulib/import/m4/glob.m4: Update.
1784         * gnulib/import/m4/glob_h.m4: Update.
1785         * gnulib/import/m4/gnulib-cache.m4: Update.
1786         * gnulib/import/m4/gnulib-common.m4: Update.
1787         * gnulib/import/m4/gnulib-comp.m4: Update.
1788         * gnulib/import/m4/gnulib-tool.m4: Update.
1789         * gnulib/import/m4/hard-locale.m4: Update.
1790         * gnulib/import/m4/include_next.m4: Update.
1791         * gnulib/import/m4/inttypes-pri.m4: Update.
1792         * gnulib/import/m4/inttypes.m4: Update.
1793         * gnulib/import/m4/isnand.m4: Update.
1794         * gnulib/import/m4/isnanl.m4: Update.
1795         * gnulib/import/m4/largefile.m4: Update.
1796         * gnulib/import/m4/limits-h.m4: Update.
1797         * gnulib/import/m4/localcharset.m4: Update.
1798         * gnulib/import/m4/locale-fr.m4: Update.
1799         * gnulib/import/m4/locale-ja.m4: Update.
1800         * gnulib/import/m4/locale-zh.m4: Update.
1801         * gnulib/import/m4/localtime-buffer.m4: Update.
1802         * gnulib/import/m4/longlong.m4: Update.
1803         * gnulib/import/m4/lstat.m4: Update.
1804         * gnulib/import/m4/malloc.m4: Update.
1805         * gnulib/import/m4/malloca.m4: Update.
1806         * gnulib/import/m4/math_h.m4: Update.
1807         * gnulib/import/m4/mbrtowc.m4: Update.
1808         * gnulib/import/m4/mbsinit.m4: Update.
1809         * gnulib/import/m4/mbsrtowcs.m4: Update.
1810         * gnulib/import/m4/mbstate_t.m4: Update.
1811         * gnulib/import/m4/memchr.m4: Update.
1812         * gnulib/import/m4/memmem.m4: Update.
1813         * gnulib/import/m4/mempcpy.m4: Update.
1814         * gnulib/import/m4/memrchr.m4: Update.
1815         * gnulib/import/m4/mkdir.m4: Update.
1816         * gnulib/import/m4/mkstemp.m4: Update.
1817         * gnulib/import/m4/mmap-anon.m4: Update.
1818         * gnulib/import/m4/mode_t.m4: Update.
1819         * gnulib/import/m4/msvc-inval.m4: Update.
1820         * gnulib/import/m4/msvc-nothrow.m4: Update.
1821         * gnulib/import/m4/multiarch.m4: Update.
1822         * gnulib/import/m4/nocrash.m4: Update.
1823         * gnulib/import/m4/off_t.m4: Update.
1824         * gnulib/import/m4/onceonly.m4: Update.
1825         * gnulib/import/m4/open-cloexec.m4: Update.
1826         * gnulib/import/m4/open.m4: Update.
1827         * gnulib/import/m4/openat.m4: Update.
1828         * gnulib/import/m4/opendir.m4: Update.
1829         * gnulib/import/m4/pathmax.m4: Update.
1830         * gnulib/import/m4/rawmemchr.m4: Update.
1831         * gnulib/import/m4/readdir.m4: Update.
1832         * gnulib/import/m4/readlink.m4: Update.
1833         * gnulib/import/m4/realloc.m4: Update.
1834         * gnulib/import/m4/rename.m4: Update.
1835         * gnulib/import/m4/rewinddir.m4: Update.
1836         * gnulib/import/m4/rmdir.m4: Update.
1837         * gnulib/import/m4/save-cwd.m4: Update.
1838         * gnulib/import/m4/secure_getenv.m4: Update.
1839         * gnulib/import/m4/setenv.m4: Update.
1840         * gnulib/import/m4/signal_h.m4: Update.
1841         * gnulib/import/m4/ssize_t.m4: Update.
1842         * gnulib/import/m4/stat-time.m4: Update.
1843         * gnulib/import/m4/stat.m4: Update.
1844         * gnulib/import/m4/std-gnu11.m4: Update.
1845         * gnulib/import/m4/stdbool.m4: Update.
1846         * gnulib/import/m4/stddef_h.m4: Update.
1847         * gnulib/import/m4/stdint.m4: Update.
1848         * gnulib/import/m4/stdio_h.m4: Update.
1849         * gnulib/import/m4/stdlib_h.m4: Update.
1850         * gnulib/import/m4/strchrnul.m4: Update.
1851         * gnulib/import/m4/strdup.m4: Update.
1852         * gnulib/import/m4/strerror.m4: Update.
1853         * gnulib/import/m4/string_h.m4: Update.
1854         * gnulib/import/m4/strstr.m4: Update.
1855         * gnulib/import/m4/strtok_r.m4: Update.
1856         * gnulib/import/m4/sys_socket_h.m4: Update.
1857         * gnulib/import/m4/sys_stat_h.m4: Update.
1858         * gnulib/import/m4/sys_time_h.m4: Update.
1859         * gnulib/import/m4/sys_types_h.m4: Update.
1860         * gnulib/import/m4/tempname.m4: Update.
1861         * gnulib/import/m4/time_h.m4: Update.
1862         * gnulib/import/m4/unistd-safer.m4: Update.
1863         * gnulib/import/m4/unistd_h.m4: Update.
1864         * gnulib/import/m4/warn-on-use.m4: Update.
1865         * gnulib/import/m4/wchar_h.m4: Update.
1866         * gnulib/import/m4/wchar_t.m4: Update.
1867         * gnulib/import/m4/wctype_h.m4: Update.
1868         * gnulib/import/m4/wint_t.m4: Update.
1869         * gnulib/import/malloc.c: Update.
1870         * gnulib/import/malloc/scratch_buffer.h: Update.
1871         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
1872         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
1873         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
1874         * gnulib/import/malloca.c: Update.
1875         * gnulib/import/malloca.h: Update.
1876         * gnulib/import/malloca.valgrind: Update.
1877         * gnulib/import/math.in.h: Update.
1878         * gnulib/import/mbrtowc.c: Update.
1879         * gnulib/import/mbsinit.c: Update.
1880         * gnulib/import/mbsrtowcs-impl.h: Update.
1881         * gnulib/import/mbsrtowcs-state.c: Update.
1882         * gnulib/import/mbsrtowcs.c: Update.
1883         * gnulib/import/memchr.c: Update.
1884         * gnulib/import/memmem.c: Update.
1885         * gnulib/import/mempcpy.c: Update.
1886         * gnulib/import/memrchr.c: Update.
1887         * gnulib/import/mkdir.c: Update.
1888         * gnulib/import/mkstemp.c: Update.
1889         * gnulib/import/msvc-inval.c: Update.
1890         * gnulib/import/msvc-inval.h: Update.
1891         * gnulib/import/msvc-nothrow.c: Update.
1892         * gnulib/import/msvc-nothrow.h: Update.
1893         * gnulib/import/open.c: Update.
1894         * gnulib/import/openat-die.c: Update.
1895         * gnulib/import/openat-priv.h: Update.
1896         * gnulib/import/openat-proc.c: Update.
1897         * gnulib/import/openat.c: Update.
1898         * gnulib/import/openat.h: Update.
1899         * gnulib/import/opendir.c: Update.
1900         * gnulib/import/pathmax.h: Update.
1901         * gnulib/import/pipe-safer.c: Update.
1902         * gnulib/import/rawmemchr.c: Update.
1903         * gnulib/import/readdir.c: Update.
1904         * gnulib/import/readlink.c: Update.
1905         * gnulib/import/realloc.c: Update.
1906         * gnulib/import/ref-add.sin: Update.
1907         * gnulib/import/ref-del.sin: Update.
1908         * gnulib/import/rename.c: Update.
1909         * gnulib/import/rewinddir.c: Update.
1910         * gnulib/import/rmdir.c: Update.
1911         * gnulib/import/same-inode.h: Update.
1912         * gnulib/import/save-cwd.c: Update.
1913         * gnulib/import/save-cwd.h: Update.
1914         * gnulib/import/scratch_buffer.h: Update.
1915         * gnulib/import/secure_getenv.c: Update.
1916         * gnulib/import/setenv.c: Update.
1917         * gnulib/import/signal.in.h: Update.
1918         * gnulib/import/stat-time.c: Update.
1919         * gnulib/import/stat-time.h: Update.
1920         * gnulib/import/stat-w32.c: Update.
1921         * gnulib/import/stat-w32.h: Update.
1922         * gnulib/import/stat.c: Update.
1923         * gnulib/import/stdbool.in.h: Update.
1924         * gnulib/import/stddef.in.h: Update.
1925         * gnulib/import/stdint.in.h: Update.
1926         * gnulib/import/stdio.in.h: Update.
1927         * gnulib/import/stdlib.in.h: Update.
1928         * gnulib/import/str-two-way.h: Update.
1929         * gnulib/import/strchrnul.c: Update.
1930         * gnulib/import/strdup.c: Update.
1931         * gnulib/import/streq.h: Update.
1932         * gnulib/import/strerror-override.c: Update.
1933         * gnulib/import/strerror-override.h: Update.
1934         * gnulib/import/strerror.c: Update.
1935         * gnulib/import/string.in.h: Update.
1936         * gnulib/import/stripslash.c: Update.
1937         * gnulib/import/strnlen1.c: Update.
1938         * gnulib/import/strnlen1.h: Update.
1939         * gnulib/import/strstr.c: Update.
1940         * gnulib/import/strtok_r.c: Update.
1941         * gnulib/import/sys_stat.in.h: Update.
1942         * gnulib/import/sys_time.in.h: Update.
1943         * gnulib/import/sys_types.in.h: Update.
1944         * gnulib/import/tempname.c: Update.
1945         * gnulib/import/tempname.h: Update.
1946         * gnulib/import/time.in.h: Update.
1947         * gnulib/import/unistd--.h: Update.
1948         * gnulib/import/unistd-safer.h: Update.
1949         * gnulib/import/unistd.in.h: Update.
1950         * gnulib/import/unsetenv.c: Update.
1951         * gnulib/import/verify.h: Update.
1952         * gnulib/import/extra/snippet/warn-on-use.h: Update.
1953         * gnulib/import/wchar.in.h: Update.
1954         * gnulib/import/wctype.in.h: Update.
1955         * gnulib/import/xalloc-oversized.h: Update.
1956         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
1957         "53e2c179f26a890fa6685af4b6c1397ee370433b".
1958
1959 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
1960
1961         * record-btrace.c (get_thread_current_frame): Remove
1962         old_inferior_ptid.
1963
1964 2018-09-10  Jerome Guitton  <guitton@adacore.com>
1965
1966         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
1967         with check_tag to 1 if and only if the type is tagged and the
1968         component being searched cannot been found in the current
1969         view. Otherwise, always call ada_to_fixed_type with
1970         check_tag to 0.
1971
1972 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1973
1974         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
1975         declaration.
1976         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
1977         * ada-varobj.c (ada_varobj_get_number_of_children,
1978         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
1979
1980 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1981
1982         * ada-valprint.c (ada_value_print): Use type instead of
1983         enclosing type.
1984
1985 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1986
1987         * ada-lang.c (ada_value_subscript): Handle case when parameter is
1988         an array of access to unconstrained array.
1989
1990 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1991
1992         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
1993         (ada_check_typedef): Use it.
1994
1995 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1996
1997         * ada-varobj.c (ada_varobj_describe_struct_child)
1998         (ada_varobj_describe_child): Handle union case like struct one.
1999
2000 2018-09-10  Tom Tromey  <tom@tromey.com>
2001
2002         PR python/18380:
2003         * python/python.c (_initialize_python): Make example in "python"
2004         help work in Python 3.
2005
2006 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
2007
2008         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
2009         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
2010         $(EXEEXT) to the script, as it is not a program.
2011
2012 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
2013
2014         * python/py-prettyprint.c (pretty_print_one_value): Return
2015         gdbpy_ref<>.
2016         (print_string_repr): Adjust.
2017         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
2018         * python/python-internal.h (apply_varobj_pretty_printer): Return
2019         gdbpy_ref<>.
2020         * varobj.c (varobj_value_get_print_value): Adjust.
2021
2022 2018-09-08  Tom Tromey  <tom@tromey.com>
2023
2024         PR python/16047:
2025         * python/py-prettyprint.c (pretty_print_one_value): Check for
2026         to_string method.
2027
2028 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2029
2030         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
2031         replace_operator_with_call.
2032
2033 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2034
2035         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
2036
2037 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2038
2039         * ada-typeprint.c (print_range): Print the bounds using TYPE
2040         rather than its TYPE_TARGET_TYPE.
2041
2042 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2043
2044         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
2045         call to ada_to_fixed_value_create.
2046
2047 2018-09-08  Jerome Guitton  <guitton@adacore.com>
2048
2049         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
2050
2051 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2052
2053         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
2054         by calls to error.
2055
2056 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2057
2058         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
2059         Move update of loop variable "fi".
2060
2061 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2062
2063         * ada-lang.c (value_assign_to_component): In the case of
2064         big-endian targets, extract the bits of the given VAL
2065         using an src_offset of zero if container is not a scalar.
2066
2067 2018-09-06  Simon Ser  <contact@emersion.fr>
2068
2069         PR gdb/23105
2070         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
2071         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2072         * fbsd-tdep.c (fbsd_make_note_desc): New.
2073         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
2074         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
2075         * target.h (enum target_object) Add FreeBSD-specific
2076         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2077
2078 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2079
2080         * compile/compile-c.h (generate_c_for_variable_locations):
2081         Change reference to pointer.
2082         * compile/compile-c-support.c (compile_program) <compute>:
2083         Likewise.
2084         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
2085         (generate_c_for_for_one_variable): Likewise
2086         (generate_c_for_variable_locations): Likewise
2087         * compile/compile-c-types.c (compile_c_instance::convert_type):
2088         Likewise
2089         * compile/compile-cplus-symbols.c (convert_one_symbol):
2090         std::move the scope passed to enter_scope.
2091         * compile/compile-cplus-types.c
2092         (compile_cplus_instance::enter_scope): Make parameter
2093         rvalue-reference.
2094         (compile_cplus_instance::new_scope): Change reference to
2095         pointer.
2096         (compile_cplus_instance::convert_type): Likewise
2097         (compile_cplus_convert_typedef): std::move the scope passed to
2098         enter_scope.
2099         (compile_cplus_convert_struct_or_union): Likewise.
2100         (compile_cplus_convert_enum): Likewise.
2101         (compile_cplus_convert_namespace): Likewise.
2102         * compile/compile-cplus.h (compile_cplus_instance)
2103         <enter_scope>: Make parameter rvalue-reference.
2104         * compile/compile-internal.h (compile_instance)
2105         <get_cached_type>: Likewise
2106         * compile/compile-loc2c.c (push): Likewise
2107         (pushf): Likewise
2108         (unary): Likewise
2109         (binary): Likewise
2110         (print_label): Likewise
2111         (pushf_register_address): Likewise
2112         (pushf_register): Likewise
2113         (do_compile_dwarf_expr_to_c): Likewise
2114         (compile_dwarf_expr_to_c): Likewise
2115         (compile_dwarf_bounds_to_c): Likewise
2116         * compile/compile.c (compile_instance::get_cached_type):
2117         Likewise
2118         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
2119         (compile_dwarf_bounds_to_c): Likewise
2120         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
2121         (dwarf2_compile_property_to_c): Likewise
2122         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
2123         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
2124         Likewise
2125
2126 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2127
2128         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
2129         * tui/tui-data.c (init_content_element): Don't initialize it.
2130
2131 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2132
2133         * tui/tui-data.h (struct tui_win_info)
2134         <detail::opaque>: Remove.
2135         * tui/tui-data.c (init_win_info): Remove assignment.
2136
2137 2018-09-05  Tom Tromey  <tom@tromey.com>
2138
2139         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
2140         -Wformat-nonliteral.
2141         * target-float.c (host_float_ops<T>::to_string)
2142         (host_float_ops<T>::from_string): Use
2143         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2144         * configure: Rebuild.
2145
2146 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
2147
2148         * printcmd.c (printf_c_string): Use
2149         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2150         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
2151
2152 2018-09-05  Tom Tromey  <tom@tromey.com>
2153
2154         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
2155
2156 2018-09-05  Tom de Vries  <tdevries@suse.de>
2157
2158         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
2159         with resolve_abstract_p == true.
2160         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
2161         defaulting to false. Propagate resolve_abstract_p to
2162         dwarf2_fetch_die_loc_sect_off.
2163         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
2164         parameter, defaulting to false.
2165         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
2166         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
2167         parameter.
2168         * dwarf2read.h (struct die_info): Forward-declare.
2169         (die_info_ptr): New typedef.
2170         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
2171
2172 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
2173
2174         GDB 8.2 released.
2175
2176 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
2177             Pedro Alves  <palves@redhat.com>
2178
2179         * gnulib/Makefile.in (aclocal_m4_deps): Move to
2180         "aclocal-m4-deps.mk".  Include file here.
2181         $(srcdir)/aclocal.m4: Add "configure.ac".
2182         * gnulib/aclocal-m4-deps.mk: New file.
2183         * gnulib/update-gnulib.sh: Automatically update
2184         "aclocal-m4-deps.mk".
2185
2186 2018-09-04  Tom Tromey  <tom@tromey.com>
2187
2188         * configure: Rebuild.
2189         * configure.ac: Remove multi-ice code.
2190
2191 2018-09-04  Tom Tromey  <tom@tromey.com>
2192
2193         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
2194         (ada-exp.o): Update.
2195
2196 2018-09-04  Tom Tromey  <tom@tromey.com>
2197
2198         * Makefile.in (printcmd.o, target-float.o): Remove.
2199         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
2200
2201 2018-09-04  Tom Tromey  <tom@tromey.com>
2202
2203         * gnulib/Makefile.in: Remove obsolete comment.
2204         * Makefile.in: Remove obsolete comment.
2205
2206 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
2207
2208         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
2209         line with '+'.
2210
2211 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2212
2213         * riscv-tdep.c: Add 'prologue-value.h' include.
2214         (struct riscv_unwind_cache): New struct.
2215         (riscv_debug_unwinder): New global.
2216         (riscv_scan_prologue): Update arguments, capture register details
2217         from prologue scan.
2218         (riscv_skip_prologue): Reformat arguments line, move end of
2219         prologue calculation into riscv_scan_prologue.
2220         (riscv_frame_cache): Update return type, create
2221         riscv_unwind_cache, scan the prologue, and fill in remaining cache
2222         details.
2223         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
2224         (riscv_frame_prev_register): Use the trad_frame within the
2225         riscv_unwind_cache.
2226         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
2227         flag.
2228
2229 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2230
2231         * trad-frame.h (trad_frame_set_realreg): Declare.
2232         (trad_frame_set_addr): Declare.
2233         * trad-frame.c (trad_frame_set_realreg): Define new function.
2234         (trad_frame_set_addr): Define new function.
2235         (trad_frame_set_reg_realreg): Use new function.
2236         (trad_frame_set_reg_addr): Use new function.
2237
2238 2018-09-01  Keith Seitz  <keiths@redhat.com>
2239
2240         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
2241         pulongest instead of "%lld".
2242         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
2243         ATTRIBUTE_UNUSED.
2244
2245 2018-08-31  Tom Tromey  <tom@tromey.com>
2246
2247         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
2248         variant part type.
2249
2250 2018-08-31  Pedro Alves  <palves@redhat.com>
2251
2252         * gdbarch.h: Regenerate.
2253
2254 2018-08-31  Pedro Alves  <palves@redhat.com>
2255
2256         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
2257         * target.h (Hardware watchpoint interfaces): Describe
2258         continuable/steppable/non-steppable watchpoints.
2259         * gdbarch.h, gdbarch.c: Regenerate.
2260
2261 2018-08-31  Pedro Alves  <palves@redhat.com>
2262
2263         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
2264         Delete.
2265         * s390-linux-nat.c
2266         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
2267         * target.h (target_ops::have_continuable_watchpoint): Delete.
2268         (target_have_continuable_watchpoint): Delete.
2269         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
2270         * target-delegates.c: Regenerate.
2271
2272 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
2273
2274         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
2275         the files present in "gnulib/import/m4/".
2276
2277 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2278
2279         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
2280         c.sw, c.swsp, and c.sdsp.
2281
2282 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2283
2284         * riscv-tdep.c (struct riscv_inferior_data): Delete.
2285         (riscv_read_misa_reg): Don't cache value read into inferior data.
2286         (riscv_new_inferior_data): Delete.
2287         (riscv_inferior_data_cleanup): Delete.
2288         (riscv_inferior_data): Delete.
2289         (riscv_invalidate_inferior_data): Delete.
2290         (_initialize_riscv_tdep): Remove initialisation of inferior data.
2291
2292 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
2293
2294         * compile/compile-cplus-types.c
2295         (compile_cplus_instance::leave_scope): Take the address of scope
2296         object.
2297         (compile_cplus_instance::convert_qualified_base): Compare quals
2298         to 0.
2299
2300 2018-08-30  Keith Seitz  <keiths@redhat.com>
2301
2302         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
2303         Use "%s" and host_address_to_string instead of "%p" in printf.
2304
2305 2018-08-29  Keith Seitz  <keiths@redhat.com>
2306
2307         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
2308         and compile-cplus-types.c.
2309         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
2310         * c-lang.c (cplus_language_defn): Set C++ compile functions.
2311         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
2312         Declare.
2313         * compile/compile-c-support.c: Include compile-cplus.h.
2314         (load_libcompile): Templatize.
2315         (get_compile_context): "New" function.
2316         (c_get_compile_context): Use get_compile_context.
2317         (cplus_get_compile_context): New function.
2318         (cplus_push_user_expression, cplus_pop_user_expression)
2319         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
2320         (cplus_compute_program): Define new structs/functions.
2321         * compile/compile-cplus-symmbols.c: New file.
2322         * compile/compile-cplus-types.c: New file.
2323         * compile/compile-cplus.h: New file.
2324         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
2325         Declare.
2326         * compile/compile-object-load.c (get_out_value_type): Use
2327         strncmp_iw when comparing symbol names.
2328         (compile_object_load): Add mst_bss and mst_data.
2329         * compile/compile.c (_initialize_compile): Remove
2330         -Wno-implicit-function-declaration from `compile_args'.
2331         * compile/gcc-cp-plugin.h: New file.
2332         * NEWS: Mention C++ compile support and new debug options.
2333
2334 2018-08-29  Keith Seitz  <keiths@redhat.com>
2335
2336         * linespec.c (collect_info::add_symbol): Make virtual.
2337         (struct symbol_searcher_collect_info): New struct.
2338         (symbol_searcher::find_all_symbols): New method.
2339         * symtab.h (class symbol_searcher): New class.
2340
2341 2018-08-29  Keith Seitz  <keiths@redhat.com>
2342
2343         * linespec.c (struct linespec) <function_symbols, label_symbols>:
2344         Change to vector of block_symbol.  Update all users.
2345         (struct collect_info) <symbols>: Likewise.
2346         (collect_info::add_symbol): Take block_symbol as argument.
2347         Update all callers.
2348         (decode_compound_collector) <m_symbols>: Change type to vector
2349         of block_symbol.  Update all users.
2350         (decode_compound_collector::operator ()): Change parameter type
2351         to block_symbol.
2352         (find_method, find_function_symbols, find_linespec_symbols)
2353         (find_label_symbols_in_block, find_label_symbols): Change symbol
2354         vectors to block_symbol vectors.
2355         * symtab.h (symbol_found_callback_ftype): Change parameter type to
2356         block_symbol.
2357
2358 2018-08-29  Keith Seitz  <keiths@redhat.com>
2359
2360         * linespec.c (symbolp): Remove typedef and VEC definitions.
2361         (bound_minimal_symbol_d): Likewise.
2362
2363 2018-08-29  Keith Seitz  <keiths@redhat.com>
2364
2365         * linespec.c (decode_compound_collector::decode_compound_collector):
2366         Remove initialization for `m_symtabs'.
2367         (decode_compound_collector::release_symbols): Change return type
2368         to std::vector.  Update all callers.
2369         (class decode_compound_collector) <m_symbols>: Change type to
2370         std::vector.
2371         (lookup_prefix_sym): Change return type to std::vector.  Update all
2372         callers.
2373         (compare_symbols): Remove.
2374         (std_compare_symbols): Rename to `compare_symbols'.
2375         (find_method): Change `sym_classes' parameter to std::vector.
2376         Update all callers.  Use std::sort to sort sym_classes.
2377         (find_linespec_symbols): Remove cleanup.
2378
2379 2018-08-29  Keith Seitz  <keiths@redhat.com>
2380
2381         * linespec.c (struct linespec) <minimal_symbols>: Change type to
2382         std::vector.  Update all users.
2383         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
2384         (struct collect_info) <minimal_symbols>: Likewise.
2385         (compare_msymbols): Return bool.  Change parameters to const
2386         bound_minimal_symbol references.
2387         (find_method, find_function_symbols, find_linespec_symbols): Change
2388         `minsyms' parameter to std::vector.  Update all callers.
2389
2390 2018-08-29  Keith Seitz  <keiths@redhat.com>
2391
2392         * linespec.c (struct linespec) <label_symbols>: Change type to
2393         std::vector.  Update all users.
2394         (find_label_symbols_in_block): Change `result' parameter to
2395         std::vector.  Update all callers.
2396         (find_label_symbols): Return std::vector.  Update all callers.
2397
2398 2018-08-29  Keith Seitz  <keiths@redhat.com>
2399
2400         * linespec.c (struct linespec) <function_symbols>: Change type to
2401         std::vector.  Update all users.
2402         (struct collect_info) <function_symbols>: Likewise.
2403         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
2404         (std_compare_symbols): New function.
2405         (find_method, find_function_symbols, find_linespec_symbols)
2406         (find_label_symbols_in_block): Change `symbols' parameter to
2407         std::vector.  Update all callers.
2408         (find_label_symbols): Likewise for `function_symbols' and
2409         `label_funcs_ret'.
2410
2411 2018-08-29  Keith Seitz  <keiths@redhat.com>
2412
2413         * linespec.c (symtab_vector_up): Define.
2414         (struct linespec) <file_symtabs>: Change type to std::vector *.
2415         Update all uses.
2416         (struct collect_info) <file_symtabs>: Likewise.
2417         (collect_symtabs_from_filename): Return symtab_vector_up.
2418         Update all callers.
2419         (decode_objc): Remove cleanup.
2420         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
2421         (symtab_collector::release_symtabs): Return symtab_vector_up.
2422         Update all callers.
2423         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
2424         Update all users.
2425         (collect_symtabs_from_filename, symtabs_from_filename): Return
2426         symtab_vector_up.  Update all callers.
2427
2428 2018-08-29  Tom Tromey  <tom@tromey.com>
2429
2430         * csky-tdep.c (csky_analyze_prologue): Use
2431         core_addr_to_string_nz.
2432
2433 2018-08-29  Tom Tromey  <tom@tromey.com>
2434
2435         * windows-nat.c (struct xlate_exception) <them>: Change type to
2436         DWORD.
2437         (xlate): Fix formatting.  Remove last entry.
2438         (struct xlate_exception, xlate): Comment out.
2439         (windows_nat_target::resume): Use ranged for.
2440
2441 2018-08-29  Jim Wilson  <jimw@sifive.com>
2442
2443         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
2444         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
2445         of NT_PRFPREG.
2446         (riscv_linux_nat_target::store_registers): Likewise.
2447
2448 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
2449
2450         PR gdb/23555
2451         PR gdb/23558
2452         * gnulib/aclocal.m4: Regenerate.
2453         * gnulib/config.in: Regenerate.
2454         * gnulib/configure: Regenerate.
2455         * gnulib/import/Makefile.am: Update.
2456         * gnulib/import/Makefile.in: Update.
2457         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
2458         * gnulib/import/_Noreturn.h: ... this.
2459         * gnulib/import/alloca.in.h: Update.
2460         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
2461         * gnulib/import/arg-nonnull.h: ... this.
2462         * gnulib/import/assure.h: Update.
2463         * gnulib/import/at-func.c: Update.
2464         * gnulib/import/basename-lgpl.c: Update.
2465         * gnulib/import/extra/snippet/c++defs.h: Rename to...
2466         * gnulib/import/c++defs.h: ... this.
2467         * gnulib/import/canonicalize-lgpl.c: Update.
2468         * gnulib/import/cdefs.h: Update.
2469         * gnulib/import/chdir-long.c: Update.
2470         * gnulib/import/chdir-long.h: Update.
2471         * gnulib/import/cloexec.c: Update.
2472         * gnulib/import/cloexec.h: Update.
2473         * gnulib/import/close.c: Update.
2474         * gnulib/import/closedir.c: Update.
2475         * gnulib/import/config.charset: Update.
2476         * gnulib/import/dirent-private.h: Update.
2477         * gnulib/import/dirent.in.h: Update.
2478         * gnulib/import/dirfd.c: Update.
2479         * gnulib/import/dirname-lgpl.c: Update.
2480         * gnulib/import/dirname.h: Update.
2481         * gnulib/import/dosname.h: Update.
2482         * gnulib/import/dup-safer-flag.c: Update.
2483         * gnulib/import/dup-safer.c: Update.
2484         * gnulib/import/dup.c: Update.
2485         * gnulib/import/dup2.c: Update.
2486         * gnulib/import/errno.in.h: Update.
2487         * gnulib/import/error.c: Update.
2488         * gnulib/import/error.h: Update.
2489         * gnulib/import/exitfail.c: Update.
2490         * gnulib/import/exitfail.h: Update.
2491         * gnulib/import/extra/update-copyright: Update.
2492         * gnulib/import/fchdir.c: Update.
2493         * gnulib/import/fcntl.c: Update.
2494         * gnulib/import/fcntl.in.h: Update.
2495         * gnulib/import/fd-hook.c: Update.
2496         * gnulib/import/fd-hook.h: Update.
2497         * gnulib/import/fd-safer-flag.c: Update.
2498         * gnulib/import/fd-safer.c: Update.
2499         * gnulib/import/fdopendir.c: Update.
2500         * gnulib/import/filename.h: Update.
2501         * gnulib/import/filenamecat-lgpl.c: Update.
2502         * gnulib/import/filenamecat.h: Update.
2503         * gnulib/import/flexmember.h: Update.
2504         * gnulib/import/float+.h: Update.
2505         * gnulib/import/float.c: Update.
2506         * gnulib/import/float.in.h: Update.
2507         * gnulib/import/fnmatch.c: Update.
2508         * gnulib/import/fnmatch.in.h: Update.
2509         * gnulib/import/fnmatch_loop.c: Update.
2510         * gnulib/import/fpucw.h: Update.
2511         * gnulib/import/frexp.c: Update.
2512         * gnulib/import/frexpl.c: Update.
2513         * gnulib/import/fstat.c: Update.
2514         * gnulib/import/fstatat.c: Update.
2515         * gnulib/import/getcwd-lgpl.c: Update.
2516         * gnulib/import/getcwd.c: Update.
2517         * gnulib/import/getdtablesize.c: Update.
2518         * gnulib/import/getlogin_r.c: Update.
2519         * gnulib/import/getprogname.c: Update.
2520         * gnulib/import/getprogname.h: Update.
2521         * gnulib/import/gettext.h: Update.
2522         * gnulib/import/gettimeofday.c: Update.
2523         * gnulib/import/glob-libc.h: Update.
2524         * gnulib/import/glob.c: Update.
2525         * gnulib/import/glob.in.h: Update.
2526         * gnulib/import/glob_internal.h: Update.
2527         * gnulib/import/glob_pattern_p.c: Update.
2528         * gnulib/import/globfree.c: Update.
2529         * gnulib/import/hard-locale.c: Update.
2530         * gnulib/import/hard-locale.h: Update.
2531         * gnulib/import/intprops.h: Update.
2532         * gnulib/import/inttypes.in.h: Update.
2533         * gnulib/import/isnan.c: Update.
2534         * gnulib/import/isnand-nolibm.h: Update.
2535         * gnulib/import/isnand.c: Update.
2536         * gnulib/import/isnanl-nolibm.h: Update.
2537         * gnulib/import/isnanl.c: Update.
2538         * gnulib/import/itold.c: Update.
2539         * gnulib/import/libc-config.h: Update.
2540         * gnulib/import/limits.in.h: Update.
2541         * gnulib/import/localcharset.c: Update.
2542         * gnulib/import/localcharset.h: Update.
2543         * gnulib/import/localtime-buffer.c: Update.
2544         * gnulib/import/localtime-buffer.h: Update.
2545         * gnulib/import/lstat.c: Update.
2546         * gnulib/import/m4/00gnulib.m4: Update.
2547         * gnulib/import/m4/__inline.m4: Update.
2548         * gnulib/import/m4/absolute-header.m4: Update.
2549         * gnulib/import/m4/alloca.m4: Update.
2550         * gnulib/import/m4/builtin-expect.m4: Update.
2551         * gnulib/import/m4/canonicalize.m4: Update.
2552         * gnulib/import/m4/chdir-long.m4: Update.
2553         * gnulib/import/m4/close.m4: Update.
2554         * gnulib/import/m4/closedir.m4: Update.
2555         * gnulib/import/m4/configmake.m4: Update.
2556         * gnulib/import/m4/d-ino.m4: Update.
2557         * gnulib/import/m4/d-type.m4: Update.
2558         * gnulib/import/m4/dirent_h.m4: Update.
2559         * gnulib/import/m4/dirfd.m4: Update.
2560         * gnulib/import/m4/dirname.m4: Update.
2561         * gnulib/import/m4/double-slash-root.m4: Update.
2562         * gnulib/import/m4/dup.m4: Update.
2563         * gnulib/import/m4/dup2.m4: Update.
2564         * gnulib/import/m4/eealloc.m4: Update.
2565         * gnulib/import/m4/environ.m4: Update.
2566         * gnulib/import/m4/errno_h.m4: Update.
2567         * gnulib/import/m4/error.m4: Update.
2568         * gnulib/import/m4/exponentd.m4: Update.
2569         * gnulib/import/m4/exponentl.m4: Update.
2570         * gnulib/import/m4/extensions.m4: Update.
2571         * gnulib/import/m4/extern-inline.m4: Update.
2572         * gnulib/import/m4/fchdir.m4: Update.
2573         * gnulib/import/m4/fcntl-o.m4: Update.
2574         * gnulib/import/m4/fcntl.m4: Update.
2575         * gnulib/import/m4/fcntl_h.m4: Update.
2576         * gnulib/import/m4/fdopendir.m4: Update.
2577         * gnulib/import/m4/filenamecat.m4: Update.
2578         * gnulib/import/m4/flexmember.m4: Update.
2579         * gnulib/import/m4/float_h.m4: Update.
2580         * gnulib/import/m4/fnmatch.m4: Update.
2581         * gnulib/import/m4/fnmatch_h.m4: Update.
2582         * gnulib/import/m4/fpieee.m4: Update.
2583         * gnulib/import/m4/frexp.m4: Update.
2584         * gnulib/import/m4/frexpl.m4: Update.
2585         * gnulib/import/m4/fstat.m4: Update.
2586         * gnulib/import/m4/fstatat.m4: Update.
2587         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
2588         * gnulib/import/m4/getcwd-path-max.m4: Update.
2589         * gnulib/import/m4/getcwd.m4: Update.
2590         * gnulib/import/m4/getdtablesize.m4: Update.
2591         * gnulib/import/m4/getlogin.m4: Update.
2592         * gnulib/import/m4/getlogin_r.m4: Update.
2593         * gnulib/import/m4/getpagesize.m4: Update.
2594         * gnulib/import/m4/getprogname.m4: Update.
2595         * gnulib/import/m4/gettimeofday.m4: Update.
2596         * gnulib/import/m4/glibc21.m4: Update.
2597         * gnulib/import/m4/glob.m4: Update.
2598         * gnulib/import/m4/glob_h.m4: Update.
2599         * gnulib/import/m4/gnulib-cache.m4: Update.
2600         * gnulib/import/m4/gnulib-common.m4: Update.
2601         * gnulib/import/m4/gnulib-comp.m4: Update.
2602         * gnulib/import/m4/gnulib-tool.m4: Update.
2603         * gnulib/import/m4/hard-locale.m4: Update.
2604         * gnulib/import/m4/include_next.m4: Update.
2605         * gnulib/import/m4/inttypes-pri.m4: Update.
2606         * gnulib/import/m4/inttypes.m4: Update.
2607         * gnulib/import/m4/isnand.m4: Update.
2608         * gnulib/import/m4/isnanl.m4: Update.
2609         * gnulib/import/m4/largefile.m4: Update.
2610         * gnulib/import/m4/limits-h.m4: Update.
2611         * gnulib/import/m4/localcharset.m4: Update.
2612         * gnulib/import/m4/locale-fr.m4: Update.
2613         * gnulib/import/m4/locale-ja.m4: Update.
2614         * gnulib/import/m4/locale-zh.m4: Update.
2615         * gnulib/import/m4/localtime-buffer.m4: Update.
2616         * gnulib/import/m4/longlong.m4: Update.
2617         * gnulib/import/m4/lstat.m4: Update.
2618         * gnulib/import/m4/malloc.m4: Update.
2619         * gnulib/import/m4/malloca.m4: Update.
2620         * gnulib/import/m4/math_h.m4: Update.
2621         * gnulib/import/m4/mbrtowc.m4: Update.
2622         * gnulib/import/m4/mbsinit.m4: Update.
2623         * gnulib/import/m4/mbsrtowcs.m4: Update.
2624         * gnulib/import/m4/mbstate_t.m4: Update.
2625         * gnulib/import/m4/memchr.m4: Update.
2626         * gnulib/import/m4/memmem.m4: Update.
2627         * gnulib/import/m4/mempcpy.m4: Update.
2628         * gnulib/import/m4/memrchr.m4: Update.
2629         * gnulib/import/m4/mkdir.m4: Update.
2630         * gnulib/import/m4/mkstemp.m4: Update.
2631         * gnulib/import/m4/mmap-anon.m4: Update.
2632         * gnulib/import/m4/mode_t.m4: Update.
2633         * gnulib/import/m4/msvc-inval.m4: Update.
2634         * gnulib/import/m4/msvc-nothrow.m4: Update.
2635         * gnulib/import/m4/multiarch.m4: Update.
2636         * gnulib/import/m4/nocrash.m4: Update.
2637         * gnulib/import/m4/off_t.m4: Update.
2638         * gnulib/import/m4/onceonly.m4: Update.
2639         * gnulib/import/m4/open-cloexec.m4: Update.
2640         * gnulib/import/m4/open.m4: Update.
2641         * gnulib/import/m4/openat.m4: Update.
2642         * gnulib/import/m4/opendir.m4: Update.
2643         * gnulib/import/m4/pathmax.m4: Update.
2644         * gnulib/import/m4/rawmemchr.m4: Update.
2645         * gnulib/import/m4/readdir.m4: Update.
2646         * gnulib/import/m4/readlink.m4: Update.
2647         * gnulib/import/m4/realloc.m4: Update.
2648         * gnulib/import/m4/rename.m4: Update.
2649         * gnulib/import/m4/rewinddir.m4: Update.
2650         * gnulib/import/m4/rmdir.m4: Update.
2651         * gnulib/import/m4/save-cwd.m4: Update.
2652         * gnulib/import/m4/secure_getenv.m4: Update.
2653         * gnulib/import/m4/setenv.m4: Update.
2654         * gnulib/import/m4/signal_h.m4: Update.
2655         * gnulib/import/m4/ssize_t.m4: Update.
2656         * gnulib/import/m4/stat-time.m4: Update.
2657         * gnulib/import/m4/stat.m4: Update.
2658         * gnulib/import/m4/std-gnu11.m4: Update.
2659         * gnulib/import/m4/stdbool.m4: Update.
2660         * gnulib/import/m4/stddef_h.m4: Update.
2661         * gnulib/import/m4/stdint.m4: Update.
2662         * gnulib/import/m4/stdio_h.m4: Update.
2663         * gnulib/import/m4/stdlib_h.m4: Update.
2664         * gnulib/import/m4/strchrnul.m4: Update.
2665         * gnulib/import/m4/strdup.m4: Update.
2666         * gnulib/import/m4/strerror.m4: Update.
2667         * gnulib/import/m4/string_h.m4: Update.
2668         * gnulib/import/m4/strstr.m4: Update.
2669         * gnulib/import/m4/strtok_r.m4: Update.
2670         * gnulib/import/m4/sys_socket_h.m4: Update.
2671         * gnulib/import/m4/sys_stat_h.m4: Update.
2672         * gnulib/import/m4/sys_time_h.m4: Update.
2673         * gnulib/import/m4/sys_types_h.m4: Update.
2674         * gnulib/import/m4/tempname.m4: Update.
2675         * gnulib/import/m4/time_h.m4: Update.
2676         * gnulib/import/m4/unistd-safer.m4: Update.
2677         * gnulib/import/m4/unistd_h.m4: Update.
2678         * gnulib/import/m4/warn-on-use.m4: Update.
2679         * gnulib/import/m4/wchar_h.m4: Update.
2680         * gnulib/import/m4/wchar_t.m4: Update.
2681         * gnulib/import/m4/wctype_h.m4: Update.
2682         * gnulib/import/m4/wint_t.m4: Update.
2683         * gnulib/import/malloc.c: Update.
2684         * gnulib/import/malloc/scratch_buffer.h: Update.
2685         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
2686         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
2687         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
2688         * gnulib/import/malloca.c: Update.
2689         * gnulib/import/malloca.h: Update.
2690         * gnulib/import/malloca.valgrind: Update.
2691         * gnulib/import/math.in.h: Update.
2692         * gnulib/import/mbrtowc.c: Update.
2693         * gnulib/import/mbsinit.c: Update.
2694         * gnulib/import/mbsrtowcs-impl.h: Update.
2695         * gnulib/import/mbsrtowcs-state.c: Update.
2696         * gnulib/import/mbsrtowcs.c: Update.
2697         * gnulib/import/memchr.c: Update.
2698         * gnulib/import/memmem.c: Update.
2699         * gnulib/import/mempcpy.c: Update.
2700         * gnulib/import/memrchr.c: Update.
2701         * gnulib/import/mkdir.c: Update.
2702         * gnulib/import/mkstemp.c: Update.
2703         * gnulib/import/msvc-inval.c: Update.
2704         * gnulib/import/msvc-inval.h: Update.
2705         * gnulib/import/msvc-nothrow.c: Update.
2706         * gnulib/import/msvc-nothrow.h: Update.
2707         * gnulib/import/open.c: Update.
2708         * gnulib/import/openat-die.c: Update.
2709         * gnulib/import/openat-priv.h: Update.
2710         * gnulib/import/openat-proc.c: Update.
2711         * gnulib/import/openat.c: Update.
2712         * gnulib/import/openat.h: Update.
2713         * gnulib/import/opendir.c: Update.
2714         * gnulib/import/pathmax.h: Update.
2715         * gnulib/import/pipe-safer.c: Update.
2716         * gnulib/import/rawmemchr.c: Update.
2717         * gnulib/import/readdir.c: Update.
2718         * gnulib/import/readlink.c: Update.
2719         * gnulib/import/realloc.c: Update.
2720         * gnulib/import/ref-add.sin: Update.
2721         * gnulib/import/ref-del.sin: Update.
2722         * gnulib/import/rename.c: Update.
2723         * gnulib/import/rewinddir.c: Update.
2724         * gnulib/import/rmdir.c: Update.
2725         * gnulib/import/same-inode.h: Update.
2726         * gnulib/import/save-cwd.c: Update.
2727         * gnulib/import/save-cwd.h: Update.
2728         * gnulib/import/scratch_buffer.h: Update.
2729         * gnulib/import/secure_getenv.c: Update.
2730         * gnulib/import/setenv.c: Update.
2731         * gnulib/import/signal.in.h: Update.
2732         * gnulib/import/stat-time.c: Update.
2733         * gnulib/import/stat-time.h: Update.
2734         * gnulib/import/stat-w32.c: Update.
2735         * gnulib/import/stat-w32.h: Update.
2736         * gnulib/import/stat.c: Update.
2737         * gnulib/import/stdbool.in.h: Update.
2738         * gnulib/import/stddef.in.h: Update.
2739         * gnulib/import/stdint.in.h: Update.
2740         * gnulib/import/stdio.in.h: Update.
2741         * gnulib/import/stdlib.in.h: Update.
2742         * gnulib/import/str-two-way.h: Update.
2743         * gnulib/import/strchrnul.c: Update.
2744         * gnulib/import/strdup.c: Update.
2745         * gnulib/import/streq.h: Update.
2746         * gnulib/import/strerror-override.c: Update.
2747         * gnulib/import/strerror-override.h: Update.
2748         * gnulib/import/strerror.c: Update.
2749         * gnulib/import/string.in.h: Update.
2750         * gnulib/import/stripslash.c: Update.
2751         * gnulib/import/strnlen1.c: Update.
2752         * gnulib/import/strnlen1.h: Update.
2753         * gnulib/import/strstr.c: Update.
2754         * gnulib/import/strtok_r.c: Update.
2755         * gnulib/import/sys_stat.in.h: Update.
2756         * gnulib/import/sys_time.in.h: Update.
2757         * gnulib/import/sys_types.in.h: Update.
2758         * gnulib/import/tempname.c: Update.
2759         * gnulib/import/tempname.h: Update.
2760         * gnulib/import/time.in.h: Update.
2761         * gnulib/import/unistd--.h: Update.
2762         * gnulib/import/unistd-safer.h: Update.
2763         * gnulib/import/unistd.in.h: Update.
2764         * gnulib/import/unsetenv.c: Update.
2765         * gnulib/import/verify.h: Update.
2766         * gnulib/import/extra/snippet/warn-on-use.h: Update.
2767         * gnulib/import/wchar.in.h: Update.
2768         * gnulib/import/wctype.in.h: Update.
2769         * gnulib/import/xalloc-oversized.h: Update.
2770         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
2771         "53e2c179f26a890fa6685af4b6c1397ee370433b".
2772
2773 2018-08-16  Gary Benson <gbenson@redhat.com>
2774
2775         PR gdb/13000:
2776         * gdb/main.c (captured_main_1): Exit with nonzero status
2777         in batch mode if the last command to be executed failed.
2778         * NEWS: Mention the above.
2779
2780 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
2781
2782         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
2783         end of warning message.
2784
2785 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2786
2787         PR gdb/22943:
2788         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
2789         (aarch64_extract_return_value): Use
2790         aapcs_is_vfp_call_or_return_candidate.
2791         (aarch64_return_in_memory): Likewise.
2792         (aarch64_store_return_value): Likewise.
2793
2794 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2795
2796         * aarch64-tdep.c
2797         (aapcs_is_vfp_call_or_return_candidate): Make static
2798         (pass_in_v_or_stack): Remove function.
2799         (pass_in_v_vfp_candidate): New function.
2800         (aarch64_push_dummy_call): Check for float register candidates.
2801
2802 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2803
2804         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
2805         (aapcs_is_vfp_call_or_return_candidate_1): New function.
2806         (aapcs_is_vfp_call_or_return_candidate): Likewise.
2807
2808 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
2809
2810         PR build/23399
2811         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
2812         (struct ipa_sym_addresses): Rename to...
2813         (struct ipa_sym_addresses_common): ... this.
2814         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
2815
2816 2018-08-28  Tom Tromey  <tom@tromey.com>
2817
2818         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2819         (token_fifo): Now a std::vector.
2820         (yylex, c_parse): Update.
2821         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2822         (token_fifo): Now a std::vector.
2823         (yylex, d_parse): Update.
2824         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2825         (token_fifo): Now a std::vector.
2826         (yylex, go_parse): Update.
2827
2828 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
2829
2830         * parser-defs.h (struct type_stack) <elements>: Change type to
2831         std::vector<union type_stack_elt>.
2832         <depth, size>: Remove.
2833         * parse.c (parse_exp_in_context_1): Adjust.
2834         (type_stack_reserve): Remove.
2835         (check_type_stack_depth): Remove.
2836         (insert_into_type_stack): Adjust to std::vector.
2837         (insert_type): Likewise.
2838         (push_type): Likewise.
2839         (push_type_int): Likewise.
2840         (insert_type_address_space): Likewise.
2841         (pop_type): Likewise.
2842         (pop_type_int): Likewise.
2843         (pop_typelist): Likewise.
2844         (pop_type_stack): Likewise.
2845         (append_type_stack): Likewise.
2846         (push_type_stack): Likewise.
2847         (get_type_stack): Likewise.
2848         (type_stack_cleanup): Likewise.
2849         (push_typelist): Likewise.
2850         (follow_types): Likewise.
2851         (_initialize_parse): Likewise.
2852
2853 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
2854
2855         * NEWS: Mention csky target.
2856
2857 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
2858             Hafiz Abid Qadeer  <abidh@codesourcery.com>
2859             Don Breazeal  <donb@codesourcery.com>
2860
2861         * csky-linux-tdep.c: New file.
2862         * csky-tdep.c: Likewise.
2863         * csky-tdep.h: Likewise.
2864         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
2865         csky-tdep.o.
2866         (HFILES_NO_SRCDIR): Add csky-tdep.h.
2867         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
2868         * configure.tgt: Add csky support.
2869
2870 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
2871
2872         * python/py-framefilter.c (py_print_frame): Print frame architecture
2873         when printing on an MI output.
2874
2875 2018-08-27  Tom Tromey  <tom@tromey.com>
2876
2877         PR build/23087:
2878         * configure: Rebuild.
2879         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
2880
2881 2018-08-27  Tom Tromey  <tom@tromey.com>
2882
2883         * aarch64-linux-tdep.c
2884         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
2885         casts to int.
2886
2887 2018-08-27  Tom Tromey  <tom@tromey.com>
2888
2889         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
2890         unsigned.
2891         (ppc64_standard_linkage1, ppc64_standard_linkage2)
2892         (ppc64_standard_linkage3, ppc64_standard_linkage4)
2893         (ppc64_standard_linkage5, ppc64_standard_linkage6)
2894         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
2895         unsigned.
2896
2897 2018-08-27  Tom Tromey  <tom@tromey.com>
2898
2899         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
2900         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
2901
2902 2018-08-27  Tom Tromey  <tom@tromey.com>
2903
2904         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
2905         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
2906         ULONGEST_MAX.
2907         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
2908         ULONGEST_MAX.
2909         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
2910         ULONGEST_MAX.
2911         * sparc-linux-tdep.c (sparc32_linux_sigframe)
2912         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
2913         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
2914         ULONGEST_MAX.
2915         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
2916         (ppc64_linux_sigaction_tramp_frame)
2917         (ppc32_linux_sighandler_tramp_frame)
2918         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
2919         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
2920         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
2921         * mn10300-linux-tdep.c (am33_linux_sigframe)
2922         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
2923         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
2924         * mips-linux-tdep.c (mips_linux_o32_sigframe)
2925         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
2926         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
2927         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
2928         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
2929         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
2930         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
2931         * microblaze-linux-tdep.c
2932         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
2933         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
2934         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
2935         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
2936         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
2937         * common/common-types.h (ULONGEST_MAX): New define.
2938         (CORE_ADDR_MAX): Fix formatting.
2939         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
2940         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
2941         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
2942         (arm_linux_rt_sigreturn_tramp_frame)
2943         (arm_eabi_linux_sigreturn_tramp_frame)
2944         (arm_eabi_linux_rt_sigreturn_tramp_frame)
2945         (thumb2_eabi_linux_sigreturn_tramp_frame)
2946         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
2947         (arm_linux_restart_syscall_tramp_frame)
2948         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
2949         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
2950         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
2951         ULONGEST_MAX.
2952         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
2953
2954 2018-08-27  Tom Tromey  <tom@tromey.com>
2955
2956         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
2957         CORE_ADDR_MAX.
2958         * mips-tdep.c (mips_deal_with_atomic_sequence)
2959         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
2960         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
2961         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
2962         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
2963         CORE_ADDR_MAX.
2964         * aarch64-tdep.c (aarch64_software_single_step): Use
2965         CORE_ADDR_MAX.
2966
2967 2018-08-27  Tom Tromey  <tom@tromey.com>
2968
2969         * linespec.c (complete_linespec_component): Add cast to "char".
2970         * completer.c (completion_tracker::build_completion_result): Add
2971         cast to "char".
2972
2973 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
2974
2975         * solist.h (struct solist, struct target_so_ops): Fix
2976         indentation.
2977
2978 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
2979
2980         * ada-tasks.c (ada_task_info_s): Remove typedef.
2981         (DEF_VEC_O(ada_task_info_s)): Remove.
2982         (struct ada_tasks_inferior_data): Initialize fields.
2983         <task_list>: Make an std::vector.
2984         (get_ada_tasks_inferior_data): Allocate with new.
2985         (ada_get_task_number): Adjust.
2986         (get_task_number_from_id): Likewise.
2987         (valid_task_id): Likewise.
2988         (ada_get_task_info_from_ptid): Likewise.
2989         (iterate_over_live_ada_tasks): Likewise.
2990         (add_ada_task): Likewise.
2991         (read_known_tasks): Likewise.
2992         (ada_build_task_list): Likewise.
2993         (print_ada_task_info): Likewise.
2994         (info_task): Likewise.
2995         (task_command_1): Likewise.
2996
2997 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
2998
2999         * ada-lang.c (add_angle_brackets): Return std::string.
3000
3001 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
3002
3003         * python/py-threadevent.c (py_get_event_thread): Initialize
3004         pythread.
3005
3006 2018-08-24  Pedro Alves  <palves@redhat.com>
3007
3008         * python/py-bpevent.c (create_breakpoint_event_object): Use
3009         copy-initialization.
3010         * python/py-continueevent.c (emit_continue_event): Use
3011         copy-initialization.
3012         * python/py-exitedevent.c (create_exited_event_object): Return a
3013         gdbpy_ref<>.
3014         (emit_exited_event): Use copy-initialization.
3015         * python/py-inferior.c (python_new_inferior)
3016         (python_inferior_deleted, add_thread_object): Use
3017         copy-initialization.
3018         * python/py-infevents.c (create_inferior_call_event_object)
3019         (create_register_changed_event_object)
3020         (create_memory_changed_event_object): Return a gdbpy_ref<>.
3021         (emit_inferior_call_event, emit_memory_changed_event)
3022         (emit_register_changed_event): Use copy-initialization.
3023         * python/py-newobjfileevent.c (create_new_objfile_event_object):
3024         Return a gdbpy_ref<>.
3025         (emit_new_objfile_event): Use copy-initialization.
3026         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
3027         (emit_clear_objfiles_event): Use copy-initialization.
3028         * python/py-signalevent.c (create_signal_event_object): Use
3029         copy-initialization.
3030         * python/py-threadevent.c (create_thread_event_object): Use
3031         copy-initialization.
3032
3033 2018-08-24  Pedro Alves  <palves@redhat.com>
3034             Simon Marchi  <simon.marchi@ericsson.com>
3035
3036         PR gdb/23379
3037         * python/py-continueevent.c: Include "gdbthread.h".
3038         (create_continue_event_object): Add intro comment.  Add 'ptid'
3039         parameter.  Use it to find thread to pass to
3040         create_thread_event_object.
3041         (emit_continue_event): Pass PTID down to
3042         create_continue_event_object.
3043         * python/py-event.h (py_get_event_thread): Declare.
3044         (create_thread_event_object): Remove default from 'thread'
3045         parameter.
3046         * python/py-stopevent.c (create_stop_event_object): Use
3047         py_get_event_thread.
3048         * python/py-threadevent.c (get_event_thread): Rename to ...
3049         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
3050         and use it to find the thread.
3051         (create_thread_event_object): Assert that THREAD isn't null.
3052         Don't find the event thread here.
3053
3054 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
3055
3056         * block.h (blockrange, blockranges): New struct declarations.
3057         (struct block): Add new field named `ranges'.
3058         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
3059         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
3060         macros for accessing ranges in struct block.
3061         (make_blockranges): New declaration.
3062         block.c (make_blockranges): New function.
3063         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
3064         for block.
3065         * symtab.h (find_pc_partial_function): Add new parameter `block'.
3066         * blockframe.c (cache_pc_function_block): New static global.
3067         (clear_pc_function_cache): Clear cache_pc_function_block.
3068         (find_pc_partial_function): Move comment to symtab.h.  Add
3069         support for non-contiguous blocks.
3070         * cli/cli-cmds.c (block.h): Include.
3071         (print_disassembly): Handle printing of non-contiguous blocks.
3072         (disassemble_current_function): Likewise.
3073         (disassemble_command): Likewise.
3074
3075         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
3076         BLOCK_START.
3077         * blockframe.c (get_pc_function_start): Likewise.
3078         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
3079         (gcc_symbol_address): Likewise.
3080         * compile/compile-object-run.c (compile_object_run): Likewise.
3081         * compile/compile.c (get_expr_block_and_pc): Likewise.
3082         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
3083         (func_addr_to_tail_call_list): Likewise.
3084         * findvar.c (default_read_var_value): Likewise.
3085         * inline-frame.c (inline_frame_this_id): Likewise.
3086         (skip-inline_frames): Likewise.
3087         * infcmd.c (until_next_command): Likewise.
3088         * linespec.c (convert_linespec_to_sals): Likewise.
3089         * parse.c (parse_exp_in_context_1): Likewise.
3090         * printcmd.c (build_address_symbolic): likewise.
3091         (info_address_command): Likewise.
3092         symtab.c (find_function_start_sal): Likewise.
3093         (skip_prologue_sal): Likewise.
3094         (find_function_alias_target): Likewise.
3095         (find_gnu_ifunc): Likewise.
3096         * stack.c (find_frame_funname): Likewise.
3097         * symtab.c (fixup_symbol_section): Likewise.
3098         (find_function_start_sal): Likewise.
3099         (skip_prologue_sal): Likewsie.
3100         (find_function_alias_target): Likewise.
3101         (find_gnu_ifunc): Likewise.
3102         * tracepoint.c (info_scope_command): Likewise.
3103         * value.c (value_fn_field): Likewise.
3104
3105         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
3106         in place of find_pc_partial_function.
3107         * blockframe.c (find_function_entry_range_from_pc): New function.
3108         * symtab.h (find_function_entry_range_from_pc): Declare and document.
3109         * objfiles.c (objfile_relocate1): Relocate start and end addresses
3110         for each range in a block.
3111
3112
3113 2018-08-23  Xavier Roirand  <roirand@adacore.com>
3114
3115         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
3116         incrementation.
3117
3118 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3119
3120         * solib-svr4.c (read_program_headers_from_bfd): Return
3121         gdb::optional<gdb::byte_vector>.
3122         (svr4_exec_displacement): Adjust.
3123
3124 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3125
3126         * solib-svr4.c (read_program_header): Return
3127         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
3128         (find_program_interpreter): Return
3129         gdb::optional<gdb::byte_vector>.
3130         (scan_dyntag_auxv): Adjust.
3131         (enable_break): Adjust.
3132         (svr4_exec_displacement): Adjust.
3133
3134 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3135
3136         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
3137         * inf-child.c (inf_child_target::terminal_save_inferior): New.
3138
3139 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3140
3141         * guile/scm-string.c (gdbscm_scm_from_printf): Use
3142         string_vprintf.
3143         * guile/scm-utils.c (gdbscm_printf): Likewise.
3144         * serial.c (serial_printf): Likewise.
3145         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
3146
3147 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
3148
3149         * stack.c (print_frame): Print frame architecture when printing on
3150         an MI output.
3151         * NEWS: Mention new "arch" attribute in frame output.
3152
3153 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3154
3155         * arch/aarch64.h (aarch64_regnum): Update comment.
3156
3157 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3158
3159         * NEWS: Add SVE to 8.2 section.
3160
3161 2018-08-21  Pedro Alves  <palves@redhat.com>
3162
3163         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
3164         out from gdbscm_parse_function_args.
3165         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
3166         gdbscm_parse_function_args_1.
3167
3168 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
3169
3170         PR gdb/17816
3171         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
3172         operator.
3173
3174 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
3175
3176         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
3177
3178 2018-08-19  Michael Spang  <spang@google.com>
3179
3180         PR gdb/11786
3181         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
3182         for PT_TLS segments.
3183
3184 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
3185
3186         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
3187         dwarf_variable_value.
3188         * dwarf2-frame.c (class dwarf_expr_executor):
3189         Add override for dwarf_variable_value.
3190         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
3191         (class symbol_needs_eval_context): Likewise.
3192         (indirect_synthetic_pointer): Add forward declaration.
3193         (sect_variable_value): New function.
3194         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
3195         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
3196         for DW_OP_GNU_variable_value.
3197
3198 2018-08-16  Tom Tromey  <tom@tromey.com>
3199
3200         * top.c (read_command_file): Update.
3201         (command_line_input): Remove "repeat" argument.
3202         * ada-lang.c (get_selections): Update.
3203         * linespec.c (decode_line_2): Update.
3204         * defs.h (command_line_input): Remove argument.
3205         * cli/cli-script.c (read_next_line): Update.
3206         * python/py-gdb-readline.c: Update.
3207
3208 2018-08-17  Tom Tromey  <tom@tromey.com>
3209
3210         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
3211         command_line_input.
3212
3213 2018-08-15  Tom Tromey  <tom@tromey.com>
3214
3215         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
3216
3217 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
3218
3219         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
3220         If used, use find_pc_partial_function to find address range
3221         to disassemble.
3222         * mi/mi-main.c (mi_cmd_list_features): Report
3223         "data-disassemble-a-option" feature.
3224         * NEWS: Mention new -data-disassemble option -a.
3225
3226 2018-08-13  Tom Tromey  <tom@tromey.com>
3227
3228         * common/common-defs.h (_FORTIFY_SOURCE): Define.
3229
3230 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3231
3232         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
3233         (aarch64_linux_collect_sve_regset): Likewise.
3234         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
3235         * regcache.h (regcache_map_entry_size): New function.
3236
3237 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3238
3239         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
3240         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
3241         (SVE_HEADER_VL_LENGTH): Likewise.
3242         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
3243         (SVE_HEADER_FLAGS_LENGTH): Likewise.
3244         (SVE_HEADER_RESERVED_LENGTH): Likewise.
3245         (SVE_HEADER_SIZE_OFFSET): Likewise.
3246         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
3247         (SVE_HEADER_VL_OFFSET): Likewise.
3248         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
3249         (SVE_HEADER_FLAGS_OFFSET): Likewise.
3250         (SVE_HEADER_RESERVED_OFFSET): Likewise.
3251         (SVE_HEADER_SIZE): Likewise.
3252         (aarch64_linux_core_read_vq): Add function.
3253         (aarch64_linux_core_read_description): Check for SVE section.
3254
3255 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3256
3257         * aarch64-fbsd-tdep.c
3258         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
3259         collect_size.
3260         * aarch64-linux-tdep.c
3261         (aarch64_linux_iterate_over_regset_sections): Likewise.
3262         * alpha-linux-tdep.c
3263         (alpha_linux_iterate_over_regset_sections):
3264         * alpha-nbsd-tdep.c
3265         (alphanbsd_iterate_over_regset_sections): Likewise.
3266         * amd64-fbsd-tdep.c
3267         (amd64fbsd_iterate_over_regset_sections): Likewise.
3268         * amd64-linux-tdep.c
3269         (amd64_linux_iterate_over_regset_sections): Likewise.
3270         * arm-bsd-tdep.c
3271         (armbsd_iterate_over_regset_sections): Likewise.
3272         * arm-fbsd-tdep.c
3273         (arm_fbsd_iterate_over_regset_sections): Likewise.
3274         * arm-linux-tdep.c
3275         (arm_linux_iterate_over_regset_sections): Likewise.
3276         * corelow.c (get_core_registers_cb): Likewise.
3277         (core_target::fetch_registers): Likewise.
3278         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
3279         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
3280         * gdbarch.h (void): Regenerate.
3281         * gdbarch.sh: Add supply_size and collect_size.
3282         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
3283         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
3284         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
3285         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
3286         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
3287         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
3288         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
3289         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
3290         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
3291         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
3292         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
3293         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
3294         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
3295         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
3296         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections): Likewise.
3297         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
3298         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
3299         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
3300         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
3301         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
3302         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
3303         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections): Likewise.
3304         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
3305         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
3306         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
3307         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
3308         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
3309         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
3310         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
3311         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
3312
3313 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
3314
3315         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
3316         with string_printf.
3317
3318 2018-08-10  Keith Seitz  <keiths@redhat.com>
3319
3320         * compile/compile-c-support.c (add_code_header, add_code_footer):
3321         Move into policy class.
3322         (c_push_user_expression, pop_user_expression_nop)
3323         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
3324         (compile_program): New host class.
3325         (c_compile_program): New typedef.
3326         (c_compute_porgram): Use c_compile_program.
3327
3328 2018-08-10  Keith Seitz  <keiths@redhat.com>
3329
3330         * compile/compile-internal.h (compile_instance::~compile_instance):
3331         Remove calls to htab_delete.
3332         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
3333         * compile.c (compile_instance::compile_instance): Initialize
3334         htab unique pointers.
3335         (compile_instance::get_cached_type, compile_instance::insert_type)
3336         (compile_instance::error_symbol_once): Update for unique_ptr.
3337
3338 2018-08-10  Keith Seitz  <keiths@redhat.com>
3339
3340         * compile/compile-c-symbols.c (struct symbol_error)
3341         (hash_symbol_error, eq_symbol_error, del_symbol_error)
3342         (compile_instance::insert_symbol_error)
3343         (compile_instance::error_symbol_once): Move to ...
3344         * compile/compile.c: ... here.
3345
3346 2018-08-10  Keith Seitz  <keiths@redhat.com>
3347
3348         * compile/compile-c-support.c (c_get_compile_context): Use `new'
3349         instead of `new_compile_instance'.
3350         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
3351         Update description.
3352         If the symbol error map is not initialized, create it.
3353         (generate_c_for_for_one_symbol): Do not check/initialize
3354         the symbol error map.
3355         * compile/compile-c-types.c (compile_c_instance): Make a class.
3356         Update all callers.
3357         (compile_instance::compile_instance): Initialize the type cache.
3358         (get_cached_type): New function.
3359         (insert_type): Update description.
3360         (compile_c_instance::m_default_cflags): Define.
3361         (convert_type): Update description.  Use get_cached_type.
3362         (delete_instance): Moved to destructor.
3363         (new_compile_instance): Moved to constructor.
3364         * compile/compile-c.h (compile_c_instance): Make class inheriting
3365         from compile_instance.
3366         <base>: Remove field.
3367         <type_map, symbol_err_map>: Move to base class.
3368         <c_plugin>: Rename to `m_plugin' and remove pointer type.
3369         * compile/compile-internal.h (compile_instance): Make class.
3370         <type_map_t, symbol_err_map_t>: Define.
3371         <fe>: Rename to `m_gcc_fe'.
3372         <scope, block, gcc_target_options>: Add `m_' prefix.
3373         <m_type_map, m_symbol_err_map>: New fields, moved from
3374         compile_c_instance.
3375         <destroy>: Remove.
3376         (convert_type, new_compile_instance): Remove.
3377         * compile/compile.c (cleanup_compile_instance): Remove.
3378         (compile_to_object): Use unique_ptr to eliminate cleanups.
3379         (compile_instance::set_print_callback, compile_instance::version)
3380         (compile_instance::set_verbose)
3381         (compile_instance::set_driver_filename)
3382         (compile_instance::set_triplet_regexp)
3383         (compile_instance::set_arguments)
3384         (compile_instance::set_source_file)
3385         (compile_instance::compile): Define.
3386
3387 2018-08-10  Keith Seitz  <keiths@redhat.com>
3388
3389         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
3390         * compile/compile-c-types.c: Define GCC_METHODN macros and include
3391         gcc-c-fe.def to define C plugin.
3392         (delete_instance): Delete `c_plugin'.
3393         (new_compile_instance): Initialize `c_plugin'.
3394         * compile/compile-c.h: Include gcc_c_plugin.h.
3395         (struct compile_c_instance) <c_plugin>: New member.
3396         * gcc-c-plugin.h: New file.
3397         Update all callers with API change.
3398
3399 2018-08-10  Keith Seitz  <keiths@redhat.com>
3400
3401         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
3402         (HFILES_NO_SRCDIR): ... to here.
3403         Add compile-internal.h and compile-c.h.
3404         * compile/compile-c-support.c: Include compile-c.h.
3405         * compile/compile-c-symbols.c: Include compile-c.h.
3406         (generate_c_for_variable_locations): Update comment.
3407         * compile/compile-c-types.c: Include compile-c.h.
3408         * compile/compile-c.h: New file -- moved C language declarations
3409         from other files here.
3410         * compile/compile-internal.h: Do not include hashtab.h or
3411         common/enum-flags.h.
3412         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
3413         (gcc_convert_symbol, gcc_symbol_address)
3414         (generate_c_for_variable_locations, c_get_mode_for_size)
3415         (c_get_range_decl_name): Definitions moved to compile-c.h.
3416         * compile/compile-loc2c.c: Include compile-c.h.
3417
3418 2018-08-10  Keith Seitz  <keiths@redhat.com>
3419
3420         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
3421         (c_symbol_substitution_name): ... this.
3422         Update all callers.
3423
3424 2018-08-10  Keith Seitz  <keiths@redhat.com>
3425
3426         * compile/compile-c-support.c (c_compute_program): Use
3427         unique_xmalloc_ptr to eliminate cleanup.
3428         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
3429         Return a unique_xmalloc_ptr and eliminate cleanup.
3430         * compile/compile-internal.h (generate_c_for_variable_locations):
3431         Return unique_xmalloc_ptr and update description.
3432
3433 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
3434
3435         * corelow.c (core_target::get_core_register_section): Rename
3436         min_size to section_min_size.
3437
3438 2018-08-09  Jim Wilson  <jimw@sifive.com>
3439
3440         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
3441         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
3442         * NEWS: Mention new GNU/Linux RISC-V target.
3443         * configure.host: Add riscv*-*-linux*.
3444         * configure.nat: Add riscv*.
3445         * configure.tgt: Add riscv*-*-linux*.
3446         * riscv-linux-nat.c: New file.
3447         * riscv-linux-tdep.c: New file.
3448
3449 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3450
3451         * infrun.c (resume): Make static, add forward declaration.
3452         (proceed): Update header comment.
3453         * infrun.h (resume): Delete declaration.
3454
3455 2018-08-09  Tom Tromey  <tom@tromey.com>
3456
3457         * riscv-tdep.h: Minor formatting fixes.
3458
3459 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
3460
3461         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
3462         * dwarf-index-cache.c (create_dir_and_check): Likewise.
3463         (test_mkdir_recursive): Likewise.
3464         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
3465
3466 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3467
3468         * valarith.c (value_subscripted_rvalue): If an array is not in
3469         memory, and we don't know the upper bound, then we can't know that
3470         the requested element exists or not.
3471
3472 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
3473
3474         * target.c (str_comma_list_concat_elem): Fix typo in comment.
3475         (target_options_to_string): Add comment.
3476
3477 2018-08-08  Tom Tromey  <tom@tromey.com>
3478
3479         * unittests/scoped_mmap-selftests.c: Check result of "write".
3480
3481 2018-08-08  Jim Wilson  <jimw@sifive.com>
3482
3483         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
3484         (decode_register_index_short): New.
3485         (decode_j_type_insn, decode_cj_type_insn): New.
3486         (decode_b_type_insn, decode_cb_type_insn): New.
3487         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
3488         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
3489         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
3490         is_c_sw_insn instead of is_sw_insn.
3491         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
3492         (riscv_software_single_step): New.
3493         * riscv-tdep.h (riscv_software_single_step): Declare.
3494
3495         * riscv-tdep.c (riscv_isa_xlen): Drop static.
3496         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
3497
3498 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
3499
3500         PR gdb/18050:
3501         * target.c (dispose_inferior): Don't dispose of inferiors that are
3502         already killed.
3503
3504 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
3505
3506         * remote.c (remote_target::download_tracepoint): Change char* to
3507         const char*.
3508
3509 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
3510
3511         * target.h (target_options_to_string): Return an std::string.
3512         * target.c (str_comma_list_concat_elem): Return void, use
3513         std::string.
3514         (do_option): Likewise.
3515         (target_options_to_string): Return an std::string.
3516         * linux-nat.c (linux_nat_target::wait): Adjust.
3517         * target-debug.h (target_debug_print_options): Adjust.
3518
3519 2018-08-07  Tom Tromey  <tom@tromey.com>
3520
3521         * Makefile.in (CPPFLAGS): New variable.
3522         (INTERNAL_CPPFLAGS): Use it.
3523
3524 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3525
3526         * NEWS: Mention the index cache.
3527
3528 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3529
3530         * common/pathstuff.h (get_standard_cache_dir): New.
3531         * common/pathstuff.c (get_standard_cache_dir): New.
3532         * build-id.h (build_id_to_string): New.
3533         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
3534         DEBUG_STR_SUFFIX): Move to here.
3535         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
3536         DEBUG_STR_SUFFIX): Move from there.
3537         (write_psymtabs_to_index): Make non-static, add basename
3538         parameter.  Write to temporary files, rename when done.
3539         (save_gdb_index_command): Adjust call to
3540         write_psymtabs_to_index.
3541         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
3542         field.
3543         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
3544         (get_gdb_index_contents_from_cache): New.
3545         (get_gdb_index_contents_from_cache_dwz): New.
3546         (dwarf2_initialize_objfile): Read index from cache.
3547         (dwarf2_build_psymtabs): Save to index.
3548         * dwarf-index-cache.h: New file.
3549         * dwarf-index-cache.c: New file.
3550         * dwarf-index-write.h: New file.
3551
3552 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3553
3554         * gnulib/aclocal.m4: Re-generate.
3555         * gnulib/config.in: Re-generate.
3556         * gnulib/configure: Re-generate.
3557         * gnulib/import/Makefile.am: Re-generate.
3558         * gnulib/import/Makefile.in: Re-generate.
3559         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
3560         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
3561         * gnulib/import/m4/mkdir.m4: New file.
3562         * gnulib/import/mkdir.c: New file.
3563         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
3564         module.
3565
3566 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3567
3568         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
3569         * common/scoped_mmap.c: New file.
3570         * common/scoped_mmap.h (destroy): New method.
3571         (~scoped_mmap, reset): Use destroy.
3572         (scoped_mmap): New move constructor.
3573         (mmap_file): New declaration.
3574         * unittests/scoped_mmap-selftests.c (test_normal,
3575         test_invalid_filename, run_tests): New functions.
3576         (_initialize_scoped_mmap_selftests): Register selftest.
3577
3578 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3579
3580         * dwarf2read.c (read_gdb_index_from_section): Rename to...
3581         (read_gdb_index_from_buffer): ... this.  Remove section
3582         parameter, add buffer parameter.
3583         (get_gdb_index_contents_ftype,
3584         get_gdb_index_contents_dwz_ftype): New typedefs.
3585         (dwarf2_read_gdb_index): Add callback parameters to get the
3586         index contents.
3587         (get_gdb_index_contents_from_section): New.
3588         (dwarf2_initialize_objfile): Update call to
3589         dwarf2_read_gdb_index.
3590
3591 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3592
3593         * common/filestuff.h (gdb_fopen_cloexec): New overload.
3594         (gdb_open_cloexec): Likewise.
3595         * nat/linux-osdata.c (command_from_pid): Use string_printf.
3596         (commandline_from_pid): Likewise.
3597         (linux_xfer_osdata_threads): Likewise.
3598         (linux_xfer_osdata_fds): Likewise.
3599         * ada-lang.c (is_package_name): Likewise.
3600         * auxv.c (procfs_xfer_auxv): Likewise.
3601         * breakpoint.c (print_one_breakpoint_location): Use
3602         uiout::field_fmt.
3603         (print_one_catch_solib): Use string_printf.
3604         * coff-pe-read.c (add_pe_exported_sym): Likewise.
3605         (add_pe_forwarded_sym): Likewise.
3606         * dwarf2read.c (create_type_unit_group): Likewise.
3607         (build_error_marker_type): Likewise.
3608         * infcall.c (get_function_name): Likewise.
3609         * valprint.c (print_converted_chars_to_obstack): Likewise.
3610         * xtensa-tdep.c (xtensa_register_type): Likewise.
3611
3612 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
3613
3614         * remote.c (remote_target::download_tracepoint): Fix format
3615         string errors.
3616
3617 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3618
3619         * tracefile.c: Include common/byte-vector.h.
3620         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
3621         with trace_regblock_size if needed.  Update uses of buf.
3622
3623 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3624
3625         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
3626         std::vector<unsigned char>.
3627         * tracepoint.c (collection_list::collection_list): Remove
3628         m_regs_mask initializer from initializer list.  Resize
3629         m_regs_mask using the largest remote register number.
3630         (collection_list::add_remote_register): Remove size check on
3631         m_regs_mask.  Use at to access element.
3632         (collection_list::stringify): Change type of temp_buf to
3633         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
3634         stringify the register mask.  Use pack_hex_byte for the register
3635         mask.
3636
3637 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3638
3639         * tracepoint.h (class collection_list) <add_register>: Remove.
3640         <add_remote_register, add_ax_registers, add_local_register>:
3641         Declare.
3642         <add_memrange>: Add scope parameter.
3643         * tracepoint.c (encode_actions_1): Likewise.
3644         (collection_list::add_register): Rename to ...
3645         (collection_list::add_remote_register): ... this.  Update
3646         comment.
3647         (collection_list::add_ax_registers, add_local_register): New
3648         methods.
3649         (collection_list::add_memrange): Add scope parameter.  Call
3650         add_local_register instead of add_register.
3651         (finalize_tracepoint_aexpr): New function.
3652         (collection_list::collect_symbol): Update calls to add_memrange.
3653         Call add_local_register instead of add_register.  Call
3654         add_ax_registers.  Call finalize_tracepoint_aexpr.
3655         (encode_actions_1): Get remote regnos for $reg action.  Call
3656         add_remote_register, add_ax_registers, and add_local_register.
3657         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
3658         (validate_actionline): Call finalize_tracepoint_aexpr.
3659
3660 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3661
3662         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
3663         Replace array buf with gdb::char_vector buf, of size
3664         get_remote_packet_size ().  Replace references to buf and
3665         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
3666         and xsnprintf with snprintf.  Raise errors if the buffer is too
3667         small.
3668
3669 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3670
3671         * remote.c (remote_target::download_tracepoint): Fix the has_more
3672         predicate in the QTDP action list iteration.
3673
3674 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3675
3676         * remote.c (remote_target::download_tracepoint): Fix indentation
3677         in for block.
3678
3679 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3680
3681         * proc-api.c (_initialize_proc_api): Remove c, unused.
3682         * procfs.c (procfs_init_inferior): Remove signals, unused.
3683         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
3684         unused.
3685
3686 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
3687             Andrew Burgess  <andrew.burgess@embecosm.com>
3688
3689         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
3690         'W_STOPCODE (0)' as this could be ambiguous.
3691
3692 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
3693
3694         * ser-tcp.c (net_open): Fix thinko when deciding whether to
3695         disable TCP's Nagle algorithm (use "ai_protocol" instead of
3696         "ai_socktype").
3697
3698 2018-08-02  Tom Tromey  <tom@tromey.com>
3699
3700         PR symtab/16842.
3701         * dwarf2read.c (read_func_scope): Set symtab on template parameter
3702         symbols.
3703         (process_structure_scope): Likewise.
3704
3705 2018-08-02  Xavier Roirand  <roirand@adacore.com>
3706
3707         PR gdb/22629:
3708         * darwin-nat.c (darwin_kill_inferior): Fix handling of
3709         kill inferior.
3710
3711 2018-08-02  Tom Tromey  <tom@tromey.com>
3712
3713         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
3714         (darwin_suspend_inferior, darwin_resume_inferior)
3715         (darwin_decode_notify_message, darwin_resume_inferior_threads)
3716         (darwin_check_new_threads): Check result of get_darwin_inferior.
3717
3718 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
3719
3720         GDB 8.1.1 released.
3721
3722 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
3723
3724         * varobj.c (varobj_get_path_expr_parent): Report an error if
3725         parent is a dynamic varobj.
3726
3727 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
3728
3729         * gnulib/aclocal.m4: Re-generate.
3730         * gnulib/config.in: Re-generate.
3731         * gnulib/configure: Re-generate.
3732         * gnulib/import/Makefile.in: Re-generate.
3733         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
3734         * gnulib/import/m4/onceonly.m4: Re-generate.
3735
3736 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
3737
3738         * target-descriptions.c (struct xml_test_tdesc): New.
3739         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
3740         (record_xml_tdesc): Update.
3741         (maintenance_check_xml_descriptions): Update.
3742         * target-descriptions.h (record_xml_tdesc): Update comment.
3743
3744 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
3745
3746         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
3747         checking array bounds are defined.
3748
3749 2018-07-30  Tom Tromey  <tom@tromey.com>
3750
3751         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
3752         irreflexivity violation.
3753
3754 2018-07-30  Tom Tromey  <tom@tromey.com>
3755
3756         * cli/cli-decode.c (lookup_cmd): Remove lint code.
3757         * value.c (unpack_long): Remove lint code.
3758         * valops.c (value_ind): Remove lint code.
3759         * valarith.c (value_x_binop, value_x_unop, value_equal)
3760         (value_pos): Remove lint code.
3761
3762 2018-07-28  Tom de Vries  <tdevries@suse.de>
3763
3764         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
3765         with undefined upper bound as <optimized out>.
3766
3767 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
3768
3769         * gcore.in: Rename variable "name" to "prefix".  Expand
3770         "usage" text.
3771
3772 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
3773
3774         * windows-nat.c (windows_nat_target::create_inferior): Update to
3775         call close() in global namespace.
3776
3777 2018-07-26  Tom Tromey  <tom@tromey.com>
3778
3779         * dwarf-index-write.c (add_address_entry): Don't add objfile
3780         offsets.
3781         * dbxread.c (find_stab_function): Rename from
3782         find_stab_function_addr.  Return a bound_minimal_symbol.
3783         (read_dbx_symtab): Use raw_text_low, raw_text_high.
3784         Don't add objfile offsets.
3785         (end_psymtab): Use raw_text_low, raw_text_high,
3786         MSYMBOL_VALUE_RAW_ADDRESS.
3787         (read_ofile_symtab): Update.
3788         (process_one_symbol): Update.
3789         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
3790         offsets.
3791         (dw2_relocate): Remove.
3792         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
3793         searching addrmap.
3794         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
3795         Update.
3796         (process_psymtab_comp_unit_reader, add_partial_symbol)
3797         (add_partial_subprogram, dwarf2_ranges_read): Update.
3798         (load_partial_dies): Update.
3799         (add_address_entry): Don't add objfile offsets.
3800         (dwarf2_build_include_psymtabs): Update.
3801         (create_addrmap_from_aranges): Don't add objfile offsets.
3802         (dw2_find_pc_sect_compunit_symtab): Update.
3803         * mdebugread.c (parse_symbol): Don't add objfile offsets.
3804         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
3805         Update.
3806         (parse_partial_symbols): Don't add objfile offsets.  Use
3807         raw_text_low, raw_text_high.  Update.
3808         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
3809         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
3810         or call 'relocate' quick function.  Clear psymbol_map.
3811         * psympriv.h (struct partial_symbol) <address>: Add section
3812         offset.
3813         <set_unrelocated_address>: Rename from set_address.
3814         <raw_text_low, raw_text_high>: New methods.
3815         <text_low, text_high>: Add objfile parameter.
3816         (add_psymbol_to_bcache): Add 'section' parameter.  Call
3817         set_unrelocated_address.
3818         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3819         (find_pc_psymbol): Update.
3820         (fixup_psymbol_section, relocate_psymtabs): Remove.
3821         (dump_psymtab, psym_functions): Update.
3822         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
3823         parameter.
3824         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
3825         (start_psymtab_common): Update.
3826         * symfile-debug.c (debug_qf_relocate): Remove.
3827         (debug_sym_quick_functions): Update.
3828         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
3829         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
3830         Update.
3831
3832 2018-07-26  Tom Tromey  <tromey@redhat.com>
3833
3834         * dbxread.c (end_psymtab): Use text_high_valid and
3835         text_low_valid.
3836         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
3837         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
3838         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
3839         Update comment.
3840         <text_low_valid, text_high_valid>: New fields.
3841         <set_text_low, set_text_high>: Update.
3842         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
3843
3844 2018-07-26  Tom Tromey  <tom@tromey.com>
3845
3846         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
3847         Update.
3848         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
3849         textlow and texthigh fields.
3850         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
3851         Update.
3852         * mdebugread.c (parse_lines, parse_partial_symbols)
3853         (psymtab_to_symtab_1): Update.
3854         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
3855         Rename fields.  Update comment.  Now private.
3856         <text_low, text_high, set_text_low, set_text_high>: New methods.
3857         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3858         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
3859         (start_psymtab_common, maintenance_info_psymtabs)
3860         (maintenance_check_psymtabs): Update.
3861         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
3862         texthigh fields.
3863         (scan_xcoff_symtab): Update.
3864
3865 2018-07-26  Tom Tromey  <tromey@redhat.com>
3866
3867         * psympriv.h (struct partial_symbol) <unrelocated_address,
3868         address, set_address>: New methods.
3869         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
3870         (fixup_psymbol_section, relocate_psymtabs): Update.
3871         (print_partial_symbols): Add 'objfile' parameter.  Update.
3872         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
3873         Update.
3874
3875 2018-07-26  Tom Tromey  <tom@tromey.com>
3876
3877         * dwarf-index-write.c (write_psymbols, debug_names::insert)
3878         (debug_names::write_psymbols): Update.
3879         * psympriv.h (struct partial_symbol): Derive from
3880         general_symbol_info.
3881         <obj_section>: New method.
3882         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
3883         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3884         (find_pc_sect_psymbol, fixup_psymbol_section)
3885         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
3886         (print_partial_symbols, recursively_search_psymtabs)
3887         (compare_psymbols, psymbol_hash, psymbol_compare)
3888         (add_psymbol_to_bcache, maintenance_check_psymtabs)
3889         (psymbol_name_matches, psym_fill_psymbol_map): Update.
3890
3891 2018-07-26  Tom Tromey  <tromey@redhat.com>
3892
3893         * dbxread.c (end_psymtab): Remove dead code.
3894
3895 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
3896
3897         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
3898         DWARF unwinders are disabled.
3899         * dwarf2-frame.c: Add dwarf2read.h include.
3900         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
3901         disabled.
3902         (dwarf2_frame_unwinders_enabled_p): Define.
3903         (show_dwarf_unwinders_enabled_p): New function.
3904         (_initialize_dwarf2_frame): Register switch to control DWARF
3905         unwinder use.
3906         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
3907         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
3908         (show_dwarf_cmdlist): Remove static keyword.
3909         * dwarf2read.h (set_dwarf_cmdlist): Declare.
3910         (show_dwarf_cmdlist): Declare.
3911         * NEWS: Document new feature.
3912
3913 2018-07-26  Tom de Vries  <tdevries@suse.de>
3914
3915         PR breakpoints/23366
3916         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
3917
3918 2018-07-26  Tom de Vries  <tdevries@suse.de>
3919
3920         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
3921         DW_AT_count can't be translated to a dynamic prop.
3922
3923 2018-07-25  Tom de Vries  <tdevries@suse.de>
3924
3925         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
3926         try/catch.
3927
3928 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
3929
3930         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
3931
3932 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
3933
3934         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
3935
3936 2018-07-24  Keith Seitz  <keiths@redhat.comt
3937
3938         PR symtab/23010
3939         * dwarf2read.c (dw2_add_symbol_to_list): New function.
3940         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
3941         instead of add_symbol_to_list.
3942         (read_file_scope): Call prepare_one_comp_unit before reading
3943         any other DIEs.
3944
3945 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
3946
3947         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
3948
3949 2018-07-24  Tom Tromey  <tom@tromey.com>
3950
3951         * utils.c (malloc, realloc, free): Don't declare.
3952         * configure, config.in: Rebuild.
3953         * configure.ac: Don't check for declarations of free, malloc, or
3954         realloc.
3955
3956 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
3957
3958         * aarch64-linux-nat.c
3959         (aarch64_linux_nat_target::stopped_data_address): Remove unused
3960         variable.
3961         * arm-linux-nat.c (fetch_regs): Likewise.
3962         (store_regs): Likewise.
3963         (fetch_vfp_regs): Likewise.
3964         (store_vfp_regs): Likewise.
3965         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
3966         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
3967         (arm_linux_nat_target::insert_watchpoint): Likewise.
3968         (arm_linux_nat_target::remove_watchpoint): Likewise.
3969         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
3970         Likewise.
3971         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
3972         Likewise.
3973         * ppc-linux-nat.c (fetch_register): Likewise.
3974         (fetch_all_gp_regs): Likewise.
3975         (fetch_ppc_registers): Likewise.
3976         (store_all_gp_regs): Likewise.
3977         (store_ppc_registers): Likewise.
3978         (hwdebug_insert_point): Likewise.
3979         (can_use_watchpoint_cond_accel): Likewise.
3980         * remote-sim.c (gdb_os_write_stdout): Likewise.
3981
3982 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
3983             Tom Tromey  <tom@tromey.com>
3984
3985         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
3986         test for it.
3987         * configure: Rebuild.
3988
3989 2018-07-22  Tom Tromey  <tom@tromey.com>
3990
3991         * regformats/regdat.sh: Define xmltarget_${name} inside
3992         #ifndef IN_PROCESS_AGENT.
3993
3994 2018-07-22  Tom Tromey  <tom@tromey.com>
3995
3996         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
3997
3998 2018-07-22  Tom Tromey  <tom@tromey.com>
3999
4000         * symfile.c (reread_symbols): Notify iter, not objfile.
4001
4002 2018-07-22  Tom Tromey  <tom@tromey.com>
4003
4004         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
4005         Use arch_ops.
4006         (ravenscar_thread_target::prepare_to_store): Likewise.
4007
4008 2018-07-22  Tom Tromey  <tom@tromey.com>
4009
4010         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
4011         unused variable.  Call value_fetch_lazy when needed.
4012         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
4013         Remove unused variable.  Call value_fetch_lazy when needed.
4014
4015 2018-07-22  Tom Tromey  <tom@tromey.com>
4016
4017         * m32c-tdep.c (mark_dma): Return void.
4018         (make_regs): Remove unused declarations.
4019
4020 2018-07-22  Tom Tromey  <tom@tromey.com>
4021
4022         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
4023         cmdscm_get_valid_command_smob_arg_unsafe for effect.
4024         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
4025         bkscm_get_valid_block_smob_arg_unsafe for effect.
4026
4027 2018-07-22  Tom Tromey  <tom@tromey.com>
4028
4029         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
4030         value_type.
4031
4032 2018-07-22  Tom Tromey  <tom@tromey.com>
4033
4034         * windows-nat.c (saved_context): Conditionally define.
4035         * remote.c (remote_target::remote_btrace_maybe_reopen):
4036         Conditionally declare "warned".
4037         * inflow.c (sigquit_ours): Conditionally define.
4038         (new_tty): Move "tty" declaration inside #if.
4039         * guile/guile.c (guile_datadir): Conditionally define.
4040         * charset.c (set_be_le_names): Move some declarations inside #if.
4041         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
4042         #if.
4043         (parse_xml_btrace_conf): Likewise.
4044
4045 2018-07-22  Tom Tromey  <tom@tromey.com>
4046
4047         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
4048
4049 2018-07-22  Tom Tromey  <tom@tromey.com>
4050
4051         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
4052         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
4053         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
4054         * buildsym-legacy.c (get_macro_table): Remove unused variable.
4055         * stack.c (frame_apply_level_command): Remove unused variable.
4056         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
4057         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
4058         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
4059         unused variable.
4060         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
4061         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
4062         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
4063         variable.
4064         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
4065         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
4066         variable.
4067         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
4068         Remove unused variable.
4069         * cli/cli-script.c (recurse_read_control_structure): Remove unused
4070         variable.
4071         * common/tdesc.c (print_xml_feature::visit): Remove unused
4072         variable.
4073         * compile/compile-object-load.c (store_regs): Remove unused
4074         variables.
4075         * complaints.c (clear_complaints): Remove unused variable.
4076         * corelow.c (core_target_open): Remove unused variable.
4077         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
4078         variable.
4079         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
4080         variable.
4081         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
4082         variable.
4083         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
4084         variable.
4085         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
4086         variable.
4087         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
4088         variable.
4089         * ia64-tdep.c (examine_prologue): Remove unused variable.
4090         * infcall.c (run_inferior_call): Remove unused variable.
4091         * inferior.c (exit_inferior): Remove unused variable.
4092         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
4093         * linespec.c (decode_line_2): Remove unused variable.
4094         * linux-nat.c (super_close): Remove.
4095         * linux-tdep.c (linux_info_proc): Remove unused variable.
4096         * mi/mi-main.c (mi_execute_command): Remove unused variable.
4097         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
4098         Remove unused variable.
4099         * parse.c (find_minsym_type_and_address): Remove unused variable.
4100         * printcmd.c (info_symbol_command, printf_floating): Remove unused
4101         variable.
4102         * python/py-breakpoint.c (bppy_set_commands): Remove unused
4103         variable.
4104         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
4105         variables.
4106         * record-btrace.c (record_btrace_target::store_registers): Remove
4107         unused variable.
4108         (cmd_show_record_btrace_cpu): Remove unused variable.
4109         * riscv-tdep.c (riscv_register_reggroup_p)
4110         (riscv_push_dummy_call, riscv_return_value): Remove unused
4111         variable.
4112         * rust-exp.y (literal): Remove unused variable.
4113         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
4114         unused variable.
4115         <STRUCTOP_ANONYMOUS>: Likewise.
4116         * s390-linux-tdep.c (s390_linux_init_abi_31)
4117         (s390_linux_init_abi_64): Remove unused variable.
4118         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
4119         (file_select_thread, net_windows_open, _initialize_ser_windows):
4120         Remove unused variables.
4121         * symtab.c (find_pc_sect_line): Remove unused variable.
4122         * target-memory.c (compute_garbled_blocks): Remove unused
4123         variable.
4124         (target_write_memory_blocks): Remove unused variable.
4125         * target.c (target_stack::unpush): Remove unused variables.
4126         * tracepoint.c (start_tracing, all_tracepoint_actions)
4127         (merge_uploaded_trace_state_variables)
4128         (print_one_static_tracepoint_marker): Remove unused variable.
4129         * unittests/basic_string_view/element_access/char/1.cc (test01):
4130         Remove unused variable.
4131         * windows-nat.c (windows_continue, windows_add_all_dlls)
4132         (do_initial_windows_stuff, windows_nat_target::create_inferior):
4133         Remove unused variables.
4134
4135 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
4136
4137         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
4138         attr_profile in HAVE_ELF.
4139         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
4140         HAVE_ELF.
4141
4142 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
4143
4144         * frame.c (frame_register_unwind): Change parameter name.
4145         (frame_unwind_register): Likewise.
4146         (frame_unwind_register_value): Likewise.
4147         (frame_unwind_register_signed): Likewise.
4148         (frame_unwind_register_unsigned): Likewise.
4149         * frame.h (frame_register_unwind): Likewise.
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_unwind_arch): Likewise.
4155
4156 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4157
4158         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
4159         ISA maintenance.
4160
4161 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4162
4163         * mips-linux-nat.c (mips_linux_nat_target::read_description):
4164         Call `get_ptrace_pid' rather than extracting the ptrace PID by
4165         hand.
4166
4167 2018-07-20  Keith Seitz  <keiths@redhat.com>
4168
4169         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
4170         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
4171         m_compunit_symtab, m_language>: Add "m_" prefix.
4172         Update all uses.
4173         * buildsym.c: Update all uses.
4174
4175 2018-07-20  Tom Tromey  <tom@tromey.com>
4176
4177         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
4178         * buildsym.h (record_line_ftype): Remove typedef.
4179
4180 2018-07-20  Tom Tromey  <tom@tromey.com>
4181
4182         * buildsym-legacy.h (augment_type_symtab): Don't declare.
4183         (end_expandable_symtab): Likewise.
4184         (end_symtab_get_static_block): Likewise.
4185         (end_symtab_from_static_block): Likewise.
4186         * buildsym-legacy.c (augment_type_symtab): Remove.
4187         (end_expandable_symtab): Remove.
4188         (end_symtab_get_static_block): Remove.
4189         (end_symtab_from_static_block): Remove.
4190
4191 2018-07-20  Tom Tromey  <tom@tromey.com>
4192
4193         * dwarf2read.c: Include buildsym.h.
4194         (struct dwarf2_cu) <builder>: New method.
4195         (fixup_go_packaging): Update.
4196         (process_full_comp_unit, process_full_type_unit): Update.  Don't
4197         use scoped_free_pendings.
4198         (using_directives): Add "cu" parameter, remove "language".
4199         (read_import_statement, setup_type_unit_groups, )
4200         (read_func_scope, read_lexical_block_scope)
4201         (dwarf2_record_block_ranges, read_namespace): Update.
4202         (lnp_state_machine::lnp_state_machine): Add cu parameter.
4203         (lnp_state_machine::handle_end_sequence): Update.
4204         (class lnp_state_machine) <m_cu>: New member.
4205         <m_record_line_callback>: Remove.
4206         <m_currently_recording_lines>: New member.
4207         (lnp_state_machine::handle_set_file): Update.
4208         (noop_record_line): Remove.
4209         (dwarf_record_line_p): Add cu parameter.
4210         (dwarf_record_line_1, dwarf_finish_line): Likewise.
4211         (lnp_state_machine::record_line)
4212         (lnp_state_machine::lnp_state_machine)
4213         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
4214         (dwarf_decode_lines): Update.
4215         (dwarf2_start_subfile): Add cu parameter.
4216         (dwarf2_start_symtab, new_symbol): Update.
4217         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
4218         Remove dwarf2_per_objfile parameter.
4219         (dwarf_decode_macros): Update.
4220
4221 2018-07-20  Tom Tromey  <tom@tromey.com>
4222
4223         * stabsread.c (define_symbol): Update.
4224         * buildsym-legacy.h (get_buildsym_compunit): Declare.
4225         * dwarf2read.c (new_symbol): Update.
4226         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
4227         * cp-namespace.c: Include buildsym.h.
4228         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
4229         * buildsym-legacy.c (get_buildsym_compunit): New function.
4230
4231 2018-07-20  Tom Tromey  <tom@tromey.com>
4232
4233         * xcoffread.c: Include buildsym-legacy.h.
4234         * windows-nat.c: Include buildsym-legacy.h.
4235         * stabsread.c: Include buildsym-legacy.h.
4236         * mdebugread.c: Include buildsym-legacy.h.
4237         * buildsym-legacy.h: New file.
4238         * buildsym-legacy.c: New file, from buildsym.c.
4239         * go32-nat.c: Include buildsym-legacy.h.
4240         * dwarf2read.c: Include buildsym-legacy.h.
4241         * dbxread.c: Include buildsym-legacy.h.
4242         * cp-namespace.c: Include buildsym-legacy.h.
4243         * coffread.c: Include buildsym-legacy.h.
4244         * buildsym.h: Move some contents to buildsym-legacy.h.
4245         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
4246         buildsym-legacy.c.
4247         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
4248
4249 2018-07-20  Tom Tromey  <tom@tromey.com>
4250
4251         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
4252         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
4253         (buildsym_compunit::buildsym_compunit)
4254         (buildsym_compunit::~buildsym_compunit)
4255         (buildsym_compunit::get_macro_table): Define.
4256
4257 2018-07-20  Tom Tromey  <tom@tromey.com>
4258
4259         * buildsym.c (reset_symtab_globals): Remove.
4260         (buildsym_compunit::end_symtab_from_static_block): Update.
4261         (buildsym_compunit::augment_type_symtab): Update.
4262         (end_symtab_from_static_block): Call free_buildsym_compunit.
4263         (augment_type_symtab, end_symtab, end_expandable_symtab):
4264         Likewise.
4265
4266 2018-07-20  Tom Tromey  <tom@tromey.com>
4267
4268         * arch-utils.c: Do not include buildsym.h.
4269         * mipsread.c: Do not include buildsym.h.
4270         * machoread.c: Do not include buildsym.h.
4271         * elfread.c: Do not include buildsym.h.
4272
4273 2018-07-20  Tom Tromey  <tom@tromey.com>
4274
4275         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
4276         initialization.
4277         (buildsym_compunit): Add new constructor.
4278         (struct buildsym_compunit) <get_last_source_file, finish_block,
4279         record_block_range, start_subfile, patch_subfile_names,
4280         push_subfile, pop_subfile, record_line, get_compunit_symtab,
4281         set_last_source_start_addr, get_last_source_start_addr,
4282         get_local_using_directives, set_local_using_directives,
4283         get_global_using_directives, outermost_context_p,
4284         get_current_context_stack, get_context_stack_depth,
4285         get_current_subfile, get_local_symbols, get_file_symbols,
4286         get_global_symbols, record_debugformat, record_producer,
4287         push_context, pop_context, end_symtab_get_static_block,
4288         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
4289         New public methods.
4290         <record_pending_block, finish_block_internal, make_blockvector,
4291         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
4292         private methods.
4293         Update all users.
4294
4295 2018-05-22  Tom Tromey  <tom@tromey.com>
4296
4297         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
4298         parameter.
4299         (finish_block_internal): Update.
4300
4301 2018-07-20  Tom Tromey  <tom@tromey.com>
4302
4303         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
4304         parameter.
4305         (finish_block_internal): Update.
4306
4307 2018-07-20  Tom Tromey  <tom@tromey.com>
4308
4309         * buildsym.h (EXTERN): Don't define or undef.
4310         * buildsym.c (EXTERN): Don't define.
4311
4312 2018-07-20  Tom Tromey  <tom@tromey.com>
4313
4314         * buildsym.c: Remove TODO comment.
4315
4316 2018-07-20  Tom Tromey  <tom@tromey.com>
4317
4318         * coffread.c (coff_symtab_read): Update.
4319         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
4320         (xcoff_new_init): Update.
4321         * mipsread.c (mipscoff_new_init): Update.
4322         * mdebugread.c (mdebug_build_psymtabs): Update.
4323         * elfread.c (elf_new_init): Update.
4324         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
4325         Update.
4326         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
4327         (coffstab_build_psymtabs, elfstab_build_psymtabs)
4328         (stabsect_build_psymtabs): Update.
4329         * buildsym.h (buildsym_init): Don't declare.
4330         * buildsym.c: Update comment.
4331         (prepare_for_building): Remove.
4332         (start_symtab, restart_symtab): Update.
4333         (reset_symtab_globals): Update comment.
4334         (buildsym_init): Remove.
4335
4336 2018-07-20  Tom Tromey  <tom@tromey.com>
4337
4338         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
4339         * stabsread.c (patch_block_stabs, define_symbol, read_type)
4340         (read_enum_type, common_block_start, common_block_end)
4341         (cleanup_undefined_types_1, finish_global_stabs): Update.
4342         * mdebugread.c (psymtab_to_symtab_1): Update.
4343         * dwarf2read.c (fixup_go_packaging, read_func_scope)
4344         (read_lexical_block_scope, new_symbol): Update.
4345         * dbxread.c (process_one_symbol): Update.
4346         * coffread.c (coff_symtab_read, process_coff_symbol)
4347         (coff_read_enum_type): Update.
4348         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
4349         declare.
4350         (get_local_symbols, get_file_symbols, get_global_symbols): New
4351         functions.
4352         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
4353         m_global_symbols.
4354         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
4355         (~scoped_free_pendings): Update.
4356         (finish_block, prepare_for_building, reset_symtab_globals)
4357         (end_symtab_get_static_block, end_symtab_with_blockvector)
4358         (augment_type_symtab, push_context): Update.
4359         (get_local_symbols, get_file_symbols, get_global_symbols): New
4360         functions.
4361         (buildsym_init): Update.
4362
4363 2018-07-20  Tom Tromey  <tom@tromey.com>
4364
4365         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
4366         (process_full_type_unit): Likewise.
4367         (dwarf2_start_symtab): Set list_in_scope.
4368
4369 2018-07-20  Tom Tromey  <tom@tromey.com>
4370
4371         * dwarf2read.c (process_psymtab_comp_unit_reader)
4372         (build_type_psymtabs_reader): Do not set list_in_scope.
4373
4374 2018-07-20  Tom Tromey  <tom@tromey.com>
4375
4376         * buildsym.c (free_pendings): Remove.
4377         (add_symbol_to_list, scoped_free_pendings)
4378         (finish_block_internal, buildsym_init): Update.
4379
4380 2018-07-20  Tom Tromey  <tom@tromey.com>
4381
4382         * xcoffread.c (read_xcoff_symtab): Update.
4383         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
4384         Update.
4385         * dbxread.c (process_one_symbol): Update.
4386         * coffread.c (coff_symtab_read): Update.
4387         * buildsym.h (finish_block): Update.
4388         * buildsym.c (finish_block): Remove "listhead" argument.
4389         (end_symtab_get_static_block): Update.
4390
4391 2018-07-20  Tom Tromey  <tom@tromey.com>
4392
4393         * buildsym.h (class scoped_free_pendings): Remove constructor.
4394         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
4395         method.
4396         <m_pending_block_obstack, m_pending_blocks>: New members.
4397         (pending_block_obstack, pending_blocks): Remove.
4398         (scoped_free_pendings::scoped_free_pendings): Default.
4399         (~scoped_free_pendings): Update.
4400         (free_pending_blocks): Remove.
4401         (finish_block_internal, record_pending_block, make_blockvector)
4402         (end_symtab_get_static_block, augment_type_symtab, push_context)
4403         (buildsym_init): Update.
4404
4405 2018-07-20  Tom Tromey  <tom@tromey.com>
4406
4407         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
4408         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
4409         members.
4410         (pending_addrmap, pending_addrmap_obstack)
4411         (pending_addrmap_interesting): Remove.
4412         (scoped_free_pendings, record_block_range, make_blockvector)
4413         (prepare_for_building, reset_symtab_globals, buildsym_init):
4414         Update.
4415
4416 2018-07-20  Tom Tromey  <tom@tromey.com>
4417
4418         * xcoffread.c (process_linenos): Update.
4419         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
4420         * mdebugread.c (psymtab_to_symtab_1): Update.
4421         * dwarf2read.c (setup_type_unit_groups)
4422         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
4423         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
4424         * dbxread.c (process_one_symbol): Update.
4425         * coffread.c (coff_symtab_read, enter_linenos)
4426         (process_coff_symbol): Update.
4427         * buildsym.h (current_subfile): Don't declare.
4428         (get_current_subfile): Declare.
4429         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
4430         member.
4431         (start_subfile, free_buildsym_compunit, push_subfile)
4432         (prepare_for_building, start_symtab): Update.
4433         (get_current_subfile): New function.
4434
4435 2018-07-20  Tom Tromey  <tom@tromey.com>
4436
4437         * coffread.c (coff_symtab_read): Update.
4438         * xcoffread.c (read_xcoff_symtab): Update.
4439         * dwarf2read.c (new_symbol): Update.
4440         (read_func_scope, read_lexical_block_scope): Update.
4441         * dbxread.c (process_one_symbol): Update.
4442         * buildsym.h (context_stack, context_stack_depth): Don't declare.
4443         (outermost_context_p): Remove macro.
4444         (outermost_context_p, get_current_context_stack)
4445         (get_context_stack_depth): Declare.
4446         (pop_context): Return struct context_stack.
4447         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
4448         member.
4449         (context_stack_size): Remove.
4450         (INITIAL_CONTEXT_STACK_SIZE): Remove.
4451         (prepare_for_building, end_symtab_get_static_block)
4452         (augment_type_symtab, push_context): Update.
4453         (pop_context): Return struct context_stack.
4454         (outermost_context_p, get_current_context_stack)
4455         (get_context_stack_depth): New functions.
4456         (buildsym_init): Update.
4457
4458 2018-07-20  Tom Tromey  <tom@tromey.com>
4459
4460         * rust-exp.y: Now a pure parser.  Update all rules.
4461         (%union): Move earlier.
4462         (current_parser, work_obstack): Remove globals.
4463         (rust_parser, ~rust_parser): Update.
4464         (class rust_parser) <copy_name, concat3, crate_name, super_name,
4465         lex_character, lex_number, lex_string, lex_identifier,
4466         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
4467         convert_name, convert_params_to_expression,
4468         convert_ast_to_expression, ast_basic_type, ast_operation,
4469         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
4470         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
4471         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
4472         ast_array_type, ast_slice_type, ast_reference_type,
4473         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
4474         (rust_parse): Update.
4475         (rustyyerror, rustyylex): Add parser parameter.
4476         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
4477         (rust_lex_stringish_test, rust_lex_test_sequence)
4478         (rust_lex_test_trailing_dot, rust_lex_test_completion)
4479         (rust_lex_test_push_back, rust_lex_tests): Update.
4480
4481 2018-07-19  Pedro Alves  <palves@redhat.com>
4482
4483         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
4484         gdb::unique_xmalloc_ptr.
4485         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
4486         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
4487         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
4488         copy-initialization.
4489         * guile/scm-pretty-print.c (ppscm_print_children): Use
4490         gdb::unique_xmalloc_ptr instead of cleanups.
4491         (gdbscm_apply_val_pretty_printer): Remove cleanups.
4492         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
4493         gdb::unique_xmalloc_ptr.
4494         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
4495         Adjust to use gdb::unique_xmalloc_ptr.
4496         * guile/scm-utils.c (extract_arg): Adjust.
4497         * guile/scm-value.c (gdbscm_value_field): Adjust to use
4498         gdb::unique_xmalloc_ptr instead of a cleanup.
4499
4500 2018-07-19  Tom Tromey  <tom@tromey.com>
4501
4502         * utils.c (do_value_free_to_mark)
4503         (make_cleanup_value_free_to_mark): Remove.
4504         * utils.h (make_cleanup_value_free_to_mark): Remove.
4505
4506 2018-07-19  Pedro Alves  <palves@redhat.com>
4507
4508         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
4509         forwarding reference.
4510
4511 2018-07-18  Pedro Alves  <palves@redhat.com>
4512
4513         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
4514         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
4515         cleanup.
4516
4517 2018-07-18  Pedro Alves  <palves@redhat.com>
4518
4519         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
4520         exceptions.
4521         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
4522         (gdbscm_wrap): New.
4523         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
4524         directly instead of a cleanup.
4525         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
4526         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
4527         (vlscm_binop_gdbthrow): New, factored out from ...
4528         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
4529         (vlscm_rich_compare): Use gdbscm_wrap.
4530         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
4531         instead of a cleanup.
4532         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
4533         cleanup.
4534         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
4535         Use xfree directly instead of a cleanup.
4536         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
4537         Adjust to use gdbscm_wrap and scoped_value_mark.
4538         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
4539         (gdbscm_value_address, gdbscm_value_dereference)
4540         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
4541         scoped_value_mark.
4542         (gdbscm_value_dynamic_type): Use scoped_value_mark.
4543         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
4544         scoped_value_mark.
4545         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
4546         gdbscm_wrap and scoped_value_mark.
4547         (gdbscm_value_to_string): Use xfree directly instead of a
4548         cleanup.  Move 'buffer' unique_ptr to TRY scope.
4549         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
4550         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
4551         scoped_value_mark.
4552         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
4553         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
4554         scoped_value_mark.
4555         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
4556         gdbscm_wrap.
4557
4558 2018-07-18  Tom de Vries  <tdevries@suse.de>
4559
4560         * findvar.c (default_read_var_value): Also resolve dynamic type for
4561         LOC_OPTIMIZED_OUT vars.
4562
4563 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
4564
4565         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
4566         decoding.
4567
4568 2018-07-17  Tom Tromey  <tom@tromey.com>
4569
4570         * guile/scm-param.c (pascm_set_func, pascm_show_func)
4571         (compute_enum_list, pascm_set_param_value_x)
4572         (gdbscm_parameter_value): Update.
4573         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
4574         (gdbscm_scm_to_host_string): Update.
4575         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
4576         Update.
4577         * guile/scm-cmd.c (cmdscm_add_completion): Update.
4578         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
4579         * guile/scm-string.c (gdbscm_scm_to_string): Return
4580         unique_xmalloc_ptr.
4581         (gdbscm_scm_to_host_string): Likewise.
4582
4583 2018-07-17  Tom Tromey  <tom@tromey.com>
4584
4585         * guile/guile.c (gdbscm_eval_from_control_command): Update.
4586         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
4587         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
4588         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
4589         unique_xmalloc_ptr.
4590
4591 2018-07-17  Tom Tromey  <tom@tromey.com>
4592
4593         * guile/scm-param.c (pascm_signal_setshow_error): Update.
4594         * guile/guile-internal.h (gdbscm_exception_message_to_string):
4595         Update.
4596         * guile/scm-cmd.c (cmdscm_function): Update.
4597         * guile/scm-pretty-print.c
4598         (ppscm_print_exception_unless_memory_error): Update.
4599         * guile/scm-exception.c (gdbscm_exception_message_to_string):
4600         Return unique_xmalloc_ptr.
4601
4602 2018-07-17  Tom Tromey  <tom@tromey.com>
4603
4604         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
4605         Use string_printf.
4606
4607 2018-07-17  Jim Wilson  <jimw@sifive.com>
4608
4609         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
4610         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
4611         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
4612         unecessary braces after EF_RISCV_RVC test.  Delete call to
4613         set_gdbarch_decr_pc_after_break.
4614
4615         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
4616         RISCV_LAST_FP_REGNUM + 1.
4617         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
4618
4619 2018-07-17  Tom Tromey  <tom@tromey.com>
4620
4621         * configure.ac: Remove --disable-gdbcli.
4622         * configure: Rebuild.
4623         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
4624         (SUBDIR_CLI_CFLAGS): Remove.
4625         (SFILES): Use SUBDIR_CLI_SRCS.
4626         (COMMON_OBS): Use SUBDIR_CLI_OBS.
4627
4628 2018-07-17  Tom Tromey  <tom@tromey.com>
4629
4630         PR gdb/18624:
4631         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
4632
4633 2018-07-16  Jim Wilson  <jimw@sifive.com>
4634
4635         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
4636
4637 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
4638
4639         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
4640         variable.
4641         (libunwind_frame_sniffer): Likewise.
4642         (libunwind_frame_prev_register): Likewise.
4643         (libunwind_sigtramp_frame_sniffer): Likewise.
4644         * ia64-tdep.c (ia64_access_reg): Likewise.
4645         (ia64_access_rse_reg): Likewise.
4646         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
4647         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
4648
4649 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
4650
4651         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
4652
4653 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
4654
4655         * remote-sim.c (gdbsim_target::close,
4656         gdbsim_target::mourn_inferior): Remove unused variables.
4657
4658 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
4659
4660         * ia64-tdep.c (ktab_buf): New global.
4661         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
4662         (get_kernel_table): Adjust.
4663
4664 2018-07-16  Tom Tromey  <tom@tromey.com>
4665
4666         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
4667         * dwarf2read.c (using_directives, new_symbol): Use
4668         outermost_context_p.
4669         * dbxread.c (process_one_symbol): Use outermost_context_p.
4670         * coffread.c (coff_symtab_read): Use outermost_context_p.
4671
4672 2018-07-16  Tom Tromey  <tom@tromey.com>
4673
4674         * dwarf2read.c (using_directives, read_func_scope)
4675         (read_lexical_block_scope): Update.
4676         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
4677         * buildsym.h (local_using_directives, global_using_directives):
4678         Don't declare.
4679         (get_local_using_directives, set_local_using_directives)
4680         (get_global_using_directives): Declare.
4681         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
4682         m_global_using_directives>: New members.
4683         (finish_block_internal, prepare_for_building)
4684         (reset_symtab_globals, end_symtab_get_static_block)
4685         (push_context): Update.
4686         (get_local_using_directives, set_local_using_directives)
4687         (get_global_using_directives): New functions.
4688         (buildsym_init): Update.
4689
4690 2018-07-16  Tom Tromey  <tom@tromey.com>
4691
4692         * xcoffread.c (xcoff_initial_scan): Don't call
4693         free_pending_blocks.
4694         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
4695         * buildsym.h (class scoped_free_pendings): Add constructor.
4696         (free_pending_blocks): Don't declare.
4697         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
4698         (free_pending_blocks): Now static.
4699
4700 2018-07-16  Tom Tromey  <tom@tromey.com>
4701
4702         * buildsym.h (push_subfile, pop_subfile): Update declarations.
4703         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
4704         member.
4705         (struct subfile_stack): Remove.
4706         (subfile_stack): Remove.
4707         (push_subfile, pop_subfile, buildsym_init): Update.
4708
4709 2018-07-16  Tom Tromey  <tom@tromey.com>
4710
4711         * buildsym.c (push_subfile): Use gdb_assert.
4712         (pop_subfile): Use gdb_assert.
4713
4714 2018-07-16  Tom Tromey  <tom@tromey.com>
4715
4716         * buildsym.h (merge_symbol_lists): Remove.
4717         * buildsym.c (merge_symbol_lists): Remove.
4718
4719 2018-07-16  Tom Tromey  <tom@tromey.com>
4720
4721         * stabsread.c (scan_file_globals): Update comment.
4722         * stabsread.h (scan_file_globals): Move from buildsym.h.
4723         * buildsym.h (scan_file_globals): Move to stabsread.h.
4724
4725 2018-07-16  Tom Tromey  <tom@tromey.com>
4726
4727         * xcoffread.c (xcoff_new_init): Update.
4728         * mipsread.c (mipscoff_new_init): Update.
4729         * mdebugread.c (mdebug_build_psymtabs): Update.
4730         * elfread.c (elf_new_init): Update.
4731         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
4732         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
4733         * buildsym.h (buildsym_new_init): Don't declare.
4734         * buildsym.c (buildsym_new_init): Remove.
4735
4736 2018-07-16  Tom Tromey  <tom@tromey.com>
4737
4738         * stabsread.h (within_function): Move from buildsym.h.
4739         * stabsread.c (start_stabs): Clear within_function.
4740         * coffread.c (coff_start_symtab): Clear within_function.
4741         * buildsym.h (within_function): Move to stabsread.h.
4742         * buildsym.c (prepare_for_building): Update.
4743
4744 2018-07-16  Tom Tromey  <tom@tromey.com>
4745
4746         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
4747         * dwarf2read.c (dwarf2_start_symtab): Don't set
4748         processing_gcc_compilation.
4749         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
4750
4751 2018-07-16  Tom Tromey  <tom@tromey.com>
4752
4753         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
4754         (next_symbol_text_func): Move from buildsym.h.
4755         * stabsread.c (hashname): Move from buildsym.c.
4756         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
4757         (next_symbol_text_func, hashname): Move to stabsread.h.
4758         * buildsym.c: Don't include bcache.h
4759         (hashname): Move to stasbread.c.
4760
4761 2018-07-16  Tom Tromey  <tom@tromey.com>
4762
4763         * buildsym.h (context_stack_size): Don't declare.
4764         * buildsym.c (context_stack_size): New global.
4765
4766 2018-07-16  Tom Tromey  <tom@tromey.com>
4767
4768         * dbxread.c (processing_acc_compilation): New global.
4769         * buildsym.h (processing_acc_compilation): Don't declare.
4770
4771 2018-07-16  Tom Tromey  <tom@tromey.com>
4772
4773         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
4774         * dbxread.c (read_ofile_symtab): Update.
4775         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
4776         * buildsym.h (last_source_start_addr): Remove.
4777         (set_last_source_start_addr, get_last_source_start_addr):
4778         Declare.
4779         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
4780         parameter.
4781         (struct buildsym_compunit) <m_last_source_start_addr>: New
4782         member.
4783         (prepare_for_building): Remove start_addr parameter.
4784         (start_symtab, restart_symtab, end_symtab_get_static_block)
4785         (end_symtab_with_blockvector): Update.
4786         (set_last_source_start_addr, get_last_source_start_addr): New
4787         functions.
4788
4789 2018-07-16  Tom Tromey  <tom@tromey.com>
4790
4791         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
4792         member.
4793         (have_line_numbers): Remove.
4794         (record_line, prepare_for_building, end_symtab_get_static_block)
4795         (augment_type_symtab): Update.
4796
4797 2018-07-16  Tom Tromey  <tom@tromey.com>
4798
4799         * buildsym.c (~buildsym_compunit): Free the macro table.
4800         (struct buildsym_compunit) <get_macro_table, release_macros>: New
4801         methods.
4802         <m_pending_macros>: New member.
4803         (pending_macros): Remove.
4804         (~scoped_free_pendings, get_macro_table, prepare_for_building)
4805         (reset_symtab_globals, end_symtab_get_static_block)
4806         (end_symtab_with_blockvector, augment_type_symtab)
4807         (buildsym_init): Update.
4808
4809 2018-07-16  Tom Tromey  <tom@tromey.com>
4810
4811         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
4812         parameter.
4813         (buildsym_compunit::set_last_source_file): New method.
4814         <m_last_source_file>: New member.
4815         (prepare_for_building): Remove "name" parameter.
4816         (start_symtab, restart_symtab, reset_symtab_globals): Update.
4817         (last_source_file): Remove.
4818         (set_last_source_file, get_last_source_file): Update.
4819
4820 2018-07-16  Tom Tromey  <tom@tromey.com>
4821
4822         * buildsym.c (prepare_for_building): Add assert.
4823
4824 2018-07-16  Tom Tromey  <tom@tromey.com>
4825
4826         * buildsym.c (~buildsym_compunit): Update.
4827         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
4828         (start_subfile, patch_subfile_names)
4829         (end_symtab_with_blockvector): Update.
4830
4831 2018-07-16  Tom Tromey  <tom@tromey.com>
4832
4833         * buildsym.c (struct buildsym_compunit): Add constructor,
4834         destructor, initializers.
4835         (start_buildsym_compunit): Remove.
4836         (free_buildsym_compunit): Use "delete".
4837         (start_symtab, restart_symtab): Use "new".
4838
4839 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
4840
4841         * symfile.c (set_objfile_default_section_offset): Remove struct
4842         keyword.
4843
4844 2018-07-14  Stafford Horne  <shorne@gmail.com>
4845
4846         * (Responsible Maintainers): Add myself as or1k maintainer.
4847
4848 2018-07-13  Tom Tromey  <tom@tromey.com>
4849
4850         * symfile.c (set_objfile_default_section_offset): Use extra braces
4851         around initializer.
4852
4853 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
4854
4855         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
4856         non-branching basr.
4857
4858 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4859
4860         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
4861         unittests/cli-utils-selftests.c
4862         * unittests/cli-utils-selftests.c: New file.
4863
4864 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4865
4866         * NEWS: Mention new commands. Mention change to 'thread apply'.
4867
4868 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4869
4870         * thread.c (thr_try_catch_cmd): New function.
4871         (thread_apply_all_command): Handle qcs flags.
4872         (thread_apply_command): Handle qcs flags.
4873         (taas_command): New function.
4874         (tfaas_command): New function.
4875         (_initialize_thread): Update to setup the new commands 'taas
4876         and 'tfaas'. Change doc string for 'thread apply'.
4877
4878 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4879
4880         * stack.c: (trailing_outermost_frame): New function, mostly
4881         extracted from backtrace_command_1.
4882         (leading_innermost_frame): New function.
4883         (backtrace_command_1): Update to call trailing_outermost_frame.
4884         (frame_apply_command_count): New function.
4885         (frame_apply_level_command): New function.
4886         (frame_apply_all_command): New function.
4887         (frame_apply_command): New function.
4888         (faas_command): New function.
4889         (frame_cmd_list): New variable.
4890         (_initialize_stack): Update to setup the new commands 'frame apply'
4891         and 'faas'.
4892
4893 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4894
4895         * cli-utils.c (number_or_range_parser::get_number): Only handle
4896         numbers or convenience var as numbers.
4897         (parse_flags): New function.
4898         (parse_flags_qcs): New function.
4899         (number_or_range_parser::finished): Ensure parsing end is detected
4900         before end of string.
4901         * cli-utils.h (parse_flags): New function.
4902         (parse_flags_qcs): New function.
4903         (number_or_range_parser): Remove m_finished bool.
4904         (number_or_range_parser::skip_range): Set m_in_range to false.
4905
4906 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
4907
4908         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
4909         on Windows.
4910
4911 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
4912             Jan Kratochvil  <jan.kratochvil@redhat.com>
4913             Paul Fertser  <fercerpav@gmail.com>
4914             Tsutomu Seki  <sekiriki@gmail.com>
4915             Pedro Alves  <palves@redhat.com>
4916
4917         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
4918         'unittests/parse-connection-spec-selftests.c'.
4919         (COMMON_SFILES): Add 'common/netstuff.c'.
4920         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
4921         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
4922         * common/netstuff.c: New file.
4923         * common/netstuff.h: New file.
4924         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
4925         (wait_for_connect): Update comment.  New parameter
4926         'gdb::optional<int> sock' instead of 'struct serial *scb'.
4927         Use 'sock' directly instead of 'scb->fd'.
4928         (try_connect): New function, with code from 'net_open'.
4929         (net_open): Rewrite main loop to deal with multiple
4930         sockets/addresses.  Handle IPv6-style hostnames; implement
4931         support for IPv6 connections.
4932         * unittests/parse-connection-spec-selftests.c: New file.
4933
4934 2018-07-11  Pedro Alves  <palves@redhat.com>
4935
4936         PR gdb/23377
4937         * remote.c (remote_target::remote_detach_pid): Call
4938         set_current_process.
4939
4940 2018-07-11  Pedro Alves  <palves@redhat.com>
4941
4942         * h8300-tdep.c (h8300_gdbarch_init): Remove
4943         set_gdbarch_ecoff_reg_to_regnum calls.
4944
4945 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
4946
4947         PR c++/23373
4948         * c-typeprint.c (c_type_print_base_struct_union): Don't print
4949         offsets/sizes for static members of a class/struct.
4950
4951 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
4952
4953         * target-descriptions.c (tdesc_register_bitsize): Rename.
4954         * target-descriptions.h (tdesc_register_bitsize): Likewise.
4955         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
4956         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
4957
4958 2018-07-10  Tom Tromey  <tom@tromey.com>
4959
4960         * breakpoint.c (moribund_locations): Now static and a
4961         std::vector.
4962         (breakpoint_init_inferior, moribund_breakpoint_here_p)
4963         (build_bpstat_chain, update_global_location_list)
4964         (breakpoint_retire_moribund): Update.
4965         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
4966         VEC.
4967
4968 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
4969
4970         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
4971         (riscv_register_reggroup_p): Use new function, remove unneeded
4972         parenthesis.
4973         (riscv_push_dummy_call): Extend assert to compare against xlen or
4974         flen based on register type.
4975
4976 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
4977
4978         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
4979
4980 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4981
4982         * remote.c (show_hardware_watchpoint_limit): New function.
4983         (show_hardware_watchpoint_length_limit): New function.
4984         (show_hardware_breakpoint_limit): New function.
4985         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
4986         where appropriate, update help text.
4987
4988 2018-07-09  Tom Tromey  <tom@tromey.com>
4989
4990         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
4991         (CLIBS): Don't mention NAT_CLIBS.
4992
4993 2018-07-09  Tom Tromey  <tom@tromey.com>
4994
4995         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
4996         (LIBGDB_OBS, clean mostlyclean): Update.
4997         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
4998
4999 2018-07-09  Tom Tromey  <tom@tromey.com>
5000
5001         * Makefile.in (%.c: %.y): Use ECHO_YACC.
5002         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
5003         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
5004
5005 2018-07-09  Tom Tromey  <tom@tromey.com>
5006
5007         * Makefile.in (ALLDEPFILES): Remove exec.c.
5008         (COMMON_OBS): Remove exec.o.
5009         (COMMON_SFILES): Add exec.c.
5010
5011 2018-07-09  Tom Tromey  <tom@tromey.com>
5012
5013         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
5014
5015 2018-07-09  Tom Tromey  <tom@tromey.com>
5016
5017         * Makefile.in (clean mostlyclean): Remove stamp-version.
5018         (version.c): Depend on stamp-version.
5019         (stamp-version): New rule, from version.c rule.
5020
5021 2018-07-09  Tom Tromey  <tom@tromey.com>
5022
5023         * Makefile.in (init.c): Depend on stamp-init.
5024         (stamp-init): New rule, from init.c rule.
5025         (clean mostlyclean): Remove stamp-init.
5026
5027 2018-07-09  Tom Tromey  <tom@tromey.com>
5028
5029         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
5030         SUBDIR_GCC_COMPILE_SRCS.
5031
5032 2018-07-09  Tom Tromey  <tom@tromey.com>
5033
5034         * Makefile.in (init.c): Remove some unused sed rules.
5035
5036 2018-07-09  Tom Tromey  <tom@tromey.com>
5037
5038         * Makefile.in (TSOBS): Remove.
5039         (INIT_FILES): Update.
5040         (LIBGDB_OBS): Update.
5041         (COMMON_SFILES): Add inflow.c.
5042         (SFILES): Remove inflow.c.
5043
5044 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
5045
5046         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
5047
5048 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
5049
5050         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
5051         get_saveloc_name, is_signal_frame_name, step_name,
5052         init_remote_name, create_addr_space_name,
5053         destroy_addr_space_name, search_unwind_table_name,
5054         find_dyn_list_name): Constify.
5055
5056 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
5057
5058         * darwin-nat.c (darwin_pthread_kill): New function.
5059         (darwin_resume_thread): Use darwin_pthread_kill.
5060
5061 2018-07-05  Tom de Vries  <tdevries@suse.de>
5062
5063         * macroexp.c (macro_buffer) <operator=>: New member function.
5064
5065 2018-07-04  Tom Tromey  <tom@tromey.com>
5066
5067         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
5068
5069 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
5070
5071         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
5072         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
5073         * maint.c: Likewise.
5074         * top.c: Likewise.
5075
5076 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5077
5078         * NEWS: Create a new section for the next release branch.
5079         Rename the section of the current branch, now that it has
5080         been cut.
5081
5082 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5083
5084         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
5085         * version.in: Bump version to 8.2.50.DATE-git.
5086
5087 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
5088             Pedro Alves  <palves@redhat.com>
5089
5090         * linux-nat.c (linux_init_ptrace): Rename to ...
5091         (linux_init_ptrace_procfs): ... this.  Call
5092         linux_proc_init_warnings.
5093         (linux_nat_target::post_attach)
5094         (linux_nat_target::post_startup_inferior): Adjust.
5095         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
5096         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
5097
5098 2018-07-04  Tom de Vries  <tdevries@suse.de>
5099
5100         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
5101         check ...
5102         (read_comp_unit_head): ... here.
5103
5104 2018-07-03  Tom Tromey  <tom@tromey.com>
5105
5106         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
5107         (stop_tracing, tstatus_command)
5108         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
5109         (print_one_static_tracepoint_marker): Update.
5110         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
5111         std::vector.
5112         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
5113         VEC.
5114         (all_tracepoints, static_tracepoints_here): Return std::vector.
5115
5116 2018-07-03  Tom Tromey  <tom@tromey.com>
5117
5118         * common/ptid.c (ptid_equal): Remove.
5119         * common/ptid.h (ptid_equal): Don't declare.
5120         * ada-tasks.c: Update.
5121         * breakpoint.c: Update.
5122         * common/agent.c: Update.
5123         * corelow.c: Update.
5124         * darwin-nat-info.c: Update.
5125         * darwin-nat.c: Update.
5126         * dcache.c: Update.
5127         * dtrace-probe.c: Update.
5128         * dummy-frame.c: Update.
5129         * fbsd-nat.c: Update.
5130         * frame.c: Update.
5131         * gdbthread.h: Update.
5132         * gnu-nat.c: Update.
5133         * go32-nat.c: Update.
5134         * inf-loop.c: Update.
5135         * inf-ptrace.c: Update.
5136         * infcall.c: Update.
5137         * infcmd.c: Update.
5138         * inflow.c: Update.
5139         * infrun.c: Update.
5140         * linux-fork.c: Update.
5141         * linux-nat.c: Update.
5142         * linux-thread-db.c: Update.
5143         * mi/mi-cmd-var.c: Update.
5144         * mi/mi-interp.c: Update.
5145         * mi/mi-main.c: Update.
5146         * nto-procfs.c: Update.
5147         * ppc-linux-tdep.c: Update.
5148         * procfs.c: Update.
5149         * python/py-inferior.c: Update.
5150         * python/py-record-btrace.c: Update.
5151         * python/py-record.c: Update.
5152         * ravenscar-thread.c: Update.
5153         * regcache.c: Update.
5154         * remote-sim.c: Update.
5155         * remote.c: Update.
5156         * sol-thread.c: Update.
5157         * solib.c: Update.
5158         * target.c: Update.
5159         * tui/tui-stack.c: Update.
5160         * varobj.c: Update.
5161         * windows-nat.c: Update.
5162         * windows-tdep.c: Update.
5163
5164 2018-07-03  Tom Tromey  <tom@tromey.com>
5165
5166         * common/ptid.c (ptid_match): Remove.
5167         * common/ptid.h (ptid_match): Don't declare.
5168         * fbsd-nat.c: Update.
5169         * infcmd.c: Update.
5170         * infrun.c: Update.
5171         * linux-nat.c: Update.
5172         * record-btrace.c: Update.
5173         * regcache.c: Update.
5174         * remote.c: Update.
5175
5176 2018-07-03  Tom Tromey  <tom@tromey.com>
5177
5178         * common/ptid.c (ptid_tid_p): Remove.
5179         * common/ptid.h (ptid_tid_p): Don't declare.
5180         * sol-thread.c: Update.
5181
5182 2018-07-03  Tom Tromey  <tom@tromey.com>
5183
5184         * common/ptid.c (ptid_lwp_p): Remove.
5185         * common/ptid.h (ptid_lwp_p): Don't declare.
5186         * fbsd-nat.c: Update.
5187         * linux-nat.c: Update.
5188         * nat/linux-procfs.c: Update.
5189         * nat/x86-linux-dregs.c: Update.
5190         * sol-thread.c: Update.
5191
5192 2018-07-03  Tom Tromey  <tom@tromey.com>
5193
5194         * common/ptid.c (ptid_is_pid): Remove.
5195         * common/ptid.h (ptid_is_pid): Don't declare.
5196         * infrun.c: Update.
5197         * linux-nat.c: Update.
5198         * mi/mi-interp.c: Update.
5199         * remote.c: Update.
5200         * thread.c: Update.
5201
5202 2018-07-03  Tom Tromey  <tom@tromey.com>
5203
5204         * common/ptid.c (ptid_get_tid): Remove.
5205         * common/ptid.h (ptid_get_tid): Don't declare.
5206         * ada-tasks.c: Update.
5207         * aix-thread.c: Update.
5208         * bsd-uthread.c: Update.
5209         * darwin-nat.c: Update.
5210         * fbsd-nat.c: Update.
5211         * i386-darwin-nat.c: Update.
5212         * infrun.c: Update.
5213         * linux-tdep.c: Update.
5214         * nto-procfs.c: Update.
5215         * ppc-ravenscar-thread.c: Update.
5216         * python/py-infthread.c: Update.
5217         * ravenscar-thread.c: Update.
5218         * sol-thread.c: Update.
5219         * sparc-ravenscar-thread.c: Update.
5220         * windows-nat.c: Update.
5221
5222 2018-07-03  Tom Tromey  <tom@tromey.com>
5223
5224         * common/ptid.c (ptid_get_lwp): Remove.
5225         * common/ptid.h (ptid_get_lwp): Don't declare.
5226         * aarch64-linux-nat.c: Update.
5227         * ada-tasks.c: Update.
5228         * aix-thread.c: Update.
5229         * amd64-linux-nat.c: Update.
5230         * arm-linux-nat.c: Update.
5231         * corelow.c: Update.
5232         * fbsd-nat.c: Update.
5233         * fbsd-tdep.c: Update.
5234         * gnu-nat.c: Update.
5235         * i386-cygwin-tdep.c: Update.
5236         * i386-gnu-nat.c: Update.
5237         * i386-linux-nat.c: Update.
5238         * ia64-linux-nat.c: Update.
5239         * inf-ptrace.c: Update.
5240         * infrun.c: Update.
5241         * linux-fork.c: Update.
5242         * linux-nat.c: Update.
5243         * linux-tdep.c: Update.
5244         * linux-thread-db.c: Update.
5245         * mips-linux-nat.c: Update.
5246         * nat/aarch64-linux-hw-point.c: Update.
5247         * nat/aarch64-linux.c: Update.
5248         * nat/linux-btrace.c: Update.
5249         * nat/linux-osdata.c: Update.
5250         * nat/linux-procfs.c: Update.
5251         * nat/x86-linux-dregs.c: Update.
5252         * obsd-nat.c: Update.
5253         * ppc-fbsd-nat.c: Update.
5254         * ppc-linux-nat.c: Update.
5255         * procfs.c: Update.
5256         * python/py-infthread.c: Update.
5257         * ravenscar-thread.c: Update.
5258         * remote.c: Update.
5259         * s390-linux-nat.c: Update.
5260         * sol-thread.c: Update.
5261         * sol2-tdep.c: Update.
5262         * spu-linux-nat.c: Update.
5263         * x86-linux-nat.c: Update.
5264         * xtensa-linux-nat.c: Update.
5265
5266 2018-07-03  Tom Tromey  <tom@tromey.com>
5267
5268         * common/ptid.c (ptid_get_pid): Remove.
5269         * common/ptid.h (ptid_get_pid): Don't declare.
5270         * aarch64-linux-nat.c: Update.
5271         * ada-lang.c: Update.
5272         * aix-thread.c: Update.
5273         * alpha-bsd-nat.c: Update.
5274         * amd64-fbsd-nat.c: Update.
5275         * amd64-linux-nat.c: Update.
5276         * arm-linux-nat.c: Update.
5277         * arm-nbsd-nat.c: Update.
5278         * auxv.c: Update.
5279         * break-catch-syscall.c: Update.
5280         * breakpoint.c: Update.
5281         * bsd-uthread.c: Update.
5282         * corelow.c: Update.
5283         * ctf.c: Update.
5284         * darwin-nat.c: Update.
5285         * fbsd-nat.c: Update.
5286         * fbsd-tdep.c: Update.
5287         * gcore.c: Update.
5288         * gnu-nat.c: Update.
5289         * hppa-nbsd-nat.c: Update.
5290         * hppa-obsd-nat.c: Update.
5291         * i386-fbsd-nat.c: Update.
5292         * ia64-linux-nat.c: Update.
5293         * inf-ptrace.c: Update.
5294         * infcmd.c: Update.
5295         * inferior.c: Update.
5296         * inferior.h: Update.
5297         * inflow.c: Update.
5298         * infrun.c: Update.
5299         * linux-fork.c: Update.
5300         * linux-nat.c: Update.
5301         * linux-tdep.c: Update.
5302         * linux-thread-db.c: Update.
5303         * m68k-bsd-nat.c: Update.
5304         * mi/mi-interp.c: Update.
5305         * mi/mi-main.c: Update.
5306         * mips-linux-nat.c: Update.
5307         * mips-nbsd-nat.c: Update.
5308         * mips64-obsd-nat.c: Update.
5309         * nat/aarch64-linux-hw-point.c: Update.
5310         * nat/aarch64-linux.c: Update.
5311         * nat/linux-btrace.c: Update.
5312         * nat/linux-osdata.c: Update.
5313         * nat/linux-procfs.c: Update.
5314         * nat/x86-linux-dregs.c: Update.
5315         * nto-procfs.c: Update.
5316         * obsd-nat.c: Update.
5317         * ppc-linux-nat.c: Update.
5318         * ppc-nbsd-nat.c: Update.
5319         * ppc-obsd-nat.c: Update.
5320         * proc-service.c: Update.
5321         * procfs.c: Update.
5322         * python/py-inferior.c: Update.
5323         * python/py-infthread.c: Update.
5324         * ravenscar-thread.c: Update.
5325         * record.c: Update.
5326         * remote-sim.c: Update.
5327         * remote.c: Update.
5328         * rs6000-nat.c: Update.
5329         * s390-linux-nat.c: Update.
5330         * sh-nbsd-nat.c: Update.
5331         * sol-thread.c: Update.
5332         * sparc-nat.c: Update.
5333         * sparc64-tdep.c: Update.
5334         * spu-linux-nat.c: Update.
5335         * spu-tdep.c: Update.
5336         * target-debug.h: Update.
5337         * target.c: Update.
5338         * thread.c: Update.
5339         * tid-parse.c: Update.
5340         * tracefile-tfile.c: Update.
5341         * vax-bsd-nat.c: Update.
5342         * windows-nat.c: Update.
5343         * x86-linux-nat.c: Update.
5344         * x86-nat.c: Update.
5345
5346 2018-07-03  Tom Tromey  <tom@tromey.com>
5347
5348         * common/ptid.c (pid_to_ptid): Remove.
5349         * common/ptid.h (pid_to_ptid): Don't declare.
5350         * aix-thread.c: Update.
5351         * arm-linux-nat.c: Update.
5352         * common/ptid.c: Update.
5353         * common/ptid.h: Update.
5354         * corelow.c: Update.
5355         * ctf.c: Update.
5356         * darwin-nat.c: Update.
5357         * fbsd-nat.c: Update.
5358         * fork-child.c: Update.
5359         * gnu-nat.c: Update.
5360         * go32-nat.c: Update.
5361         * inf-ptrace.c: Update.
5362         * infcmd.c: Update.
5363         * inferior.c: Update.
5364         * infrun.c: Update.
5365         * linux-fork.c: Update.
5366         * linux-nat.c: Update.
5367         * nat/aarch64-linux-hw-point.c: Update.
5368         * nat/fork-inferior.c: Update.
5369         * nat/x86-linux-dregs.c: Update.
5370         * nto-procfs.c: Update.
5371         * obsd-nat.c: Update.
5372         * procfs.c: Update.
5373         * progspace.c: Update.
5374         * remote.c: Update.
5375         * rs6000-nat.c: Update.
5376         * s390-linux-nat.c: Update.
5377         * sol-thread.c: Update.
5378         * spu-linux-nat.c: Update.
5379         * target.c: Update.
5380         * top.c: Update.
5381         * tracefile-tfile.c: Update.
5382         * windows-nat.c: Update.
5383
5384 2018-07-03  Tom Tromey  <tom@tromey.com>
5385
5386         * common/ptid.h (ptid_build): Don't declare.
5387         * common/ptid.c (ptid_build): Remove.
5388         * aix-thread.c: Update.
5389         * bsd-kvm.c: Update.
5390         * bsd-uthread.c: Update.
5391         * common/agent.c: Update.
5392         * common/ptid.c: Update.
5393         * common/ptid.h: Update.
5394         * corelow.c: Update.
5395         * darwin-nat.c: Update.
5396         * fbsd-nat.c: Update.
5397         * gnu-nat.c: Update.
5398         * linux-fork.c: Update.
5399         * linux-nat.c: Update.
5400         * linux-thread-db.c: Update.
5401         * nat/linux-osdata.c: Update.
5402         * nat/linux-procfs.c: Update.
5403         * nto-procfs.c: Update.
5404         * obsd-nat.c: Update.
5405         * proc-service.c: Update.
5406         * procfs.c: Update.
5407         * ravenscar-thread.c: Update.
5408         * remote-sim.c: Update.
5409         * remote.c: Update.
5410         * sol-thread.c: Update.
5411         * target.c: Update.
5412         * windows-nat.c: Update.
5413
5414 2018-07-03  Tom Tromey  <tom@tromey.com>
5415
5416         * infrun.c (follow_exec): Use exit_inferior_silent.
5417         * inferior.c (exit_inferior_num_silent): Remove.
5418         * inferior.h (exit_inferior_num_silent): Don't declare.
5419
5420 2018-07-03  Tom Tromey  <tom@tromey.com>
5421
5422         PR cli/23340:
5423         * darwin-nat.c (darwin_attach_pid): Reset inferior and
5424         inferior_ptid on error.
5425
5426 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
5427             Simon Marchi  <simon.marchi@polymtl.ca>
5428
5429         PR tdep/8282
5430         * disasm.h (gdb_disassembler): Add
5431         `m_disassembler_options_holder'. member
5432         * disasm.c (get_all_disassembler_options): New function.
5433         (gdb_disassembler::gdb_disassembler): Use it.
5434         (gdb_buffered_insn_length_init_dis): Likewise.
5435         (gdb_buffered_insn_length): Adjust accordingly.
5436         (set_disassembler_options): Handle options with arguments.
5437         (show_disassembler_options_sfunc): Likewise.  Add a leading new
5438         line if showing options with descriptions.
5439         (disassembler_options_completer): Adapt to using the
5440         `disasm_options_and_args_t' structure.
5441         * mips-tdep.c (mips_disassembler_options): New variable.
5442         (mips_disassembler_options_o32): Likewise.
5443         (mips_disassembler_options_n32): Likewise.
5444         (mips_disassembler_options_n64): Likewise.
5445         (gdb_print_insn_mips): Don't set `disassembler_options'.
5446         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
5447         functions.
5448         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
5449         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
5450         `gdbarch_disassembler_options_implicit' and
5451         `gdbarch_valid_disassembler_options'.
5452         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
5453         `disasm_options_and_args_t' structure.
5454         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
5455         method.
5456         (valid_disassembler_options): Switch from `disasm_options_t' to
5457         the `disasm_options_and_args_t' structure.
5458         * NEWS: Document `set disassembler-options' support for the MIPS
5459         target.
5460         * gdbarch.h: Regenerate.
5461         * gdbarch.c: Regenerate.
5462
5463 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
5464
5465         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
5466
5467 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
5468
5469         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
5470         parameter in call to amd64_target_description.
5471         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
5472         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
5473         (amd64fbsd_init_abi): Likewise.
5474         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
5475         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
5476         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
5477         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
5478
5479 2018-06-29  Pedro Alves  <palves@redhat.com>
5480
5481         * gdb/amd64-tdep.h (amd64_create_target_description): Add
5482         "segments" parameter.
5483         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
5484         (_initialize_amd64_tdep): Update call to
5485         amd64_create_target_description.
5486         (amd64_target_description): Add "segments" parameter.  Adjust
5487         the implementation to use it.
5488         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
5489         call to amd64_create_target_description.
5490         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
5491         * gdb/arch/amd64.h (amd64_create_target_description): Add
5492         "segments" register.
5493         * gdb/arch/amd64.c (amd64_create_target_description): Add
5494         "segments" parameter.  Call create_feature_i386_64bit_segments
5495         only if SEGMENTS is true.
5496         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
5497         call to amd64_create_target_description.
5498
5499 2018-06-29  Pedro Alves  <palves@redhat.com>
5500
5501         * thread.c (thread_target_id_str): New, factored out from ...
5502         (print_thread_info_1): ... here.  Use it to compute the max
5503         "Target Id" column width.
5504
5505 2018-06-29  Pedro Alves  <palves@redhat.com>
5506
5507         * remote.c (remote_target::extra_thread_info): Delete
5508         'display_buf' and 'n' locals.  from the cache, regardless of
5509         packet mechanims is in use.  Use cache for qThreadExtra and qP
5510         methods too.
5511
5512 2018-06-29  Pedro Alves  <palves@redhat.com>
5513
5514         * blockframe.c (find_pc_sect_containing_function): New function.
5515         * breakpoint.c (print_breakpoint_location): Don't call
5516         find_pc_sect_function.
5517         * linespec.c (create_sals_line_offset): Record the location's
5518         symbol in the sal.
5519         * linespec.c (convert_address_location_to_sals): Fill in sal's
5520         symbol with find_pc_sect_containing_function.
5521         * symtab.c (find_function_start_sal): Rename to ...
5522         (find_function_start_sal_1): ... this.
5523         (find_function_start_sal): Reimplement as wrapper around
5524         find_function_start_sal_1, and use
5525         find_pc_sect_containing_function to fill in the sal's symbol.
5526         (find_function_start_sal(symbol*, bool)): Adjust.
5527         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
5528         comments.
5529         (find_pc_sect_containing_function): Declare.
5530
5531 2018-06-29  Pedro Alves  <palves@redhat.com>
5532
5533         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
5534         true if the the location has no symbol.
5535
5536 2018-06-28  Tom Tromey  <tom@tromey.com>
5537
5538         * NEWS: Mention --enable-codesign.
5539         * silent-rules.mk (ECHO_SIGN): New variable.
5540         * configure.ac: Add --enable-codesign.
5541         * configure: Rebuild.
5542         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
5543         (gdb$(EXEEXT)): Optionally invoke codesign.
5544
5545 2018-06-28  Pedro Alves  <palves@redhat.com>
5546
5547         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
5548         comments.
5549         (switch_to_thread_no_regs): Adjust comment.
5550         * infcmd.c (stop_pc): Delete.
5551         (post_create_inferior, info_program_command): Replace references
5552         to stop_pc with references to thread_info->suspend.stop_pc.
5553         * inferior.h (stop_pc): Delete declaration.
5554         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
5555         (handle_inferior_event_1, handle_signal_stop)
5556         (process_event_stop_test, keep_going_stepped_thread)
5557         (handle_step_into_function, handle_step_into_function_backward)
5558         (print_stop_location): Replace references to stop_pc with
5559         references to thread_info->suspend.stop_pc.
5560         (struct infcall_suspend_state) <stop_pc>: Delete field.
5561         (save_infcall_suspend_state, restore_infcall_suspend_state):
5562         Remove references to inf_stat->stop_pc.
5563         * linux-fork.c (fork_load_infrun_state): Likewise.
5564         * record-btrace.c (record_btrace_set_replay): Likewise.
5565         * record-full.c (record_full_goto_entry): Likewise.
5566         * remote.c (print_one_stopped_thread): Likewise.
5567         * target.c (target_resume): Extend comment.
5568         * thread.c (set_executing_thread): New.
5569         (set_executing): Use it.
5570         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
5571         Remove references to stop_pc.
5572
5573 2018-06-28  Pedro Alves  <palves@redhat.com>
5574
5575         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
5576         Moving fetching stop_pc until after ecs->event_thread is refreshed.
5577
5578 2018-06-28  Tom Tromey  <tom@tromey.com>
5579
5580         * coffread.c (coff_symfile_finish): Update.
5581         * xcoffread.c (xcoff_symfile_finish): Update.
5582         * elfread.c (elf_symfile_finish): Update.
5583         * symfile.h (dwarf2_free_objfile): Don't declare.
5584         * dwarf2read.c (_initialize_dwarf2_read): Use
5585         register_objfile_data_with_cleanup.
5586         (dwarf2_free_objfile): Now static.  Change signature.
5587
5588 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5589
5590         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
5591         option "-o" to add-symbol-file-load to add an offset to each
5592         section's load address.
5593         * symfile.c (set_objfile_default_section_offset): New function.
5594
5595 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5596
5597         * symfile.c (add_symbol_file_command): Make sure that sections
5598         with the same name are sorted in the same order.
5599
5600 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5601
5602         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
5603         require the second argument.  If omitted, load sections at the
5604         addresses specified in the file.
5605
5606 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5607
5608         * symfile.c (symbol_file_command, symbol_file_add_main_1)
5609         (_initialize_symfile): Add option "-o" to symbol-file to add an
5610         offset to each section of the symbol file.
5611
5612 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5613
5614         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
5615
5616 2018-06-27  Tom Tromey  <tom@tromey.com>
5617
5618         * stack.c (_initialize_stack): Update "func" help text.
5619
5620 2018-06-27  Tom Tromey  <tom@tromey.com>
5621
5622         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
5623         std::vector.
5624         (unwind_infopy_str, pyuw_create_unwind_info)
5625         (unwind_infopy_add_saved_register, pyuw_sniffer)
5626         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
5627         Update.
5628         (struct saved_reg): Add constructor.
5629         <value>: Now a gdbpy_ref<>.
5630
5631 2018-06-27  Tom Tromey  <tom@tromey.com>
5632
5633         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
5634
5635 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5636
5637         * gdb-gdb.py.in: Format using autopep8.
5638
5639 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5640
5641         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
5642         (type_lookup_function): Recognize CORE_ADDR values.
5643
5644 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5645
5646         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
5647         print tag_name.
5648
5649 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5650
5651         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
5652         <__lt__>: Add.
5653
5654 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5655
5656         * gdb-gdb.py: Move to...
5657         * gdb-gdb.py.in: ... here.
5658         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
5659         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
5660         dependencies.
5661         (distclean): Remove gdb-gdb.py when cleaning.
5662         (gdb-gdb.py, gdb-gdb.gdb): New rules.
5663         * configure: Re-generate.
5664
5665 2018-06-27  Pedro Alves  <palves@redhat.com>
5666
5667         * proc-service.c (get_ps_regcache): New.
5668         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
5669         (ps_lsetfpregs): Use it.
5670
5671 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
5672
5673         PR gdb/21695
5674         * dwarf2read.c (lnp_state_machine::check_line_address): Update declaration.
5675         (dwarf_decode_lines_1): Adjust.
5676
5677 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5678
5679         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
5680         override.
5681         <info_proc>: Likewise.
5682
5683 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
5684
5685         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
5686         to windows_fetch_one_register, and only handle the case of
5687         fetching one register.  Move the code that reloads the context
5688         and iterates over all registers if R is negative to...
5689         (windows_nat_target::fetch_registers): ... here.
5690         (do_windows_store_inferior_registers): Rename to
5691         windows_store_one_register, and only handle the case of storing
5692         one register.  Move the code that handles the case where r is
5693         negative to...
5694         (windows_nat_target::store_registers) ... here.
5695
5696 2018-06-26  Tom Tromey  <tom@tromey.com>
5697
5698         PR rust/22574:
5699         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
5700         * rust-lang.c (rust_print_struct_def): Add podata parameter.
5701         Update.
5702         (rust_internal_print_type): Add podata parameter.
5703         (rust_print_type): Update.
5704
5705 2018-06-26  Tom Tromey  <tom@tromey.com>
5706
5707         * typeprint.h (struct print_offset_data) <update, finish,
5708         maybe_print_hole>: New methods.
5709         <indentation>: New constant.
5710         * typeprint.c (print_offset_data::indentation): Define.
5711         (print_offset_data::maybe_print_hole, print_offset_data::update)
5712         (print_offset_data::finish): Move from c-typeprint.c and rename.
5713         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
5714         (print_spaces_filtered_with_print_options): Update.
5715         (c_print_type_union_field_offset, maybe_print_hole)
5716         (c_print_type_struct_field_offset): Move to typeprint.c and
5717         rename.
5718         (c_type_print_base_struct_union): Update.
5719
5720 2018-06-25  Pedro Alves  <palves@redhat.com>
5721
5722         * gdbthread.h (thread_info_ref, delete_thread)
5723         (delete_thread_silent, first_thread_of_inferior)
5724         (any_thread_of_inferior, switch_to_thread)
5725         (enable_thread_stack_temporaries)
5726         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
5727         (get_last_thread_stack_temporary)
5728         (value_in_thread_stack_temporaries, can_access_registers_thread):
5729         Spell out "struct thread_info" instead of just "thread_info".
5730         * inferior.h (notice_new_inferior): Likewise.
5731
5732 2018-06-25  Pedro Alves  <palves@redhat.com>
5733
5734         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
5735         pass thread_info pointer to delete_thread.
5736         (windows_nat_target::detach): Pass inferior pointer to
5737         detach_inferior.
5738         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
5739         delete_thread.
5740         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
5741         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
5742         and pass a thread_info pointer to delete_thread.
5743         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
5744         pass thread_info pointer to delete_thread.
5745         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
5746         delete_thread_silent call.
5747         * procfs.c (procfs_target::detach): Pass inferior pointer to
5748         detach_inferior.
5749         (procfs_target::wait): Pass thread_info pointer to delete_thread.
5750         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
5751         delete_thread_silent call.
5752         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
5753         pass thread_info pointer to delete_thread.
5754         (windows_nat_target::detach): Pass inferior pointer to
5755         delete_inferior.
5756
5757 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
5758
5759         * regcache.c (readable_regcache::read_part): Fix asserts.
5760         (reg_buffer::raw_collect_part): New function.
5761         (regcache::write_part): Fix asserts.
5762         (reg_buffer::raw_supply_part): New function.
5763         (regcache::transfer_regset_register): New helper function.
5764         (regcache::transfer_regset): Call new functions.
5765         (regcache_supply_regset): Use gdb_byte*.
5766         (regcache::supply_regset): Likewise.
5767         (regcache_collect_regset): Likewise.
5768         (regcache::collect_regset): Likewise.
5769         * regcache.h (reg_buffer::raw_collect_part): New declaration.
5770         (reg_buffer::raw_supply_part): Likewise.
5771         (regcache::transfer_regset_register): Likewise.
5772         (regcache::transfer_regset): Use gdb_byte*.
5773
5774 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
5775
5776         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
5777
5778 2018-06-21  Pedro Alves  <palves@redhat.com>
5779
5780         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
5781         instead of a ptid_t.  All callers adjusted.
5782         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
5783         adjusted.
5784         (print_ada_task_info, display_current_task_id, task_command_1):
5785         Adjust.
5786         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
5787         inferior_thread.
5788         (breakpoint_kind): Adjust.
5789         (remove_breakpoints_pid): Rename to ...
5790         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
5791         pointer.  All callers adjusted.
5792         (bpstat_clear_actions): Use inferior_thread.
5793         (get_bpstat_thread): New.
5794         (bpstat_do_actions): Use it.
5795         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
5796         to take a thread_info pointer.  All callers adjusted.
5797         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
5798         (breakpoint_re_set_thread): Use inferior_thread.
5799         * breakpoint.h (struct inferior): Forward declare.
5800         (bpstat_stop_status): Update.
5801         (remove_breakpoints_pid): Delete.
5802         (remove_breakpoints_inf): New.
5803         * bsd-uthread.c (bsd_uthread_target::wait)
5804         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
5805         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
5806         (maint_btrace_packet_history_cmd)
5807         (maint_btrace_clear_packet_history_cmd): Adjust.
5808         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
5809         inferior_thread.
5810         * cli/cli-interp.c: Include "inferior.h".
5811         * common/refcounted-object.h (struct
5812         refcounted_object_ref_policy): New.
5813         * compile/compile-object-load.c: Include gdbthread.h.
5814         (store_regs): Use inferior_thread.
5815         * corelow.c (core_target::close): Use current_inferior.
5816         (core_target_open): Adjust to use first_thread_of_inferior and use
5817         the current inferior.
5818         * ctf.c (ctf_target::close): Adjust to use current_inferior.
5819         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
5820         <thread>: ... this new field.  All references adjusted.
5821         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
5822         Take a thread_info pointer instead of a ptid_t.
5823         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
5824         (dummy_frame_discard, register_dummy_frame_dtor): Take a
5825         thread_info pointer instead of a ptid_t.
5826         * elfread.c: Include "inferior.h".
5827         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
5828         Use inferior_thread.
5829         * eval.c (evaluate_subexp): Likewise.
5830         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
5831         inferior_thread.
5832         * gdb_proc_service.h (struct thread_info): Forward declare.
5833         (struct ps_prochandle) <ptid>: Delete, replaced by ...
5834         <thread>: ... this new field.  All references adjusted.
5835         * gdbarch.h, gdbarch.c: Regenerate.
5836         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
5837         'thread' parameter.  All implementations and callers adjusted.
5838         * gdbthread.h (thread_info) <set_running>: New method.
5839         (delete_thread, delete_thread_silent): Take a thread_info pointer
5840         instead of a ptid.
5841         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
5842         (first_thread_of_process): Delete, replaced by ...
5843         (first_thread_of_inferior): ... this new function.  All callers
5844         adjusted.
5845         (any_live_thread_of_process): Delete, replaced by ...
5846         (any_live_thread_of_inferior): ... this new function.  All callers
5847         adjusted.
5848         (switch_to_thread, switch_to_no_thread): Declare.
5849         (is_executing): Delete.
5850         (enable_thread_stack_temporaries): Update comment.
5851         <enable_thread_stack_temporaries>: Take a thread_info pointer
5852         instead of a ptid_t.  Incref the thread.
5853         <~enable_thread_stack_temporaries>: Decref the thread.
5854         <m_ptid>: Delete
5855         <m_thr>: New.
5856         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
5857         (get_last_thread_stack_temporary)
5858         (value_in_thread_stack_temporaries, can_access_registers_thread):
5859         Take a thread_info pointer instead of a ptid_t.  All callers
5860         adjusted.
5861         * infcall.c (get_call_return_value): Use inferior_thread.
5862         (run_inferior_call): Work with thread pointers instead of ptid_t.
5863         (call_function_by_hand_dummy): Work with thread pointers instead
5864         of ptid_t.  Use thread_info_ref.
5865         * infcmd.c (proceed_thread_callback): Access thread's state
5866         directly.
5867         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
5868         access thread's state directly.
5869         (continue_command): Use inferior_thread.
5870         (info_program_command): Use find_thread_ptid and access thread
5871         state directly.
5872         (proceed_after_attach_callback): Use thread state directly.
5873         (notice_new_inferior): Take a thread_info pointer instead of a
5874         ptid_t.  All callers adjusted.
5875         (exit_inferior): Take an inferior pointer instead of a pid.  All
5876         callers adjusted.
5877         (exit_inferior_silent): New.
5878         (detach_inferior): Delete.
5879         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
5880         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
5881         (detach_inferior_command, kill_inferior_command): Use
5882         find_inferior_id instead of valid_gdb_inferior_id and
5883         gdb_inferior_id_to_pid.
5884         (inferior_command): Use inferior and thread pointers.
5885         * inferior.h (struct thread_info): Forward declare.
5886         (notice_new_inferior): Take a thread_info pointer instead of a
5887         ptid_t.  All callers adjusted.
5888         (detach_inferior): Delete declaration.
5889         (exit_inferior, exit_inferior_silent): Take an inferior pointer
5890         instead of a pid.  All callers adjusted.
5891         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
5892         (valid_gdb_inferior_id): Delete.
5893         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
5894         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
5895         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
5896         ...
5897         <inf>: ... this new field.
5898         <step_ptid>: Delete, replaced by ...
5899         <step_thread>: ... this new field.
5900         (get_displaced_stepping_state): Take an inferior pointer instead
5901         of a pid.  All callers adjusted.
5902         (displaced_step_in_progress_any_inferior): Adjust.
5903         (displaced_step_in_progress_thread): Take a thread pointer instead
5904         of a ptid_t.  All callers adjusted.
5905         (displaced_step_in_progress, add_displaced_stepping_state): Take
5906         an inferior pointer instead of a pid.  All callers adjusted.
5907         (get_displaced_step_closure_by_addr): Adjust.
5908         (remove_displaced_stepping_state): Take an inferior pointer
5909         instead of a pid.  All callers adjusted.
5910         (displaced_step_prepare_throw, displaced_step_prepare)
5911         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
5912         All callers adjusted.
5913         (start_step_over): Adjust.
5914         (infrun_thread_ptid_changed): Remove bit updating ptids in the
5915         displaced step queue.
5916         (do_target_resume): Adjust.
5917         (fetch_inferior_event): Use inferior_thread.
5918         (context_switch, get_inferior_stop_soon): Take an
5919         execution_control_state pointer instead of a ptid_t.  All callers
5920         adjusted.
5921         (switch_to_thread_cleanup): Delete.
5922         (stop_all_threads): Use scoped_restore_current_thread.
5923         * inline-frame.c: Include "gdbthread.h".
5924         (inline_state) <inline_state>: Take a thread pointer instead of a
5925         ptid_t.  All callers adjusted.
5926         <ptid>: Delete, replaced by ...
5927         <thread>: ... this new field.
5928         (find_inline_frame_state): Take a thread pointer instead of a
5929         ptid_t.  All callers adjusted.
5930         (skip_inline_frames, step_into_inline_frame)
5931         (inline_skipped_frames, inline_skipped_symbol): Take a thread
5932         pointer instead of a ptid_t.  All callers adjusted.
5933         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
5934         (inline_skipped_frames, inline_skipped_symbol): Likewise.
5935         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
5936         pointers directly.
5937         * linux-nat.c (get_detach_signal): Likewise.
5938         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
5939         (thread_db_notice_clone): Adjust.
5940         (thread_db_find_new_threads_silently)
5941         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
5942         a thread pointer instead of a ptid_t.  All callers adjusted.
5943         * mi/mi-cmd-var.c: Include "inferior.h".
5944         (mi_cmd_var_update_iter): Update to use thread pointers.
5945         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
5946         inferior directly.
5947         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
5948         out to ...
5949         (mi_output_running): ... this new function.
5950         (mi_on_resume_1): Adjust to use it.
5951         (mi_user_selected_context_changed): Adjust to use inferior_thread.
5952         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
5953         directly.
5954         (interrupt_thread_callback): : Adjust to use thread and inferior
5955         pointers.
5956         * proc-service.c: Include "gdbthread.h".
5957         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
5958         * progspace-and-thread.c: Include "inferior.h".
5959         * progspace.c: Include "inferior.h".
5960         * python/py-exitedevent.c (create_exited_event_object): Adjust to
5961         hold a reference to an inferior_object.
5962         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
5963         inferior_thread.
5964         * python/py-inferior.c (struct inferior_object): Give the type a
5965         tag name instead of a typedef.
5966         (python_on_normal_stop): No need to check if the current thread is
5967         listed.
5968         (inferior_to_inferior_object): Change return type to
5969         inferior_object.  All callers adjusted.
5970         (find_thread_object): Delete, bits factored out to ...
5971         (thread_to_thread_object): ... this new function.
5972         * python/py-infthread.c (create_thread_object): Use
5973         inferior_to_inferior_object.
5974         (thpy_is_stopped): Use thread pointer directly.
5975         (gdbpy_selected_thread): Use inferior_thread.
5976         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
5977         field, replaced with ...
5978         <thread>: ... this new field.  All users adjusted.
5979         (btpy_insn_or_gap_new): Drop const.
5980         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
5981         callers adjusted.
5982         * python/py-record.c: Include "gdbthread.h".
5983         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
5984         a ptid_t.  All callers adjusted.
5985         (gdbpy_current_recording): Use inferior_thread.
5986         * python/py-record.h (recpy_record_object) <ptid>: Delete
5987         field, replaced with ...
5988         <thread>: ... this new field.  All users adjusted.
5989         (recpy_element_object) <ptid>: Delete
5990         field, replaced with ...
5991         <thread>: ... this new field.  All users adjusted.
5992         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
5993         a ptid_t.  All callers adjusted.
5994         * python/py-threadevent.c: Include "gdbthread.h".
5995         (get_event_thread): Use thread_to_thread_object.
5996         * python/python-internal.h (struct inferior_object): Forward
5997         declare.
5998         (find_thread_object, find_inferior_object): Delete declarations.
5999         (thread_to_thread_object, inferior_to_inferior_object): New
6000         declarations.
6001         * record-btrace.c: Include "inferior.h".
6002         (require_btrace_thread): Use inferior_thread.
6003         (record_btrace_frame_sniffer)
6004         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
6005         (get_thread_current_frame): Use scoped_restore_current_thread and
6006         switch_to_thread.
6007         (get_thread_current_frame): Use thread pointer directly.
6008         (record_btrace_replay_at_breakpoint): Use thread's inferior
6009         pointer directly.
6010         * record-full.c: Include "inferior.h".
6011         * regcache.c: Include "gdbthread.h".
6012         (get_thread_arch_regcache): Use the inferior's address space
6013         directly.
6014         (get_thread_regcache, registers_changed_thread): New.
6015         * regcache.h (get_thread_regcache(thread_info *thread)): New
6016         overload.
6017         (registers_changed_thread): New.
6018         (remote_target) <remote_detach_1>: Swap order of parameters.
6019         (remote_add_thread): <remote_add_thread>: Return the new thread.
6020         (get_remote_thread_info(ptid_t)): New overload.
6021         (remote_target::remote_notice_new_inferior): Use thread pointers
6022         directly.
6023         (remote_target::process_initial_stop_replies): Use
6024         thread_info::set_running.
6025         (remote_target::remote_detach_1, remote_target::detach)
6026         (extended_remote_target::detach): Adjust.
6027         * stack.c (frame_show_address): Use inferior_thread.
6028         * target-debug.h (target_debug_print_thread_info_pp): New.
6029         * target-delegates.c: Regenerate.
6030         * target.c (default_thread_address_space): Delete.
6031         (memory_xfer_partial_1): Use current_inferior.
6032         (target_detach): Use current_inferior.
6033         (target_thread_address_space): Delete.
6034         (generic_mourn_inferior): Use current_inferior.
6035         * target.h (struct target_ops) <thread_address_space>: Delete.
6036         (target_thread_address_space): Delete.
6037         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
6038         pointers directly.
6039         (delete_thread_1, delete_thread, delete_thread_silent): Take a
6040         thread pointer instead of a ptid_t.  Adjust all callers.
6041         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
6042         (first_thread_of_process): Delete, replaced by ...
6043         (first_thread_of_inferior): ... this new function.  All callers
6044         adjusted.
6045         (any_thread_of_process): Rename to ...
6046         (any_thread_of_inferior): ... this, and take an inferior pointer.
6047         (any_live_thread_of_process): Rename to ...
6048         (any_live_thread_of_inferior): ... this, and take an inferior
6049         pointer.
6050         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6051         (value_in_thread_stack_temporaries)
6052         (get_last_thread_stack_temporary): Take a thread pointer instead
6053         of a ptid_t.  Adjust all callers.
6054         (thread_info::set_running): New.
6055         (validate_registers_access): Use inferior_thread.
6056         (can_access_registers_ptid): Rename to ...
6057         (can_access_registers_thread): ... this, and take a thread
6058         pointer.
6059         (print_thread_info_1): Adjust to compare thread pointers instead
6060         of ptids.
6061         (switch_to_no_thread, switch_to_thread): Make extern.
6062         (scoped_restore_current_thread::~scoped_restore_current_thread):
6063         Use m_thread pointer directly.
6064         (scoped_restore_current_thread::scoped_restore_current_thread):
6065         Use inferior_thread.
6066         (thread_command): Use thread pointer directly.
6067         (thread_num_make_value_helper): Use inferior_thread.
6068         * top.c (execute_command): Use inferior_thread.
6069         * tui/tui-interp.c: Include "inferior.h".
6070         * varobj.c (varobj_create): Use inferior_thread.
6071         (value_of_root_1): Use find_thread_global_id instead of
6072         global_thread_id_to_ptid.
6073
6074 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
6075
6076         * regcache.c (readable_regcache::read_part): Avoid memcpy when
6077         possible.
6078         (regcache::write_part): Likewise.
6079         (readable_regcache::cooked_read_part): Update comment.
6080         (readable_regcache::cooked_write_part): Likewise.
6081         * regcache.h: (readable_regcache::read_part): Likewise.
6082         (regcache::write_part): Likewise.
6083
6084 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
6085             Dirk Schubert  <dirk.schubert@arm.com>
6086
6087         * aarch64-linux-nat.c (post_attach): New.
6088         (aarch64_linux_nat_target::post_attach): Override post_attach to
6089         record the number of hardware debug registers.
6090
6091 2018-06-20  Tom Tromey  <tom@tromey.com>
6092
6093         * python/py-param.c (add_setshow_generic): Make parameters const.
6094         (parmpy_init): Update.
6095
6096 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
6097
6098         * regcache.h (regcache_cooked_read_ftype): Rename to...
6099         (register_read_ftype): ...this, change type to function_view.
6100         (class reg_buffer) <save>: Remove src parameter.
6101         (readonly_detached_regcache) <readonly_detached_regcache>: Make
6102         parameter non-const in first overload.  Remove src parameter in
6103         second overload.
6104         * regcache.c (do_cooked_read): Remove.
6105         (readonly_detached_regcache::readonly_detached_regcache): Make
6106         parameter non-const, adjust call to other constructor.
6107         (reg_buffer::save): Remove src parameter.
6108         * frame.c (do_frame_register_read): Remove.
6109         (frame_save_as_regcache): Use lambda function.
6110         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
6111         parameter to ppu2spu_data *.
6112         (ppu2spu_sniffer): Use lambda function.
6113
6114 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
6115
6116         * record-full.c (record_full_target::insert_breakpoint): Remove
6117         "struct" keyword, add const.
6118
6119 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
6120
6121         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
6122         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
6123         * configure.ac: Remove AC_PREREQ, add missing quoting.
6124         * gnulib/configure.ac: Modernize usage of
6125         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
6126         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
6127         (AUTOMAKE_VERSION): Bump to 1.15.1.
6128         * configure: Re-generate.
6129         * config.in: Re-generate.
6130         * aclocal.m4: Re-generate.
6131         * gnulib/aclocal.m4: Re-generate.
6132         * gnulib/config.in: Re-generate.
6133         * gnulib/configure: Re-generate.
6134         * gnulib/import/Makefile.in: Re-generate.
6135
6136 2018-06-19  Pedro Alves  <palves@redhat.com>
6137
6138         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
6139         (lookup_minimal_symbol_by_pc_section): ... here with
6140         gdb_assert_not_reached added.
6141
6142 2018-06-19  Pedro Alves  <palves@redhat.com>
6143
6144         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
6145         parameter with a block parameter.  Compare location's block symbol
6146         with the frame's block instead of addresses.
6147         (skip_inline_frames): Pass the current block instead of the
6148         frame's address.  Break out as soon as we determine the frame
6149         should not be skipped.
6150
6151 2018-06-18  Tom Tromey  <tom@tromey.com>
6152
6153         * solib-aix.c (solib_aix_get_section_offsets): Return
6154         unique_xmalloc_ptr.
6155         (solib_aix_solib_create_inferior_hook): Update.
6156
6157 2018-06-18  Tom Tromey  <tom@tromey.com>
6158
6159         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
6160
6161 2018-06-18  Tom Tromey  <tom@tromey.com>
6162
6163         * solib-frv.c (frv_relocate_main_executable): Use
6164         unique_xmalloc_ptr.
6165         * solib-dsbt.c (dsbt_relocate_main_executable): Use
6166         unique_xmalloc_ptr.
6167
6168 2018-06-18  Tom Tromey  <tom@tromey.com>
6169
6170         * objfiles.h (inhibit_section_map_updates): Update.
6171         (resume_section_map_updates, resume_section_map_updates_cleanup):
6172         Remove.
6173         * solib-svr4.c (svr4_handle_solib_event): Update.
6174         * objfiles.c (inhibit_section_map_updates): Return
6175         scoped_restore_tmpl<int>.
6176         (resume_section_map_updates, resume_section_map_updates_cleanup):
6177         Remove.
6178
6179 2018-06-18  Tom Tromey  <tom@tromey.com>
6180
6181         * valprint.h (read_string): Update.
6182         * valprint.c (read_string): Change type of "buffer".
6183         (val_print_string): Update.
6184         * python/py-value.c (valpy_string): Update.
6185         * language.h (struct language_defn) <la_get_string>: Change
6186         type of "buffer".
6187         (default_get_string, c_get_string): Update.
6188         * language.c (default_get_string): Change type of "buffer".
6189         * guile/scm-value.c (gdbscm_value_to_string): Update.
6190         * c-lang.c (c_get_string): Change type of "buffer".
6191
6192 2018-06-18  Tom Tromey  <tom@tromey.com>
6193
6194         * ser-mingw.c (struct pipe_state_destroyer): New.
6195         (pipe_state_up): New typedef.
6196         (cleanup_pipe_state): Remove.
6197         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
6198
6199 2018-06-18  Tom Tromey  <tom@tromey.com>
6200
6201         * rust-lang.h (rust_yyerror): Don't declare.
6202         * rust-lang.c (rust_language_defn): Update.
6203         * rust-exp.y (yyerror): Now static.
6204         * parse.c (parse_exp_in_context_1): Update.
6205         * p-lang.h (p_yyerror): Don't declare.
6206         * p-lang.c (p_language_defn): Update.
6207         * p-exp.y (yyerror): Now static.
6208         * opencl-lang.c (opencl_language_defn): Update.
6209         * objc-lang.c (objc_language_defn): Update.
6210         * m2-lang.h (m2_yyerror): Don't declare.
6211         * m2-lang.c (m2_language_defn): Update.
6212         * m2-exp.y (yyerror): Now static.
6213         * language.h (struct language_defn) <la_error>: Remove.
6214         * language.c (unk_lang_error): Remove.
6215         (unknown_language_defn, auto_language_defn): Remove.
6216         * go-lang.h (go_yyerror): Don't declare.
6217         * go-lang.c (go_language_defn): Update.
6218         * go-exp.y (yyerror): Now static.
6219         * f-lang.h (f_yyerror): Don't declare.
6220         * f-lang.c (f_language_defn): Update.
6221         * f-exp.y (yyerror): Now static.
6222         * d-lang.h (d_yyerror): Don't declare.
6223         * d-lang.c (d_language_defn): Update.
6224         * d-exp.y (yyerror): Now static.
6225         * c-lang.h (c_yyerror): Don't declare.
6226         * c-lang.c (c_language_defn, cplus_language_defn)
6227         (asm_language_defn, minimal_language_defn): Update.
6228         * c-exp.y (yyerror): Now static.
6229         * ada-lang.h (ada_yyerror): Don't declare.
6230         * ada-lang.c (ada_language_defn): Update.
6231         * ada-exp.y (yyerror): Now static.
6232
6233 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6234
6235         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
6236         (store_sveregs_to_thread): Likewise.
6237         (aarch64_linux_fetch_inferior_registers): Check for SVE.
6238         (aarch64_linux_store_inferior_registers): Likewise.
6239         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
6240         function.
6241         (aarch64_sve_regs_copy_to_regcache): Likewise.
6242         (aarch64_sve_regs_copy_from_regcache): Likewise.
6243         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
6244         declaration.
6245         (aarch64_sve_regs_copy_to_regcache): Likewise.
6246         (aarch64_sve_regs_copy_from_regcache): Likewise.
6247         (sve_context): Structure from Linux headers.
6248         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
6249         (SVE_SIG_ZREG_SIZE): Likewise.
6250         (SVE_SIG_PREG_SIZE): Likewise.
6251         (SVE_SIG_FFR_SIZE): Likewise.
6252         (SVE_SIG_REGS_OFFSET): Likewise.
6253         (SVE_SIG_ZREGS_OFFSET): Likewise.
6254         (SVE_SIG_ZREG_OFFSET): Likewise.
6255         (SVE_SIG_ZREGS_SIZE): Likewise.
6256         (SVE_SIG_PREGS_OFFSET): Likewise.
6257         (SVE_SIG_PREG_OFFSET): Likewise.
6258         (SVE_SIG_PREGS_SIZE): Likewise.
6259         (SVE_SIG_FFR_OFFSET): Likewise.
6260         (SVE_SIG_REGS_SIZE): Likewise.
6261         (SVE_SIG_CONTEXT_SIZE): Likewise.
6262         (SVE_PT_REGS_MASK): Likewise.
6263         (SVE_PT_REGS_FPSIMD): Likewise.
6264         (SVE_PT_REGS_SVE): Likewise.
6265         (SVE_PT_VL_INHERIT): Likewise.
6266         (SVE_PT_VL_ONEXEC): Likewise.
6267         (SVE_PT_REGS_OFFSET): Likewise.
6268         (SVE_PT_FPSIMD_OFFSET): Likewise.
6269         (SVE_PT_FPSIMD_SIZE): Likewise.
6270         (SVE_PT_SVE_ZREG_SIZE): Likewise.
6271         (SVE_PT_SVE_PREG_SIZE): Likewise.
6272         (SVE_PT_SVE_FFR_SIZE): Likewise.
6273         (SVE_PT_SVE_FPSR_SIZE): Likewise.
6274         (SVE_PT_SVE_FPCR_SIZE): Likewise.
6275         (__SVE_SIG_TO_PT): Likewise.
6276         (SVE_PT_SVE_OFFSET): Likewise.
6277         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
6278         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
6279         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
6280         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
6281         (SVE_PT_SVE_PREG_OFFSET): Likewise.
6282         (SVE_PT_SVE_PREGS_SIZE): Likewise.
6283         (SVE_PT_SVE_FFR_OFFSET): Likewise.
6284         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
6285         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
6286         (SVE_PT_SVE_SIZE): Likewise.
6287         (SVE_PT_SIZE): Likewise.
6288         (HAS_SVE_STATE): New define.
6289
6290 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6291
6292         * nat/aarch64-sve-linux-sigcontext.h: New file.
6293         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
6294         new files.
6295         (SVE_VQ_MIN): Likewise.
6296         (SVE_VQ_MAX): Likewise.
6297         (SVE_VL_MIN): Likewise.
6298         (SVE_VL_MAX): Likewise.
6299         (SVE_NUM_ZREGS): Likewise.
6300         (SVE_NUM_PREGS): Likewise.
6301         (sve_vl_valid): Likewise.
6302         (struct user_sve_header): Likewise.
6303
6304 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
6305             Richard Bunt <Richard.Bunt@arm.com>
6306
6307         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
6308         was requested by GDB.
6309
6310 2018-06-15  Tom de Vries  <tdevries@suse.de>
6311
6312         * MAINTAINERS (Write After Approval): Add Tom de Vries.
6313
6314 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
6315
6316         * gnulib/update-gnulib.sh: Print expected versions of
6317         autoconf/aclocal.
6318
6319 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
6320
6321         * arch-utils.c (default_type_align): Use type_length_units.
6322         * gdbtypes.c (type_align): Use type_length_units.
6323
6324 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6325
6326         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
6327         of 'define' command.
6328
6329 2018-06-14  Tom de Vries  <tdevries@suse.de>
6330
6331         PR cli/22573
6332         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
6333         get_no_prettyformat_print_options.
6334
6335 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
6336
6337         * sparc-nat.h: Include target.h.
6338         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
6339         <fetch_registers>: Remove this argument in function call.
6340         <store_registers>: Remove this argument in function call, remove
6341         extra semicolon.
6342         <low_forget_process>: Call sparc64_forget_process instead of
6343         sparc_forget_process.
6344
6345 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
6346
6347         * procfs.c (_initialize_procfs): Use add_inf_child_target.
6348         (procfs_target::make_corefile_notes): Adjust to new
6349         target_read_alloc return type.
6350
6351 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6352             Stephen Roberts  <stephen.roberts@arm.com>
6353
6354         PR gdb/22882
6355         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
6356         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
6357         Move should_notify_stop local into more inner scope.
6358
6359 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6360             Stephen Roberts  <stephen.roberts@arm.com>
6361
6362         PR gdb/22882
6363         * infrun.c (resume_1): Add call to mark_async_event_handler.
6364
6365 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6366
6367         * infrun.c (do_target_wait): Change old version of $pc printed.
6368
6369 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
6370
6371         * dwarf2read.c (read_index_from_section): Rename to...
6372         (read_gdb_index_from_section): ... this, update all callers.
6373         (dwarf2_read_index): Rename to...
6374         (dwarf2_read_gdb_index): ... this, update all callers.
6375
6376 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
6377
6378         * gdb/hppa-linux-nat.c
6379         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
6380         hppa_linux_nat_target::fetch_registers.
6381
6382 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6383
6384         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
6385         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
6386         (AARCH64_DWARF_SVE_FFR): Likewise.
6387         (AARCH64_DWARF_SVE_P0): Likewise.
6388         (AARCH64_DWARF_SVE_Z0): Likewise.
6389
6390 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6391
6392         * common/common-regcache.h (raw_compare): New function.
6393         * regcache.c (regcache::raw_compare): Likewise.
6394         * regcache.h (regcache::raw_compare): New declaration.
6395
6396 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6397
6398         * common/common-regcache.h (reg_buffer_common): New structure.
6399         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
6400         (reg_buffer::raw_supply): Likewise.
6401         (reg_buffer::raw_supply_integer): Likewise.
6402         (reg_buffer::raw_supply_zeroed): Likewise.
6403         (reg_buffer::raw_collect): Likewise.
6404         (reg_buffer::raw_collect_integer): Likewise.
6405         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
6406         (reg_buffer::raw_supply): Likewise.
6407         (reg_buffer::raw_supply_integer): Likewise.
6408         (reg_buffer::raw_supply_zeroed): Likewise.
6409         (reg_buffer::raw_collect): Likewise.
6410         (reg_buffer::raw_collect_integer): Likewise.
6411
6412 2018-06-10  Tom Tromey  <tom@tromey.com>
6413
6414         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
6415         (class remote_state) <stop_reply_queue>: Now std::vector.
6416         (remote_state::~remote_state)
6417         (remote_target::stop_reply_queue_length): Update.
6418         (struct queue_iter_param, remove_child_of_pending_fork)
6419         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
6420         (check_pending_event_prevents_wildcard_vcont_callback)
6421         (remove_stop_reply_for_inferior)
6422         (remove_stop_reply_of_remote_state)
6423         (remote_notif_remove_once_on_match)
6424         (stop_reply_match_ptid_and_ws)
6425         (remote_kill_child_of_pending_fork): Remove.
6426         (remote_target::remove_new_fork_children)
6427         (remote_target::check_pending_events_prevent_wildcard_vcont)
6428         (remote_target::discard_pending_stop_replies)
6429         (remote_target::discard_pending_stop_replies_in_queue)
6430         (remote_target::remote_notif_remove_queued_reply)
6431         (remote_target::queued_stop_reply)
6432         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
6433         (remote_target::wait, remote_target::kill_new_fork_children)
6434         (remote_target::async): Update.
6435
6436 2018-06-10  Tom Tromey  <tom@tromey.com>
6437
6438         * record-full.c (record_full_arch_list_cleanups): Remove.
6439         (record_full_message): Use try/catch.
6440         (record_full_wait_cleanups): Remove.
6441         (record_full_wait_1): Use try/catch.
6442         (record_full_restore): Likewise.
6443
6444 2018-06-10  Tom Tromey  <tom@tromey.com>
6445
6446         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
6447         declare VEC.  Add constructor.
6448         <in_target_beneath>: Now bool.
6449         (record_full_breakpoints): Now a std::vector, static.
6450         (record_full_sync_record_breakpoints)
6451         (record_full_init_record_breakpoints)
6452         (record_full_target::insert_breakpoint)
6453         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
6454
6455 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
6456
6457         * dwarf2read.c (process_cu_includes): Remove struct keyword.
6458         * serial.c (serial_interface_lookup): Remove struct keyword.
6459
6460 2018-06-10  Tom Tromey  <tom@tromey.com>
6461
6462         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
6463         method.
6464         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
6465         a method.
6466         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
6467         method.
6468         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
6469         "beneath" as a method.
6470         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
6471         Use "beneath" as a method.
6472
6473 2018-06-10  Tom Tromey  <tom@tromey.com>
6474
6475         * tracefile.c (struct trace_file_writer_deleter): New.
6476         <operator()>: Rename from trace_file_writer_xfree.
6477         (trace_file_writer_up): New typedef.
6478         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
6479
6480 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
6481
6482         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
6483         <m_registers, m_register_status>: Change type to
6484         std::unique_ptr.
6485         * regcache.c (reg_buffer::reg_buffer): Use new instead of
6486         XCNEWVEC.
6487
6488 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
6489
6490         * common/common-regcache.h (enum register_status): Add
6491         underlying type "signed char".
6492         * regcache.h (reg_buffer) <m_register_status>: Change type to
6493         register_status *.
6494         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
6495         register_status instead of signed char.
6496         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
6497         (reg_buffer::get_register_status): Remove cast.
6498         (readable_regcache::raw_read): Remove cast.
6499         (readable_regcache::cooked_read): Remove cast.
6500
6501 2018-06-09  Tom Tromey  <tom@tromey.com>
6502
6503         * source.c (reverse_search_command, forward_search_command): Use
6504         scoped_fd.
6505
6506 2018-06-09  Tom Tromey  <tom@tromey.com>
6507
6508         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
6509         (serial_ops_list): Now static, std::vector.
6510         (serial_interface_lookup, serial_add_interface): Update.
6511
6512 2018-06-09  Tom Tromey  <tom@tromey.com>
6513
6514         * dwarf2read.c (process_cu_includes): Update.
6515         (process_full_comp_unit): Update.
6516         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
6517         std::vector.
6518
6519 2018-06-08  Paul Koning  <paul_koning@dell.com>
6520
6521         PR gdb/23252
6522
6523         * python/python.c (do_start_initialization):
6524         Avoid call to internal Python API.
6525         (init__gdb_module): New function.
6526
6527 2018-06-08  Gary Benson <gbenson@redhat.com>
6528
6529         * linux-thread-db.c (valprint.h): New include.
6530         (struct check_thread_db_info): New structure.
6531         (check_thread_db_on_load, tdb_testinfo): New static globals.
6532         (check_thread_db, check_thread_db_callback): New functions.
6533         (try_thread_db_load_1): Run integrity checks if requested.
6534         (maintenance_check_libthread_db): New function.
6535         (_initialize_thread_db): Register "maint check libthread-db"
6536         and "maint set/show check-libthread-db".
6537         * NEWS: Mention the above new commands.
6538
6539 2018-06-08  Tom Tromey  <tom@tromey.com>
6540
6541         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
6542         now a method.
6543
6544 2018-06-08  Tom Tromey  <tom@tromey.com>
6545
6546         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
6547
6548 2018-06-08  Tom Tromey  <tom@tromey.com>
6549
6550         * common/btrace-common.h (struct btrace_data): Add constructor,
6551         destructor, move assignment operator.
6552         <empty, clear, fini>: New methods.
6553         <format>: Initialize.
6554         (btrace_data_init, btrace_data_fini, btrace_data_clear)
6555         (btrace_data_empty): Don't declare.
6556         * common/btrace-common.c (btrace_data_init): Remove.
6557         (btrace_data::fini): Rename from btrace_data_fini.
6558         (btrace_data::empty): Rename from btrace_data_empty.
6559         (btrace_data::clear): Rename from btrace_data_clear.  Return
6560         bool.
6561         * btrace.h (make_cleanup_btrace_data): Don't declare.
6562         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
6563         (parse_xml_btrace): Update.
6564         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
6565         (maint_btrace_clear_packet_history_cmd): Update.
6566
6567 2018-06-07  Pedro Alves  <palves@redhat.com>
6568
6569         * target.h (target_ops) <beneath>: Now a method.  All references
6570         updated.
6571         (class target_stack): New.
6572         * target.c (g_target_stack): New.
6573         (g_current_top_target): Delete.
6574         (current_top_target): Get the top target out of g_target_stack.
6575         (target_stack::push, target_stack::unpush): New.
6576         (push_target, unpush_target): Reimplement.
6577         (target_is_pushed): Reimplement in terms of g_target_stack.
6578         (target_ops::beneath, target_stack::find_beneath): New.
6579
6580 2018-06-07  Pedro Alves  <palves@redhat.com>
6581
6582         * target.h (find_target_beneath): Delete declaration.
6583         * target.c (find_target_beneath): Delete definition.
6584         * aix-thread.c: All callers of find_target_beneath adjusted to
6585         call target_ops::beneath instead.
6586         * bsd-uthread.c: Likewise.
6587         * linux-thread-db.c: Likewise.
6588         * ravenscar-thread.c: Likewise.
6589         * sol-thread.c: Likewise.
6590         * spu-multiarch.c: Likewise.
6591
6592 2018-06-07  Pedro Alves  <palves@redhat.com>
6593
6594         * target.h (target_ops) <beneath>: Now a method.  All references
6595         updated.
6596         (target_ops) <m_beneath>: New.
6597         * target.c (target_ops::beneath): New.
6598         * corelow.c: Adjust all references to target_ops::beneath.
6599         * linux-thread-db.c: Likewise.
6600         * make-target-delegates: Likewise.
6601         * record-btrace.c: Likewise.
6602         * record-full.c: Likewise.
6603         * remote.c: Likewise.
6604         * target.c: Likewise.
6605         * target-delegates.c: Regenerate.
6606
6607 2018-06-07  Pedro Alves  <palves@redhat.com>
6608
6609         * target.h (target_stack): Delete.
6610         (current_top_target): Declare function.
6611         * target.c (target_stack): Delete.
6612         (g_current_top_target): New.
6613         (current_top_target): New function.
6614         * auxv.c: Use current_top_target instead of target_stack
6615         throughout.
6616         * avr-tdep.c: Likewise.
6617         * breakpoint.c: Likewise.
6618         * corefile.c: Likewise.
6619         * elfread.c: Likewise.
6620         * eval.c: Likewise.
6621         * exceptions.c: Likewise.
6622         * frame.c: Likewise.
6623         * gdbarch-selftests.c: Likewise.
6624         * gnu-v3-abi.c: Likewise.
6625         * ia64-tdep.c: Likewise.
6626         * ia64-vms-tdep.c: Likewise.
6627         * infcall.c: Likewise.
6628         * infcmd.c: Likewise.
6629         * infrun.c: Likewise.
6630         * linespec.c: Likewise.
6631         * linux-tdep.c: Likewise.
6632         * minsyms.c: Likewise.
6633         * ppc-linux-nat.c: Likewise.
6634         * ppc-linux-tdep.c: Likewise.
6635         * procfs.c: Likewise.
6636         * regcache.c: Likewise.
6637         * remote.c: Likewise.
6638         * rs6000-tdep.c: Likewise.
6639         * s390-linux-nat.c: Likewise.
6640         * s390-tdep.c: Likewise.
6641         * solib-aix.c: Likewise.
6642         * solib-darwin.c: Likewise.
6643         * solib-dsbt.c: Likewise.
6644         * solib-spu.c: Likewise.
6645         * solib-svr4.c: Likewise.
6646         * solib-target.c: Likewise.
6647         * sparc-tdep.c: Likewise.
6648         * sparc64-tdep.c: Likewise.
6649         * spu-tdep.c: Likewise.
6650         * symfile.c: Likewise.
6651         * symtab.c: Likewise.
6652         * target-descriptions.c: Likewise.
6653         * target-memory.c: Likewise.
6654         * target.c: Likewise.
6655         * target.h: Likewise.
6656         * tracefile-tfile.c: Likewise.
6657         * tracepoint.c: Likewise.
6658         * valops.c: Likewise.
6659         * valprint.c: Likewise.
6660         * value.c: Likewise.
6661         * windows-tdep.c: Likewise.
6662         * mi/mi-main.c: Likewise.
6663
6664 2018-06-07  Tom Tromey  <tom@tromey.com>
6665
6666         * valprint.h (build_address_symbolic): Declare.
6667         * printcmd.c (print_address_symbolic): Update.
6668         (build_address_symbolic): Change "name" and "filename" to
6669         std::string.
6670         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
6671         Update.
6672         * defs.h (build_address_symbolic): Remove declaration.
6673
6674 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
6675
6676         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
6677         (aarch64_vnv_type): Add function.
6678         (aarch64_pseudo_register_name): Add V regs for SVE.
6679         (aarch64_pseudo_register_type): Likewise.
6680         (aarch64_pseudo_register_reggroup_p): Likewise.
6681         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
6682         (aarch64_pseudo_read_value): Add V regs for SVE.
6683         (aarch64_pseudo_write_2): Use V0 offset for SVE
6684         (aarch64_pseudo_write): Add V regs for SVE.
6685         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
6686
6687 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
6688
6689         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
6690         (sve_vl_from_vq): Likewise.
6691
6692 2018-06-05  Tom Tromey  <tom@tromey.com>
6693
6694         * cli/cli-cmds.c (show_version): Update.
6695         * top.c (print_gdb_version): Add "interactive" parameter.
6696         Update.
6697         * main.c (captured_main_1): Update.
6698         * top.h (print_gdb_version): Add "interactive" parameter and a
6699         comment.
6700
6701 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
6702
6703         * common/enum-flags.h: Add trailing semicolon to example in
6704         comment.
6705
6706 2018-06-05  Tom Tromey  <tom@tromey.com>
6707
6708         PR cli/12326:
6709         * NEWS: Add entry about pager.
6710         * utils.c (pagination_disabled_for_command): New global.
6711         (prompt_for_continue): Allow "c" response to prompt.
6712         (reinitialize_more_filter): Clear
6713         pagination_disabled_for_command.
6714         (fputs_maybe_filtered): Check pagination_disabled_for_command.
6715
6716 2018-06-04  Tom Tromey  <tom@tromey.com>
6717
6718         * ada-lang.h (ada_lookup_symbol_list): Update.
6719         * ada-lang.c (resolve_subexp): Update.
6720         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
6721         parameter.
6722         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
6723         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
6724         results parameter to std::vector.
6725         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
6726         Update.
6727         * ada-exp.y (block_lookup): Update.
6728         (select_possible_type_sym): Change type of syms.  Remove nsyms
6729         parameter.
6730         (write_var_or_type, write_name_assoc): Update.
6731
6732 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
6733
6734         * windows-nat.c (windows_nat_target::xfer_partial): Return
6735         TARGET_XFER_E_IO if we need to delegate to the target beneath
6736         but BENEATH is NULL.
6737
6738 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
6739
6740         * Makefile.in (config.status): Add configure.nat as a
6741         dependency.
6742
6743 2018-06-04  Tom Tromey  <tom@tromey.com>
6744
6745         * cp-name-parser.y (cpname_state): Add method declarations.
6746         (HANDLE_QUAL): Update.
6747         (cpname_state::d_grab, cpname_state::fill_comp)
6748         (cpname_state::make_operator, cpname_state::make_dtor)
6749         (cpname_state::make_builtin_type, cpname_state::make_name)
6750         (cpname_state::d_qualify, cpname_state::d_int_type)
6751         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
6752         (%union): Move earlier.
6753
6754 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6755
6756         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
6757
6758 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6759
6760         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
6761         (aarch64_pseudo_write_1): Likewise.
6762         (aarch64_pseudo_read_value): Use helper.
6763         (aarch64_pseudo_write): Likewise.
6764
6765 2018-06-04  Pedro Alves  <palves@redhat.com>
6766
6767         * darwin-nat.c (darwin_ops): Delete.
6768         (darwin_attach_pid): Use get_native_target.
6769
6770 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6771
6772         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
6773         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
6774
6775 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6776
6777         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
6778         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
6779         (aarch64_gdbarch_init): Check for SVE.
6780         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
6781
6782 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6783
6784         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
6785         * aarch64-tdep.h (aarch64_read_description): Likewise.
6786         * arch/aarch64.c (aarch64_create_target_description): Likewise.
6787         * arch/aarch64.h (aarch64_create_target_description): Likewise.
6788         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
6789         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
6790         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
6791
6792 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
6793
6794         * value.c (value_fetch_lazy_bitfield): New.
6795         (value_fetch_lazy_memory): New.
6796         (value_fetch_lazy_register): New.
6797         (value_fetch_lazy): Factor out to smaller functions.
6798
6799 2018-06-01  Tom Tromey  <tom@tromey.com>
6800
6801         * cp-name-parser.y (backslashable, represented): Now const.
6802
6803 2018-06-01  Tom Tromey  <tom@tromey.com>
6804
6805         * cp-name-parser.y: Include parser-defs.h.
6806         (parser_fprintf): Remove declaration.
6807
6808 2018-06-01  Tom Tromey  <tom@tromey.com>
6809
6810         * cp-name-parser.y: Use %pure-parser, %lex-param, and
6811         %parse-param.
6812         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
6813         (global_result): Remove globals.
6814         (struct cpname_state): New.
6815         (yyparse): Don't declare.
6816         (yylex, yyerror): Move declarations after %union.
6817         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
6818         (make_name): Add state parameter.
6819         Update all callers.
6820         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
6821         parameter.
6822         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
6823         Update.
6824         (yylex): Add lvalp, state parameters.
6825         (yyerror): Add state parameter.
6826         (cp_demangled_name_to_comp): Update.
6827
6828 2018-06-01  Tom Tromey  <tom@tromey.com>
6829
6830         * cp-name-parser.y (parser_fprintf): Declare.
6831         (GDB_YY_REMAP_PREFIX): Define.
6832         Include yy-remap.h.  Don't redefine yy* identifiers.
6833
6834 2018-06-01  Tom Tromey  <tom@tromey.com>
6835
6836         * python/py-type.c (typy_legacy_template_argument): Update.
6837         * cp-support.h (cp_demangled_name_to_comp): Update.
6838         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
6839         parameter to be a "std::string *".
6840         (main): Update.
6841
6842 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
6843
6844         * ada-lex.l: Include "diagnostics.h" instead of
6845         "common/diagnostics.h".
6846         * unittests/environ-selftests.c: Likewise.
6847         * common/diagnostics.h: Moved to ../include.
6848
6849 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
6850
6851         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
6852         to language_mode_manual while calling breakpoint_re_set_one.
6853
6854 2018-06-01  Tom Tromey  <tom@tromey.com>
6855
6856         * valops.c (value_cast_structs, destructor_name_p): Update.
6857         * symtab.c (gdb_mangle_name): Update.
6858         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
6859         Update.
6860         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
6861         (pascal_object_print_value_fields, pascal_object_print_value):
6862         Update.
6863         * p-typeprint.c (pascal_type_print_derivation_info): Update.
6864         * linespec.c (find_methods): Update.
6865         * gdbtypes.h (type_name_no_tag): Remove.
6866         (type_name_or_error): Rename from type_name_no_tag_or_error.
6867         * gdbtypes.c (type_name_no_tag): Remove.
6868         (type_name_or_error): Rename from type_name_no_tag_or_error.
6869         (lookup_struct_elt_type, check_typedef): Update.
6870         * expprint.c (print_subexp_standard): Update.
6871         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
6872         * d-namespace.c (d_lookup_nested_symbol): Update.
6873         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
6874         (cp_print_class_member): Update.
6875         * cp-namespace.c (cp_lookup_nested_symbol): Update.
6876         * completer.c (add_struct_fields): Update.
6877         * c-typeprint.c (cp_type_print_derivation_info)
6878         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
6879         Update.
6880         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
6881         (ada_prefer_type, ada_is_exception_sym): Update.
6882
6883 2018-06-01  Tom Tromey  <tom@tromey.com>
6884
6885         * valops.c (enum_constant_from_type, value_namespace_elt)
6886         (value_maybe_namespace_elt): Update.
6887         * valarith.c (find_size_for_pointer_math): Update.
6888         * target-descriptions.c (make_gdb_type): Update.
6889         * symmisc.c (print_symbol): Update.
6890         * stabsread.c (define_symbol, read_type)
6891         (complain_about_struct_wipeout, add_undefined_type)
6892         (cleanup_undefined_types_1): Update.
6893         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
6894         (rust_range_type_p, val_print_struct, rust_print_struct_def)
6895         (rust_internal_print_type, rust_composite_type)
6896         (rust_evaluate_funcall, rust_evaluate_subexp)
6897         (rust_inclusive_range_type_p): Update.
6898         * python/py-type.c (typy_get_tag): Update.
6899         * p-typeprint.c (pascal_type_print_base): Update.
6900         * mdebugread.c (parse_symbol, parse_type): Update.
6901         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
6902         Update.
6903         * guile/scm-type.c (gdbscm_type_tag): Update.
6904         * go-lang.c (sixg_string_p): Update.
6905         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
6906         Update.
6907         * gdbtypes.h (struct main_type) <tag_name>: Remove.
6908         (TYPE_TAG_NAME): Remove.
6909         * gdbtypes.c (type_name_no_tag): Simplify.
6910         (check_typedef, check_types_equal, recursive_dump_type)
6911         (copy_type_recursive, arch_composite_type): Update.
6912         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
6913         in summary mode when needed.
6914         * eval.c (evaluate_funcall): Update.
6915         * dwarf2read.c (fixup_go_packaging, read_structure_type)
6916         (process_structure_scope, read_enumeration_type)
6917         (read_namespace_type, read_module_type, determine_prefix): Update.
6918         * cp-support.c (inspect_type): Update.
6919         * coffread.c (process_coff_symbol, decode_base_type): Update.
6920         * c-varobj.c (c_is_path_expr_parent): Update.
6921         * c-typeprint.c (c_type_print_base_struct_union): Update.
6922         (c_type_print_base_1): Update.  Print struct/class/union/enum in
6923         summary when using C language.
6924         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
6925         (gen_maybe_namespace_elt): Update.
6926         * ada-lang.c (ada_type_name): Simplify.
6927         (empty_record, ada_template_to_fixed_record_type_1)
6928         (template_to_static_fixed_type)
6929         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
6930
6931 2018-06-01  Tom Tromey  <tom@tromey.com>
6932
6933         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
6934         c_print_type.
6935         * c-typeprint.c (c_print_type_1): Add "language" parameter.
6936         (c_print_type): Update.
6937         (c_print_type): New overload.
6938         (c_type_print_varspec_prefix, c_type_print_args)
6939         (c_type_print_varspec_suffix, c_print_type_no_offsets)
6940         (c_type_print_base_struct_union, c_type_print_base_1)
6941         (cp_type_print_method_args): Add "language" parameter.
6942         (c_type_print_base): Update.
6943         * c-lang.h (c_print_type): Add new overload.
6944
6945 2018-06-01  Tom Tromey  <tom@tromey.com>
6946
6947         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
6948         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
6949
6950 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
6951
6952         * aarch64-tdep.c (aarch64_sve_register_names): New const
6953         var.
6954         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
6955         (AARCH64_SVE_Z_REGS_NUM): New define.
6956         (AARCH64_SVE_P_REGS_NUM): Likewise.
6957         (AARCH64_SVE_NUM_REGS): Likewise.
6958
6959 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
6960
6961         * nat/linux-ptrace.h [__alpha__]
6962         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
6963         definitions.
6964
6965 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
6966
6967         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
6968         the endianness selected.
6969         * NEWS: Document `set endian auto' mode operation update.
6970
6971 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
6972
6973         * Makefile.in: Add new header.
6974         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
6975         (sve_vl_from_vg): Likewise.
6976         (sve_vq_from_vl): Likewise.
6977         (sve_vl_from_vq): Likewise.
6978         (sve_vq_from_vg): Likewise.
6979         (sve_vg_from_vq): Likewise.
6980         * configure.nat: Add new c file.
6981         * nat/aarch64-sve-linux-ptrace.c: New file.
6982         * nat/aarch64-sve-linux-ptrace.h: New file.
6983
6984 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
6985
6986         * aarch64-linux-nat.c (aarch64_linux_read_description):
6987         Add parmeter zero.
6988         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
6989         Likewise.
6990         * aarch64-tdep.c (tdesc_aarch64_list): Add.
6991         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
6992         (aarch64_gdbarch_init): Add parmeter zero.
6993         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
6994         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
6995         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
6996         parmeter.
6997         * doc/gdb.texinfo: Describe SVE feature
6998         * features/aarch64-sve.c: New file.
6999
7000 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
7001
7002         PR gdb/23210
7003         * gdbarch.sh (significant_addr_bit): Default to zero when
7004         not set by target architecture.
7005         * gdbarch.c: Re-generated.
7006         * utils.c (address_significant): Update.
7007
7008 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
7009
7010         * stack.c (func_command): Remove trailing newline in call to error.
7011
7012 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7013
7014         * regcache.h (regcache_raw_collect): Remove, update callers to
7015         use regcache::raw_collect.
7016         * regcache.c (regcache_raw_collect): Remove.
7017
7018 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7019
7020         * regcache.h (regcache_raw_supply): Remove, update callers to
7021         use detached_regcache::raw_supply.
7022         * regcache.c (regcache_raw_supply): Remove.
7023
7024 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7025
7026         * regcache.h (regcache_cooked_write_part): Remove, update
7027         callers to use regcache::cooked_write_part.
7028         * regcache.c (regcache_cooked_write_part): Remove.
7029
7030 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7031
7032         * regcache.h (regcache_cooked_read_part): Remove, update callers
7033         to use readable_regcache::cooked_read_part.
7034         * regcache.c (regcache_cooked_read_part): Remove.
7035
7036 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7037
7038         * regcache.h (regcache_cooked_read_value): Remove, update
7039         callers to use readable_regcache::cooked_read_value.
7040         * regcache.c (regcache_cooked_read_value): Remove.
7041
7042 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7043
7044         * regcache.h (regcache_cooked_write): Remove, update callers to
7045         use regcache::cooked_write.
7046         * regcache.c (regcache_cooked_write): Remove.
7047
7048 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7049
7050         * regcache.h (regcache_invalidate): Remove, update callers to
7051         use detached_regcache::invalidate instead.
7052         * regcache.c (regcache_invalidate): Remove.
7053
7054 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7055
7056         * regcache.h (regcache_raw_write_part): Remove, update callers
7057         to use regcache::raw_write_part instead.
7058         * regcache.c (regcache_raw_write_part): Remove.
7059
7060 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7061
7062         * regcache.h (regcache_raw_read_part): Remove, update callers to
7063         use readable_regcache::raw_read_part instead.
7064         * regcache.c (regcache_raw_read_part): Remove.
7065
7066 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7067
7068         * regcache.h (regcache_cooked_read): Remove, update callers to
7069         use readable_regcache::cooked_read instead.
7070         * regcache.c (regcache_cooked_read): Remove.
7071
7072 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7073
7074         * regcache.h (regcache_raw_write): Remove, update callers to use
7075         regcache::raw_write instead.
7076         * regcache.c (regcache_raw_write): Remove.
7077
7078 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7079
7080         * regcache.h (regcache_raw_read): Remove, update callers to use
7081         readable_regcache::raw_read instead.
7082         * regcache.c (regcache_raw_read): Remove.
7083
7084 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7085
7086         * regcache.h (regcache_raw_update): Remove, update callers to
7087         use readable_regcache::raw_update instead.
7088         * regcache.c (regcache_raw_update): Remove.
7089
7090 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7091
7092         * regcache.h (regcache_register_status): Remove, update callers
7093         to use reg_buffer::get_register_status directly instead.
7094         * regcache.c (regcache_register_status): Remove.
7095
7096 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7097
7098         * regcache.h (regcache_get_ptid): Remove, update all callers to
7099         call regcache::ptid instead.
7100         * regcache.c (regcache_get_ptid): Remove.
7101
7102 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7103
7104         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
7105
7106 2018-05-30  Pedro Alves  <palves@redhat.com>
7107
7108         * common/common-exceptions.h (exception_rethrow): Use
7109         ATTRIBUTE_NORETURN.
7110
7111 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
7112
7113         * breakpoint.c (print_solib_event, check_status_catch_solib):
7114         Remove struct keyword in range-based for loops.
7115         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
7116         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
7117         Likewise.
7118         * linespec.c (find_superclass_methods, search_minsyms_for_name):
7119         Likewise.
7120         * symfile.c (addr_info_make_relative): Likewise.
7121         * thread.c (value_in_thread_stack_temporaries): Likewise.
7122
7123 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
7124
7125         PR gdb/16841
7126         * valops.c (value_struct_elt_for_reference): Call check_typedef on
7127         aggregate type to get its real type before accessing it.
7128
7129 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
7130
7131         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
7132         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
7133         * coff-pe-read.c (add_pe_forwarded_sym): Replace
7134         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
7135         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
7136         * jit.c (jit_breakpoint_re_set_internal): Likewise.
7137         * printcmd.c (info_address_command): Likewise.
7138
7139 2018-05-29  Tom Tromey  <tom@tromey.com>
7140
7141         * windows-nat.c (handle_exception): Update fall-through comment.
7142
7143 2018-05-29  Tom Tromey  <tom@tromey.com>
7144
7145         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
7146         (struct program_space) <added_solibs>: Now a std::vector.
7147         * breakpoint.c (print_solib_event): Update.
7148         (check_status_catch_solib): Update.
7149         * progspace.c (clear_program_space_solib_cache): Update.
7150         * solib.c (update_solib_list): Update.
7151
7152 2018-05-29  Tom Tromey  <tom@tromey.com>
7153
7154         * python/py-type.c (typy_richcompare): Update.
7155         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
7156         * gdbtypes.h (types_deeply_equal): Return bool.
7157         (types_equal): Likewise.
7158         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
7159         declare VEC.
7160         (check_types_equal): Change worklist to std::vector.  Return
7161         bool.
7162         (struct type_equality_entry): Add constructor.
7163         (compare_maybe_null_strings): Return bool.
7164         (check_types_worklist): Return bool.  Change worklist to
7165         std::vector.
7166         (types_deeply_equal): Use std::vector.
7167         (types_equal): Return bool.
7168         (compare_maybe_null_strings): Simplify.
7169
7170 2018-05-29  Tom Tromey  <tom@tromey.com>
7171
7172         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
7173
7174 2018-05-29  Tom Tromey  <tom@tromey.com>
7175
7176         * objc-lang.h: Don't include cp-support.h.
7177         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
7178         declare VEC.
7179
7180 2018-05-27  Tom Tromey  <tom@tromey.com>
7181
7182         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
7183
7184 2018-05-25  Tom Tromey  <tom@tromey.com>
7185
7186         * value.c (value::location): Initialize.
7187
7188 2018-05-25  Tom Tromey  <tom@tromey.com>
7189
7190         * dbxread.c (init_bincl_list): Remove.
7191         (bincl_list): Now a std::vector.
7192         (bincls_allocated, next_bincl): Remove.
7193         (free_bincl_list, do_free_bincl_list_cleanup)
7194         (make_cleanup_free_bincl_list): Remove.
7195         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
7196         unique_xmalloc_ptr.
7197         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
7198         (struct header_file_location): Add constructor.
7199         (add_bincl_to_list): Remove.
7200
7201 2018-05-25  Tom Tromey  <tom@tromey.com>
7202
7203         * tui/tui.c (tui_enable): Update.
7204         * mi/mi-interp.c (mi_interp::init): Update.
7205         * interps.h (class interp) <name>: New method.
7206         <m_name>: Rename from name.
7207         (~scoped_restore_interp): Update.
7208         * interps.c (interp::interp): Update.
7209         (interp_add, interp_set, interp_lookup_existing)
7210         (current_interp_named_p): Update.
7211
7212 2018-05-25  Tom Tromey  <tom@tromey.com>
7213
7214         * interps.c (interp_name): Remove.
7215         * mi/mi-interp.c (mi_interp::init): Update.
7216         * interps.h (interp_name): Remove.
7217         (~scoped_restore_interp): Update.
7218         * tui/tui.c (tui_enable): Update.
7219
7220 2018-05-25  Tom Tromey  <tom@tromey.com>
7221
7222         * utils.c (fputs_maybe_filtered): Update.
7223         * linespec.c (decode_line_full): Update.
7224         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
7225         (mi_print_breakpoint_for_event, mi_solib_loaded)
7226         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
7227         (mi_user_selected_context_changed): Update.
7228         * mi/mi-main.c (mi_execute_command): Update.
7229         * cli/cli-script.c (execute_control_command): Update.
7230         * python/python.c (execute_gdb_command): Update.
7231         * solib.c (info_sharedlibrary_command): Update.
7232         * interps.c (interp_ui_out): Remove.
7233         * interps.h (interp_ui_out): Remove.
7234
7235 2018-05-25  Tom Tromey  <tom@tromey.com>
7236
7237         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
7238         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
7239         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
7240
7241 2018-05-25  Tom Tromey  <tom@tromey.com>
7242
7243         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
7244         * interps.c (interp_exec): Use scoped_restore.
7245
7246 2018-05-25  Tom Tromey  <tom@tromey.com>
7247
7248         * remote.c (remote_target::remote_file_get): Use
7249         gdb::byte_vector.
7250         (remote_target::remote_file_put): Likewise.
7251
7252 2018-05-25  Tom Tromey  <tom@tromey.com>
7253
7254         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
7255         a std::string.
7256         (get_pe_section_index, add_pe_exported_sym): Update.
7257         (read_pe_exported_syms): Use gdb::def_vector.
7258
7259 2018-05-25  Tom Tromey  <tom@tromey.com>
7260
7261         * frame.c (remove_prev_frame): Remove.
7262         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
7263
7264 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
7265
7266         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
7267         Remove prototypes.
7268         * mips-linux-nat.c (supply_fpregset): Always call
7269         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
7270         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
7271         `mips_fill_fpregset'.
7272         * mips-linux-tdep.c (mips_supply_fpregset)
7273         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
7274         (mips_fill_fpregset_wrapper): Remove functions.
7275         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
7276         (mips_linux_fpregset): Remove variable.
7277         (mips_linux_iterate_over_regset_sections): Use
7278         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
7279         (mips_linux_o32_sigframe_init): Remove comment.
7280
7281 2018-05-25  Pedro Alves  <palves@redhat.com>
7282
7283         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
7284         (struct readahead_cache, struct packet_reg, struct
7285         remote_arch_state, class remote_state): Move higher up in the
7286         file.
7287         (remote_target::m_remote_state): Now an object instead of a pointer.
7288         (remote_target::get_remote_state): Adjust.
7289
7290 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7291
7292         * stack.c (select_and_print_frame): Delete.
7293         (struct function_bounds): Move struct within function.
7294         (func_command): Most content moved into new function
7295         find_frame_for_function, use new function, print result, add
7296         function comment.
7297         (find_frame_for_function): New function, now returns a result.
7298
7299 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7300
7301         * stack.c (iterate_over_block_arg_vars): Fix comment.
7302         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
7303
7304 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7305
7306         PR gdb/23203
7307         * frame.c
7308         (scoped_restore_selected_frame::scoped_restore_selected_frame):
7309         Define.
7310         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
7311         Define.
7312         * frame.h (class scoped_restore_selected_frame): New class.
7313         * stack.c (print_frame_local_vars): Remove catching and rethrowing
7314         of any exception, use scoped_restore_selected_frame to restore the
7315         frame instead.
7316
7317 2018-05-24  Pedro Alves  <palves@redhat.com>
7318
7319         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
7320         override.
7321
7322 2018-05-23  Tom Tromey  <tom@tromey.com>
7323
7324         * complaints.c (struct complaints): Remove.
7325         (symfile_complaint_book): Remove.
7326         (series): New global.
7327         (complaint_internal): Update.
7328         (clear_complaints): Update.
7329
7330 2018-05-23  Tom Tromey  <tom@tromey.com>
7331
7332         * complaints.c (counters): New global.
7333         (struct complain): Remove.
7334         (struct complaints) <root>: Remove.
7335         (complaint_sentinel): Remove.
7336         (symfile_complaint_book): Update.
7337         (find_complaint) Remove.
7338         (complaint_internal, clear_complaints): Update.
7339
7340 2018-05-23  Tom Tromey  <tom@tromey.com>
7341
7342         * complaints.c (struct complain) <file, line>: Remove.
7343         (find_complaint): Remove file, line parameters.
7344         (complaint_internal): Update.
7345
7346 2018-05-23  Tom Tromey  <tom@tromey.com>
7347
7348         * complaints.c (vcomplaint): Remove.
7349         (complaint_internal) Merge in contents of vcomplaint.
7350
7351 2018-05-23  Tom Tromey  <tom@tromey.com>
7352
7353         * complaints.c (struct complaints) <explanation>: Remove.
7354         (symfile_explanations): Remove.
7355         (symfile_complaint_book): Update.
7356         (vcomplaint): Update.
7357         (struct explanation): Remove.
7358
7359 2018-05-23  Tom Tromey  <tom@tromey.com>
7360
7361         * complaints.c (symfile_complaints): Remove.
7362         (complaint_internal): Remove "complaints" parameter.
7363         (clear_complaints, vcomplaint): Remove "c" parameter.
7364         (get_complaints): Remove.
7365         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
7366         (dwarf2_debug_line_missing_file_complaint)
7367         (dwarf2_debug_line_missing_end_sequence_complaint)
7368         (dwarf2_complex_location_expr_complaint)
7369         (dwarf2_const_value_length_mismatch_complaint)
7370         (dwarf2_section_buffer_overflow_complaint)
7371         (dwarf2_macro_malformed_definition_complaint)
7372         (dwarf2_invalid_attrib_class_complaint)
7373         (create_addrmap_from_index, dw2_symtab_iter_next)
7374         (dw2_expand_marked_cus)
7375         (dw2_debug_names_iterator::find_vec_in_debug_names)
7376         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
7377         (create_debug_type_hash_table, init_cutu_and_read_dies)
7378         (partial_die_parent_scope, add_partial_enumeration)
7379         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
7380         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
7381         (read_import_statement, read_file_scope, create_dwo_cu_reader)
7382         (create_cus_hash_table, create_dwp_hash_table)
7383         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
7384         (dwarf2_rnglists_process, dwarf2_ranges_process)
7385         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
7386         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
7387         (handle_struct_member_die, process_structure_scope)
7388         (read_array_type, read_common_block, read_module_type)
7389         (read_tag_pointer_type, read_typedef, read_base_type)
7390         (read_subrange_type, load_partial_dies, partial_die_info::read)
7391         (partial_die_info::read, partial_die_info::read)
7392         (partial_die_info::read, read_checked_initial_length_and_offset)
7393         (dwarf2_string_attr, read_formatted_entries)
7394         (dwarf_decode_line_header)
7395         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
7396         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
7397         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
7398         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
7399         (get_signatured_type, get_DW_AT_signature_type)
7400         (decode_locdesc, file_file_name, consume_improper_spaces)
7401         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
7402         (dwarf_decode_macro_bytes, dwarf_decode_macros)
7403         (dwarf2_symbol_mark_computed, set_die_type)
7404         (read_attribute_value): Update.
7405         * stap-probe.c (handle_stap_probe, get_stap_base_address):
7406         Update.
7407         * dbxread.c (unknown_symtype_complaint)
7408         (lbrac_mismatch_complaint, repeated_header_complaint)
7409         (set_namestring, function_outside_compilation_unit_complaint)
7410         (read_dbx_symtab, process_one_symbol): Update.
7411         * gdbtypes.c (stub_noname_complaint): Update.
7412         * windows-nat.c (handle_unload_dll): Update.
7413         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
7414         (decode_base_type): Update.
7415         * xcoffread.c (bf_notfound_complaint, ef_complaint)
7416         (eb_complaint, record_include_begin, record_include_end)
7417         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
7418         (process_xcoff_symbol, read_symbol)
7419         (function_outside_compilation_unit_complaint)
7420         (scan_xcoff_symtab): Update.
7421         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
7422         * buildsym.c (finish_block_internal, make_blockvector)
7423         (end_symtab_get_static_block, augment_type_symtab): Update.
7424         * dtrace-probe.c (dtrace_process_dof)
7425         (dtrace_static_probe_ops::get_probes): Update.
7426         * complaints.h (struct complaint): Don't declare.
7427         (symfile_complaints): Remove.
7428         (complaint_internal): Remove "complaints" parameter.
7429         (complaint): Likewise.
7430         (clear_complaints): Likewise.
7431         * symfile.c (syms_from_objfile_1, finish_new_objfile)
7432         (reread_symbols): Update.
7433         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
7434         (dwarf2_frame_cache, decode_frame_entry): Update.
7435         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
7436         * objc-lang.c (lookup_objc_class, lookup_child_selector)
7437         (info_selectors_command): Update.
7438         * macrotab.c (macro_include, check_for_redefinition)
7439         (macro_undef): Update.
7440         * objfiles.c (filter_overlapping_sections): Update.
7441         * stabsread.c (invalid_cpp_abbrev_complaint)
7442         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
7443         (define_symbol, error_type, read_type, rs6000_builtin_type)
7444         (stabs_method_name_from_physname, read_member_functions)
7445         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
7446         (attach_fields_to_type, complain_about_struct_wipeout)
7447         (read_range_type, read_args, common_block_start)
7448         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
7449         Update.
7450         * mdebugread.c (index_complaint, unknown_ext_complaint)
7451         (basic_type_complaint, bad_tag_guess_complaint)
7452         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
7453         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
7454         (parse_procedure, parse_lines)
7455         (function_outside_compilation_unit_complaint)
7456         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
7457         (bad_tag_guess_complaint, reg_value_complaint): Update.
7458         * cp-support.c (demangled_name_complaint): Update.
7459         * macroscope.c (sal_macro_scope): Update.
7460         * dwarf-index-write.c (class debug_names): Update.
7461
7462 2018-05-23  Tom Tromey  <tom@tromey.com>
7463
7464         * complaints.c (clear_complaints): Remove "noisy" parameter.
7465         * complaints.h (clear_complaints): Update.
7466         * symfile.c (syms_from_objfile_1, finish_new_objfile)
7467         (reread_symbols): Update.
7468
7469 2018-05-23  Tom Tromey  <tom@tromey.com>
7470
7471         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
7472         SUBSEQUENT_MESSAGE.
7473         (vcomplaint, clear_complaints): Update.
7474         (symfile_explanations): Remove some messages.
7475
7476 2018-05-23  Tom Tromey  <tom@tromey.com>
7477
7478         * complaints.c (internal_complaint): Remove.
7479         * complaints.h (internal_complaint): Remove.
7480
7481 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
7482
7483         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
7484
7485 2018-05-22  Pedro Alves  <palves@redhat.com>
7486
7487         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
7488         (remote_fileio_badfd, remote_fileio_return_errno)
7489         (remote_fileio_return_success, remote_fileio_func_open)
7490         (remote_fileio_func_open, remote_fileio_func_close)
7491         (remote_fileio_func_read, remote_fileio_func_write)
7492         (remote_fileio_func_lseek, remote_fileio_func_rename)
7493         (remote_fileio_func_unlink, remote_fileio_func_stat)
7494         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
7495         (remote_fileio_func_isatty, remote_fileio_func_system): Add
7496         remote_target parameter.
7497         (remote_fio_func_map) <func>: Add remote_target parameter.
7498         (do_remote_fileio_request, remote_fileio_request):
7499         * remote-fileio.h (remote_fileio_request):
7500         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
7501         remote_target parameter.
7502         (remote_notif_process, handle_notification): Adjust to pass down
7503         the remote.
7504         (remote_notif_state_allocate): Add remote_target parameter.  Save
7505         it.
7506         * remote-notif.h (struct remote_target): Forward declare.
7507         (struct notif_client) <parse, ack, can_get_pending_events>: Add
7508         remote_target parameter.
7509         (struct remote_notif_state) <remote>: New field.
7510         (remote_notif_ack, remote_notif_parse): Add remote_target
7511         parameter.
7512         (remote_notif_state_allocate, remote_notif_state_allocate): Add
7513         remote_target parameter.
7514         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
7515         (threads_listing_context, rmt_thread_action, protocol_feature)
7516         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
7517         (packet_result, struct threads_listing_context, remote_state):
7518         Move definitions and declarations higher up.
7519         (remote_target) <~remote_target>: Declare.
7520         (remote_download_command_source, remote_file_put, remote_file_get)
7521         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
7522         (remote_hostio_pread_vFile, remote_hostio_send_command)
7523         (remote_hostio_set_filesystem, remote_hostio_open)
7524         (remote_hostio_close, remote_hostio_unlink, remote_state)
7525         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
7526         (get_memory_write_packet_size, get_memory_read_packet_size)
7527         (append_pending_thread_resumptions, remote_detach_1)
7528         (append_resumption, remote_resume_with_vcont)
7529         (add_current_inferior_and_thread, wait_ns, wait_as)
7530         (process_stop_reply, remote_notice_new_inferior)
7531         (process_initial_stop_replies, remote_add_thread)
7532         (btrace_sync_conf, remote_btrace_maybe_reopen)
7533         (remove_new_fork_children, kill_new_fork_children)
7534         (discard_pending_stop_replies, stop_reply_queue_length)
7535         (check_pending_events_prevent_wildcard_vcont)
7536         (discard_pending_stop_replies_in_queue, stop_reply)
7537         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
7538         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
7539         (remote_interrupt_as, remote_interrupt_ns)
7540         (remote_get_noisy_reply, remote_query_attached)
7541         (remote_add_inferior, remote_current_thread, get_current_thread)
7542         (set_thread, set_general_thread, set_continue_thread)
7543         (set_general_process, write_ptid)
7544         (remote_unpack_thread_info_response, remote_get_threadinfo)
7545         (parse_threadlist_response, remote_get_threadlist)
7546         (remote_threadlist_iterator, remote_get_threads_with_ql)
7547         (remote_get_threads_with_qxfer)
7548         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
7549         (get_offsets, remote_check_symbols, remote_supported_packet)
7550         (remote_query_supported, remote_packet_size)
7551         (remote_serial_quit_handler, remote_detach_pid)
7552         (remote_vcont_probe, remote_resume_with_hc)
7553         (send_interrupt_sequence, interrupt_query)
7554         (remote_notif_get_pending_events, fetch_register_using_p)
7555         (send_g_packet, process_g_packet, fetch_registers_using_g)
7556         (store_register_using_P, store_registers_using_G)
7557         (set_remote_traceframe, check_binary_download)
7558         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
7559         (remote_xfer_live_readonly_partial, remote_read_bytes)
7560         (remote_send_printf, remote_flash_write, readchar)
7561         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
7562         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
7563         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
7564         (extended_remote_disable_randomization, extended_remote_run)
7565         (send_environment_packet, extended_remote_environment_support)
7566         (extended_remote_set_inferior_cwd, remote_write_qxfer)
7567         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
7568         (packet_command): Now methods of ...
7569         (remote_target): ... this class.
7570         (m_remote_state) <remote_target>: New field.
7571         (struct remote_state) <stop_reply_queue,
7572         remote_async_inferior_event_token, wait_forever_enabled_p>: New
7573         fields.
7574         (remote_state::remote_state): Allocate stop_reply_queue.
7575         (remote_state): Delete global.
7576         (get_remote_state_raw): Delete.
7577         (remote_target::get_remote_state): Allocate m_remote_state on
7578         demand.
7579         (get_current_remote_target): New.
7580         (remote_ops, extended_remote_ops): Delete.
7581         (wait_forever_enabled_p, remote_async_inferior_event_token):
7582         Delete, moved to struct remote_state.
7583         (remote_target::close): Delete self.  Destruction bits split to
7584         ...
7585         (remote_target::~remote_target): ... this.
7586         (show_memory_packet_size): Adjust to use
7587         get_current_remote_target.
7588         (struct protocol_feature) <func>: Add remote_target parameter.
7589         All callers adjusted.
7590         (curr_quit_handler_target): New.
7591         (remote_serial_quit_handler): Reimplement.
7592         (remote_target::open_1): Adjust to use get_current_remote_target.
7593         Heap-allocate remote_target/extended_remote_target instances.
7594         (vcont_builder::vcont_builder): Add remote_target parameter, and
7595         save it in m_remote.  All callers adjusted.
7596         (vcont_builder::m_remote): New field.
7597         (vcont_builder::restart, vcont_builder::flush)
7598         (vcont_builder::push_action): Use it.
7599         (remote_target::commit_resume): Use it.
7600         (struct queue_iter_param) <remote>: New field.
7601         (remote_target::remove_new_fork_children): Fill in 'remote' field.
7602         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
7603         (check_pending_event_prevents_wildcard_vcont_callback)
7604         (remote_target::check_pending_events_prevent_wildcard_vcont)
7605         (remote_target::discard_pending_stop_replies)
7606         (remote_target::discard_pending_stop_replies_in_queue)
7607         (remote_target::remote_notif_remove_queued_reply): Fill in
7608         'remote' field.
7609         (remote_notif_get_pending_events): New.
7610         (remote_target::readchar, remote_target::remote_serial_write):
7611         Save/restore curr_quit_handler_target.
7612         (putpkt): New.
7613         (kill_new_fork_children): Fill in 'remote' field.
7614         (packet_command): Use get_current_remote_target, defer to
7615         remote_target method of same name.
7616         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
7617         parameter, and save it in m_remote.  All callers adjusted.
7618         (scoped_remote_fd::release): Use m_remote.
7619         (scoped_remote_fd::m_remote): New field.
7620         (remote_file_put, remote_file_get, remote_file_delete): Use
7621         get_current_remote_target, defer to remote_target method of same
7622         name.
7623         (remote_btrace_reset): Add remote_state paremeter.  Update all
7624         callers.
7625         (remote_async_inferior_event_handler). Pass down 'data'.
7626         (remote_new_objfile): Use get_current_remote_target.
7627         (remote_target::vcont_r_supported): New.
7628         (set_range_stepping): Use get_current_remote_target and
7629         remote_target::vcont_r_supported.
7630         (_initialize_remote): Don't allocate 'remote_state' and
7631         'stop_reply_queue' globals.
7632         * remote.h (struct remote_target): Forward declare.
7633         (getpkt, putpkt, remote_notif_get_pending_events): Add
7634         'remote_target' parameter.
7635
7636 2018-05-22  Pedro Alves  <palves@redhat.com>
7637
7638         * remote.c (vcont_builder): Now a class.  Make all data members
7639         private.
7640         (vcont_builder) <vcont_builder, restart, flush, push_action>:
7641         Declare methods.
7642         (vcont_builder_restart): Rename to ...
7643         (vcont_builder::restart): ... this.
7644         (vcont_builder_flush): Rename to ...
7645         (vcont_builder::flush): ... this.
7646         (vcont_builder_push_action): Rename to ...
7647         (vcont_builder::push_action): ... this.
7648         (remote_target::commit_resume): Adjust.
7649
7650 2018-05-22  Pedro Alves  <palves@redhat.com>
7651
7652         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
7653         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
7654         (get_fixed_memory_packet_size): New.
7655         (get_memory_packet_size): Use it.
7656         (set_memory_packet_size): Don't override the config size with
7657         DEFAULT_MAX_MEMORY_PACKET_SIZE.
7658         (show_memory_packet_size): Use get_fixed_memory_packet_size.
7659         Don't refer to get_memory_packet_size if not connected to a remote
7660         target.  Show "(default)" if configured size is 0.
7661
7662 2018-05-22  Pedro Alves  <palves@redhat.com>
7663
7664         * remote.c (remote_target::mourn_inferior): Move
7665         discard_pending_stop_replies call here from ...
7666         (_initialize_remote): ... here.
7667
7668 2018-05-22  Pedro Alves  <palves@redhat.com>
7669
7670         * remote.c (compare_section_command): Remove set_general_process
7671         call.
7672
7673 2018-05-22  Pedro Alves  <palves@redhat.com>
7674
7675         * remote.c (struct packet_reg, struct remote_arch_state):
7676         Move higher up in the file.
7677         (remote_state) <m_arch_states>: Store remote_arch_state values
7678         instead of remote_arch_state pointers.
7679         (remote_state::get_remote_arch_state): Adjust.
7680
7681 2018-05-22  Pedro Alves  <palves@redhat.com>
7682
7683         * remote.c: Include <unordered_map>.
7684         (remote_state): Now a class.
7685         (remote_state) <get_remote_arch_state>: Declare method.
7686         <get_remote_arch_state>: New field.
7687         (remote_arch_state) <remote_arch_state>: Declare ctor.
7688         <regs>: Now a unique_ptr.
7689         (remote_gdbarch_data_handle): Delete.
7690         (get_remote_arch_state): Delete.
7691         (remote_state::get_remote_arch_state): New.
7692         (get_remote_state): Adjust to call remote_state's
7693         get_remote_arch_state method.
7694         (init_remote_state): Delete, bits factored out to ...
7695         (remote_arch_state::remote_arch_state): ... this new method.
7696         (get_remote_packet_size, get_memory_packet_size)
7697         (process_g_packet, remote_target::fetch_registers)
7698         (remote_target::prepare_to_store, store_registers_using_G)
7699         (remote_target::store_registers, remote_target::get_trace_status):
7700         Adjust to call remote_state's method.
7701         (_initialize_remote): Remove reference to
7702         remote_gdbarch_data_handle.
7703
7704 2018-05-22  Pedro Alves  <palves@redhat.com>
7705
7706         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
7707         pread>: New method declarations.
7708         (remote_target::open_1): Adjust.
7709         (readahead_cache_invalidate): Rename to ...
7710         (readahead_cache::invalidate): ... this, and adjust to be a class
7711         method.
7712         (readahead_cache_invalidate_fd): Rename to ...
7713         (readahead_cache::invalidate_fd): ... this, and adjust to be a
7714         class method.
7715         (remote_hostio_pwrite): Adjust.
7716         (remote_hostio_pread_from_cache): Rename to ...
7717         (readahead_cache::pread): ... this, and adjust to be a class
7718         method.
7719         (remote_hostio_close): Adjust.
7720
7721 2018-05-22  Pedro Alves  <palves@redhat.com>
7722
7723         * remote.c (remote_hostio_close_cleanup): Delete.
7724         (class scoped_remote_fd): New.
7725         (remote_file_put, remote_file_get): Use it.
7726
7727 2018-05-22  Pedro Alves  <palves@redhat.com>
7728
7729         (struct vCont_action_support): Use bool and initialize all fields.
7730         (struct readahead_cache): Initialize all fields.
7731         (remote_state): Use bool and initialize all fields.
7732         (remote_state::remote_state, remote_state::~remote_state): New.
7733         (new_remote_state): Delete.
7734         (_initialize_remote): Use new to allocate remote_state.
7735
7736 2018-05-22  Pedro Alves  <palves@redhat.com>
7737             張俊芝  <zjz@zjz.name>
7738
7739         PR gdb/22973
7740         * c-exp.y: Include "c-support.h".
7741         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
7742         of tolower.  Use c_ident_is_alpha to scan names.
7743         * c-lang.c: Include "c-support.h".
7744         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
7745         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
7746         * c-support.h: New file, with bits factored out from ...
7747         * cp-name-parser.y: ... this file.
7748         Include "c-support.h".
7749         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
7750         c-support.h and renamed.
7751         (symbol_end, yylex): Adjust.
7752
7753 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7754
7755         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
7756         parameter type to CORE_ADDR.
7757         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
7758         parameter type in declaration to CORE_ADDR.
7759         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
7760         target_auxv_search to get AT_HWCAP and use the result to get the
7761         target description.
7762         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
7763         to CORE_ADDR. Remove the cast of the return value to unsigned
7764         long. Fix error predicate of target_auxv_search.
7765         (ppc_linux_nat_target::read_description): Change the type of the
7766         hwcap variable to CORE_ADDR.
7767
7768 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7769
7770         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
7771         if the size of fpscr is larger than 32 bits.
7772
7773 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7774
7775         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
7776         (ppc32_linux_vsxregmap): New global.
7777         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
7778         regcache_supply_regset, and regcache_collect_regset.
7779         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
7780         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
7781         (fetch_vsx_register, store_vsx_register): Remove.
7782         (fetch_vsx_registers): Add regno parameter. Get regset using
7783         ppc_linux_vsxregset. Use regset to supply registers.
7784         (store_vsx_registers): Add regno parameter. Get regset using
7785         ppc_linux_vsxregset. Use regset to collect registers.
7786         (fetch_register): Call fetch_vsx_registers instead of
7787         fetch_vsx_register.
7788         (store_register): Call store_vsx_registers instead of
7789         store_vsx_register.
7790         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
7791         new regno parameter.
7792         (store_ppc_registers): Call store_vsx_registers with -1 for the
7793         new regno parameter.
7794         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
7795         (ppc_collect_vsxregset): Remove.
7796
7797 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7798
7799         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
7800         offset fields.
7801         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
7802         for vector register offset fields.
7803         (ppc64_fbsd_reg_offsets): Likewise.
7804         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
7805         to vector register offset fields.
7806         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
7807         to vector register offset fields.
7808         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
7809         vector register offset fields.
7810         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
7811         initializers for vector register offset fields.
7812         (rs6000_aix64_reg_offsets): Likewise.
7813         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
7814         (ppc_supply_vrregset): Remove.
7815         (ppc_collect_vrregset): Remove.
7816         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
7817         (ppc_linux_vrregset) : New function.
7818         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
7819         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
7820         (ppc32_linux_vrregset): Remove.
7821         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
7822         and use result instead of ppc32_linux_vrregset.
7823         (ppc32_linux_reg_offsets): Remove initializers for vector register
7824         offset fields.
7825         (ppc64_linux_reg_offsets): Likewise.
7826         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
7827         * ppc-linux-nat.c: Include regset.h.
7828         (gdb_vrregset_t): Adjust comment to account for little-endian
7829         mode.
7830         (supply_vrregset, fill_vrregset): Remove.
7831         (fetch_altivec_register, store_altivec_register): Remove.
7832         (fetch_altivec_registers): Add regno parameter. Get regset using
7833         ppc_linux_vrregset. Use regset to supply registers.
7834         (store_altivec_registers): Add regno parameter. Get regset using
7835         ppc_linux_vrregset. Use regset to collect registers.
7836         (fetch_register): Call fetch_altivec_registers instead of
7837         fetch_altivec_register.
7838         (store_register): Call store_altivec_registers instead of
7839         store_altivec_register.
7840         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
7841         the new regno parameter.
7842         (store_ppc_registers): Call store_altivec_registers with -1 for
7843         the new regno parameter.
7844
7845 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7846
7847         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
7848         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
7849         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
7850         (gdb_vrregset_t): Change array type size to
7851         PPC_LINUX_SIZEOF_VRREGSET.
7852         (gdb_vsxregset_t): Change array type size to
7853         PPC_LINUX_SIZEOF_VSXREGSET.
7854         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
7855         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
7856         PPC_LINUX_SIZEOF_VSXREGSET.
7857
7858 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7859
7860         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
7861         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
7862         nat/ppc-linux.c.
7863         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
7864         ppc_linux_target_wordsize with tid.
7865         (ppc_linux_nat_target::read_description): Call ppc_linux_target
7866         wordsize with tid.
7867         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
7868         (ppc64_64bit_inferior_p): Add static and inline specifiers.
7869         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
7870         tid parameter. Remove static specifier.
7871         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
7872         (ppc_linux_target_wordsize): New declaration.
7873
7874 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7875
7876         * arch/ppc-linux-common.c: New file.
7877         * arch/ppc-linux-common.h: New file.
7878         * arch/ppc-linux-tdesc.h: New file.
7879         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
7880         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
7881         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
7882         arch/ppc-linux-tdesc.h.
7883         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
7884         arch/ppc-linux-tdesc.h.
7885         (ppc_linux_nat_target::read_description): Remove target
7886         description matching code. Fill a ppc_linux_features struct and
7887         call ppc_linux_match_description with it. Move comment about ISA
7888         2.05 to ppc-linux-common.c.
7889         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
7890         arch/ppc-linux-tdesc.h.
7891         (ppc_linux_core_read_description): Remove target description
7892         matching code. Fill a ppc_linux_features struct and call
7893         ppc_linux_match_description with it.
7894         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
7895         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
7896         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
7897         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
7898         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
7899         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
7900         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
7901         (tdesc_powerpc_e500l): Remove.
7902
7903 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
7904
7905         * ada-lang.c (catch_assert_command): Pass empty string instead
7906         of NULL for excep_string argument.
7907
7908 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
7909
7910         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
7911         the width of the requested register exceeds the width of the
7912         `ptrace' data type.
7913
7914 2018-05-21  Tom Tromey  <tom@tromey.com>
7915
7916         * printcmd.c (output_command): Remove.
7917         (output_command_const): Rename to output_command.
7918         * valprint.h (output_command): Rename from output_command_const.
7919         * tracepoint.c (trace_dump_actions): Call output_command.
7920
7921 2018-05-21  Tom Tromey  <tom@tromey.com>
7922
7923         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
7924         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
7925         * ada-lang.h (create_ada_exception_catchpoint): Update.
7926         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
7927         std::string.
7928         (create_excep_cond_exprs, ~ada_catchpoint)
7929         (should_stop_exception, print_one_exception)
7930         (print_mention_exception, print_recreate_exception): Update.
7931         (ada_get_next_arg): Remove.
7932         (catch_ada_exception_command_split): Use std::string.  Change type
7933         of "excep_string", "cond_string".
7934         (catch_ada_exception_command): Update.
7935         (create_ada_exception_catchpoint): Change type of excep_string.
7936         (ada_exception_sal): Remove excep_string parameter.
7937         (~ada_catchpoint): Remove.
7938
7939 2018-05-21  Tom Tromey  <tom@tromey.com>
7940
7941         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
7942         cleanup.
7943
7944 2018-05-21  Tom Tromey  <tom@tromey.com>
7945
7946         * ada-lang.c (ada_exception_message_1, ada_exception_message):
7947         Return unique_xmalloc_ptr.
7948         (print_it_exception): Update.
7949
7950 2018-05-21  Tom Tromey  <tom@tromey.com>
7951
7952         * tracepoint.c (trace_dump_actions): Use std::string.
7953
7954 2018-05-21  Tom Tromey  <tom@tromey.com>
7955
7956         * symfile.c (reread_symbols): Use std::string for original_name.
7957
7958 2018-05-21  Tom Tromey  <tom@tromey.com>
7959
7960         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
7961         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
7962         constructor.
7963
7964 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
7965
7966         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
7967         instance to...
7968         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
7969         * objfiles.c (get_objfile_bfd_data): Allocate
7970         objfile_per_bfd_storage with obstack_new when allocating on
7971         obstack.
7972
7973 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
7974
7975         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
7976         OBSTACK_ZALLOC.
7977         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
7978         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
7979         * mdebugread.c (mdebug_build_psymtabs): Likewise.
7980         (add_pending): Likewise.
7981         (parse_symbol): Likewise.
7982         (parse_partial_symbols): Likewise.
7983         (psymtab_to_symtab_1): Likewise.
7984         (new_psymtab): Likewise.
7985         (elfmdebug_build_psymtabs): Likewise.
7986         * minsyms.c (terminate_minimal_symbol_table): Likewise.
7987         * objfiles.c (get_objfile_bfd_data): Likewise.
7988         (objfile_register_static_link): Likewise.
7989         * psymtab.c (allocate_psymtab): Likewise.
7990         * stabsread.c (read_member_functions): Likewise.
7991         * xcoffread.c (xcoff_end_psymtab): Likewise.
7992
7993 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
7994
7995         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
7996         compiler supports std::is_trivially_constructible.
7997         * common/poison.h: Include obstack.h.
7998         (IsMallocable): Define to is_trivially_constructible if the
7999         compiler supports it, define to true_type otherwise.
8000         (xobnew): New.
8001         (XOBNEW): Redefine.
8002         (xobnewvec): New.
8003         (XOBNEWVEC): Redefine.
8004         * gdb_obstack.h (obstack_zalloc): New.
8005         (OBSTACK_ZALLOC): Redefine.
8006         (obstack_calloc): New.
8007         (OBSTACK_CALLOC): Redefine.
8008         (obstack_new): New.
8009         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
8010         (gdbarch_obstack): New declaration in gdbarch.h, definition in
8011         gdbarch.c.
8012         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
8013         obstack_calloc/obstack_zalloc.
8014         (gdbarch_obstack_zalloc): Remove.
8015         * target-descriptions.c (tdesc_data_init): Use obstack_new.
8016
8017 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8018
8019         * stack.c (backtrace_command_1): Remove useless variable int i.
8020
8021 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8022
8023         * stack.c (print_frame_info): Fix comment.
8024
8025 2018-05-18  Tom Tromey  <tom@tromey.com>
8026
8027         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
8028         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
8029         (~dwarf2_per_objfile): Update
8030         (dwarf2_get_dwz_file): Use new.
8031         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
8032         unique_ptr.
8033
8034 2018-05-18  Tom Tromey  <tom@tromey.com>
8035
8036         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
8037         unique_ptr.
8038         * dwarf2read.c (struct dwp_file): Add constructor and
8039         initializers.
8040         (open_and_init_dwp_file): Return a unique_ptr.
8041         (dwarf2_per_objfile, create_dwp_hash_table)
8042         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
8043         (lookup_dwo_unit_in_dwp): Update.
8044         (open_and_init_dwp_file, get_dwp_file): Update.
8045
8046 2018-05-18  Tom Tromey  <tom@tromey.com>
8047
8048         * dwarf2read.c (dwarf2_per_objfile): Update.
8049         (struct mapped_index): Add initializers.
8050         (dwarf2_read_index): Use new.
8051         (dw2_symtab_iter_init): Update.
8052         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
8053         unique_ptr.
8054
8055 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8056
8057         * dwarf2read.c (mapped_index) <total_size>: Remove.
8058
8059 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8060
8061         * unittests/format_pieces-selftests.c (test_format_specifier):
8062         Add ARI comments.
8063
8064 2018-05-18  Tom Tromey  <tom@tromey.com>
8065
8066         * c-typeprint.c (maybe_print_hole): New function.
8067         (c_print_type_struct_field_offset): Update.
8068         (c_type_print_base_struct_union): Call maybe_print_hole.
8069
8070 2018-05-17  Keith Seitz  <keiths@redhat.com>
8071
8072         * breakpoint.c (build_bpstat_chain): New function, moved from
8073         bpstat_stop_status.
8074         (bpstat_stop_status): Add optional parameter, `stop_chain'.
8075         If no stop chain is passed, call build_bpstat_chain to build it.
8076         * breakpoint.h (build_bpstat_chain): Declare.
8077         (bpstat_stop_status): Move documentation here from breakpoint.c.
8078         * infrun.c (handle_signal_stop): Before eliding inlined frames,
8079         build the stop chain and pass it to skip_inline_frames.
8080         Pass this stop chain to bpstat_stop_status.
8081         * inline-frame.c: Include breakpoint.h.
8082         (stopped_by_user_bp_inline_frame): New function.
8083         (skip_inline_frames): Add parameter `stop_chain'.
8084         Move documention to inline-frame.h.
8085         If non-NULL, use stopped_by_user_bp_inline_frame to determine
8086         whether the frame should be elided.
8087         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
8088         Add moved documentation and update for new parameter.
8089
8090 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
8091
8092         PR cli/14975
8093         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
8094         unittests/format_pieces-selftests.c.
8095         * common/format.h (format_piece) <operator==>: New.
8096         (format_pieces) <operator[]>: Remove.
8097         * common/format.c (format_pieces::format_pieces): Handle \e.
8098         * unittests/format_pieces-selftests.c: New.
8099
8100 2018-05-17  Tom Tromey  <tom@tromey.com>
8101
8102         PR symtab/23010:
8103         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
8104         (dw2_instantiate_symtab): Add skip_partial parameter.
8105         (dw2_find_last_source_symtab, dw2_map_expand_apply)
8106         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
8107         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
8108         (dw2_expand_symtabs_matching_one)
8109         (dw2_find_pc_sect_compunit_symtab)
8110         (dw2_debug_names_lookup_symbol)
8111         (dw2_debug_names_expand_symtabs_for_function): Update.
8112         (init_cutu_and_read_dies): Add skip_partial parameter.
8113         (process_psymtab_comp_unit, build_type_psymtabs_1)
8114         (process_skeletonless_type_unit, load_partial_comp_unit)
8115         (psymtab_to_symtab_1): Update.
8116         (load_full_comp_unit): Add skip_partial parameter.
8117         (process_imported_unit_die, dwarf2_read_addr_index)
8118         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
8119         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
8120         (read_signatured_type): Update.
8121
8122 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
8123
8124         * value.c (release_value): Remove unused variable.
8125         (record_latest_value): Likewise.
8126         (access_value_history): Likewise.
8127         (preserve_values): Likewise.
8128
8129 2018-05-17  Tom Tromey  <tom@tromey.com>
8130
8131         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
8132         Initialize.
8133
8134 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
8135
8136         PR gdb/22286
8137         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
8138         Also handle registers whose width is not a multiple of
8139         PTRACE_TYPE_RET.
8140         (linux_nat_trad_target::store_register): Likewise.
8141
8142 2018-05-16  Tom Tromey  <tom@tromey.com>
8143
8144         * gdbcore.h (core_bfd): Redefine.
8145         * corelow.c (core_target::close): Update.
8146         (core_target_open): Update.
8147         * progspace.h (struct program_space) <cbfd>: Now a
8148         gdb_bfd_ref_ptr.
8149
8150 2018-05-16  Tom Tromey  <tom@tromey.com>
8151
8152         PR cli/19551:
8153         * symfile-add-flags.h (enum symfile_add_flags)
8154         <SYMFILE_NOT_FILENAME>: New constant.
8155         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
8156         objfile name from BFD.
8157         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
8158         * minidebug.c (find_separate_debug_file_in_section): Put
8159         ".gnu_debugdata" into BFD's file name.
8160
8161 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
8162
8163         * regcache.c (regcache_read_ftype, regcache_write_ftype):
8164         Remove.
8165
8166 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
8167
8168         PR binutils/21446
8169         * aarch64-tdep.c (aarch64_analyze_prologue,
8170         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
8171         Indicate not interested in errors.
8172
8173 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8174
8175         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
8176         Supply the MIPS_ZERO_REGNUM register.
8177
8178 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8179
8180         * mips-tdep.c (mask_address_var): Make variable static.
8181
8182 2018-05-14  Tom Tromey  <tom@tromey.com>
8183
8184         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
8185
8186 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
8187
8188         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
8189         FXSAVE_ADDR for the mxcsr register.
8190
8191 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
8192
8193         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
8194
8195 2018-05-11  Pedro Alves  <palves@redhat.com>
8196
8197         * corelow.c (core_target) <core_target>: No longer inline.
8198         Initialize m_core_gdbarch, m_core_vec and build the section table
8199         here.
8200         <~core_target>: New.
8201         <core_gdbarch, get_core_register_section>: New methods.
8202         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
8203         factored out from ...
8204         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
8205         (core_ops): Delete.
8206         (sniff_core_bfd): Add gdbarch parameter.
8207         (core_close): Delete, merged into ...
8208         (core_target::close): ... here.  Delete self.
8209         (core_close_cleanup): Delete.
8210         (core_target_open): Allocate a core_target on the heap.  Use a
8211         unique_ptr instead of a cleanup.  Bits moved into the core_target
8212         ctor.  Adjust to use core_target methods instead of globals.
8213         (get_core_register_section): Rename to ...
8214         (core_target::get_core_register_section): ... this and adjust.
8215         (struct get_core_registers_cb_data): New.
8216         (get_core_registers_cb): Use it.  Use bool.
8217         (core_target::fetch_registers, core_target::files_info)
8218         (core_target::xfer_partial, core_target::read_description)
8219         (core_target::pid_to, core_target::thread_name): Adjust to
8220         reference class fields instead of globals.
8221         * target.h (struct target_ops_deleter, target_ops_up): New.
8222
8223 2018-05-11  Pedro Alves  <palves@redhat.com>
8224
8225         * corefile.c (core_file_command): Move to corelow.c.
8226         * corelow.c (the_core_target): Delete.
8227         (core_file_command): Moved from corefile.c.  Check exec_bfd
8228         instead of the_core_target.  Use target_detach instead of calling
8229         into the_core_target directly.
8230         (maybe_say_no_core_file_now): New.
8231         (core_target::detach): Use it.
8232         (_initialize_corelow): Remove references to the_core_target.
8233         * gdbcore.h (the_core_target): Delete.
8234
8235 2018-05-11  Tom Tromey  <tromey@redhat.com>
8236             Pedro Alves  <palves@redhat.com>
8237
8238         * corefile.c (core_bfd): Remove.
8239         * gdbcore.h (core_bfd): Now a macro.
8240         * progspace.h (struct program_space) <cbfd>: New field.
8241
8242 2018-05-11  Tom Tromey  <tom@tromey.com>
8243
8244         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
8245         gdb::def_vector.
8246
8247 2018-05-10  Tom Tromey  <tom@tromey.com>
8248
8249         * configure: Rebuild.
8250         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
8251
8252 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
8253
8254         PR server/23158:
8255         * regformats/regdat.sh: Adjust script, following the addition
8256         of the new expedite_regs parameter to init_target_desc.
8257
8258 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
8259     
8260         PR gdb/23127
8261         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
8262         set_gdbarch_significant_addr_bit.
8263         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
8264         set_gdbarch_significant_addr_bit.
8265         * utils.c (address_significant): Update to sign extend addr.
8266
8267 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
8268
8269         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
8270         (xtensa_linux_init_abi): Limit tdep->num_regs by
8271         tdep->num_nopriv_regs.
8272         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
8273         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
8274         not initialized.
8275
8276 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
8277
8278         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
8279
8280 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
8281
8282         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
8283         (I387_MXCSR_INIT_VAL): New constant.
8284         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
8285         buffer if it was supplied by the inferior.
8286         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
8287         (i387_xsave_get_clear_bv): New function.
8288         (i387_supply_xsave): Only read x87 control registers from the
8289         xsave buffer if the feature is enabled, and the state will have
8290         been written, otherwise, provide a suitable default.
8291         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
8292         including x87 control registers.  Update control registers if they
8293         have changed from the default value, and mark features as enabled
8294         as required.
8295         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
8296
8297 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
8298
8299         * spu-tdep.c (info_spu_event_command): Fix output formatting.
8300
8301 2018-05-07  Tom Tromey  <tom@tromey.com>
8302
8303         * configure: Rebuild.
8304         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
8305
8306 2018-05-07  Tom Tromey  <tom@tromey.com>
8307
8308         PR tdep/20362:
8309         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
8310         bit.  Use correct value for VDIV.
8311
8312 2018-05-04  Tom Tromey  <tom@tromey.com>
8313
8314         * configure: Rebuild.
8315         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
8316
8317 2018-05-04  Tom Tromey  <tom@tromey.com>
8318
8319         * linux-record.c (record_linux_system_call) <case
8320         RECORD_SYS_RECVFROM>: Add "break".
8321
8322 2018-05-04  Tom Tromey  <tom@tromey.com>
8323
8324         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
8325         Add missing "break".
8326         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
8327         Add missing "break".
8328
8329 2018-05-04  Tom Tromey  <tom@tromey.com>
8330
8331         * rs6000-tdep.c (ppc_process_record_op4)
8332         (ppc_process_record_op63): Add fall-through comment.
8333
8334 2018-05-04  Tom Tromey  <tom@tromey.com>
8335
8336         * i386-tdep.c (i386_process_record): Add fall-through comment.
8337
8338 2018-05-04  Tom Tromey  <tom@tromey.com>
8339
8340         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
8341         comment.
8342
8343 2018-05-04  Tom Tromey  <tom@tromey.com>
8344
8345         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
8346         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
8347         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
8348         comment.
8349         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
8350         comment.
8351         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
8352         comment.
8353
8354 2018-05-04  Tom Tromey  <tom@tromey.com>
8355
8356         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
8357
8358 2018-05-04  Tom Tromey  <tom@tromey.com>
8359
8360         * s390-tdep.c (s390_process_record): Fix fall-through comments.
8361         * xcoffread.c (scan_xcoff_symtab): Move comment later.
8362         * symfile.c (section_is_mapped): Fix fall-through comment.
8363         * stabsread.c (define_symbol, read_member_functions): Fix
8364         fall-through comment.
8365         * s390-linux-tdep.c (s390_process_record): Fix fall-through
8366         comment.
8367         * remote.c (remote_wait_as): Fix fall-through comment.
8368         * p-exp.y (yylex): Fix fall-through comment.
8369         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
8370         comment.
8371         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
8372         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
8373         * jv-exp.y (yylex): Fix fall-through comment.
8374         * go-exp.y (lex_one_token): Fix fall-through comment.
8375         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
8376         fall-through comment.
8377         * f-exp.y (yylex): Fix fall-through comment.
8378         * dwarf2read.c (process_die): Fix fall-through comments.
8379         * dbxread.c (process_one_symbol): Fix fall-through comment.
8380         * d-exp.y (lex_one_token): Fix fall-through comment.
8381         * cp-name-parser.y (yylex): Fix fall-through comment.
8382         * coffread.c (coff_symtab_read): Fix fall-through comment.
8383         * c-exp.y (lex_one_token): Fix fall-through comment.
8384         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
8385         comment.
8386         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
8387         comment.
8388
8389 2018-05-04  Tom Tromey  <tom@tromey.com>
8390
8391         PR python/22730:
8392         * NEWS: Mention gdb.execute change.
8393         * gdbcmd.h (execute_control_command): Don't declare.
8394         * python/python.c (execute_gdb_command): Use read_command_lines_1,
8395         execute_control_commands, execute_control_commands_to_string.
8396         * cli/cli-script.h (execute_control_commands)
8397         (execute_control_commands_to_string): Declare.
8398         (execute_control_command): Add from_tty parameter.
8399         * cli/cli-script.c (execute_control_commands)
8400         (execute_control_commands_to_string): New functions.
8401         (execute_user_command): Use execute_control_commands.
8402         (execute_control_command_1): Add "from_tty" parameter.  Update.
8403         (execute_control_command): Likewise.
8404
8405 2018-05-04  Tom Tromey  <tom@tromey.com>
8406
8407         PR python/22731:
8408         * NEWS: Mention that breakpoint commands are writable.
8409         * python/py-breakpoint.c (bppy_set_commands): New function.
8410         (breakpoint_object_getset) <"commands">: Use it.
8411
8412 2018-05-04  Tom Tromey  <tom@tromey.com>
8413
8414         * tracepoint.c (actions_command): Update.
8415         * mi/mi-cmd-break.c (mi_command_line_array)
8416         (mi_command_line_array_cnt, mi_command_line_array_ptr)
8417         (mi_read_next_line): Remove.
8418         (mi_cmd_break_commands): Update.
8419         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
8420         function_view.
8421         * cli/cli-script.c (get_command_line): Update.
8422         (process_next_line): Use function_view.  Constify.
8423         (recurse_read_control_structure, read_command_lines)
8424         (read_command_lines_1): Change argument types to function_view.
8425         (do_define_command, document_command): Update.
8426         * breakpoint.h (check_tracepoint_command): Don't declare.
8427         * breakpoint.c (check_tracepoint_command): Remove.
8428         (commands_command_1, create_tracepoint_from_upload): Update.
8429
8430 2018-05-04  Tom Tromey  <tom@tromey.com>
8431
8432         PR gdb/11750:
8433         * cli/cli-script.h (enum command_control_type) <define_control>:
8434         New constant.
8435         * cli/cli-script.c (multi_line_command_p): Handle define_control.
8436         (build_command_line, execute_control_command_1)
8437         (process_next_line): Likewise.
8438         (do_define_command): New function, extracted from define_command.
8439         (define_command): Use it.
8440
8441 2018-05-04  Tom Tromey  <tom@tromey.com>
8442
8443         * tracepoint.c (actions_command): Update.
8444         * cli/cli-script.h (read_command_lines): Update.
8445         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
8446         (MAX_TMPBUF): Remove define.
8447         (define_command): Use string_printf.
8448         (document_command): Likewise.
8449         * breakpoint.c (commands_command_1): Update.
8450
8451 2018-05-04  Tom Tromey  <tom@tromey.com>
8452
8453         * top.c (execute_command): Update.
8454         * cli/cli-script.h (print_command_lines): Now varargs.
8455         * cli/cli-script.c (print_command_lines): Now varargs.
8456         (execute_control_command_1) <case while_control, case if_control>:
8457         Update.
8458
8459 2018-05-04  Tom Tromey  <tom@tromey.com>
8460
8461         * tracepoint.c (all_tracepoint_actions): Rename from
8462         all_tracepoint_actions_and_cleanup.  Change return type.
8463         (actions_command, encode_actions_1, encode_actions)
8464         (trace_dump_actions, tdump_command): Update.
8465         * remote.c (remote_download_command_source): Update.
8466         * python/python.c (gdbpy_eval_from_control_command)
8467         (python_command, python_interactive_command): Update.
8468         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
8469         * guile/guile.c (guile_command)
8470         (gdbscm_eval_from_control_command, guile_command): Update.
8471         * compile/compile.c (compile_code_command)
8472         (compile_print_command, compile_to_object): Update.
8473         * cli/cli-script.h (struct command_lines_deleter): New.
8474         (counted_command_line): New typedef.
8475         (struct command_line): Add constructor, destructor.
8476         <body_list>: Remove.
8477         <body_list_0, body_list_1>: New members.
8478         (command_line_up): Remove typedef.
8479         (read_command_lines, read_command_lines_1, get_command_line):
8480         Update.
8481         (copy_command_lines): Don't declare.
8482         * cli/cli-script.c (build_command_line): Use "new".
8483         (get_command_line): Return counted_command_line.
8484         (print_command_lines, execute_user_command)
8485         (execute_control_command_1, while_command, if_command): Update.
8486         (realloc_body_list): Remove.
8487         (process_next_line, recurse_read_control_structure): Update.
8488         (read_command_lines, read_command_lines_1): Return counted_command_line.
8489         (free_command_lines): Use "delete".
8490         (copy_command_lines): Remove.
8491         (define_command, document_command, show_user_1): Update.
8492         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
8493         a counted_command_line.
8494         * breakpoint.h (counted_command_line): Remove typedef.
8495         (breakpoint_set_commands): Update.
8496         * breakpoint.c (check_no_tracepoint_commands)
8497         (validate_commands_for_breakpoint): Update.
8498         (breakpoint_set_commands): Change commands to be a
8499         counted_command_line.
8500         (commands_command_1, update_dprintf_command_list)
8501         (create_tracepoint_from_upload): Update.
8502
8503 2018-05-04  Tom Tromey  <tom@tromey.com>
8504
8505         * cli/cli-decode.h (cmd_list_element): New constructor.
8506         (~cmd_list_element): New destructor.
8507         (struct cmd_list_element): Add initializers.
8508         * cli/cli-decode.c (do_add_cmd): Use "new".
8509         (delete_cmd): Use "delete".
8510
8511 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
8512             Pedro Alves <palves@redhat.com>
8513
8514         PR breakpoints/19806 and support for PR external/20207.
8515         * NEWS: Mention Aarch64 watchpoint improvements.
8516         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
8517         watchpoints and PR external/20207 watchpoints.
8518         * nat/aarch64-linux-hw-point.c
8519         (kernel_supports_any_contiguous_range): New.
8520         (aarch64_watchpoint_offset): New.
8521         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
8522         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
8523         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
8524         (aarch64_align_watchpoint): New parameters aligned_offset_p and
8525         next_addr_orig_p.  Support PR external/20207 watchpoints.
8526         (aarch64_downgrade_regs): New.
8527         (aarch64_dr_state_insert_one_point): New parameters offset and
8528         addr_orig.
8529         (aarch64_dr_state_remove_one_point): Likewise.
8530         (aarch64_handle_breakpoint): Update caller.
8531         (aarch64_handle_aligned_watchpoint): Likewise.
8532         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
8533         aligned_offset.
8534         (aarch64_linux_set_debug_regs): Remove const from state.  Call
8535         aarch64_downgrade_regs.
8536         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
8537         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
8538         (DR_CONTROL_MASK): ... this.
8539         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
8540         (unsigned int aarch64_watchpoint_offset): New prototype.
8541         (aarch64_linux_set_debug_regs): Remove const from state.
8542         * utils.c (align_up, align_down): Move to ...
8543         * common/common-utils.c (align_up, align_down): ... here.
8544         * utils.h (align_up, align_down): Move to ...
8545         * common/common-utils.h (align_up, align_down): ... here.
8546
8547 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
8548
8549         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
8550         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
8551         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
8552         Re-implement to match the ABI as summarized in GCC's
8553         gcc/config/sparc/sparc.c.  All callers updated.
8554         (sparc32_store_arguments): Remove assertion.
8555
8556 2018-05-04  Tom Tromey  <tom@tromey.com>
8557
8558         * printcmd.c: Don't include tui.h.
8559         (decode_format): Use skip_spaces.
8560
8561 2018-05-04  Tom Tromey  <tom@tromey.com>
8562
8563         PR gdb/22619:
8564         * printcmd.c (last_count): New global.
8565         (x_command): Use saved count when repeating.
8566
8567 2018-05-04  Tom Tromey  <tom@tromey.com>
8568
8569         * nto-procfs.c (do_closedir_cleanup): Remove.
8570         (procfs_pidlist): Use gdb_dir_up.
8571         * procfs.c (do_closedir_cleanup): Remove.
8572         (proc_update_threads): Use gdb_dir_up.
8573         * common/filestuff.h (struct gdb_dir_deleter): New.
8574         (gdb_dir_up): New typedef.
8575
8576 2018-05-04  Tom Tromey  <tom@tromey.com>
8577
8578         * ada-lang.c (print_mention_exception): Use std::string.
8579
8580 2018-05-04  Tom Tromey  <tom@tromey.com>
8581
8582         * ada-lang.c (create_excep_cond_exprs): Update.
8583         (ada_exception_catchpoint_cond_string): Use std::string.
8584
8585 2018-05-04  Tom Tromey  <tom@tromey.com>
8586
8587         * ada-lang.c (xget_renaming_scope): Return std::string.
8588         (old_renaming_is_invisible): Update.
8589
8590 2018-05-04  Tom Tromey  <tom@tromey.com>
8591
8592         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
8593         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
8594
8595 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
8596
8597         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
8598
8599 2018-05-04  Tom Tromey  <tom@tromey.com>
8600
8601         * remote.c (remote_query_supported_append): Change type.
8602         (remote_check_symbols): Update.
8603
8604 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
8605
8606         PR gdb/11420
8607         * configure.ac: Prepend libpython.
8608         * python/python-config.py: Likewise.
8609         * configure: Regenerate.
8610
8611 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
8612
8613         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
8614
8615 2018-05-03  Pedro Alves  <palves@redhat.com>
8616
8617         * s390-linux-nat.c
8618         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
8619         override.  Write 'true' instead of '1'.
8620         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
8621         declaration.
8622
8623 2018-05-02  Pedro Alves  <palves@redhat.com>
8624
8625         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
8626         add_inf_child_target.
8627         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
8628         add_inf_child_target.
8629         * aix-thread.c (aix_thread_target_info): New.
8630         (aix_thread_target) <shortname, longname, doc>: Delete.
8631         <info>: New.
8632         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
8633         add_inf_child_target.
8634         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
8635         add_inf_child_target.
8636         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
8637         add_inf_child_target.
8638         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
8639         add_inf_child_target.
8640         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
8641         add_inf_child_target.
8642         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
8643         add_inf_child_target.
8644         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
8645         add_inf_child_target.
8646         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
8647         add_inf_child_target.
8648         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
8649         add_inf_child_target.
8650         * bfd-target.c (target_bfd_target_info): New.
8651         (target_bfd) <shortname, longname, doc>: Delete.
8652         <info>: New.
8653         * bsd-kvm.c (bsd_kvm_target_info): New.
8654         (bsd_kvm_target) <shortname, longname, doc>: Delete.
8655         <info>: New.
8656         (bsd_kvm_target::open): Rename to ...
8657         (bsd_kvm_target_open): ... this.  Adjust.
8658         * bsd-uthread.c (bsd_uthread_target_info): New.
8659         (bsd_uthread_target) <shortname, longname, doc>: Delete.
8660         <info>: New.
8661         * corefile.c (core_file_command): Adjust.
8662         * corelow.c (core_target_info): New.
8663         (core_target) <shortname, longname, doc>: Delete.
8664         <info>: New.
8665         (core_target::open): Rename to ...
8666         (core_target_open): ... this.  Adjust.
8667         * ctf.c (ctf_target_info): New.
8668         (ctf_target) <shortname, longname, doc>: Delete.
8669         <info>: New.
8670         (ctf_target::open): Rename to ...
8671         (ctf_target_open): ... this.
8672         (_initialize_ctf): Adjust.
8673         * exec.c (exec_target_info): New.
8674         (exec_target) <shortname, longname, doc>: Delete.
8675         <info>: New.
8676         (exec_target::open): Rename to ...
8677         (exec_target_open): ... this.
8678         * gdbcore.h (core_target_open): Declare.
8679         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
8680         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
8681         add_inf_child_target.
8682         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
8683         add_inf_child_target.
8684         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
8685         add_inf_child_target.
8686         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
8687         add_inf_child_target.
8688         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
8689         add_inf_child_target.
8690         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
8691         add_inf_child_target.
8692         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
8693         add_inf_child_target.
8694         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
8695         add_inf_child_target.
8696         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
8697         add_inf_child_target.
8698         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
8699         add_inf_child_target.
8700         * inf-child.c (inf_child_target_info): New.
8701         (inf_child_target::info): New.
8702         (inf_child_open_target): Remove 'target' parameter.  Use
8703         get_native_target instead.
8704         (inf_child_target::open): Delete.
8705         (add_inf_child_target): New.
8706         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
8707         Delete.
8708         <info>: New.
8709         (add_inf_child_target): Declare.
8710         (inf_child_open_target): Declare.
8711         * linux-thread-db.c (thread_db_target_info): New.
8712         (thread_db_target) <shortname, longname, doc>: Delete.
8713         <info>: New.
8714         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
8715         add_inf_child_target.
8716         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
8717         add_inf_child_target.
8718         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
8719         add_inf_child_target.
8720         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
8721         add_inf_child_target.
8722         * make-target-delegates (print_class): Adjust.
8723         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
8724         add_inf_child_target.
8725         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
8726         add_inf_child_target.
8727         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
8728         add_inf_child_target.
8729         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
8730         add_inf_child_target.
8731         * nto-procfs.c (nto_native_target_info): New.
8732         (nto_procfs_target_native) <shortname, longname, doc>:
8733         Delete.
8734         <info>: New.
8735         (nto_procfs_target_info): New.
8736         (nto_procfs_target_procfs) <shortname, longname, doc>:
8737         Delete.
8738         <info>: New.
8739         (init_procfs_targets): Adjust.
8740         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
8741         add_inf_child_target.
8742         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
8743         add_inf_child_target.
8744         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
8745         add_inf_child_target.
8746         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
8747         add_inf_child_target.
8748         * ravenscar-thread.c (ravenscar_target_info): New.
8749         (ravenscar_thread_target) <shortname, longname, doc>:
8750         Delete.
8751         <info>: New.
8752         * record-btrace.c (record_btrace_target_info):
8753         (record_btrace_target) <shortname, longname, doc>: Delete.
8754         <info>: New.
8755         (record_btrace_target::open): Rename to ...
8756         (record_btrace_target_open): ... this.  Adjust.
8757         * record-full.c (record_longname, record_doc): New.
8758         (record_full_base_target) <shortname, longname, doc>: Delete.
8759         <info>: New.
8760         (record_full_target_info): New.
8761         (record_full_target): <shortname>: Delete.
8762         <info>: New.
8763         (record_full_core_open_1, record_full_open_1): Update comments.
8764         (record_full_base_target::open): Rename to ...
8765         (record_full_open): ... this.
8766         (cmd_record_full_restore): Update.
8767         (_initialize_record_full): Update.
8768         * remote-sim.c (remote_sim_target_info): New.
8769         (gdbsim_target) <shortname, longname, doc>: Delete.
8770         <info>: New.
8771         (gdbsim_target::open): Rename to ...
8772         (gdbsim_target_open): ... this.
8773         (_initialize_remote_sim): Adjust.
8774         * remote.c (remote_doc): New.
8775         (remote_target_info): New.
8776         (remote_target) <shortname, longname, doc>: Delete.
8777         <info>: New.
8778         (extended_remote_target_info): New.
8779         (extended_remote_target) <shortname, longname, doc>: Delete.
8780         <info>: New.
8781         (remote_target::open_1): Make static.  Adjust.
8782         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
8783         * s390-linux-nat.c (_initialize_s390_nat): Use
8784         add_inf_child_target.
8785         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
8786         add_inf_child_target.
8787         * sol-thread.c (thread_db_target_info): New.
8788         (sol_thread_target) <shortname, longname, doc>: Delete.
8789         <info>: New.
8790         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
8791         add_inf_child_target.
8792         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
8793         add_inf_child_target.
8794         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
8795         add_inf_child_target.
8796         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
8797         add_inf_child_target.
8798         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
8799         add_inf_child_target.
8800         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
8801         add_inf_child_target.
8802         * spu-linux-nat.c (_initialize_spu_nat): Use
8803         add_inf_child_target.
8804         * spu-multiarch.c (spu_multiarch_target_info): New.
8805         (spu_multiarch_target) <shortname, longname, doc>: Delete.
8806         <info>: New.
8807         * target-delegates.c: Regenerate.
8808         * target.c: Include <unordered_map>.
8809         (target_ops_p): Delete.
8810         (DEF_VEC_P(target_ops_p)): Delete.
8811         (target_factories): New.
8812         (test_target_info): New.
8813         (test_target_ops::info): New.
8814         (open_target): Adjust to use target_factories.
8815         (add_target_with_completer): Rename to ...
8816         (add_target): ... this.  Change prototype.  Register target_info
8817         and open callback in target_factories.  Register target_info in
8818         command context instead of target_ops.
8819         (add_target): Delete old implementation.
8820         (add_deprecated_target_alias): Change prototype.  Adjust.
8821         (the_native_target): New.
8822         (set_native_target, get_native_target): New.
8823         (find_default_run_target): Use the_native_target.
8824         (find_attach_target, find_run_target): Simplify.
8825         (target_ops::open): Delete.
8826         (dummy_target_info): New.
8827         (dummy_target::shortname, dummy_target::longname)
8828         (dummy_target::doc): Delete.
8829         (dummy_target::info): New.
8830         (debug_target::shortname, debug_target::longname)
8831         (debug_target::doc): Delete.
8832         (debug_target::info): New.
8833         * target.h (struct target_info): New.
8834         (target_ops::~target_ops): Add comment.
8835         (target_ops::info): New.
8836         (target_ops::shortname, target_ops::longname, target_ops::doc): No
8837         longer virtual.  Implement in terms of target_info.
8838         (set_native_target, get_native_target): Declare.
8839         (target_open_ftype): New.
8840         (add_target, add_target_with_completer)
8841         (add_deprecated_target_alias): Change prototype.
8842         (test_target) <shortname, longname, doc>: Delete.
8843         <info>: New.
8844         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
8845         add_inf_child_target.
8846         * tracefile-tfile.c (tfile_target_info): New.
8847         (tfile_target) <shortname, longname, doc>: Delete.
8848         <info>: New.
8849         (tfile_target::open): Rename to ...
8850         (tfile_target_open): ... this.
8851         (_initialize_tracefile_tfile): Adjust.
8852         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
8853         add_inf_child_target.
8854         * windows-nat.c (_initialize_windows_nat): Use
8855         add_inf_child_target.
8856         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
8857         add_inf_child_target.
8858
8859 2018-05-02  Pedro Alves  <palves@redhat.com>
8860
8861         * linux-nat.h (linux_nat_target) <low_new_thread,
8862         low_delete_thread, low_new_fork, low_forget_process,
8863         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
8864         New virtual methods.
8865         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
8866         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
8867         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
8868         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
8869         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
8870         Delete.
8871         * linux-fork.c (delete_fork): Adjust to call low method.
8872         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
8873         (linux_nat_new_fork, linux_nat_forget_process_hook)
8874         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
8875         (linux_nat_status_is_event):
8876         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
8877         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
8878         to call low method.
8879         (sigtrap_is_event): Rename to ...
8880         (linux_nat_target::low_status_is_event): ... this.
8881         (linux_nat_set_status_is_event): Delete.
8882         (save_stop_reason, linux_nat_wait_1)
8883         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
8884         low methods.
8885         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
8886         (linux_nat_set_new_fork, linux_nat_set_forget_process)
8887         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
8888         (linux_nat_set_prepare_to_resume): Delete.
8889         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
8890         low virtual methods.
8891         * amd64-linux-nat.c: Likewise.
8892         * arm-linux-nat.c: Likewise.
8893         * i386-linux-nat.c: Likewise.
8894         * ia64-linux-nat.c: Likewise.
8895         * mips-linux-nat.c: Likewise.
8896         * ppc-linux-nat.c: Likewise.
8897         * s390-linux-nat.c: Likewise.
8898         * sparc64-linux-nat.c: Likewise.
8899         * x86-linux-nat.c: Likewise.
8900         * x86-linux-nat.h: Include "nat/x86-linux.h".
8901         (x86_linux_nat_target) <low_new_fork, low_forget_process,
8902         low_prepare_to_resume, low_new_thread, low_delete_thread>:
8903         Override methods.
8904
8905 2018-05-02  Pedro Alves  <palves@redhat.com>
8906
8907         * target.h (target_ops)
8908         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
8909         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
8910         stopped_by_watchpoint, have_continuable_watchpoint,
8911         stopped_data_address, watchpoint_addr_within_range,
8912         can_accel_watchpoint_condition, can_run, thread_alive,
8913         has_all_memory, has_memory, has_stack, has_registers,
8914         has_execution, can_async_p, is_async_p, supports_non_stop,
8915         always_non_stop_p, can_execute_reverse, supports_multi_process,
8916         supports_enable_disable_tracepoint,
8917         supports_disable_randomization, supports_string_tracing,
8918         supports_evaluation_of_breakpoint_conditions,
8919         can_run_breakpoint_commands, filesystem_is_local,
8920         can_download_tracepoint, get_trace_state_variable_value,
8921         set_trace_notes, get_tib_address, use_agent, can_use_agent,
8922         record_is_replaying, record_will_replay,
8923         augmented_libraries_svr4_read>: Adjust to return bool.
8924         * aarch64-linux-nat.c: All implementations adjusted.
8925         * aix-thread.c: All implementations adjusted.
8926         * arm-linux-nat.c: All implementations adjusted.
8927         * breakpoint.c: All implementations adjusted.
8928         * bsd-kvm.c: All implementations adjusted.
8929         * bsd-uthread.c: All implementations adjusted.
8930         * corelow.c: All implementations adjusted.
8931         * ctf.c: All implementations adjusted.
8932         * darwin-nat.c: All implementations adjusted.
8933         * darwin-nat.h: All implementations adjusted.
8934         * exec.c: All implementations adjusted.
8935         * fbsd-nat.c: All implementations adjusted.
8936         * fbsd-nat.h: All implementations adjusted.
8937         * gnu-nat.c: All implementations adjusted.
8938         * gnu-nat.h: All implementations adjusted.
8939         * go32-nat.c: All implementations adjusted.
8940         * ia64-linux-nat.c: All implementations adjusted.
8941         * inf-child.c: All implementations adjusted.
8942         * inf-child.h: All implementations adjusted.
8943         * inf-ptrace.c: All implementations adjusted.
8944         * inf-ptrace.h: All implementations adjusted.
8945         * linux-nat.c: All implementations adjusted.
8946         * linux-nat.h: All implementations adjusted.
8947         * mips-linux-nat.c: All implementations adjusted.
8948         * nto-procfs.c: All implementations adjusted.
8949         * ppc-linux-nat.c: All implementations adjusted.
8950         * procfs.c: All implementations adjusted.
8951         * ravenscar-thread.c: All implementations adjusted.
8952         * record-btrace.c: All implementations adjusted.
8953         * record-full.c: All implementations adjusted.
8954         * remote-sim.c: All implementations adjusted.
8955         * remote.c: All implementations adjusted.
8956         * s390-linux-nat.c: All implementations adjusted.
8957         * sol-thread.c: All implementations adjusted.
8958         * spu-multiarch.c: All implementations adjusted.
8959         * target-delegates.c: All implementations adjusted.
8960         * target.c: All implementations adjusted.
8961         * target.h: All implementations adjusted.
8962         * tracefile-tfile.c: All implementations adjusted.
8963         * tracefile.c: All implementations adjusted.
8964         * tracefile.h: All implementations adjusted.
8965         * windows-nat.c: All implementations adjusted.
8966         * x86-linux-nat.h: All implementations adjusted.
8967         * x86-nat.h: All implementations adjusted.
8968
8969 2018-05-02  Pedro Alves  <palves@redhat.com>
8970
8971         * make-target-delegates (scan_target_h): Don't trim lines here.
8972         Replace sequences of tabs and/or whitespace with a single
8973         whitespace.
8974         (top level, parsing methods): Trim each line before processing it
8975         here.
8976
8977 2018-05-02  Pedro Alves  <palves@redhat.com>
8978             John Baldwin  <jhb@freebsd.org>
8979
8980         * target.h (enum strata) <debug_stratum>: New.
8981         (struct target_ops) <all delegation methods>: Replace by C++
8982         virtual methods, and drop "to_" prefix.  All references updated
8983         throughout.
8984         <to_shortname, to_longname, to_doc, to_data,
8985         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
8986         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
8987         virtual methods.  All references updated throughout.
8988         <can_attach, supports_terminal_ours, can_create_inferior,
8989         get_thread_control_capabilities, attach_no_wait>: New
8990         virtual methods.
8991         <insert_breakpoint, remove_breakpoint>: Now
8992         TARGET_DEFAULT_NORETURN methods.
8993         <info_proc>: Now returns bool.
8994         <to_magic>: Delete.
8995         (OPS_MAGIC): Delete.
8996         (current_target): Delete.  All references replaced by references
8997         to ...
8998         (target_stack): ... this.  New.
8999         (target_shortname, target_longname): Adjust.
9000         (target_can_run): Now a function declaration.
9001         (default_child_has_all_memory, default_child_has_memory)
9002         (default_child_has_stack, default_child_has_registers)
9003         (default_child_has_execution): Remove target_ops parameter.
9004         (complete_target_initialization): Delete.
9005         (memory_breakpoint_target): New template class.
9006         (test_target_ops): Refactor as a C++ class with virtual methods.
9007         * make-target-delegates (NAME_PART): Tighten.
9008         (POINTER_PART, CP_SYMBOL): New.
9009         (SIMPLE_RETURN_PART): Reimplement.
9010         (VEC_RETURN_PART): Expect less.
9011         (RETURN_PART, VIRTUAL_PART): New.
9012         (METHOD): Adjust to C++ virtual methods.
9013         (scan_target_h): Remove reference to C99.
9014         (dname): Output "target_ops::" prefix.
9015         (write_function_header): Adjust to output a C++ class method.
9016         (write_declaration): New.
9017         (write_delegator): Adjust to output a C++ class method.
9018         (tdname): Output "dummy_target::" prefix.
9019         (write_tdefault, write_debugmethod): Adjust to output a C++ class
9020         method.
9021         (tdefault_names, debug_names): Delete.
9022         (return_types, tdefaults, styles, argtypes_array): New.
9023         (top level): All methods are delegators.
9024         (print_class): New.
9025         (top level): Print dummy_target and debug_target classes.
9026         * target-delegates.c: Regenerate.
9027         * target-debug.h (target_debug_print_enum_info_proc_what)
9028         (target_debug_print_thread_control_capabilities)
9029         (target_debug_print_thread_info_p): New.
9030         * target.c (dummy_target): Delete.
9031         (the_dummy_target, the_debug_target): New.
9032         (target_stack): Now extern.
9033         (set_targetdebug): Push/unpush debug target.
9034         (default_child_has_all_memory, default_child_has_memory)
9035         (default_child_has_stack, default_child_has_registers)
9036         (default_child_has_execution): Remove target_ops parameter.
9037         (complete_target_initialization): Delete.
9038         (add_target_with_completer): No longer call
9039         complete_target_initialization.
9040         (target_supports_terminal_ours): Use regular delegation.
9041         (update_current_target): Delete.
9042         (push_target): No longer check magic number.  Don't call
9043         update_current_target.
9044         (unpush_target): Don't call update_current_target.
9045         (target_is_pushed): No longer check magic number.
9046         (target_require_runnable): Skip for all stratums over
9047         process_stratum.
9048         (target_ops::info_proc): New.
9049         (target_info_proc): Use find_target_at and
9050         find_default_run_target.
9051         (target_supports_disable_randomization): Use regular delegation.
9052         (target_get_osdata): Use find_target_at.
9053         (target_ops::open, target_ops::close, target_ops::can_attach)
9054         (target_ops::attach, target_ops::can_create_inferior)
9055         (target_ops::create_inferior, target_ops::can_run)
9056         (target_can_run): New.
9057         (default_fileio_target): Use regular delegation.
9058         (target_ops::fileio_open, target_ops::fileio_pwrite)
9059         (target_ops::fileio_pread, target_ops::fileio_fstat)
9060         (target_ops::fileio_close, target_ops::fileio_unlink)
9061         (target_ops::fileio_readlink): New.
9062         (target_fileio_open_1, target_fileio_unlink)
9063         (target_fileio_readlink): Always call the target method.  Handle
9064         FILEIO_ENOSYS.
9065         (return_zero, return_zero_has_execution): Delete.
9066         (init_dummy_target): Delete.
9067         (dummy_target::dummy_target, dummy_target::shortname)
9068         (dummy_target::longname, dummy_target::doc)
9069         (debug_target::debug_target, debug_target::shortname)
9070         (debug_target::longname, debug_target::doc): New.
9071         (target_supports_delete_record): Use regular delegation.
9072         (setup_target_debug): Delete.
9073         (maintenance_print_target_stack): Skip debug_stratum.
9074         (initialize_targets): Instantiate the_dummy_target and
9075         the_debug_target.
9076         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
9077         use target_stack.
9078         (target_auxv_search, fprint_target_auxv): Adjust.
9079         (info_auxv_command): Adjust to use target_stack.
9080         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
9081         * exceptions.c (print_flush): Handle a NULL target_stack.
9082         * regcache.c (target_ops_no_register): Refactor as class with
9083         virtual methods.
9084
9085         * exec.c (exec_target): New class.
9086         (exec_ops): Now an exec_target.
9087         (exec_open, exec_close_1, exec_get_section_table)
9088         (exec_xfer_partial, exec_files_info, exec_has_memory)
9089         (exec_make_note_section): Refactor as exec_target methods.
9090         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
9091         Delete.
9092         (exec_target::find_memory_regions): New.
9093         (_initialize_exec): Don't call init_exec_ops.
9094         * gdbcore.h (exec_file_clear): Delete.
9095
9096         * corefile.c (core_target): Delete.
9097         (core_file_command): Adjust.
9098         * corelow.c (core_target): New class.
9099         (the_core_target): New.
9100         (core_close): Remove target_ops parameter.
9101         (core_close_cleanup): Adjust.
9102         (core_target::close): New.
9103         (core_open, core_detach, get_core_registers, core_files_info)
9104         (core_xfer_partial, core_thread_alive, core_read_description)
9105         (core_pid_to_str, core_thread_name, core_has_memory)
9106         (core_has_stack, core_has_registers, core_info_proc): Rework as
9107         core_target methods.
9108         (ignore, core_remove_breakpoint, init_core_ops): Delete.
9109         (_initialize_corelow): Initialize the_core_target.
9110         * gdbcore.h (core_target): Delete.
9111         (the_core_target): New.
9112
9113         * ctf.c: (ctf_target): New class.
9114         (ctf_ops): Now a ctf_target.
9115         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
9116         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
9117         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
9118         methods.
9119         (init_ctf_ops): Delete.
9120         (_initialize_ctf): Don't call it.
9121         * tracefile-tfile.c (tfile_target): New class.
9122         (tfile_ops): Now a tfile_target.
9123         (tfile_open, tfile_close, tfile_files_info)
9124         (tfile_get_tracepoint_status, tfile_trace_find)
9125         (tfile_fetch_registers, tfile_xfer_partial)
9126         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
9127         Refactor as tfile_target methods.
9128         (tfile_xfer_partial_features): Remove target_ops parameter.
9129         (init_tfile_ops): Delete.
9130         (_initialize_tracefile_tfile): Don't call it.
9131         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
9132         (tracefile_has_stack, tracefile_has_registers)
9133         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
9134         tracefile_target methods.
9135         (init_tracefile_ops): Delete.
9136         (tracefile_target::tracefile_target): New.
9137         * tracefile.h: Include "target.h".
9138         (tracefile_target): New class.
9139         (init_tracefile_ops): Delete.
9140
9141         * spu-multiarch.c (spu_multiarch_target): New class.
9142         (spu_ops): Now a spu_multiarch_target.
9143         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
9144         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
9145         (spu_search_memory, spu_mourn_inferior): Refactor as
9146         spu_multiarch_target methods.
9147         (init_spu_ops): Delete.
9148         (_initialize_spu_multiarch): Remove references to init_spu_ops,
9149         complete_target_initialization.
9150
9151         * ravenscar-thread.c (ravenscar_thread_target): New class.
9152         (ravenscar_ops): Now a ravenscar_thread_target.
9153         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
9154         (ravenscar_thread_alive, ravenscar_pid_to_str)
9155         (ravenscar_fetch_registers, ravenscar_store_registers)
9156         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
9157         (ravenscar_stopped_by_hw_breakpoint)
9158         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
9159         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
9160         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
9161         methods.
9162         (init_ravenscar_thread_ops): Delete.
9163         (_initialize_ravenscar): Remove references to
9164         init_ravenscar_thread_ops and complete_target_initialization.
9165
9166         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
9167         (bsd_uthread_target): New class.
9168         (bsd_uthread_ops): Now a bsd_uthread_target.
9169         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
9170         (bsd_uthread_close, bsd_uthread_mourn_inferior)
9171         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
9172         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
9173         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
9174         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
9175         (bsd_uthread_target): Delete function.
9176         (_initialize_bsd_uthread): Remove reference to
9177         complete_target_initialization.
9178
9179         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
9180         (target_bfd): ... this new class.
9181         (target_bfd_xfer_partial, target_bfd_get_section_table)
9182         (target_bfd_close): Refactor as target_bfd methods.
9183         (target_bfd::~target_bfd): New.
9184         (target_bfd_reopen): Adjust.
9185         (target_bfd::close): New.
9186
9187         * record-btrace.c (record_btrace_target): New class.
9188         (record_btrace_ops): Now a record_btrace_target.
9189         (record_btrace_open, record_btrace_stop_recording)
9190         (record_btrace_disconnect, record_btrace_close)
9191         (record_btrace_async, record_btrace_info)
9192         (record_btrace_insn_history, record_btrace_insn_history_range)
9193         (record_btrace_insn_history_from, record_btrace_call_history)
9194         (record_btrace_call_history_range)
9195         (record_btrace_call_history_from, record_btrace_record_method)
9196         (record_btrace_is_replaying, record_btrace_will_replay)
9197         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
9198         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
9199         (record_btrace_store_registers, record_btrace_prepare_to_store)
9200         (record_btrace_to_get_unwinder)
9201         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
9202         (record_btrace_commit_resume, record_btrace_wait)
9203         (record_btrace_stop, record_btrace_can_execute_reverse)
9204         (record_btrace_stopped_by_sw_breakpoint)
9205         (record_btrace_supports_stopped_by_sw_breakpoint)
9206         (record_btrace_stopped_by_hw_breakpoint)
9207         (record_btrace_supports_stopped_by_hw_breakpoint)
9208         (record_btrace_update_thread_list, record_btrace_thread_alive)
9209         (record_btrace_goto_begin, record_btrace_goto_end)
9210         (record_btrace_goto, record_btrace_stop_replaying_all)
9211         (record_btrace_execution_direction)
9212         (record_btrace_prepare_to_generate_core)
9213         (record_btrace_done_generating_core): Refactor as
9214         record_btrace_target methods.
9215         (init_record_btrace_ops): Delete.
9216         (_initialize_record_btrace): Remove reference to
9217         init_record_btrace_ops.
9218         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
9219         the execution_direction global.
9220         (record_full_base_target, record_full_target)
9221         (record_full_core_target): New classes.
9222         (record_full_ops): Now a record_full_target.
9223         (record_full_core_ops): Now a record_full_core_target.
9224         (record_full_target::detach, record_full_target::disconnect)
9225         (record_full_core_target::disconnect)
9226         (record_full_target::mourn_inferior, record_full_target::kill):
9227         New.
9228         (record_full_open, record_full_close, record_full_async): Refactor
9229         as methods of the record_full_base_target class.
9230         (record_full_resume, record_full_commit_resume): Refactor
9231         as methods of the record_full_target class.
9232         (record_full_wait, record_full_stopped_by_watchpoint)
9233         (record_full_stopped_data_address)
9234         (record_full_stopped_by_sw_breakpoint)
9235         (record_full_supports_stopped_by_sw_breakpoint)
9236         (record_full_stopped_by_hw_breakpoint)
9237         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
9238         methods of the record_full_base_target class.
9239         (record_full_store_registers, record_full_xfer_partial)
9240         (record_full_insert_breakpoint, record_full_remove_breakpoint):
9241         Refactor as methods of the record_full_target class.
9242         (record_full_can_execute_reverse, record_full_get_bookmark)
9243         (record_full_goto_bookmark, record_full_execution_direction)
9244         (record_full_record_method, record_full_info, record_full_delete)
9245         (record_full_is_replaying, record_full_will_replay)
9246         (record_full_goto_begin, record_full_goto_end, record_full_goto)
9247         (record_full_stop_replaying): Refactor as methods of the
9248         record_full_base_target class.
9249         (record_full_core_resume, record_full_core_kill)
9250         (record_full_core_fetch_registers)
9251         (record_full_core_prepare_to_store)
9252         (record_full_core_store_registers, record_full_core_xfer_partial)
9253         (record_full_core_insert_breakpoint)
9254         (record_full_core_remove_breakpoint)
9255         (record_full_core_has_execution): Refactor
9256         as methods of the record_full_core_target class.
9257         (record_full_base_target::supports_delete_record): New.
9258         (init_record_full_ops): Delete.
9259         (init_record_full_core_ops): Delete.
9260         (record_full_save): Refactor as method of the
9261         record_full_base_target class.
9262         (_initialize_record_full): Remove references to
9263         init_record_full_ops and init_record_full_core_ops.
9264
9265         * remote.c (remote_target, extended_remote_target): New classes.
9266         (remote_ops): Now a remote_target.
9267         (extended_remote_ops): Now an extended_remote_target.
9268         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
9269         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
9270         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
9271         (remote_pass_signals, remote_set_syscall_catchpoint)
9272         (remote_program_signals, )
9273         (remote_thread_always_alive): Remove target_ops parameter.
9274         (remote_thread_alive, remote_thread_name)
9275         (remote_update_thread_list, remote_threads_extra_info)
9276         (remote_static_tracepoint_marker_at)
9277         (remote_static_tracepoint_markers_by_strid)
9278         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
9279         (remote_open): Refactor as methods of remote_target.
9280         (extended_remote_open, extended_remote_detach)
9281         (extended_remote_attach, extended_remote_post_attach):
9282         (extended_remote_supports_disable_randomization)
9283         (extended_remote_create_inferior): : Refactor as method of
9284         extended_remote_target.
9285         (remote_set_permissions, remote_open_1, remote_detach)
9286         (remote_follow_fork, remote_follow_exec, remote_disconnect)
9287         (remote_resume, remote_commit_resume, remote_stop)
9288         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
9289         (remote_terminal_ours, remote_wait, remote_fetch_registers)
9290         (remote_prepare_to_store, remote_store_registers)
9291         (remote_flash_erase, remote_flash_done, remote_files_info)
9292         (remote_kill, remote_mourn, remote_insert_breakpoint)
9293         (remote_remove_breakpoint, remote_insert_watchpoint)
9294         (remote_watchpoint_addr_within_range)
9295         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
9296         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
9297         (remote_supports_stopped_by_sw_breakpoint)
9298         (remote_stopped_by_hw_breakpoint)
9299         (remote_supports_stopped_by_hw_breakpoint)
9300         (remote_stopped_by_watchpoint, remote_stopped_data_address)
9301         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
9302         (remote_verify_memory): Refactor as methods of remote_target.
9303         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
9304         parameter.
9305         (remote_xfer_partial, remote_get_memory_xfer_limit)
9306         (remote_search_memory, remote_rcmd, remote_memory_map)
9307         (remote_pid_to_str, remote_get_thread_local_address)
9308         (remote_get_tib_address, remote_read_description): Refactor as
9309         methods of remote_target.
9310         (remote_target::fileio_open, remote_target::fileio_pwrite)
9311         (remote_target::fileio_pread, remote_target::fileio_close): New.
9312         (remote_hostio_readlink, remote_hostio_fstat)
9313         (remote_filesystem_is_local, remote_can_execute_reverse)
9314         (remote_supports_non_stop, remote_supports_disable_randomization)
9315         (remote_supports_multi_process, remote_supports_cond_breakpoints)
9316         (remote_supports_enable_disable_tracepoint)
9317         (remote_supports_string_tracing)
9318         (remote_can_run_breakpoint_commands, remote_trace_init)
9319         (remote_download_tracepoint, remote_can_download_tracepoint)
9320         (remote_download_trace_state_variable, remote_enable_tracepoint)
9321         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
9322         (remote_trace_start, remote_get_trace_status)
9323         (remote_get_tracepoint_status, remote_trace_stop)
9324         (remote_trace_find, remote_get_trace_state_variable_value)
9325         (remote_save_trace_data, remote_get_raw_trace_data)
9326         (remote_set_disconnected_tracing, remote_core_of_thread)
9327         (remote_set_circular_trace_buffer, remote_traceframe_info)
9328         (remote_get_min_fast_tracepoint_insn_len)
9329         (remote_set_trace_buffer_size, remote_set_trace_notes)
9330         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
9331         (remote_disable_btrace, remote_teardown_btrace)
9332         (remote_read_btrace, remote_btrace_conf)
9333         (remote_augmented_libraries_svr4_read, remote_load)
9334         (remote_pid_to_exec_file, remote_can_do_single_step)
9335         (remote_execution_direction, remote_thread_handle_to_thread_info):
9336         Refactor as methods of remote_target.
9337         (init_remote_ops, init_extended_remote_ops): Delete.
9338         (remote_can_async_p, remote_is_async_p, remote_async)
9339         (remote_thread_events, remote_upload_tracepoints)
9340         (remote_upload_trace_state_variables): Refactor as methods of
9341         remote_target.
9342         (_initialize_remote): Remove references to init_remote_ops and
9343         init_extended_remote_ops.
9344
9345         * remote-sim.c (gdbsim_target): New class.
9346         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
9347         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
9348         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
9349         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
9350         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
9351         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
9352         Refactor as methods of gdbsim_target.
9353         (gdbsim_ops): Now a gdbsim_target.
9354         (init_gdbsim_ops): Delete.
9355         (gdbsim_cntrl_c): Adjust.
9356         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
9357
9358         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
9359         (the_amd64_linux_nat_target): New.
9360         (amd64_linux_fetch_inferior_registers)
9361         (amd64_linux_store_inferior_registers): Refactor as methods of
9362         amd64_linux_nat_target.
9363         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
9364         * i386-linux-nat.c: Don't include "linux-nat.h".
9365         (i386_linux_nat_target): New class.
9366         (the_i386_linux_nat_target): New.
9367         (i386_linux_fetch_inferior_registers)
9368         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
9369         as methods of i386_linux_nat_target.
9370         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
9371         * inf-child.c (inf_child_ops): Delete.
9372         (inf_child_fetch_inferior_registers)
9373         (inf_child_store_inferior_registers): Delete.
9374         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
9375         methods of inf_child_target.
9376         (inf_child_target::supports_terminal_ours)
9377         (inf_child_target::terminal_init)
9378         (inf_child_target::terminal_inferior)
9379         (inf_child_target::terminal_ours_for_output)
9380         (inf_child_target::terminal_ours, inf_child_target::interrupt)
9381         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
9382         New.
9383         (inf_child_open, inf_child_disconnect, inf_child_close)
9384         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
9385         (inf_child_post_startup_inferior, inf_child_can_run)
9386         (inf_child_pid_to_exec_file): Refactor as methods of
9387         inf_child_target.
9388         (inf_child_follow_fork): Delete.
9389         (inf_child_target::can_create_inferior)
9390         (inf_child_target::can_attach): New.
9391         (inf_child_target::has_all_memory, inf_child_target::has_memory)
9392         (inf_child_target::has_stack, inf_child_target::has_registers)
9393         (inf_child_target::has_execution): New.
9394         (inf_child_fileio_open, inf_child_fileio_pwrite)
9395         (inf_child_fileio_pread, inf_child_fileio_fstat)
9396         (inf_child_fileio_close, inf_child_fileio_unlink)
9397         (inf_child_fileio_readlink, inf_child_use_agent)
9398         (inf_child_can_use_agent): Refactor as methods of
9399         inf_child_target.
9400         (return_zero, inf_child_target): Delete.
9401         (inf_child_target::inf_child_target): New.
9402         * inf-child.h: Include "target.h".
9403         (inf_child_target): Delete function prototype.
9404         (inf_child_target): New class.
9405         (inf_child_open_target, inf_child_mourn_inferior)
9406         (inf_child_maybe_unpush_target): Delete.
9407         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
9408         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
9409         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
9410         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
9411         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
9412         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
9413         (inf_ptrace_wait, inf_ptrace_xfer_partial)
9414         (inf_ptrace_thread_alive, inf_ptrace_files_info)
9415         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
9416         methods of inf_ptrace_target.
9417         (inf_ptrace_target): Delete function.
9418         * inf-ptrace.h: Include "inf-child.h".
9419         (inf_ptrace_target): Delete function declaration.
9420         (inf_ptrace_target): New class.
9421         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
9422         * linux-nat.c (linux_target): New.
9423         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
9424         (linux_nat_target::~linux_nat_target): New.
9425         (linux_child_post_attach, linux_child_post_startup_inferior)
9426         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
9427         (linux_child_remove_fork_catchpoint)
9428         (linux_child_insert_vfork_catchpoint)
9429         (linux_child_remove_vfork_catchpoint)
9430         (linux_child_insert_exec_catchpoint)
9431         (linux_child_remove_exec_catchpoint)
9432         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
9433         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
9434         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
9435         (linux_nat_stopped_data_address)
9436         (linux_nat_stopped_by_sw_breakpoint)
9437         (linux_nat_supports_stopped_by_sw_breakpoint)
9438         (linux_nat_stopped_by_hw_breakpoint)
9439         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
9440         (linux_nat_kill, linux_nat_mourn_inferior)
9441         (linux_nat_xfer_partial, linux_nat_thread_alive)
9442         (linux_nat_update_thread_list, linux_nat_pid_to_str)
9443         (linux_nat_thread_name, linux_child_pid_to_exec_file)
9444         (linux_child_static_tracepoint_markers_by_strid)
9445         (linux_nat_is_async_p, linux_nat_can_async_p)
9446         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
9447         (linux_nat_supports_multi_process)
9448         (linux_nat_supports_disable_randomization, linux_nat_async)
9449         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
9450         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
9451         (linux_nat_fileio_open, linux_nat_fileio_readlink)
9452         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
9453         methods of linux_nat_target.
9454         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
9455         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
9456         parameter.
9457         (check_stopped_by_watchpoint): Adjust.
9458         (linux_xfer_partial): Delete.
9459         (linux_target_install_ops, linux_target, linux_nat_add_target):
9460         Delete.
9461         (linux_nat_target::linux_nat_target): New.
9462         * linux-nat.h: Include "inf-ptrace.h".
9463         (linux_nat_target): New.
9464         (linux_target, linux_target_install_ops, linux_nat_add_target):
9465         Delete function declarations.
9466         (linux_target): Declare global.
9467         * linux-thread-db.c (thread_db_target): New.
9468         (thread_db_target::thread_db_target): New.
9469         (thread_db_ops): Delete.
9470         (the_thread_db_target): New.
9471         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
9472         (thread_db_update_thread_list, thread_db_pid_to_str)
9473         (thread_db_extra_thread_info)
9474         (thread_db_thread_handle_to_thread_info)
9475         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
9476         (thread_db_resume): Refactor as methods of thread_db_target.
9477         (init_thread_db_ops): Delete.
9478         (_initialize_thread_db): Remove reference to init_thread_db_ops.
9479         * x86-linux-nat.c: Don't include "linux-nat.h".
9480         (super_post_startup_inferior): Delete.
9481         (x86_linux_nat_target::~x86_linux_nat_target): New.
9482         (x86_linux_child_post_startup_inferior)
9483         (x86_linux_read_description, x86_linux_enable_btrace)
9484         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
9485         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
9486         methods of x86_linux_nat_target.
9487         (x86_linux_create_target): Delete.  Bits folded ...
9488         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
9489         pointer.
9490         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
9491         (x86_linux_nat_target): New class.
9492         (x86_linux_create_target): Delete.
9493         (x86_linux_add_target): Now takes a linux_nat_target pointer.
9494         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
9495         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
9496         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
9497         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
9498         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
9499         make extern.
9500         (x86_use_watchpoints): Delete.
9501         * x86-nat.h: Include "breakpoint.h" and "target.h".
9502         (x86_use_watchpoints): Delete.
9503         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
9504         (x86_stopped_by_watchpoint, x86_stopped_data_address)
9505         (x86_insert_watchpoint, x86_remove_watchpoint)
9506         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
9507         (x86_stopped_by_hw_breakpoint): New declarations.
9508         (x86_nat_target): New template class.
9509
9510         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
9511         (the_ppc_linux_nat_target): New.
9512         (ppc_linux_fetch_inferior_registers)
9513         (ppc_linux_can_use_hw_breakpoint)
9514         (ppc_linux_region_ok_for_hw_watchpoint)
9515         (ppc_linux_ranged_break_num_registers)
9516         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
9517         (ppc_linux_insert_mask_watchpoint)
9518         (ppc_linux_remove_mask_watchpoint)
9519         (ppc_linux_can_accel_watchpoint_condition)
9520         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
9521         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
9522         (ppc_linux_watchpoint_addr_within_range)
9523         (ppc_linux_masked_watch_num_registers)
9524         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
9525         (ppc_linux_read_description): Refactor as methods of
9526         ppc_linux_nat_target.
9527         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
9528
9529         * procfs.c (procfs_xfer_partial): Delete forward declaration.
9530         (procfs_target): New class.
9531         (the_procfs_target): New.
9532         (procfs_target): Delete function.
9533         (procfs_auxv_parse, procfs_attach, procfs_detach)
9534         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
9535         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
9536         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
9537         (procfs_create_inferior, procfs_update_thread_list)
9538         (procfs_thread_alive, procfs_pid_to_str)
9539         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
9540         (procfs_stopped_data_address, procfs_insert_watchpoint)
9541         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
9542         (proc_find_memory_regions, procfs_info_proc)
9543         (procfs_make_note_section): Refactor as methods of procfs_target.
9544         (_initialize_procfs): Adjust.
9545         * sol-thread.c (sol_thread_target): New class.
9546         (sol_thread_ops): Now a sol_thread_target.
9547         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
9548         (sol_thread_fetch_registers, sol_thread_store_registers)
9549         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
9550         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
9551         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
9552         (init_sol_thread_ops): Delete.
9553         (_initialize_sol_thread): Adjust.  Remove references to
9554         init_sol_thread_ops and complete_target_initialization.
9555
9556         * windows-nat.c (windows_nat_target): New class.
9557         (windows_fetch_inferior_registers)
9558         (windows_store_inferior_registers, windows_resume, windows_wait)
9559         (windows_attach, windows_detach, windows_pid_to_exec_file)
9560         (windows_files_info, windows_create_inferior)
9561         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
9562         (windows_close, windows_pid_to_str, windows_xfer_partial)
9563         (windows_get_tib_address, windows_get_ada_task_ptid)
9564         (windows_thread_name, windows_thread_alive): Refactor as
9565         windows_nat_target methods.
9566         (do_initial_windows_stuff): Adjust.
9567         (windows_target): Delete function.
9568         (_initialize_windows_nat): Adjust.
9569
9570         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
9571         (darwin_mourn_inferior, darwin_kill_inferior)
9572         (darwin_create_inferior, darwin_attach, darwin_detach)
9573         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
9574         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
9575         (darwin_supports_multi_process): Refactor as darwin_nat_target
9576         methods.
9577         (darwin_resume_to, darwin_files_info): Delete.
9578         (_initialize_darwin_inferior): Rename to ...
9579         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
9580         * darwin-nat.h: Include "inf-child.h".
9581         (darwin_nat_target): New class.
9582         (darwin_complete_target): Delete.
9583         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
9584         (darwin_target): New.
9585         (i386_darwin_fetch_inferior_registers)
9586         (i386_darwin_store_inferior_registers): Refactor as methods of
9587         darwin_nat_target.
9588         (darwin_complete_target): Delete, with ...
9589         (_initialize_i386_darwin_nat): ... bits factored out here.
9590
9591         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
9592         (the_alpha_linux_nat_target): New.
9593         (alpha_linux_register_u_offset): Refactor as
9594         alpha_linux_nat_target method.
9595         (_initialize_alpha_linux_nat): Adjust.
9596         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
9597         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
9598         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
9599         methods of linux_nat_trad_target.
9600         (linux_trad_target): Delete.
9601         * linux-nat-trad.h (linux_trad_target): Delete function.
9602         (linux_nat_trad_target): New class.
9603         * mips-linux-nat.c (mips_linux_nat_target): New class.
9604         (super_fetch_registers, super_store_registers, super_close):
9605         Delete.
9606         (the_mips_linux_nat_target): New.
9607         (mips64_linux_regsets_fetch_registers)
9608         (mips64_linux_regsets_store_registers)
9609         (mips64_linux_fetch_registers, mips64_linux_store_registers)
9610         (mips_linux_register_u_offset, mips_linux_read_description)
9611         (mips_linux_can_use_hw_breakpoint)
9612         (mips_linux_stopped_by_watchpoint)
9613         (mips_linux_stopped_data_address)
9614         (mips_linux_region_ok_for_hw_watchpoint)
9615         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
9616         (mips_linux_close): Refactor as methods of mips_linux_nat.
9617         (_initialize_mips_linux_nat): Adjust to C++ification.
9618
9619         * aix-thread.c (aix_thread_target): New class.
9620         (aix_thread_ops): Now an aix_thread_target.
9621         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
9622         (aix_thread_fetch_registers, aix_thread_store_registers)
9623         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
9624         (aix_thread_thread_alive, aix_thread_pid_to_str)
9625         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
9626         Refactor as methods of aix_thread_target.
9627         (init_aix_thread_ops): Delete.
9628         (_initialize_aix_thread): Remove references to init_aix_thread_ops
9629         and complete_target_initialization.
9630         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
9631         (rs6000_nat_target): New class.
9632         (the_rs6000_nat_target): New.
9633         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
9634         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
9635         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
9636         (super_create_inferior): Delete.
9637         (_initialize_rs6000_nat): Adjust to C++ification.
9638
9639         * arm-linux-nat.c (arm_linux_nat_target): New class.
9640         (the_arm_linux_nat_target): New.
9641         (arm_linux_fetch_inferior_registers)
9642         (arm_linux_store_inferior_registers, arm_linux_read_description)
9643         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
9644         (arm_linux_remove_hw_breakpoint)
9645         (arm_linux_region_ok_for_hw_watchpoint)
9646         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
9647         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
9648         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
9649         arm_linux_nat_target.
9650         (_initialize_arm_linux_nat): Adjust to C++ification.
9651
9652         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
9653         (the_aarch64_linux_nat_target): New.
9654         (aarch64_linux_fetch_inferior_registers)
9655         (aarch64_linux_store_inferior_registers)
9656         (aarch64_linux_child_post_startup_inferior)
9657         (aarch64_linux_read_description)
9658         (aarch64_linux_can_use_hw_breakpoint)
9659         (aarch64_linux_insert_hw_breakpoint)
9660         (aarch64_linux_remove_hw_breakpoint)
9661         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
9662         (aarch64_linux_region_ok_for_hw_watchpoint)
9663         (aarch64_linux_stopped_data_address)
9664         (aarch64_linux_stopped_by_watchpoint)
9665         (aarch64_linux_watchpoint_addr_within_range)
9666         (aarch64_linux_can_do_single_step): Refactor as methods of
9667         aarch64_linux_nat_target.
9668         (super_post_startup_inferior): Delete.
9669         (_initialize_aarch64_linux_nat): Adjust to C++ification.
9670
9671         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
9672         (the_hppa_linux_nat_target): New.
9673         (hppa_linux_fetch_inferior_registers)
9674         (hppa_linux_store_inferior_registers): Refactor as methods of
9675         hppa_linux_nat_target.
9676         (_initialize_hppa_linux_nat): Adjust to C++ification.
9677
9678         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
9679         (the_ia64_linux_nat_target): New.
9680         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
9681         (ia64_linux_stopped_data_address)
9682         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
9683         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
9684         ia64_linux_nat_target methods.
9685         (super_xfer_partial): Delete.
9686         (_initialize_ia64_linux_nat): Adjust to C++ification.
9687
9688         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
9689         (the_m32r_linux_nat_target): New.
9690         (m32r_linux_fetch_inferior_registers)
9691         (m32r_linux_store_inferior_registers): Refactor as
9692         m32r_linux_nat_target methods.
9693         (_initialize_m32r_linux_nat): Adjust to C++ification.
9694
9695         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
9696         (the_m68k_linux_nat_target): New.
9697         (m68k_linux_fetch_inferior_registers)
9698         (m68k_linux_store_inferior_registers): Refactor as
9699         m68k_linux_nat_target methods.
9700         (_initialize_m68k_linux_nat): Adjust to C++ification.
9701
9702         * s390-linux-nat.c (s390_linux_nat_target): New class.
9703         (the_s390_linux_nat_target): New.
9704         (s390_linux_fetch_inferior_registers)
9705         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
9706         (s390_insert_watchpoint, s390_remove_watchpoint)
9707         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
9708         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
9709         (s390_auxv_parse, s390_read_description): Refactor as methods of
9710         s390_linux_nat_target.
9711         (_initialize_s390_nat): Adjust to C++ification.
9712
9713         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
9714         (the_sparc_linux_nat_target): New.
9715         (_initialize_sparc_linux_nat): Adjust to C++ification.
9716         * sparc-nat.c (sparc_fetch_inferior_registers)
9717         (sparc_store_inferior_registers): Remove target_ops parameter.
9718         * sparc-nat.h (sparc_fetch_inferior_registers)
9719         (sparc_store_inferior_registers): Remove target_ops parameter.
9720         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
9721         (the_sparc64_linux_nat_target): New.
9722         (_initialize_sparc64_linux_nat): Adjust to C++ification.
9723
9724         * spu-linux-nat.c (spu_linux_nat_target): New class.
9725         (the_spu_linux_nat_target): New.
9726         (spu_child_post_startup_inferior, spu_child_post_attach)
9727         (spu_child_wait, spu_fetch_inferior_registers)
9728         (spu_store_inferior_registers, spu_xfer_partial)
9729         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
9730         methods.
9731         (_initialize_spu_nat): Adjust to C++ification.
9732
9733         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
9734         (the_tilegx_linux_nat_target): New.
9735         (fetch_inferior_registers, store_inferior_registers):
9736         Refactor as methods.
9737         (_initialize_tile_linux_nat): Adjust to C++ification.
9738
9739         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
9740         (the_xtensa_linux_nat_target): New.
9741         (xtensa_linux_fetch_inferior_registers)
9742         (xtensa_linux_store_inferior_registers): Refactor as
9743         xtensa_linux_nat_target methods.
9744         (_initialize_xtensa_linux_nat): Adjust to C++ification.
9745
9746         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
9747         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
9748         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
9749         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
9750         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
9751         (fbsd_stopped_by_sw_breakpoint)
9752         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
9753         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
9754         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
9755         (fbsd_post_startup_inferior, fbsd_post_attach)
9756         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
9757         (fbsd_set_syscall_catchpoint)
9758         (super_xfer_partial, super_resume, super_wait)
9759         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
9760         (fbsd_handle_debug_trap): Remove target_ops parameter.
9761         (fbsd_nat_add_target): Delete.
9762         * fbsd-nat.h: Include "inf-ptrace.h".
9763         (fbsd_nat_add_target): Delete.
9764         (USE_SIGTRAP_SIGINFO): Define.
9765         (fbsd_nat_target): New class.
9766
9767         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
9768         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
9769         (amd64bsd_target): Delete.
9770         * amd64-bsd-nat.h: New file.
9771         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
9772         "x86-bsd-nat.h".
9773         (amd64_fbsd_nat_target): New class.
9774         (the_amd64_fbsd_nat_target): New.
9775         (amd64fbsd_read_description): Refactor as method of
9776         amd64_fbsd_nat_target.
9777         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
9778         (_initialize_amd64fbsd_nat): Adjust to C++ification.
9779         * amd64-nat.h (amd64bsd_target): Delete function declaration.
9780         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
9781         (i386bsd_store_inferior_registers): Remove target_ops parameter.
9782         (i386bsd_target): Delete.
9783         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
9784         (i386bsd_fetch_inferior_registers)
9785         (i386bsd_store_inferior_registers): Declare.
9786         (i386_bsd_nat_target): New class.
9787         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
9788         (the_i386_fbsd_nat_target): New.
9789         (i386fbsd_resume, i386fbsd_read_description): Refactor as
9790         i386_fbsd_nat_target methods.
9791         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
9792         (_initialize_i386fbsd_nat): Adjust to C++ification.
9793         * x86-bsd-nat.c (super_mourn_inferior): Delete.
9794         (x86bsd_mourn_inferior, x86bsd_target): Delete.
9795         (_initialize_x86_bsd_nat): Adjust to C++ification.
9796         * x86-bsd-nat.h: Include "x86-nat.h".
9797         (x86bsd_target): Delete declaration.
9798         (x86bsd_nat_target): New class.
9799
9800         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
9801         (the_aarch64_fbsd_nat_target): New.
9802         (aarch64_fbsd_fetch_inferior_registers)
9803         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
9804         aarch64_fbsd_nat_target.
9805         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
9806         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
9807         (the_alpha_bsd_nat_target): New.
9808         (alphabsd_fetch_inferior_registers)
9809         (alphabsd_store_inferior_registers): Refactor as
9810         alpha_bsd_nat_target methods.
9811         (_initialize_alphabsd_nat): Refactor as methods of
9812         alpha_bsd_nat_target.
9813         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
9814         (the_amd64_nbsd_nat_target): New.
9815         (_initialize_amd64nbsd_nat): Adjust to C++ification.
9816         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
9817         (the_amd64_obsd_nat_target): New.
9818         (_initialize_amd64obsd_nat): Adjust to C++ification.
9819         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
9820         (the_arm_fbsd_nat_target): New.
9821         (arm_fbsd_fetch_inferior_registers)
9822         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
9823         (_initialize_arm_fbsd_nat): Refactor as methods of
9824         arm_fbsd_nat_target.
9825         (_initialize_arm_fbsd_nat): Adjust to C++ification.
9826         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
9827         (the_arm_netbsd_nat_target): New.
9828         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
9829         arm_netbsd_nat_target.
9830         (_initialize_arm_netbsd_nat): Adjust to C++ification.
9831         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
9832         (the_hppa_nbsd_nat_target): New.
9833         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
9834         hppa_nbsd_nat_target methods.
9835         (_initialize_hppanbsd_nat): Adjust to C++ification.
9836         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
9837         (the_hppa_obsd_nat_target): New.
9838         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
9839         methods of hppa_obsd_nat_target.
9840         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
9841         add_target.
9842         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
9843         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
9844         add_target.
9845         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
9846         (_initialize_i386obsd_nat): Use add_target.
9847         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
9848         (the_m68k_bsd_nat_target): New.
9849         (m68kbsd_fetch_inferior_registers)
9850         (m68kbsd_store_inferior_registers): Refactor as methods of
9851         m68k_bsd_nat_target.
9852         (_initialize_m68kbsd_nat): Adjust to C++ification.
9853         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
9854         (the_mips_fbsd_nat_target): New.
9855         (mips_fbsd_fetch_inferior_registers)
9856         (mips_fbsd_store_inferior_registers): Refactor as methods of
9857         mips_fbsd_nat_target.
9858         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
9859         add_target.
9860         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
9861         (the_mips_nbsd_nat_target): New.
9862         (mipsnbsd_fetch_inferior_registers)
9863         (mipsnbsd_store_inferior_registers): Refactor as methods of
9864         mips_nbsd_nat_target.
9865         (_initialize_mipsnbsd_nat): Adjust to C++ification.
9866         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
9867         (the_mips64_obsd_nat_target): New.
9868         (mips64obsd_fetch_inferior_registers)
9869         (mips64obsd_store_inferior_registers): Refactor as methods of
9870         mips64_obsd_nat_target.
9871         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
9872         add_target.
9873         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
9874         nbsd_nat_target.
9875         * nbsd-nat.h: Include "inf-ptrace.h".
9876         (nbsd_nat_target): New class.
9877         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
9878         (obsd_wait): Refactor as methods of obsd_nat_target.
9879         (obsd_add_target): Delete.
9880         * obsd-nat.h: Include "inf-ptrace.h".
9881         (obsd_nat_target): New class.
9882         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
9883         (the_ppc_fbsd_nat_target): New.
9884         (ppcfbsd_fetch_inferior_registers)
9885         (ppcfbsd_store_inferior_registers): Refactor as methods of
9886         ppc_fbsd_nat_target.
9887         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
9888         add_target.
9889         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
9890         (the_ppc_nbsd_nat_target): New.
9891         (ppcnbsd_fetch_inferior_registers)
9892         (ppcnbsd_store_inferior_registers): Refactor as methods of
9893         ppc_nbsd_nat_target.
9894         (_initialize_ppcnbsd_nat): Adjust to C++ification.
9895         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
9896         (the_ppc_obsd_nat_target): New.
9897         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
9898         methods of ppc_obsd_nat_target.
9899         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
9900         add_target.
9901         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
9902         (the_sh_nbsd_nat_target): New.
9903         (shnbsd_fetch_inferior_registers)
9904         (shnbsd_store_inferior_registers): Refactor as methods of
9905         sh_nbsd_nat_target.
9906         (_initialize_shnbsd_nat): Adjust to C++ification.
9907         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
9908         (inf_ptrace_xfer_partial): Delete.
9909         (sparc_xfer_partial, sparc_target): Delete.
9910         * sparc-nat.h (sparc_fetch_inferior_registers)
9911         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
9912         (sparc_target): Delete function declaration.
9913         (sparc_target): New template class.
9914         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
9915         (_initialize_sparcnbsd_nat): Adjust to C++ification.
9916         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
9917         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
9918         add_target.
9919         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
9920         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
9921         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
9922         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
9923         add_target.
9924         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
9925         (the_vax_bsd_nat_target): New.
9926         (vaxbsd_fetch_inferior_registers)
9927         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
9928         methods.
9929         (_initialize_vaxbsd_nat): Adjust to C++ification.
9930
9931         * bsd-kvm.c (bsd_kvm_target): New class.
9932         (bsd_kvm_ops): Now a bsd_kvm_target.
9933         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
9934         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
9935         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
9936         bsd_kvm_target.
9937         (bsd_kvm_return_one): Delete.
9938         (bsd_kvm_add_target): Adjust to C++ification.
9939
9940         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
9941         (nto_procfs_target_procfs): New classes.
9942         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
9943         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
9944         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
9945         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
9946         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
9947         (procfs_remove_hw_breakpoint, procfs_resume)
9948         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
9949         (procfs_kill_inferior, procfs_store_registers)
9950         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
9951         as methods of nto_procfs_target.
9952         (nto_procfs_ops): Now an nto_procfs_target_procfs.
9953         (nto_native_ops): Delete.
9954         (procfs_open, procfs_native_open): Delete.
9955         (nto_native_ops): Now an nto_procfs_target_native.
9956         (init_procfs_targets): Adjust to C++ification.
9957         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
9958         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
9959         Refactor as methods of nto_procfs_target.
9960
9961         * go32-nat.c (go32_nat_target): New class.
9962         (the_go32_nat_target): New.
9963         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
9964         (go32_store_registers, go32_xfer_partial, go32_files_info)
9965         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
9966         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
9967         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
9968         (go32_pid_to_str): Refactor as methods of go32_nat_target.
9969         (go32_target): Delete.
9970         (_initialize_go32_nat): Adjust to C++ification.
9971
9972         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
9973         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
9974         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
9975         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
9976         gnu_nat_target.
9977         (gnu_target): Delete.
9978         * gnu-nat.h (gnu_target): Delete.
9979         (gnu_nat_target): New class.
9980         * i386-gnu-nat.c (gnu_base_target): New.
9981         (i386_gnu_nat_target): New class.
9982         (the_i386_gnu_nat_target): New.
9983         (_initialize_i386gnu_nat): Adjust to C++ification.
9984
9985 2018-05-02  Pedro Alves  <palves@redhat.com>
9986
9987         * bfd-target.c (target_bfd_xclose): Rename to ...
9988         (target_bfd_close): ... this.
9989         (target_bfd_reopen): Adjust.
9990         * target.c (target_close): Remove references to to_xclose.
9991         * target.h (target_ops::to_xclose): Delete.
9992         (target_ops::to_close): Update comments.
9993
9994 2018-05-02  Pedro Alves  <palves@redhat.com>
9995
9996         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
9997         "linux-nat.h".
9998         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
9999         * inf-ptrace.c (inf_ptrace_register_u_offset)
10000         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10001         (inf_ptrace_store_register, inf_ptrace_store_registers)
10002         (inf_ptrace_trad_target): Move to ...
10003         * linux-nat-trad.c: ... this new file.
10004         * linux-nat-trad.h: New file.
10005         * linux-nat.c (linux_target_install_ops): Make extern.
10006         (linux_trad_target): Delete.
10007         * linux-nat.h (linux_trad_target): Delete declaration.
10008         (linux_target_install_ops): Declare.
10009         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
10010         "linux-nat.h".
10011
10012 2018-05-02  Pedro Alves  <palves@redhat.com>
10013
10014         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10015         procfs_target/add_target here.
10016         * procfs.c (procfs_target): Make static.
10017         (_initialize_procfs): Call add_target here.
10018         * procfs.h (struct target_ops): Remove forward declaration.
10019         (procfs_target): Remove declaration.
10020         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
10021
10022 2018-05-02  Pedro Alves  <palves@redhat.com>
10023
10024         * procfs.c (procfs_stopped_by_watchpoint)
10025         (procfs_insert_watchpoint, procfs_remove_watchpoint)
10026         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
10027         Forward declare.
10028         (procfs_use_watchpoints): Delete, move contents...
10029         (procfs_target): ... here.
10030         * procfs.h (procfs_use_watchpoints): Delete declaration.
10031         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10032         procfs_use_watchpoints.
10033         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
10034         procfs_use_watchpoints.
10035
10036 2018-05-02  Tom Tromey  <tom@tromey.com>
10037
10038         PR python/20084:
10039         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
10040         and var_zuinteger_unlimited.
10041         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
10042         and PARAM_ZUINTEGER_UNLIMITED.
10043         (set_parameter_value): Handle var_zuinteger and
10044         var_zuinteger_unlimited.
10045         (add_setshow_generic): Likewise.
10046         (parmpy_init): Likewise.
10047
10048 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
10049
10050         PR rust/23124
10051         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
10052         pointer is not null before dereferencing it.
10053
10054 2018-04-30  Tom Tromey  <tom@tromey.com>
10055
10056         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
10057         is_mi_like_p.
10058
10059 2018-04-30  Tom Tromey  <tom@tromey.com>
10060
10061         * breakpoint.c (mention): Remove use of is_mi_like_p.
10062         (print_mention_ranged_breakpoint): Likewise.
10063         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
10064         of is_mi_like_p.
10065
10066 2018-04-30  Tom Tromey  <tom@tromey.com>
10067
10068         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
10069
10070 2018-04-30  Tom Tromey  <tom@tromey.com>
10071
10072         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
10073         (info_spu_event_command): Remove some uses of is_mi_like_p.
10074
10075 2018-04-30  Tom Tromey  <tom@tromey.com>
10076
10077         * python/py-framefilter.c (py_print_single_arg)
10078         (enumerate_locals, py_print_args, py_print_frame): Remove some
10079         uses of is_mi_like_p.
10080
10081 2018-04-30  Tom Tromey  <tom@tromey.com>
10082
10083         * ui-out.c: Update.
10084         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
10085         * ui-out.h (ui_out::is_mi_like_p): Now const.
10086         (ui_out::do_is_mi_like_p): Now const.
10087         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
10088
10089 2018-04-30  Tom Tromey  <tom@tromey.com>
10090
10091         * varobj.c (varobj_set_visualizer): Use new_reference.
10092         * python/python.c (gdbpy_decode_line): Use new_reference.
10093         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
10094         new_reference.
10095
10096 2018-04-30  Tom Tromey  <tom@tromey.com>
10097
10098         * varobj.c (install_new_value): Use new_reference.
10099         * value.h (value_incref): Return void.  Swap intro comment with
10100         value_decref.
10101         * value.c (set_value_parent): Use new_reference.
10102         (value_incref): Return void.  Update intro comment.
10103         (release_value): Use new_reference.
10104         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
10105
10106 2018-04-30  Tom Tromey  <tom@tromey.com>
10107
10108         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
10109         * gdb_bfd.h (new_bfd_ref): Remove.
10110         (gdb_bfd_open): Update comment.
10111         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
10112         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
10113         (gdb_bfd_fdopenr): Use new_reference.
10114         * exec.c (exec_file_attach): Use new_reference.
10115
10116 2018-04-30  Tom Tromey  <tom@tromey.com>
10117
10118         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
10119         method.
10120
10121 2018-04-30  Tom Tromey  <tom@tromey.com>
10122
10123         * jit.c (jit_read_code_entry): Use type_align.
10124         * i386-tdep.c (i386_gdbarch_init): Don't call
10125         set_gdbarch_long_long_align_bit.
10126         * gdbarch.sh: Remove long_long_align_bit.
10127         * gdbarch.c, gdbarch.h: Rebuild.
10128         * arc-tdep.c (arc_type_align): New function.
10129         (arc_gdbarch_init): Use arc_type_align.  Don't call
10130         set_gdbarch_long_long_align_bit.
10131
10132 2018-04-30  Tom Tromey  <tom@tromey.com>
10133
10134         * rust-lang.c (rust_type_alignment): Remove.
10135         (rust_composite_type): Use type_align.
10136
10137 2018-04-30  Tom Tromey  <tom@tromey.com>
10138
10139         * NEWS: Mention Type.align.
10140         * python/py-type.c (typy_get_alignof): New function.
10141         (type_object_getset): Add "alignof".
10142
10143 2018-04-30  Tom Tromey  <tom@tromey.com>
10144
10145         PR exp/17095:
10146         * NEWS: Update.
10147         * std-operator.def (UNOP_ALIGNOF): New operator.
10148         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
10149         New.
10150         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
10151         * c-lang.c (c_op_print_tab): Add alignof.
10152         * c-exp.y (ALIGNOF): New token.
10153         (exp): Add "ALIGNOF" production.
10154         (ident_tokens): Add _Alignof and alignof.
10155
10156 2018-04-30  Tom Tromey  <tom@tromey.com>
10157
10158         * i386-tdep.c (i386_type_align): New function.
10159         (i386_gdbarch_init): Update.
10160         * gdbarch.sh (type_align): New method.
10161         * gdbarch.c, gdbarch.h: Rebuild.
10162         * arch-utils.h (default_type_align): Declare.
10163         * arch-utils.c (default_type_align): New function.
10164         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
10165         (struct type) <align_log2>: New field.
10166         <instance_flags>: Now a bitfield.
10167         (TYPE_RAW_ALIGN): New macro.
10168         (type_align, type_raw_align, set_type_align): Declare.
10169         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
10170         functions.
10171         * dwarf2read.c (quirk_rust_enum): Set type alignment.
10172         (get_alignment, maybe_set_alignment): New functions.
10173         (read_structure_type, read_enumeration_type, read_array_type)
10174         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
10175         (read_subrange_type, read_base_type): Set type alignment.
10176
10177 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
10178
10179         * dwarf2read.c (read_index_from_section): Use bool.
10180
10181 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
10182
10183         PR gdb/22950
10184         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
10185         with #ifdef.
10186
10187 2018-04-29  John Reiser  <jreiser@BitWagon.com>
10188
10189         PR build/22873
10190         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
10191         last step, and do it atomically.
10192
10193 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
10194
10195         * compile/compile-c-types.c (convert_int, convert_float):
10196         Update for C FE v1.
10197
10198 2018-04-27  Tom Tromey  <tom@tromey.com>
10199
10200         PR rust/22545:
10201         * rust-lang.c (rust_inclusive_range_type_p): New function.
10202         (rust_range): Handle inclusive ranges.
10203         (rust_compute_range): Likewise.
10204         * rust-exp.y (struct rust_op) <inclusive>: New field.
10205         (DOTDOTEQ): New constant.
10206         (range_expr): Add "..=" productions.
10207         (operator_tokens): Add "..=" token.
10208         (ast_range): Add "inclusive" parameter.
10209         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
10210         ranges.
10211         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
10212         bounds values.
10213         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
10214         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
10215         Update comments.
10216         * expprint.c (print_subexp_standard): Handle new bounds values.
10217         (dump_subexp_body_standard): Likewise.
10218
10219 2018-04-27  Tom Tromey  <tom@tromey.com>
10220
10221         * configure: Rebuild.
10222         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
10223         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
10224         "OVERRIDE".
10225         (class symbol_needs_eval_context): Likewise.
10226         * dwarf2read.c (mock_mapped_index::symbol_name_count)
10227         (mock_mapped_index::symbol_name_at): Use "override".  Remove
10228         "virtual".
10229         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
10230         "override".
10231         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
10232         * aarch64-tdep.c (instruction_reader::read): Use "override".
10233         (instruction_reader_test::read): Likewise.
10234         * arm-tdep.c (instruction_reader::read): Use "override".
10235         (instruction_reader_thumb::read): Likewise.
10236
10237 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
10238
10239         PR remote/9665
10240         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
10241         instead of remote_send.
10242         (remote_send): Remove.
10243
10244 2018-04-26  Pedro Alves  <palves@redhat.com>
10245
10246         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
10247         find_function_start_sal instead of find_pc_line.
10248
10249 2018-04-26  Pedro Alves  <palves@redhat.com>
10250
10251         * breakpoint.c (set_breakpoint_location_function): Handle
10252         mst_data_gnu_ifunc.
10253         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
10254         * elfread.c (elf_symtab_read): Give data symbols with
10255         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
10256         (elf_rel_plt_read): Update comment.
10257         * linespec.c (convert_linespec_to_sals): Handle
10258         mst_data_gnu_ifunc.
10259         (minsym_found): Handle mst_data_gnu_ifunc.
10260         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
10261         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
10262         * parse.c (find_minsym_type_and_address): Handle
10263         mst_data_gnu_ifunc.
10264         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
10265         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
10266         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
10267         comment.
10268         <mst_data_gnu_ifunc>: New enumerator.
10269
10270 2018-04-26  Pedro Alves  <palves@redhat.com>
10271
10272         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
10273         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
10274         'want_trampoline' parameter by a lookup_msym_prefer parameter.
10275         Handle it.
10276         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
10277         (lookup_minimal_symbol_by_pc): Adjust.
10278         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
10279         (lookup_solib_trampoline_symbol_by_pc): Adjust.
10280         * minsyms.h (lookup_msym_prefer): New enum.
10281         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10282         parameter by a lookup_msym_prefer parameter.
10283
10284 2018-04-26  Pedro Alves  <palves@redhat.com>
10285
10286         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
10287         ends in "@plt" instead of looking at the symbol's section.
10288
10289 2018-04-26  Pedro Alves  <palves@redhat.com>
10290
10291         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
10292         all references.
10293         (find_pc_partial_function_gnu_ifunc): Rename to ...
10294         (find_pc_partial_function): ... this, and remove references to
10295         'is_gnu_ifunc_p'.
10296         (find_pc_partial_function): Delete old implementation.
10297         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
10298
10299 2018-04-26  Pedro Alves  <palves@redhat.com>
10300
10301         * linespec.c (struct bound_minimal_symbol_search_key): New.
10302         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
10303         skip first line if we found a GNU ifunc minimal symbol by name.
10304         (compare_msymbols): Change parameters to work with a destructured
10305         lhs minsym.
10306         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
10307         functions.
10308
10309 2018-04-26  Pedro Alves  <palves@redhat.com>
10310
10311         * breakpoint.c (set_breakpoint_location_function): Don't resolve
10312         ifunc targets here.  Instead, if we have an ifunc minsym, use its
10313         address/name.
10314         (add_location_to_breakpoint): Store the minsym and the objfile in
10315         the breakpoint location.
10316         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
10317         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
10318         Record the minsym in the sal.
10319         * symtab.h (symtab_and_line) <msymbol>: New field.
10320
10321 2018-04-26  Pedro Alves  <palves@redhat.com>
10322
10323         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
10324         unless we actually resolved the ifunc.
10325
10326 2018-04-26  Pedro Alves  <palves@redhat.com>
10327
10328         * c-exp.y (variable production): Prefer ifunc minsyms over
10329         regular function symbols.
10330         * symtab.c (find_gnu_ifunc): New function.
10331         * minsyms.h (lookup_msym_prefer): New enum.
10332         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10333         parameter by a lookup_msym_prefer parameter.
10334         * symtab.h (find_gnu_ifunc): New declaration.
10335
10336 2018-04-26  Pedro Alves  <palves@redhat.com>
10337
10338         * blockframe.c (find_gnu_ifunc_target_type): New function.
10339         (find_function_type): New.
10340         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
10341         return a value with a memory address.
10342         (eval_call): For calls to GNU ifunc functions, try to find the
10343         type of the target function from the type that the resolver
10344         returns.
10345         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
10346         symbols.
10347         * infcall.c (find_function_return_type): Delete.
10348         (find_function_addr): Add 'function_type' parameter.  For calls to
10349         GNU ifunc functions, try to find the type of the target function
10350         from the type that the resolver returns, and return it via
10351         FUNCTION_TYPE.
10352         (call_function_by_hand_dummy): Adjust to use the function type
10353         returned by find_function_addr.
10354         (find_function_addr): Add 'function_type' parameter and move
10355         description here.
10356         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
10357         declarations.
10358
10359 2018-04-26  Pedro Alves  <palves@redhat.com>
10360
10361         * c-exp.y (variable production): Skip finding an alias for ifunc
10362         symbols.
10363
10364 2018-04-26  Pedro Alves  <palves@redhat.com>
10365
10366         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
10367
10368 2018-04-25  Pedro Alves  <palves@redhat.com>
10369
10370         * infcmd.c (kill_command): Print the pid as string, not the whole
10371         thread's ptid.  Add comment.  s/has been killed/killed/ in output
10372         message.
10373         * remote.c (remote_detach_1): Print the pid as string, not the
10374         whole thread's ptid.
10375
10376 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
10377             Sergio Durigan Junior  <sergiodj@redhat.com>
10378             Pedro Alves  <palves@redhat.com>
10379
10380         * infcmd.c (kill_command): Print message when inferior has
10381         been killed.
10382         * inferior.c (print_inferior_events): Remove 'static'.  Set as
10383         '1'.
10384         (add_inferior): Improve message printed when
10385         'print_inferior_events' is on.
10386         (exit_inferior): Remove message printed when
10387         'print_inferior_events' is on.
10388         (detach_inferior): Improve message printed when
10389         'print_inferior_events' is on.
10390         (initialize_inferiors): Use 'add_inferior_silent' to set
10391         'current_inferior_'.
10392         * inferior.h (print_inferior_events): Declare here as
10393         'extern'.
10394         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
10395         '[Detaching...]' messages when 'print_inferior_events' is on.
10396         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
10397         as prefix/suffix for messages.  Remove periods.  Fix erroneous
10398         'Detaching after fork from child...', replace it by '... from
10399         parent...'.
10400         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
10401         prefix/suffix when printing 'Detaching...' messages.  Print
10402         them when 'print_inferior_events' is on.
10403         * remote.c (remote_detach_1): Print message when detaching
10404         from inferior and '!is_fork_parent'.
10405
10406 2018-04-24  Tom Tromey  <tom@tromey.com>
10407
10408         * cli-out.h: Reindent.
10409
10410 2018-04-24  Tom Tromey  <tom@tromey.com>
10411
10412         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
10413         (cli_ui_out::do_field_string): Use fputs_filtered.
10414         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
10415
10416 2018-04-23  Tom Tromey  <tom@tromey.com>
10417
10418         * guile/scm-frame.c (gdbscm_frame_read_var): Use
10419         gdb::unique_xmalloc_ptr.
10420
10421 2018-04-23  Tom Tromey  <tom@tromey.com>
10422
10423         * configure: Rebuild.
10424
10425 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
10426
10427         PR gdb/23095
10428         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
10429         prepare_for_testing.  Set normal_bp to r_debug_state if target
10430         is bsd.
10431
10432 2018-04-21  Pedro Alves  <palves@redhat.com>
10433             Rajendra SY  <rajendra.sy@gmail.com>
10434
10435         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
10436         * remote.c (extended_remote_attach): In all-stop mode, mark the
10437         thread as executing.
10438
10439 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
10440
10441         * thread.c (thread_apply_all_command): Fix comment.
10442         (thread_command): Fix comment.
10443
10444 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
10445
10446         * common/tdesc.h (tdesc_create_feature): Remove xml filename
10447         parameter.
10448         * features/aarch64-core.c (create_feature_aarch64_core):
10449         Regenerate.
10450         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
10451         Likewise.
10452         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
10453         Likewise.
10454         * features/i386/32bit-avx512.c
10455         (create_feature_i386_32bit_avx512): Likewise.
10456         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
10457         Likewise.
10458         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
10459         Likewise.
10460         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
10461         Likewise.
10462         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
10463         Likewise.
10464         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
10465         Likewise.
10466         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
10467         Likewise.
10468         * features/i386/64bit-avx512.c
10469         (create_feature_i386_64bit_avx512): Likewise.
10470         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
10471         Likewise.
10472         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
10473         Likewise.
10474         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
10475         Likewise.
10476         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
10477         Likewise.
10478         * features/i386/64bit-segments.c
10479         (create_feature_i386_64bit_segments): Likewise.
10480         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
10481         Likewise.
10482         * features/i386/x32-core.c
10483         (create_feature_i386_x32_core): Likewise.
10484         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
10485         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
10486         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
10487         * target-descriptions.c: In generated code, don't pass xml
10488         filename.
10489
10490 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10491
10492         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
10493         (print_xml_feature::visit_post): Likewise.
10494         (print_xml_feature::visit): Likewise.
10495         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
10496         (print_xml_feature): Add new class.
10497         * regformats/regdat.sh: Null xmltarget on feature targets.
10498         * target-descriptions.c (struct target_desc): Add xmltarget.
10499         (maintenance_check_tdesc_xml_convert): Add unittest function.
10500         (tdesc_get_features_xml): Add function to get xml.
10501         (maintenance_check_xml_descriptions): Test xml generation.
10502         * xml-tdesc.c (string_read_description_xml): Add function.
10503         * xml-tdesc.h (string_read_description_xml): Add declaration.
10504
10505 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10506
10507         * features/Makefile: Add feature marker to targets with new style
10508         target descriptions.
10509         * regformats/aarch64.dat: Regenerate.
10510         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
10511         * regformats/i386/amd64-avx-linux.dat: Likewise.
10512         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
10513         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
10514         * regformats/i386/amd64-linux.dat: Likewise.
10515         * regformats/i386/amd64-mpx-linux.dat: Likewise.
10516         * regformats/i386/amd64.dat: Likewise.
10517         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
10518         * regformats/i386/i386-avx-linux.dat: Likewise.
10519         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
10520         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
10521         * regformats/i386/i386-linux.dat: Likewise.
10522         * regformats/i386/i386-mmx-linux.dat: Likewise.
10523         * regformats/i386/i386-mpx-linux.dat: Likewise.
10524         * regformats/i386/i386.dat: Likewise.
10525         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
10526         * regformats/i386/x32-avx-linux.dat: Likewise.
10527         * regformats/i386/x32-linux.dat: Likewise.
10528         * regformats/tic6x-c62x-linux.dat: Likewise.
10529         * regformats/tic6x-c64x-linux.dat: Likewise.
10530         * regformats/tic6x-c64xp-linux.dat: Likewise.
10531         * regformats/regdat.sh: Parse feature marker.
10532
10533 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10534
10535         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
10536         (tdesc_osabi_name): Likewise.
10537         * target-descriptions.c (tdesc_architecture_name): Add new
10538         function.
10539         (tdesc_osabi_name): Likewise.
10540
10541 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10542
10543         * common/tdesc.c (tdesc_predefined_type): Move to here.
10544         (tdesc_named_type): Likewise.
10545         (tdesc_create_vector): Likewise.
10546         (tdesc_create_struct): Likewise.
10547         (tdesc_set_struct_size): Likewise.
10548         (tdesc_create_union): Likewise.
10549         (tdesc_create_flags): Likewise.
10550         (tdesc_create_enum): Likewise.
10551         (tdesc_add_field): Likewise.
10552         (tdesc_add_typed_bitfield): Likewise.
10553         (tdesc_add_bitfield): Likewise.
10554         (tdesc_add_flag): Likewise.
10555         (tdesc_add_enum_value): Likewise.
10556         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
10557         (struct tdesc_type_vector): Likewise.
10558         (struct tdesc_type_field): Likewise.
10559         (struct tdesc_type_with_fields): Likewise.
10560         (tdesc_create_enum): Add declaration.
10561         (tdesc_add_typed_bitfield): Likewise.
10562         (tdesc_add_enum_value): Likewise.
10563         * target-descriptions.c (tdesc_type_field): Move from here.
10564         (tdesc_type_builtin): Likewise.
10565         (tdesc_type_vector): Likewise.
10566         (tdesc_type_with_fields): Likewise.
10567         (tdesc_predefined_types): Likewise.
10568         (tdesc_named_type): Likewise.
10569         (tdesc_create_vector): Likewise.
10570         (tdesc_create_struct): Likewise.
10571         (tdesc_set_struct_size): Likewise.
10572         (tdesc_create_union): Likewise.
10573         (tdesc_create_flags): Likewise.
10574         (tdesc_create_enum): Likewise.
10575         (tdesc_add_field): Likewise.
10576         (tdesc_add_typed_bitfield): Likewise.
10577         (tdesc_add_bitfield): Likewise.
10578         (tdesc_add_flag): Likewise.
10579         (tdesc_add_enum_value): Likewise.
10580         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
10581         (tdesc_add_typed_bitfield): Likewise.
10582         (tdesc_add_enum_value): Likewise.
10583
10584 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10585
10586         * common/tdesc.c (tdesc_feature::accept): Move to here.
10587         (tdesc_feature::operator==): Likewise.
10588         (tdesc_create_reg): Likewise.
10589         * common/tdesc.h (tdesc_type_kind): Likewise.
10590         (struct tdesc_type): Likewise.
10591         (struct tdesc_feature): Likewise.
10592         * regformats/regdat.sh: Create a feature.
10593         * target-descriptions.c (tdesc_type_kind): Move from here.
10594         (tdesc_type): Likewise.
10595         (tdesc_type_up): Likewise.
10596         (tdesc_feature): Likewise.
10597         (tdesc_create_reg): Likewise.
10598
10599 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10600
10601         * Makefile.in: Add arch/tdesc.c
10602         * common/tdesc.c: New file.
10603         * common/tdesc.h (tdesc_element_visitor): Move to here.
10604         (tdesc_element): Likewise.
10605         (tdesc_reg): Likewise.
10606         (tdesc_reg_up): Likewise.
10607         * regformats/regdef.h (reg): Add offset to constructors.
10608         * target-descriptions.c (tdesc_element_visitor): Move from here.
10609         (tdesc_element): Likewise.
10610         (tdesc_reg): Likewise.
10611         (tdesc_reg_up): Likewise.
10612
10613 2018-04-17  Tom Tromey  <tom@tromey.com>
10614
10615         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
10616         discriminant field.
10617
10618 2018-04-17  Tom Tromey  <tom@tromey.com>
10619
10620         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
10621
10622 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
10623
10624         * symtab.c (print_symbol_info): Skip printing filename and line
10625         number when `last' is NULL.
10626         (symtab_symbol_info): Use empty string instead of NULL for first
10627         invocation of print_symbol_info.
10628         (rbreak_command): Pass NULL to `last' parameter of
10629         print_symbol_info.
10630
10631 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
10632
10633         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
10634         instead of nullptr.
10635
10636 2018-04-16  Pedro Alves  <palves@redhat.com>
10637
10638         * MAINTAINERS (sh): Remove.
10639         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
10640         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
10641         (ALLDEPFILES): Remove sh64-tdep.c.
10642         * NEWS: Mentions that support for SH-5/SH64 is removed.
10643         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
10644         (sh*-*-openbsd*): Ditto.
10645         (sh64-*-elf*): Remove.
10646         (sh*): Remove.
10647         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
10648         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
10649         * sh-tdep.c: No longer include "sh64-tdep.h".
10650         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
10651         * sh64-tdep.c, sh64-tdep.h: Remove files.
10652
10653 2018-04-16  Pedro Alves  <palves@redhat.com>
10654
10655         * MAINTAINERS: Remove m88k.
10656         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
10657         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
10658         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
10659         * NEWS: Mention that support for m88k was removed.
10660         * configure.host (m88*-*-*): Remove support.
10661         * configure.nat (m88k-*-*): Remove support.
10662         * configure.tgt (m88*-*-openbsd*): Remove.
10663         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
10664
10665 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
10666
10667         * configure.tgt (x86_tobjs): New variable.
10668         (amd64_tobjs, i386_tobjs): Use it.
10669
10670 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
10671
10672         * symtab.c (print_symbol_info): Precede the symbol definition by
10673         the line number when available.
10674         * NEWS: Advertise this enhancement.
10675
10676 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10677
10678         * NEWS (New options): announce set/show record btrace cpu.
10679         * btrace.c: Include record-btrace.h.
10680         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
10681         the vendor is unknown.
10682         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
10683         Maybe overwrite the btrace configuration's cpu.
10684         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
10685         (btrace_fetch): Add cpu parameter.  Update callers.
10686         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
10687         Maybe overwrite the btrace configuration's cpu.  Skip enabling
10688         errata workarounds if the vendor is unknown.
10689         * python/py-record-btrace.c: Include record-btrace.h.
10690         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
10691         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
10692         * record-btrace.c (record_btrace_cpu_state_kind): New.
10693         (record_btrace_cpu): New.
10694         (set_record_btrace_cpu_cmdlist): New.
10695         (record_btrace_get_cpu): New.
10696         (require_btrace_thread, record_btrace_info)
10697         (record_btrace_resume_thread): Call record_btrace_get_cpu.
10698         (cmd_set_record_btrace_cpu_none): New.
10699         (cmd_set_record_btrace_cpu_auto): New.
10700         (cmd_set_record_btrace_cpu): New.
10701         (cmd_show_record_btrace_cpu): New.
10702         (_initialize_record_btrace): Initialize set/show record btrace cpu
10703         commands.
10704         * record-btrace.h (record_btrace_get_cpu): New.
10705
10706 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10707
10708         * record.c (set_record_command): Fix typo in message.
10709
10710 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10711
10712         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
10713
10714 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10715
10716         * infrun.c (process_event_stop_test): Call
10717         gdbarch_in_indirect_branch_thunk.
10718         * gdbarch.sh (in_indirect_branch_thunk): New.
10719         * gdbarch.c: Regenerated.
10720         * gdbarch.h: Regenerated.
10721         * x86-tdep.h: New.
10722         * x86-tdep.c: New.
10723         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
10724         (HFILES_NO_SRCDIR): Add x86-tdep.h.
10725         (ALLDEPFILES): Add x86-tdep.c.
10726         * arch-utils.h (default_in_indirect_branch_thunk): New.
10727         * arch-utils.c (default_in_indirect_branch_thunk): New.
10728         * i386-tdep: Include x86-tdep.h.
10729         (i386_in_indirect_branch_thunk): New.
10730         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
10731         function.
10732         * amd64-tdep: Include x86-tdep.h.
10733         (amd64_in_indirect_branch_thunk): New.
10734         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
10735
10736 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
10737
10738         PR gdb/23053
10739         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
10740         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
10741         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
10742         regression.
10743
10744 2018-04-12  Tom Tromey  <tom@tromey.com>
10745
10746         * rust-lang.c (rust_print_struct_def): Remove univariant code.
10747         (rust_evaluate_subexp): Likewise.
10748
10749 2018-04-12  Pedro Alves  <palves@redhat.com>
10750
10751         * procfs.c (procfs_detach): Make forward declaration's prototype
10752         match definition's protototype.
10753         (proc_get_LDT_entry): Remove stale do_cleanups call.
10754
10755 2018-04-12  Pedro Alves  <palves@redhat.com>
10756
10757         * target.h (target_ops::to_has_exited): Delete.
10758         (target_has_exited): Delete.
10759         * target-delegates.c: Regenerate.
10760
10761 2018-04-11  Pedro Alves  <palves@redhat.com>
10762
10763         * target.c (fileio_fh_t::t): Add comment.
10764         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
10765         (target_fileio_close): Handle a NULL target.
10766         (invalidate_fileio_fh): New.
10767         (target_close): Call it.
10768         * remote.c (remote_hostio_send_command): No longer check whether
10769         remote_desc is open.
10770
10771 2018-04-11  Pedro Alves  <palves@redhat.com>
10772
10773         * target.c (fileio_fh_t): Make it a named struct instead of a
10774         typedef.
10775         (fileio_fh_t::is_closed): New method.
10776         (DEF_VEC_O (fileio_fh_t)): Remove.
10777         (fileio_fhandles): Now a std::vector.
10778         (is_closed_fileio_fh): Delete.
10779         (acquire_fileio_fd): Adjust.  Rename parameters.
10780         (release_fileio_fd): Adjust.
10781         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
10782         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
10783         (target_fileio_close): Adjust.
10784
10785 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
10786
10787         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
10788         index.
10789
10790 2018-04-10  Pedro Alves  <palves@redhat.com>
10791
10792         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
10793         (scoped_finish_thread_state): New class.
10794         * infcmd.c (run_command_1): Use it instead of finish_thread_state
10795         cleanup.
10796         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
10797         (fetch_inferior_event, normal_stop): Likewise.
10798         * thread.c (finish_thread_state_cleanup): Delete.
10799
10800 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10801             Pedro Alves  <palves@redhat.com>
10802
10803         * value.c: Include "selftest.h" and "common/array-view.h".
10804         (struct range) <operator ==>: New.
10805         (test_ranges_contain): New.
10806         (check_ranges_vector): New.
10807         (test_insert_into_bit_range_vector): New.
10808         (_initialize_values): Register selftests.
10809         * common/array-view.h (operator==, operator!=): New.
10810
10811 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10812
10813         * common/gdb_vecs.h (unordered_remove): Add overload that takes
10814         an iterator.
10815         * inline-frame.c: Include <algorithm>.
10816         (struct inline_state): Add constructor.
10817         (inline_state_s): Remove.
10818         (DEF_VEC_O(inline_state_s)): Remove.
10819         (inline_states): Change type to std::vector.
10820         (find_inline_frame_state): Adjust to std::vector.
10821         (allocate_inline_frame_state): Remove.
10822         (clear_inline_frame_state): Adjust to std::vector.
10823         (skip_inline_frames): Adjust to std::vector.
10824
10825 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10826
10827         * tracepoint.h (struct trace_state_variable): Add constructor.
10828         <name>: Change type to std::string.
10829         * tracepoint.c (tsv_s): Remove.
10830         (DEF_VEC_O(tsv_s)): Remove.
10831         (tvariables): Change to std::vector.
10832         (create_trace_state_variable): Adjust to std::vector.
10833         (find_trace_state_variable): Likewise.
10834         (find_trace_state_variable_by_number): Likewise.
10835         (delete_trace_state_variable): Likewise.
10836         (trace_variable_command): Adjust to std::string.
10837         (delete_trace_variable_command): Likewise.
10838         (tvariables_info_1): Adjust to std::vector.
10839         (save_trace_state_variables): Likewise.
10840         (start_tracing): Likewise.
10841         (merge_uploaded_trace_state_variables): Adjust to std::vector
10842         and std::string.
10843         * target.h (struct target_ops)
10844         <to_download_trace_state_variable>: Pass reference to
10845         trace_state_variable.
10846         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
10847         * target-delegates.c: Re-generate.
10848         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
10849         (mi_tsv_deleted): Likewise.
10850         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
10851         * remote.c (remote_download_trace_state_variable): Change
10852         pointer to reference and adjust.
10853         * make-target-delegates (parse_argtypes): Handle references.
10854         (write_function_header): Likewise.
10855         (munge_type): Likewise.
10856
10857 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10858
10859         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
10860         string_view-selftests.c.
10861         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
10862         testsuite.
10863         * unittests/basic_string_view/cons/char/1.cc: Likewise.
10864         * unittests/basic_string_view/cons/char/2.cc: Likewise.
10865         * unittests/basic_string_view/cons/char/3.cc: Likewise.
10866         * unittests/basic_string_view/element_access/char/1.cc:
10867         Likewise.
10868         * unittests/basic_string_view/element_access/char/empty.cc:
10869         Likewise.
10870         * unittests/basic_string_view/element_access/char/front_back.cc:
10871         Likewise.
10872         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
10873         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
10874         Likewise.
10875         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
10876         Likewise.
10877         * unittests/basic_string_view/modifiers/swap/char/1.cc:
10878         Likewise.
10879         * unittests/basic_string_view/operations/compare/char/1.cc:
10880         Likewise.
10881         * unittests/basic_string_view/operations/compare/char/13650.cc:
10882         Likewise.
10883         * unittests/basic_string_view/operations/copy/char/1.cc:
10884         Likewise.
10885         * unittests/basic_string_view/operations/data/char/1.cc:
10886         Likewise.
10887         * unittests/basic_string_view/operations/find/char/1.cc:
10888         Likewise.
10889         * unittests/basic_string_view/operations/find/char/2.cc:
10890         Likewise.
10891         * unittests/basic_string_view/operations/find/char/3.cc:
10892         Likewise.
10893         * unittests/basic_string_view/operations/find/char/4.cc:
10894         Likewise.
10895         * unittests/basic_string_view/operations/rfind/char/1.cc:
10896         Likewise.
10897         * unittests/basic_string_view/operations/rfind/char/2.cc:
10898         Likewise.
10899         * unittests/basic_string_view/operations/rfind/char/3.cc:
10900         Likewise.
10901         * unittests/basic_string_view/operations/substr/char/1.cc:
10902         Likewise.
10903         * unittests/basic_string_view/operators/char/2.cc: Likewise.
10904         * unittests/string_view-selftests.c: New file.
10905
10906 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10907
10908         * unittests/basic_string_view/capacity/1.cc: New file.
10909         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
10910         * unittests/basic_string_view/cons/char/1.cc: New file.
10911         * unittests/basic_string_view/cons/char/2.cc: New file.
10912         * unittests/basic_string_view/cons/char/3.cc: New file.
10913         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
10914         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
10915         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
10916         * unittests/basic_string_view/element_access/char/1.cc: New file.
10917         * unittests/basic_string_view/element_access/char/2.cc: New file.
10918         * unittests/basic_string_view/element_access/char/empty.cc: New file.
10919         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
10920         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
10921         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
10922         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
10923         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
10924         * unittests/basic_string_view/include.cc: New file.
10925         * unittests/basic_string_view/inserters/char/1.cc: New file.
10926         * unittests/basic_string_view/inserters/char/2.cc: New file.
10927         * unittests/basic_string_view/inserters/char/3.cc: New file.
10928         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
10929         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
10930         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
10931         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
10932         * unittests/basic_string_view/literals/types.cc: New file.
10933         * unittests/basic_string_view/literals/values.cc: New file.
10934         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
10935         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
10936         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
10937         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
10938         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
10939         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
10940         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
10941         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
10942         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
10943         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
10944         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
10945         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
10946         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
10947         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
10948         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
10949         * unittests/basic_string_view/operations/data/char/1.cc: New file.
10950         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
10951         * unittests/basic_string_view/operations/find/char/1.cc: New file.
10952         * unittests/basic_string_view/operations/find/char/2.cc: New file.
10953         * unittests/basic_string_view/operations/find/char/3.cc: New file.
10954         * unittests/basic_string_view/operations/find/char/4.cc: New file.
10955         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
10956         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
10957         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
10958         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
10959         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
10960         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
10961         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
10962         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
10963         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
10964         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
10965         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
10966         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
10967         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
10968         * unittests/basic_string_view/operators/char/2.cc: New file.
10969         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
10970         * unittests/basic_string_view/range_access/char/1.cc: New file.
10971         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
10972         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
10973         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
10974         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
10975         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
10976         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
10977         * unittests/basic_string_view/requirements/typedefs.cc: New file.
10978         * unittests/basic_string_view/typedefs.cc: New file.
10979         * unittests/basic_string_view/types/1.cc: New file.
10980
10981 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10982
10983         * common/gdb_string_view.h: Remove libstdc++ implementation
10984         details, adjust to gdb reality.
10985         * common/gdb_string_view.tcc: Likewise.
10986         * cli/cli-script.c (struct string_view): Remove.
10987         (user_args) <m_args>: Change element type to gdb::string_view.
10988         (user_args::insert_args): Adjust.
10989
10990 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10991
10992         * common/gdb_string_view.h: New file.
10993         * common/gdb_string_view.tcc: New file.
10994
10995 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10996
10997         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
10998         * configure: Re-generate.
10999
11000 2018-04-09  Pedro Alves  <palves@redhat.com>
11001
11002         * gdbarch.sh: Include "observable.h" instead of "observer.h".
11003         (set_target_gdbarch): Call
11004         gdb::observers::architecture_changed.notify instead of
11005         observer_notify_architecture_changed.
11006
11007 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11008
11009         * tracepoint.c (struct current_traceframe_cleanup): Remove.
11010         (do_restore_current_traceframe_cleanup): Remove.
11011         (restore_current_traceframe_cleanup_dtor): Remove.
11012         (make_cleanup_restore_current_traceframe): Remove.
11013         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
11014         New.
11015         * tracepoint.h (struct scoped_restore_current_traceframe): New.
11016         * infrun.c (fetch_inferior_event): Use
11017         scoped_restore_current_traceframe.
11018
11019 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11020
11021         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
11022         Remove.
11023         <n_allocated_type_units>: Remove.
11024         <all_type_units>: Change to std::vector.
11025         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11026         to std::vector change.
11027         (dwarf2_per_objfile::get_cutu): Likewise.
11028         (dwarf2_per_objfile::get_tu): Likewise.
11029         (create_signatured_type_table_from_index): Likewise.
11030         (create_signatured_type_table_from_debug_names): Likewise.
11031         (dw2_symtab_iter_next): Likewise.
11032         (dw2_print_stats): Likewise.
11033         (dw2_expand_all_symtabs): Likewise.
11034         (dw2_expand_marked_cus): Likewise.
11035         (dw2_debug_names_iterator::next): Likewise.
11036         (dwarf2_initialize_objfile): Likewise.
11037         (add_signatured_type_cu_to_table): Likewise.
11038         (create_all_type_units): Likewise.
11039         (add_type_unit): Likewise.
11040         (struct tu_abbrev_offset): Add constructor.
11041         (build_type_psymtabs_1): Adjust to std::vector change.
11042         (print_tu_stats): Likewise.
11043         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11044         (write_debug_names): Likewise.
11045
11046 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11047
11048         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
11049         Make an std::vector.
11050         <n_comp_units>: Remove.
11051         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11052         to std::vector change.
11053         (dwarf2_per_objfile::get_cutu): Likewise.
11054         (dwarf2_per_objfile::get_cu): Likewise.
11055         (create_cus_from_index): Likewise.
11056         (create_addrmap_from_index): Likewise.
11057         (create_addrmap_from_aranges): Likewise.
11058         (dwarf2_read_index): Likewise.
11059         (dw2_find_last_source_symtab): Likewise.
11060         (dw2_map_symtabs_matching_filename): Likewise.
11061         (dw2_symtab_iter_next): Likewise.
11062         (dw2_print_stats): Likewise.
11063         (dw2_expand_all_symtabs): Likewise.
11064         (dw2_expand_symtabs_with_fullname): Likewise.
11065         (dw2_expand_marked_cus): Likewise.
11066         (dw2_map_symbol_filenames): Likewise.
11067         (create_cus_from_debug_names): Likewise.
11068         (dwarf2_read_debug_names): Likewise.
11069         (dw2_debug_names_iterator::next): Likewise.
11070         (dwarf2_initialize_objfile): Likewise.
11071         (set_partial_user): Likewise.
11072         (dwarf2_build_psymtabs_hard): Likewise.
11073         (read_comp_units_from_section): Remove arguments, adjust to
11074         std::vector change.
11075         (create_all_comp_units): Adjust to std::vector and
11076         read_comp_units_from_section changes.
11077         (dwarf2_find_containing_comp_unit): Adjust to std::vector
11078         change.
11079         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11080         (psyms_seen_size): Likewise.
11081         (write_gdbindex): Likewise.
11082         (write_debug_names): Likewise.
11083
11084 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11085
11086         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
11087         with dwarf2_per_objfile.
11088         (create_cus_from_index): Likewise.
11089         (create_signatured_type_table_from_index): Likewise.
11090         (dwarf2_read_index): Likewise.
11091         (dwarf2_initialize_objfile): Likewise.
11092         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
11093         per_cu rather than get_dwarf2_per_objfile.
11094
11095 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11096
11097         * dwarf2read.h (struct signatured_type): Forward declare.
11098         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
11099         New methods.
11100         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
11101         (dw2_get_cutu): ...this.
11102         (dwarf2_per_objfile::get_cu): Rename from...
11103         (dw2_get_cu): ...this.
11104         (dwarf2_per_objfile::get_tu): New.
11105         (create_addrmap_from_index): Adjust.
11106         (create_addrmap_from_aranges): Adjust.
11107         (dw2_find_last_source_symtab): Adjust.
11108         (dw2_map_symtabs_matching_filename): Adjust.
11109         (dw2_symtab_iter_next): Adjust.
11110         (dw2_print_stats): Adjust.
11111         (dw2_expand_all_symtabs): Adjust.
11112         (dw2_expand_symtabs_with_fullname): Adjust.
11113         (dw2_expand_marked_cus): Adjust.
11114         (dw_expand_symtabs_matching_file_matcher): Adjust.
11115         (dw2_map_symbol_filenames): Adjust.
11116         (dw2_debug_names_iterator::next): Adjust.
11117         (dwarf2_initialize_objfile): Adjust.
11118         (set_partial_user): Adjust.
11119         (dwarf2_build_psymtabs_hard): Adjust.
11120
11121 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11122
11123         * dwarf2read.c (create_signatured_type_table_from_debug_names):
11124         Remove unused variables.
11125         (dw2_map_symtabs_matching_filename): Likewise.
11126         (dwarf2_record_block_ranges): Likewise.
11127         (dwarf2_read_addr_index): Likewise.
11128         (follow_die_offset): Likewise.
11129
11130 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11131
11132         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
11133         to symbol_file_add_main.
11134
11135 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11136
11137         PR mi/22299
11138         * mi/mi-console.c (do_fputc_async_safe): New.
11139         (mi_console_file::write_async_safe): New.
11140         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
11141         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
11142         New.
11143         * ui-file.c (ui_file::putstrn): Adjust call to
11144         fputstrn_unfiltered.
11145         * utils.c (printchar): Replace do_fputs and do_fprintf
11146         parameters by do_fputc.
11147         (fputstr_filtered): Adjust call to printchar.
11148         (fputstr_unfiltered): Likewise.
11149         (fputstrn_filtered): Likewise.
11150         (fputstrn_unfiltered): Add do_fputc parameter, pass to
11151         printchar.
11152         * utils.h (do_fputc_ftype): New typedef.
11153         (fputstrn_unfiltered): Add do_fputc parameter.
11154
11155 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11156
11157         * regformats/i386/i386-avx.dat: Remove.
11158
11159 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11160
11161         PR gdb/22979
11162         * amd64-tdep.c (amd64_none_init_abi): New function.
11163         (amd64_x32_none_init_abi): New function.
11164         (_initialize_amd64_tdep): Register handlers for x86-64 and
11165         x64_32 with GDB_OSABI_NONE.
11166         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
11167         GDB_OSABI_NONE osabi.
11168
11169 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11170
11171         PR gdb/22980
11172         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
11173         GDB_OSABI_NONE.
11174         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
11175         * osabi.c (gdb_osabi_names): Add "unknown" entry.
11176
11177 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11178
11179         * common/byte-vector.h (char_vector): New type.
11180         * target.h (target_read_alloc): Return
11181         gdb::optional<byte_vector>.
11182         (target_read_stralloc): Return gdb::optional<char_vector>.
11183         (target_get_osdata): Return gdb::optional<char_vector>.
11184         * target.c (target_read_alloc_1): Templatize.  Replacement
11185         manual memory management with vector.
11186         (target_read_alloc): Change return type, adjust.
11187         (target_read_stralloc): Change return type, adjust.
11188         (target_get_osdata): Change return type, adjust.
11189         * auxv.c (struct auxv_info) <length>: Remove.
11190         <data>: Change type to gdb::optional<byte_vector>.
11191         (auxv_inferior_data_cleanup): Free auxv_info with delete.
11192         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
11193         (target_auxv_search): Adjust.
11194         (fprint_target_auxv): Adjust.
11195         * avr-tdep.c (avr_io_reg_read_command): Adjust.
11196         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
11197         (linux_make_corefile_notes): Adjust.
11198         * osdata.c (get_osdata): Adjust.
11199         * remote.c (remote_get_threads_with_qxfer): Adjust.
11200         (remote_memory_map): Adjust.
11201         (remote_traceframe_info): Adjust.
11202         (btrace_read_config): Adjust.
11203         (remote_read_btrace): Adjust.
11204         (remote_pid_to_exec_file): Adjust.
11205         * solib-aix.c (solib_aix_get_library_list): Adjust.
11206         * solib-dsbt.c (decode_loadmap): Don't free buf.
11207         (dsbt_get_initial_loadmaps): Adjust.
11208         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
11209         * solib-target.c (solib_target_current_sos): Adjust.
11210         * tracepoint.c (sdata_make_value): Adjust.
11211         * xml-support.c (xinclude_start_include): Adjust.
11212         (xml_fetch_content_from_file): Adjust.
11213         * xml-support.h (xml_fetch_another): Change return type.
11214         (xml_fetch_content_from_file): Change return type.
11215         * xml-syscall.c (xml_init_syscalls_info): Adjust.
11216         * xml-tdesc.c (file_read_description_xml): Adjust.
11217         (fetch_available_features_from_target): Change return type.
11218         (target_fetch_description_xml): Adjust.
11219         (target_read_description_xml): Adjust.
11220
11221 2018-04-06  Tom Tromey  <tom@tromey.com>
11222
11223         * value.c (~value): Update.
11224         (struct value) <contents>: Now unique_xmalloc_ptr.
11225         (value_contents_bits_eq, allocate_value_contents)
11226         (value_contents_raw, value_contents_all_raw)
11227         (value_contents_for_printing, value_contents_for_printing_const)
11228         (set_value_enclosing_type): Update.
11229
11230 2018-04-06  Tom Tromey  <tom@tromey.com>
11231
11232         * value.c (range_s): Remove typedef, VEC.
11233         (struct range): Add operator<.
11234         (range_lessthan): Remove.
11235         (ranges_contain): Change type.
11236         (~value): Update.
11237         (struct value) <unavailable, optimized_out>: Now std::vector.
11238         (value_entirely_available)
11239         (value_entirely_covered_by_range_vector)
11240         (value_entirely_unavailable, value_entirely_optimized_out):
11241         Update.
11242         (insert_into_bit_range_vector): Change argument type.
11243         (find_first_range_overlap): Likewise.
11244         (struct ranges_and_idx, value_contents_bits_eq)
11245         (require_not_optimized_out, require_available): Update.
11246         (ranges_copy_adjusted): Change argument types.
11247         (value_optimized_out, value_copy, value_fetch_lazy): Update.
11248
11249 2018-04-06  Tom Tromey  <tom@tromey.com>
11250
11251         * value.c (~value): Update.
11252         (struct value) <parent>: Now a value_ref_ptr.
11253         (value_parent, set_value_parent, value_address, value_copy):
11254         Update.
11255
11256 2018-04-06  Tom Tromey  <tom@tromey.com>
11257
11258         * value.c (struct value): Add constructor, destructor, and member
11259         initializers.
11260         (allocate_value_lazy, value_decref): Update.
11261
11262 2018-04-06  Tom Tromey  <tom@tromey.com>
11263
11264         * value.c (struct value) <released, next>: Remove.
11265         (all_values): Now a std::vector.
11266         (allocate_value_lazy): Update.
11267         (value_next): Remove.
11268         (value_mark, value_free_to_mark, release_value)
11269         (value_release_to_mark): Update.
11270
11271 2018-04-06  Tom Tromey  <tom@tromey.com>
11272
11273         * value.h (fetch_subexp_value, value_release_to_mark): Update.
11274         (free_value_chain): Remove.
11275         * value.c (free_value_chain): Remove.
11276         (value_release_to_mark): Return a std::vector.
11277         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
11278         std::vector.
11279         (check_condition): Update.
11280         * eval.c (fetch_subexp_value): Change "val_chain" to a
11281         std::vector.
11282         * breakpoint.c (update_watchpoint): Update.
11283         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
11284
11285 2018-04-06  Tom Tromey  <tom@tromey.com>
11286
11287         * value.h (free_all_values): Remove.
11288         * value.c (free_all_values): Remove.
11289
11290 2018-04-06  Tom Tromey  <tom@tromey.com>
11291
11292         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
11293         (value_history_chain, value_history_count): Remove.
11294         (value_history): New global.
11295         (record_latest_value, access_value_history, show_values)
11296         (preserve_values): Update.
11297
11298 2018-04-06  Tom Tromey  <tom@tromey.com>
11299
11300         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
11301         * varobj.c (varobj_set_display_format, varobj_set_value)
11302         (install_default_visualizer, construct_visualizer)
11303         (install_new_value, ~varobj, varobj_get_value_type)
11304         (my_value_of_variable, varobj_editable_p): Update.
11305         * c-varobj.c (c_describe_child, c_value_of_variable)
11306         (cplus_number_of_children, cplus_describe_child): Update.
11307         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
11308         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
11309         (ada_value_of_variable, ada_value_is_changeable_p): Update.
11310
11311 2018-04-06  Tom Tromey  <tom@tromey.com>
11312
11313         * printcmd.c (last_examine_address): Change type to
11314         value_ref_ptr.
11315         (do_examine, x_command): Update.
11316
11317 2018-04-06  Tom Tromey  <tom@tromey.com>
11318
11319         * value.c (release_value): Update.
11320         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
11321         (struct bpstats) <val>: Now a value_ref_ptr.
11322         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11323         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11324         (~watchpoint, print_it_watchpoint, watch_command_1)
11325         (invalidate_bp_value_on_memory_change): Update.
11326
11327 2018-04-06  Tom Tromey  <tom@tromey.com>
11328
11329         * varobj.c (varobj_clear_saved_item)
11330         (update_dynamic_varobj_children, install_new_value, ~varobj):
11331         Update.
11332         * value.h (value_incref): Move declaration earlier.
11333         (value_decref): Rename from value_free.
11334         (struct value_ref_policy): New.
11335         (value_ref_ptr): New typedef.
11336         (struct value_deleter): Remove.
11337         (gdb_value_up): Remove typedef.
11338         (release_value): Change return type.
11339         (release_value_or_incref): Remove.
11340         * value.c (set_value_parent): Update.
11341         (value_incref): Change return type.
11342         (value_decref): Rename from value_free.
11343         (value_free_to_mark, free_all_values, free_value_chain): Update.
11344         (release_value): Return value_ref_ptr.
11345         (release_value_or_incref): Remove.
11346         (record_latest_value, set_internalvar, clear_internalvar):
11347         Update.
11348         * stack.c (info_frame_command): Don't call value_free.
11349         * python/py-value.c (valpy_dealloc, valpy_new)
11350         (value_to_value_object): Update.
11351         * printcmd.c (do_examine): Update.
11352         * opencl-lang.c (lval_func_free_closure): Update.
11353         * mi/mi-main.c (register_changed_p): Don't call value_free.
11354         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
11355         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
11356         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
11357         value_free.
11358         * guile/scm-value.c (vlscm_free_value_smob)
11359         (vlscm_scm_from_value): Update.
11360         * frame.c (frame_register_unwind, frame_unwind_register_signed)
11361         (frame_unwind_register_unsigned, get_frame_register_bytes)
11362         (put_frame_register_bytes): Don't call value_free.
11363         * findvar.c (address_from_register): Don't call value_free.
11364         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
11365         * dwarf2loc.c (entry_data_value_free_closure)
11366         (value_of_dwarf_reg_entry, free_pieced_value_closure)
11367         (dwarf2_evaluate_loc_desc_full): Update.
11368         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11369         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11370         (~watchpoint, watch_command_1)
11371         (invalidate_bp_value_on_memory_change): Update.
11372         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
11373
11374 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
11375
11376         PR gdb/23022
11377         * warning.m4: Add -Wno-error=deprecated-register.
11378         * configure: Re-generate.
11379
11380 2018-04-05  Tom Tromey  <tom@tromey.com>
11381
11382         * linespec.h: Remove include of "vec.h".
11383
11384 2018-04-05  Tom Tromey  <tom@tromey.com>
11385
11386         * linespec.c (typep): Remove typedef.
11387         (find_methods, find_superclass_methods): Take a std::vector.
11388         (find_method): Use std::vector.
11389
11390 2018-04-05  Tom Tromey  <tom@tromey.com>
11391
11392         * utils.c (compare_strings): Remove.
11393         * utils.h (compare_strings): Remove.
11394         * objc-lang.h (find_imps): Update.
11395         * objc-lang.c (find_methods): Take a std::vector.
11396         (uniquify_strings, find_imps): Likewise.
11397         * linespec.c (find_methods): Take a std::vector.
11398         (decode_objc): Use std::vector.
11399         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
11400         a std::vector.
11401         (find_method, find_function_symbols): Use std::vector.
11402
11403 2018-04-05  Tom Tromey  <tom@tromey.com>
11404
11405         * completer.c (completion_tracker::completion_tracker): Remove
11406         cast.
11407         (completion_tracker::discard_completions): Likewise.
11408         * breakpoint.c (ambiguous_names_p): Remove cast.
11409         * ada-lang.c (_initialize_ada_language): Remove cast.
11410         * utils.h (streq): Update.
11411         (streq_hash): Add new declaration.
11412         * utils.c (streq): Return bool.
11413         (streq_hash): New function.
11414
11415 2018-04-05  Tom Tromey  <tom@tromey.com>
11416
11417         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
11418         Remove a string copy.
11419
11420 2018-04-05  Tom Tromey  <tom@tromey.com>
11421
11422         * linespec.c (filter_results): Use std::vector.
11423         (decode_line_2, decode_line_full): Update.
11424
11425 2018-04-05  Tom Tromey  <tom@tromey.com>
11426
11427         * linespec.c (canonical_to_fullform): Return std::string.
11428         (filter_results): Update.
11429         (struct decode_line_2_item): Add constructor.
11430         <fullform, displayform>: Now std::string.
11431         (decode_line_2_compare_items): Now a std::sort comparator.
11432         (decode_line_2): Update.
11433
11434 2018-04-05  Tom Tromey  <tom@tromey.com>
11435
11436         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
11437         (unexpected_linespec_error): Update.
11438         (linespec_parse_basic, parse_linespec): Update.
11439
11440 2018-04-05  Tom Tromey  <tom@tromey.com>
11441
11442         * linespec.c (linespec_parse_basic): Reindent.
11443
11444 2018-04-05  Tom Tromey  <tom@tromey.com>
11445
11446         * minsyms.h (iterate_over_minimal_symbols): Update.
11447         * minsyms.c (iterate_over_minimal_symbols): Take a
11448         gdb::function_view.
11449         * linespec.c (struct collect_minsyms): Remove.
11450         (compare_msyms): Now a std::sort comparator.
11451         (add_minsym): Add parameters.
11452         (search_minsyms_for_name): Update.  Use std::vector.
11453
11454 2018-04-03  Tom Tromey  <tom@tromey.com>
11455
11456         * mipsread.c (read_alphacoff_dynamic_symtab): Use
11457         gdb::byte_vector.
11458
11459 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
11460
11461         * MAINTAINERS (Write After Approval): Add Weimin Pan.
11462
11463 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
11464
11465         PR gdb/16959
11466         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
11467         printing static type.
11468
11469 2018-04-01  Tom Tromey  <tom@tromey.com>
11470
11471         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
11472         (rs6000_xfer_shared_libraries): Update.
11473
11474 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
11475
11476         * common/gdb_vecs.h (char_ptr): Remove.
11477         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
11478
11479 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
11480
11481         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
11482         with std::vector.
11483         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
11484
11485 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
11486
11487         * tracepoint.h (struct uploaded_tp): Initialize fields.
11488         <actions, step_actions, cmd_strings>: Change type to
11489         std::vector<char *>.
11490         * tracepoint.c (get_uploaded_tp): Allocate with new.
11491         (free_uploaded_tps): Free with delete.
11492         (parse_tracepoint_definition): Adjust to std::vector change.
11493         * breakpoint.c (read_uploaded_action): Likewise.
11494         (create_tracepoint_from_upload): Likewise.
11495         * ctf.c (ctf_write_uploaded_tp): Likewise.
11496         (SET_ARRAY_FIELD): Likewise.
11497         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
11498
11499 2018-03-30  Tom Tromey  <tom@tromey.com>
11500
11501         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
11502         std::unique_ptr.
11503         (svr4_keep_data_in_core): Update.
11504         (svr4_read_so_list): Update.
11505
11506 2018-03-30  Tom Tromey  <tom@tromey.com>
11507
11508         * windows-nat.c (handle_output_debug_string, handle_exception):
11509         Update.
11510         * target.h (target_read_string): Update.
11511         * target.c (target_read_string): Change "string" to
11512         unique_xmalloc_ptr.
11513         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
11514         Update.
11515         * solib-frv.c (frv_current_sos): Update.
11516         * solib-dsbt.c (dsbt_current_sos): Update.
11517         * solib-darwin.c (darwin_current_sos): Update.
11518         * linux-thread-db.c (inferior_has_bug): Update.
11519         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
11520         Update.  Remove alloca.
11521         * ada-lang.c (ada_main_name): Update.
11522
11523 2018-03-30  Tom Tromey  <tom@tromey.com>
11524
11525         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
11526         (struct dwo_file_deleter): New.
11527         (dwo_file_up): New typedef.
11528         (open_and_init_dwo_file): Use dwo_file_up.
11529         (free_dwo_file_cleanup): Remove.
11530
11531 2018-03-30  Tom Tromey  <tom@tromey.com>
11532
11533         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
11534         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
11535
11536 2018-03-30  Tom Tromey  <tom@tromey.com>
11537
11538         * dwarf2read.c (class free_cached_comp_units): New class.
11539         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
11540         (free_cached_comp_units): Remove function.
11541
11542 2018-03-30  Tom Tromey  <tom@tromey.com>
11543
11544         * utils.h (make_cleanup_unpush_target): Remove.
11545         * inf-ptrace.c (struct target_unpusher): New.
11546         (target_unpush_up) New typedef.
11547         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
11548         target_unpush_up.
11549         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
11550
11551 2018-03-27  Tom Tromey  <tom@tromey.com>
11552
11553         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
11554
11555 2018-03-27  Pedro Alves  <palves@redhat.com>
11556             Tom Tromey  <tom@tromey.com>
11557
11558         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
11559         destructor.  Now a class.
11560         (gdb_readline_wrapper_cleanup): Remove function.
11561         (gdb_readline_wrapper): Remove cleanups.
11562
11563 2018-03-27  Tom Tromey  <tom@tromey.com>
11564
11565         * typeprint.h (struct type_print_options) <local_typedefs,
11566         global_typedefs>: Remove "struct" keyword.
11567         (class typedef_hash_table): New class.
11568         (recursively_update_typedef_hash, add_template_parameters)
11569         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
11570         (find_typedef_in_hash): Don't declare.
11571         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
11572         (typedef_hash_table::recursively_update): Rename from
11573         recursively_update_typedef_hash.  Now a member.
11574         (typedef_hash_table::add_template_parameters): Rename from
11575         add_template_parameters.  Now a member.
11576         (typedef_hash_table::typedef_hash_table): Now a constructor;
11577         rename from create_typedef_hash.
11578         (typedef_hash_table::~typedef_hash_table): Now a destructor;
11579         rename from free_typedef_hash.
11580         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
11581         (do_free_global_table): Remove.
11582         (typedef_hash_table::typedef_hash_table): New constructor; renamed
11583         from copy_type_recursive.
11584         (create_global_typedef_table): Remove.
11585         (typedef_hash_table::find_global_typedef): Now a member of
11586         typedef_hash_table.
11587         (typedef_hash_table::find_typedef): Rename from
11588         find_typedef_in_hash; now a member.
11589         (whatis_exp): Update.
11590         * extension.h (struct ext_lang_type_printers): Add constructor and
11591         destructor.
11592         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
11593         declare.
11594         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
11595         Now a constructor; rename from start_ext_lang_type_printers.
11596         (ext_lang_type_printers): Now a destructor; rename from
11597         free_ext_lang_type_printers.
11598         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
11599         Update.
11600         (c_type_print_base_struct_union): Update.  Remove cleanups.
11601
11602 2018-03-27  Tom Tromey  <tom@tromey.com>
11603
11604         * dwarf-index-write.c: Include <cmath>.
11605
11606 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
11607
11608         * NEWS: Add entry describing new "set|show varsize-limit" command.
11609         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
11610         command.
11611         * printcmd.c (_initialize_printcmd): Add "set var" alias of
11612         "set variable".
11613
11614 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
11615
11616         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
11617         dwarf-index-write.c
11618         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
11619         * dwarf-index-common.c: New file.
11620         * dwarf-index-common.h: New file.
11621         * dwarf-index-write.c: New file.
11622         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
11623         (struct dwarf2_section_info): Move from here.
11624         (dwarf2_section_info_def): Likewise.
11625         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
11626         (offset_type): Likewise.
11627         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
11628         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
11629         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
11630         (byte_swap): Likewise.
11631         (MAYBE_SWAP): Likewise.
11632         (dwarf2_per_cu_ptr): Likewise.
11633         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
11634         (struct tu_stats): Likewise.
11635         (struct dwarf2_per_objfile): Likewise.
11636         (struct dwarf2_per_cu_data): Likewise.
11637         (struct signatured_type): Likewise.
11638         (sig_type_ptr): Likewise.
11639         (DEF_VEC_P (sig_type_ptr)): Likewise.
11640         (INDEX4_SUFFIX): Likewise.
11641         (INDEX5_SUFFIX): Likewise.
11642         (DEBUG_STR_SUFFIX): Likewise.
11643         (dwarf2_read_section): Make non-static.
11644         (mapped_index_string_hash): Move from here.
11645         (dwarf5_djb_hash): Likewise.
11646         (file_write): Likewise.
11647         (class data_buf): Likewise.
11648         (struct symtab_index_entry): Likewise.
11649         (struct mapped_symtab): Likewise.
11650         (find_slot): Likewise.
11651         (hash_expand): Likewise.
11652         (add_index_entry): Likewise.
11653         (uniquify_cu_indices): Likewise.
11654         (class c_str_view): Likewise.
11655         (class c_str_view_hasher): Likewise.
11656         (class vector_hasher): Likewise.
11657         (write_hash_table): Likewise.
11658         (psym_index_map): Likewise.
11659         (struct addrmap_index_data): Likewise.
11660         (add_address_entry): Likewise.
11661         (add_address_entry_worker): Likewise.
11662         (write_address_map): Likewise.
11663         (symbol_kind): Likewise.
11664         (write_psymbols): Likewise.
11665         (struct signatured_type_index_data): Likewise.
11666         (write_one_signatured_type): Likewise.
11667         (recursively_count_psymbols): Likewise.
11668         (recursively_write_psymbols): Likewise.
11669         (class debug_names): Likewise.
11670         (check_dwarf64_offsets): Likewise.
11671         (psyms_seen_size): Likewise.
11672         (write_gdbindex): Likewise.
11673         (write_debug_names): Likewise.
11674         (assert_file_size): Likewise.
11675         (write_psymtabs_to_index): Likewise.
11676         (save_gdb_index_command): Likewise.
11677         (_initialize_dwarf2_read): Don't register the "save gdb-index"
11678         command.
11679         * dwarf2read.h: New file.
11680
11681 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
11682
11683         PR gdb/22670
11684         * dwarf2read.c (dwarf2_physname): Do not return the demangled
11685         symbol name if the CU's language stores symbol names in linkage
11686         format.
11687         * language.h (struct language_defn)
11688         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
11689         all instances of this struct.
11690
11691 2018-03-26  Tom Tromey  <tom@tromey.com>
11692
11693         * stack.c (backtrace_command_1): Remove verbose code.
11694
11695 2018-03-26  Tom Tromey  <tom@tromey.com>
11696
11697         * python/py-framefilter.c (py_print_type): Don't catch
11698         exceptions.  Return void.
11699         (py_print_value): Likewise.
11700         (py_print_single_arg): Likewise.
11701         (enumerate_args): Don't catch exceptions.
11702         (py_print_args): Likewise.
11703         (py_print_frame): Likewise.
11704         (gdbpy_apply_frame_filter): Catch exceptions here.
11705
11706 2018-03-26  Tom Tromey  <tom@tromey.com>
11707
11708         * stack.c (_initialize_stack): Remove trailing newlines from help
11709         text.  Add "Usage" line to "backtrace" help.
11710
11711 2018-03-26  Tom Tromey  <tom@tromey.com>
11712
11713         PR python/16486:
11714         * python/py-framefilter.c (py_print_args): Call wrap_hint.
11715
11716 2018-03-26  Tom Tromey  <tom@tromey.com>
11717
11718         * python/py-framefilter.c (py_print_single_arg): Return
11719         EXT_LANG_BT_ERROR from catch.
11720
11721 2018-03-26  Tom Tromey  <tom@tromey.com>
11722
11723         PR backtrace/15584:
11724         * stack.c (backtrace_command_1): Move some code into no-filters
11725         "if".
11726
11727 2018-03-26  Tom Tromey  <tom@tromey.com>
11728
11729         * python/py-framefilter.c (throw_quit_or_print_exception): New
11730         function.
11731         (gdbpy_apply_frame_filter): Use it.
11732
11733 2018-03-26  Tom Tromey  <tom@tromey.com>
11734
11735         PR cli/17716:
11736         * python/py-framefilter.c (py_print_type, py_print_value)
11737         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
11738         RETURN_MASK_ERROR.
11739
11740 2018-03-26  Tom Tromey  <tom@tromey.com>
11741
11742         * python/py-framefilter.c (enumerate_args): Use
11743         gdb::unique_xmalloc_ptr.
11744
11745 2018-03-26  Tom Tromey  <tom@tromey.com>
11746
11747         * python/py-framefilter.c (py_print_frame): Return
11748         EXT_LANG_BT_OK.
11749         (gdbpy_apply_frame_filter): Update comment.
11750         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
11751         Remove.
11752         <EXT_LANG_BT_NO_FILTERS>: Change value.
11753
11754 2018-03-26  Tom Tromey  <tom@tromey.com>
11755
11756         PR backtrace/15582:
11757         * stack.c (backtrace_command): Parse "hide" argument.
11758         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
11759         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
11760         constant.
11761
11762 2018-03-26  Tom Tromey  <tom@tromey.com>
11763
11764         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
11765         add "flags".
11766         (backtrace_command): Remove "fulltrace", add "flags".
11767
11768 2018-03-26  Tom Tromey  <tom@tromey.com>
11769
11770         * stack.c (backtrace_command): Rewrite command line parsing.
11771
11772 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
11773
11774         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
11775
11776 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
11777
11778         * filename-seen-cache.h: Add include guard.
11779
11780 2018-03-26  Keith Seitz  <keiths@redhat.com>
11781
11782         * symfile.c (place_section): Remove "struct" from section_addr_info
11783         in comment.
11784         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
11785         "struct" keyword from section_addr_info.
11786
11787 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
11788
11789         * regformats/regdef.h (reg): Add constructors.
11790
11791 2018-03-25  Pedro Alves  <palves@redhat.com>
11792
11793         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
11794         if then/else bodies in var_func_name extraction.
11795
11796 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
11797
11798         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
11799         lookup_minimal_symbol() to find symbol entry.
11800         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
11801
11802 2018-03-23  Keith Seitz  <keiths@redhat.com>
11803
11804         PR c++/22968
11805         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
11806         nested type definitions for C++, too.
11807
11808 2018-03-23  Tom Tromey  <tom@tromey.com>
11809
11810         * machoread.c (struct oso_el): Add a constructor.  Don't define as
11811         a typedef.
11812         (macho_register_oso): Remove.
11813         (macho_symtab_read): Take a std::vector.
11814         (oso_el_compare_name): Now a std::sort comparator.
11815         (macho_symfile_read_all_oso): Take a std::vector.
11816         (macho_symfile_read): Use std::vector.  Remove cleanups.
11817
11818 2018-03-22  Tom Tromey  <tom@tromey.com>
11819
11820         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
11821         (record_full_goto_bookmark): Use std::string.
11822
11823 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11824
11825         PR tdep/18295
11826         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
11827         a single mask.
11828
11829 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11830
11831         * rs6000-tdep.c (store_insn_p): New function.
11832         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
11833         and cr_reg to their unshifted values. Use store_insn_p to
11834         match LR saves using either R1 or fdata->alloca_reg. Use
11835         store_insn_p to match CR saves. Set alloca_reg_offset
11836         when alloca_reg and framep are set. Remove lr_reg shift
11837         when assigning to fdata->lr_register.
11838
11839 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11840
11841         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
11842         command line args instead of emitting a warning.
11843
11844 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
11845
11846         * tracepoint.h (struct static_tracepoint_marker): Initialize
11847         fields, define default constructor, move constructor and move
11848         assignment, disable the rest.
11849         <str_id, extra>: Make std::string.
11850         (release_static_tracepoint_marker): Remove.
11851         (free_current_marker): Remove.
11852         * tracepoint.c (free_current_marker): Remove.
11853         (parse_static_tracepoint_marker_definition): Adjust to
11854         std::string, use new hex2str overload.
11855         (release_static_tracepoint_marker): Remove.
11856         (print_one_static_tracepoint_marker): Get marker by reference
11857         and adjust to std::string.
11858         (info_static_tracepoint_markers_command): Adjust to std::vector
11859         changes
11860         * target.h (static_tracepoint_marker_p): Remove typedef.
11861         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
11862         (struct target_ops) <to_static_tracepoint_marker_at>: Return
11863         bool.
11864         <to_static_tracepoint_markers_by_strid>: Return std::vector.
11865         * target-debug.h
11866         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
11867         (target_debug_print_std_vector_static_tracepoint_marker): New.
11868         (target_debug_print_struct_static_tracepoint_marker_p): Rename
11869         to...
11870         (target_debug_print_static_tracepoint_marker_p): ... this.
11871         * target-delegates.c: Re-generate.
11872         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
11873         Make std::string.
11874         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
11875         (decode_static_tracepoint_spec): Adjust to std::vector.
11876         (tracepoint_print_one_detail): Adjust to std::string.
11877         (strace_marker_decode_location): Adjust to std::string.
11878         (update_static_tracepoint): Adjust to std::string, remove call
11879         to release_static_tracepoint_marker.
11880         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
11881         Adjust to std::vector.
11882         * remote.c (remote_static_tracepoint_marker_at): Return bool.
11883         (remote_static_tracepoint_markers_by_strid): Adjust to
11884         std::vector.
11885         * common/rsp-low.h (hex2str): New overload with explicit count
11886         of bytes.
11887         * common/rsp-low.c (hex2str): New overload with explicit count
11888         of bytes.
11889         * unittests/rsp-low-selftests.c (test_hex2str): New function.
11890         (_initialize_rsp_low_selftests): Add test_hex2str test.
11891         * unittests/tracepoint-selftests.c
11892         (test_parse_static_tracepoint_marker_definition): Adjust to
11893         std::string.
11894
11895 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
11896
11897         * tracepoint.c (parse_static_tracepoint_marker_definition):
11898         Consider case where the definition is followed by more
11899         definitions.
11900         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11901         tracepoint-selftests.c.
11902         * unittests/tracepoint-selftests.c: New.
11903
11904 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11905
11906         * MAINTAINERS (Write After Approval): Add Pedro Franco de
11907         Carvalho.
11908
11909 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
11910
11911         * symtab.c (find_pc_sect_line): fixed indentation.
11912
11913 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
11914
11915         * symtab.c (find_pc_sect_line): now uses binary search.
11916
11917 2018-03-19  Tom Tromey  <tom@tromey.com>
11918
11919         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
11920         "IDENT" production.
11921
11922 2018-03-19  Pedro Alves  <palves@redhat.com>
11923             Tom Tromey  <tom@tromey.com>
11924
11925         * unittests/observable-selftests.c: New file.
11926         * common/observable.h: New file.
11927         * observable.h: New file.
11928         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
11929         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
11930         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
11931         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
11932         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
11933         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
11934         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
11935         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
11936         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
11937         python/py-breakpoint.c, python/py-finishbreakpoint.c,
11938         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
11939         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
11940         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
11941         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
11942         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
11943         tui/tui-interp.c, valops.c: Update all users.
11944         * tui/tui-hooks.c (tui_bp_created_observer)
11945         (tui_bp_deleted_observer, tui_bp_modified_observer)
11946         (tui_inferior_exit_observer, tui_before_prompt_observer)
11947         (tui_normal_stop_observer, tui_register_changed_observer):
11948         Remove.
11949         (tui_observers_token): New global.
11950         (attach_or_detach, tui_attach_detach_observers): New functions.
11951         (tui_install_hooks, tui_remove_hooks): Use
11952         tui_attach_detach_observers.
11953         * record-btrace.c (record_btrace_thread_observer): Remove.
11954         (record_btrace_thread_observer_token): New global.
11955         * observer.sh: Remove.
11956         * observer.c: Rename to observable.c.
11957         * observable.c (namespace gdb_observers): Define new objects.
11958         (observer_debug): Move into gdb_observers namespace.
11959         (struct observer, struct observer_list, xalloc_observer_list_node)
11960         (xfree_observer_list_node, generic_observer_attach)
11961         (generic_observer_detach, generic_observer_notify): Remove.
11962         (_initialize_observer): Update.
11963         Don't include observer.inc.
11964         * Makefile.in (generated_files): Remove observer.h, observer.inc.
11965         (clean mostlyclean): Likewise.
11966         (observer.h, observer.inc): Remove targets.
11967         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
11968         (COMMON_SFILES): Use observable.c, not observer.c.
11969         * .gitignore: Remove observer.h.
11970
11971 2018-03-18  Tom Tromey  <tom@tromey.com>
11972
11973         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
11974         gdb::def_vector.
11975         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
11976
11977 2018-03-17  Tom Tromey  <tom@tromey.com>
11978
11979         * auto-load.c (auto_load_objfile_script_1): Use std::string.
11980
11981 2018-03-17  Tom Tromey  <tom@tromey.com>
11982
11983         * target.c (class scoped_target_fd): New.
11984         (target_fileio_close_cleanup): Remove.
11985         (target_fileio_read_alloc_1): Use scoped_target_fd.
11986
11987 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
11988
11989         * silent-rules.mk: New.
11990         * Makefile.in: Include silent-rules.mk
11991         (srcdir, VPATH, top_srcdir): Move up.
11992         (COMPILE): Add ECHO_CXX.
11993         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
11994         (init.c): Add ECHO_INIT_C.
11995         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
11996         (version.c): Add ECHO_GEN.
11997         (printcmd.o): Add ECHO_CXX.
11998         (target-float.o): Add ECHO_CXX.
11999         (ada-exp.o): Add ECHO_CXX.
12000         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
12001         (insight$(EXEEXT)): Add ECHO_CXXLD.
12002         * gnulib/configure.ac: Add AM_SILENT_RULES.
12003         * gnulib/aclocal.m4: Re-generate.
12004         * gnulib/configure: Re-generate.
12005         * gnulib/import/Makefile.in: Re-generate.
12006
12007 2018-03-16  Tom Tromey  <tom@tromey.com>
12008
12009         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
12010         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
12011         * utils.c (do_free_section_addr_info)
12012         (make_cleanup_free_section_addr_info): Remove.
12013         * symfile.h (struct other_sections): Add constructor.
12014         (struct section_addr_info): Remove.
12015         (section_addr_info): New typedef.
12016         (struct sym_fns) <sym_offsets>: Change type of parameter.
12017         (build_section_addr_info_from_objfile)
12018         (relative_addr_info_to_section_offsets, addr_info_make_relative)
12019         (default_symfile_offsets, symbol_file_add)
12020         (symbol_file_add_from_bfd)
12021         (build_section_addr_info_from_section_table): Update.
12022         (alloc_section_addr_info, free_section_addr_info): Don't declare.
12023         * symfile.c (alloc_section_addr_info): Remove.
12024         (build_section_addr_info_from_section_table): Change return type.
12025         Update.
12026         (build_section_addr_info_from_bfd)
12027         (build_section_addr_info_from_objfile): Likewise.
12028         (free_section_addr_info): Remove.
12029         (relative_addr_info_to_section_offsets): Change type of "addrs".
12030         (addrs_section_compar): Now a std::sort comparator.
12031         (addrs_section_sort): Change return type.
12032         (addr_info_make_relative): Change type of "addrs".  Update.
12033         (default_symfile_offsets, syms_from_objfile_1)
12034         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
12035         (symbol_file_add_separate): Update.
12036         (symbol_file_add): Change type of "addrs".  Update.
12037         (add_symbol_file_command): Update.  Remove cleanups.
12038         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
12039         cleanups.
12040         * symfile-debug.c (debug_sym_offsets): Change type of "info".
12041         * solib.c (solib_read_symbols): Update.
12042         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
12043         * machoread.c (macho_symfile_offsets): Update.
12044         * jit.c (jit_bfd_try_read_symtab): Update.
12045
12046 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
12047
12048         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12049         unittests/utils-selftests.c.
12050         * unittests/utils-selftests.c: New file.
12051
12052 2018-03-14  Tom Tromey  <tom@tromey.com>
12053
12054         PR cli/14977:
12055         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
12056         for NULL.
12057
12058 2018-03-14  Tom Tromey  <tom@tromey.com>
12059
12060         PR cli/19918:
12061         * printcmd.c (printf_pointer): Allow "-" in format.
12062
12063 2018-03-14  Tom Tromey  <tom@tromey.com>
12064
12065         * printcmd.c (_initialize_printcmd): Add usage to printf.
12066
12067 2018-03-14  Yao Qi  <qiyao@sourceware.org>
12068
12069         * MAINTAINERS: Update my email address.
12070
12071 2018-03-13  Tom Tromey  <tom@tromey.com>
12072
12073         * machoread.c (macho_check_dsym): Change filenamep to a
12074         std::string*.
12075         (macho_symfile_read): Update.
12076         * symfile.c (load_command): Use std::string.
12077
12078 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
12079
12080         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
12081         to error message string.
12082         (riscv_register_name): Use xsnprintf instead of sprintf.
12083         (riscv_insn::fetch_instruction): Use gdb_assert instead of
12084         internal_error.
12085         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
12086         error.
12087         (riscv_push_dummy_call): Likewise.
12088
12089 2018-03-12  Tom Tromey  <tom@tromey.com>
12090
12091         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
12092         Use gdb::byte_vector.
12093         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
12094
12095 2018-03-12  Yao Qi  <yao.qi@linaro.org>
12096
12097         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
12098         parameter type to readable_regcache.
12099         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
12100         the declaration.
12101
12102 2018-03-11  Tom Tromey  <tom@tromey.com>
12103
12104         * dwarf2read.c (struct nextfield): Add initializers.
12105         (struct nextfnfield): Remove.
12106         (struct fnfieldlist): Add initializers.  Remove "length" and
12107         "head", use std::vector.
12108         (struct decl_field_list): Remove.
12109         (struct field_info): Add initializers.
12110         <fields, baseclasses>: Now std::vector.
12111         <nbaseclasses, nfnfields, typedef_field_list_count,
12112         nested_types_list_count>: Remove.
12113         (dwarf2_add_field, dwarf2_add_type_defn)
12114         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
12115         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
12116         (process_structure_scope): Update.
12117
12118 2018-03-11  Tom Tromey  <tom@tromey.com>
12119
12120         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
12121         for use by std::sort.
12122         (build_type_psymtabs_1): Use std::vector.
12123
12124 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
12125
12126         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
12127         and LIBMPFR in the printed configuration.
12128
12129 2018-03-08  Tom Tromey  <tom@tromey.com>
12130
12131         * source.c (get_filename_and_charpos): Use scoped_fd.
12132         * nto-procfs.c (procfs_open_1): Use scoped_fd.
12133         (procfs_pidlist): Likewise.
12134         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
12135         (iterate_over_mappings): Likewise.
12136
12137 2018-03-08  Tom Tromey  <tom@tromey.com>
12138
12139         * infcall.c (struct call_return_meta_info)
12140         <stack_temporaries_enabled>: Remove.
12141         (get_call_return_value, call_function_by_hand_dummy): Update.
12142         * thread.c (disable_thread_stack_temporaries): Remove.
12143         (enable_thread_stack_temporaries): Remove.
12144         (thread_stack_temporaries_enabled_p): Return bool.
12145         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
12146         (get_last_thread_stack_temporary): Update.
12147         * eval.c (evaluate_subexp): Update.
12148         * gdbthread.h (class enable_thread_stack_temporaries): Now a
12149         class, not a function.
12150         (value_ptr, value_vec): Remove typedefs.
12151         (class thread_info) <stack_temporaries_enabled>: Now bool.
12152         <stack_temporaries>: Now a std::vector.
12153         (thread_stack_temporaries_enabled_p)
12154         (value_in_thread_stack_temporaries): Return bool.
12155
12156 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
12157
12158         * remote.c (putpkt_binary): Fix omitted bytes reporting.
12159         (getpkt_or_notif_sane_1): Likewise.
12160
12161 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12162
12163         * build-id.c (build_id_to_debug_bfd): Use std::string.
12164
12165 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12166
12167         * build-id.c (find_separate_debug_file_by_buildid): Return
12168         std::string.
12169         * build-id.h (find_separate_debug_file_by_buildid): Return
12170         std::string.
12171         * coffread.c (coff_symfile_read): Adjust to std::string.
12172         * elfread.c (elf_symfile_read): Adjust to std::string.
12173         * symfile.c (separate_debug_file_exists): Change parameter to
12174         std::string.
12175         (find_separate_debug_file): Return std::string.
12176         (find_separate_debug_file_by_debuglink): Return std::string.
12177         * symfile.h (find_separate_debug_file_by_debuglink): Return
12178         std::string.
12179
12180 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12181
12182         * common/xml-utils.c (xml_escape_text): Move code to...
12183         (xml_escape_text_append): ... this new function.
12184         * common/xml-utils.h (xml_escape_text_append): New declaration.
12185         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
12186         New function.
12187         (_initialize_xml_utils): register test_xml_escape_text_append as
12188         a selftest.
12189
12190 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
12191
12192         * defs.h: Remove MAX_REGISTER_SIZE.
12193         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
12194         asserts.
12195         * python/py-unwind.c (pyuw_sniffer): Likewise.
12196
12197 2018-03-07  Tom Tromey  <tom@tromey.com>
12198
12199         * linux-tdep.c (linux_info_proc): Update.
12200         * target.h (struct target_ops) <to_fileio_readlink>: Return
12201         optional<string>.
12202         (target_fileio_readlink): Return optional<string>.
12203         * remote.c (remote_hostio_readlink): Return optional<string>.
12204         * inf-child.c (inf_child_fileio_readlink): Return
12205         optional<string>.
12206         * target.c (target_fileio_readlink): Return optional<string>.
12207
12208 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
12209
12210         * regcache.c (cooked_read_test): Add riscv to the list of
12211         architectures that have a save_reggroup.
12212
12213 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12214
12215         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
12216         value is not a dynamic class object.
12217
12218 2018-03-06  Tom Tromey  <tom@tromey.com>
12219
12220         * rust-exp.y: Formatting fixes.
12221
12222 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12223
12224         * riscv-tdep.c (riscv_register_name): Remove target description
12225         support.
12226         (riscv_gdbarch_init): Remove target description check.
12227
12228 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12229
12230         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
12231         comment.
12232         * riscv-tdep.h: Likewise.
12233
12234 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12235
12236         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
12237         (riscv_pseudo_register_write): Delete.
12238         (riscv_gdbarch_init): Remove all use of pseudo registers.
12239
12240 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12241
12242         * record-btrace.c (btrace_print_lines): Replace cleanup
12243         parameter with RAII equivalents.
12244         (btrace_insn_history): Replace cleanup with RAII equivalents.
12245         * ui-out.h (make_cleanup_ui_out_list_begin_end,
12246         make_cleanup_ui_out_tuple_begin_end): Remove.
12247         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
12248         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
12249         make_cleanup_ui_out_list_begin_end): Remove.
12250
12251 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12252
12253         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
12254         parameter types to std::vector.  Use bool.
12255         (record_btrace_wait): Replace VEC(tp_t) with
12256         std::vector<thread_info *>.
12257         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
12258
12259 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12260
12261         * record-btrace.c (record_btrace_disable_callback): Remove.
12262         (struct scoped_btrace_disable): New.
12263         (record_btrace_open): Use scoped_btrace_disable.
12264
12265 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12266
12267         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
12268         reading values from registers.
12269
12270 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12271
12272         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
12273         where appropriate.
12274
12275 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12276
12277         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
12278         change parameter type.  Use GDB's print functions, and use
12279         core_addr_to_string where appropriate.
12280         (riscv_push_dummy_call): Use core_addr_to_string where
12281         appropriate, update call to riscv_print_arg_location, and reindent
12282         a few lines.
12283         (riscv_return_value): Update call to riscv_print_arg_location.
12284
12285 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12286             Tim Newsome <tim@sifive.com>
12287             Albert Ou <a0u@eecs.berkeley.edu>
12288             Darius Rad <darius@bluespec.com>
12289
12290         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
12291         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
12292         (ALLDEPFILES): Add riscv-tdep.c
12293         * configure.tgt: Add riscv support.
12294         * riscv-tdep.c: New file.
12295         * riscv-tdep.h: New file.
12296         * NEWS: Mention new target.
12297         * MAINTAINERS: Add entry for riscv.
12298
12299 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12300
12301         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
12302         fields within aggregates.
12303
12304 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
12305
12306         * record-btrace.c (btrace_print_lines): Change type of flags to
12307         gdb_disassembly_flags.
12308
12309 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12310
12311         * fbsd-nat.c: Include "inf-ptrace.h".
12312         (USE_SIGTRAP_SIGINFO): Conditionally define.
12313         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
12314         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
12315         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
12316         function.
12317         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
12318         Likewise.
12319         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
12320         Likewise.
12321         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
12322         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
12323         "supports_stopped_by_hw_breakpoint" target methods.
12324
12325 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12326
12327         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
12328         * fbsd-nat.c (debug_fbsd_nat): New variable.
12329         (show_fbsd_nat_debug): New function.
12330         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
12331         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
12332
12333 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12334
12335         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
12336         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
12337         prototype.
12338         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
12339         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
12340         method.
12341
12342 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12343
12344         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
12345         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
12346
12347 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12348
12349         * charset.c (struct charset_vector): New.
12350         (charsets): Change type to charset_vector.
12351         (find_charset_names): Adjust.
12352         (add_one): Adjust.
12353         (_initialize_charset): Adjust.
12354
12355 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12356
12357         * progspace.h (struct program_space) <deleted_solibs>: Change
12358         type to std::vector<std::string>.
12359         * progspace.c (clear_program_space_solib_cache): Adjust.
12360         * breakpoint.c (print_solib_event): Adjust.
12361         (check_status_catch_solib): Adjust.
12362         * solib.c (update_solib_list): Adjust.
12363         * ui-out.h (class ui_out) <field_string>: New overload.
12364         * ui-out.c (ui_out::field_string): New overload.
12365
12366 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12367
12368         * progspace.h (struct program_space): Add constructor and
12369         destructor, initialize fields.
12370         (add_program_space): Remove.
12371         * progspace.c (add_program_space): Rename to...
12372         (program_space::program_space): ... this.
12373         (release_program_space): Rename to...
12374         (program_space::~program_space): ... this.
12375         (delete_program_space): Use delete to delete program_space.
12376         (initialize_progspace): Use new to allocate program_space.
12377         * inferior.c (add_inferior_with_spaces): Likewise.
12378         (clone_inferior_command): Likewise.
12379         * infrun.c (follow_fork_inferior): Likewise.
12380         (handle_vfork_child_exec_or_exit): Likewise.
12381
12382 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12383
12384         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
12385         (delim_string_to_char_ptr_vec): Return std::vector of
12386         gdb::unique_xmalloc_ptr.
12387         (dirnames_to_char_ptr_vec_append): Take std::vector of
12388         gdb::unique_xmalloc_ptr.
12389         (dirnames_to_char_ptr_vec): Return std::vector of
12390         gdb::unique_xmalloc_ptr.
12391         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
12392         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
12393         (delim_string_to_char_ptr_vec): Return an std::vector of
12394         gdb::unique_xmalloc_ptr, adjust the code.
12395         (dirnames_to_char_ptr_vec_append): Take an std::vector of
12396         gdb::unique_xmalloc_ptr, adjust the code.
12397         (dirnames_to_char_ptr_vec): Return an std::vector of
12398         gdb::unique_xmalloc_ptr, adjust the code.
12399         * auto-load.c (auto_load_safe_path_vec): Change type to
12400         std::vector of gdb::unique_xmalloc_ptr.
12401         (auto_load_expand_dir_vars): Return an std::vector of
12402         gdb::unique_xmalloc_ptr, adjust the code.
12403         (auto_load_safe_path_vec_update): Adjust.
12404         (filename_is_in_auto_load_safe_path_vec): Adjust.
12405         (auto_load_objfile_script_1): Adjust.
12406         * build-id.c (build_id_to_debug_bfd): Adjust.
12407         * linux-thread-db.c (thread_db_load_search): Adjust.
12408         * source.c (add_path): Adjust.
12409         (openp): Adjust.
12410         * symfile.c (find_separate_debug_file): Adjust.
12411         * utils.c (do_free_char_ptr_vec): Remove.
12412         (make_cleanup_free_char_ptr_vec): Remove.
12413
12414 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
12415
12416         PR gdb/22907
12417         * common/pathstuff.c: Conditionally include "<windows.h>".
12418
12419 2018-03-01  Georg Sauthoff  <mail@georg.so>
12420
12421         PR gdb/22888
12422         * gcore.in: Quote variables and switch interpreter to bash.
12423
12424 2018-03-01  Tom Tromey  <tom@tromey.com>
12425
12426         * dwarf2read.c (alloc_discriminant_info): Fix default_index
12427         assertion.  Add assertion for discriminant_index.
12428         (quirk_rust_enum): Use correct base type name in univariant case.
12429
12430 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
12431
12432         * record.c (get_call_history_modifiers): Return a
12433         record_print_flags.
12434         (cmd_record_call_history): Adjust.
12435         * record-btrace.c (record_btrace_call_history): Adjust.
12436         (record_btrace_call_history_range): Adjust.
12437         (record_btrace_call_history_from): Adjust.
12438         * target-debug.h (target_debug_print_record_print_flags): New.
12439         * target-delegates.c: Re-generate.
12440         * target.c (target_call_history): Change flags type.
12441         (target_call_history_from): Likewise.
12442         (target_call_history_range): Likewise.
12443         * target.h (struct target_ops) <target_call_history>: Likewise.
12444         (target_call_history_from): Likewise.
12445         (target_call_history_range): Likewise.
12446
12447 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
12448             Simon Marchi  <simon.marchi@polymtl.ca>
12449
12450         * common/common-utils.c: Include "sys/stat.h".
12451         (is_regular_file): Move here from "source.c"; change return
12452         type to "bool".
12453         * common/common-utils.h (is_regular_file): New prototype.
12454         * common/pathstuff.c (contains_dir_separator): New function.
12455         * common/pathstuff.h (contains_dir_separator): New prototype.
12456         * source.c: Don't include "sys/stat.h".
12457         (is_regular_file): Move to "common/common-utils.c".
12458
12459 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
12460
12461         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
12462         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
12463         * auto-load.c: Include "common/pathstuff.h".
12464         * common/common-def.h (current_directory): Move here.
12465         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
12466         function.
12467         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
12468         prototype.
12469         * common/pathstuff.c: New file.
12470         * common/pathstuff.h: New file.
12471         * compile/compile.c: Include "common/pathstuff.h".
12472         * defs.h (current_directory): Move to "common/common-defs.h".
12473         * dwarf2read.c: Include "common/pathstuff.h".
12474         * exec.c: Likewise.
12475         * guile/scm-safe-call.c: Likewise.
12476         * linux-thread-db.c: Likewise.
12477         * main.c: Likewise.
12478         * nto-tdep.c: Likewise.
12479         * objfiles.c: Likewise.
12480         * source.c: Likewise.
12481         * symtab.c: Likewise.
12482         * utils.c: Include "common/pathstuff.h".
12483         (gdb_realpath): Move to "common/pathstuff.c".
12484         (gdb_realpath_keepfile): Likewise.
12485         (gdb_abspath): Likewise.
12486         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
12487         (gdb_realpath_keepfile): Likewise.
12488         (gdb_abspath): Likewise.
12489
12490 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
12491
12492         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
12493         wildcard process pid for super_resume for kernels with a
12494         specific bug.
12495
12496 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
12497
12498         * compile/compile.c (get_args): Add additional comments
12499         explaining function.
12500
12501 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
12502             Tom Tromey  <tom@tromey.com>
12503
12504         * target.h (memory_write_request_s): Remove typedef.  Don't define
12505         VEC.
12506         (target_write_memory_blocks): Change argument to std::vector.
12507         (struct memory_write_request): Add constructor.
12508         * target-memory.c (compare_block_starting_address): Return bool.
12509         Change argument types.
12510         (claim_memory): Change arguments to use std::vector.
12511         (split_regular_and_flash_blocks, blocks_to_erase)
12512         (compute_garbled_blocks): Likewise.
12513         (cleanup_request_data, cleanup_write_requests_vector): Remove.
12514         (target_write_memory_blocks): Change argument to std::vector.
12515         * symfile.c (struct load_section_data): Add constructor and
12516         destructor.  Use std::vector for "requests".
12517         (struct load_progress_data): Add initializers.
12518         (load_section_callback): Update.  Use "new".
12519         (clear_memory_write_data): Remove.
12520         (generic_load): Update.
12521
12522 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
12523
12524         * arch/aarch64.h: Use common/tdesc.h.
12525
12526 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
12527
12528         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
12529         architecture with a 64-bit ABI.
12530
12531 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
12532
12533         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
12534         ahead of target description loading.
12535
12536 2018-02-26  Tom Tromey  <tom@tromey.com>
12537
12538         * stack.c (backtrace_command_1): Update.
12539         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
12540         of "flags".
12541         * python/py-framefilter.c (py_print_frame)
12542         (gdbpy_apply_frame_filter): Change type of "flags".
12543         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
12544         of "flags".
12545         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
12546         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
12547         * extension.h (enum frame_filter_flag): Rename from
12548         frame_filter_flags.
12549         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
12550         (apply_ext_lang_frame_filter): Change type of "flags".
12551         * extension.c (apply_ext_lang_frame_filter): Change type of
12552         "flags".
12553         * extension-priv.h (struct extension_language_ops)
12554         <apply_frame_filter>: Change type of "flags".
12555
12556 2018-02-26  Tom Tromey  <tom@tromey.com>
12557
12558         PR python/16497:
12559         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
12560         off-by-one in py_end computation.
12561         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
12562         PRINT_MORE_FRAMES.
12563         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
12564         constant.
12565
12566 2018-02-26  Tom Tromey  <tom@tromey.com>
12567
12568         * dwarf2read.c (struct variant_field): New.
12569         (struct nextfield) <variant>: New field.
12570         (dwarf2_add_field): Handle DW_TAG_variant_part.
12571         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
12572         discriminated union.
12573         (read_structure_type): Handle DW_TAG_variant_part.
12574         (handle_struct_member_die): New function, extracted from
12575         process_structure_scope.  Handle DW_TAG_variant.
12576         (process_structure_scope): Handle discriminated unions.  Call
12577         handle_struct_member_die.
12578
12579 2018-02-26  Tom Tromey  <tom@tromey.com>
12580
12581         * rust-lang.h (rust_last_path_segment): Declare.
12582         * rust-lang.c (rust_last_path_segment): Now public.  Change
12583         contract.
12584         (struct disr_info): Remove.
12585         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
12586         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
12587         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
12588         (rust_enum_p, rust_enum_variant): New function.
12589         (rust_underscore_fields): Remove "offset" parameter.
12590         (rust_print_enum): New function.
12591         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
12592         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
12593         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
12594         enums.
12595         (rust_internal_print_type): New function, from rust_print_type.
12596         Remove enum code.
12597         (rust_print_type): Call rust_internal_print_type.
12598         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
12599         Update enum handling.
12600         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
12601         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
12602         (rust_union_quirks): New functions.
12603         (process_full_comp_unit, process_full_type_unit): Call
12604         rust_union_quirks.
12605         (process_structure_scope): Update rust_unions if necessary.
12606
12607 2018-02-26  Tom Tromey  <tom@tromey.com>
12608
12609         * value.h (value_union_variant): Declare.
12610         * valops.c (value_union_variant): New function.
12611         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
12612         (struct discriminant_info): New.
12613         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
12614         enumerator.
12615         (struct main_type) <flag_discriminated_union>: New field.
12616
12617 2018-02-26  Tom Tromey  <tom@tromey.com>
12618
12619         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12620         unittests/unpack-selftests.c.
12621         * unittests/unpack-selftests.c: New file.
12622         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
12623
12624 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12625
12626         * dwarf2read.c (struct partial_die_info) <read>: New method.
12627         (read_partial_die): Remove the declaration.
12628         (load_partial_dies): Update.
12629         (partial_die_info::partial_die_info):
12630         (read_partial_die): Change it to partial_die_info::read.
12631
12632 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12633
12634         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
12635         (fixup_partial_die): Remove declaration.
12636         (scan_partial_symbols): Update.
12637         (partial_die_parent_scope): Likewise.
12638         (partial_die_full_name): Likewise.
12639         (fixup_partial_die): Change it to partial_die_info::fixup.
12640
12641 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12642
12643         * dwarf2read.c (read_partial_die): Update the declaration.
12644         (load_partial_dies): Caller update.
12645         (read_partial_die): Remove one argument abbrev_len.
12646
12647 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12648
12649         * dwarf2read.c (struct partial_die_info): Add ctor, delete
12650         assignment operator.
12651         (load_partial_dies): Use ctor and copy ctor.
12652         (read_partial_die): Update.
12653         (dwarf2_cu::find_partial_die): Use ctor.
12654
12655 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12656
12657         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
12658         (find_partial_die_in_comp_unit): Change it to
12659         dwarf2_cu::find_partial_die.
12660         (find_partial_die): Update.
12661
12662 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12663
12664         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
12665         is NULL.
12666
12667 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12668
12669         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
12670
12671 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
12672
12673         * arch/amd64.h: Use common/tdesc.h.
12674         * arch/i386.c: Likewise.
12675         * arch/i386.h: Likewise.
12676         * arch/tic6x.c: Likewise.
12677         * arch/tdesc.h: Move file from here...
12678         * common/tdesc.h: ...to here.
12679         * features/aarch64-core.c: Regenerate.
12680         * features/aarch64-fpu.c: Regenerate.
12681         * features/i386/32bit-avx.c: Regenerate.
12682         * features/i386/32bit-avx512.c: Regenerate.
12683         * features/i386/32bit-core.c: Regenerate.
12684         * features/i386/32bit-linux.c: Regenerate.
12685         * features/i386/32bit-mpx.c: Regenerate.
12686         * features/i386/32bit-pkeys.c: Regenerate.
12687         * features/i386/32bit-sse.c: Regenerate.
12688         * features/i386/64bit-avx.c: Regenerate.
12689         * features/i386/64bit-avx512.c: Regenerate.
12690         * features/i386/64bit-core.c: Regenerate.
12691         * features/i386/64bit-linux.c: Regenerate.
12692         * features/i386/64bit-mpx.c: Regenerate.
12693         * features/i386/64bit-pkeys.c: Regenerate.
12694         * features/i386/64bit-segments.c: Regenerate.
12695         * features/i386/64bit-sse.c: Regenerate.
12696         * features/i386/x32-core.c: Regenerate.
12697         * features/tic6x-c6xp.c: Regenerate.
12698         * features/tic6x-core.c: Regenerate.
12699         * features/tic6x-gp.c: Regenerate.
12700         * target-descriptions.c: Use common/tdesc.h.
12701         * target-descriptions.h: Likewise.
12702
12703 2018-02-24  Tom Tromey  <tom@tromey.com>
12704
12705         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
12706         (try_thread_db_load_from_dir, thread_db_load_search): Use
12707         std::string.
12708         (info_auto_load_libthread_db_compare): Return bool.  Change
12709         argument types.
12710         (info_auto_load_libthread_db): Use std::vector, std::string.
12711         Remove cleanups.
12712
12713 2018-02-24  Tom Tromey  <tom@tromey.com>
12714
12715         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
12716         std::string.
12717         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
12718         std::string*.
12719         * gdbarch.c: Rebuild.
12720         * gdbarch.h: Rebuild.
12721         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
12722         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
12723         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
12724         std::string*.
12725
12726 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
12727
12728         * gdbtypes.h (sect_offset): Change type to uint64_t.
12729         (sect_offset_str): New function.
12730         * dwarf2read.c (create_addrmap_from_aranges): Use
12731         sect_offset_str.
12732         (error_check_comp_unit_head): Likewise.
12733         (create_debug_type_hash_table): Likewise.
12734         (read_cutu_die_from_dwo): Likewise.
12735         (init_cutu_and_read_dies): Likewise.
12736         (init_cutu_and_read_dies_no_follow): Likewise.
12737         (process_psymtab_comp_unit_reader): Likewise.
12738         (partial_die_parent_scope): Likewise.
12739         (peek_die_abbrev): Likewise.
12740         (process_queue): Likewise.
12741         (dwarf2_physname): Likewise.
12742         (read_namespace_alias): Likewise.
12743         (read_import_statement): Likewise.
12744         (create_dwo_cu_reader): Likewise.
12745         (create_cus_hash_table): Likewise.
12746         (lookup_dwo_cutu): Likewise.
12747         (inherit_abstract_dies): Likewise.
12748         (read_func_scope): Likewise.
12749         (read_call_site_scope): Likewise.
12750         (dwarf2_add_member_fn): Likewise.
12751         (read_common_block): Likewise.
12752         (read_module_type): Likewise.
12753         (read_typedef): Likewise.
12754         (read_subrange_type): Likewise.
12755         (load_partial_dies): Likewise.
12756         (read_partial_die): Likewise.
12757         (find_partial_die): Likewise.
12758         (read_str_index): Likewise.
12759         (dwarf2_string_attr): Likewise.
12760         (build_error_marker_type): Likewise.
12761         (lookup_die_type): Likewise.
12762         (dump_die_shallow): Likewise.
12763         (follow_die_ref): Likewise.
12764         (dwarf2_fetch_die_loc_sect_off): Likewise.
12765         (dwarf2_fetch_constant_bytes): Likewise.
12766         (follow_die_sig): Likewise.
12767         (get_signatured_type): Likewise.
12768         (get_DW_AT_signature_type): Likewise.
12769         (dwarf2_find_containing_comp_unit): Likewise.
12770         (set_die_type): Likewise.
12771
12772 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
12773
12774         * arch/aarch64.c: Include "common-defs.h".
12775         * arch/amd64.c: Likewise.
12776         * arch/i386.c: Likewise.
12777
12778 2018-02-21  Tom Tromey  <tom@tromey.com>
12779
12780         * value.h: (extract_field_op): Update.
12781         * eval.c (extract_field_op): Return a const char *.
12782         * expression.h (parse_expression_for_completion): Update.
12783         * completer.c (complete_expression): Update.
12784         (add_struct_fields): Make fieldname const.
12785         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
12786         (mark_completion_tag, parse_exp_in_context_1): Update.
12787         (parse_expression_for_completion): Change "name" to
12788         unique_xmalloc_ptr*.
12789
12790 2018-02-21  Tom Tromey  <tom@tromey.com>
12791
12792         * infcall.c (call_function_by_hand_dummy): Use std::vector.
12793
12794 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12795
12796         * avr-tdep.c (avr_read_pc): Change parameter type to
12797         readable_regcache.
12798         * gdbarch.sh (read_pc): Likewise.
12799         * gdbarch.c: Re-generated.
12800         * gdbarch.h: Re-generated.
12801         * hppa-tdep.c (hppa_read_pc): Change parameter type to
12802         readable_regcache.
12803         * ia64-tdep.c (ia64_read_pc): Likewise.
12804         * mips-tdep.c (mips_read_pc): Likewise.
12805         * spu-tdep.c (spu_read_pc): Likewise.
12806
12807 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12808
12809         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
12810         * regcache-dump.c: New file.
12811         * regcache.c: Move register_dump to regcache-dump.c.
12812         (maintenance_print_registers): Likewise.
12813         (maintenance_print_raw_registers): Likewise.
12814         (maintenance_print_cooked_registers): Likewise.
12815         (maintenance_print_register_groups): Likewise.
12816         (maintenance_print_remote_registers): Likewise.
12817         (_initialize_regcache): Likewise.
12818         * regcache.h (register_dump): Moved from regcache.c.
12819
12820 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12821
12822         * regcache.c (regcache::regcache): Update.
12823         (regcache::invalidate): Move it to detached_regcache::invalidate.
12824         (get_thread_arch_aspace_regcache): Update.
12825         (regcache::raw_update): Update.
12826         (regcache::cooked_read): Remove some code.
12827         (regcache::cooked_read_value): Likewise.
12828         (regcache::raw_write): Remove assert on m_readonly_p.
12829         (regcache::raw_supply_integer): Move it to
12830         detached_regcache::raw_supply_integer.
12831         (regcache::raw_supply_zeroed): Likewise.
12832         * regcache.h (detached_regcache) <raw_supply_integer>: New
12833         declaration.
12834         <raw_supply_zeroed, invalidate>: Likewise.
12835         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
12836         <invalidate>: Likewise.
12837         <m_readonly_p>: Removed.
12838
12839 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12840
12841         * infcmd.c (get_return_value): Let stop_regs point to
12842         get_current_regcache.
12843         * regcache.c (regcache::regcache): Remove.
12844         (register_dump_reg_buffer): New class.
12845         (regcache_print): Adjust.
12846         * regcache.h (regcache): Remove constructors.
12847
12848 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12849
12850         * regcache.c (class register_dump): New class.
12851         (register_dump_regcache, register_dump_none): New class.
12852         (register_dump_remote, register_dump_groups): New class.
12853         (regcache_print): Update.
12854         * regcache.h (regcache_dump_what): Move it to regcache.c.
12855         (regcache) <dump>: Remove.
12856
12857 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12858
12859         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
12860          reg_buffer_rw *.
12861         (jit_unwind_reg_set_impl): Call raw_supply.
12862         (jit_frame_sniffer): Use reg_buffer_rw.
12863         * record-full.c (record_full_core_regbuf): Change its type.
12864         (record_full_core_open_1): Use reg_buffer_rw.
12865         (record_full_close): Likewise.
12866         (record_full_core_fetch_registers): Use regcache->raw_supply.
12867         (record_full_core_store_registers): Likewise.
12868         * regcache.c (regcache::get_register_status): Move it to
12869         reg_buffer.
12870         (regcache_raw_set_cached_value): Remove.
12871         (regcache::raw_set_cached_value): Remove.
12872         (regcache::raw_write): Call raw_supply.
12873         (regcache::raw_supply): Move it to reg_buffer_rw.
12874         * regcache.h (regcache_raw_set_cached_value): Remove.
12875         (reg_buffer_rw): New class.
12876
12877 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12878
12879         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
12880         readonly_detached_regcache.
12881         (dummy_frame_prev_register): Use regcache->cooked_read.
12882         * frame.c (frame_save_as_regcache): Change return type.
12883         (frame_pop): Update.
12884         * frame.h (frame_save_as_regcache): Update declaration.
12885         * inferior.h (get_infcall_suspend_state_regcache): Update
12886         declaration.
12887         * infrun.c (infcall_suspend_state) <registers>: use
12888         readonly_detached_regcache.
12889         (save_infcall_suspend_state): Don't use regcache_dup.
12890         (get_infcall_suspend_state_regcache): Change return type.
12891         * linux-fork.c (struct fork_info) <savedregs>: Change to
12892         readonly_detached_regcache.
12893         <pc>: New field.
12894         (fork_save_infrun_state): Don't use regcache_dup.
12895         (info_checkpoints_command): Adjust.
12896         * mi/mi-main.c (register_changed_p): Update declaration.
12897         (mi_cmd_data_list_changed_registers): Use
12898         readonly_detached_regcache.
12899         (register_changed_p): Change parameter type to
12900         readonly_detached_regcache.
12901         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
12902         readonly_detached_regcache.
12903         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
12904         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
12905         New.
12906         (regcache::save): Move it to reg_buffer.
12907         (regcache::restore): Change parameter type.
12908         (regcache_dup): Remove.
12909         * regcache.h (reg_buffer) <save>: New method.
12910         (readonly_detached_regcache): New class.
12911         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
12912         readonly_detached_regcache.
12913         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
12914
12915 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12916
12917         * frame.c (frame_save_as_regcache): Use regcache method save.
12918         (frame_pop): Use regcache method restore.
12919         * infrun.c (restore_infcall_suspend_state): Likewise.
12920         * linux-fork.c (fork_load_infrun_state): Likewise.
12921         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
12922         save.
12923         * regcache.c (regcache_save): Remove.
12924         (regcache::restore): More asserts.
12925         (regcache_cpy): Remove.
12926         * regcache.h (regcache_save): Remove the declaration.
12927         (regcache::restore): Move from private to public.
12928         Remove the friend declaration of regcache_cpy.
12929         (regcache_cpy): Remove declaration.
12930
12931 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12932
12933         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
12934         parameter type to 'readable_regcache *'.
12935         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
12936         * arm-tdep.c (arm_neon_quad_read): Likewise.
12937         (arm_pseudo_read): Likewise.
12938         * avr-tdep.c (avr_pseudo_register_read): Likewise.
12939         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
12940         * frv-tdep.c (frv_pseudo_register_read): Likewise.
12941         * gdbarch.c: Re-generated.
12942         * gdbarch.h: Re-generated.
12943         * gdbarch.sh (pseudo_register_read): Change parameter type to
12944         'readable_regcache *'.
12945         (pseudo_register_read_value): Likewise.
12946         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
12947         (h8300_pseudo_register_read): Likewise.
12948         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
12949         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
12950         (i386_pseudo_register_read_into_value): Likewise.
12951         (i386_pseudo_register_read_value): Likewise.
12952         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
12953         declaration.
12954         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
12955         * m32c-tdep.c (m32c_raw_read): Likewise.
12956         (m32c_read_flg): Likewise.
12957         (m32c_banked_register): Likewise.
12958         (m32c_banked_read): Likewise.
12959         (m32c_sb_read): Likewise.
12960         (m32c_part_read): Likewise.
12961         (m32c_cat_read): Likewise.
12962         (m32c_r3r2r1r0_read): Likewise.
12963         (m32c_pseudo_register_read): Likewise.
12964         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
12965         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
12966         (mep_pseudo_cr64_read): Likewise.
12967         (mep_pseudo_register_read): Likewise.
12968         * mips-tdep.c (mips_pseudo_register_read): Likewise.
12969         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
12970         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
12971         * regcache.c (regcache::raw_read): Move it to readable_regcache.
12972         (regcache::cooked_read): Likewise.
12973         (regcache::cooked_read_value): Likewise.
12974         (regcache_cooked_read_signed):
12975         (regcache::cooked_read): Likewise.
12976         * regcache.h (readable_regcache): New class.
12977         (regcache): Inherit readable_regcache.  Move some methods to
12978         readable_regcache.
12979         * rl78-tdep.c (rl78_pseudo_register_read): Change
12980         parameter type to 'readable_regcache *'.
12981         * rs6000-tdep.c (do_regcache_raw_read): Remove.
12982         (e500_pseudo_register_read): Change parameter type to
12983         'readable_regcache *'.
12984         (dfp_pseudo_register_read): Likewise.
12985         (vsx_pseudo_register_read): Likewise.
12986         (efpr_pseudo_register_read): Likewise.
12987         * s390-tdep.c (s390_pseudo_register_read): Likewise.
12988         * sh-tdep.c (sh_pseudo_register_read): Likewise.
12989         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
12990         (sh64_pseudo_register_read): Likewise.
12991         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
12992         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
12993         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
12994         (spu_pseudo_register_read): Likewise.
12995         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
12996         (xtensa_pseudo_register_read): Likewise.
12997
12998 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12999
13000         * regcache.c (regcache::regcache): Call reg_buffer ctor.
13001         (regcache::arch): Move it to reg_buffer::arch.
13002         (regcache::register_buffer): Likewise.
13003         (regcache::assert_regnum): Likewise.
13004         (regcache::num_raw_registers): Likewise.
13005         * regcache.h (reg_buffer): New class.
13006         (regcache): Inherit reg_buffer.
13007
13008 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
13009
13010         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
13011         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
13012
13013 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
13014
13015         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
13016
13017 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
13018
13019         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
13020         (SFILES): Remove common/*.c files.
13021         (COMMON_OBS): Remove some *.o files built from common/*.c files.
13022         * common/common.host: Add common reference.
13023         * configure.ac: Likewise.
13024         * configure: Regenerate.
13025
13026 2018-02-16  Yao Qi  <yao.qi@linaro.org>
13027
13028         * block.c (block_namespace_info): Inherit allocate_on_obstack.
13029         (block_initialize_namespace): Use new.
13030         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
13031         (dwarf2_free_objfile): Use delete.
13032         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
13033         (copy_type_recursive): Use new.
13034         * gdb_obstack.h (allocate_on_obstack): New.
13035
13036 2018-02-15  Yao Qi  <yao.qi@linaro.org>
13037
13038         PR gdb/22849
13039         * inferior.c (exit_inferior_1): Reset inf->control.
13040
13041 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
13042
13043         * ada-lang.c (ada_to_fixed_value_create): Delete advance
13044         declaration.
13045
13046 2018-02-14  Pedro Alves  <palves@redhat.com>
13047
13048         * frame-unwind.c (frame_unwind_try_unwinder): Always call
13049         frame_cleanup_after_sniffer on exception.
13050
13051 2018-02-14  Tom Tromey  <tom@tromey.com>
13052
13053         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
13054         const.
13055         (solib_bfd_open): Make pathname const.
13056         * solib.c (solib_bfd_open): Make pathname const.
13057         * solib-spu.c (spu_bfd_fopen): Make name const.
13058         (spu_bfd_open): Make pathname const.
13059         * solib-darwin.c (darwin_bfd_open): Make pathname const.
13060         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
13061
13062 2018-02-14  Tom Tromey  <tom@tromey.com>
13063
13064         * symfile.c (symfile_bfd_open): Update.
13065         * source.h (openp, source_full_path_of, find_and_open_source):
13066         Change argument type to unique_xmalloc_ptr.
13067         * source.c (openp): Take a unique_xmalloc_ptr.
13068         (source_full_path_of, find_and_open_source): Likewise.
13069         (open_source_file, symtab_to_fullname): Update.
13070         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
13071         unique_xmalloc_ptr.
13072         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
13073         (exec_file_find): Update.
13074         * psymtab.c (psymtab_to_fullname): Update.
13075         * nto-tdep.h (nto_find_and_open_solib): Update.
13076         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
13077         unique_xmalloc_ptr.
13078         * exec.c (exec_file_attach): Update.
13079         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
13080         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
13081
13082 2018-02-14  Tom Tromey  <tom@tromey.com>
13083
13084         * solib.c: Include source.h.
13085         * nto-tdep.c: Include source.h.
13086         * mi/mi-cmd-env.c: Include source.h.
13087         * infcmd.c: Include source.h.
13088         * exec.c: Include source.h.
13089         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
13090         (add_path, directory_switch, source_path, init_source_path): Move
13091         declarations...
13092         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
13093         (add_path, directory_switch, source_path, init_source_path):
13094         ...here.
13095
13096 2018-02-14  Tom Tromey  <tom@tromey.com>
13097
13098         * solist.h (exec_file_find, solib_find): Return
13099         unique_xmalloc_ptr.
13100         (solib_bfd_fopen): Take a const char *.
13101         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
13102         (exec_file_find, solib_find): Likewise.
13103         (solib_bfd_fopen): Do not take ownership of "pathname".
13104         (solib_bfd_open): Use unique_xmalloc_ptr.
13105         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
13106         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
13107         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
13108         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
13109
13110 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
13111
13112         * ada-lang.c (name_match_type_from_name): Remove reference to
13113         ada_name_for_lookup in function's documentation.
13114         * ada-lang.h (ada_name_for_lookup): Delete declaration.
13115
13116 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
13117
13118         * defs.h (enum openp_flags): New enum.
13119         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
13120         Move to enum openp_flags.
13121         (openp_flags): New enum flags.
13122         (openp): Change parameter type to openp_flags.
13123         * source.c (openp): Change parameter type to openp_flags.
13124         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
13125         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
13126
13127 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
13128
13129         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
13130         per-command.
13131
13132 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
13133
13134         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
13135         into...
13136         (class dwarf2_queue_guard): ...the destructor of this new class.
13137         (dw2_do_instantiate_symtab): Create instance of the new class
13138         dwarf2_queue_guard, remove cleanup.
13139
13140 2018-02-09  Tom Tromey  <tom@tromey.com>
13141
13142         * source.c (find_source_lines): Don't reference past the end of
13143         the vector.
13144
13145 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13146
13147         * remote.c (remote_btrace_maybe_reopen): Change error message.
13148         * btrace.c (btrace_enable): Likewise.
13149         (parse_xml_btrace): Likewise.
13150         (parse_xml_btrace_conf): Likewise.
13151
13152 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13153
13154         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
13155         (linux_enable_pt, linux_enable_bts): Call
13156         diagnose_perf_event_open_fail.
13157
13158 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13159
13160         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
13161         Remove parameter and change return type.  Update callers.  Move it.
13162         (linux_enable_bts, linux_enable_pt): Improve error message.
13163         (linux_enable_pt): Remove zero buffer size check.
13164         (linux_enable_btrace): Improve error messages.  Remove NULL return
13165         check.
13166
13167 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13168
13169         * btrace.c (btrace_enable): Remove target_supports_btrace call.
13170         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
13171         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
13172         (linux_supports_pt, linux_supports_btrace): Remove.
13173         (linux_enable_bts): Call cpu_supports_bts.
13174         * nat/linux-btrace.h (linux_supports_btrace): Remove.
13175         * remote.c (remote_supports_btrace): Remove.
13176         (init_remote_ops): Remove remote_supports_btrace.
13177         * target-delegates.c: Regenerated.
13178         * target.c (target_supports_btrace): Remove.
13179         * target.h (target_ops) <to_supports_btrace>: Remove
13180         (target_supports_btrace): Remove.
13181         * x86-linux-nat.c (x86_linux_create_target): Remove
13182         linux_supports_btrace.
13183
13184 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13185
13186         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
13187         btrace failed.
13188         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
13189         exception and use message in own exception.
13190
13191 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13192
13193         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
13194         (perf_event_pt_event_type): Use gdb_file_up.
13195         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
13196         scoped_fd, and scoped_mmap.
13197
13198 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13199
13200         * common/scoped_mmap.h: New.
13201         * unittests/scoped_mmap-selftest.c: New.
13202         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13203         unittests/scoped_mmap-selftest.c.
13204
13205 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13206
13207         * common/scoped_fd.h: New.
13208         * unittests/scoped_fd-selftest.c: New.
13209         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13210         unittests/scoped_fd-selftest.c.
13211
13212 2018-02-09  Tom Tromey  <tom@tromey.com>
13213
13214         * auto-load.c (auto_load_section_scripts): Use
13215         gdb::unique_xmalloc_ptr.
13216
13217 2018-02-09  Tom Tromey  <tom@tromey.com>
13218
13219         * auto-load.c (execute_script_contents): Use std::string.
13220
13221 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
13222
13223         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
13224         Python function, rather than a new command.
13225
13226 2018-02-08  Tom Tromey  <tom@tromey.com>
13227
13228         * solib.c (solib_find_1): Use std::string.
13229         (solib_bfd_fopen): Use unique_xmalloc_ptr.
13230
13231 2018-02-08  Tom Tromey  <tom@tromey.com>
13232
13233         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
13234
13235 2018-02-08  Tom Tromey  <tom@tromey.com>
13236
13237         * source.c (find_source_lines): Use gdb::def_vector.
13238
13239 2018-02-08  Tom Tromey  <tom@tromey.com>
13240
13241         * macrocmd.c (struct temporary_macro_definition): New.
13242         (macro_define_command): Use temporary_macro_definition.  Remove
13243         cleanups.
13244         (free_macro_definition_ptr): Remove.
13245
13246 2018-02-08  Tom Tromey  <tom@tromey.com>
13247
13248         * macroexp.c (maybe_expand): Use std::string.
13249
13250 2018-02-08  Tom Tromey  <tom@tromey.com>
13251
13252         * macroexp.c (struct macro_buffer): Add initializers for some
13253         members.
13254         (init_buffer, init_shared_buffer, free_buffer)
13255         (free_buffer_return_text): Remove.
13256         (macro_buffer): New constructors.
13257         (~macro_buffer): New destructor.
13258         (macro_buffer::set_shared): New method.
13259         (macro_buffer::resize_buffer, macro_buffer::appendc)
13260         (macro_buffer::appendmem): Now methods, not free functions.
13261         (set_token, append_tokens_without_splicing, stringify)
13262         (macro_stringify): Update.
13263         (gather_arguments): Change return type.  Remove argc_p argument,
13264         add args_ptr argument.  Use std::vector.
13265         (substitute_args): Remove argc argument.  Accept std::vector.
13266         (expand): Update.  Use std::vector.
13267         (scan, macro_expand, macro_expand_next): Update.
13268
13269 2018-02-08  Tom Tromey  <tom@tromey.com>
13270
13271         * symtab.c (default_collect_symbol_completion_matches_break_on):
13272         Use unique_xmalloc_ptr.
13273         * macroscope.h: (sal_macro_scope, user_macro_scope)
13274         (default_macro_scope): Return unique_xmalloc_ptr.
13275         * macroscope.c (sal_macro_scope, user_macro_scope)
13276         (default_macro_scope): Return unique_xmalloc_ptr.
13277         * macroexp.h (macro_expand, macro_expand_once): Return
13278         unique_xmalloc_ptr.
13279         * macroexp.c (macro_expand, macro_expand_once): Return
13280         unique_xmalloc_ptr.
13281         * macrocmd.c (macro_expand_command, macro_expand_once_command)
13282         (info_macro_command, info_macros_command): Use
13283         unique_xmalloc_ptr.
13284         * compile/compile-c-support.c (write_macro_definitions): Use
13285         unique_xmalloc_ptr.
13286         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
13287
13288 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
13289
13290         * value.c (value_static_field): Assign field type instead of
13291         containing type when returning an optimized out value.
13292
13293 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13294
13295         * ft32-tdep.c (ft32_read_pc): Remove.
13296         (ft32_write_pc): Remove.
13297         (ft32_gdbarch_init): Update.
13298         * m32r-tdep.c (m32r_read_pc): Remove.
13299         (m32r_gdbarch_init): Update.
13300         * mep-tdep.c (mep_read_pc): Remove.
13301         (mep_gdbarch_init): Update.
13302         * microblaze-tdep.c (microblaze_write_pc): Remove.
13303         (microblaze_gdbarch_init): Update.
13304         * mn10300-tdep.c (mn10300_read_pc): Remove.
13305         (mn10300_write_pc): Remove.
13306         (mn10300_gdbarch_init): Update.
13307         * moxie-tdep.c (moxie_read_pc): Remove.
13308         (moxie_write_pc): Remove.
13309         (moxie_gdbarch_init): Update.
13310
13311 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13312
13313         * expprint.c (print_subexp_standard): Handle
13314         OP_F77_UNDETERMINED_ARGLIST.
13315         (dump_subexp_body_standard): Likewise.
13316
13317 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
13318
13319         * target-descriptions.c (tdesc_element_visitor) Add empty
13320         implementations.
13321         (tdesc_type): Move make_gdb_type from here.
13322         (tdesc_type_builtin): Likewise.
13323         (tdesc_type_vector): Likewise.
13324         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
13325         (make_gdb_type_struct): Move from tdesc_type_with_fields.
13326         (make_gdb_type_union): Likewise.
13327         (make_gdb_type_flags): Likewise.
13328         (make_gdb_type_enum): Likewise.
13329         (make_gdb_type): New function.
13330         (tdesc_register_type): Use static make_gdb_type.
13331
13332 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
13333
13334         * infcmd.c (default_print_one_register_info): Align natural-format
13335         column values consistently one under another.
13336         (pad_to_column): New function.
13337
13338 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
13339
13340         * dwarf2read.c (dwarf2_physname): Move commment.
13341
13342 2018-02-01  Leszek Swirski  <leszeks@google.com>
13343
13344         * varobj.c (varobj_formatted_print_options): Allow recursive
13345         pretty printing if pretty printing is enabled.
13346
13347 2018-02-01  Leszek Swirski  <leszeks@google.com>
13348
13349         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
13350         names after a structop as a filename.
13351
13352 2018-02-01  Yao Qi  <yao.qi@linaro.org>
13353
13354         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
13355         (arm_record_coproc_data_proc): Likewise.
13356
13357 2018-02-01  Yao Qi  <yao.qi@linaro.org>
13358
13359         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
13360
13361 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
13362
13363         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
13364         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
13365
13366 2018-01-31  Pedro Alves  <palves@redhat.com>
13367
13368         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
13369         * inflow.c (child_terminal_save_inferior): Wrap reference to
13370         tcgetpgrp in HAVE_TERMIOS_H.
13371         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
13372         _WIN32.
13373         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
13374         always iterate over all inferiors.
13375         (gdbsim_cntrl_c): Adjust.
13376         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
13377
13378 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13379
13380         * gdbtypes.c (lookup_array_range_type): Make sure the array's
13381         index type is objfile-owned if the element type is as well.
13382
13383 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13384
13385         GDB 8.1 released.
13386
13387 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13388
13389         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
13390         "features/s390x-linux64.c".
13391         (_initialize_s390_linux_tdep): Remove initialization of tdescs
13392         s390_linux32 and s390x_linux64.
13393         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
13394         default tdesc.
13395         * s390-tdep.c: Include "features/s390-linux32.c" and
13396         "features/s390x-linux64.c".
13397         (s390_tdesc_valid): Add check for tdesc_has_registers.
13398         (s390_gdbarch_init): Make sure there is always a valid tdesc.
13399         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
13400         tdesc_s390x_linux64.
13401         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
13402         tdesc_s390x_linux64 to...
13403         * s390-tdep.h: ...here.
13404
13405 2018-01-30  Pedro Alves  <palves@redhat.com>
13406
13407         PR gdb/13211
13408         * config.in, configure: Regenerate.
13409         * configure.ac: Check for getpgid.
13410         * go32-nat.c (go32_pass_ctrlc): New.
13411         (go32_target): Install it.
13412         * inf-child.c (inf_child_target): Install
13413         child_terminal_save_inferior, child_pass_ctrlc and
13414         child_interrupt.
13415         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
13416         (inf_ptrace_target): No longer install it.
13417         * infcmd.c (interrupt_target_1): Adjust.
13418         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
13419         (child_interrupt): Declare.
13420         (inferior::terminal_state): New.
13421         * inflow.c (struct terminal_info): Update comments.
13422         (inferior_process_group): Delete.
13423         (terminal_is_ours): Delete.
13424         (gdb_tty_state): New.
13425         (child_terminal_init): Adjust.
13426         (is_gdb_terminal, sharing_input_terminal_1)
13427         (sharing_input_terminal): New functions.
13428         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
13429         Set the process's actual process group in the foreground if
13430         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
13431         mark terminal as the inferior's if not sharing GDB's terminal.
13432         Don't check attach_flag.
13433         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
13434         pass down a target_terminal_state.
13435         (child_terminal_save_inferior): New, factored out from ...
13436         (child_terminal_ours_1): ... this.  Handle
13437         target_terminal_state::is_ours_for_output.
13438         (child_interrupt, child_pass_ctrlc): New.
13439         (inflow_inferior_exit): Clear the inferior's terminal_state.
13440         (copy_terminal_info): Copy the inferior's terminal state.
13441         (_initialize_inflow): Remove reference to terminal_is_ours.
13442         * inflow.h (inferior_process_group): Delete.
13443         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
13444         * procfs.c (procfs_target): Don't install procfs_interrupt.
13445         (procfs_interrupt): Delete.
13446         * remote.c (remote_serial_quit_handler): Adjust.
13447         (remote_interrupt): Remove ptid parameter.  Adjust.
13448         * target-delegates.c: Regenerate.
13449         * target.c: Include "terminal.h".
13450         (target_terminal::terminal_state): Rename to ...
13451         (target_terminal::m_terminal_state): ... this.
13452         (target_terminal::init): Adjust.
13453         (target_terminal::inferior): Adjust to per-inferior
13454         terminal_state.
13455         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
13456         (target_terminal::ours, target_terminal::ours_for_output): Use
13457         target_terminal_is_ours_kind.
13458         (target_interrupt): Remove ptid parameter.  Adjust.
13459         (default_target_pass_ctrlc): Adjust.
13460         * target.h (target_ops::to_terminal_save_inferior): New field.
13461         (target_ops::to_interrupt): Remove ptid_t parameter.
13462         (target_interrupt): Remove ptid_t parameter.  Update comment.
13463         (target_pass_ctrlc): Update comment.
13464         * target/target.h (target_terminal_state): New scoped enum,
13465         factored out of ...
13466         (target_terminal::terminal_state): ... here.
13467         (target_terminal::inferior): Update comments.
13468         (target_terminal::restore_inferior): New.
13469         (target_terminal::is_inferior, target_terminal::is_ours)
13470         (target_terminal::is_ours_for_output): Adjust.
13471         (target_terminal::scoped_restore_terminal_state): Adjust to
13472         rename, and call restore_inferior() instead of inferior().
13473         (target_terminal::scoped_restore_terminal_state::m_state): Change
13474         type.
13475         (target_terminal::terminal_state): Rename to ...
13476         (target_terminal::m_terminal_state): ... this and change type.
13477
13478 2018-01-30  Pedro Alves  <palves@redhat.com>
13479
13480         * linux-nat.c (wait_for_signal): New function.
13481         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
13482         directly.
13483         (async_terminal_is_ours)
13484         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
13485         (linux_nat_add_target): Don't override
13486         to_terminal_inferior/to_terminal_ours.
13487
13488 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
13489
13490         * remote.c (remote_follow_fork): Don't call "detach_inferior".
13491
13492 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
13493
13494         * dwarf2read.c (free_dwo_files): Add forward-declaration.
13495         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
13496         dwarf2_per_objfile_free here.
13497         (dwarf2_per_objfile_free): Remove.
13498         (_initialize_dwarf2_read): Don't register
13499         dwarf2_per_objfile_free as a registry cleanup.
13500
13501 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
13502
13503         Avoid compilation errors in MinGW native builds
13504
13505         The error is triggered by including python-internal.h, and the
13506         error message is:
13507
13508              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
13509                       from build-gnulib/import/math.h:27,
13510                       from d:/usr/Python26/include/pyport.h:235,
13511                       from d:/usr/Python26/include/Python.h:58,
13512                       from python/python-internal.h:94,
13513                       from python/py-arch.c:24:
13514              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
13515         using ::hypot;
13516                 ^~~~~
13517
13518         This happens because Python headers define 'hypot' to expand t
13519         '_hypot' in the Windows builds.
13520         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
13521         'hypoth'.  This avoids a compilation error.
13522
13523 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
13524
13525         * MAINTAINERS (Write After Approval): Fix ordering.
13526
13527 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
13528
13529         * MAINTAINERS (Write After Approval): Add Alan Hayward.
13530
13531 2018-01-26  Alan Modra  <amodra@gmail.com>
13532
13533         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
13534         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
13535         Remove nop.  Make const.  Comment.
13536         (powerpc32_plt_stub_so_2): New.
13537         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
13538         Correct count.  Update uses.
13539         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
13540         Move common code reading PLT entry word.  Correct
13541         powerpc32_plt_stub PLT address calculation.
13542         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
13543         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
13544         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
13545         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
13546         (ppc64_standard_linkage8): Likewise.
13547         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
13548         Correct insns description.
13549         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
13550
13551 2018-01-24  Pedro Alves  <palves@redhat.com>
13552
13553         GCC PR libstdc++/83906
13554         * gdbtypes.c (operator==(const dynamic_prop &,
13555         const dynamic_prop &)): New.
13556         (operator==(const range_bounds &, const range_bounds &)): New.
13557         (check_types_equal): Use them instead of memcmp.
13558         * gdbtypes.h (operator==(const dynamic_prop &,
13559         const dynamic_prop &)): Declare.
13560         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
13561         (operator==(const range_bounds &, const range_bounds &)): Declare.
13562         (operator!=(const range_bounds &, const range_bounds &)): Declare.
13563
13564 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13565
13566         * s390-linux-tdep.c (s390_record_address_mask)
13567         (s390_record_calc_disp_common, s390_record_calc_disp)
13568         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
13569         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
13570         (s390_process_record): Move to s390-tdep.c.
13571         (s390_linux_init_abi_any): Adjust.
13572         * s390-tdep.c (s390_record_address_mask)
13573         (s390_record_calc_disp_common, s390_record_calc_disp)
13574         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
13575         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
13576         (s390_process_record): Moved from s390-linux-tdep.c
13577         (s390_gdbarch_init): Adjust.
13578
13579 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13580
13581         * s390-linux-nat.c (s390-tdep.h): New include.
13582         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
13583         (HFILES_NO_SRCDIR): Add s390-tdep.h.
13584         (ALLDEPFILES): Add s390-tdep.c.
13585         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
13586         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
13587         * s390-tdep.h: ...this.  New file.
13588         * s390-linux-tdep.c (s390-tdep.h): New include.
13589         (_initialize_s390_tdep): Rename to...
13590         (_initialize_s390_linux_tdep): ...this and adjust.
13591         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
13592         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
13593         s390-tdep.h.
13594         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
13595         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
13596         (s390_is_partial_instruction, s390_software_single_step)
13597         (is_non_branch_ril, s390_displaced_step_copy_insn)
13598         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
13599         (s390_prologue_data, s390_addr, s390_store, s390_load)
13600         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
13601         (s390_register_call_saved, s390_guess_tracepoint_registers)
13602         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
13603         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
13604         (s390_pseudo_register_name, s390_pseudo_register_type)
13605         (s390_pseudo_register_read, s390_pseudo_register_write)
13606         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
13607         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
13608         (s390_addr_bits_remove, s390_address_class_type_flags)
13609         (s390_address_class_type_flags_to_name)
13610         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
13611         (s390_function_arg_float, s390_function_arg_vector)
13612         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
13613         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
13614         (s390_frame_align, s390_register_return_value, s390_return_value)
13615         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
13616         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
13617         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
13618         (s390_trad_frame_prev_register, s390_unwind_cache)
13619         (s390_prologue_frame_unwind_cache)
13620         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
13621         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
13622         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
13623         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
13624         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
13625         (s390_frame_base_address, s390_local_base_address)
13626         (s390_frame_base, s390_gcc_target_options)
13627         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
13628         (s390_validate_reg_range, s390_tdesc_valid)
13629         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
13630         * s390-tdep.c: ...this.  New file.
13631
13632 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13633
13634         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
13635         (s390_process_record, s390_gdbarch_tdep_alloc)
13636         (s390_linux_init_abi_any): Use/set new hook.
13637
13638 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13639
13640         * s390-linux-tdep.c (osabi.h): New include.
13641         (s390_linux_init_abi_31, s390_linux_init_abi_64)
13642         (s390_linux_init_abi_any): New functions.
13643         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
13644
13645 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13646
13647         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
13648         tdesc_has_registers check
13649
13650 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13651
13652         * s390-linux-tdep.c (s390_tdesc_valid): New function.
13653         (s390_validate_reg_range): New macro.
13654         (s390_gdbarch_init): Adjust.
13655
13656 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13657
13658         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
13659         (s390_gdbarch_tdep_alloc): Adjust.
13660         (s390_gdbarch_init): Adjust.
13661
13662 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13663
13664         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
13665         <have_tdb>: Change type to bool.
13666         (s390_gdbarch_tdep_alloc): Adjust.
13667         (s390_gdbarch_init): Adjust.
13668
13669 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13670
13671         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
13672         (gdbarch_tdep) <have_upper, have_vx>: New fields.
13673         (s390_gdbarch_tdep_alloc): New function.
13674         (s390_gdbarch_init): Allocate tdep at start and use its fields
13675         instead of separate variables.
13676
13677 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13678
13679         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
13680         when looking for cached gdbarch and add comment for remaining.
13681
13682 2018-01-22  Pedro Alves  <palves@redhat.com>
13683             Sergio Durigan Junior  <sergiodj@redhat.com>
13684
13685         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
13686         case.
13687
13688 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
13689
13690         * MAINTAINERS: Update my company e-mail address.
13691
13692 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13693
13694         * regcache.c (cooked_write_test): New function.
13695         (_initialize_regcache): Register the test.
13696
13697 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13698
13699         * ia64-tdep.c (ia64_pseudo_register_read): Call
13700         regcache->cooked_read instead of regcache_cooked_read_unsigned.
13701         * m32c-tdep.c (m32c_cat_read): Likewise.
13702         (m32c_r3r2r1r0_read): Likewise.
13703         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
13704         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
13705
13706 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13707
13708         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
13709         method raw_read instead of regcache_raw_read.
13710         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
13711         * arm-tdep.c (arm_neon_quad_read): Likewise.
13712         * avr-tdep.c (avr_pseudo_register_read): Likewise.
13713         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
13714         * frv-tdep.c (frv_pseudo_register_read): Likewise.
13715         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
13716         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
13717         (i386_pseudo_register_read_into_value): Likewise.
13718         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
13719         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
13720         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
13721         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
13722         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
13723         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
13724         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
13725         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
13726         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
13727
13728 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13729
13730         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
13731         * configure.tgt: Remove target mt.
13732         * mt-tdep.c: Remove.
13733         * regcache.c (cooked_read_test): Remove the check for mt.
13734
13735 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13736
13737         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
13738         instead of gdbarch_pseudo_register_read_value.
13739
13740 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
13741
13742         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
13743         language is Ada.
13744
13745 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
13746
13747         * linespec.c (create_sals_line_offset): Remove code that preserved
13748         the symtab_and_line's line number.
13749
13750 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13751
13752         * varobj.c (varobj_create): Don't set valid_block when creating a
13753         floating varobj.
13754
13755 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13756
13757         * varobj.c (varobj_create): Remove out of date comment.
13758
13759 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13760
13761         PR mi/20395
13762         * ada-exp.y (write_var_from_sym): Pass extra parameter when
13763         updating innermost block.
13764         * parse.c (innermost_block_tracker::update): Take extra type
13765         parameter, and check types match before updating innermost block.
13766         (write_dollar_variable): Update innermost block for registers.
13767         * parser-defs.h (enum innermost_block_tracker_type): New enum.
13768         (innermost_block_tracker::innermost_block_tracker): Initialise
13769         m_types member.
13770         (innermost_block_tracker::reset): Take type parameter.
13771         (innermost_block_tracker::update): Take type parameter, and pass
13772         type through as needed.
13773         (innermost_block_tracker::m_types): New member.
13774         * varobj.c (varobj_create): Pass type when reseting innermost
13775         block.
13776
13777 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13778
13779         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
13780         * ada-lang.c (resolve_subexp): Likewise.
13781         * breakpoint.c (set_breakpoint_condition) Likewise.
13782         (watch_command_1) Likewise.
13783         * c-exp.y (variable): Likewise.
13784         * d-exp.y (PrimaryExpression): Likewise.
13785         * f-exp.y (variable): Likewise.
13786         * go-exp.y (variable): Likewise.
13787         * m2-exp.y (variable): Likewise.
13788         * objfiles.c (objfile::~objfile): Likewise.
13789         * p-exp.y (variable): Likewise.
13790         * parse.c (innermost_block): Change type.
13791         * parser-defs.h (class innermost_block_tracker): New.
13792         (innermost_block): Change to innermost_block_tracker.
13793         * printcmd.c (display_command): Switch to innermost_block API.
13794         (do_one_display): Likewise.
13795         * rust-exp.y (do_one_display): Likewise.
13796         * symfile.c (clear_symtab_users): Likewise.
13797         * varobj.c (varobj_create): Switch to innermost_block API, replace
13798         use of innermost_block with block stored on varobj object.
13799
13800 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13801
13802         * expression.h (innermost_block): Remove declaration.
13803         * varobj.c: Add 'parser-defs.h' include.
13804
13805 2018-01-19  Tom Tromey  <tom@tromey.com>
13806
13807         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
13808         symbols in the static and global blocks.
13809
13810 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
13811
13812         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
13813         gdb_ptrace.h, and move including gdb_wait.h ...
13814         * nat/linux-ptrace.h: ... to here.
13815
13816 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13817
13818         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
13819         inf_ptrace_detach_success.
13820         (inf_ptrace_detach_success): Add inferior parameter, use it
13821         instead of inferior_ptid, pass it to detach_inferior.
13822         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
13823         parameter.
13824         * inferior.c (detach_inferior): Add overload that takes an
13825         inferior object.
13826         * inferior.h (detach_inferior): Likewise.
13827         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
13828         use inferior_ptid, adjust call to inf_ptrace_detach_success.
13829         * linux-thread-db.c (thread_db_detach): Use inf parameter.
13830
13831 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13832
13833         * target.h (struct target_ops) <to_detach>: Add inferior
13834         parameter.
13835         (target_detach): Likewise.
13836         * target.c (dispose_inferior): Pass inferior down.
13837         (target_detach): Pass inferior down.  Assert that it is equal to
13838         the current inferior.
13839         * aix-thread.c (aix_thread_detach): Pass inferior down.
13840         * corefile.c (core_file_command): Pass current_inferior() down.
13841         * corelow.c (core_detach): Add inferior parameter.
13842         * darwin-nat.c (darwin_detach): Likewise.
13843         * gnu-nat.c (gnu_detach): Likewise.
13844         * inf-ptrace.c (inf_ptrace_detach): Likewise.
13845         * infcmd.c (detach_command): Pass current_inferior() down to
13846         target_detach.
13847         * infrun.c (follow_fork_inferior): Pass parent_inf to
13848         target_detach.
13849         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
13850         target_detach.
13851         * linux-nat.c (linux_nat_detach): Add inferior parameter.
13852         * linux-thread-db.c (thread_db_detach): Likewise.
13853         * nto-procfs.c (procfs_detach): Likewise.
13854         * procfs.c (procfs_detach): Likewise.
13855         * record.c (record_detach): Likewise.
13856         * record.h (struct inferior): Forward-declare.
13857         (record_detach): Add inferior parameter.
13858         * remote-sim.c (gdbsim_detach): Likewise.
13859         * remote.c (remote_detach_1): Likewise.
13860         (remote_detach): Likewise.
13861         (extended_remote_detach): Likewise.
13862         * sol-thread.c (sol_thread_detach): Likewise.
13863         * target-debug.h (target_debug_print_inferior_p): New macro.
13864         * target-delegates.c: Re-generate.
13865         * top.c (kill_or_detach): Pass inferior down to target_detach.
13866         * windows-nat.c (windows_detach): Add inferior parameter.
13867
13868 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13869
13870         * target.h (struct target_ops) <to_detach>: Remove args
13871         parameter.
13872         (target_detach): Likewise.
13873         * target.c (dispose_inferior): Adjust.
13874         (target_detach): Remove args parameter, adjust.
13875         * aix-thread.c (aix_thread_detach): Adjust.
13876         * corefile.c (core_file_command): Adjust.
13877         * corelow.c (core_detach): Adjust.
13878         * darwin-nat.c (darwin_detach): Adjust.
13879         * gnu-nat.c (gnu_detach): Adjust.
13880         * inf-ptrace.c (inf_ptrace_detach): Adjust.
13881         * infcmd.c (detach_command): Adjust
13882         * infrun.c (follow_fork_inferior): Adjust.
13883         (handle_vfork_child_exec_or_exit): Adjust.
13884         * linux-fork.c (linux_fork_detach): Remove args parameter.
13885         * linux-fork.h (linux_fork_detach): Likewise.
13886         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
13887         * linux-thread-db.c (thread_db_detach): Likewise.
13888         * nto-procfs.c (procfs_detach): Likewise.
13889         * procfs.c (procfs_detach): Likewise.
13890         (do_detach): Remove signo parameter.
13891         * record.c (record_detach): Remove args parameter.
13892         * record.h (record_detach): Likewise.
13893         * remote-sim.c (gdbsim_detach): Likewise.
13894         * remote.c (remote_detach_1): Likewise.
13895         (remote_detach): Likewise.
13896         (extended_remote_detach): Likewise.
13897         * sol-thread.c (sol_thread_detach): Likewise.
13898         * target-delegates.c: Re-generate.
13899         * top.c (struct qt_args) <args>: Remove field.
13900         (kill_or_detach): Don't pass args.
13901         (quit_force): Don't set args.
13902         * windows-nat.c (windows_detach): Remove args parameter.
13903
13904 2018-01-19  Yao Qi  <yao.qi@linaro.org>
13905
13906         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
13907         (arm_linux_init_abi): Install it.
13908
13909 2018-01-19  Yao Qi  <yao.qi@linaro.org>
13910
13911         * osabi.c (gdb_osabi_names): Extend the regexp for
13912         arm-linux-gnueabihf.
13913
13914 2018-01-18  Yao Qi  <yao.qi@linaro.org>
13915
13916         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
13917         m_abbrevs.
13918         (abbrev_table::add_abbrev): Update.
13919         (abbrev_table::lookup_abbrev): Update.
13920
13921 2018-01-18  Yao Qi  <yao.qi@linaro.org>
13922
13923         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
13924
13925 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
13926
13927         * compile/compile.c (compile_to_object): Convert "triplet_rx"
13928         to "std::string".
13929
13930 2018-01-17  Tom Tromey  <tom@tromey.com>
13931
13932         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
13933
13934 2018-01-17  Tom Tromey  <tom@tromey.com>
13935
13936         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
13937         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
13938         (create_array_type_with_stride): Update.
13939         * dwarf2read.c (set_die_type): Update.
13940
13941 2018-01-17  Tom Tromey  <tom@tromey.com>
13942
13943         * dwarf2read.c (delayed_method_info): Remove typedef.
13944         (dwarf2_cu::method_info): Now a std::vector.
13945         (add_to_method_list): Update.
13946         (free_delayed_list): Remove.
13947         (compute_delayed_physnames): Update.
13948         (process_full_comp_unit, process_full_type_unit): Clear the method
13949         list.  Remove cleanups.
13950         (psymtab_include_file_name): Add name_holder parameter.  Use
13951         unique_xmalloc_ptr.
13952         (dwarf_decode_lines): Update.
13953
13954 2018-01-17  Tom Tromey  <tom@tromey.com>
13955             Simon Marchi  <simon.marchi@ericsson.com>
13956
13957         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
13958         (dwarf2_per_objfile::free_cached_comp_units)
13959         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
13960         (init_cutu_and_read_dies_no_follow): Update.
13961         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
13962         (dwarf2_cu::~dwarf2_cu): New.
13963         (free_heap_comp_unit, free_stack_comp_unit): Remove.
13964         (age_cached_comp_units, free_one_cached_comp_unit): Update.
13965
13966 2018-01-17  Tom Tromey  <tom@tromey.com>
13967             Simon Marchi  <simon.marchi@ericsson.com>
13968
13969         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
13970         (struct die_reader_specs) <abbrev_table>: New member.
13971         (struct abbrev_table): Add constructor.
13972         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
13973         <abbrev_obstack>: Now an auto_obstack.
13974         (abbrev_table_up): New typedef.
13975         (init_cu_die_reader): Add abbrev_table parameter.
13976         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
13977         Add result_dwo_abbrev_table.
13978         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
13979         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
13980         Update.
13981         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
13982         parameter.
13983         (skip_children): Update.
13984         (abbrev_table::alloc_abbrev): Rename from
13985         abbrev_table_alloc_abbrev.
13986         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
13987         (abbrev_table::lookup_abbrev): Rename from
13988         abbrev_table_lookup_abbrev.
13989         (abbrev_table_read_table): Return abbrev_table_up.
13990         (abbrev_table_free, abbrev_table_free_cleanup)
13991         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
13992         (load_partial_dies): Update.
13993
13994 2018-01-17  Tom Tromey  <tom@tromey.com>
13995
13996         * dwarf2read.c (dwarf2_compute_name): Update comment.
13997         (read_func_scope, read_variable): Update.
13998         (new_symbol): Remove.
13999         (new_symbol_full): Rename to new_symbol.
14000
14001 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
14002
14003         PR gdb/16577
14004         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
14005         a warning instead of throwing an error, set section size to 0 and return
14006         NULL.
14007         * gdb_bfd.h (gdb_bfd_map_section): Update description.
14008
14009 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14010
14011         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
14012         std::string.
14013         (linux_ptrace_attach_fail_reason_string): Likewise.
14014         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
14015         Likewise.
14016         (linux_ptrace_attach_fail_reason_string): Likewise.
14017         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
14018
14019 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14020
14021         * linux-nat.c (linux_nat_attach): Remove xstrdup.
14022
14023 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
14024
14025         PR gdb/21559
14026         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
14027         checking for fs_base/gs_base fields in struct user_regs_struct.
14028         * configure: Regenerate.
14029
14030 2018-01-17  Yao Qi  <yao.qi@linaro.org>
14031
14032         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
14033         function.
14034         (aarch64_linux_init_abi): Install it to gdbarch hook
14035         gcc_target_options.
14036
14037 2018-01-15  Pedro Alves  <palves@redhat.com>
14038
14039         * common/signals-state-save-restore.c
14040         (save_original_signals_state): Fix typos.
14041
14042 2017-01-12  Tom Tromey  <tom@tromey.com>
14043             Sergio Durigan Junior  <sergiodj@redhat.com>
14044
14045         * Makefile.in (install-only): Install gdb-add-index.
14046
14047 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
14048
14049         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
14050
14051 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
14052
14053         * infrun.c (keep_going_pass_signal): Clear step-over info when
14054         insert_breakpoints fails.
14055
14056 2018-01-11  Pedro Alves  <palves@redhat.com>
14057
14058         PR gdb/22583
14059         * infrun.c (resume): Rename to ...
14060         (resume_1): ... this.
14061         (resume): Reimplement as wrapper around resume_1.
14062
14063 2018-01-11  Pedro Alves  <palves@redhat.com>
14064
14065         PR remote/22597
14066         * remote.c (remote_parse_stop_reply): Default to the last-set
14067         general thread instead of to 'magic_null_ptid'.
14068
14069 2018-01-10  Pedro Alves  <palves@redhat.com>
14070
14071         * language.h (language_get_symbol_name_matcher): Rename ...
14072         (get_symbol_name_matcher): ... this.
14073         * language.c (language_get_symbol_name_matcher): Ditto.
14074         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
14075         callers adjusted.
14076
14077 2018-01-10  Pedro Alves  <palves@redhat.com>
14078
14079         PR gdb/22670
14080         * dwarf2read.c
14081         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
14082         Adjust to use language_get_symbol_name_matcher instead of
14083         language_defn::la_get_symbol_name_matcher.
14084         * language.c (language_get_symbol_name_matcher): If in Ada mode
14085         and the lookup name is a verbatim match, return Ada's matcher.
14086         * language.h (language_get_symbol_name_matcher): Adjust comment.
14087         (ada_lookup_name_info::verbatim_p):: New method.
14088
14089 2018-01-10  Pedro Alves  <palves@redhat.com>
14090
14091         PR gdb/22670
14092         * ada-lang.c (ada_collect_symbol_completion_matches): If the
14093         minsym's language is language_auto or language_cplus, pass down
14094         language_ada instead.
14095         * symtab.c (compare_symbol_name): Don't frob symbol language here.
14096
14097 2018-01-10  Pedro Alves  <palves@redhat.com>
14098
14099         PR gdb/22670
14100         * minsyms.c (linkage_name_str): New function.
14101         (iterate_over_minimal_symbols): Use it.
14102
14103 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14104
14105         * NEWS: Document that 'info proc' now works on FreeBSD.
14106
14107 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14108
14109         * configure.ac: Check for kinfo_getfile in libutil.
14110         * configure: Regenerate.
14111         * config.in: Regenerate.
14112         * fbsd-nat.c: Include "fbsd-tdep.h".
14113         (fbsd_fetch_cmdline): New.
14114         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
14115         rather than calling error.
14116         (fbsd_info_proc): New.
14117         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
14118         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
14119         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
14120
14121 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14122
14123         * fbsd-nat.c (struct free_deleter): Remove.
14124         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
14125
14126 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14127
14128         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
14129         NULL for an empty pathname.
14130
14131 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14132
14133         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
14134         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
14135         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
14136         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
14137         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
14138         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
14139         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
14140         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
14141         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
14142         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
14143         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
14144         (fbsd_core_fetch_timeval, fbsd_print_sigset)
14145         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
14146         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
14147         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
14148
14149 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
14150
14151         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
14152         (gnu_xfer_auxv): New function.
14153         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
14154         TARGET_OBJECT_AUXV.
14155
14156 2018-01-08  Yao Qi  <yao.qi@linaro.org>
14157             Simon Marchi  <simon.marchi@ericsson.com>
14158
14159         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
14160         common/selftest.c.
14161         (COMMON_OBS): Remove selftest.o.
14162         * configure.ac: Append selftest-arch.c and common/selftest.c to
14163         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
14164         * configure: Re-generated.
14165         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
14166         GDB_SELF_TEST.
14167         (maintenance_info_selftests): Likewise.
14168
14169 2018-01-08  Xavier Roirand  <roirand@adacore.com>
14170
14171         * ada-valprint.c (val_print_packed_array_elements): Use
14172         proper number of elements when printing an array indexed
14173         by an enumeration type.
14174
14175 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14176
14177         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
14178         (dw2_get_file_names_reader): Adjust.
14179         (lookup_dwo_signatured_type): Adjust.
14180         (lookup_dwp_signatured_type): Adjust.
14181         (lookup_signatured_type): Adjust.
14182         (create_type_unit_group): Adjust.
14183         (get_type_unit_group): Adjust.
14184         (process_psymtab_comp_unit_reader): Adjust.
14185         (build_type_psymtabs_reader): Adjust.
14186         (scan_partial_symbols): Adjust.
14187         (add_partial_symbol): Adjust.
14188         (add_partial_subprogram): Adjust.
14189         (peek_die_abbrev): Adjust.
14190         (fixup_go_packaging): Adjust.
14191         (process_imported_unit_die): Adjust.
14192         (dwarf2_compute_name): Adjust.
14193         (dwarf2_physname): Adjust.
14194         (read_import_statement): Adjust.
14195         (handle_DW_AT_stmt_list): Adjust.
14196         (read_file_scope): Adjust.
14197         (read_func_scope): Adjust.
14198         (read_lexical_block_scope): Adjust.
14199         (read_call_site_scope): Adjust.
14200         (read_variable): Adjust.
14201         (dwarf2_rnglists_process): Adjust.
14202         (dwarf2_ranges_process): Adjust.
14203         (dwarf2_ranges_read): Adjust.
14204         (dwarf2_get_pc_bounds): Adjust.
14205         (dwarf2_record_block_ranges): Adjust.
14206         (dwarf2_add_field): Adjust.
14207         (dwarf2_add_member_fn): Adjust.
14208         (read_structure_type): Adjust.
14209         (process_structure_scope): Adjust.
14210         (read_enumeration_type): Adjust.
14211         (read_array_type): Adjust.
14212         (mark_common_block_symbol_computed): Adjust.
14213         (read_common_block): Adjust.
14214         (read_namespace_type): Adjust.
14215         (read_namespace): Adjust.
14216         (read_module_type): Adjust.
14217         (read_tag_pointer_type): Adjust.
14218         (read_tag_ptr_to_member_type): Adjust.
14219         (read_tag_string_type): Adjust.
14220         (read_subroutine_type): Adjust.
14221         (read_typedef): Adjust.
14222         (read_base_type): Adjust.
14223         (attr_to_dynamic_prop): Adjust.
14224         (read_subrange_type): Adjust.
14225         (read_unspecified_type): Adjust.
14226         (dwarf2_read_abbrevs): Adjust.
14227         (load_partial_dies): Adjust.
14228         (read_partial_die): Adjust.
14229         (find_partial_die): Adjust.
14230         (guess_partial_die_structure_name): Adjust.
14231         (fixup_partial_die): Adjust.
14232         (read_attribute_value): Adjust.
14233         (read_addr_index): Adjust.
14234         (read_addr_index_from_leb128): Adjust.
14235         (read_str_index): Adjust.
14236         (dwarf2_string_attr): Adjust.
14237         (get_debug_line_section): Adjust.
14238         (dwarf_decode_line_header): Adjust.
14239         (lnp_state_machine::check_line_address): Adjust.
14240         (dwarf_decode_lines_1): Adjust.
14241         (dwarf_decode_lines): Adjust.
14242         (dwarf2_start_symtab): Adjust.
14243         (var_decode_location): Adjust.
14244         (new_symbol_full): Adjust.
14245         (dwarf2_const_value_data): Adjust.
14246         (dwarf2_const_value_attr): Adjust.
14247         (dwarf2_const_value): Adjust.
14248         (die_type): Adjust.
14249         (die_containing_type): Adjust.
14250         (build_error_marker_type): Adjust.
14251         (lookup_die_type): Adjust.
14252         (guess_full_die_structure_name): Adjust.
14253         (anonymous_struct_prefix): Adjust.
14254         (determine_prefix): Adjust.
14255         (dwarf2_name): Adjust.
14256         (follow_die_ref_or_sig): Adjust.
14257         (follow_die_offset): Adjust.
14258         (follow_die_ref): Adjust.
14259         (follow_die_sig_1): Adjust.
14260         (follow_die_sig): Adjust.
14261         (get_signatured_type): Adjust.
14262         (get_DW_AT_signature_type): Adjust.
14263         (decode_locdesc): Adjust.
14264         (dwarf_decode_macros): Adjust.
14265         (cu_debug_loc_section): Adjust.
14266         (fill_in_loclist_baton): Adjust.
14267         (dwarf2_symbol_mark_computed): Adjust.
14268         (init_one_comp_unit): Don't assign
14269         dwarf2_cu::dwarf2_per_objfile.
14270         (set_die_type): Adjust.
14271
14272 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14273
14274         * dwarf2read.c (struct mapped_debug_names): Add constructor.
14275         <dwarf2_per_objfile>: New field.
14276         (dwarf2_per_objfile): Remove global.
14277         (get_dwarf2_per_objfile): New function.
14278         (set_dwarf2_per_objfile): New function.
14279         (dwarf2_build_psymtabs_hard): Change objfile parameter to
14280         dwarf2_per_objfile.
14281         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14282         (read_abbrev_offset): Likewise.
14283         (read_indirect_string): Likewise.
14284         (read_indirect_line_string): Likewise.
14285         (read_indirect_string_at_offset): Likewise.
14286         (read_indirect_string_from_dwz): Likewise.
14287         (dwarf2_find_containing_comp_unit): Change objfile parameter to
14288         dwarf2_per_objfile.
14289         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
14290         (create_all_comp_units): Change objfile parameter to
14291         dwarf2_per_objfile.
14292         (create_all_type_units): Likewise.
14293         (process_queue): Add dwarf2_per_objfile parameter.
14294         (read_and_check_comp_unit_head): Likewise.
14295         (lookup_dwo_unit_in_dwp): Likewise.
14296         (get_dwp_file): Likewise.
14297         (process_cu_includes): Likewise.
14298         (struct free_dwo_file_cleanup_data): New struct.
14299         (dwarf2_has_info): Use get_dwarf2_per_objfile and
14300         set_dwarf2_per_objfile.
14301         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
14302         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
14303         context, adjust calls.
14304         (dw2_instantiate_symtab): Likewise.
14305         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
14306         (dw2_get_cu): Likewise.
14307         (create_cu_from_index_list): Change objfile parameter to
14308         dwarf2_per_objfile.
14309         (create_cus_from_index_list): Get dwarf2_per_objfile from
14310         context, adjust calls.
14311         (create_cus_from_index): Likewise.
14312         (create_signatured_type_table_from_index): Change objfile
14313         parameter to dwarf2_per_objfile.
14314         (create_signatured_type_table_from_debug_names): Change objfile
14315         parameter to dwarf2_per_objfile.
14316         (create_addrmap_from_index): Likewise.
14317         (create_addrmap_from_aranges): Likewise.
14318         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
14319         (dw2_setup): Remove.
14320         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
14321         context.
14322         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
14323         get_dwarf2_per_objfile.
14324         (dw2_forget_cached_source_info): Likewise.
14325         (dw2_map_symtabs_matching_filename): Likewise.
14326         (struct dw2_symtab_iterator) <index>: Remove.
14327         <dwarf2_per_objfile>: New field.
14328         (dw2_symtab_iter_init): Replace index parameter with
14329         dwarf2_per_objfile.
14330         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
14331         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
14332         (dw2_print_stats): Likewise.
14333         (dw2_dump): Likewise.
14334         (dw2_expand_symtabs_for_function): Likewise.
14335         (dw2_expand_all_symtabs): Likewise.
14336         (dw2_expand_symtabs_with_fullname): Likewise.
14337         (dw2_expand_marked_cus): Replace index and objfile parameters
14338         with dwarf2_per_objfile.
14339         (dw_expand_symtabs_matching_file_matcher): Add
14340         dwarf2_per_objfile parameter and adjust calls.
14341         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
14342         adjust calls.
14343         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
14344         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
14345         adjust calls.
14346         (create_cus_from_debug_names_list): Replace objfile parameter
14347         with dwarf2_per_objfile and adjust calls.
14348         (create_cus_from_debug_names): Likewise.
14349         (dwarf2_read_debug_names): Likewise.
14350         (mapped_debug_names::namei_to_name): Adjust call.
14351         (dw2_debug_names_iterator::next): Likewise.
14352         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
14353         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
14354         (dw2_debug_names_dump): Likewise.
14355         (dw2_debug_names_expand_symtabs_for_function): Likewise.
14356         (dw2_debug_names_expand_symtabs_matching): Likewise.
14357         (dwarf2_initialize_objfile): Likewise.
14358         (dwarf2_build_psymtabs): Likewise.
14359         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
14360         this_cu.
14361         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
14362         (read_and_check_comp_unit_head): Likewise.
14363         (read_abbrev_offset): Likewise.
14364         (create_debug_type_hash_table): Likewise.
14365         (create_debug_types_hash_table): Likewise.
14366         (create_all_type_units): Replace objfile parameter with
14367         dwarf2_per_objfile.
14368         (add_type_unit): Add dwarf2_per_objfile parameter.
14369         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
14370         with dwarf2_per_objfile.
14371         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
14372         (lookup_dwp_signatured_type): Likewise.
14373         (lookup_signatured_type): Likewise.
14374         (read_cutu_die_from_dwo): Likewise.
14375         (init_tu_and_read_dwo_dies): Likewise.
14376         (init_cutu_and_read_dies): Likewise.
14377         (init_cutu_and_read_dies_no_follow): Likewise.
14378         (allocate_type_unit_groups_table): Add objfile parameter.
14379         (create_type_unit_group): Use dwarf2_per_objfile from cu.
14380         (get_type_unit_group): Likewise.
14381         (process_psymtab_comp_unit): Update call.
14382         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
14383         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
14384         (print_tu_stats): Likewise.
14385         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
14386         in void* parameter.
14387         (build_type_psymtabs): Change objfile parameter to
14388         dwarf2_per_objfile.
14389         (process_skeletonless_type_unit): Use dwarf2_per_objfile
14390         passed in void* parameter.
14391         (process_skeletonless_type_units): Change objfile parameter to
14392         dwarf2_per_objfile.
14393         (set_partial_user): Likewise.
14394         (dwarf2_build_psymtabs_hard): Likewise.
14395         (read_comp_units_from_section): Likewise.
14396         (create_all_comp_units): Likewise.
14397         (scan_partial_symbols): Update calls.
14398         (add_partial_symbol): Likewise.
14399         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
14400         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
14401         (process_queue): Add dwarf2_per_objfile parameter.
14402         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
14403         (compute_compunit_symtab_includes): Likewise.
14404         (process_cu_includes): Add dwarf2_per_objfile parameter.
14405         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
14406         (process_full_type_unit): Likewise.
14407         (process_imported_unit_die): Update call.
14408         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
14409         (read_file_scope): Likewise.
14410         (allocate_dwo_file_hash_table): Add objfile parameter.
14411         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
14412         (create_cus_hash_table): Likewise.
14413         (create_dwp_hash_table): Likewise.
14414         (create_dwo_unit_in_dwp_v1): Likewise.
14415         (create_dwp_v2_section): Likewise.
14416         (create_dwo_unit_in_dwp_v2): Likewise.
14417         (lookup_dwo_unit_in_dwp): Likewise.
14418         (try_open_dwop_file): Likewise.
14419         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
14420         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
14421         cleanup to include a reference to dwarf2_per_objfile.
14422         (open_dwp_file): Add dwarf2_per_objfile parameter.
14423         (open_and_init_dwp_file): Likewise.
14424         (get_dwp_file): Likewise.
14425         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
14426         (queue_and_load_all_dwo_tus): Update call.
14427         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
14428         data.
14429         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
14430         (dwarf2_ranges_process): Likewise.
14431         (dwarf2_get_pc_bounds): Likewise.
14432         (mark_common_block_symbol_computed): Likewise.
14433         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14434         (dwarf2_read_abbrevs): Update call.
14435         (read_partial_die): Use dwarf2_per_objfile from cu.
14436         (find_partial_die): Likewise.
14437         (fixup_partial_die): Likewise.
14438         (read_attribute_value): Likewise.
14439         (read_indirect_string_at_offset_from): Add objfile parameter.
14440         (read_indirect_string_at_offset): Add dwarf2_per_objfile
14441         parameter.
14442         (read_indirect_string_from_dwz): Add objfile parameter.
14443         (read_indirect_string): Add objfile parameter.
14444         (read_addr_index_1): Add dwarf2_per_objfile parameter.
14445         (read_addr_index): Use dwarf2_per_objfile from cu.
14446         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
14447         call dw2_setup.
14448         (read_str_index): Use dwarf2_per_objfile from cu.
14449         (get_debug_line_section): Likewise.
14450         (read_formatted_entries): Add dwarf2_per_objfile parameter.
14451         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
14452         (new_symbol_full): Use dwarf2_per_objfile from cu.
14453         (build_error_marker_type): Likewise.
14454         (lookup_die_type): Likewise.
14455         (determine_prefix): Likewise.
14456         (follow_die_offset): Likewise.
14457         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
14458         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
14459         (dwarf2_fetch_die_type_sect_off): Likewise.
14460         (dwarf2_get_die_type): Likewise.
14461         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
14462         (get_signatured_type): Likewise.
14463         (get_DW_AT_signature_type): Likewise.
14464         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
14465         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
14466         (cu_debug_loc_section): Likewise.
14467         (fill_in_loclist_baton): Likewise.
14468         (dwarf2_symbol_mark_computed): Likewise.
14469         (dwarf2_find_containing_comp_unit): Change objfile parameter to
14470         dwarf2_per_objfile.
14471         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
14472         parameter.
14473         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
14474         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
14475         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
14476         (set_die_type): Use dwarf2_free_objfile from cu.
14477         (get_die_type_at_offset): Likewise.
14478         (dwarf2_per_objfile_free): Don't assign global variable.
14479         (debug_names) <constructor>: Add dwarf2_per_objfile
14480         parameter, update m_debugstrlookup construction.
14481         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
14482         parameter.
14483         <m_dwarf2_per_objfile>: New field.
14484         <lookup>: Use m_dwarf2_per_objfile.
14485         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
14486         (psyms_seen_size): Likewise.
14487         (write_gdbindex): Replace objfile parameter with
14488         dwarf2_per_objfile.
14489         (write_debug_names): Likewise.
14490         (write_psymtabs_to_index): Likewise.
14491         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
14492         calls.
14493
14494 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14495
14496         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
14497         <dwarf2_per_objfile>: New field.
14498         (struct dwarf2_per_cu_data) <objfile>: Remove.
14499         <dwarf2_per_objfile>: New field.
14500         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
14501         of objfile.
14502         (create_signatured_type_table_from_index): Likewise.
14503         (create_debug_type_hash_table): Likewise.
14504         (fill_in_sig_entry_from_dwo_entry): Likewise.
14505         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
14506         (create_type_unit_group): Assign dwarf2_per_objfile instead of
14507         objfile.
14508         (create_partial_symtab): Access objfile through
14509         dwarf2_per_objfile.
14510         (process_psymtab_comp_unit_reader): Likewise.
14511         (read_comp_units_from_section): Likewise.
14512         (scan_partial_symbols): Likewise.
14513         (add_partial_symbol): Likewise.
14514         (add_partial_subprogram): Likewise.
14515         (peek_die_abbrev): Likewise.
14516         (fixup_go_packaging): Likewise.
14517         (process_full_comp_unit): Likewise.
14518         (process_full_type_unit): Likewise.
14519         (process_imported_unit_die): Likewise.
14520         (dwarf2_compute_name): Likewise.
14521         (dwarf2_physname): Likewise.
14522         (read_import_statement): Likewise.
14523         (create_cus_hash_table): Assign dwarf2_physname instead of
14524         objfile.
14525         (read_func_scope): Access objfile through dwarf2_per_objfile.
14526         (read_lexical_block_scope): Likewise.
14527         (read_call_site_scope): Likewise.
14528         (read_variable): Likewise.
14529         (dwarf2_rnglists_process): Likewise.
14530         (dwarf2_ranges_process): Likewise.
14531         (dwarf2_ranges_read): Likewise.
14532         (dwarf2_record_block_ranges): Likewise.
14533         (dwarf2_add_field): Likewise.
14534         (dwarf2_add_member_fn): Likewise.
14535         (read_structure_type): Likewise.
14536         (process_structure_scope): Likewise.
14537         (read_enumeration_type): Likewise.
14538         (read_array_type): Likewise.
14539         (read_common_block): Likewise.
14540         (read_namespace_type): Likewise.
14541         (read_namespace): Likewise.
14542         (read_module_type): Likewise.
14543         (read_tag_pointer_type): Likewise.
14544         (read_tag_ptr_to_member_type): Likewise.
14545         (read_tag_string_type): Likewise.
14546         (read_subroutine_type): Likewise.
14547         (read_typedef): Likewise.
14548         (read_base_type): Likewise.
14549         (attr_to_dynamic_prop): Likewise.
14550         (read_subrange_type): Likewise.
14551         (read_unspecified_type): Likewise.
14552         (load_partial_dies): Likewise.
14553         (read_partial_die): Likewise.
14554         (find_partial_die): Likewise.
14555         (guess_partial_die_structure_name): Likewise.
14556         (fixup_partial_die): Likewise.
14557         (read_attribute_value): Likewise.
14558         (read_addr_index_from_leb128): Likewise.
14559         (dwarf2_read_addr_index): Likewise.
14560         (dwarf2_string_attr): Likewise.
14561         (lnp_state_machine::check_line_address): Likewise.
14562         (dwarf_decode_lines_1): Likewise.
14563         (dwarf_decode_lines): Likewise.
14564         (dwarf2_start_symtab): Likewise.
14565         (var_decode_location): Likewise.
14566         (new_symbol_full): Likewise.
14567         (dwarf2_const_value_data): Likewise.
14568         (dwarf2_const_value_attr): Likewise.
14569         (dwarf2_const_value): Likewise.
14570         (die_type): Likewise.
14571         (die_containing_type): Likewise.
14572         (lookup_die_type): Likewise.
14573         (guess_full_die_structure_name): Likewise.
14574         (anonymous_struct_prefix): Likewise.
14575         (dwarf2_name): Likewise.
14576         (follow_die_ref_or_sig): Likewise.
14577         (follow_die_offset): Likewise.
14578         (follow_die_ref): Likewise.
14579         (dwarf2_fetch_die_loc_sect_off): Likewise.
14580         (dwarf2_fetch_constant_bytes): Likewise.
14581         (dwarf2_fetch_die_type_sect_off): Likewise.
14582         (dwarf2_get_die_type): Likewise.
14583         (follow_die_sig): Likewise.
14584         (decode_locdesc): Likewise.
14585         (dwarf2_per_cu_objfile): Likewise.
14586         (dwarf2_per_cu_text_offset): Likewise.
14587         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
14588         objfile.
14589         (set_die_type): Access objfile through
14590         dwarf2_per_objfile.
14591
14592 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14593
14594         * valprint.c (converted_character_d): Remove typedef.
14595         (DEF_VEC_O (converted_character_d)): Remove.
14596         (count_next_character): Use std::vector.
14597         (print_converted_chars_to_obstack): Likewise.
14598         (generic_printstr): Likewise.
14599
14600 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14601
14602         * xml-support.h (struct gdb_xml_value): Add constructor.
14603         <value>: Change type to unique_xmalloc_ptr.
14604         (gdb_xml_value_s): Remove typedef.
14605         (DEF_VEC_O (gdb_xml_value_s)): Remove.
14606         (gdb_xml_element_start_handler): Change parameter type to
14607         std::vector.
14608         (xml_find_attribute): Likewise.
14609         * xml-support.c (xml_find_attribute): Change parameter type to
14610         std::vector and adjust.
14611         (gdb_xml_values_cleanup): Remove.
14612         (gdb_xml_parser::start_element): Adjust to std::vector.
14613         (xinclude_start_include): Change paraeter type to std::vector
14614         and adjust.
14615         * btrace.c (check_xml_btrace_version): Likewise.
14616         (parse_xml_btrace_block): Likewise.
14617         (parse_xml_btrace_pt_config_cpu): Likewise.
14618         (parse_xml_btrace_pt): Likewise.
14619         (parse_xml_btrace_conf_bts): Likewise.
14620         (parse_xml_btrace_conf_pt): Likewise.
14621         * memory-map.c (memory_map_start_memory): Likewise.
14622         (memory_map_start_property): Likewise.
14623         * osdata.c (osdata_start_osdata): Likewise.
14624         (osdata_start_item): Likewise.
14625         (osdata_start_column): Likewise.
14626         * remote.c (start_thread): Likewise.
14627         * solib-aix.c (library_list_start_library): Likewise.
14628         (library_list_start_list): Likewise.
14629         * solib-svr4.c (library_list_start_library): Likewise.
14630         (svr4_library_list_start_list): Likewise.
14631         * solib-target.c (library_list_start_segment): Likewise.
14632         (library_list_start_section): Likewise.
14633         (library_list_start_library): Likewise.
14634         (library_list_start_list): Likewise.
14635         * tracepoint.c (traceframe_info_start_memory): Likewise.
14636         (traceframe_info_start_tvar): Likewise.
14637         * xml-syscall.c (syscall_start_syscall): Likewise.
14638         * xml-tdesc.c (tdesc_start_target): Likewise.
14639         (tdesc_start_feature): Likewise.
14640         (tdesc_start_reg): Likewise.
14641         (tdesc_start_union): Likewise.
14642         (tdesc_start_struct): Likewise.
14643         (tdesc_start_flags): Likewise.
14644         (tdesc_start_enum): Likewise.
14645         (tdesc_start_field): Likewise.
14646         (tdesc_start_enum_value): Likewise.
14647         (tdesc_start_vector): Likewise.
14648
14649 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14650
14651         * extension.h (struct xmethod_worker) <clone>: Remove.
14652         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
14653         Remove.
14654         (python_xmethod_worker::clone): Remove.
14655         * valops.c (find_overload_match): Use std::move instead of
14656         clone.
14657
14658 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14659
14660         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
14661         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
14662         <free_xmethod_worker_data>: Remove.
14663         <get_matching_xmethod_workers>: Chance VEC to std::vector.
14664         <get_xmethod_arg_types>: Remove.
14665         <get_xmethod_result_type>: Remove.
14666         <invoke_xmethod>: Remove.
14667         * extension.c (new_xmethod_worker): Remove.
14668         (clone_xmethod_worker): Remove.
14669         (get_matching_xmethod_workers): Return void, pass std::vector by
14670         pointer.
14671         (get_xmethod_arg_types): Rename to...
14672         (xmethod_worker::get_arg_types): ... this, and adjust.
14673         (get_xmethod_result_type): Rename to...
14674         (xmethod_worker::get_result_type): ... this, and adjust.
14675         (invoke_xmethod): Remove.
14676         (free_xmethod_worker): Remove.
14677         (free_xmethod_worker_vec): Remove.
14678         * extension.h (enum ext_lang_rc): Move here from
14679         extension-priv.h.
14680         (struct xmethod_worker): Add constructor and destructor.
14681         <data>: Remove.
14682         <value>: Remove.
14683         <invoke, clone, do_get_result_type, do_get_arg_types>: New
14684         virtual pure methods.
14685         <get_arg_types, get_result_type>: New methods.
14686         (xmethod_worker_ptr): Remove typedef.
14687         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
14688         (xmethod_worker_vec): Remove typedef.
14689         (xmethod_worker_up): New typedef.
14690         (invoke_xmethod): Remove.
14691         (clone_xmethod_worker): Remove.
14692         (free_xmethod_worker): Remove.
14693         (free_xmethod_worker_vec): Remove.
14694         (get_xmethod_arg_types): Remove.
14695         (get_xmethod_result_type): Remove.
14696         * valops.c (find_method_list): Use std::vector, don't use
14697         intermediate vector.
14698         (value_find_oload_method_list): Use std::vector.
14699         (find_overload_match): Use std::vector.
14700         (find_oload_champ): Use std::vector.
14701         * value.c (value_free): Use operator delete.
14702         (value_of_xmethod): Rename to...
14703         (value_from_xmethod): ... this.  Don't assign
14704         xmethod_worker::value, take rvalue-reference.
14705         (result_type_of_xmethod): Adjust.
14706         (call_xmethod): Adjust.
14707         * value.h: Include extension.h.
14708         (struct xmethod_worker): Don't forward-declare.
14709         (value_of_xmethod): Rename to...
14710         (value_from_xmethod): ... this, take rvalue-reference.
14711         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
14712         (struct python_xmethod_worker): ... this, add constructor and
14713         destructor.
14714         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
14715         (gdbpy_free_xmethod_worker_data): Rename to...
14716         (python_xmethod_worker::~python_xmethod_worker): ... this and
14717         adjust.
14718         (gdbpy_clone_xmethod_worker_data): Rename to...
14719         (python_xmethod_worker::clone): ... this and adjust.
14720         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
14721         temporary vector.
14722         (gdbpy_get_xmethod_arg_types): Rename to...
14723         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
14724         (gdbpy_get_xmethod_result_type): Rename to...
14725         (python_xmethod_worker::do_get_result_type): ... this and
14726         adjust.
14727         (gdbpy_invoke_xmethod): Rename to...
14728         (python_xmethod_worker::invoke): ... this and adjust.
14729         (new_python_xmethod_worker): Rename to...
14730         (python_xmethod_worker::python_xmethod_worker): ... this and
14731         adjust.
14732         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
14733         Remove.
14734         (gdbpy_free_xmethod_worker_data): Remove.
14735         (gdbpy_get_matching_xmethod_workers): Use std::vector.
14736         (gdbpy_get_xmethod_arg_types): Remove.
14737         (gdbpy_get_xmethod_result_type): Remove.
14738         (gdbpy_invoke_xmethod): Remove.
14739         * python/python.c (python_extension_ops): Remove obsolete
14740         callbacks.
14741
14742 2018-01-05  Pedro Alves  <palves@redhat.com>
14743
14744         PR gdb/18653
14745         * common/signals-state-save-restore.c
14746         (save_original_signals_state): New parameter 'quiet'.  Warn if we
14747         find a custom handler preinstalled, instead of internal erroring.
14748         But only warn if !quiet.
14749         * common/signals-state-save-restore.h
14750         (save_original_signals_state): New parameter 'quiet'.
14751         * main.c (captured_main_1): Move save_original_signals_state call
14752         after option handling, and pass QUIET.
14753
14754 2018-01-05  Pedro Alves  <palves@redhat.com>
14755
14756         * spu-tdep.c (spu_catch_start): Pass
14757         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
14758
14759 2018-01-05  Pedro Alves  <palves@redhat.com>
14760
14761         PR gdb/22670
14762         * ada-lang.c (literal_symbol_name_matcher): New function.
14763         (ada_get_symbol_name_matcher): Use it for
14764         symbol_name_match_type::SEARCH_NAME.
14765         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
14766         it down instead of assuming symbol_name_match_type::FULL.
14767         * block.h (block_lookup_symbol): New parameter 'match_type'.
14768         * c-valprint.c (print_unpacked_pointer): Use
14769         lookup_symbol_search_name instead of lookup_symbol.
14770         * compile/compile-object-load.c (get_out_value_type): Pass down
14771         symbol_name_match_type::SEARCH_NAME.
14772         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
14773         symbol_name_match_type::FULL.
14774         * cp-support.c (cp_get_symbol_name_matcher): Handle
14775         symbol_name_match_type::SEARCH_NAME.
14776         * infrun.c (insert_exception_resume_breakpoint): Use
14777         lookup_symbol_search_name.
14778         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
14779         * psymtab.c (maintenance_check_psymtabs): Use
14780         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
14781         * stack.c (print_frame_args): Use lookup_symbol_search_name and
14782         SYMBOL_SEARCH_NAME.
14783         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
14784         if symbol_name_match_type::SEARCH_NAME.
14785         (lookup_symbol_in_language): Pass down
14786         symbol_name_match_type::FULL.
14787         (lookup_symbol_search_name): New.
14788         (lookup_language_this): Pass down
14789         symbol_name_match_type::SEARCH_NAME.
14790         (lookup_symbol_aux, lookup_local_symbol): New parameter
14791         'match_type'.  Pass it down.
14792         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
14793         (lookup_symbol_search_name): New declaration.
14794         (lookup_symbol_in_block): New 'match_type' parameter.
14795
14796 2018-01-05  Pedro Alves  <palves@redhat.com>
14797
14798         PR gdb/22670
14799         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
14800         ada_lookup_symbol.
14801         (ada_lookup_symbol): Reimplement in terms of
14802         ada_lookup_symbol_list, bits factored out from
14803         ada_lookup_encoded_symbol.
14804
14805 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14806
14807         * ada-exp.y (write_object_renaming): When subscripting an array
14808         using a symbol as the index, pass the block in call to
14809         ada_lookup_encoded_symbol when looking that symbol up.
14810
14811 2018-01-05  Jerome Guitton  <guitton@adacore.com>
14812
14813         * ada-lang.c (ada_array_length): Use ada_index_type instead of
14814         TYPE_INDEX_TYPE.
14815
14816 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14817
14818         * ada-lang.c (ada_to_fixed_value_create): Add handling of
14819         the case where VALUE_LVAL (val0) is not lval_memory.
14820
14821 2018-01-05  Xavier Roirand  <roirand@adacore.com>
14822
14823         * ada-valprint.c (print_optional_low_bound): Handle
14824         character-indexed array printing like boolean-indexed array
14825         printing.
14826
14827 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14828
14829         * NEWS: Create a new section for the next release branch.
14830         Rename the section of the current branch, now that it has
14831         been cut.
14832
14833 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14834
14835         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
14836         * version.in: Bump version to 8.1.50.DATE-git.
14837
14838 2018-01-03  Xavier Roirand  <roirand@adacore.com>
14839
14840         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
14841         Add field.
14842         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
14843         Add field.
14844         (default_exception_support_info) <catch_handlers_sym>: Add field.
14845         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
14846         (ada_exception_name_addr_1): Add "catch handlers" handling.
14847         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
14848         Update all callers.
14849         (create_excep_cond_exprs) <ex>: Add parameter.
14850         (re_set_exception): Update create_excep_cond_exprs call.
14851         (print_it_exception, print_one_exception, print_mention_exception)
14852         (print_recreate_exception): Add "catch handler" handling.
14853         (allocate_location_catch_handlers, re_set_catch_handlers)
14854         (check_status_catch_handlers, print_it_catch_handlers)
14855         (print_one_catch_handlers, print_mention_catch_handlers)
14856         (print_recreate_catch_handlers): New function.
14857         (catch_handlers_breakpoint_ops): New variable.
14858         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
14859         Add parameter.  Add "catch handler" handling.
14860         (ada_exception_sym_name, ada_exception_breakpoint_ops):
14861         Add "catch handler" handling.
14862         (ada_exception_catchpoint_cond_string): Add "catch handler"
14863         handling.
14864         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
14865         call.
14866         (catch_ada_handlers_command): New function.
14867         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
14868         operations structure.
14869         (_initialize_ada_language): Add "catch handlers" command entry.
14870         * NEWS: Document "catch handlers" feature.
14871
14872 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14873
14874         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
14875         account when creating the array type of the slice.
14876         (ada_value_slice): Likewise.
14877
14878 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14879
14880         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
14881         New enum value.
14882         (create_array_type_with_stride): Add byte_stride_prop parameter.
14883         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
14884         New parameter.  Update all callers in this file.
14885         (array_type_has_dynamic_stride): New function.
14886         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
14887         of arrays with dynamic byte strides.
14888         * dwarf2read.c (read_array_type): Add support for dynamic
14889         DW_AT_byte_stride attributes.
14890
14891 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14892
14893         * dwarf2read.c (read_unspecified_type): Treat
14894         DW_TAG_enumeration_type DIEs from Ada units as stubs.
14895
14896 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14897
14898         Update copyright year range in all GDB files.
14899
14900 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
14901
14902         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
14903         and gdb/testsuite/gdb.base/step-line.c.
14904
14905 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14906
14907         * copyright.py (main): Dump the contents of
14908         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
14909         even if BY_HAND is empty.
14910
14911 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14912
14913         * top.c (print_gdb_version): Update Copyright year in version
14914         message.
14915
14916 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14917
14918         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
14919
14920 For older changes see ChangeLog-2017.
14921 \f
14922 Local Variables:
14923 mode: change-log
14924 left-margin: 8
14925 fill-column: 74
14926 version-control: never
14927 coding: utf-8
14928 End: