Fix failing cooked_read selftest for CSKY.
[external/binutils.git] / gdb / ChangeLog
1 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
2
3         * regcache.c (cooked_read_test): Add CSKY to the list of
4         architectures with a save_reggroup
5
6 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
7
8         PR gdb/23368
9         * infrun.c (follow_exec): In the follow_exec_mode_new case,
10         transfer terminal state from old new new inferior.
11         * terminal.h (swap_terminal_info): New function.
12         * inflow.c (swap_terminal_info): New function.
13
14 2018-10-23  Tom Tromey  <tom@tromey.com>
15
16         * record-btrace.c (get_thread_current_frame_id): Rename from
17         get_thread_current_frame.  Return a frame_id.
18         (record_btrace_start_replaying): Update.
19
20 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
21
22         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
23         for CSRs.
24
25 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
26
27         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
28         have_nonsteppable_watchpoint attribute to 1.
29
30 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
31
32         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
33         register names.
34         (struct register_alias): Rename to...
35         (struct riscv_register_alias): ...this, and update comment.
36         (riscv_register_aliases): Update type, and alias names.  Remove
37         CSR names from this list.
38         (riscv_register_name): Use riscv_gdb_reg_names for int and float
39         register names.  Add an extra assertion.
40         (riscv_is_regnum_a_named_csr): New function.
41         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
42
43 2018-10-22  Jim Wilson  <jimw@sifive.com>
44
45         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
46         FP reg smaller than FP reg size, and fill with -1 instead of 0.
47
48         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
49         (riscv_register_type): Use them.
50         (riscv_print_one_register_info): Handle union of floats same as float.
51         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
52         riscv_fpreg_q_type fields.
53
54 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
55
56         * gdbarch.sh (gdbarch_num_cooked_regs): New.
57         * gdbarch.h: Re-generate.
58         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
59         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
60         * eval.c (evaluate_subexp_standard): Likewise.
61         * findvar.c (value_of_register): Likewise.
62         (value_of_register_lazy): Likewise.
63         (address_from_register): Likewise.
64         * frame.c (get_frame_register_bytes): Likewise.
65         * gdbarch-selftests.c (register_to_value_test): Likewise.
66         * h8300-tdep.c (h8300_register_type): Likewise.
67         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
68         (i386_svr4_reg_to_regnum): Likewise.
69         * infcmd.c (default_print_registers_info): Likewise.
70         (registers_info): Likewise.
71         (print_vector_info): Likewise.
72         (default_print_float_info): Likewise.
73         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
74         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
75         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
76         (mi_cmd_data_list_changed_registers): Likewise.
77         (mi_cmd_data_list_register_values): Likewise.
78         (mi_cmd_data_write_register_values): Likewise.
79         (mi_cmd_trace_frame_collected): Likewise.
80         * mips-tdep.c (print_gp_register_row): Likewise.
81         (mips_print_registers_info): Likewise.
82         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
83         * regcache.c (init_regcache_descr): Likewise.
84         (register_size): Likewise.
85         (register_dump::dump): Likewise.
86         (cooked_read_test): Likewise.
87         (cooked_write_test): Likewise.
88         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
89         (rs6000_gdbarch_init): Likewise.
90         * stabsread.c (stab_reg_to_regnum): Likewise.
91         * stack.c (info_frame_command): Likewise.
92         * target-descriptions.c (tdesc_register_name): Likewise.
93         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
94         * tui/tui-regs.c (tui_show_register_group): Likewise.
95         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
96         (user_reg_map_regnum_to_name): Likewise.
97         (value_of_user_reg): Likewise.
98         (maintenance_print_user_registers): Likewise.
99         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
100         (xtensa_register_name): Likewise.
101         (xtensa_register_type): Likewise.
102         (xtensa_reg_to_regnum): Likewise.
103         (xtensa_pseudo_register_read): Likewise.
104         (xtensa_pseudo_register_write): Likewise.
105
106 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
107
108         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
109         correctly-sized buffer with raw_read.
110         (amd64_pseudo_register_write): Use correctly-sized buffer for
111         raw_read/raw_write.
112
113 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
114
115         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
116         in add_prefix_cmd of set print type.
117
118 2018-10-19  Tom Tromey  <tom@tromey.com>
119
120         PR tui/18388:
121         * NEWS: Mention tabset deprecation.
122         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
123         (update_tab_width): New function.
124         (tui_set_tab_width, tui_show_tab_width): New functions.
125         (tui_set_tab_width_command): Use update_tab_width.
126         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
127         Add new "set tui tab-width" command.
128         * tui/tui-source.c (tui_set_source_content): Update.
129         * tui/tui-disasm.c (tui_set_disassem_content): Update.
130         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
131         Don't declare.
132         (tui_tab_width): Declare.
133         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
134         (tui_set_default_tab_len): Remove.
135
136 2018-10-19  Tom Tromey  <tom@tromey.com>
137
138         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
139         (key_is_backspace, tui_getc): Don't declare.
140         * tui/tui-io.c (key_is_start_sequence): Now static.
141         (key_is_end_sequence, key_is_backspace): Remove.
142         (tui_getc): Now static.
143
144 2018-10-19  Tom Tromey  <tom@tromey.com>
145
146         * symfile.c (reread_symbols): Clear "static_links".
147
148 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
149
150         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
151         define.
152         (aarch64_linux_sigframe_init): Extra boundary checks.
153
154 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
155
156         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
157         the possibly non-existent tdesc type 'vec128', but the type of raw
158         register v16 instead.
159
160 2018-10-19  Gary Benson <gbenson@redhat.com>
161
162         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
163
164 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
165
166         PR cli/23785
167         * cli/cli-dump.c (restore_binary_file): Check if "file" is
168         NULL.
169
170 2018-10-17  Paul Koning  <paul_koning@dell.com>
171
172         * charset.c (convert_between_encodings): Fix unsigned overflow.
173
174 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
175
176         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
177         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
178         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
179         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
180         New functions.
181         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
182         and fbsd_info_proc_mappings_header.
183         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
184         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
185         New.
186
187 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
188
189         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
190         Solaris Maintainer.
191
192 2018-10-15  Tom Tromey  <tom@tromey.com>
193
194         * tui/tui.c (strcat_to_buf): Remove casts.
195         * tui/tui-winsource.c (tui_show_source_line)
196         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
197         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
198         * tui/tui-windata.c (tui_first_data_item_displayed)
199         (tui_delete_data_content_windows, tui_erase_data_content)
200         (tui_display_all_data, tui_display_data_from)
201         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
202         * tui/tui-win.c (tui_set_win_height)
203         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
204         casts.
205         * tui/tui-win.c (tui_resize_all): Remove casts.
206         (tui_scroll_backward_command, tui_set_focus)
207         (tui_set_tab_width_command): Likewise.
208         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
209         * tui/tui-regs.c (tui_show_register_group): Remove cast.
210         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
211         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
212         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
213         Remove casts.
214
215 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
216
217         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
218         AArch64/ARM maintainer.
219
220 2018-10-11  Gary Benson <gbenson@redhat.com>
221
222         * interps.h (interp::m_name): Make private and mutable.
223         * interps.c (interp::~interp): Free m_name.
224
225 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
226             Simon Marchi <simark@simark.ca>
227
228         * README (`configure' options): Add documentation for new
229         "--enable-unit-tests" option.
230         * acinclude.m4: Include "selftest.m4".
231         * configure: Regenerate.
232         * configure.ac: Use "GDB_AC_SELFTEST".
233         * maint.c (maintenance_selftest): Update message informing
234         that selftests have been disabled.
235         (maintenance_info_selftests): Likewise.
236         * selftest.m4: New file.
237
238 2018-10-10  Gary Benson <gbenson@redhat.com>
239
240         * remote.c (remote_target::remote_send_printf): Add
241         missing va_end found by Coverity.
242
243 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
244
245         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
246
247 2018-10-09  Tom Tromey  <tom@tromey.com>
248
249         * configure: Rebuild.
250         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
251         * NEWS: Update --enable-ubsan documentation.
252
253 2018-10-09  Gary Benson <gbenson@redhat.com>
254
255         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
256         found by Coverity.
257
258 2018-10-08  Tom Tromey  <tom@tromey.com>
259
260         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
261         variable.
262         (riscv_fbsd_init_abi): Likewise.
263
264 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
265         * valops.c (value_struct_elt_for_reference): Rename local variable
266         to work around the shadowing a previous local warning.
267
268 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
269
270         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
271         * NEWS: Mention new FreeBSD/riscv native configuration.
272         * configure.host: Add riscv*-*-freebsd*.
273         * configure.nat: Likewise.
274         * riscv-fbsd-nat.c: New file.
275
276 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
277
278         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
279         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
280         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
281         * NEWS: Mention new FreeBSD/riscv target.
282         * configure.tgt: Add riscv*-*-freebsd*.
283         * riscv-fbsd-tdep.c: New file.
284         * riscv-fbsd-tdep.h: New file.
285
286 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
287
288         * regcache.h (struct regcache_map_entry): Note that this type can
289         be used with traditional frame caches.
290         * trad-frame.c (trad_frame_set_reg_regmap): New.
291         * trad-frame.h (trad_frame_set_reg_regmap): New.
292
293 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
294
295         PR c++/16841
296         * valops.c (get_virtual_base_offset): New function.
297         (value_struct_elt_for_reference): Use it to get virtual base offset
298         and add it in calculating class member address.
299
300 2018-10-08   John Darrington <john@darrington.wattle.id.au>
301
302     * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
303       (check_producer): Check if the producer is codewarrior.
304       (producer_is_codewarrior): New function.
305       (lnp_state_machine::record_line): Ignore is_stmt flag for records
306        produced by codewarrior.
307       (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
308
309 2018-10-06  Tom Tromey  <tom@tromey.com>
310
311         PR python/19399:
312         * python/py-inferior.c: Add "architecture" entry.
313         (infpy_architecture): New function.
314
315 2018-10-06  Tom Tromey  <tom@tromey.com>
316
317         PR python/21765:
318         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
319         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
320         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
321         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
322
323 2018-10-06  Tom Tromey  <tom@tromey.com>
324
325         PR build/17077:
326         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
327         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
328         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
329         #include.
330
331 2018-10-06  Tom Tromey  <tom@tromey.com>
332
333         * python/py-breakpoint.c (bppy_get_location): Handle a
334         bp_breakpoint without a location.
335
336 2018-10-06  Tom Tromey  <tom@tromey.com>
337
338         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
339         (_RegEx): Reformat help text.
340         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
341         (AnyCallerIs, AnyCallerMatches): Reformat help text.
342         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
343         text.
344         * python/lib/gdb/command/xmethods.py (InfoXMethod)
345         (EnableXMethod, DisableXMethod): Remove help indentation.
346         Capitalize meta-syntactic variables.
347         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
348         (EnableUnwinder, DisableUnwinder): Remove help indentation.
349         Capitalize meta-syntactic variables.
350         * python/lib/gdb/command/explore.py (ExploreCommand)
351         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
352         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
353         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
354         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
355         Remove help indentation.
356         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
357         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
358         (DisableFrameFilter, SetFrameFilterPriority)
359         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
360
361 2018-10-06  Tom Tromey  <tom@tromey.com>
362
363         PR tui/28819:
364         * tui/tui-io.c (gdb_wgetch): New function.
365         (tui_mld_getc, tui_getc): Use it.
366
367 2018-10-05  Tom Tromey  <tom@tromey.com>
368
369         * sol-thread.c (sol_thread_target::wait): Rename inner
370         "save_ptid".
371
372 2018-10-04  Tom Tromey  <tom@tromey.com>
373
374         * configure: Rebuild.
375         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
376
377 2018-10-04  Tom Tromey  <tom@tromey.com>
378
379         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
380         declaration of "block".
381
382 2018-10-04  Tom Tromey  <tom@tromey.com>
383
384         * common/filestuff.c (fdwalk): Remove inner declaration of
385         "result".
386
387 2018-10-04  Tom Tromey  <tom@tromey.com>
388
389         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
390         "structs_addr" and hoist declaration.
391
392 2018-10-04  Tom Tromey  <tom@tromey.com>
393
394         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
395         variable "size".
396
397 2018-10-04  Tom Tromey  <tom@tromey.com>
398
399         * mdebugread.c (parse_partial_symbols): Use std::string.
400
401 2018-10-04  Tom Tromey  <tom@tromey.com>
402
403         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
404         * p-valprint.c (pascal_val_print): Split inner "i" variable.
405         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
406         header.
407         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
408         more inner scope.
409         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
410         * varobj.c (varobj_update): Rename inner "newobj",
411         "type_changed".
412         * valprint.c (generic_emit_char): Rename inner "buf".
413         * valops.c (find_overload_match): Rename inner "temp".
414         (value_struct_elt_for_reference): Declare "v" in more inner
415         scope.
416         * v850-tdep.c (v850_push_dummy_call): Rename "len".
417         * unittests/array-view-selftests.c (run_tests): Rename inner
418         "vec".
419         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
420         header.
421         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
422         "tsv" in more inner scope.
423         (print_one_static_tracepoint_marker): Rename inner
424         "tuple_emitter".
425         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
426         (tic6x_push_dummy_call): Don't redeclare "addr".
427         * target-float.c: Declare "dto" lower.
428         * symtab.c (lookup_local_symbol): Rename inner "sym".
429         (find_pc_sect_line): Rename inner "pc".
430         * stack.c (print_frame): Don't redeclare "gdbarch".
431         (return_command): Rename inner "gdbarch".
432         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
433         "sp".
434         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
435         header.
436         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
437         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
438         scope.
439         * remote.c (remote_target::update_thread_list): Don't redeclare
440         "tp".
441         (remote_target::process_initial_stop_replies): Rename inner
442         "thread".
443         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
444         (remote_target::wait_as): Don't redeclare "stop_reply".
445         (remote_target::get_thread_local_address): Rename inner
446         "result".
447         (remote_target::get_tib_address): Likewise.
448
449         * regcache.c (cooked_read_test): Rename "regnum".
450         * record-btrace.c (cmd_record_btrace_start): Rename inner
451         "exception".
452         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
453         loop header.
454         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
455         header.
456         (ppu2spu_sniffer): Rename inner "buf".
457         * parse.c (operator_check_standard): Rename inner "type",
458         "objfile".
459         * p-valprint.c (pascal_val_print): Introduce new scope for
460         "low_bound", "high_bound".
461         * p-exp.y (yylex): Declare "i" in loop header.
462         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
463         Lower declaration of "s".
464         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
465         header.
466         (nios2_push_dummy_call): Rename "len".
467         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
468         "buf".
469         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
470         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
471         (linux_xfer_osdata_modules): Likewise.
472         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
473         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
474         (mips_o64_push_dummy_call): Likewise.
475         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
476         "op".
477         * mi/mi-main.c (list_available_thread_groups): Rename inner
478         "tuple_emitter".
479         (mi_cmd_data_read_memory): Rename inner "opts".
480         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
481         "tuple_emitter".
482         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
483         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
484         more inner scope.
485         (parse_partial_symbols): Rename inner "pst", "p", "name"
486         * main.c (captured_main_1): Rename inner "i"s.
487         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
488         "oso2".
489         * linux-tdep.c (linux_info_proc): Rename inner "filename".
490         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
491         * infrun.c (handle_no_resumed): Don't redeclare "thread".
492         (handle_signal_stop): Rename inner "gdbarch".
493         (handle_command): Declare "signum" in loop header.
494         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
495         "status".
496         (examine_prologue): Rename inner "sol" and "sof".
497         (ia64_extract_return_value): Rename inner "val".  Declare another
498         "val" in a more inner scope.
499         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
500         inner scope.
501         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
502         "except".
503         * findvar.c (default_read_var_value): Don't redeclare "addr".
504         * f-exp.y (yylex): Declare "i" in loop header.
505         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
506         Rename inner "type", "expect_type".
507         (evaluate_subexp_for_sizeof): Rename inner "pc".
508         * elfread.c (elf_symfile_read): Rename inner "abfd".
509         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
510         "bytes_read".
511         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
512         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
513         (dwarf_decode_line_header): Rename inner "lh".
514         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
515         "offset".  Declare "i" in loop header.
516         (disassemble_dwarf_expression): Rename inner "addr_size".
517         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
518         inner "result".
519         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
520         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
521         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
522         "inner_list_emitter".
523         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
524         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
525         declaration in a block.
526         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
527         * cp-valprint.c (cp_print_value_fields): Don't redeclare
528         "obstack_final_size".
529         * cp-support.c (inspect_type): Declare "i" in loop header.
530         * compile/compile.c (compile_instance::insert_symbol_error):
531         Rename inner "e".
532         * common/agent.c (agent_run_command): Remove inner "ret"
533         declaration.
534         * coffread.c (coff_symfile_read): Rename inner "name".
535         (coff_symfile_read): Rename inner "abfd".
536         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
537         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
538         "high".
539         * c-exp.y (lex_one_token): Move "len" declaration lower.
540         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
541         "gdbarch".
542         (create_exception_master_breakpoint): Likewise.  Don't redeclare
543         "b".
544         (watch_command_1): Declare "mark" later.
545         (clear_command): Don't shadow "a" or "b".
546         (delete_command): Rename inner "b".
547         (delete_trace_command): Likewise.
548         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
549         "op".
550         (arm_gdbarch_init): Remove inner "e_flags".
551         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
552         "offset" in inner blocks.
553
554 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
555
556         * dwarf-index-write.c (file_write): Don't write if the vector is
557         empty.
558
559 2018-10-05  Tom de Vries  <tdevries@suse.de>
560
561         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
562         PyArg_ParseTuple call.
563
564 2018-10-05  Tom de Vries  <tdevries@suse.de>
565
566         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
567         PyArg_ParseTuple call.
568
569 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
570
571         * psymtab.c (recursively_search_psymtabs): Reformat parameters
572         to avoid exceeding 80 characters per line limit.
573
574 2018-10-04  Tom Tromey  <tom@tromey.com>
575
576         * symfile.c (syms_from_objfile_1, finish_new_objfile)
577         (reread_symbols): Update.
578         * complaints.h (clear_complaints): Remove argument.
579         * complaints.c (enum complaint_series): Remove.
580         (series): Remove global.
581         (complaint_internal): Update.
582         (clear_complaints): Remove argument.
583
584 2018-10-04  Tom Tromey  <tom@tromey.com>
585
586         * symfile.c (symbol_file_add_with_addrs): Do not print "no
587         debugging symbols" message if there is a separate debug objfile.
588
589 2018-10-04  Tom Tromey  <tom@tromey.com>
590
591         PR cli/19551:
592         * symfile.c (symbol_file_add_with_addrs): Update output.
593         * psymtab.c (require_partial_symbols): Update output.
594
595 2018-10-04  Tom Tromey  <tom@tromey.com>
596
597         PR cli/22234:
598         * complaints.c: Emit \n.
599
600 2018-10-04  Tom Tromey  <tom@tromey.com>
601
602         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
603         (separate_debug_file_exists, find_separate_debug_file)
604         (add_symbol_file_command, reread_symbols, allocate_symtab)
605         (allocate_compunit_symtab): Use filtered printing, not
606         unfiltered.
607         * psymtab.c (require_partial_symbols, dump_psymtab)
608         (allocate_psymtab): Use filtered printing, not unfiltered.
609
610 2018-10-04  Tom Tromey  <tom@tromey.com>
611
612         * complaints.c (complaint_internal): Correctly check complaint
613         count.
614
615 2018-10-04  Tom Tromey  <tom@tromey.com>
616
617         * complaints.h (struct complaints): Remove declaration.
618         * complaints.c (clear_complaints): Remove an unused variable.
619
620 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
621
622         * MAINTAINERS (Write After Approval): Add self.
623
624 2018-10-03  Tom Tromey  <tom@tromey.com>
625
626         * guile/scm-value.c (gdbscm_value_to_string): Initialize
627         "buffer_contents".
628         * coffread.c (coff_symtab_read): Initialize "newobj".
629
630 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
631
632         * dwarf2read.c (read_func_scope): Remove struct keyword in
633         range-based for.
634
635 2018-10-03  Tom Tromey  <tom@tromey.com>
636
637         * README: Mention --enable-ubsan.
638         * NEWS: Mention --enable-ubsan.
639         * acinclude.m4: Include sanitize.m4.
640         * configure: Rebuild.
641         * configure.ac: Call AM_GDB_UBSAN.
642         * sanitize.m4: New file.
643
644 2018-10-03  Tom Tromey  <tom@tromey.com>
645
646         * expression.h (enum exp_opcode): Use uint8_t as base type.
647         * expprint.c (op_name): Handle invalid opcodes.
648
649 2018-10-03  Tom Tromey  <tom@tromey.com>
650
651         * parse.c (prefixify_expression): Add assert.
652         (parse_exp_in_context_1): Throw exception if the expression is
653         empty.
654
655 2018-10-03  Tom Tromey  <tom@tromey.com>
656
657         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
658
659 2018-10-03  Tom Tromey  <tom@tromey.com>
660
661         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
662
663 2018-10-03  Tom Tromey  <tom@tromey.com>
664
665         * dwarf2read.c (read_subrange_type): Make "negative_mask"
666         unsigned.
667
668 2018-10-03  Tom Tromey  <tom@tromey.com>
669
670         * findvar.c (extract_integer): Do work in an unsigned type.
671
672 2018-10-03  Tom Tromey  <tom@tromey.com>
673
674         * common/enum-flags.h (enum_flags::operator~): Add static assert.
675         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
676         base type.
677         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
678         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
679         type.
680         * c-lang.h (enum c_string_type_values): Use unsigned as base
681         type.
682         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
683
684 2018-10-03  Tom Tromey  <tom@tromey.com>
685
686         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
687         <~dwarf2_frame_state_reg_info>: Update.
688         <dwarf2_frame_state_reg_info>: Update.
689         <alloc_regs>: Add assertion.  Update.
690         <reg>: Now a std::vector.
691         <num_regs>: Remove.
692         <swap>: Update.
693         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
694         (execute_cfa_program_test, dwarf2_frame_cache): Update.
695
696 2018-10-03  Tom Tromey  <tom@tromey.com>
697
698         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
699
700 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
701
702         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
703
704 2018-10-02  Tom Tromey  <tom@tromey.com>
705
706         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
707
708 2018-10-02  John Darrington <john@darrington.wattle.id.au>
709
710         * NEWS: Mention changed commands.
711         * ser-uds.c: New file.
712         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
713         * configure: Regenerate.
714         * Makefile.in: Add new file.
715         * serial.c (serial_open): Check if filename is a socket
716           and lookup the appropriate interface accordingly.
717
718 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
719
720         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
721         define.
722         (AARCH64_EXTRA_MAGIC): Likewise.
723         (AARCH64_FPSIMD_MAGIC): Likewise.
724         (AARCH64_SVE_MAGIC): Likewise.
725         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
726         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
727         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
728         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
729         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
730         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
731         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
732         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
733         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
734         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
735         (read_aarch64_ctx): Add function.
736         (aarch64_linux_sigframe_init): Detect FP registers.
737
738 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
739
740         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
741         (AARCH64_D0_REGNUM): Likewise.
742         (AARCH64_S0_REGNUM): Likewise.
743         (AARCH64_H0_REGNUM): Likewise.
744         (AARCH64_B0_REGNUM): Likewise.
745         (AARCH64_SVE_V0_REGNUM): Likewise.
746         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
747         (AARCH64_D0_REGNUM): Likewise.
748         (AARCH64_S0_REGNUM): Likewise.
749         (AARCH64_H0_REGNUM): Likewise.
750         (AARCH64_B0_REGNUM): Likewise.
751         (AARCH64_SVE_V0_REGNUM): Likewise.
752
753 2018-10-01  Gary Benson <gbenson@redhat.com>
754
755         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
756         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
757         prfpregset_t instead of gdb_prfpregset_t.
758         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
759         * configure, config.in: Rebuild.
760
761 2018-10-01  Gary Benson <gbenson@redhat.com>
762
763         * common/gdb_proc_service.h: New file, factored out from...
764         * gdb_proc_service.h: Moved common code to the above file.
765         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
766
767 2018-10-01  Gary Benson <gbenson@redhat.com>
768
769         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
770         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
771
772 2018-10-01  Gary Benson <gbenson@redhat.com>
773
774         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
775         (AC_CHECK_HEADERS): Check for linux/elf.h.
776         * configure, config.in: Rebuild.
777         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
778         doesn't define elf_fpregset_t.
779
780 2018-10-01  Gary Benson <gbenson@redhat.com>
781
782         * gdb_proc_service.h: Whitespace change.
783
784 2018-10-01  Tom Tromey  <tom@tromey.com>
785
786         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
787         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
788         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
789
790 2018-10-01  Tom Tromey  <tom@tromey.com>
791
792         * README: Minor change.
793
794 2018-09-30  Pedro Alves  <palves@redhat.com>
795
796         * darwin-nat-info.c (darwin_debug_regions_recurse)
797         (info_mach_exceptions_command): Remove unused local variables.
798         * darwin-nat.c (darwin_decode_notify_message)
799         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
800         (darwin_stop_inferior, darwin_setup_exceptions)
801         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
802         (darwin_nat_target::attach, darwin_nat_target::detach)
803         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
804         local variables.
805         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
806         variables.
807
808 2018-09-29  Tom Tromey  <tom@tromey.com>
809
810         * README: Remove some leftover text.
811
812 2018-09-29  Tom Tromey  <tom@tromey.com>
813
814         * PROBLEMS: Rewrite.
815         * README: Update.
816
817 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
818
819         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
820         case with explicit breakpoint kind.
821         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
822         'additional_info' and related logic.
823         (riscv_debug_breakpoints): New variable.
824         (riscv_breakpoint_kind_from_pc): Use the length of the existing
825         instruction to determine the breakpoint kind.
826         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
827         flag.  Update description of 'set/show riscv
828         use-compressed-breakpoints' flag.
829
830 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
831
832         (NEWS): Mention changes to frame related commands.
833         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
834         (add_prefix_cmd_suppress_notification): New function.
835         (add_com_suppress_notification): Call
836         add_cmd_suppress_notification.
837         * command.h (add_cmd_suppress_notification): Declare.
838         (add_prefix_cmd_suppress_notification): Declare.
839         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
840         (parse_frame_specification): Moved from stack.c, with
841         simplification to handle a single argument.
842         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
843         switch to the selected frame.  Add a header comment.
844         * stack.c: Remove 'safe-ctype.h' include.
845         (find_frame_for_function): Add declaration.
846         (find_frame_for_address): New function.
847         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
848         (frame_selection_by_function_completer): New function.
849         (info_frame_command): Rename to...
850         (info_frame_command_core): ...this, and update parameter types.
851         (select_frame_command): Rename to...
852         (select_frame_command_core): ...this, and update parameter types.
853         (frame_command): Rename to...
854         (frame_command_core): ...this, and update parameter types.
855         (class frame_command_helper): New class to wrap implementations of
856         frame related sub-commands.
857         (frame_apply_cmd_list): New static global.
858         (frame_cmd_list): Make static.
859         (select_frame_cmd_list): New global for sub-commands.
860         (info_frame_cmd_list): New global for sub-commands.
861         (_initialize_stack): Register sub-commands for 'frame',
862         'select-frame', and 'info frame'.  Update 'frame apply' commands
863         to use frame_apply_cmd_list.  Move function local static
864         frame_apply_list to file static frame_apply_cmd_list for
865         consistency.
866         * stack.h (select_frame_command): Delete declarationn.
867         (select_frame_for_mi): Declare new function.
868
869 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
870
871         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
872         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
873         and NOP.
874
875 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
876
877         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
878
879 2018-09-26  Tom Tromey  <tom@tromey.com>
880
881         * valops.c (auto_abandon): Remove dead code.
882
883 2018-09-26  Tom Tromey  <tom@tromey.com>
884
885         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
886
887 2018-09-24  Tom Tromey  <tom@tromey.com>
888
889         * common/pathstuff.c (get_standard_cache_dir): Make
890         "xdg_cache_home" and "home" const.
891         * top.c (init_history): Make "tmpenv" const.
892         * main.c (get_init_files): Make "homedir" const.
893
894 2018-09-23  Tom Tromey  <tom@tromey.com>
895
896         PR python/18852:
897         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
898
899 2018-09-23  Tom Tromey  <tom@tromey.com>
900
901         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
902         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
903         * python/python-internal.h (gdbpy_handle_exception): Declare.
904         * python/py-utils.c (gdbpy_handle_exception): New function.
905
906 2018-09-23  Tom Tromey  <tom@tromey.com>
907
908         PR python/17284:
909         * python/py-type.c (typy_template_argument): Check for negative
910         argument number.
911
912 2018-09-23  Tom Tromey  <tom@tromey.com>
913
914         PR python/14062:
915         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
916
917 2018-09-23  Tom Tromey  <tom@tromey.com>
918
919         PR python/18170:
920         * python/py-value.c (valpy_int): Allow conversion from pointer
921         type.
922
923 2018-09-23  Tom Tromey  <tom@tromey.com>
924
925         PR python/20126:
926         * python/py-value.c (valpy_int): Respect type sign.
927
928 2018-09-23  Tom Tromey  <tom@tromey.com>
929
930         PR python/18352;
931         * python/py-value.c (valpy_float): Allow conversions from int or
932         char.
933         (valpy_int, valpy_long): Allow conversions from float.
934
935 2018-09-23  Tom Tromey  <tom@tromey.com>
936
937         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
938         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
939
940 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
941
942         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
943         __sighndlr.
944         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
945
946 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
947
948         * windows-nat.c (windows_nat_target::wait): Remove a spurious
949         target_terminal::ours().
950
951 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
952
953         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
954         of vl to ULONGEST.
955
956 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
957
958         * breakpoint.c (update_inserted_breakpoint_locations): Remove
959         redundant condition.
960
961 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
962
963         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
964
965         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
966         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
967         * sol-thread.c (ps_pdmodel): Don't guard definition.
968
969         * procfs.c: Fix formatting.
970
971         * procfs.c (sysset_t_alloc): Remove.
972         (create_procinfo): Use XNEW instead of sysset_t_alloc.
973         (procfs_debug_inferior): Likewise.
974         (procfs_set_exec_trap): Likewise.
975         (proc_set_traced_sysentry): Don't allocate argp dynamically.
976         (proc_set_traced_sysexit): Likewise.
977
978         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
979         (dead_procinfo): Likewise.
980         (proc_warn): Likewise.
981         (proc_error): Likewise.
982         (proc_get_LDT_entry): Likewise.
983         (do_attach): Likewise.
984         (procfs_target::pid_to_str): Likewise.
985         (iterate_over_mappings): Likewise.
986
987         * procfs.c (create_procinfo): Fix ARI warning.
988         (proc_get_status): Likewise.
989         (proc_stop_process): Likewise.
990         (proc_run_process): Likewise.
991         (proc_kill): Likewise.
992         (proc_get_LDT_entry): Likewise.
993         (procfs_find_LDT_entry): Likewise.
994         (proc_update_threads): Likewise.
995         (proc_iterate_over_threads): Likewise.
996         (do_attach): Likewise.
997         (procfs_xfer_memory): Likewise.
998         (invalidate_cache): Likewise.
999         (procfs_target::resume): Likewise.
1000         (procfs_init_inferior): Likewise.
1001         (procfs_set_exec_trap): Likewise.
1002         (procfs_target::thread_alive): Likewise.
1003         (procfs_target::pid_to_exec_file): Likewise.
1004         (iterate_over_mappings): Likewise.
1005         (procfs_target::make_corefile_notes): Likewise.
1006         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
1007
1008         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
1009         (procfs_find_LDT_entry): Likewise.
1010         * sol-thread.c (ps_lgetLDT): Likewise.
1011
1012 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1013
1014         PR tdep/17903
1015         * procfs.c (procfs_target): Declare pid_to_exec_file.
1016         (procfs_target::pid_to_exec_file): New.
1017
1018 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1019
1020         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
1021         renaming.
1022         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
1023         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
1024
1025 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1026
1027         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
1028         (supply_fpregset, fill_fpregset): Move ...
1029         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
1030         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
1031         Remove references to ioctl-based procfs.
1032         Include <sys/reg.h>.
1033         Remove PR_MODEL_NATIVE guards.
1034         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
1035         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
1036
1037 2018-09-19  Xavier Roirand  <roirand@adacore.com>
1038
1039         PR gdb/20981:
1040         * solib-darwin.c (darwin_get_dyld_bfd): New function.
1041         (darwin_solib_get_all_image_info_addr_at_init): Update call.
1042         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
1043
1044 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
1045
1046         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
1047         (fbsd_print_sockaddr_in6): Likewise.
1048
1049 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
1050             Chris January  <chris.january@arm.com>
1051
1052         * eval.c (skip_undetermined_arglist): Skip argument list helper.
1053         (evaluate_subexp_standard): Return a dummy type when
1054         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
1055         OP_F77_UNDETERMINED_ARGLIST case.
1056         * expression.h (enum noside): Update comment.
1057
1058 2018-09-19  George Vasick <george.vasick@oracle.com>
1059
1060         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
1061
1062 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
1063             April Chin <april.chin@oracle.com>
1064             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1065
1066         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
1067         uint_t lwpid_t.
1068         (create_procinfo): Print pids in /proc without leading zeros.
1069
1070 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
1071
1072         * nios2-tdep.c (nios2_gcc_target_options): New.
1073         (nios2_gdb_arch_init): Install new hook.
1074
1075 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
1076
1077         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
1078         New file.
1079         * update-gnulib.sh: Apply patch.
1080         * configure: Re-generate.
1081
1082 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1083
1084         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
1085         description.  Make "info proc" command descriptions more
1086         consistent.
1087
1088 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1089
1090         * NEWS: Mention 'info proc files' command.
1091
1092 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1093
1094         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
1095         descriptors for IP_FILES and IP_ALL.
1096
1097 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1098
1099         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
1100         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
1101         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
1102         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
1103         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
1104         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
1105         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
1106         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
1107         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
1108         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
1109         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
1110         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
1111         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
1112         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
1113         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
1114         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
1115         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
1116         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
1117         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
1118         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
1119         (struct fbsd_sockaddr_un): New types.
1120         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
1121         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
1122         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
1123         (fbsd_core_info_proc_files): New functions.
1124         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
1125         IP_ALL.
1126         * fbsd-tdep.h (fbsd_info_proc_files_header)
1127         (fbsd_info_proc_files_entry): New.
1128
1129 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1130
1131         * defs.h (enum info_proc_what) [IP_FILES]: New value.
1132         * infcmd.c (info_proc_cmd_files): New function.
1133         (_initialize_infcmd): Register 'info proc files' command.
1134
1135 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1136
1137         * gnulib/aclocal-m4-deps.mk: Re-generate.
1138         * gnulib/aclocal.m4: Re-generate.
1139         * gnulib/config.in: Re-generate.
1140         * gnulib/configure: Re-generate.
1141         * gnulib/import/Makefile.am: Re-generate.
1142         * gnulib/import/Makefile.in: Re-generate.
1143         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
1144         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
1145         * gnulib/import/arpa_inet.in.h: New file.
1146         * gnulib/import/inet_ntop.c: New file.
1147         * gnulib/import/m4/arpa_inet_h.m4: New file.
1148         * gnulib/import/m4/inet_ntop.m4: New file.
1149         * gnulib/import/m4/netinet_in_h.m4: New file.
1150         * gnulib/import/m4/socklen.m4: New file.
1151         * gnulib/import/m4/sockpfaf.m4: New file.
1152         * gnulib/import/m4/stdalign.m4: New file.
1153         * gnulib/import/m4/sys_uio_h.m4: New file.
1154         * gnulib/import/netinet_in.in.h: New file.
1155         * gnulib/import/stdalign.in.h: New file.
1156         * gnulib/import/sys_socket.c: New file.
1157         * gnulib/import/sys_socket.in.h: New file.
1158         * gnulib/import/sys_uio.in.h: New file.
1159         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
1160         module.
1161
1162 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1163
1164         * gnulib/aclocal-m4-deps.mk: New file.
1165         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
1166         deterministically.
1167
1168 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1169
1170         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
1171         KVE_PATH.
1172
1173 2018-09-18  Tom Tromey  <tom@tromey.com>
1174
1175         * compile/compile-object-load.c (struct
1176         link_hash_table_cleanup_data): Add constructor and destructor.
1177         Use DISABLE_COPY_AND_ASSIGN.
1178         (~link_hash_table_cleanup_data): Rename from
1179         link_hash_table_free.  Now a destructor.
1180         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
1181
1182 2018-09-18  Tom Tromey  <tom@tromey.com>
1183
1184         * compile/compile-object-run.c (do_module_cleanup): Use delete.
1185         * compile/compile-object-load.c (struct munmap_list): Move to
1186         header file.
1187         (munmap_list::add): Rename from munmap_list_add; rewrite.
1188         (munmap_list::~munmap_list): Rename from munmap_list_free.
1189         (munmap_listp_free_cleanup): Remove.
1190         (compile_object_load): Update.
1191         * compile/compile-object-load.h (struct munmap_list): Move from
1192         compile-object-load.c.  Rewrite.
1193
1194 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
1195
1196         * aarch64-tdep.c (pass_in_v): Use register size.
1197         (aarch64_extract_return_value): Likewise.
1198         (aarch64_store_return_value): Likewise.
1199
1200 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1201
1202         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
1203         rlim_t.
1204
1205 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1206
1207         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
1208         Fix short help line.
1209
1210 2018-09-17  Tom Tromey  <tom@tromey.com>
1211
1212         PR python/20445:
1213         * configure: Rebuild.
1214         * configure.ac: Conditionally use -DNDEBUG for Python.
1215
1216 2018-09-17  Tom Tromey  <tom@tromey.com>
1217
1218         * configure: Rebuild.
1219         * configure.ac: Use gmp as a library dependency when checking for
1220         mpfr.
1221
1222 2018-09-17  Pedro Alves  <palves@redhat.com>
1223
1224         * python/py-inferior.c (find_inferior_object): Delete.
1225
1226 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
1227
1228         * compile/compile-cplus-types.c
1229         (compile_cplus_instance::enter_scope): Don't use new_scope after
1230         std::move.
1231
1232 2018-09-17  Tom Tromey  <tom@tromey.com>
1233
1234         * common/pathstuff.c (get_standard_cache_dir): Use
1235         ~/Library/Caches on macOS.
1236         * common/pathstuff.h (get_standard_cache_dir): Update comment.
1237
1238 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
1239
1240         PR python/23669
1241         * breakpoint.c (commands_cmd_element): New.
1242         (_initialize_breakpoint): Assign commands_cmd_element.
1243         * breakpoint.h (commands_cmd_element): New.
1244         * cli/cli-script.c (while_cmd_element, if_command,
1245         define_cmd_element): New.
1246         (command_name_equals): Remove.
1247         (process_next_line): Compare commands by pointer, not by name.
1248         (_initialize_cli_script): Assign the various cmd_list_element
1249         variables.
1250         * compile/compile.c (compile_cmd_element): New.
1251         (_initialize_compile): Assign compile_cmd_element.
1252         * compile/compile.h (compile_cmd_element): New.
1253         * guile/guile.c (guile_cmd_element): New.
1254         (install_gdb_commands): Assign guile_cmd_element.
1255         * guile/guile.h (guile_cmd_element): New.
1256         * python/python.c (python_cmd_element): New.
1257         (_initialize_python): Assign python_cmd_element.
1258         * python/python.h (python_cmd_element): New.
1259         * tracepoint.c (while_stepping_cmd_element): New.
1260         (_initialize_tracepoint): Assign while_stepping_cmd_element.
1261         * tracepoint.h (while_stepping_cmd_element): New.
1262
1263 2018-09-17  Tom Tromey  <tom@tromey.com>
1264
1265         * infrun.c (save_infcall_suspend_state): Return
1266         infcall_suspend_state_up.
1267         (save_infcall_control_state): Return infcall_control_state_up.
1268         * inferior.h (save_infcall_suspend_state)
1269         (save_infcall_control_state): Declare later.  Return unique
1270         pointers.
1271
1272 2018-09-17  Tom Tromey  <tom@tromey.com>
1273
1274         * infrun.c (struct stop_context): Declare constructor,
1275         destructor, "changed" method.
1276         (stop_context::stop_context): Rename from save_stop_context.
1277         (stop_context::~stop_context): Rename from
1278         release_stop_context_cleanup.
1279         (normal_stop): Update.
1280         (stop_context::changed): Rename from stop_context_changed.  Return
1281         bool.
1282
1283 2018-09-17  Tom Tromey  <tom@tromey.com>
1284
1285         * inferior.h (struct infcall_suspend_state_deleter): New.
1286         (infcall_suspend_state_up): New typedef.
1287         (struct infcall_control_state_deleter): New.
1288         (infcall_control_state_up): New typedef.
1289         (make_cleanup_restore_infcall_suspend_state)
1290         (make_cleanup_restore_infcall_control_state): Don't declare.
1291         * infcall.c (call_function_by_hand_dummy): Update.
1292         * infrun.c (do_restore_infcall_suspend_state_cleanup)
1293         (make_cleanup_restore_infcall_suspend_state): Remove.
1294         (do_restore_infcall_control_state_cleanup)
1295         (make_cleanup_restore_infcall_control_state): Remove.
1296
1297 2018-09-17  Tom Tromey  <tom@tromey.com>
1298
1299         * gdbthread.h (struct thread_control_state): Add initializer.
1300         (class thread_info) <control>: Remove initializer.
1301         * inferior.h (struct inferior_control_state): Add initializer.
1302         (class inferior) <control>: Remove initializer.
1303         (exit_inferior_1): Update.
1304         * infrun.c (struct infcall_control_state): Add constructors.
1305         (save_infcall_control_state): Use new.
1306         (restore_infcall_control_state, discard_infcall_control_state):
1307         Use delete.
1308
1309 2018-09-17  Tom Tromey  <tom@tromey.com>
1310
1311         * infrun.c (struct infcall_suspend_state) <registers>: Now a
1312         unique_ptr.
1313         <siginfo_data>: Now a unique_xmalloc_ptr.
1314         (save_infcall_suspend_state, restore_infcall_suspend_state)
1315         (discard_infcall_suspend_state)
1316         (get_infcall_suspend_state_regcache): Update.
1317
1318 2018-09-17  Tom Tromey  <tom@tromey.com>
1319
1320         * gdbthread.h (struct thread_suspend_state): Add initializers.
1321         (class thread_info) <suspend>: Remove initializer.
1322         * infrun.c (struct infcall_suspend_state): Add initializers.
1323         (save_infcall_suspend_state): Use new.
1324         (discard_infcall_suspend_state): Use delete.
1325
1326 2018-09-16  Tom Tromey  <tom@tromey.com>
1327
1328         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
1329         Remove.
1330         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
1331         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
1332         (py_varobj_iter_new): Likewise.
1333         (py_varobj_get_iterator): Use gdbpy_ref.
1334
1335 2018-09-16  Tom Tromey  <tom@tromey.com>
1336
1337         * python/py-threadevent.c (py_get_event_thread): Simplify.
1338         * python/py-inferior.c (infpy_thread_from_thread_handle):
1339         Return immediately after calling thread_to_thread_object.  Use
1340         Py_RETURN_NONE.
1341         (thread_to_thread_object): Set the exception on a NULL return.
1342
1343 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
1344
1345         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
1346
1347 2018-09-16  Tom Tromey  <tom@tromey.com>
1348
1349         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
1350         Remove.
1351
1352 2018-09-16  Tom Tromey  <tom@tromey.com>
1353
1354         * python/python-internal.h (thread_to_thread_object): Change
1355         return type.
1356         * python/py-inferior.c (thread_to_thread_object): Return a new
1357         reference.
1358         (infpy_thread_from_thread_handle): Update.
1359         * python/py-infthread.c (gdbpy_selected_thread): Update.
1360         * python/py-stopevent.c (create_stop_event_object): Update.
1361         * python/py-threadevent.c (py_get_event_thread): Return a new
1362         reference.
1363         (py_get_event_thread): Update.
1364         * python/py-event.h (py_get_event_thread): Change return type.
1365         * python/py-continueevent.c (create_continue_event_object):
1366         Update.
1367
1368 2018-09-16  Tom Tromey  <tom@tromey.com>
1369
1370         * python/py-progspace.c (pspy_get_objfiles): Update.
1371         * python/python-internal.h (objfile_to_objfile_object): Change
1372         return type.
1373         * python/py-newobjfileevent.c (create_new_objfile_event_object):
1374         Update.
1375         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1376         Update.
1377         * python/python.c (gdbpy_get_current_objfile): Update.
1378         (gdbpy_objfiles): Update.
1379         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
1380         Update.
1381         (objfile_to_objfile_object): Return a new reference.
1382         * python/py-symtab.c (stpy_get_objfile): Update.
1383         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
1384         Update.
1385
1386 2018-09-16  Tom Tromey  <tom@tromey.com>
1387
1388         * python/py-inferior.c (infpy_get_progspace): Update.
1389         * python/python-internal.h (pspace_to_pspace_object): Change
1390         return type.
1391         * python/py-newobjfileevent.c
1392         (create_clear_objfiles_event_object): Update.
1393         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1394         Update.
1395         * python/python.c (gdbpy_get_current_progspace): Update.
1396         (gdbpy_progspaces): Update.
1397         * python/py-progspace.c (pspace_to_pspace_object): Return a new
1398         reference.
1399         * python/py-objfile.c (objfpy_get_progspace): Update.
1400         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
1401         Update.
1402
1403 2018-09-16  Tom Tromey  <tom@tromey.com>
1404
1405         * python/lib/gdb/__init__.py (current_progspace, objfiles)
1406         (solib_name, block_for_pc, find_pc_line): New functions.
1407         (execute_unwinders): Update.
1408         * python/py-block.c (gdbpy_block_for_pc): Remove.
1409         * python/py-inferior.c (infpy_get_progspace): New function.
1410         (inferior_object_getset) <progspace>: Add.
1411         * python/py-progspace.c (pspy_objfiles): Rewrite.
1412         (pspy_solib_name, pspy_block_for_pc)
1413         (pspy_find_pc_line, pspy_is_valid): New functions.
1414         (progspace_object_methods): Add entries for solib_name,
1415         block_for_pc, find_pc_line, is_valid.
1416         * python/python-internal.h (gdbpy_block_for_pc)
1417         (build_objfiles_list): Don't declare.
1418         * python/python.c: Don't include solib.h.
1419         (gdbpy_solib_name, gdbpy_find_pc_line)
1420         (gdbpy_get_current_progspace, build_objfiles_list)
1421         (gdbpy_objfiles): Remove.
1422         (GdbMethods) <current_progspace, objfiles, block_for_pc,
1423         solib_name, find_pc_line>: Remove entries.
1424
1425 2018-09-16  Tom Tromey  <tom@tromey.com>
1426
1427         * top.c (new_ui_command): Use GNU style for metasyntactic
1428         variables.
1429         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
1430         variables.
1431         * maint.c (maintenance_translate_address): Remove "<>" around
1432         text.
1433         * interps.c (interpreter_exec_cmd): Use GNU style for
1434         metasyntactic variables.
1435         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
1436         metasyntactic variables.
1437         * tracepoint.c (tfind_range_command): Use GNU style for
1438         metasyntactic variables.
1439         (tfind_outside_command): Likewise.
1440         (_initialize_tracepoint): Likewise.
1441         * remote.c (extended_remote_target::create_inferior): Use GNU
1442         style for metasyntactic variables.
1443         * sparc64-tdep.c (adi_examine_command): Use GNU style for
1444         metasyntactic variables.
1445         (adi_assign_command): Likewise.
1446
1447 2018-09-16  Tom Tromey  <tom@tromey.com>
1448
1449         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
1450         metasyntactic variables.  Print message if no disassembler options
1451         are available.
1452
1453 2018-09-15  Tom Tromey  <tom@tromey.com>
1454
1455         * infcmd.c (get_inferior_args): Return const char *.
1456         * inferior.h (get_inferior_args): Return type now const.
1457         * linux-tdep.c (linux_fill_prpsinfo): Update.
1458         * procfs.c (procfs_target::make_corefile_notes): Update.
1459
1460 2018-09-07  Tom Tromey  <tom@tromey.com>
1461
1462         * python/python.c (execute_gdb_command): Call bpstat_do_actions
1463         inside the TRY.
1464
1465 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
1466
1467         * nios2-tdep.c (nios2_type_align): New.
1468         (nios2_gdb_arch_init): Install type_align hook.
1469
1470 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
1471
1472         * eval.c (fake_method::fake_method): Call xzalloc directly for a
1473         type that is neither object file owned, nor gdbarch owned.
1474         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
1475         gdbarch is non-NULL.
1476         (alloc_type_instance): Allocate non-objfile owned types on the
1477         gdbarch obstack.
1478         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
1479         using TYPE_ALLOC to ensure memory is allocated on the correct
1480         obstack.
1481         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
1482         obstack, or the gdbarch obstack.
1483         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
1484
1485 2018-09-14  Tom Tromey  <tom@tromey.com>
1486
1487         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
1488         block.
1489
1490 2018-09-14  Tom Tromey  <tom@tromey.com>
1491
1492         * nat/fork-inferior.c (get_startup_shell): Remove "static".
1493
1494 2018-09-13  Tom Tromey  <tom@tromey.com>
1495
1496         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
1497         static.
1498
1499 2018-09-13  Tom Tromey  <tom@tromey.com>
1500
1501         * exec.c (try_open_exec_file): Use std::string.
1502
1503 2018-09-13  Tom Tromey  <tom@tromey.com>
1504
1505         * utils.h (gdb_bfd_errmsg): Return std::string.
1506         * exec.c (exec_file_attach): Update.
1507         * compile/compile-object-load.c (compile_object_load): Update.
1508         * utils.c (gdb_bfd_errmsg): Return std::string.
1509
1510 2018-09-13  Tom Tromey  <tom@tromey.com>
1511
1512         * procfs.c (struct procinfo_deleter): New.
1513         (procinfo_up): New typedef.
1514         (do_destroy_procinfo_cleanup): Remove.
1515         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
1516
1517 2018-09-13  Tom Tromey  <tom@tromey.com>
1518
1519         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
1520
1521 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1522 2018-09-13  Tom Tromey  <tom@tromey.com>
1523
1524         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
1525         (pspy_get_objfiles): New function.
1526         (progspace_object_methods): New.
1527         (pspace_object_type): Add tp_methods callback.
1528         * python/python-internal.h (build_objfiles_list): New
1529         declaration.
1530         * python/python.c (build_objfiles_list): New function.
1531         (gdbpy_objfiles): Implement using build_objfiles_list.
1532         * NEWS: Mention the Progspace.objfiles method.
1533
1534 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1535
1536         * python/py-inferior.c (infpy_get_progspace): New function.
1537         (inferior_object_getset): Add progspace property.
1538         * NEWS: Mention the new property.
1539
1540 2018-09-13  Tom Tromey  <tom@tromey.com>
1541
1542         PR rust/23650:
1543         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
1544
1545 2018-09-13  Tom Tromey  <tom@tromey.com>
1546
1547         PR rust/23626:
1548         * rust-lang.c (rust_enum_variant): Now static.
1549         (rust_empty_enum_p): New function.
1550         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
1551         Handle empty enum.
1552
1553 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1554
1555         * python/py-inferior.c (infpy_repr): New.
1556         (inferior_object_type): Register infpy_repr.
1557         * python/py-objfile.c (objfpy_repr): New.
1558         (objfile_object_type): Register objfpy_repr.
1559
1560 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
1561
1562         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
1563
1564 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
1565
1566         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
1567         typo.
1568
1569 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
1570
1571         * common/common-utils.c: Don't include '<sys/stat.h>'.
1572         (is_regular_file): Move to...
1573         * common/filestuff.c (is_regular_file): ... here.
1574         * common/common-utils.h (is_regular_file): Move to...
1575         * common/filestuff.h (is_regular_file): ... here.
1576
1577 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
1578
1579         * skip.c (debug_skip): New variable.
1580         (skiplist_entry::do_skip_file_p): Add debug output.
1581         (skiplist_entry::do_skip_gfile_p): Likewise.
1582         (skiplist_entry::skip_function_p): Likewise.
1583         (_initialize_step_skip): Create debug command.
1584         * NEWS: Mention set/show debug skip.
1585
1586 2018-09-11  Xavier Roirand  <roirand@adacore.com>
1587
1588         * darwin-nat.c (should_disable_startup_with_shell):
1589         New function.
1590         (darwin_nat_target::create_inferior): Add call.
1591
1592 2018-09-11  Xavier Roirand  <roirand@adacore.com>
1593
1594         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
1595         inf_port, msg_state>: Initialize.
1596         (struct darwin_thread_info) <signaled, single_step>: Change
1597         type and initialize.
1598         (struct darwin_thread_info) <event>: Initialize.
1599
1600 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
1601
1602         PR gdb/23555
1603         PR gdb/23558
1604         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
1605         guesses.
1606
1607 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
1608
1609         Revert:
1610         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
1611
1612         PR gdb/23555
1613         PR gdb/23558
1614         * gnulib/aclocal.m4: Regenerate.
1615         * gnulib/config.in: Regenerate.
1616         * gnulib/configure: Regenerate.
1617         * gnulib/import/Makefile.am: Update.
1618         * gnulib/import/Makefile.in: Update.
1619         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
1620         * gnulib/import/_Noreturn.h: ... this.
1621         * gnulib/import/alloca.in.h: Update.
1622         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
1623         * gnulib/import/arg-nonnull.h: ... this.
1624         * gnulib/import/assure.h: Update.
1625         * gnulib/import/at-func.c: Update.
1626         * gnulib/import/basename-lgpl.c: Update.
1627         * gnulib/import/extra/snippet/c++defs.h: Rename to...
1628         * gnulib/import/c++defs.h: ... this.
1629         * gnulib/import/canonicalize-lgpl.c: Update.
1630         * gnulib/import/cdefs.h: Update.
1631         * gnulib/import/chdir-long.c: Update.
1632         * gnulib/import/chdir-long.h: Update.
1633         * gnulib/import/cloexec.c: Update.
1634         * gnulib/import/cloexec.h: Update.
1635         * gnulib/import/close.c: Update.
1636         * gnulib/import/closedir.c: Update.
1637         * gnulib/import/config.charset: Update.
1638         * gnulib/import/dirent-private.h: Update.
1639         * gnulib/import/dirent.in.h: Update.
1640         * gnulib/import/dirfd.c: Update.
1641         * gnulib/import/dirname-lgpl.c: Update.
1642         * gnulib/import/dirname.h: Update.
1643         * gnulib/import/dosname.h: Update.
1644         * gnulib/import/dup-safer-flag.c: Update.
1645         * gnulib/import/dup-safer.c: Update.
1646         * gnulib/import/dup.c: Update.
1647         * gnulib/import/dup2.c: Update.
1648         * gnulib/import/errno.in.h: Update.
1649         * gnulib/import/error.c: Update.
1650         * gnulib/import/error.h: Update.
1651         * gnulib/import/exitfail.c: Update.
1652         * gnulib/import/exitfail.h: Update.
1653         * gnulib/import/extra/update-copyright: Update.
1654         * gnulib/import/fchdir.c: Update.
1655         * gnulib/import/fcntl.c: Update.
1656         * gnulib/import/fcntl.in.h: Update.
1657         * gnulib/import/fd-hook.c: Update.
1658         * gnulib/import/fd-hook.h: Update.
1659         * gnulib/import/fd-safer-flag.c: Update.
1660         * gnulib/import/fd-safer.c: Update.
1661         * gnulib/import/fdopendir.c: Update.
1662         * gnulib/import/filename.h: Update.
1663         * gnulib/import/filenamecat-lgpl.c: Update.
1664         * gnulib/import/filenamecat.h: Update.
1665         * gnulib/import/flexmember.h: Update.
1666         * gnulib/import/float+.h: Update.
1667         * gnulib/import/float.c: Update.
1668         * gnulib/import/float.in.h: Update.
1669         * gnulib/import/fnmatch.c: Update.
1670         * gnulib/import/fnmatch.in.h: Update.
1671         * gnulib/import/fnmatch_loop.c: Update.
1672         * gnulib/import/fpucw.h: Update.
1673         * gnulib/import/frexp.c: Update.
1674         * gnulib/import/frexpl.c: Update.
1675         * gnulib/import/fstat.c: Update.
1676         * gnulib/import/fstatat.c: Update.
1677         * gnulib/import/getcwd-lgpl.c: Update.
1678         * gnulib/import/getcwd.c: Update.
1679         * gnulib/import/getdtablesize.c: Update.
1680         * gnulib/import/getlogin_r.c: Update.
1681         * gnulib/import/getprogname.c: Update.
1682         * gnulib/import/getprogname.h: Update.
1683         * gnulib/import/gettext.h: Update.
1684         * gnulib/import/gettimeofday.c: Update.
1685         * gnulib/import/glob-libc.h: Update.
1686         * gnulib/import/glob.c: Update.
1687         * gnulib/import/glob.in.h: Update.
1688         * gnulib/import/glob_internal.h: Update.
1689         * gnulib/import/glob_pattern_p.c: Update.
1690         * gnulib/import/globfree.c: Update.
1691         * gnulib/import/hard-locale.c: Update.
1692         * gnulib/import/hard-locale.h: Update.
1693         * gnulib/import/intprops.h: Update.
1694         * gnulib/import/inttypes.in.h: Update.
1695         * gnulib/import/isnan.c: Update.
1696         * gnulib/import/isnand-nolibm.h: Update.
1697         * gnulib/import/isnand.c: Update.
1698         * gnulib/import/isnanl-nolibm.h: Update.
1699         * gnulib/import/isnanl.c: Update.
1700         * gnulib/import/itold.c: Update.
1701         * gnulib/import/libc-config.h: Update.
1702         * gnulib/import/limits.in.h: Update.
1703         * gnulib/import/localcharset.c: Update.
1704         * gnulib/import/localcharset.h: Update.
1705         * gnulib/import/localtime-buffer.c: Update.
1706         * gnulib/import/localtime-buffer.h: Update.
1707         * gnulib/import/lstat.c: Update.
1708         * gnulib/import/m4/00gnulib.m4: Update.
1709         * gnulib/import/m4/__inline.m4: Update.
1710         * gnulib/import/m4/absolute-header.m4: Update.
1711         * gnulib/import/m4/alloca.m4: Update.
1712         * gnulib/import/m4/builtin-expect.m4: Update.
1713         * gnulib/import/m4/canonicalize.m4: Update.
1714         * gnulib/import/m4/chdir-long.m4: Update.
1715         * gnulib/import/m4/close.m4: Update.
1716         * gnulib/import/m4/closedir.m4: Update.
1717         * gnulib/import/m4/configmake.m4: Update.
1718         * gnulib/import/m4/d-ino.m4: Update.
1719         * gnulib/import/m4/d-type.m4: Update.
1720         * gnulib/import/m4/dirent_h.m4: Update.
1721         * gnulib/import/m4/dirfd.m4: Update.
1722         * gnulib/import/m4/dirname.m4: Update.
1723         * gnulib/import/m4/double-slash-root.m4: Update.
1724         * gnulib/import/m4/dup.m4: Update.
1725         * gnulib/import/m4/dup2.m4: Update.
1726         * gnulib/import/m4/eealloc.m4: Update.
1727         * gnulib/import/m4/environ.m4: Update.
1728         * gnulib/import/m4/errno_h.m4: Update.
1729         * gnulib/import/m4/error.m4: Update.
1730         * gnulib/import/m4/exponentd.m4: Update.
1731         * gnulib/import/m4/exponentl.m4: Update.
1732         * gnulib/import/m4/extensions.m4: Update.
1733         * gnulib/import/m4/extern-inline.m4: Update.
1734         * gnulib/import/m4/fchdir.m4: Update.
1735         * gnulib/import/m4/fcntl-o.m4: Update.
1736         * gnulib/import/m4/fcntl.m4: Update.
1737         * gnulib/import/m4/fcntl_h.m4: Update.
1738         * gnulib/import/m4/fdopendir.m4: Update.
1739         * gnulib/import/m4/filenamecat.m4: Update.
1740         * gnulib/import/m4/flexmember.m4: Update.
1741         * gnulib/import/m4/float_h.m4: Update.
1742         * gnulib/import/m4/fnmatch.m4: Update.
1743         * gnulib/import/m4/fnmatch_h.m4: Update.
1744         * gnulib/import/m4/fpieee.m4: Update.
1745         * gnulib/import/m4/frexp.m4: Update.
1746         * gnulib/import/m4/frexpl.m4: Update.
1747         * gnulib/import/m4/fstat.m4: Update.
1748         * gnulib/import/m4/fstatat.m4: Update.
1749         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
1750         * gnulib/import/m4/getcwd-path-max.m4: Update.
1751         * gnulib/import/m4/getcwd.m4: Update.
1752         * gnulib/import/m4/getdtablesize.m4: Update.
1753         * gnulib/import/m4/getlogin.m4: Update.
1754         * gnulib/import/m4/getlogin_r.m4: Update.
1755         * gnulib/import/m4/getpagesize.m4: Update.
1756         * gnulib/import/m4/getprogname.m4: Update.
1757         * gnulib/import/m4/gettimeofday.m4: Update.
1758         * gnulib/import/m4/glibc21.m4: Update.
1759         * gnulib/import/m4/glob.m4: Update.
1760         * gnulib/import/m4/glob_h.m4: Update.
1761         * gnulib/import/m4/gnulib-cache.m4: Update.
1762         * gnulib/import/m4/gnulib-common.m4: Update.
1763         * gnulib/import/m4/gnulib-comp.m4: Update.
1764         * gnulib/import/m4/gnulib-tool.m4: Update.
1765         * gnulib/import/m4/hard-locale.m4: Update.
1766         * gnulib/import/m4/include_next.m4: Update.
1767         * gnulib/import/m4/inttypes-pri.m4: Update.
1768         * gnulib/import/m4/inttypes.m4: Update.
1769         * gnulib/import/m4/isnand.m4: Update.
1770         * gnulib/import/m4/isnanl.m4: Update.
1771         * gnulib/import/m4/largefile.m4: Update.
1772         * gnulib/import/m4/limits-h.m4: Update.
1773         * gnulib/import/m4/localcharset.m4: Update.
1774         * gnulib/import/m4/locale-fr.m4: Update.
1775         * gnulib/import/m4/locale-ja.m4: Update.
1776         * gnulib/import/m4/locale-zh.m4: Update.
1777         * gnulib/import/m4/localtime-buffer.m4: Update.
1778         * gnulib/import/m4/longlong.m4: Update.
1779         * gnulib/import/m4/lstat.m4: Update.
1780         * gnulib/import/m4/malloc.m4: Update.
1781         * gnulib/import/m4/malloca.m4: Update.
1782         * gnulib/import/m4/math_h.m4: Update.
1783         * gnulib/import/m4/mbrtowc.m4: Update.
1784         * gnulib/import/m4/mbsinit.m4: Update.
1785         * gnulib/import/m4/mbsrtowcs.m4: Update.
1786         * gnulib/import/m4/mbstate_t.m4: Update.
1787         * gnulib/import/m4/memchr.m4: Update.
1788         * gnulib/import/m4/memmem.m4: Update.
1789         * gnulib/import/m4/mempcpy.m4: Update.
1790         * gnulib/import/m4/memrchr.m4: Update.
1791         * gnulib/import/m4/mkdir.m4: Update.
1792         * gnulib/import/m4/mkstemp.m4: Update.
1793         * gnulib/import/m4/mmap-anon.m4: Update.
1794         * gnulib/import/m4/mode_t.m4: Update.
1795         * gnulib/import/m4/msvc-inval.m4: Update.
1796         * gnulib/import/m4/msvc-nothrow.m4: Update.
1797         * gnulib/import/m4/multiarch.m4: Update.
1798         * gnulib/import/m4/nocrash.m4: Update.
1799         * gnulib/import/m4/off_t.m4: Update.
1800         * gnulib/import/m4/onceonly.m4: Update.
1801         * gnulib/import/m4/open-cloexec.m4: Update.
1802         * gnulib/import/m4/open.m4: Update.
1803         * gnulib/import/m4/openat.m4: Update.
1804         * gnulib/import/m4/opendir.m4: Update.
1805         * gnulib/import/m4/pathmax.m4: Update.
1806         * gnulib/import/m4/rawmemchr.m4: Update.
1807         * gnulib/import/m4/readdir.m4: Update.
1808         * gnulib/import/m4/readlink.m4: Update.
1809         * gnulib/import/m4/realloc.m4: Update.
1810         * gnulib/import/m4/rename.m4: Update.
1811         * gnulib/import/m4/rewinddir.m4: Update.
1812         * gnulib/import/m4/rmdir.m4: Update.
1813         * gnulib/import/m4/save-cwd.m4: Update.
1814         * gnulib/import/m4/secure_getenv.m4: Update.
1815         * gnulib/import/m4/setenv.m4: Update.
1816         * gnulib/import/m4/signal_h.m4: Update.
1817         * gnulib/import/m4/ssize_t.m4: Update.
1818         * gnulib/import/m4/stat-time.m4: Update.
1819         * gnulib/import/m4/stat.m4: Update.
1820         * gnulib/import/m4/std-gnu11.m4: Update.
1821         * gnulib/import/m4/stdbool.m4: Update.
1822         * gnulib/import/m4/stddef_h.m4: Update.
1823         * gnulib/import/m4/stdint.m4: Update.
1824         * gnulib/import/m4/stdio_h.m4: Update.
1825         * gnulib/import/m4/stdlib_h.m4: Update.
1826         * gnulib/import/m4/strchrnul.m4: Update.
1827         * gnulib/import/m4/strdup.m4: Update.
1828         * gnulib/import/m4/strerror.m4: Update.
1829         * gnulib/import/m4/string_h.m4: Update.
1830         * gnulib/import/m4/strstr.m4: Update.
1831         * gnulib/import/m4/strtok_r.m4: Update.
1832         * gnulib/import/m4/sys_socket_h.m4: Update.
1833         * gnulib/import/m4/sys_stat_h.m4: Update.
1834         * gnulib/import/m4/sys_time_h.m4: Update.
1835         * gnulib/import/m4/sys_types_h.m4: Update.
1836         * gnulib/import/m4/tempname.m4: Update.
1837         * gnulib/import/m4/time_h.m4: Update.
1838         * gnulib/import/m4/unistd-safer.m4: Update.
1839         * gnulib/import/m4/unistd_h.m4: Update.
1840         * gnulib/import/m4/warn-on-use.m4: Update.
1841         * gnulib/import/m4/wchar_h.m4: Update.
1842         * gnulib/import/m4/wchar_t.m4: Update.
1843         * gnulib/import/m4/wctype_h.m4: Update.
1844         * gnulib/import/m4/wint_t.m4: Update.
1845         * gnulib/import/malloc.c: Update.
1846         * gnulib/import/malloc/scratch_buffer.h: Update.
1847         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
1848         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
1849         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
1850         * gnulib/import/malloca.c: Update.
1851         * gnulib/import/malloca.h: Update.
1852         * gnulib/import/malloca.valgrind: Update.
1853         * gnulib/import/math.in.h: Update.
1854         * gnulib/import/mbrtowc.c: Update.
1855         * gnulib/import/mbsinit.c: Update.
1856         * gnulib/import/mbsrtowcs-impl.h: Update.
1857         * gnulib/import/mbsrtowcs-state.c: Update.
1858         * gnulib/import/mbsrtowcs.c: Update.
1859         * gnulib/import/memchr.c: Update.
1860         * gnulib/import/memmem.c: Update.
1861         * gnulib/import/mempcpy.c: Update.
1862         * gnulib/import/memrchr.c: Update.
1863         * gnulib/import/mkdir.c: Update.
1864         * gnulib/import/mkstemp.c: Update.
1865         * gnulib/import/msvc-inval.c: Update.
1866         * gnulib/import/msvc-inval.h: Update.
1867         * gnulib/import/msvc-nothrow.c: Update.
1868         * gnulib/import/msvc-nothrow.h: Update.
1869         * gnulib/import/open.c: Update.
1870         * gnulib/import/openat-die.c: Update.
1871         * gnulib/import/openat-priv.h: Update.
1872         * gnulib/import/openat-proc.c: Update.
1873         * gnulib/import/openat.c: Update.
1874         * gnulib/import/openat.h: Update.
1875         * gnulib/import/opendir.c: Update.
1876         * gnulib/import/pathmax.h: Update.
1877         * gnulib/import/pipe-safer.c: Update.
1878         * gnulib/import/rawmemchr.c: Update.
1879         * gnulib/import/readdir.c: Update.
1880         * gnulib/import/readlink.c: Update.
1881         * gnulib/import/realloc.c: Update.
1882         * gnulib/import/ref-add.sin: Update.
1883         * gnulib/import/ref-del.sin: Update.
1884         * gnulib/import/rename.c: Update.
1885         * gnulib/import/rewinddir.c: Update.
1886         * gnulib/import/rmdir.c: Update.
1887         * gnulib/import/same-inode.h: Update.
1888         * gnulib/import/save-cwd.c: Update.
1889         * gnulib/import/save-cwd.h: Update.
1890         * gnulib/import/scratch_buffer.h: Update.
1891         * gnulib/import/secure_getenv.c: Update.
1892         * gnulib/import/setenv.c: Update.
1893         * gnulib/import/signal.in.h: Update.
1894         * gnulib/import/stat-time.c: Update.
1895         * gnulib/import/stat-time.h: Update.
1896         * gnulib/import/stat-w32.c: Update.
1897         * gnulib/import/stat-w32.h: Update.
1898         * gnulib/import/stat.c: Update.
1899         * gnulib/import/stdbool.in.h: Update.
1900         * gnulib/import/stddef.in.h: Update.
1901         * gnulib/import/stdint.in.h: Update.
1902         * gnulib/import/stdio.in.h: Update.
1903         * gnulib/import/stdlib.in.h: Update.
1904         * gnulib/import/str-two-way.h: Update.
1905         * gnulib/import/strchrnul.c: Update.
1906         * gnulib/import/strdup.c: Update.
1907         * gnulib/import/streq.h: Update.
1908         * gnulib/import/strerror-override.c: Update.
1909         * gnulib/import/strerror-override.h: Update.
1910         * gnulib/import/strerror.c: Update.
1911         * gnulib/import/string.in.h: Update.
1912         * gnulib/import/stripslash.c: Update.
1913         * gnulib/import/strnlen1.c: Update.
1914         * gnulib/import/strnlen1.h: Update.
1915         * gnulib/import/strstr.c: Update.
1916         * gnulib/import/strtok_r.c: Update.
1917         * gnulib/import/sys_stat.in.h: Update.
1918         * gnulib/import/sys_time.in.h: Update.
1919         * gnulib/import/sys_types.in.h: Update.
1920         * gnulib/import/tempname.c: Update.
1921         * gnulib/import/tempname.h: Update.
1922         * gnulib/import/time.in.h: Update.
1923         * gnulib/import/unistd--.h: Update.
1924         * gnulib/import/unistd-safer.h: Update.
1925         * gnulib/import/unistd.in.h: Update.
1926         * gnulib/import/unsetenv.c: Update.
1927         * gnulib/import/verify.h: Update.
1928         * gnulib/import/extra/snippet/warn-on-use.h: Update.
1929         * gnulib/import/wchar.in.h: Update.
1930         * gnulib/import/wctype.in.h: Update.
1931         * gnulib/import/xalloc-oversized.h: Update.
1932         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
1933         "53e2c179f26a890fa6685af4b6c1397ee370433b".
1934
1935 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
1936
1937         * record-btrace.c (get_thread_current_frame): Remove
1938         old_inferior_ptid.
1939
1940 2018-09-10  Jerome Guitton  <guitton@adacore.com>
1941
1942         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
1943         with check_tag to 1 if and only if the type is tagged and the
1944         component being searched cannot been found in the current
1945         view. Otherwise, always call ada_to_fixed_type with
1946         check_tag to 0.
1947
1948 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1949
1950         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
1951         declaration.
1952         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
1953         * ada-varobj.c (ada_varobj_get_number_of_children,
1954         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
1955
1956 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1957
1958         * ada-valprint.c (ada_value_print): Use type instead of
1959         enclosing type.
1960
1961 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1962
1963         * ada-lang.c (ada_value_subscript): Handle case when parameter is
1964         an array of access to unconstrained array.
1965
1966 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1967
1968         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
1969         (ada_check_typedef): Use it.
1970
1971 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1972
1973         * ada-varobj.c (ada_varobj_describe_struct_child)
1974         (ada_varobj_describe_child): Handle union case like struct one.
1975
1976 2018-09-10  Tom Tromey  <tom@tromey.com>
1977
1978         PR python/18380:
1979         * python/python.c (_initialize_python): Make example in "python"
1980         help work in Python 3.
1981
1982 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
1983
1984         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
1985         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
1986         $(EXEEXT) to the script, as it is not a program.
1987
1988 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
1989
1990         * python/py-prettyprint.c (pretty_print_one_value): Return
1991         gdbpy_ref<>.
1992         (print_string_repr): Adjust.
1993         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
1994         * python/python-internal.h (apply_varobj_pretty_printer): Return
1995         gdbpy_ref<>.
1996         * varobj.c (varobj_value_get_print_value): Adjust.
1997
1998 2018-09-08  Tom Tromey  <tom@tromey.com>
1999
2000         PR python/16047:
2001         * python/py-prettyprint.c (pretty_print_one_value): Check for
2002         to_string method.
2003
2004 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2005
2006         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
2007         replace_operator_with_call.
2008
2009 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2010
2011         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
2012
2013 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2014
2015         * ada-typeprint.c (print_range): Print the bounds using TYPE
2016         rather than its TYPE_TARGET_TYPE.
2017
2018 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2019
2020         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
2021         call to ada_to_fixed_value_create.
2022
2023 2018-09-08  Jerome Guitton  <guitton@adacore.com>
2024
2025         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
2026
2027 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2028
2029         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
2030         by calls to error.
2031
2032 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2033
2034         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
2035         Move update of loop variable "fi".
2036
2037 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2038
2039         * ada-lang.c (value_assign_to_component): In the case of
2040         big-endian targets, extract the bits of the given VAL
2041         using an src_offset of zero if container is not a scalar.
2042
2043 2018-09-06  Simon Ser  <contact@emersion.fr>
2044
2045         PR gdb/23105
2046         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
2047         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2048         * fbsd-tdep.c (fbsd_make_note_desc): New.
2049         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
2050         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
2051         * target.h (enum target_object) Add FreeBSD-specific
2052         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2053
2054 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2055
2056         * compile/compile-c.h (generate_c_for_variable_locations):
2057         Change reference to pointer.
2058         * compile/compile-c-support.c (compile_program) <compute>:
2059         Likewise.
2060         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
2061         (generate_c_for_for_one_variable): Likewise
2062         (generate_c_for_variable_locations): Likewise
2063         * compile/compile-c-types.c (compile_c_instance::convert_type):
2064         Likewise
2065         * compile/compile-cplus-symbols.c (convert_one_symbol):
2066         std::move the scope passed to enter_scope.
2067         * compile/compile-cplus-types.c
2068         (compile_cplus_instance::enter_scope): Make parameter
2069         rvalue-reference.
2070         (compile_cplus_instance::new_scope): Change reference to
2071         pointer.
2072         (compile_cplus_instance::convert_type): Likewise
2073         (compile_cplus_convert_typedef): std::move the scope passed to
2074         enter_scope.
2075         (compile_cplus_convert_struct_or_union): Likewise.
2076         (compile_cplus_convert_enum): Likewise.
2077         (compile_cplus_convert_namespace): Likewise.
2078         * compile/compile-cplus.h (compile_cplus_instance)
2079         <enter_scope>: Make parameter rvalue-reference.
2080         * compile/compile-internal.h (compile_instance)
2081         <get_cached_type>: Likewise
2082         * compile/compile-loc2c.c (push): Likewise
2083         (pushf): Likewise
2084         (unary): Likewise
2085         (binary): Likewise
2086         (print_label): Likewise
2087         (pushf_register_address): Likewise
2088         (pushf_register): Likewise
2089         (do_compile_dwarf_expr_to_c): Likewise
2090         (compile_dwarf_expr_to_c): Likewise
2091         (compile_dwarf_bounds_to_c): Likewise
2092         * compile/compile.c (compile_instance::get_cached_type):
2093         Likewise
2094         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
2095         (compile_dwarf_bounds_to_c): Likewise
2096         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
2097         (dwarf2_compile_property_to_c): Likewise
2098         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
2099         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
2100         Likewise
2101
2102 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2103
2104         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
2105         * tui/tui-data.c (init_content_element): Don't initialize it.
2106
2107 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2108
2109         * tui/tui-data.h (struct tui_win_info)
2110         <detail::opaque>: Remove.
2111         * tui/tui-data.c (init_win_info): Remove assignment.
2112
2113 2018-09-05  Tom Tromey  <tom@tromey.com>
2114
2115         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
2116         -Wformat-nonliteral.
2117         * target-float.c (host_float_ops<T>::to_string)
2118         (host_float_ops<T>::from_string): Use
2119         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2120         * configure: Rebuild.
2121
2122 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
2123
2124         * printcmd.c (printf_c_string): Use
2125         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2126         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
2127
2128 2018-09-05  Tom Tromey  <tom@tromey.com>
2129
2130         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
2131
2132 2018-09-05  Tom de Vries  <tdevries@suse.de>
2133
2134         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
2135         with resolve_abstract_p == true.
2136         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
2137         defaulting to false. Propagate resolve_abstract_p to
2138         dwarf2_fetch_die_loc_sect_off.
2139         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
2140         parameter, defaulting to false.
2141         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
2142         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
2143         parameter.
2144         * dwarf2read.h (struct die_info): Forward-declare.
2145         (die_info_ptr): New typedef.
2146         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
2147
2148 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
2149
2150         GDB 8.2 released.
2151
2152 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
2153             Pedro Alves  <palves@redhat.com>
2154
2155         * gnulib/Makefile.in (aclocal_m4_deps): Move to
2156         "aclocal-m4-deps.mk".  Include file here.
2157         $(srcdir)/aclocal.m4: Add "configure.ac".
2158         * gnulib/aclocal-m4-deps.mk: New file.
2159         * gnulib/update-gnulib.sh: Automatically update
2160         "aclocal-m4-deps.mk".
2161
2162 2018-09-04  Tom Tromey  <tom@tromey.com>
2163
2164         * configure: Rebuild.
2165         * configure.ac: Remove multi-ice code.
2166
2167 2018-09-04  Tom Tromey  <tom@tromey.com>
2168
2169         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
2170         (ada-exp.o): Update.
2171
2172 2018-09-04  Tom Tromey  <tom@tromey.com>
2173
2174         * Makefile.in (printcmd.o, target-float.o): Remove.
2175         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
2176
2177 2018-09-04  Tom Tromey  <tom@tromey.com>
2178
2179         * gnulib/Makefile.in: Remove obsolete comment.
2180         * Makefile.in: Remove obsolete comment.
2181
2182 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
2183
2184         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
2185         line with '+'.
2186
2187 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2188
2189         * riscv-tdep.c: Add 'prologue-value.h' include.
2190         (struct riscv_unwind_cache): New struct.
2191         (riscv_debug_unwinder): New global.
2192         (riscv_scan_prologue): Update arguments, capture register details
2193         from prologue scan.
2194         (riscv_skip_prologue): Reformat arguments line, move end of
2195         prologue calculation into riscv_scan_prologue.
2196         (riscv_frame_cache): Update return type, create
2197         riscv_unwind_cache, scan the prologue, and fill in remaining cache
2198         details.
2199         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
2200         (riscv_frame_prev_register): Use the trad_frame within the
2201         riscv_unwind_cache.
2202         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
2203         flag.
2204
2205 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2206
2207         * trad-frame.h (trad_frame_set_realreg): Declare.
2208         (trad_frame_set_addr): Declare.
2209         * trad-frame.c (trad_frame_set_realreg): Define new function.
2210         (trad_frame_set_addr): Define new function.
2211         (trad_frame_set_reg_realreg): Use new function.
2212         (trad_frame_set_reg_addr): Use new function.
2213
2214 2018-09-01  Keith Seitz  <keiths@redhat.com>
2215
2216         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
2217         pulongest instead of "%lld".
2218         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
2219         ATTRIBUTE_UNUSED.
2220
2221 2018-08-31  Tom Tromey  <tom@tromey.com>
2222
2223         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
2224         variant part type.
2225
2226 2018-08-31  Pedro Alves  <palves@redhat.com>
2227
2228         * gdbarch.h: Regenerate.
2229
2230 2018-08-31  Pedro Alves  <palves@redhat.com>
2231
2232         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
2233         * target.h (Hardware watchpoint interfaces): Describe
2234         continuable/steppable/non-steppable watchpoints.
2235         * gdbarch.h, gdbarch.c: Regenerate.
2236
2237 2018-08-31  Pedro Alves  <palves@redhat.com>
2238
2239         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
2240         Delete.
2241         * s390-linux-nat.c
2242         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
2243         * target.h (target_ops::have_continuable_watchpoint): Delete.
2244         (target_have_continuable_watchpoint): Delete.
2245         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
2246         * target-delegates.c: Regenerate.
2247
2248 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
2249
2250         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
2251         the files present in "gnulib/import/m4/".
2252
2253 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2254
2255         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
2256         c.sw, c.swsp, and c.sdsp.
2257
2258 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2259
2260         * riscv-tdep.c (struct riscv_inferior_data): Delete.
2261         (riscv_read_misa_reg): Don't cache value read into inferior data.
2262         (riscv_new_inferior_data): Delete.
2263         (riscv_inferior_data_cleanup): Delete.
2264         (riscv_inferior_data): Delete.
2265         (riscv_invalidate_inferior_data): Delete.
2266         (_initialize_riscv_tdep): Remove initialisation of inferior data.
2267
2268 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
2269
2270         * compile/compile-cplus-types.c
2271         (compile_cplus_instance::leave_scope): Take the address of scope
2272         object.
2273         (compile_cplus_instance::convert_qualified_base): Compare quals
2274         to 0.
2275
2276 2018-08-30  Keith Seitz  <keiths@redhat.com>
2277
2278         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
2279         Use "%s" and host_address_to_string instead of "%p" in printf.
2280
2281 2018-08-29  Keith Seitz  <keiths@redhat.com>
2282
2283         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
2284         and compile-cplus-types.c.
2285         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
2286         * c-lang.c (cplus_language_defn): Set C++ compile functions.
2287         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
2288         Declare.
2289         * compile/compile-c-support.c: Include compile-cplus.h.
2290         (load_libcompile): Templatize.
2291         (get_compile_context): "New" function.
2292         (c_get_compile_context): Use get_compile_context.
2293         (cplus_get_compile_context): New function.
2294         (cplus_push_user_expression, cplus_pop_user_expression)
2295         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
2296         (cplus_compute_program): Define new structs/functions.
2297         * compile/compile-cplus-symmbols.c: New file.
2298         * compile/compile-cplus-types.c: New file.
2299         * compile/compile-cplus.h: New file.
2300         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
2301         Declare.
2302         * compile/compile-object-load.c (get_out_value_type): Use
2303         strncmp_iw when comparing symbol names.
2304         (compile_object_load): Add mst_bss and mst_data.
2305         * compile/compile.c (_initialize_compile): Remove
2306         -Wno-implicit-function-declaration from `compile_args'.
2307         * compile/gcc-cp-plugin.h: New file.
2308         * NEWS: Mention C++ compile support and new debug options.
2309
2310 2018-08-29  Keith Seitz  <keiths@redhat.com>
2311
2312         * linespec.c (collect_info::add_symbol): Make virtual.
2313         (struct symbol_searcher_collect_info): New struct.
2314         (symbol_searcher::find_all_symbols): New method.
2315         * symtab.h (class symbol_searcher): New class.
2316
2317 2018-08-29  Keith Seitz  <keiths@redhat.com>
2318
2319         * linespec.c (struct linespec) <function_symbols, label_symbols>:
2320         Change to vector of block_symbol.  Update all users.
2321         (struct collect_info) <symbols>: Likewise.
2322         (collect_info::add_symbol): Take block_symbol as argument.
2323         Update all callers.
2324         (decode_compound_collector) <m_symbols>: Change type to vector
2325         of block_symbol.  Update all users.
2326         (decode_compound_collector::operator ()): Change parameter type
2327         to block_symbol.
2328         (find_method, find_function_symbols, find_linespec_symbols)
2329         (find_label_symbols_in_block, find_label_symbols): Change symbol
2330         vectors to block_symbol vectors.
2331         * symtab.h (symbol_found_callback_ftype): Change parameter type to
2332         block_symbol.
2333
2334 2018-08-29  Keith Seitz  <keiths@redhat.com>
2335
2336         * linespec.c (symbolp): Remove typedef and VEC definitions.
2337         (bound_minimal_symbol_d): Likewise.
2338
2339 2018-08-29  Keith Seitz  <keiths@redhat.com>
2340
2341         * linespec.c (decode_compound_collector::decode_compound_collector):
2342         Remove initialization for `m_symtabs'.
2343         (decode_compound_collector::release_symbols): Change return type
2344         to std::vector.  Update all callers.
2345         (class decode_compound_collector) <m_symbols>: Change type to
2346         std::vector.
2347         (lookup_prefix_sym): Change return type to std::vector.  Update all
2348         callers.
2349         (compare_symbols): Remove.
2350         (std_compare_symbols): Rename to `compare_symbols'.
2351         (find_method): Change `sym_classes' parameter to std::vector.
2352         Update all callers.  Use std::sort to sort sym_classes.
2353         (find_linespec_symbols): Remove cleanup.
2354
2355 2018-08-29  Keith Seitz  <keiths@redhat.com>
2356
2357         * linespec.c (struct linespec) <minimal_symbols>: Change type to
2358         std::vector.  Update all users.
2359         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
2360         (struct collect_info) <minimal_symbols>: Likewise.
2361         (compare_msymbols): Return bool.  Change parameters to const
2362         bound_minimal_symbol references.
2363         (find_method, find_function_symbols, find_linespec_symbols): Change
2364         `minsyms' parameter to std::vector.  Update all callers.
2365
2366 2018-08-29  Keith Seitz  <keiths@redhat.com>
2367
2368         * linespec.c (struct linespec) <label_symbols>: Change type to
2369         std::vector.  Update all users.
2370         (find_label_symbols_in_block): Change `result' parameter to
2371         std::vector.  Update all callers.
2372         (find_label_symbols): Return std::vector.  Update all callers.
2373
2374 2018-08-29  Keith Seitz  <keiths@redhat.com>
2375
2376         * linespec.c (struct linespec) <function_symbols>: Change type to
2377         std::vector.  Update all users.
2378         (struct collect_info) <function_symbols>: Likewise.
2379         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
2380         (std_compare_symbols): New function.
2381         (find_method, find_function_symbols, find_linespec_symbols)
2382         (find_label_symbols_in_block): Change `symbols' parameter to
2383         std::vector.  Update all callers.
2384         (find_label_symbols): Likewise for `function_symbols' and
2385         `label_funcs_ret'.
2386
2387 2018-08-29  Keith Seitz  <keiths@redhat.com>
2388
2389         * linespec.c (symtab_vector_up): Define.
2390         (struct linespec) <file_symtabs>: Change type to std::vector *.
2391         Update all uses.
2392         (struct collect_info) <file_symtabs>: Likewise.
2393         (collect_symtabs_from_filename): Return symtab_vector_up.
2394         Update all callers.
2395         (decode_objc): Remove cleanup.
2396         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
2397         (symtab_collector::release_symtabs): Return symtab_vector_up.
2398         Update all callers.
2399         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
2400         Update all users.
2401         (collect_symtabs_from_filename, symtabs_from_filename): Return
2402         symtab_vector_up.  Update all callers.
2403
2404 2018-08-29  Tom Tromey  <tom@tromey.com>
2405
2406         * csky-tdep.c (csky_analyze_prologue): Use
2407         core_addr_to_string_nz.
2408
2409 2018-08-29  Tom Tromey  <tom@tromey.com>
2410
2411         * windows-nat.c (struct xlate_exception) <them>: Change type to
2412         DWORD.
2413         (xlate): Fix formatting.  Remove last entry.
2414         (struct xlate_exception, xlate): Comment out.
2415         (windows_nat_target::resume): Use ranged for.
2416
2417 2018-08-29  Jim Wilson  <jimw@sifive.com>
2418
2419         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
2420         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
2421         of NT_PRFPREG.
2422         (riscv_linux_nat_target::store_registers): Likewise.
2423
2424 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
2425
2426         PR gdb/23555
2427         PR gdb/23558
2428         * gnulib/aclocal.m4: Regenerate.
2429         * gnulib/config.in: Regenerate.
2430         * gnulib/configure: Regenerate.
2431         * gnulib/import/Makefile.am: Update.
2432         * gnulib/import/Makefile.in: Update.
2433         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
2434         * gnulib/import/_Noreturn.h: ... this.
2435         * gnulib/import/alloca.in.h: Update.
2436         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
2437         * gnulib/import/arg-nonnull.h: ... this.
2438         * gnulib/import/assure.h: Update.
2439         * gnulib/import/at-func.c: Update.
2440         * gnulib/import/basename-lgpl.c: Update.
2441         * gnulib/import/extra/snippet/c++defs.h: Rename to...
2442         * gnulib/import/c++defs.h: ... this.
2443         * gnulib/import/canonicalize-lgpl.c: Update.
2444         * gnulib/import/cdefs.h: Update.
2445         * gnulib/import/chdir-long.c: Update.
2446         * gnulib/import/chdir-long.h: Update.
2447         * gnulib/import/cloexec.c: Update.
2448         * gnulib/import/cloexec.h: Update.
2449         * gnulib/import/close.c: Update.
2450         * gnulib/import/closedir.c: Update.
2451         * gnulib/import/config.charset: Update.
2452         * gnulib/import/dirent-private.h: Update.
2453         * gnulib/import/dirent.in.h: Update.
2454         * gnulib/import/dirfd.c: Update.
2455         * gnulib/import/dirname-lgpl.c: Update.
2456         * gnulib/import/dirname.h: Update.
2457         * gnulib/import/dosname.h: Update.
2458         * gnulib/import/dup-safer-flag.c: Update.
2459         * gnulib/import/dup-safer.c: Update.
2460         * gnulib/import/dup.c: Update.
2461         * gnulib/import/dup2.c: Update.
2462         * gnulib/import/errno.in.h: Update.
2463         * gnulib/import/error.c: Update.
2464         * gnulib/import/error.h: Update.
2465         * gnulib/import/exitfail.c: Update.
2466         * gnulib/import/exitfail.h: Update.
2467         * gnulib/import/extra/update-copyright: Update.
2468         * gnulib/import/fchdir.c: Update.
2469         * gnulib/import/fcntl.c: Update.
2470         * gnulib/import/fcntl.in.h: Update.
2471         * gnulib/import/fd-hook.c: Update.
2472         * gnulib/import/fd-hook.h: Update.
2473         * gnulib/import/fd-safer-flag.c: Update.
2474         * gnulib/import/fd-safer.c: Update.
2475         * gnulib/import/fdopendir.c: Update.
2476         * gnulib/import/filename.h: Update.
2477         * gnulib/import/filenamecat-lgpl.c: Update.
2478         * gnulib/import/filenamecat.h: Update.
2479         * gnulib/import/flexmember.h: Update.
2480         * gnulib/import/float+.h: Update.
2481         * gnulib/import/float.c: Update.
2482         * gnulib/import/float.in.h: Update.
2483         * gnulib/import/fnmatch.c: Update.
2484         * gnulib/import/fnmatch.in.h: Update.
2485         * gnulib/import/fnmatch_loop.c: Update.
2486         * gnulib/import/fpucw.h: Update.
2487         * gnulib/import/frexp.c: Update.
2488         * gnulib/import/frexpl.c: Update.
2489         * gnulib/import/fstat.c: Update.
2490         * gnulib/import/fstatat.c: Update.
2491         * gnulib/import/getcwd-lgpl.c: Update.
2492         * gnulib/import/getcwd.c: Update.
2493         * gnulib/import/getdtablesize.c: Update.
2494         * gnulib/import/getlogin_r.c: Update.
2495         * gnulib/import/getprogname.c: Update.
2496         * gnulib/import/getprogname.h: Update.
2497         * gnulib/import/gettext.h: Update.
2498         * gnulib/import/gettimeofday.c: Update.
2499         * gnulib/import/glob-libc.h: Update.
2500         * gnulib/import/glob.c: Update.
2501         * gnulib/import/glob.in.h: Update.
2502         * gnulib/import/glob_internal.h: Update.
2503         * gnulib/import/glob_pattern_p.c: Update.
2504         * gnulib/import/globfree.c: Update.
2505         * gnulib/import/hard-locale.c: Update.
2506         * gnulib/import/hard-locale.h: Update.
2507         * gnulib/import/intprops.h: Update.
2508         * gnulib/import/inttypes.in.h: Update.
2509         * gnulib/import/isnan.c: Update.
2510         * gnulib/import/isnand-nolibm.h: Update.
2511         * gnulib/import/isnand.c: Update.
2512         * gnulib/import/isnanl-nolibm.h: Update.
2513         * gnulib/import/isnanl.c: Update.
2514         * gnulib/import/itold.c: Update.
2515         * gnulib/import/libc-config.h: Update.
2516         * gnulib/import/limits.in.h: Update.
2517         * gnulib/import/localcharset.c: Update.
2518         * gnulib/import/localcharset.h: Update.
2519         * gnulib/import/localtime-buffer.c: Update.
2520         * gnulib/import/localtime-buffer.h: Update.
2521         * gnulib/import/lstat.c: Update.
2522         * gnulib/import/m4/00gnulib.m4: Update.
2523         * gnulib/import/m4/__inline.m4: Update.
2524         * gnulib/import/m4/absolute-header.m4: Update.
2525         * gnulib/import/m4/alloca.m4: Update.
2526         * gnulib/import/m4/builtin-expect.m4: Update.
2527         * gnulib/import/m4/canonicalize.m4: Update.
2528         * gnulib/import/m4/chdir-long.m4: Update.
2529         * gnulib/import/m4/close.m4: Update.
2530         * gnulib/import/m4/closedir.m4: Update.
2531         * gnulib/import/m4/configmake.m4: Update.
2532         * gnulib/import/m4/d-ino.m4: Update.
2533         * gnulib/import/m4/d-type.m4: Update.
2534         * gnulib/import/m4/dirent_h.m4: Update.
2535         * gnulib/import/m4/dirfd.m4: Update.
2536         * gnulib/import/m4/dirname.m4: Update.
2537         * gnulib/import/m4/double-slash-root.m4: Update.
2538         * gnulib/import/m4/dup.m4: Update.
2539         * gnulib/import/m4/dup2.m4: Update.
2540         * gnulib/import/m4/eealloc.m4: Update.
2541         * gnulib/import/m4/environ.m4: Update.
2542         * gnulib/import/m4/errno_h.m4: Update.
2543         * gnulib/import/m4/error.m4: Update.
2544         * gnulib/import/m4/exponentd.m4: Update.
2545         * gnulib/import/m4/exponentl.m4: Update.
2546         * gnulib/import/m4/extensions.m4: Update.
2547         * gnulib/import/m4/extern-inline.m4: Update.
2548         * gnulib/import/m4/fchdir.m4: Update.
2549         * gnulib/import/m4/fcntl-o.m4: Update.
2550         * gnulib/import/m4/fcntl.m4: Update.
2551         * gnulib/import/m4/fcntl_h.m4: Update.
2552         * gnulib/import/m4/fdopendir.m4: Update.
2553         * gnulib/import/m4/filenamecat.m4: Update.
2554         * gnulib/import/m4/flexmember.m4: Update.
2555         * gnulib/import/m4/float_h.m4: Update.
2556         * gnulib/import/m4/fnmatch.m4: Update.
2557         * gnulib/import/m4/fnmatch_h.m4: Update.
2558         * gnulib/import/m4/fpieee.m4: Update.
2559         * gnulib/import/m4/frexp.m4: Update.
2560         * gnulib/import/m4/frexpl.m4: Update.
2561         * gnulib/import/m4/fstat.m4: Update.
2562         * gnulib/import/m4/fstatat.m4: Update.
2563         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
2564         * gnulib/import/m4/getcwd-path-max.m4: Update.
2565         * gnulib/import/m4/getcwd.m4: Update.
2566         * gnulib/import/m4/getdtablesize.m4: Update.
2567         * gnulib/import/m4/getlogin.m4: Update.
2568         * gnulib/import/m4/getlogin_r.m4: Update.
2569         * gnulib/import/m4/getpagesize.m4: Update.
2570         * gnulib/import/m4/getprogname.m4: Update.
2571         * gnulib/import/m4/gettimeofday.m4: Update.
2572         * gnulib/import/m4/glibc21.m4: Update.
2573         * gnulib/import/m4/glob.m4: Update.
2574         * gnulib/import/m4/glob_h.m4: Update.
2575         * gnulib/import/m4/gnulib-cache.m4: Update.
2576         * gnulib/import/m4/gnulib-common.m4: Update.
2577         * gnulib/import/m4/gnulib-comp.m4: Update.
2578         * gnulib/import/m4/gnulib-tool.m4: Update.
2579         * gnulib/import/m4/hard-locale.m4: Update.
2580         * gnulib/import/m4/include_next.m4: Update.
2581         * gnulib/import/m4/inttypes-pri.m4: Update.
2582         * gnulib/import/m4/inttypes.m4: Update.
2583         * gnulib/import/m4/isnand.m4: Update.
2584         * gnulib/import/m4/isnanl.m4: Update.
2585         * gnulib/import/m4/largefile.m4: Update.
2586         * gnulib/import/m4/limits-h.m4: Update.
2587         * gnulib/import/m4/localcharset.m4: Update.
2588         * gnulib/import/m4/locale-fr.m4: Update.
2589         * gnulib/import/m4/locale-ja.m4: Update.
2590         * gnulib/import/m4/locale-zh.m4: Update.
2591         * gnulib/import/m4/localtime-buffer.m4: Update.
2592         * gnulib/import/m4/longlong.m4: Update.
2593         * gnulib/import/m4/lstat.m4: Update.
2594         * gnulib/import/m4/malloc.m4: Update.
2595         * gnulib/import/m4/malloca.m4: Update.
2596         * gnulib/import/m4/math_h.m4: Update.
2597         * gnulib/import/m4/mbrtowc.m4: Update.
2598         * gnulib/import/m4/mbsinit.m4: Update.
2599         * gnulib/import/m4/mbsrtowcs.m4: Update.
2600         * gnulib/import/m4/mbstate_t.m4: Update.
2601         * gnulib/import/m4/memchr.m4: Update.
2602         * gnulib/import/m4/memmem.m4: Update.
2603         * gnulib/import/m4/mempcpy.m4: Update.
2604         * gnulib/import/m4/memrchr.m4: Update.
2605         * gnulib/import/m4/mkdir.m4: Update.
2606         * gnulib/import/m4/mkstemp.m4: Update.
2607         * gnulib/import/m4/mmap-anon.m4: Update.
2608         * gnulib/import/m4/mode_t.m4: Update.
2609         * gnulib/import/m4/msvc-inval.m4: Update.
2610         * gnulib/import/m4/msvc-nothrow.m4: Update.
2611         * gnulib/import/m4/multiarch.m4: Update.
2612         * gnulib/import/m4/nocrash.m4: Update.
2613         * gnulib/import/m4/off_t.m4: Update.
2614         * gnulib/import/m4/onceonly.m4: Update.
2615         * gnulib/import/m4/open-cloexec.m4: Update.
2616         * gnulib/import/m4/open.m4: Update.
2617         * gnulib/import/m4/openat.m4: Update.
2618         * gnulib/import/m4/opendir.m4: Update.
2619         * gnulib/import/m4/pathmax.m4: Update.
2620         * gnulib/import/m4/rawmemchr.m4: Update.
2621         * gnulib/import/m4/readdir.m4: Update.
2622         * gnulib/import/m4/readlink.m4: Update.
2623         * gnulib/import/m4/realloc.m4: Update.
2624         * gnulib/import/m4/rename.m4: Update.
2625         * gnulib/import/m4/rewinddir.m4: Update.
2626         * gnulib/import/m4/rmdir.m4: Update.
2627         * gnulib/import/m4/save-cwd.m4: Update.
2628         * gnulib/import/m4/secure_getenv.m4: Update.
2629         * gnulib/import/m4/setenv.m4: Update.
2630         * gnulib/import/m4/signal_h.m4: Update.
2631         * gnulib/import/m4/ssize_t.m4: Update.
2632         * gnulib/import/m4/stat-time.m4: Update.
2633         * gnulib/import/m4/stat.m4: Update.
2634         * gnulib/import/m4/std-gnu11.m4: Update.
2635         * gnulib/import/m4/stdbool.m4: Update.
2636         * gnulib/import/m4/stddef_h.m4: Update.
2637         * gnulib/import/m4/stdint.m4: Update.
2638         * gnulib/import/m4/stdio_h.m4: Update.
2639         * gnulib/import/m4/stdlib_h.m4: Update.
2640         * gnulib/import/m4/strchrnul.m4: Update.
2641         * gnulib/import/m4/strdup.m4: Update.
2642         * gnulib/import/m4/strerror.m4: Update.
2643         * gnulib/import/m4/string_h.m4: Update.
2644         * gnulib/import/m4/strstr.m4: Update.
2645         * gnulib/import/m4/strtok_r.m4: Update.
2646         * gnulib/import/m4/sys_socket_h.m4: Update.
2647         * gnulib/import/m4/sys_stat_h.m4: Update.
2648         * gnulib/import/m4/sys_time_h.m4: Update.
2649         * gnulib/import/m4/sys_types_h.m4: Update.
2650         * gnulib/import/m4/tempname.m4: Update.
2651         * gnulib/import/m4/time_h.m4: Update.
2652         * gnulib/import/m4/unistd-safer.m4: Update.
2653         * gnulib/import/m4/unistd_h.m4: Update.
2654         * gnulib/import/m4/warn-on-use.m4: Update.
2655         * gnulib/import/m4/wchar_h.m4: Update.
2656         * gnulib/import/m4/wchar_t.m4: Update.
2657         * gnulib/import/m4/wctype_h.m4: Update.
2658         * gnulib/import/m4/wint_t.m4: Update.
2659         * gnulib/import/malloc.c: Update.
2660         * gnulib/import/malloc/scratch_buffer.h: Update.
2661         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
2662         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
2663         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
2664         * gnulib/import/malloca.c: Update.
2665         * gnulib/import/malloca.h: Update.
2666         * gnulib/import/malloca.valgrind: Update.
2667         * gnulib/import/math.in.h: Update.
2668         * gnulib/import/mbrtowc.c: Update.
2669         * gnulib/import/mbsinit.c: Update.
2670         * gnulib/import/mbsrtowcs-impl.h: Update.
2671         * gnulib/import/mbsrtowcs-state.c: Update.
2672         * gnulib/import/mbsrtowcs.c: Update.
2673         * gnulib/import/memchr.c: Update.
2674         * gnulib/import/memmem.c: Update.
2675         * gnulib/import/mempcpy.c: Update.
2676         * gnulib/import/memrchr.c: Update.
2677         * gnulib/import/mkdir.c: Update.
2678         * gnulib/import/mkstemp.c: Update.
2679         * gnulib/import/msvc-inval.c: Update.
2680         * gnulib/import/msvc-inval.h: Update.
2681         * gnulib/import/msvc-nothrow.c: Update.
2682         * gnulib/import/msvc-nothrow.h: Update.
2683         * gnulib/import/open.c: Update.
2684         * gnulib/import/openat-die.c: Update.
2685         * gnulib/import/openat-priv.h: Update.
2686         * gnulib/import/openat-proc.c: Update.
2687         * gnulib/import/openat.c: Update.
2688         * gnulib/import/openat.h: Update.
2689         * gnulib/import/opendir.c: Update.
2690         * gnulib/import/pathmax.h: Update.
2691         * gnulib/import/pipe-safer.c: Update.
2692         * gnulib/import/rawmemchr.c: Update.
2693         * gnulib/import/readdir.c: Update.
2694         * gnulib/import/readlink.c: Update.
2695         * gnulib/import/realloc.c: Update.
2696         * gnulib/import/ref-add.sin: Update.
2697         * gnulib/import/ref-del.sin: Update.
2698         * gnulib/import/rename.c: Update.
2699         * gnulib/import/rewinddir.c: Update.
2700         * gnulib/import/rmdir.c: Update.
2701         * gnulib/import/same-inode.h: Update.
2702         * gnulib/import/save-cwd.c: Update.
2703         * gnulib/import/save-cwd.h: Update.
2704         * gnulib/import/scratch_buffer.h: Update.
2705         * gnulib/import/secure_getenv.c: Update.
2706         * gnulib/import/setenv.c: Update.
2707         * gnulib/import/signal.in.h: Update.
2708         * gnulib/import/stat-time.c: Update.
2709         * gnulib/import/stat-time.h: Update.
2710         * gnulib/import/stat-w32.c: Update.
2711         * gnulib/import/stat-w32.h: Update.
2712         * gnulib/import/stat.c: Update.
2713         * gnulib/import/stdbool.in.h: Update.
2714         * gnulib/import/stddef.in.h: Update.
2715         * gnulib/import/stdint.in.h: Update.
2716         * gnulib/import/stdio.in.h: Update.
2717         * gnulib/import/stdlib.in.h: Update.
2718         * gnulib/import/str-two-way.h: Update.
2719         * gnulib/import/strchrnul.c: Update.
2720         * gnulib/import/strdup.c: Update.
2721         * gnulib/import/streq.h: Update.
2722         * gnulib/import/strerror-override.c: Update.
2723         * gnulib/import/strerror-override.h: Update.
2724         * gnulib/import/strerror.c: Update.
2725         * gnulib/import/string.in.h: Update.
2726         * gnulib/import/stripslash.c: Update.
2727         * gnulib/import/strnlen1.c: Update.
2728         * gnulib/import/strnlen1.h: Update.
2729         * gnulib/import/strstr.c: Update.
2730         * gnulib/import/strtok_r.c: Update.
2731         * gnulib/import/sys_stat.in.h: Update.
2732         * gnulib/import/sys_time.in.h: Update.
2733         * gnulib/import/sys_types.in.h: Update.
2734         * gnulib/import/tempname.c: Update.
2735         * gnulib/import/tempname.h: Update.
2736         * gnulib/import/time.in.h: Update.
2737         * gnulib/import/unistd--.h: Update.
2738         * gnulib/import/unistd-safer.h: Update.
2739         * gnulib/import/unistd.in.h: Update.
2740         * gnulib/import/unsetenv.c: Update.
2741         * gnulib/import/verify.h: Update.
2742         * gnulib/import/extra/snippet/warn-on-use.h: Update.
2743         * gnulib/import/wchar.in.h: Update.
2744         * gnulib/import/wctype.in.h: Update.
2745         * gnulib/import/xalloc-oversized.h: Update.
2746         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
2747         "53e2c179f26a890fa6685af4b6c1397ee370433b".
2748
2749 2018-08-16  Gary Benson <gbenson@redhat.com>
2750
2751         PR gdb/13000:
2752         * gdb/main.c (captured_main_1): Exit with nonzero status
2753         in batch mode if the last command to be executed failed.
2754         * NEWS: Mention the above.
2755
2756 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
2757
2758         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
2759         end of warning message.
2760
2761 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2762
2763         PR gdb/22943:
2764         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
2765         (aarch64_extract_return_value): Use
2766         aapcs_is_vfp_call_or_return_candidate.
2767         (aarch64_return_in_memory): Likewise.
2768         (aarch64_store_return_value): Likewise.
2769
2770 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2771
2772         * aarch64-tdep.c
2773         (aapcs_is_vfp_call_or_return_candidate): Make static
2774         (pass_in_v_or_stack): Remove function.
2775         (pass_in_v_vfp_candidate): New function.
2776         (aarch64_push_dummy_call): Check for float register candidates.
2777
2778 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2779
2780         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
2781         (aapcs_is_vfp_call_or_return_candidate_1): New function.
2782         (aapcs_is_vfp_call_or_return_candidate): Likewise.
2783
2784 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
2785
2786         PR build/23399
2787         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
2788         (struct ipa_sym_addresses): Rename to...
2789         (struct ipa_sym_addresses_common): ... this.
2790         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
2791
2792 2018-08-28  Tom Tromey  <tom@tromey.com>
2793
2794         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2795         (token_fifo): Now a std::vector.
2796         (yylex, c_parse): Update.
2797         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2798         (token_fifo): Now a std::vector.
2799         (yylex, d_parse): Update.
2800         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2801         (token_fifo): Now a std::vector.
2802         (yylex, go_parse): Update.
2803
2804 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
2805
2806         * parser-defs.h (struct type_stack) <elements>: Change type to
2807         std::vector<union type_stack_elt>.
2808         <depth, size>: Remove.
2809         * parse.c (parse_exp_in_context_1): Adjust.
2810         (type_stack_reserve): Remove.
2811         (check_type_stack_depth): Remove.
2812         (insert_into_type_stack): Adjust to std::vector.
2813         (insert_type): Likewise.
2814         (push_type): Likewise.
2815         (push_type_int): Likewise.
2816         (insert_type_address_space): Likewise.
2817         (pop_type): Likewise.
2818         (pop_type_int): Likewise.
2819         (pop_typelist): Likewise.
2820         (pop_type_stack): Likewise.
2821         (append_type_stack): Likewise.
2822         (push_type_stack): Likewise.
2823         (get_type_stack): Likewise.
2824         (type_stack_cleanup): Likewise.
2825         (push_typelist): Likewise.
2826         (follow_types): Likewise.
2827         (_initialize_parse): Likewise.
2828
2829 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
2830
2831         * NEWS: Mention csky target.
2832
2833 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
2834             Hafiz Abid Qadeer  <abidh@codesourcery.com>
2835             Don Breazeal  <donb@codesourcery.com>
2836
2837         * csky-linux-tdep.c: New file.
2838         * csky-tdep.c: Likewise.
2839         * csky-tdep.h: Likewise.
2840         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
2841         csky-tdep.o.
2842         (HFILES_NO_SRCDIR): Add csky-tdep.h.
2843         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
2844         * configure.tgt: Add csky support.
2845
2846 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
2847
2848         * python/py-framefilter.c (py_print_frame): Print frame architecture
2849         when printing on an MI output.
2850
2851 2018-08-27  Tom Tromey  <tom@tromey.com>
2852
2853         PR build/23087:
2854         * configure: Rebuild.
2855         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
2856
2857 2018-08-27  Tom Tromey  <tom@tromey.com>
2858
2859         * aarch64-linux-tdep.c
2860         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
2861         casts to int.
2862
2863 2018-08-27  Tom Tromey  <tom@tromey.com>
2864
2865         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
2866         unsigned.
2867         (ppc64_standard_linkage1, ppc64_standard_linkage2)
2868         (ppc64_standard_linkage3, ppc64_standard_linkage4)
2869         (ppc64_standard_linkage5, ppc64_standard_linkage6)
2870         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
2871         unsigned.
2872
2873 2018-08-27  Tom Tromey  <tom@tromey.com>
2874
2875         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
2876         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
2877
2878 2018-08-27  Tom Tromey  <tom@tromey.com>
2879
2880         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
2881         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
2882         ULONGEST_MAX.
2883         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
2884         ULONGEST_MAX.
2885         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
2886         ULONGEST_MAX.
2887         * sparc-linux-tdep.c (sparc32_linux_sigframe)
2888         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
2889         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
2890         ULONGEST_MAX.
2891         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
2892         (ppc64_linux_sigaction_tramp_frame)
2893         (ppc32_linux_sighandler_tramp_frame)
2894         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
2895         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
2896         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
2897         * mn10300-linux-tdep.c (am33_linux_sigframe)
2898         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
2899         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
2900         * mips-linux-tdep.c (mips_linux_o32_sigframe)
2901         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
2902         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
2903         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
2904         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
2905         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
2906         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
2907         * microblaze-linux-tdep.c
2908         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
2909         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
2910         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
2911         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
2912         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
2913         * common/common-types.h (ULONGEST_MAX): New define.
2914         (CORE_ADDR_MAX): Fix formatting.
2915         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
2916         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
2917         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
2918         (arm_linux_rt_sigreturn_tramp_frame)
2919         (arm_eabi_linux_sigreturn_tramp_frame)
2920         (arm_eabi_linux_rt_sigreturn_tramp_frame)
2921         (thumb2_eabi_linux_sigreturn_tramp_frame)
2922         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
2923         (arm_linux_restart_syscall_tramp_frame)
2924         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
2925         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
2926         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
2927         ULONGEST_MAX.
2928         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
2929
2930 2018-08-27  Tom Tromey  <tom@tromey.com>
2931
2932         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
2933         CORE_ADDR_MAX.
2934         * mips-tdep.c (mips_deal_with_atomic_sequence)
2935         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
2936         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
2937         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
2938         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
2939         CORE_ADDR_MAX.
2940         * aarch64-tdep.c (aarch64_software_single_step): Use
2941         CORE_ADDR_MAX.
2942
2943 2018-08-27  Tom Tromey  <tom@tromey.com>
2944
2945         * linespec.c (complete_linespec_component): Add cast to "char".
2946         * completer.c (completion_tracker::build_completion_result): Add
2947         cast to "char".
2948
2949 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
2950
2951         * solist.h (struct solist, struct target_so_ops): Fix
2952         indentation.
2953
2954 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
2955
2956         * ada-tasks.c (ada_task_info_s): Remove typedef.
2957         (DEF_VEC_O(ada_task_info_s)): Remove.
2958         (struct ada_tasks_inferior_data): Initialize fields.
2959         <task_list>: Make an std::vector.
2960         (get_ada_tasks_inferior_data): Allocate with new.
2961         (ada_get_task_number): Adjust.
2962         (get_task_number_from_id): Likewise.
2963         (valid_task_id): Likewise.
2964         (ada_get_task_info_from_ptid): Likewise.
2965         (iterate_over_live_ada_tasks): Likewise.
2966         (add_ada_task): Likewise.
2967         (read_known_tasks): Likewise.
2968         (ada_build_task_list): Likewise.
2969         (print_ada_task_info): Likewise.
2970         (info_task): Likewise.
2971         (task_command_1): Likewise.
2972
2973 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
2974
2975         * ada-lang.c (add_angle_brackets): Return std::string.
2976
2977 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
2978
2979         * python/py-threadevent.c (py_get_event_thread): Initialize
2980         pythread.
2981
2982 2018-08-24  Pedro Alves  <palves@redhat.com>
2983
2984         * python/py-bpevent.c (create_breakpoint_event_object): Use
2985         copy-initialization.
2986         * python/py-continueevent.c (emit_continue_event): Use
2987         copy-initialization.
2988         * python/py-exitedevent.c (create_exited_event_object): Return a
2989         gdbpy_ref<>.
2990         (emit_exited_event): Use copy-initialization.
2991         * python/py-inferior.c (python_new_inferior)
2992         (python_inferior_deleted, add_thread_object): Use
2993         copy-initialization.
2994         * python/py-infevents.c (create_inferior_call_event_object)
2995         (create_register_changed_event_object)
2996         (create_memory_changed_event_object): Return a gdbpy_ref<>.
2997         (emit_inferior_call_event, emit_memory_changed_event)
2998         (emit_register_changed_event): Use copy-initialization.
2999         * python/py-newobjfileevent.c (create_new_objfile_event_object):
3000         Return a gdbpy_ref<>.
3001         (emit_new_objfile_event): Use copy-initialization.
3002         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
3003         (emit_clear_objfiles_event): Use copy-initialization.
3004         * python/py-signalevent.c (create_signal_event_object): Use
3005         copy-initialization.
3006         * python/py-threadevent.c (create_thread_event_object): Use
3007         copy-initialization.
3008
3009 2018-08-24  Pedro Alves  <palves@redhat.com>
3010             Simon Marchi  <simon.marchi@ericsson.com>
3011
3012         PR gdb/23379
3013         * python/py-continueevent.c: Include "gdbthread.h".
3014         (create_continue_event_object): Add intro comment.  Add 'ptid'
3015         parameter.  Use it to find thread to pass to
3016         create_thread_event_object.
3017         (emit_continue_event): Pass PTID down to
3018         create_continue_event_object.
3019         * python/py-event.h (py_get_event_thread): Declare.
3020         (create_thread_event_object): Remove default from 'thread'
3021         parameter.
3022         * python/py-stopevent.c (create_stop_event_object): Use
3023         py_get_event_thread.
3024         * python/py-threadevent.c (get_event_thread): Rename to ...
3025         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
3026         and use it to find the thread.
3027         (create_thread_event_object): Assert that THREAD isn't null.
3028         Don't find the event thread here.
3029
3030 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
3031
3032         * block.h (blockrange, blockranges): New struct declarations.
3033         (struct block): Add new field named `ranges'.
3034         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
3035         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
3036         macros for accessing ranges in struct block.
3037         (make_blockranges): New declaration.
3038         block.c (make_blockranges): New function.
3039         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
3040         for block.
3041         * symtab.h (find_pc_partial_function): Add new parameter `block'.
3042         * blockframe.c (cache_pc_function_block): New static global.
3043         (clear_pc_function_cache): Clear cache_pc_function_block.
3044         (find_pc_partial_function): Move comment to symtab.h.  Add
3045         support for non-contiguous blocks.
3046         * cli/cli-cmds.c (block.h): Include.
3047         (print_disassembly): Handle printing of non-contiguous blocks.
3048         (disassemble_current_function): Likewise.
3049         (disassemble_command): Likewise.
3050
3051         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
3052         BLOCK_START.
3053         * blockframe.c (get_pc_function_start): Likewise.
3054         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
3055         (gcc_symbol_address): Likewise.
3056         * compile/compile-object-run.c (compile_object_run): Likewise.
3057         * compile/compile.c (get_expr_block_and_pc): Likewise.
3058         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
3059         (func_addr_to_tail_call_list): Likewise.
3060         * findvar.c (default_read_var_value): Likewise.
3061         * inline-frame.c (inline_frame_this_id): Likewise.
3062         (skip-inline_frames): Likewise.
3063         * infcmd.c (until_next_command): Likewise.
3064         * linespec.c (convert_linespec_to_sals): Likewise.
3065         * parse.c (parse_exp_in_context_1): Likewise.
3066         * printcmd.c (build_address_symbolic): likewise.
3067         (info_address_command): Likewise.
3068         symtab.c (find_function_start_sal): Likewise.
3069         (skip_prologue_sal): Likewise.
3070         (find_function_alias_target): Likewise.
3071         (find_gnu_ifunc): Likewise.
3072         * stack.c (find_frame_funname): Likewise.
3073         * symtab.c (fixup_symbol_section): Likewise.
3074         (find_function_start_sal): Likewise.
3075         (skip_prologue_sal): Likewsie.
3076         (find_function_alias_target): Likewise.
3077         (find_gnu_ifunc): Likewise.
3078         * tracepoint.c (info_scope_command): Likewise.
3079         * value.c (value_fn_field): Likewise.
3080
3081         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
3082         in place of find_pc_partial_function.
3083         * blockframe.c (find_function_entry_range_from_pc): New function.
3084         * symtab.h (find_function_entry_range_from_pc): Declare and document.
3085         * objfiles.c (objfile_relocate1): Relocate start and end addresses
3086         for each range in a block.
3087
3088
3089 2018-08-23  Xavier Roirand  <roirand@adacore.com>
3090
3091         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
3092         incrementation.
3093
3094 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3095
3096         * solib-svr4.c (read_program_headers_from_bfd): Return
3097         gdb::optional<gdb::byte_vector>.
3098         (svr4_exec_displacement): Adjust.
3099
3100 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3101
3102         * solib-svr4.c (read_program_header): Return
3103         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
3104         (find_program_interpreter): Return
3105         gdb::optional<gdb::byte_vector>.
3106         (scan_dyntag_auxv): Adjust.
3107         (enable_break): Adjust.
3108         (svr4_exec_displacement): Adjust.
3109
3110 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3111
3112         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
3113         * inf-child.c (inf_child_target::terminal_save_inferior): New.
3114
3115 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3116
3117         * guile/scm-string.c (gdbscm_scm_from_printf): Use
3118         string_vprintf.
3119         * guile/scm-utils.c (gdbscm_printf): Likewise.
3120         * serial.c (serial_printf): Likewise.
3121         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
3122
3123 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
3124
3125         * stack.c (print_frame): Print frame architecture when printing on
3126         an MI output.
3127         * NEWS: Mention new "arch" attribute in frame output.
3128
3129 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3130
3131         * arch/aarch64.h (aarch64_regnum): Update comment.
3132
3133 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3134
3135         * NEWS: Add SVE to 8.2 section.
3136
3137 2018-08-21  Pedro Alves  <palves@redhat.com>
3138
3139         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
3140         out from gdbscm_parse_function_args.
3141         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
3142         gdbscm_parse_function_args_1.
3143
3144 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
3145
3146         PR gdb/17816
3147         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
3148         operator.
3149
3150 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
3151
3152         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
3153
3154 2018-08-19  Michael Spang  <spang@google.com>
3155
3156         PR gdb/11786
3157         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
3158         for PT_TLS segments.
3159
3160 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
3161
3162         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
3163         dwarf_variable_value.
3164         * dwarf2-frame.c (class dwarf_expr_executor):
3165         Add override for dwarf_variable_value.
3166         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
3167         (class symbol_needs_eval_context): Likewise.
3168         (indirect_synthetic_pointer): Add forward declaration.
3169         (sect_variable_value): New function.
3170         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
3171         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
3172         for DW_OP_GNU_variable_value.
3173
3174 2018-08-16  Tom Tromey  <tom@tromey.com>
3175
3176         * top.c (read_command_file): Update.
3177         (command_line_input): Remove "repeat" argument.
3178         * ada-lang.c (get_selections): Update.
3179         * linespec.c (decode_line_2): Update.
3180         * defs.h (command_line_input): Remove argument.
3181         * cli/cli-script.c (read_next_line): Update.
3182         * python/py-gdb-readline.c: Update.
3183
3184 2018-08-17  Tom Tromey  <tom@tromey.com>
3185
3186         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
3187         command_line_input.
3188
3189 2018-08-15  Tom Tromey  <tom@tromey.com>
3190
3191         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
3192
3193 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
3194
3195         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
3196         If used, use find_pc_partial_function to find address range
3197         to disassemble.
3198         * mi/mi-main.c (mi_cmd_list_features): Report
3199         "data-disassemble-a-option" feature.
3200         * NEWS: Mention new -data-disassemble option -a.
3201
3202 2018-08-13  Tom Tromey  <tom@tromey.com>
3203
3204         * common/common-defs.h (_FORTIFY_SOURCE): Define.
3205
3206 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3207
3208         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
3209         (aarch64_linux_collect_sve_regset): Likewise.
3210         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
3211         * regcache.h (regcache_map_entry_size): New function.
3212
3213 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3214
3215         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
3216         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
3217         (SVE_HEADER_VL_LENGTH): Likewise.
3218         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
3219         (SVE_HEADER_FLAGS_LENGTH): Likewise.
3220         (SVE_HEADER_RESERVED_LENGTH): Likewise.
3221         (SVE_HEADER_SIZE_OFFSET): Likewise.
3222         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
3223         (SVE_HEADER_VL_OFFSET): Likewise.
3224         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
3225         (SVE_HEADER_FLAGS_OFFSET): Likewise.
3226         (SVE_HEADER_RESERVED_OFFSET): Likewise.
3227         (SVE_HEADER_SIZE): Likewise.
3228         (aarch64_linux_core_read_vq): Add function.
3229         (aarch64_linux_core_read_description): Check for SVE section.
3230
3231 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3232
3233         * aarch64-fbsd-tdep.c
3234         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
3235         collect_size.
3236         * aarch64-linux-tdep.c
3237         (aarch64_linux_iterate_over_regset_sections): Likewise.
3238         * alpha-linux-tdep.c
3239         (alpha_linux_iterate_over_regset_sections):
3240         * alpha-nbsd-tdep.c
3241         (alphanbsd_iterate_over_regset_sections): Likewise.
3242         * amd64-fbsd-tdep.c
3243         (amd64fbsd_iterate_over_regset_sections): Likewise.
3244         * amd64-linux-tdep.c
3245         (amd64_linux_iterate_over_regset_sections): Likewise.
3246         * arm-bsd-tdep.c
3247         (armbsd_iterate_over_regset_sections): Likewise.
3248         * arm-fbsd-tdep.c
3249         (arm_fbsd_iterate_over_regset_sections): Likewise.
3250         * arm-linux-tdep.c
3251         (arm_linux_iterate_over_regset_sections): Likewise.
3252         * corelow.c (get_core_registers_cb): Likewise.
3253         (core_target::fetch_registers): Likewise.
3254         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
3255         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
3256         * gdbarch.h (void): Regenerate.
3257         * gdbarch.sh: Add supply_size and collect_size.
3258         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
3259         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
3260         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
3261         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
3262         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
3263         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
3264         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
3265         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
3266         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
3267         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
3268         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
3269         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
3270         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
3271         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
3272         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections): Likewise.
3273         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
3274         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
3275         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
3276         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
3277         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
3278         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
3279         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections): Likewise.
3280         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
3281         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
3282         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
3283         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
3284         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
3285         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
3286         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
3287         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
3288
3289 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
3290
3291         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
3292         with string_printf.
3293
3294 2018-08-10  Keith Seitz  <keiths@redhat.com>
3295
3296         * compile/compile-c-support.c (add_code_header, add_code_footer):
3297         Move into policy class.
3298         (c_push_user_expression, pop_user_expression_nop)
3299         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
3300         (compile_program): New host class.
3301         (c_compile_program): New typedef.
3302         (c_compute_porgram): Use c_compile_program.
3303
3304 2018-08-10  Keith Seitz  <keiths@redhat.com>
3305
3306         * compile/compile-internal.h (compile_instance::~compile_instance):
3307         Remove calls to htab_delete.
3308         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
3309         * compile.c (compile_instance::compile_instance): Initialize
3310         htab unique pointers.
3311         (compile_instance::get_cached_type, compile_instance::insert_type)
3312         (compile_instance::error_symbol_once): Update for unique_ptr.
3313
3314 2018-08-10  Keith Seitz  <keiths@redhat.com>
3315
3316         * compile/compile-c-symbols.c (struct symbol_error)
3317         (hash_symbol_error, eq_symbol_error, del_symbol_error)
3318         (compile_instance::insert_symbol_error)
3319         (compile_instance::error_symbol_once): Move to ...
3320         * compile/compile.c: ... here.
3321
3322 2018-08-10  Keith Seitz  <keiths@redhat.com>
3323
3324         * compile/compile-c-support.c (c_get_compile_context): Use `new'
3325         instead of `new_compile_instance'.
3326         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
3327         Update description.
3328         If the symbol error map is not initialized, create it.
3329         (generate_c_for_for_one_symbol): Do not check/initialize
3330         the symbol error map.
3331         * compile/compile-c-types.c (compile_c_instance): Make a class.
3332         Update all callers.
3333         (compile_instance::compile_instance): Initialize the type cache.
3334         (get_cached_type): New function.
3335         (insert_type): Update description.
3336         (compile_c_instance::m_default_cflags): Define.
3337         (convert_type): Update description.  Use get_cached_type.
3338         (delete_instance): Moved to destructor.
3339         (new_compile_instance): Moved to constructor.
3340         * compile/compile-c.h (compile_c_instance): Make class inheriting
3341         from compile_instance.
3342         <base>: Remove field.
3343         <type_map, symbol_err_map>: Move to base class.
3344         <c_plugin>: Rename to `m_plugin' and remove pointer type.
3345         * compile/compile-internal.h (compile_instance): Make class.
3346         <type_map_t, symbol_err_map_t>: Define.
3347         <fe>: Rename to `m_gcc_fe'.
3348         <scope, block, gcc_target_options>: Add `m_' prefix.
3349         <m_type_map, m_symbol_err_map>: New fields, moved from
3350         compile_c_instance.
3351         <destroy>: Remove.
3352         (convert_type, new_compile_instance): Remove.
3353         * compile/compile.c (cleanup_compile_instance): Remove.
3354         (compile_to_object): Use unique_ptr to eliminate cleanups.
3355         (compile_instance::set_print_callback, compile_instance::version)
3356         (compile_instance::set_verbose)
3357         (compile_instance::set_driver_filename)
3358         (compile_instance::set_triplet_regexp)
3359         (compile_instance::set_arguments)
3360         (compile_instance::set_source_file)
3361         (compile_instance::compile): Define.
3362
3363 2018-08-10  Keith Seitz  <keiths@redhat.com>
3364
3365         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
3366         * compile/compile-c-types.c: Define GCC_METHODN macros and include
3367         gcc-c-fe.def to define C plugin.
3368         (delete_instance): Delete `c_plugin'.
3369         (new_compile_instance): Initialize `c_plugin'.
3370         * compile/compile-c.h: Include gcc_c_plugin.h.
3371         (struct compile_c_instance) <c_plugin>: New member.
3372         * gcc-c-plugin.h: New file.
3373         Update all callers with API change.
3374
3375 2018-08-10  Keith Seitz  <keiths@redhat.com>
3376
3377         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
3378         (HFILES_NO_SRCDIR): ... to here.
3379         Add compile-internal.h and compile-c.h.
3380         * compile/compile-c-support.c: Include compile-c.h.
3381         * compile/compile-c-symbols.c: Include compile-c.h.
3382         (generate_c_for_variable_locations): Update comment.
3383         * compile/compile-c-types.c: Include compile-c.h.
3384         * compile/compile-c.h: New file -- moved C language declarations
3385         from other files here.
3386         * compile/compile-internal.h: Do not include hashtab.h or
3387         common/enum-flags.h.
3388         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
3389         (gcc_convert_symbol, gcc_symbol_address)
3390         (generate_c_for_variable_locations, c_get_mode_for_size)
3391         (c_get_range_decl_name): Definitions moved to compile-c.h.
3392         * compile/compile-loc2c.c: Include compile-c.h.
3393
3394 2018-08-10  Keith Seitz  <keiths@redhat.com>
3395
3396         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
3397         (c_symbol_substitution_name): ... this.
3398         Update all callers.
3399
3400 2018-08-10  Keith Seitz  <keiths@redhat.com>
3401
3402         * compile/compile-c-support.c (c_compute_program): Use
3403         unique_xmalloc_ptr to eliminate cleanup.
3404         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
3405         Return a unique_xmalloc_ptr and eliminate cleanup.
3406         * compile/compile-internal.h (generate_c_for_variable_locations):
3407         Return unique_xmalloc_ptr and update description.
3408
3409 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
3410
3411         * corelow.c (core_target::get_core_register_section): Rename
3412         min_size to section_min_size.
3413
3414 2018-08-09  Jim Wilson  <jimw@sifive.com>
3415
3416         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
3417         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
3418         * NEWS: Mention new GNU/Linux RISC-V target.
3419         * configure.host: Add riscv*-*-linux*.
3420         * configure.nat: Add riscv*.
3421         * configure.tgt: Add riscv*-*-linux*.
3422         * riscv-linux-nat.c: New file.
3423         * riscv-linux-tdep.c: New file.
3424
3425 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3426
3427         * infrun.c (resume): Make static, add forward declaration.
3428         (proceed): Update header comment.
3429         * infrun.h (resume): Delete declaration.
3430
3431 2018-08-09  Tom Tromey  <tom@tromey.com>
3432
3433         * riscv-tdep.h: Minor formatting fixes.
3434
3435 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
3436
3437         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
3438         * dwarf-index-cache.c (create_dir_and_check): Likewise.
3439         (test_mkdir_recursive): Likewise.
3440         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
3441
3442 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3443
3444         * valarith.c (value_subscripted_rvalue): If an array is not in
3445         memory, and we don't know the upper bound, then we can't know that
3446         the requested element exists or not.
3447
3448 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
3449
3450         * target.c (str_comma_list_concat_elem): Fix typo in comment.
3451         (target_options_to_string): Add comment.
3452
3453 2018-08-08  Tom Tromey  <tom@tromey.com>
3454
3455         * unittests/scoped_mmap-selftests.c: Check result of "write".
3456
3457 2018-08-08  Jim Wilson  <jimw@sifive.com>
3458
3459         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
3460         (decode_register_index_short): New.
3461         (decode_j_type_insn, decode_cj_type_insn): New.
3462         (decode_b_type_insn, decode_cb_type_insn): New.
3463         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
3464         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
3465         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
3466         is_c_sw_insn instead of is_sw_insn.
3467         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
3468         (riscv_software_single_step): New.
3469         * riscv-tdep.h (riscv_software_single_step): Declare.
3470
3471         * riscv-tdep.c (riscv_isa_xlen): Drop static.
3472         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
3473
3474 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
3475
3476         PR gdb/18050:
3477         * target.c (dispose_inferior): Don't dispose of inferiors that are
3478         already killed.
3479
3480 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
3481
3482         * remote.c (remote_target::download_tracepoint): Change char* to
3483         const char*.
3484
3485 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
3486
3487         * target.h (target_options_to_string): Return an std::string.
3488         * target.c (str_comma_list_concat_elem): Return void, use
3489         std::string.
3490         (do_option): Likewise.
3491         (target_options_to_string): Return an std::string.
3492         * linux-nat.c (linux_nat_target::wait): Adjust.
3493         * target-debug.h (target_debug_print_options): Adjust.
3494
3495 2018-08-07  Tom Tromey  <tom@tromey.com>
3496
3497         * Makefile.in (CPPFLAGS): New variable.
3498         (INTERNAL_CPPFLAGS): Use it.
3499
3500 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3501
3502         * NEWS: Mention the index cache.
3503
3504 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3505
3506         * common/pathstuff.h (get_standard_cache_dir): New.
3507         * common/pathstuff.c (get_standard_cache_dir): New.
3508         * build-id.h (build_id_to_string): New.
3509         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
3510         DEBUG_STR_SUFFIX): Move to here.
3511         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
3512         DEBUG_STR_SUFFIX): Move from there.
3513         (write_psymtabs_to_index): Make non-static, add basename
3514         parameter.  Write to temporary files, rename when done.
3515         (save_gdb_index_command): Adjust call to
3516         write_psymtabs_to_index.
3517         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
3518         field.
3519         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
3520         (get_gdb_index_contents_from_cache): New.
3521         (get_gdb_index_contents_from_cache_dwz): New.
3522         (dwarf2_initialize_objfile): Read index from cache.
3523         (dwarf2_build_psymtabs): Save to index.
3524         * dwarf-index-cache.h: New file.
3525         * dwarf-index-cache.c: New file.
3526         * dwarf-index-write.h: New file.
3527
3528 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3529
3530         * gnulib/aclocal.m4: Re-generate.
3531         * gnulib/config.in: Re-generate.
3532         * gnulib/configure: Re-generate.
3533         * gnulib/import/Makefile.am: Re-generate.
3534         * gnulib/import/Makefile.in: Re-generate.
3535         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
3536         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
3537         * gnulib/import/m4/mkdir.m4: New file.
3538         * gnulib/import/mkdir.c: New file.
3539         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
3540         module.
3541
3542 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3543
3544         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
3545         * common/scoped_mmap.c: New file.
3546         * common/scoped_mmap.h (destroy): New method.
3547         (~scoped_mmap, reset): Use destroy.
3548         (scoped_mmap): New move constructor.
3549         (mmap_file): New declaration.
3550         * unittests/scoped_mmap-selftests.c (test_normal,
3551         test_invalid_filename, run_tests): New functions.
3552         (_initialize_scoped_mmap_selftests): Register selftest.
3553
3554 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3555
3556         * dwarf2read.c (read_gdb_index_from_section): Rename to...
3557         (read_gdb_index_from_buffer): ... this.  Remove section
3558         parameter, add buffer parameter.
3559         (get_gdb_index_contents_ftype,
3560         get_gdb_index_contents_dwz_ftype): New typedefs.
3561         (dwarf2_read_gdb_index): Add callback parameters to get the
3562         index contents.
3563         (get_gdb_index_contents_from_section): New.
3564         (dwarf2_initialize_objfile): Update call to
3565         dwarf2_read_gdb_index.
3566
3567 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3568
3569         * common/filestuff.h (gdb_fopen_cloexec): New overload.
3570         (gdb_open_cloexec): Likewise.
3571         * nat/linux-osdata.c (command_from_pid): Use string_printf.
3572         (commandline_from_pid): Likewise.
3573         (linux_xfer_osdata_threads): Likewise.
3574         (linux_xfer_osdata_fds): Likewise.
3575         * ada-lang.c (is_package_name): Likewise.
3576         * auxv.c (procfs_xfer_auxv): Likewise.
3577         * breakpoint.c (print_one_breakpoint_location): Use
3578         uiout::field_fmt.
3579         (print_one_catch_solib): Use string_printf.
3580         * coff-pe-read.c (add_pe_exported_sym): Likewise.
3581         (add_pe_forwarded_sym): Likewise.
3582         * dwarf2read.c (create_type_unit_group): Likewise.
3583         (build_error_marker_type): Likewise.
3584         * infcall.c (get_function_name): Likewise.
3585         * valprint.c (print_converted_chars_to_obstack): Likewise.
3586         * xtensa-tdep.c (xtensa_register_type): Likewise.
3587
3588 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
3589
3590         * remote.c (remote_target::download_tracepoint): Fix format
3591         string errors.
3592
3593 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3594
3595         * tracefile.c: Include common/byte-vector.h.
3596         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
3597         with trace_regblock_size if needed.  Update uses of buf.
3598
3599 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3600
3601         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
3602         std::vector<unsigned char>.
3603         * tracepoint.c (collection_list::collection_list): Remove
3604         m_regs_mask initializer from initializer list.  Resize
3605         m_regs_mask using the largest remote register number.
3606         (collection_list::add_remote_register): Remove size check on
3607         m_regs_mask.  Use at to access element.
3608         (collection_list::stringify): Change type of temp_buf to
3609         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
3610         stringify the register mask.  Use pack_hex_byte for the register
3611         mask.
3612
3613 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3614
3615         * tracepoint.h (class collection_list) <add_register>: Remove.
3616         <add_remote_register, add_ax_registers, add_local_register>:
3617         Declare.
3618         <add_memrange>: Add scope parameter.
3619         * tracepoint.c (encode_actions_1): Likewise.
3620         (collection_list::add_register): Rename to ...
3621         (collection_list::add_remote_register): ... this.  Update
3622         comment.
3623         (collection_list::add_ax_registers, add_local_register): New
3624         methods.
3625         (collection_list::add_memrange): Add scope parameter.  Call
3626         add_local_register instead of add_register.
3627         (finalize_tracepoint_aexpr): New function.
3628         (collection_list::collect_symbol): Update calls to add_memrange.
3629         Call add_local_register instead of add_register.  Call
3630         add_ax_registers.  Call finalize_tracepoint_aexpr.
3631         (encode_actions_1): Get remote regnos for $reg action.  Call
3632         add_remote_register, add_ax_registers, and add_local_register.
3633         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
3634         (validate_actionline): Call finalize_tracepoint_aexpr.
3635
3636 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3637
3638         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
3639         Replace array buf with gdb::char_vector buf, of size
3640         get_remote_packet_size ().  Replace references to buf and
3641         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
3642         and xsnprintf with snprintf.  Raise errors if the buffer is too
3643         small.
3644
3645 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3646
3647         * remote.c (remote_target::download_tracepoint): Fix the has_more
3648         predicate in the QTDP action list iteration.
3649
3650 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3651
3652         * remote.c (remote_target::download_tracepoint): Fix indentation
3653         in for block.
3654
3655 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3656
3657         * proc-api.c (_initialize_proc_api): Remove c, unused.
3658         * procfs.c (procfs_init_inferior): Remove signals, unused.
3659         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
3660         unused.
3661
3662 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
3663             Andrew Burgess  <andrew.burgess@embecosm.com>
3664
3665         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
3666         'W_STOPCODE (0)' as this could be ambiguous.
3667
3668 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
3669
3670         * ser-tcp.c (net_open): Fix thinko when deciding whether to
3671         disable TCP's Nagle algorithm (use "ai_protocol" instead of
3672         "ai_socktype").
3673
3674 2018-08-02  Tom Tromey  <tom@tromey.com>
3675
3676         PR symtab/16842.
3677         * dwarf2read.c (read_func_scope): Set symtab on template parameter
3678         symbols.
3679         (process_structure_scope): Likewise.
3680
3681 2018-08-02  Xavier Roirand  <roirand@adacore.com>
3682
3683         PR gdb/22629:
3684         * darwin-nat.c (darwin_kill_inferior): Fix handling of
3685         kill inferior.
3686
3687 2018-08-02  Tom Tromey  <tom@tromey.com>
3688
3689         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
3690         (darwin_suspend_inferior, darwin_resume_inferior)
3691         (darwin_decode_notify_message, darwin_resume_inferior_threads)
3692         (darwin_check_new_threads): Check result of get_darwin_inferior.
3693
3694 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
3695
3696         GDB 8.1.1 released.
3697
3698 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
3699
3700         * varobj.c (varobj_get_path_expr_parent): Report an error if
3701         parent is a dynamic varobj.
3702
3703 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
3704
3705         * gnulib/aclocal.m4: Re-generate.
3706         * gnulib/config.in: Re-generate.
3707         * gnulib/configure: Re-generate.
3708         * gnulib/import/Makefile.in: Re-generate.
3709         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
3710         * gnulib/import/m4/onceonly.m4: Re-generate.
3711
3712 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
3713
3714         * target-descriptions.c (struct xml_test_tdesc): New.
3715         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
3716         (record_xml_tdesc): Update.
3717         (maintenance_check_xml_descriptions): Update.
3718         * target-descriptions.h (record_xml_tdesc): Update comment.
3719
3720 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
3721
3722         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
3723         checking array bounds are defined.
3724
3725 2018-07-30  Tom Tromey  <tom@tromey.com>
3726
3727         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
3728         irreflexivity violation.
3729
3730 2018-07-30  Tom Tromey  <tom@tromey.com>
3731
3732         * cli/cli-decode.c (lookup_cmd): Remove lint code.
3733         * value.c (unpack_long): Remove lint code.
3734         * valops.c (value_ind): Remove lint code.
3735         * valarith.c (value_x_binop, value_x_unop, value_equal)
3736         (value_pos): Remove lint code.
3737
3738 2018-07-28  Tom de Vries  <tdevries@suse.de>
3739
3740         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
3741         with undefined upper bound as <optimized out>.
3742
3743 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
3744
3745         * gcore.in: Rename variable "name" to "prefix".  Expand
3746         "usage" text.
3747
3748 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
3749
3750         * windows-nat.c (windows_nat_target::create_inferior): Update to
3751         call close() in global namespace.
3752
3753 2018-07-26  Tom Tromey  <tom@tromey.com>
3754
3755         * dwarf-index-write.c (add_address_entry): Don't add objfile
3756         offsets.
3757         * dbxread.c (find_stab_function): Rename from
3758         find_stab_function_addr.  Return a bound_minimal_symbol.
3759         (read_dbx_symtab): Use raw_text_low, raw_text_high.
3760         Don't add objfile offsets.
3761         (end_psymtab): Use raw_text_low, raw_text_high,
3762         MSYMBOL_VALUE_RAW_ADDRESS.
3763         (read_ofile_symtab): Update.
3764         (process_one_symbol): Update.
3765         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
3766         offsets.
3767         (dw2_relocate): Remove.
3768         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
3769         searching addrmap.
3770         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
3771         Update.
3772         (process_psymtab_comp_unit_reader, add_partial_symbol)
3773         (add_partial_subprogram, dwarf2_ranges_read): Update.
3774         (load_partial_dies): Update.
3775         (add_address_entry): Don't add objfile offsets.
3776         (dwarf2_build_include_psymtabs): Update.
3777         (create_addrmap_from_aranges): Don't add objfile offsets.
3778         (dw2_find_pc_sect_compunit_symtab): Update.
3779         * mdebugread.c (parse_symbol): Don't add objfile offsets.
3780         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
3781         Update.
3782         (parse_partial_symbols): Don't add objfile offsets.  Use
3783         raw_text_low, raw_text_high.  Update.
3784         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
3785         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
3786         or call 'relocate' quick function.  Clear psymbol_map.
3787         * psympriv.h (struct partial_symbol) <address>: Add section
3788         offset.
3789         <set_unrelocated_address>: Rename from set_address.
3790         <raw_text_low, raw_text_high>: New methods.
3791         <text_low, text_high>: Add objfile parameter.
3792         (add_psymbol_to_bcache): Add 'section' parameter.  Call
3793         set_unrelocated_address.
3794         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3795         (find_pc_psymbol): Update.
3796         (fixup_psymbol_section, relocate_psymtabs): Remove.
3797         (dump_psymtab, psym_functions): Update.
3798         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
3799         parameter.
3800         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
3801         (start_psymtab_common): Update.
3802         * symfile-debug.c (debug_qf_relocate): Remove.
3803         (debug_sym_quick_functions): Update.
3804         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
3805         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
3806         Update.
3807
3808 2018-07-26  Tom Tromey  <tromey@redhat.com>
3809
3810         * dbxread.c (end_psymtab): Use text_high_valid and
3811         text_low_valid.
3812         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
3813         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
3814         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
3815         Update comment.
3816         <text_low_valid, text_high_valid>: New fields.
3817         <set_text_low, set_text_high>: Update.
3818         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
3819
3820 2018-07-26  Tom Tromey  <tom@tromey.com>
3821
3822         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
3823         Update.
3824         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
3825         textlow and texthigh fields.
3826         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
3827         Update.
3828         * mdebugread.c (parse_lines, parse_partial_symbols)
3829         (psymtab_to_symtab_1): Update.
3830         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
3831         Rename fields.  Update comment.  Now private.
3832         <text_low, text_high, set_text_low, set_text_high>: New methods.
3833         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3834         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
3835         (start_psymtab_common, maintenance_info_psymtabs)
3836         (maintenance_check_psymtabs): Update.
3837         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
3838         texthigh fields.
3839         (scan_xcoff_symtab): Update.
3840
3841 2018-07-26  Tom Tromey  <tromey@redhat.com>
3842
3843         * psympriv.h (struct partial_symbol) <unrelocated_address,
3844         address, set_address>: New methods.
3845         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
3846         (fixup_psymbol_section, relocate_psymtabs): Update.
3847         (print_partial_symbols): Add 'objfile' parameter.  Update.
3848         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
3849         Update.
3850
3851 2018-07-26  Tom Tromey  <tom@tromey.com>
3852
3853         * dwarf-index-write.c (write_psymbols, debug_names::insert)
3854         (debug_names::write_psymbols): Update.
3855         * psympriv.h (struct partial_symbol): Derive from
3856         general_symbol_info.
3857         <obj_section>: New method.
3858         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
3859         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3860         (find_pc_sect_psymbol, fixup_psymbol_section)
3861         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
3862         (print_partial_symbols, recursively_search_psymtabs)
3863         (compare_psymbols, psymbol_hash, psymbol_compare)
3864         (add_psymbol_to_bcache, maintenance_check_psymtabs)
3865         (psymbol_name_matches, psym_fill_psymbol_map): Update.
3866
3867 2018-07-26  Tom Tromey  <tromey@redhat.com>
3868
3869         * dbxread.c (end_psymtab): Remove dead code.
3870
3871 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
3872
3873         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
3874         DWARF unwinders are disabled.
3875         * dwarf2-frame.c: Add dwarf2read.h include.
3876         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
3877         disabled.
3878         (dwarf2_frame_unwinders_enabled_p): Define.
3879         (show_dwarf_unwinders_enabled_p): New function.
3880         (_initialize_dwarf2_frame): Register switch to control DWARF
3881         unwinder use.
3882         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
3883         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
3884         (show_dwarf_cmdlist): Remove static keyword.
3885         * dwarf2read.h (set_dwarf_cmdlist): Declare.
3886         (show_dwarf_cmdlist): Declare.
3887         * NEWS: Document new feature.
3888
3889 2018-07-26  Tom de Vries  <tdevries@suse.de>
3890
3891         PR breakpoints/23366
3892         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
3893
3894 2018-07-26  Tom de Vries  <tdevries@suse.de>
3895
3896         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
3897         DW_AT_count can't be translated to a dynamic prop.
3898
3899 2018-07-25  Tom de Vries  <tdevries@suse.de>
3900
3901         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
3902         try/catch.
3903
3904 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
3905
3906         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
3907
3908 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
3909
3910         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
3911
3912 2018-07-24  Keith Seitz  <keiths@redhat.comt
3913
3914         PR symtab/23010
3915         * dwarf2read.c (dw2_add_symbol_to_list): New function.
3916         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
3917         instead of add_symbol_to_list.
3918         (read_file_scope): Call prepare_one_comp_unit before reading
3919         any other DIEs.
3920
3921 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
3922
3923         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
3924
3925 2018-07-24  Tom Tromey  <tom@tromey.com>
3926
3927         * utils.c (malloc, realloc, free): Don't declare.
3928         * configure, config.in: Rebuild.
3929         * configure.ac: Don't check for declarations of free, malloc, or
3930         realloc.
3931
3932 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
3933
3934         * aarch64-linux-nat.c
3935         (aarch64_linux_nat_target::stopped_data_address): Remove unused
3936         variable.
3937         * arm-linux-nat.c (fetch_regs): Likewise.
3938         (store_regs): Likewise.
3939         (fetch_vfp_regs): Likewise.
3940         (store_vfp_regs): Likewise.
3941         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
3942         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
3943         (arm_linux_nat_target::insert_watchpoint): Likewise.
3944         (arm_linux_nat_target::remove_watchpoint): Likewise.
3945         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
3946         Likewise.
3947         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
3948         Likewise.
3949         * ppc-linux-nat.c (fetch_register): Likewise.
3950         (fetch_all_gp_regs): Likewise.
3951         (fetch_ppc_registers): Likewise.
3952         (store_all_gp_regs): Likewise.
3953         (store_ppc_registers): Likewise.
3954         (hwdebug_insert_point): Likewise.
3955         (can_use_watchpoint_cond_accel): Likewise.
3956         * remote-sim.c (gdb_os_write_stdout): Likewise.
3957
3958 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
3959             Tom Tromey  <tom@tromey.com>
3960
3961         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
3962         test for it.
3963         * configure: Rebuild.
3964
3965 2018-07-22  Tom Tromey  <tom@tromey.com>
3966
3967         * regformats/regdat.sh: Define xmltarget_${name} inside
3968         #ifndef IN_PROCESS_AGENT.
3969
3970 2018-07-22  Tom Tromey  <tom@tromey.com>
3971
3972         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
3973
3974 2018-07-22  Tom Tromey  <tom@tromey.com>
3975
3976         * symfile.c (reread_symbols): Notify iter, not objfile.
3977
3978 2018-07-22  Tom Tromey  <tom@tromey.com>
3979
3980         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
3981         Use arch_ops.
3982         (ravenscar_thread_target::prepare_to_store): Likewise.
3983
3984 2018-07-22  Tom Tromey  <tom@tromey.com>
3985
3986         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
3987         unused variable.  Call value_fetch_lazy when needed.
3988         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
3989         Remove unused variable.  Call value_fetch_lazy when needed.
3990
3991 2018-07-22  Tom Tromey  <tom@tromey.com>
3992
3993         * m32c-tdep.c (mark_dma): Return void.
3994         (make_regs): Remove unused declarations.
3995
3996 2018-07-22  Tom Tromey  <tom@tromey.com>
3997
3998         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
3999         cmdscm_get_valid_command_smob_arg_unsafe for effect.
4000         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
4001         bkscm_get_valid_block_smob_arg_unsafe for effect.
4002
4003 2018-07-22  Tom Tromey  <tom@tromey.com>
4004
4005         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
4006         value_type.
4007
4008 2018-07-22  Tom Tromey  <tom@tromey.com>
4009
4010         * windows-nat.c (saved_context): Conditionally define.
4011         * remote.c (remote_target::remote_btrace_maybe_reopen):
4012         Conditionally declare "warned".
4013         * inflow.c (sigquit_ours): Conditionally define.
4014         (new_tty): Move "tty" declaration inside #if.
4015         * guile/guile.c (guile_datadir): Conditionally define.
4016         * charset.c (set_be_le_names): Move some declarations inside #if.
4017         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
4018         #if.
4019         (parse_xml_btrace_conf): Likewise.
4020
4021 2018-07-22  Tom Tromey  <tom@tromey.com>
4022
4023         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
4024
4025 2018-07-22  Tom Tromey  <tom@tromey.com>
4026
4027         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
4028         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
4029         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
4030         * buildsym-legacy.c (get_macro_table): Remove unused variable.
4031         * stack.c (frame_apply_level_command): Remove unused variable.
4032         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
4033         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
4034         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
4035         unused variable.
4036         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
4037         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
4038         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
4039         variable.
4040         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
4041         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
4042         variable.
4043         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
4044         Remove unused variable.
4045         * cli/cli-script.c (recurse_read_control_structure): Remove unused
4046         variable.
4047         * common/tdesc.c (print_xml_feature::visit): Remove unused
4048         variable.
4049         * compile/compile-object-load.c (store_regs): Remove unused
4050         variables.
4051         * complaints.c (clear_complaints): Remove unused variable.
4052         * corelow.c (core_target_open): Remove unused variable.
4053         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
4054         variable.
4055         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
4056         variable.
4057         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
4058         variable.
4059         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
4060         variable.
4061         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
4062         variable.
4063         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
4064         variable.
4065         * ia64-tdep.c (examine_prologue): Remove unused variable.
4066         * infcall.c (run_inferior_call): Remove unused variable.
4067         * inferior.c (exit_inferior): Remove unused variable.
4068         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
4069         * linespec.c (decode_line_2): Remove unused variable.
4070         * linux-nat.c (super_close): Remove.
4071         * linux-tdep.c (linux_info_proc): Remove unused variable.
4072         * mi/mi-main.c (mi_execute_command): Remove unused variable.
4073         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
4074         Remove unused variable.
4075         * parse.c (find_minsym_type_and_address): Remove unused variable.
4076         * printcmd.c (info_symbol_command, printf_floating): Remove unused
4077         variable.
4078         * python/py-breakpoint.c (bppy_set_commands): Remove unused
4079         variable.
4080         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
4081         variables.
4082         * record-btrace.c (record_btrace_target::store_registers): Remove
4083         unused variable.
4084         (cmd_show_record_btrace_cpu): Remove unused variable.
4085         * riscv-tdep.c (riscv_register_reggroup_p)
4086         (riscv_push_dummy_call, riscv_return_value): Remove unused
4087         variable.
4088         * rust-exp.y (literal): Remove unused variable.
4089         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
4090         unused variable.
4091         <STRUCTOP_ANONYMOUS>: Likewise.
4092         * s390-linux-tdep.c (s390_linux_init_abi_31)
4093         (s390_linux_init_abi_64): Remove unused variable.
4094         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
4095         (file_select_thread, net_windows_open, _initialize_ser_windows):
4096         Remove unused variables.
4097         * symtab.c (find_pc_sect_line): Remove unused variable.
4098         * target-memory.c (compute_garbled_blocks): Remove unused
4099         variable.
4100         (target_write_memory_blocks): Remove unused variable.
4101         * target.c (target_stack::unpush): Remove unused variables.
4102         * tracepoint.c (start_tracing, all_tracepoint_actions)
4103         (merge_uploaded_trace_state_variables)
4104         (print_one_static_tracepoint_marker): Remove unused variable.
4105         * unittests/basic_string_view/element_access/char/1.cc (test01):
4106         Remove unused variable.
4107         * windows-nat.c (windows_continue, windows_add_all_dlls)
4108         (do_initial_windows_stuff, windows_nat_target::create_inferior):
4109         Remove unused variables.
4110
4111 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
4112
4113         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
4114         attr_profile in HAVE_ELF.
4115         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
4116         HAVE_ELF.
4117
4118 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
4119
4120         * frame.c (frame_register_unwind): Change parameter name.
4121         (frame_unwind_register): Likewise.
4122         (frame_unwind_register_value): Likewise.
4123         (frame_unwind_register_signed): Likewise.
4124         (frame_unwind_register_unsigned): Likewise.
4125         * frame.h (frame_register_unwind): Likewise.
4126         (frame_unwind_register): Likewise.
4127         (frame_unwind_register_value): Likewise.
4128         (frame_unwind_register_signed): Likewise.
4129         (frame_unwind_register_unsigned): Likewise.
4130         (frame_unwind_arch): Likewise.
4131
4132 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4133
4134         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
4135         ISA maintenance.
4136
4137 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4138
4139         * mips-linux-nat.c (mips_linux_nat_target::read_description):
4140         Call `get_ptrace_pid' rather than extracting the ptrace PID by
4141         hand.
4142
4143 2018-07-20  Keith Seitz  <keiths@redhat.com>
4144
4145         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
4146         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
4147         m_compunit_symtab, m_language>: Add "m_" prefix.
4148         Update all uses.
4149         * buildsym.c: Update all uses.
4150
4151 2018-07-20  Tom Tromey  <tom@tromey.com>
4152
4153         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
4154         * buildsym.h (record_line_ftype): Remove typedef.
4155
4156 2018-07-20  Tom Tromey  <tom@tromey.com>
4157
4158         * buildsym-legacy.h (augment_type_symtab): Don't declare.
4159         (end_expandable_symtab): Likewise.
4160         (end_symtab_get_static_block): Likewise.
4161         (end_symtab_from_static_block): Likewise.
4162         * buildsym-legacy.c (augment_type_symtab): Remove.
4163         (end_expandable_symtab): Remove.
4164         (end_symtab_get_static_block): Remove.
4165         (end_symtab_from_static_block): Remove.
4166
4167 2018-07-20  Tom Tromey  <tom@tromey.com>
4168
4169         * dwarf2read.c: Include buildsym.h.
4170         (struct dwarf2_cu) <builder>: New method.
4171         (fixup_go_packaging): Update.
4172         (process_full_comp_unit, process_full_type_unit): Update.  Don't
4173         use scoped_free_pendings.
4174         (using_directives): Add "cu" parameter, remove "language".
4175         (read_import_statement, setup_type_unit_groups, )
4176         (read_func_scope, read_lexical_block_scope)
4177         (dwarf2_record_block_ranges, read_namespace): Update.
4178         (lnp_state_machine::lnp_state_machine): Add cu parameter.
4179         (lnp_state_machine::handle_end_sequence): Update.
4180         (class lnp_state_machine) <m_cu>: New member.
4181         <m_record_line_callback>: Remove.
4182         <m_currently_recording_lines>: New member.
4183         (lnp_state_machine::handle_set_file): Update.
4184         (noop_record_line): Remove.
4185         (dwarf_record_line_p): Add cu parameter.
4186         (dwarf_record_line_1, dwarf_finish_line): Likewise.
4187         (lnp_state_machine::record_line)
4188         (lnp_state_machine::lnp_state_machine)
4189         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
4190         (dwarf_decode_lines): Update.
4191         (dwarf2_start_subfile): Add cu parameter.
4192         (dwarf2_start_symtab, new_symbol): Update.
4193         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
4194         Remove dwarf2_per_objfile parameter.
4195         (dwarf_decode_macros): Update.
4196
4197 2018-07-20  Tom Tromey  <tom@tromey.com>
4198
4199         * stabsread.c (define_symbol): Update.
4200         * buildsym-legacy.h (get_buildsym_compunit): Declare.
4201         * dwarf2read.c (new_symbol): Update.
4202         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
4203         * cp-namespace.c: Include buildsym.h.
4204         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
4205         * buildsym-legacy.c (get_buildsym_compunit): New function.
4206
4207 2018-07-20  Tom Tromey  <tom@tromey.com>
4208
4209         * xcoffread.c: Include buildsym-legacy.h.
4210         * windows-nat.c: Include buildsym-legacy.h.
4211         * stabsread.c: Include buildsym-legacy.h.
4212         * mdebugread.c: Include buildsym-legacy.h.
4213         * buildsym-legacy.h: New file.
4214         * buildsym-legacy.c: New file, from buildsym.c.
4215         * go32-nat.c: Include buildsym-legacy.h.
4216         * dwarf2read.c: Include buildsym-legacy.h.
4217         * dbxread.c: Include buildsym-legacy.h.
4218         * cp-namespace.c: Include buildsym-legacy.h.
4219         * coffread.c: Include buildsym-legacy.h.
4220         * buildsym.h: Move some contents to buildsym-legacy.h.
4221         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
4222         buildsym-legacy.c.
4223         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
4224
4225 2018-07-20  Tom Tromey  <tom@tromey.com>
4226
4227         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
4228         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
4229         (buildsym_compunit::buildsym_compunit)
4230         (buildsym_compunit::~buildsym_compunit)
4231         (buildsym_compunit::get_macro_table): Define.
4232
4233 2018-07-20  Tom Tromey  <tom@tromey.com>
4234
4235         * buildsym.c (reset_symtab_globals): Remove.
4236         (buildsym_compunit::end_symtab_from_static_block): Update.
4237         (buildsym_compunit::augment_type_symtab): Update.
4238         (end_symtab_from_static_block): Call free_buildsym_compunit.
4239         (augment_type_symtab, end_symtab, end_expandable_symtab):
4240         Likewise.
4241
4242 2018-07-20  Tom Tromey  <tom@tromey.com>
4243
4244         * arch-utils.c: Do not include buildsym.h.
4245         * mipsread.c: Do not include buildsym.h.
4246         * machoread.c: Do not include buildsym.h.
4247         * elfread.c: Do not include buildsym.h.
4248
4249 2018-07-20  Tom Tromey  <tom@tromey.com>
4250
4251         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
4252         initialization.
4253         (buildsym_compunit): Add new constructor.
4254         (struct buildsym_compunit) <get_last_source_file, finish_block,
4255         record_block_range, start_subfile, patch_subfile_names,
4256         push_subfile, pop_subfile, record_line, get_compunit_symtab,
4257         set_last_source_start_addr, get_last_source_start_addr,
4258         get_local_using_directives, set_local_using_directives,
4259         get_global_using_directives, outermost_context_p,
4260         get_current_context_stack, get_context_stack_depth,
4261         get_current_subfile, get_local_symbols, get_file_symbols,
4262         get_global_symbols, record_debugformat, record_producer,
4263         push_context, pop_context, end_symtab_get_static_block,
4264         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
4265         New public methods.
4266         <record_pending_block, finish_block_internal, make_blockvector,
4267         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
4268         private methods.
4269         Update all users.
4270
4271 2018-05-22  Tom Tromey  <tom@tromey.com>
4272
4273         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
4274         parameter.
4275         (finish_block_internal): Update.
4276
4277 2018-07-20  Tom Tromey  <tom@tromey.com>
4278
4279         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
4280         parameter.
4281         (finish_block_internal): Update.
4282
4283 2018-07-20  Tom Tromey  <tom@tromey.com>
4284
4285         * buildsym.h (EXTERN): Don't define or undef.
4286         * buildsym.c (EXTERN): Don't define.
4287
4288 2018-07-20  Tom Tromey  <tom@tromey.com>
4289
4290         * buildsym.c: Remove TODO comment.
4291
4292 2018-07-20  Tom Tromey  <tom@tromey.com>
4293
4294         * coffread.c (coff_symtab_read): Update.
4295         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
4296         (xcoff_new_init): Update.
4297         * mipsread.c (mipscoff_new_init): Update.
4298         * mdebugread.c (mdebug_build_psymtabs): Update.
4299         * elfread.c (elf_new_init): Update.
4300         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
4301         Update.
4302         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
4303         (coffstab_build_psymtabs, elfstab_build_psymtabs)
4304         (stabsect_build_psymtabs): Update.
4305         * buildsym.h (buildsym_init): Don't declare.
4306         * buildsym.c: Update comment.
4307         (prepare_for_building): Remove.
4308         (start_symtab, restart_symtab): Update.
4309         (reset_symtab_globals): Update comment.
4310         (buildsym_init): Remove.
4311
4312 2018-07-20  Tom Tromey  <tom@tromey.com>
4313
4314         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
4315         * stabsread.c (patch_block_stabs, define_symbol, read_type)
4316         (read_enum_type, common_block_start, common_block_end)
4317         (cleanup_undefined_types_1, finish_global_stabs): Update.
4318         * mdebugread.c (psymtab_to_symtab_1): Update.
4319         * dwarf2read.c (fixup_go_packaging, read_func_scope)
4320         (read_lexical_block_scope, new_symbol): Update.
4321         * dbxread.c (process_one_symbol): Update.
4322         * coffread.c (coff_symtab_read, process_coff_symbol)
4323         (coff_read_enum_type): Update.
4324         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
4325         declare.
4326         (get_local_symbols, get_file_symbols, get_global_symbols): New
4327         functions.
4328         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
4329         m_global_symbols.
4330         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
4331         (~scoped_free_pendings): Update.
4332         (finish_block, prepare_for_building, reset_symtab_globals)
4333         (end_symtab_get_static_block, end_symtab_with_blockvector)
4334         (augment_type_symtab, push_context): Update.
4335         (get_local_symbols, get_file_symbols, get_global_symbols): New
4336         functions.
4337         (buildsym_init): Update.
4338
4339 2018-07-20  Tom Tromey  <tom@tromey.com>
4340
4341         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
4342         (process_full_type_unit): Likewise.
4343         (dwarf2_start_symtab): Set list_in_scope.
4344
4345 2018-07-20  Tom Tromey  <tom@tromey.com>
4346
4347         * dwarf2read.c (process_psymtab_comp_unit_reader)
4348         (build_type_psymtabs_reader): Do not set list_in_scope.
4349
4350 2018-07-20  Tom Tromey  <tom@tromey.com>
4351
4352         * buildsym.c (free_pendings): Remove.
4353         (add_symbol_to_list, scoped_free_pendings)
4354         (finish_block_internal, buildsym_init): Update.
4355
4356 2018-07-20  Tom Tromey  <tom@tromey.com>
4357
4358         * xcoffread.c (read_xcoff_symtab): Update.
4359         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
4360         Update.
4361         * dbxread.c (process_one_symbol): Update.
4362         * coffread.c (coff_symtab_read): Update.
4363         * buildsym.h (finish_block): Update.
4364         * buildsym.c (finish_block): Remove "listhead" argument.
4365         (end_symtab_get_static_block): Update.
4366
4367 2018-07-20  Tom Tromey  <tom@tromey.com>
4368
4369         * buildsym.h (class scoped_free_pendings): Remove constructor.
4370         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
4371         method.
4372         <m_pending_block_obstack, m_pending_blocks>: New members.
4373         (pending_block_obstack, pending_blocks): Remove.
4374         (scoped_free_pendings::scoped_free_pendings): Default.
4375         (~scoped_free_pendings): Update.
4376         (free_pending_blocks): Remove.
4377         (finish_block_internal, record_pending_block, make_blockvector)
4378         (end_symtab_get_static_block, augment_type_symtab, push_context)
4379         (buildsym_init): Update.
4380
4381 2018-07-20  Tom Tromey  <tom@tromey.com>
4382
4383         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
4384         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
4385         members.
4386         (pending_addrmap, pending_addrmap_obstack)
4387         (pending_addrmap_interesting): Remove.
4388         (scoped_free_pendings, record_block_range, make_blockvector)
4389         (prepare_for_building, reset_symtab_globals, buildsym_init):
4390         Update.
4391
4392 2018-07-20  Tom Tromey  <tom@tromey.com>
4393
4394         * xcoffread.c (process_linenos): Update.
4395         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
4396         * mdebugread.c (psymtab_to_symtab_1): Update.
4397         * dwarf2read.c (setup_type_unit_groups)
4398         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
4399         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
4400         * dbxread.c (process_one_symbol): Update.
4401         * coffread.c (coff_symtab_read, enter_linenos)
4402         (process_coff_symbol): Update.
4403         * buildsym.h (current_subfile): Don't declare.
4404         (get_current_subfile): Declare.
4405         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
4406         member.
4407         (start_subfile, free_buildsym_compunit, push_subfile)
4408         (prepare_for_building, start_symtab): Update.
4409         (get_current_subfile): New function.
4410
4411 2018-07-20  Tom Tromey  <tom@tromey.com>
4412
4413         * coffread.c (coff_symtab_read): Update.
4414         * xcoffread.c (read_xcoff_symtab): Update.
4415         * dwarf2read.c (new_symbol): Update.
4416         (read_func_scope, read_lexical_block_scope): Update.
4417         * dbxread.c (process_one_symbol): Update.
4418         * buildsym.h (context_stack, context_stack_depth): Don't declare.
4419         (outermost_context_p): Remove macro.
4420         (outermost_context_p, get_current_context_stack)
4421         (get_context_stack_depth): Declare.
4422         (pop_context): Return struct context_stack.
4423         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
4424         member.
4425         (context_stack_size): Remove.
4426         (INITIAL_CONTEXT_STACK_SIZE): Remove.
4427         (prepare_for_building, end_symtab_get_static_block)
4428         (augment_type_symtab, push_context): Update.
4429         (pop_context): Return struct context_stack.
4430         (outermost_context_p, get_current_context_stack)
4431         (get_context_stack_depth): New functions.
4432         (buildsym_init): Update.
4433
4434 2018-07-20  Tom Tromey  <tom@tromey.com>
4435
4436         * rust-exp.y: Now a pure parser.  Update all rules.
4437         (%union): Move earlier.
4438         (current_parser, work_obstack): Remove globals.
4439         (rust_parser, ~rust_parser): Update.
4440         (class rust_parser) <copy_name, concat3, crate_name, super_name,
4441         lex_character, lex_number, lex_string, lex_identifier,
4442         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
4443         convert_name, convert_params_to_expression,
4444         convert_ast_to_expression, ast_basic_type, ast_operation,
4445         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
4446         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
4447         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
4448         ast_array_type, ast_slice_type, ast_reference_type,
4449         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
4450         (rust_parse): Update.
4451         (rustyyerror, rustyylex): Add parser parameter.
4452         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
4453         (rust_lex_stringish_test, rust_lex_test_sequence)
4454         (rust_lex_test_trailing_dot, rust_lex_test_completion)
4455         (rust_lex_test_push_back, rust_lex_tests): Update.
4456
4457 2018-07-19  Pedro Alves  <palves@redhat.com>
4458
4459         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
4460         gdb::unique_xmalloc_ptr.
4461         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
4462         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
4463         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
4464         copy-initialization.
4465         * guile/scm-pretty-print.c (ppscm_print_children): Use
4466         gdb::unique_xmalloc_ptr instead of cleanups.
4467         (gdbscm_apply_val_pretty_printer): Remove cleanups.
4468         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
4469         gdb::unique_xmalloc_ptr.
4470         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
4471         Adjust to use gdb::unique_xmalloc_ptr.
4472         * guile/scm-utils.c (extract_arg): Adjust.
4473         * guile/scm-value.c (gdbscm_value_field): Adjust to use
4474         gdb::unique_xmalloc_ptr instead of a cleanup.
4475
4476 2018-07-19  Tom Tromey  <tom@tromey.com>
4477
4478         * utils.c (do_value_free_to_mark)
4479         (make_cleanup_value_free_to_mark): Remove.
4480         * utils.h (make_cleanup_value_free_to_mark): Remove.
4481
4482 2018-07-19  Pedro Alves  <palves@redhat.com>
4483
4484         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
4485         forwarding reference.
4486
4487 2018-07-18  Pedro Alves  <palves@redhat.com>
4488
4489         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
4490         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
4491         cleanup.
4492
4493 2018-07-18  Pedro Alves  <palves@redhat.com>
4494
4495         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
4496         exceptions.
4497         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
4498         (gdbscm_wrap): New.
4499         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
4500         directly instead of a cleanup.
4501         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
4502         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
4503         (vlscm_binop_gdbthrow): New, factored out from ...
4504         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
4505         (vlscm_rich_compare): Use gdbscm_wrap.
4506         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
4507         instead of a cleanup.
4508         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
4509         cleanup.
4510         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
4511         Use xfree directly instead of a cleanup.
4512         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
4513         Adjust to use gdbscm_wrap and scoped_value_mark.
4514         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
4515         (gdbscm_value_address, gdbscm_value_dereference)
4516         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
4517         scoped_value_mark.
4518         (gdbscm_value_dynamic_type): Use scoped_value_mark.
4519         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
4520         scoped_value_mark.
4521         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
4522         gdbscm_wrap and scoped_value_mark.
4523         (gdbscm_value_to_string): Use xfree directly instead of a
4524         cleanup.  Move 'buffer' unique_ptr to TRY scope.
4525         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
4526         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
4527         scoped_value_mark.
4528         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
4529         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
4530         scoped_value_mark.
4531         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
4532         gdbscm_wrap.
4533
4534 2018-07-18  Tom de Vries  <tdevries@suse.de>
4535
4536         * findvar.c (default_read_var_value): Also resolve dynamic type for
4537         LOC_OPTIMIZED_OUT vars.
4538
4539 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
4540
4541         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
4542         decoding.
4543
4544 2018-07-17  Tom Tromey  <tom@tromey.com>
4545
4546         * guile/scm-param.c (pascm_set_func, pascm_show_func)
4547         (compute_enum_list, pascm_set_param_value_x)
4548         (gdbscm_parameter_value): Update.
4549         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
4550         (gdbscm_scm_to_host_string): Update.
4551         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
4552         Update.
4553         * guile/scm-cmd.c (cmdscm_add_completion): Update.
4554         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
4555         * guile/scm-string.c (gdbscm_scm_to_string): Return
4556         unique_xmalloc_ptr.
4557         (gdbscm_scm_to_host_string): Likewise.
4558
4559 2018-07-17  Tom Tromey  <tom@tromey.com>
4560
4561         * guile/guile.c (gdbscm_eval_from_control_command): Update.
4562         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
4563         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
4564         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
4565         unique_xmalloc_ptr.
4566
4567 2018-07-17  Tom Tromey  <tom@tromey.com>
4568
4569         * guile/scm-param.c (pascm_signal_setshow_error): Update.
4570         * guile/guile-internal.h (gdbscm_exception_message_to_string):
4571         Update.
4572         * guile/scm-cmd.c (cmdscm_function): Update.
4573         * guile/scm-pretty-print.c
4574         (ppscm_print_exception_unless_memory_error): Update.
4575         * guile/scm-exception.c (gdbscm_exception_message_to_string):
4576         Return unique_xmalloc_ptr.
4577
4578 2018-07-17  Tom Tromey  <tom@tromey.com>
4579
4580         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
4581         Use string_printf.
4582
4583 2018-07-17  Jim Wilson  <jimw@sifive.com>
4584
4585         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
4586         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
4587         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
4588         unecessary braces after EF_RISCV_RVC test.  Delete call to
4589         set_gdbarch_decr_pc_after_break.
4590
4591         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
4592         RISCV_LAST_FP_REGNUM + 1.
4593         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
4594
4595 2018-07-17  Tom Tromey  <tom@tromey.com>
4596
4597         * configure.ac: Remove --disable-gdbcli.
4598         * configure: Rebuild.
4599         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
4600         (SUBDIR_CLI_CFLAGS): Remove.
4601         (SFILES): Use SUBDIR_CLI_SRCS.
4602         (COMMON_OBS): Use SUBDIR_CLI_OBS.
4603
4604 2018-07-17  Tom Tromey  <tom@tromey.com>
4605
4606         PR gdb/18624:
4607         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
4608
4609 2018-07-16  Jim Wilson  <jimw@sifive.com>
4610
4611         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
4612
4613 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
4614
4615         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
4616         variable.
4617         (libunwind_frame_sniffer): Likewise.
4618         (libunwind_frame_prev_register): Likewise.
4619         (libunwind_sigtramp_frame_sniffer): Likewise.
4620         * ia64-tdep.c (ia64_access_reg): Likewise.
4621         (ia64_access_rse_reg): Likewise.
4622         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
4623         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
4624
4625 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
4626
4627         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
4628
4629 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
4630
4631         * remote-sim.c (gdbsim_target::close,
4632         gdbsim_target::mourn_inferior): Remove unused variables.
4633
4634 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
4635
4636         * ia64-tdep.c (ktab_buf): New global.
4637         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
4638         (get_kernel_table): Adjust.
4639
4640 2018-07-16  Tom Tromey  <tom@tromey.com>
4641
4642         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
4643         * dwarf2read.c (using_directives, new_symbol): Use
4644         outermost_context_p.
4645         * dbxread.c (process_one_symbol): Use outermost_context_p.
4646         * coffread.c (coff_symtab_read): Use outermost_context_p.
4647
4648 2018-07-16  Tom Tromey  <tom@tromey.com>
4649
4650         * dwarf2read.c (using_directives, read_func_scope)
4651         (read_lexical_block_scope): Update.
4652         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
4653         * buildsym.h (local_using_directives, global_using_directives):
4654         Don't declare.
4655         (get_local_using_directives, set_local_using_directives)
4656         (get_global_using_directives): Declare.
4657         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
4658         m_global_using_directives>: New members.
4659         (finish_block_internal, prepare_for_building)
4660         (reset_symtab_globals, end_symtab_get_static_block)
4661         (push_context): Update.
4662         (get_local_using_directives, set_local_using_directives)
4663         (get_global_using_directives): New functions.
4664         (buildsym_init): Update.
4665
4666 2018-07-16  Tom Tromey  <tom@tromey.com>
4667
4668         * xcoffread.c (xcoff_initial_scan): Don't call
4669         free_pending_blocks.
4670         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
4671         * buildsym.h (class scoped_free_pendings): Add constructor.
4672         (free_pending_blocks): Don't declare.
4673         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
4674         (free_pending_blocks): Now static.
4675
4676 2018-07-16  Tom Tromey  <tom@tromey.com>
4677
4678         * buildsym.h (push_subfile, pop_subfile): Update declarations.
4679         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
4680         member.
4681         (struct subfile_stack): Remove.
4682         (subfile_stack): Remove.
4683         (push_subfile, pop_subfile, buildsym_init): Update.
4684
4685 2018-07-16  Tom Tromey  <tom@tromey.com>
4686
4687         * buildsym.c (push_subfile): Use gdb_assert.
4688         (pop_subfile): Use gdb_assert.
4689
4690 2018-07-16  Tom Tromey  <tom@tromey.com>
4691
4692         * buildsym.h (merge_symbol_lists): Remove.
4693         * buildsym.c (merge_symbol_lists): Remove.
4694
4695 2018-07-16  Tom Tromey  <tom@tromey.com>
4696
4697         * stabsread.c (scan_file_globals): Update comment.
4698         * stabsread.h (scan_file_globals): Move from buildsym.h.
4699         * buildsym.h (scan_file_globals): Move to stabsread.h.
4700
4701 2018-07-16  Tom Tromey  <tom@tromey.com>
4702
4703         * xcoffread.c (xcoff_new_init): Update.
4704         * mipsread.c (mipscoff_new_init): Update.
4705         * mdebugread.c (mdebug_build_psymtabs): Update.
4706         * elfread.c (elf_new_init): Update.
4707         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
4708         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
4709         * buildsym.h (buildsym_new_init): Don't declare.
4710         * buildsym.c (buildsym_new_init): Remove.
4711
4712 2018-07-16  Tom Tromey  <tom@tromey.com>
4713
4714         * stabsread.h (within_function): Move from buildsym.h.
4715         * stabsread.c (start_stabs): Clear within_function.
4716         * coffread.c (coff_start_symtab): Clear within_function.
4717         * buildsym.h (within_function): Move to stabsread.h.
4718         * buildsym.c (prepare_for_building): Update.
4719
4720 2018-07-16  Tom Tromey  <tom@tromey.com>
4721
4722         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
4723         * dwarf2read.c (dwarf2_start_symtab): Don't set
4724         processing_gcc_compilation.
4725         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
4726
4727 2018-07-16  Tom Tromey  <tom@tromey.com>
4728
4729         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
4730         (next_symbol_text_func): Move from buildsym.h.
4731         * stabsread.c (hashname): Move from buildsym.c.
4732         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
4733         (next_symbol_text_func, hashname): Move to stabsread.h.
4734         * buildsym.c: Don't include bcache.h
4735         (hashname): Move to stasbread.c.
4736
4737 2018-07-16  Tom Tromey  <tom@tromey.com>
4738
4739         * buildsym.h (context_stack_size): Don't declare.
4740         * buildsym.c (context_stack_size): New global.
4741
4742 2018-07-16  Tom Tromey  <tom@tromey.com>
4743
4744         * dbxread.c (processing_acc_compilation): New global.
4745         * buildsym.h (processing_acc_compilation): Don't declare.
4746
4747 2018-07-16  Tom Tromey  <tom@tromey.com>
4748
4749         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
4750         * dbxread.c (read_ofile_symtab): Update.
4751         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
4752         * buildsym.h (last_source_start_addr): Remove.
4753         (set_last_source_start_addr, get_last_source_start_addr):
4754         Declare.
4755         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
4756         parameter.
4757         (struct buildsym_compunit) <m_last_source_start_addr>: New
4758         member.
4759         (prepare_for_building): Remove start_addr parameter.
4760         (start_symtab, restart_symtab, end_symtab_get_static_block)
4761         (end_symtab_with_blockvector): Update.
4762         (set_last_source_start_addr, get_last_source_start_addr): New
4763         functions.
4764
4765 2018-07-16  Tom Tromey  <tom@tromey.com>
4766
4767         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
4768         member.
4769         (have_line_numbers): Remove.
4770         (record_line, prepare_for_building, end_symtab_get_static_block)
4771         (augment_type_symtab): Update.
4772
4773 2018-07-16  Tom Tromey  <tom@tromey.com>
4774
4775         * buildsym.c (~buildsym_compunit): Free the macro table.
4776         (struct buildsym_compunit) <get_macro_table, release_macros>: New
4777         methods.
4778         <m_pending_macros>: New member.
4779         (pending_macros): Remove.
4780         (~scoped_free_pendings, get_macro_table, prepare_for_building)
4781         (reset_symtab_globals, end_symtab_get_static_block)
4782         (end_symtab_with_blockvector, augment_type_symtab)
4783         (buildsym_init): Update.
4784
4785 2018-07-16  Tom Tromey  <tom@tromey.com>
4786
4787         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
4788         parameter.
4789         (buildsym_compunit::set_last_source_file): New method.
4790         <m_last_source_file>: New member.
4791         (prepare_for_building): Remove "name" parameter.
4792         (start_symtab, restart_symtab, reset_symtab_globals): Update.
4793         (last_source_file): Remove.
4794         (set_last_source_file, get_last_source_file): Update.
4795
4796 2018-07-16  Tom Tromey  <tom@tromey.com>
4797
4798         * buildsym.c (prepare_for_building): Add assert.
4799
4800 2018-07-16  Tom Tromey  <tom@tromey.com>
4801
4802         * buildsym.c (~buildsym_compunit): Update.
4803         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
4804         (start_subfile, patch_subfile_names)
4805         (end_symtab_with_blockvector): Update.
4806
4807 2018-07-16  Tom Tromey  <tom@tromey.com>
4808
4809         * buildsym.c (struct buildsym_compunit): Add constructor,
4810         destructor, initializers.
4811         (start_buildsym_compunit): Remove.
4812         (free_buildsym_compunit): Use "delete".
4813         (start_symtab, restart_symtab): Use "new".
4814
4815 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
4816
4817         * symfile.c (set_objfile_default_section_offset): Remove struct
4818         keyword.
4819
4820 2018-07-14  Stafford Horne  <shorne@gmail.com>
4821
4822         * (Responsible Maintainers): Add myself as or1k maintainer.
4823
4824 2018-07-13  Tom Tromey  <tom@tromey.com>
4825
4826         * symfile.c (set_objfile_default_section_offset): Use extra braces
4827         around initializer.
4828
4829 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
4830
4831         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
4832         non-branching basr.
4833
4834 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4835
4836         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
4837         unittests/cli-utils-selftests.c
4838         * unittests/cli-utils-selftests.c: New file.
4839
4840 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4841
4842         * NEWS: Mention new commands. Mention change to 'thread apply'.
4843
4844 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4845
4846         * thread.c (thr_try_catch_cmd): New function.
4847         (thread_apply_all_command): Handle qcs flags.
4848         (thread_apply_command): Handle qcs flags.
4849         (taas_command): New function.
4850         (tfaas_command): New function.
4851         (_initialize_thread): Update to setup the new commands 'taas
4852         and 'tfaas'. Change doc string for 'thread apply'.
4853
4854 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4855
4856         * stack.c: (trailing_outermost_frame): New function, mostly
4857         extracted from backtrace_command_1.
4858         (leading_innermost_frame): New function.
4859         (backtrace_command_1): Update to call trailing_outermost_frame.
4860         (frame_apply_command_count): New function.
4861         (frame_apply_level_command): New function.
4862         (frame_apply_all_command): New function.
4863         (frame_apply_command): New function.
4864         (faas_command): New function.
4865         (frame_cmd_list): New variable.
4866         (_initialize_stack): Update to setup the new commands 'frame apply'
4867         and 'faas'.
4868
4869 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4870
4871         * cli-utils.c (number_or_range_parser::get_number): Only handle
4872         numbers or convenience var as numbers.
4873         (parse_flags): New function.
4874         (parse_flags_qcs): New function.
4875         (number_or_range_parser::finished): Ensure parsing end is detected
4876         before end of string.
4877         * cli-utils.h (parse_flags): New function.
4878         (parse_flags_qcs): New function.
4879         (number_or_range_parser): Remove m_finished bool.
4880         (number_or_range_parser::skip_range): Set m_in_range to false.
4881
4882 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
4883
4884         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
4885         on Windows.
4886
4887 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
4888             Jan Kratochvil  <jan.kratochvil@redhat.com>
4889             Paul Fertser  <fercerpav@gmail.com>
4890             Tsutomu Seki  <sekiriki@gmail.com>
4891             Pedro Alves  <palves@redhat.com>
4892
4893         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
4894         'unittests/parse-connection-spec-selftests.c'.
4895         (COMMON_SFILES): Add 'common/netstuff.c'.
4896         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
4897         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
4898         * common/netstuff.c: New file.
4899         * common/netstuff.h: New file.
4900         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
4901         (wait_for_connect): Update comment.  New parameter
4902         'gdb::optional<int> sock' instead of 'struct serial *scb'.
4903         Use 'sock' directly instead of 'scb->fd'.
4904         (try_connect): New function, with code from 'net_open'.
4905         (net_open): Rewrite main loop to deal with multiple
4906         sockets/addresses.  Handle IPv6-style hostnames; implement
4907         support for IPv6 connections.
4908         * unittests/parse-connection-spec-selftests.c: New file.
4909
4910 2018-07-11  Pedro Alves  <palves@redhat.com>
4911
4912         PR gdb/23377
4913         * remote.c (remote_target::remote_detach_pid): Call
4914         set_current_process.
4915
4916 2018-07-11  Pedro Alves  <palves@redhat.com>
4917
4918         * h8300-tdep.c (h8300_gdbarch_init): Remove
4919         set_gdbarch_ecoff_reg_to_regnum calls.
4920
4921 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
4922
4923         PR c++/23373
4924         * c-typeprint.c (c_type_print_base_struct_union): Don't print
4925         offsets/sizes for static members of a class/struct.
4926
4927 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
4928
4929         * target-descriptions.c (tdesc_register_bitsize): Rename.
4930         * target-descriptions.h (tdesc_register_bitsize): Likewise.
4931         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
4932         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
4933
4934 2018-07-10  Tom Tromey  <tom@tromey.com>
4935
4936         * breakpoint.c (moribund_locations): Now static and a
4937         std::vector.
4938         (breakpoint_init_inferior, moribund_breakpoint_here_p)
4939         (build_bpstat_chain, update_global_location_list)
4940         (breakpoint_retire_moribund): Update.
4941         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
4942         VEC.
4943
4944 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
4945
4946         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
4947         (riscv_register_reggroup_p): Use new function, remove unneeded
4948         parenthesis.
4949         (riscv_push_dummy_call): Extend assert to compare against xlen or
4950         flen based on register type.
4951
4952 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
4953
4954         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
4955
4956 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4957
4958         * remote.c (show_hardware_watchpoint_limit): New function.
4959         (show_hardware_watchpoint_length_limit): New function.
4960         (show_hardware_breakpoint_limit): New function.
4961         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
4962         where appropriate, update help text.
4963
4964 2018-07-09  Tom Tromey  <tom@tromey.com>
4965
4966         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
4967         (CLIBS): Don't mention NAT_CLIBS.
4968
4969 2018-07-09  Tom Tromey  <tom@tromey.com>
4970
4971         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
4972         (LIBGDB_OBS, clean mostlyclean): Update.
4973         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
4974
4975 2018-07-09  Tom Tromey  <tom@tromey.com>
4976
4977         * Makefile.in (%.c: %.y): Use ECHO_YACC.
4978         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
4979         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
4980
4981 2018-07-09  Tom Tromey  <tom@tromey.com>
4982
4983         * Makefile.in (ALLDEPFILES): Remove exec.c.
4984         (COMMON_OBS): Remove exec.o.
4985         (COMMON_SFILES): Add exec.c.
4986
4987 2018-07-09  Tom Tromey  <tom@tromey.com>
4988
4989         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
4990
4991 2018-07-09  Tom Tromey  <tom@tromey.com>
4992
4993         * Makefile.in (clean mostlyclean): Remove stamp-version.
4994         (version.c): Depend on stamp-version.
4995         (stamp-version): New rule, from version.c rule.
4996
4997 2018-07-09  Tom Tromey  <tom@tromey.com>
4998
4999         * Makefile.in (init.c): Depend on stamp-init.
5000         (stamp-init): New rule, from init.c rule.
5001         (clean mostlyclean): Remove stamp-init.
5002
5003 2018-07-09  Tom Tromey  <tom@tromey.com>
5004
5005         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
5006         SUBDIR_GCC_COMPILE_SRCS.
5007
5008 2018-07-09  Tom Tromey  <tom@tromey.com>
5009
5010         * Makefile.in (init.c): Remove some unused sed rules.
5011
5012 2018-07-09  Tom Tromey  <tom@tromey.com>
5013
5014         * Makefile.in (TSOBS): Remove.
5015         (INIT_FILES): Update.
5016         (LIBGDB_OBS): Update.
5017         (COMMON_SFILES): Add inflow.c.
5018         (SFILES): Remove inflow.c.
5019
5020 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
5021
5022         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
5023
5024 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
5025
5026         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
5027         get_saveloc_name, is_signal_frame_name, step_name,
5028         init_remote_name, create_addr_space_name,
5029         destroy_addr_space_name, search_unwind_table_name,
5030         find_dyn_list_name): Constify.
5031
5032 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
5033
5034         * darwin-nat.c (darwin_pthread_kill): New function.
5035         (darwin_resume_thread): Use darwin_pthread_kill.
5036
5037 2018-07-05  Tom de Vries  <tdevries@suse.de>
5038
5039         * macroexp.c (macro_buffer) <operator=>: New member function.
5040
5041 2018-07-04  Tom Tromey  <tom@tromey.com>
5042
5043         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
5044
5045 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
5046
5047         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
5048         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
5049         * maint.c: Likewise.
5050         * top.c: Likewise.
5051
5052 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5053
5054         * NEWS: Create a new section for the next release branch.
5055         Rename the section of the current branch, now that it has
5056         been cut.
5057
5058 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5059
5060         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
5061         * version.in: Bump version to 8.2.50.DATE-git.
5062
5063 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
5064             Pedro Alves  <palves@redhat.com>
5065
5066         * linux-nat.c (linux_init_ptrace): Rename to ...
5067         (linux_init_ptrace_procfs): ... this.  Call
5068         linux_proc_init_warnings.
5069         (linux_nat_target::post_attach)
5070         (linux_nat_target::post_startup_inferior): Adjust.
5071         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
5072         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
5073
5074 2018-07-04  Tom de Vries  <tdevries@suse.de>
5075
5076         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
5077         check ...
5078         (read_comp_unit_head): ... here.
5079
5080 2018-07-03  Tom Tromey  <tom@tromey.com>
5081
5082         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
5083         (stop_tracing, tstatus_command)
5084         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
5085         (print_one_static_tracepoint_marker): Update.
5086         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
5087         std::vector.
5088         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
5089         VEC.
5090         (all_tracepoints, static_tracepoints_here): Return std::vector.
5091
5092 2018-07-03  Tom Tromey  <tom@tromey.com>
5093
5094         * common/ptid.c (ptid_equal): Remove.
5095         * common/ptid.h (ptid_equal): Don't declare.
5096         * ada-tasks.c: Update.
5097         * breakpoint.c: Update.
5098         * common/agent.c: Update.
5099         * corelow.c: Update.
5100         * darwin-nat-info.c: Update.
5101         * darwin-nat.c: Update.
5102         * dcache.c: Update.
5103         * dtrace-probe.c: Update.
5104         * dummy-frame.c: Update.
5105         * fbsd-nat.c: Update.
5106         * frame.c: Update.
5107         * gdbthread.h: Update.
5108         * gnu-nat.c: Update.
5109         * go32-nat.c: Update.
5110         * inf-loop.c: Update.
5111         * inf-ptrace.c: Update.
5112         * infcall.c: Update.
5113         * infcmd.c: Update.
5114         * inflow.c: Update.
5115         * infrun.c: Update.
5116         * linux-fork.c: Update.
5117         * linux-nat.c: Update.
5118         * linux-thread-db.c: Update.
5119         * mi/mi-cmd-var.c: Update.
5120         * mi/mi-interp.c: Update.
5121         * mi/mi-main.c: Update.
5122         * nto-procfs.c: Update.
5123         * ppc-linux-tdep.c: Update.
5124         * procfs.c: Update.
5125         * python/py-inferior.c: Update.
5126         * python/py-record-btrace.c: Update.
5127         * python/py-record.c: Update.
5128         * ravenscar-thread.c: Update.
5129         * regcache.c: Update.
5130         * remote-sim.c: Update.
5131         * remote.c: Update.
5132         * sol-thread.c: Update.
5133         * solib.c: Update.
5134         * target.c: Update.
5135         * tui/tui-stack.c: Update.
5136         * varobj.c: Update.
5137         * windows-nat.c: Update.
5138         * windows-tdep.c: Update.
5139
5140 2018-07-03  Tom Tromey  <tom@tromey.com>
5141
5142         * common/ptid.c (ptid_match): Remove.
5143         * common/ptid.h (ptid_match): Don't declare.
5144         * fbsd-nat.c: Update.
5145         * infcmd.c: Update.
5146         * infrun.c: Update.
5147         * linux-nat.c: Update.
5148         * record-btrace.c: Update.
5149         * regcache.c: Update.
5150         * remote.c: Update.
5151
5152 2018-07-03  Tom Tromey  <tom@tromey.com>
5153
5154         * common/ptid.c (ptid_tid_p): Remove.
5155         * common/ptid.h (ptid_tid_p): Don't declare.
5156         * sol-thread.c: Update.
5157
5158 2018-07-03  Tom Tromey  <tom@tromey.com>
5159
5160         * common/ptid.c (ptid_lwp_p): Remove.
5161         * common/ptid.h (ptid_lwp_p): Don't declare.
5162         * fbsd-nat.c: Update.
5163         * linux-nat.c: Update.
5164         * nat/linux-procfs.c: Update.
5165         * nat/x86-linux-dregs.c: Update.
5166         * sol-thread.c: Update.
5167
5168 2018-07-03  Tom Tromey  <tom@tromey.com>
5169
5170         * common/ptid.c (ptid_is_pid): Remove.
5171         * common/ptid.h (ptid_is_pid): Don't declare.
5172         * infrun.c: Update.
5173         * linux-nat.c: Update.
5174         * mi/mi-interp.c: Update.
5175         * remote.c: Update.
5176         * thread.c: Update.
5177
5178 2018-07-03  Tom Tromey  <tom@tromey.com>
5179
5180         * common/ptid.c (ptid_get_tid): Remove.
5181         * common/ptid.h (ptid_get_tid): Don't declare.
5182         * ada-tasks.c: Update.
5183         * aix-thread.c: Update.
5184         * bsd-uthread.c: Update.
5185         * darwin-nat.c: Update.
5186         * fbsd-nat.c: Update.
5187         * i386-darwin-nat.c: Update.
5188         * infrun.c: Update.
5189         * linux-tdep.c: Update.
5190         * nto-procfs.c: Update.
5191         * ppc-ravenscar-thread.c: Update.
5192         * python/py-infthread.c: Update.
5193         * ravenscar-thread.c: Update.
5194         * sol-thread.c: Update.
5195         * sparc-ravenscar-thread.c: Update.
5196         * windows-nat.c: Update.
5197
5198 2018-07-03  Tom Tromey  <tom@tromey.com>
5199
5200         * common/ptid.c (ptid_get_lwp): Remove.
5201         * common/ptid.h (ptid_get_lwp): Don't declare.
5202         * aarch64-linux-nat.c: Update.
5203         * ada-tasks.c: Update.
5204         * aix-thread.c: Update.
5205         * amd64-linux-nat.c: Update.
5206         * arm-linux-nat.c: Update.
5207         * corelow.c: Update.
5208         * fbsd-nat.c: Update.
5209         * fbsd-tdep.c: Update.
5210         * gnu-nat.c: Update.
5211         * i386-cygwin-tdep.c: Update.
5212         * i386-gnu-nat.c: Update.
5213         * i386-linux-nat.c: Update.
5214         * ia64-linux-nat.c: Update.
5215         * inf-ptrace.c: Update.
5216         * infrun.c: Update.
5217         * linux-fork.c: Update.
5218         * linux-nat.c: Update.
5219         * linux-tdep.c: Update.
5220         * linux-thread-db.c: Update.
5221         * mips-linux-nat.c: Update.
5222         * nat/aarch64-linux-hw-point.c: Update.
5223         * nat/aarch64-linux.c: Update.
5224         * nat/linux-btrace.c: Update.
5225         * nat/linux-osdata.c: Update.
5226         * nat/linux-procfs.c: Update.
5227         * nat/x86-linux-dregs.c: Update.
5228         * obsd-nat.c: Update.
5229         * ppc-fbsd-nat.c: Update.
5230         * ppc-linux-nat.c: Update.
5231         * procfs.c: Update.
5232         * python/py-infthread.c: Update.
5233         * ravenscar-thread.c: Update.
5234         * remote.c: Update.
5235         * s390-linux-nat.c: Update.
5236         * sol-thread.c: Update.
5237         * sol2-tdep.c: Update.
5238         * spu-linux-nat.c: Update.
5239         * x86-linux-nat.c: Update.
5240         * xtensa-linux-nat.c: Update.
5241
5242 2018-07-03  Tom Tromey  <tom@tromey.com>
5243
5244         * common/ptid.c (ptid_get_pid): Remove.
5245         * common/ptid.h (ptid_get_pid): Don't declare.
5246         * aarch64-linux-nat.c: Update.
5247         * ada-lang.c: Update.
5248         * aix-thread.c: Update.
5249         * alpha-bsd-nat.c: Update.
5250         * amd64-fbsd-nat.c: Update.
5251         * amd64-linux-nat.c: Update.
5252         * arm-linux-nat.c: Update.
5253         * arm-nbsd-nat.c: Update.
5254         * auxv.c: Update.
5255         * break-catch-syscall.c: Update.
5256         * breakpoint.c: Update.
5257         * bsd-uthread.c: Update.
5258         * corelow.c: Update.
5259         * ctf.c: Update.
5260         * darwin-nat.c: Update.
5261         * fbsd-nat.c: Update.
5262         * fbsd-tdep.c: Update.
5263         * gcore.c: Update.
5264         * gnu-nat.c: Update.
5265         * hppa-nbsd-nat.c: Update.
5266         * hppa-obsd-nat.c: Update.
5267         * i386-fbsd-nat.c: Update.
5268         * ia64-linux-nat.c: Update.
5269         * inf-ptrace.c: Update.
5270         * infcmd.c: Update.
5271         * inferior.c: Update.
5272         * inferior.h: Update.
5273         * inflow.c: Update.
5274         * infrun.c: Update.
5275         * linux-fork.c: Update.
5276         * linux-nat.c: Update.
5277         * linux-tdep.c: Update.
5278         * linux-thread-db.c: Update.
5279         * m68k-bsd-nat.c: Update.
5280         * mi/mi-interp.c: Update.
5281         * mi/mi-main.c: Update.
5282         * mips-linux-nat.c: Update.
5283         * mips-nbsd-nat.c: Update.
5284         * mips64-obsd-nat.c: Update.
5285         * nat/aarch64-linux-hw-point.c: Update.
5286         * nat/aarch64-linux.c: Update.
5287         * nat/linux-btrace.c: Update.
5288         * nat/linux-osdata.c: Update.
5289         * nat/linux-procfs.c: Update.
5290         * nat/x86-linux-dregs.c: Update.
5291         * nto-procfs.c: Update.
5292         * obsd-nat.c: Update.
5293         * ppc-linux-nat.c: Update.
5294         * ppc-nbsd-nat.c: Update.
5295         * ppc-obsd-nat.c: Update.
5296         * proc-service.c: Update.
5297         * procfs.c: Update.
5298         * python/py-inferior.c: Update.
5299         * python/py-infthread.c: Update.
5300         * ravenscar-thread.c: Update.
5301         * record.c: Update.
5302         * remote-sim.c: Update.
5303         * remote.c: Update.
5304         * rs6000-nat.c: Update.
5305         * s390-linux-nat.c: Update.
5306         * sh-nbsd-nat.c: Update.
5307         * sol-thread.c: Update.
5308         * sparc-nat.c: Update.
5309         * sparc64-tdep.c: Update.
5310         * spu-linux-nat.c: Update.
5311         * spu-tdep.c: Update.
5312         * target-debug.h: Update.
5313         * target.c: Update.
5314         * thread.c: Update.
5315         * tid-parse.c: Update.
5316         * tracefile-tfile.c: Update.
5317         * vax-bsd-nat.c: Update.
5318         * windows-nat.c: Update.
5319         * x86-linux-nat.c: Update.
5320         * x86-nat.c: Update.
5321
5322 2018-07-03  Tom Tromey  <tom@tromey.com>
5323
5324         * common/ptid.c (pid_to_ptid): Remove.
5325         * common/ptid.h (pid_to_ptid): Don't declare.
5326         * aix-thread.c: Update.
5327         * arm-linux-nat.c: Update.
5328         * common/ptid.c: Update.
5329         * common/ptid.h: Update.
5330         * corelow.c: Update.
5331         * ctf.c: Update.
5332         * darwin-nat.c: Update.
5333         * fbsd-nat.c: Update.
5334         * fork-child.c: Update.
5335         * gnu-nat.c: Update.
5336         * go32-nat.c: Update.
5337         * inf-ptrace.c: Update.
5338         * infcmd.c: Update.
5339         * inferior.c: Update.
5340         * infrun.c: Update.
5341         * linux-fork.c: Update.
5342         * linux-nat.c: Update.
5343         * nat/aarch64-linux-hw-point.c: Update.
5344         * nat/fork-inferior.c: Update.
5345         * nat/x86-linux-dregs.c: Update.
5346         * nto-procfs.c: Update.
5347         * obsd-nat.c: Update.
5348         * procfs.c: Update.
5349         * progspace.c: Update.
5350         * remote.c: Update.
5351         * rs6000-nat.c: Update.
5352         * s390-linux-nat.c: Update.
5353         * sol-thread.c: Update.
5354         * spu-linux-nat.c: Update.
5355         * target.c: Update.
5356         * top.c: Update.
5357         * tracefile-tfile.c: Update.
5358         * windows-nat.c: Update.
5359
5360 2018-07-03  Tom Tromey  <tom@tromey.com>
5361
5362         * common/ptid.h (ptid_build): Don't declare.
5363         * common/ptid.c (ptid_build): Remove.
5364         * aix-thread.c: Update.
5365         * bsd-kvm.c: Update.
5366         * bsd-uthread.c: Update.
5367         * common/agent.c: Update.
5368         * common/ptid.c: Update.
5369         * common/ptid.h: Update.
5370         * corelow.c: Update.
5371         * darwin-nat.c: Update.
5372         * fbsd-nat.c: Update.
5373         * gnu-nat.c: Update.
5374         * linux-fork.c: Update.
5375         * linux-nat.c: Update.
5376         * linux-thread-db.c: Update.
5377         * nat/linux-osdata.c: Update.
5378         * nat/linux-procfs.c: Update.
5379         * nto-procfs.c: Update.
5380         * obsd-nat.c: Update.
5381         * proc-service.c: Update.
5382         * procfs.c: Update.
5383         * ravenscar-thread.c: Update.
5384         * remote-sim.c: Update.
5385         * remote.c: Update.
5386         * sol-thread.c: Update.
5387         * target.c: Update.
5388         * windows-nat.c: Update.
5389
5390 2018-07-03  Tom Tromey  <tom@tromey.com>
5391
5392         * infrun.c (follow_exec): Use exit_inferior_silent.
5393         * inferior.c (exit_inferior_num_silent): Remove.
5394         * inferior.h (exit_inferior_num_silent): Don't declare.
5395
5396 2018-07-03  Tom Tromey  <tom@tromey.com>
5397
5398         PR cli/23340:
5399         * darwin-nat.c (darwin_attach_pid): Reset inferior and
5400         inferior_ptid on error.
5401
5402 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
5403             Simon Marchi  <simon.marchi@polymtl.ca>
5404
5405         PR tdep/8282
5406         * disasm.h (gdb_disassembler): Add
5407         `m_disassembler_options_holder'. member
5408         * disasm.c (get_all_disassembler_options): New function.
5409         (gdb_disassembler::gdb_disassembler): Use it.
5410         (gdb_buffered_insn_length_init_dis): Likewise.
5411         (gdb_buffered_insn_length): Adjust accordingly.
5412         (set_disassembler_options): Handle options with arguments.
5413         (show_disassembler_options_sfunc): Likewise.  Add a leading new
5414         line if showing options with descriptions.
5415         (disassembler_options_completer): Adapt to using the
5416         `disasm_options_and_args_t' structure.
5417         * mips-tdep.c (mips_disassembler_options): New variable.
5418         (mips_disassembler_options_o32): Likewise.
5419         (mips_disassembler_options_n32): Likewise.
5420         (mips_disassembler_options_n64): Likewise.
5421         (gdb_print_insn_mips): Don't set `disassembler_options'.
5422         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
5423         functions.
5424         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
5425         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
5426         `gdbarch_disassembler_options_implicit' and
5427         `gdbarch_valid_disassembler_options'.
5428         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
5429         `disasm_options_and_args_t' structure.
5430         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
5431         method.
5432         (valid_disassembler_options): Switch from `disasm_options_t' to
5433         the `disasm_options_and_args_t' structure.
5434         * NEWS: Document `set disassembler-options' support for the MIPS
5435         target.
5436         * gdbarch.h: Regenerate.
5437         * gdbarch.c: Regenerate.
5438
5439 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
5440
5441         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
5442
5443 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
5444
5445         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
5446         parameter in call to amd64_target_description.
5447         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
5448         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
5449         (amd64fbsd_init_abi): Likewise.
5450         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
5451         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
5452         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
5453         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
5454
5455 2018-06-29  Pedro Alves  <palves@redhat.com>
5456
5457         * gdb/amd64-tdep.h (amd64_create_target_description): Add
5458         "segments" parameter.
5459         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
5460         (_initialize_amd64_tdep): Update call to
5461         amd64_create_target_description.
5462         (amd64_target_description): Add "segments" parameter.  Adjust
5463         the implementation to use it.
5464         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
5465         call to amd64_create_target_description.
5466         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
5467         * gdb/arch/amd64.h (amd64_create_target_description): Add
5468         "segments" register.
5469         * gdb/arch/amd64.c (amd64_create_target_description): Add
5470         "segments" parameter.  Call create_feature_i386_64bit_segments
5471         only if SEGMENTS is true.
5472         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
5473         call to amd64_create_target_description.
5474
5475 2018-06-29  Pedro Alves  <palves@redhat.com>
5476
5477         * thread.c (thread_target_id_str): New, factored out from ...
5478         (print_thread_info_1): ... here.  Use it to compute the max
5479         "Target Id" column width.
5480
5481 2018-06-29  Pedro Alves  <palves@redhat.com>
5482
5483         * remote.c (remote_target::extra_thread_info): Delete
5484         'display_buf' and 'n' locals.  from the cache, regardless of
5485         packet mechanims is in use.  Use cache for qThreadExtra and qP
5486         methods too.
5487
5488 2018-06-29  Pedro Alves  <palves@redhat.com>
5489
5490         * blockframe.c (find_pc_sect_containing_function): New function.
5491         * breakpoint.c (print_breakpoint_location): Don't call
5492         find_pc_sect_function.
5493         * linespec.c (create_sals_line_offset): Record the location's
5494         symbol in the sal.
5495         * linespec.c (convert_address_location_to_sals): Fill in sal's
5496         symbol with find_pc_sect_containing_function.
5497         * symtab.c (find_function_start_sal): Rename to ...
5498         (find_function_start_sal_1): ... this.
5499         (find_function_start_sal): Reimplement as wrapper around
5500         find_function_start_sal_1, and use
5501         find_pc_sect_containing_function to fill in the sal's symbol.
5502         (find_function_start_sal(symbol*, bool)): Adjust.
5503         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
5504         comments.
5505         (find_pc_sect_containing_function): Declare.
5506
5507 2018-06-29  Pedro Alves  <palves@redhat.com>
5508
5509         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
5510         true if the the location has no symbol.
5511
5512 2018-06-28  Tom Tromey  <tom@tromey.com>
5513
5514         * NEWS: Mention --enable-codesign.
5515         * silent-rules.mk (ECHO_SIGN): New variable.
5516         * configure.ac: Add --enable-codesign.
5517         * configure: Rebuild.
5518         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
5519         (gdb$(EXEEXT)): Optionally invoke codesign.
5520
5521 2018-06-28  Pedro Alves  <palves@redhat.com>
5522
5523         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
5524         comments.
5525         (switch_to_thread_no_regs): Adjust comment.
5526         * infcmd.c (stop_pc): Delete.
5527         (post_create_inferior, info_program_command): Replace references
5528         to stop_pc with references to thread_info->suspend.stop_pc.
5529         * inferior.h (stop_pc): Delete declaration.
5530         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
5531         (handle_inferior_event_1, handle_signal_stop)
5532         (process_event_stop_test, keep_going_stepped_thread)
5533         (handle_step_into_function, handle_step_into_function_backward)
5534         (print_stop_location): Replace references to stop_pc with
5535         references to thread_info->suspend.stop_pc.
5536         (struct infcall_suspend_state) <stop_pc>: Delete field.
5537         (save_infcall_suspend_state, restore_infcall_suspend_state):
5538         Remove references to inf_stat->stop_pc.
5539         * linux-fork.c (fork_load_infrun_state): Likewise.
5540         * record-btrace.c (record_btrace_set_replay): Likewise.
5541         * record-full.c (record_full_goto_entry): Likewise.
5542         * remote.c (print_one_stopped_thread): Likewise.
5543         * target.c (target_resume): Extend comment.
5544         * thread.c (set_executing_thread): New.
5545         (set_executing): Use it.
5546         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
5547         Remove references to stop_pc.
5548
5549 2018-06-28  Pedro Alves  <palves@redhat.com>
5550
5551         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
5552         Moving fetching stop_pc until after ecs->event_thread is refreshed.
5553
5554 2018-06-28  Tom Tromey  <tom@tromey.com>
5555
5556         * coffread.c (coff_symfile_finish): Update.
5557         * xcoffread.c (xcoff_symfile_finish): Update.
5558         * elfread.c (elf_symfile_finish): Update.
5559         * symfile.h (dwarf2_free_objfile): Don't declare.
5560         * dwarf2read.c (_initialize_dwarf2_read): Use
5561         register_objfile_data_with_cleanup.
5562         (dwarf2_free_objfile): Now static.  Change signature.
5563
5564 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5565
5566         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
5567         option "-o" to add-symbol-file-load to add an offset to each
5568         section's load address.
5569         * symfile.c (set_objfile_default_section_offset): New function.
5570
5571 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5572
5573         * symfile.c (add_symbol_file_command): Make sure that sections
5574         with the same name are sorted in the same order.
5575
5576 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5577
5578         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
5579         require the second argument.  If omitted, load sections at the
5580         addresses specified in the file.
5581
5582 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5583
5584         * symfile.c (symbol_file_command, symbol_file_add_main_1)
5585         (_initialize_symfile): Add option "-o" to symbol-file to add an
5586         offset to each section of the symbol file.
5587
5588 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5589
5590         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
5591
5592 2018-06-27  Tom Tromey  <tom@tromey.com>
5593
5594         * stack.c (_initialize_stack): Update "func" help text.
5595
5596 2018-06-27  Tom Tromey  <tom@tromey.com>
5597
5598         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
5599         std::vector.
5600         (unwind_infopy_str, pyuw_create_unwind_info)
5601         (unwind_infopy_add_saved_register, pyuw_sniffer)
5602         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
5603         Update.
5604         (struct saved_reg): Add constructor.
5605         <value>: Now a gdbpy_ref<>.
5606
5607 2018-06-27  Tom Tromey  <tom@tromey.com>
5608
5609         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
5610
5611 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5612
5613         * gdb-gdb.py.in: Format using autopep8.
5614
5615 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5616
5617         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
5618         (type_lookup_function): Recognize CORE_ADDR values.
5619
5620 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5621
5622         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
5623         print tag_name.
5624
5625 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5626
5627         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
5628         <__lt__>: Add.
5629
5630 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5631
5632         * gdb-gdb.py: Move to...
5633         * gdb-gdb.py.in: ... here.
5634         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
5635         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
5636         dependencies.
5637         (distclean): Remove gdb-gdb.py when cleaning.
5638         (gdb-gdb.py, gdb-gdb.gdb): New rules.
5639         * configure: Re-generate.
5640
5641 2018-06-27  Pedro Alves  <palves@redhat.com>
5642
5643         * proc-service.c (get_ps_regcache): New.
5644         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
5645         (ps_lsetfpregs): Use it.
5646
5647 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
5648
5649         PR gdb/21695
5650         * dwarf2read.c (lnp_state_machine::check_line_address): Update declaration.
5651         (dwarf_decode_lines_1): Adjust.
5652
5653 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5654
5655         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
5656         override.
5657         <info_proc>: Likewise.
5658
5659 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
5660
5661         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
5662         to windows_fetch_one_register, and only handle the case of
5663         fetching one register.  Move the code that reloads the context
5664         and iterates over all registers if R is negative to...
5665         (windows_nat_target::fetch_registers): ... here.
5666         (do_windows_store_inferior_registers): Rename to
5667         windows_store_one_register, and only handle the case of storing
5668         one register.  Move the code that handles the case where r is
5669         negative to...
5670         (windows_nat_target::store_registers) ... here.
5671
5672 2018-06-26  Tom Tromey  <tom@tromey.com>
5673
5674         PR rust/22574:
5675         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
5676         * rust-lang.c (rust_print_struct_def): Add podata parameter.
5677         Update.
5678         (rust_internal_print_type): Add podata parameter.
5679         (rust_print_type): Update.
5680
5681 2018-06-26  Tom Tromey  <tom@tromey.com>
5682
5683         * typeprint.h (struct print_offset_data) <update, finish,
5684         maybe_print_hole>: New methods.
5685         <indentation>: New constant.
5686         * typeprint.c (print_offset_data::indentation): Define.
5687         (print_offset_data::maybe_print_hole, print_offset_data::update)
5688         (print_offset_data::finish): Move from c-typeprint.c and rename.
5689         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
5690         (print_spaces_filtered_with_print_options): Update.
5691         (c_print_type_union_field_offset, maybe_print_hole)
5692         (c_print_type_struct_field_offset): Move to typeprint.c and
5693         rename.
5694         (c_type_print_base_struct_union): Update.
5695
5696 2018-06-25  Pedro Alves  <palves@redhat.com>
5697
5698         * gdbthread.h (thread_info_ref, delete_thread)
5699         (delete_thread_silent, first_thread_of_inferior)
5700         (any_thread_of_inferior, switch_to_thread)
5701         (enable_thread_stack_temporaries)
5702         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
5703         (get_last_thread_stack_temporary)
5704         (value_in_thread_stack_temporaries, can_access_registers_thread):
5705         Spell out "struct thread_info" instead of just "thread_info".
5706         * inferior.h (notice_new_inferior): Likewise.
5707
5708 2018-06-25  Pedro Alves  <palves@redhat.com>
5709
5710         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
5711         pass thread_info pointer to delete_thread.
5712         (windows_nat_target::detach): Pass inferior pointer to
5713         detach_inferior.
5714         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
5715         delete_thread.
5716         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
5717         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
5718         and pass a thread_info pointer to delete_thread.
5719         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
5720         pass thread_info pointer to delete_thread.
5721         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
5722         delete_thread_silent call.
5723         * procfs.c (procfs_target::detach): Pass inferior pointer to
5724         detach_inferior.
5725         (procfs_target::wait): Pass thread_info pointer to delete_thread.
5726         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
5727         delete_thread_silent call.
5728         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
5729         pass thread_info pointer to delete_thread.
5730         (windows_nat_target::detach): Pass inferior pointer to
5731         delete_inferior.
5732
5733 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
5734
5735         * regcache.c (readable_regcache::read_part): Fix asserts.
5736         (reg_buffer::raw_collect_part): New function.
5737         (regcache::write_part): Fix asserts.
5738         (reg_buffer::raw_supply_part): New function.
5739         (regcache::transfer_regset_register): New helper function.
5740         (regcache::transfer_regset): Call new functions.
5741         (regcache_supply_regset): Use gdb_byte*.
5742         (regcache::supply_regset): Likewise.
5743         (regcache_collect_regset): Likewise.
5744         (regcache::collect_regset): Likewise.
5745         * regcache.h (reg_buffer::raw_collect_part): New declaration.
5746         (reg_buffer::raw_supply_part): Likewise.
5747         (regcache::transfer_regset_register): Likewise.
5748         (regcache::transfer_regset): Use gdb_byte*.
5749
5750 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
5751
5752         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
5753
5754 2018-06-21  Pedro Alves  <palves@redhat.com>
5755
5756         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
5757         instead of a ptid_t.  All callers adjusted.
5758         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
5759         adjusted.
5760         (print_ada_task_info, display_current_task_id, task_command_1):
5761         Adjust.
5762         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
5763         inferior_thread.
5764         (breakpoint_kind): Adjust.
5765         (remove_breakpoints_pid): Rename to ...
5766         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
5767         pointer.  All callers adjusted.
5768         (bpstat_clear_actions): Use inferior_thread.
5769         (get_bpstat_thread): New.
5770         (bpstat_do_actions): Use it.
5771         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
5772         to take a thread_info pointer.  All callers adjusted.
5773         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
5774         (breakpoint_re_set_thread): Use inferior_thread.
5775         * breakpoint.h (struct inferior): Forward declare.
5776         (bpstat_stop_status): Update.
5777         (remove_breakpoints_pid): Delete.
5778         (remove_breakpoints_inf): New.
5779         * bsd-uthread.c (bsd_uthread_target::wait)
5780         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
5781         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
5782         (maint_btrace_packet_history_cmd)
5783         (maint_btrace_clear_packet_history_cmd): Adjust.
5784         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
5785         inferior_thread.
5786         * cli/cli-interp.c: Include "inferior.h".
5787         * common/refcounted-object.h (struct
5788         refcounted_object_ref_policy): New.
5789         * compile/compile-object-load.c: Include gdbthread.h.
5790         (store_regs): Use inferior_thread.
5791         * corelow.c (core_target::close): Use current_inferior.
5792         (core_target_open): Adjust to use first_thread_of_inferior and use
5793         the current inferior.
5794         * ctf.c (ctf_target::close): Adjust to use current_inferior.
5795         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
5796         <thread>: ... this new field.  All references adjusted.
5797         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
5798         Take a thread_info pointer instead of a ptid_t.
5799         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
5800         (dummy_frame_discard, register_dummy_frame_dtor): Take a
5801         thread_info pointer instead of a ptid_t.
5802         * elfread.c: Include "inferior.h".
5803         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
5804         Use inferior_thread.
5805         * eval.c (evaluate_subexp): Likewise.
5806         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
5807         inferior_thread.
5808         * gdb_proc_service.h (struct thread_info): Forward declare.
5809         (struct ps_prochandle) <ptid>: Delete, replaced by ...
5810         <thread>: ... this new field.  All references adjusted.
5811         * gdbarch.h, gdbarch.c: Regenerate.
5812         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
5813         'thread' parameter.  All implementations and callers adjusted.
5814         * gdbthread.h (thread_info) <set_running>: New method.
5815         (delete_thread, delete_thread_silent): Take a thread_info pointer
5816         instead of a ptid.
5817         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
5818         (first_thread_of_process): Delete, replaced by ...
5819         (first_thread_of_inferior): ... this new function.  All callers
5820         adjusted.
5821         (any_live_thread_of_process): Delete, replaced by ...
5822         (any_live_thread_of_inferior): ... this new function.  All callers
5823         adjusted.
5824         (switch_to_thread, switch_to_no_thread): Declare.
5825         (is_executing): Delete.
5826         (enable_thread_stack_temporaries): Update comment.
5827         <enable_thread_stack_temporaries>: Take a thread_info pointer
5828         instead of a ptid_t.  Incref the thread.
5829         <~enable_thread_stack_temporaries>: Decref the thread.
5830         <m_ptid>: Delete
5831         <m_thr>: New.
5832         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
5833         (get_last_thread_stack_temporary)
5834         (value_in_thread_stack_temporaries, can_access_registers_thread):
5835         Take a thread_info pointer instead of a ptid_t.  All callers
5836         adjusted.
5837         * infcall.c (get_call_return_value): Use inferior_thread.
5838         (run_inferior_call): Work with thread pointers instead of ptid_t.
5839         (call_function_by_hand_dummy): Work with thread pointers instead
5840         of ptid_t.  Use thread_info_ref.
5841         * infcmd.c (proceed_thread_callback): Access thread's state
5842         directly.
5843         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
5844         access thread's state directly.
5845         (continue_command): Use inferior_thread.
5846         (info_program_command): Use find_thread_ptid and access thread
5847         state directly.
5848         (proceed_after_attach_callback): Use thread state directly.
5849         (notice_new_inferior): Take a thread_info pointer instead of a
5850         ptid_t.  All callers adjusted.
5851         (exit_inferior): Take an inferior pointer instead of a pid.  All
5852         callers adjusted.
5853         (exit_inferior_silent): New.
5854         (detach_inferior): Delete.
5855         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
5856         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
5857         (detach_inferior_command, kill_inferior_command): Use
5858         find_inferior_id instead of valid_gdb_inferior_id and
5859         gdb_inferior_id_to_pid.
5860         (inferior_command): Use inferior and thread pointers.
5861         * inferior.h (struct thread_info): Forward declare.
5862         (notice_new_inferior): Take a thread_info pointer instead of a
5863         ptid_t.  All callers adjusted.
5864         (detach_inferior): Delete declaration.
5865         (exit_inferior, exit_inferior_silent): Take an inferior pointer
5866         instead of a pid.  All callers adjusted.
5867         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
5868         (valid_gdb_inferior_id): Delete.
5869         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
5870         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
5871         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
5872         ...
5873         <inf>: ... this new field.
5874         <step_ptid>: Delete, replaced by ...
5875         <step_thread>: ... this new field.
5876         (get_displaced_stepping_state): Take an inferior pointer instead
5877         of a pid.  All callers adjusted.
5878         (displaced_step_in_progress_any_inferior): Adjust.
5879         (displaced_step_in_progress_thread): Take a thread pointer instead
5880         of a ptid_t.  All callers adjusted.
5881         (displaced_step_in_progress, add_displaced_stepping_state): Take
5882         an inferior pointer instead of a pid.  All callers adjusted.
5883         (get_displaced_step_closure_by_addr): Adjust.
5884         (remove_displaced_stepping_state): Take an inferior pointer
5885         instead of a pid.  All callers adjusted.
5886         (displaced_step_prepare_throw, displaced_step_prepare)
5887         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
5888         All callers adjusted.
5889         (start_step_over): Adjust.
5890         (infrun_thread_ptid_changed): Remove bit updating ptids in the
5891         displaced step queue.
5892         (do_target_resume): Adjust.
5893         (fetch_inferior_event): Use inferior_thread.
5894         (context_switch, get_inferior_stop_soon): Take an
5895         execution_control_state pointer instead of a ptid_t.  All callers
5896         adjusted.
5897         (switch_to_thread_cleanup): Delete.
5898         (stop_all_threads): Use scoped_restore_current_thread.
5899         * inline-frame.c: Include "gdbthread.h".
5900         (inline_state) <inline_state>: Take a thread pointer instead of a
5901         ptid_t.  All callers adjusted.
5902         <ptid>: Delete, replaced by ...
5903         <thread>: ... this new field.
5904         (find_inline_frame_state): Take a thread pointer instead of a
5905         ptid_t.  All callers adjusted.
5906         (skip_inline_frames, step_into_inline_frame)
5907         (inline_skipped_frames, inline_skipped_symbol): Take a thread
5908         pointer instead of a ptid_t.  All callers adjusted.
5909         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
5910         (inline_skipped_frames, inline_skipped_symbol): Likewise.
5911         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
5912         pointers directly.
5913         * linux-nat.c (get_detach_signal): Likewise.
5914         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
5915         (thread_db_notice_clone): Adjust.
5916         (thread_db_find_new_threads_silently)
5917         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
5918         a thread pointer instead of a ptid_t.  All callers adjusted.
5919         * mi/mi-cmd-var.c: Include "inferior.h".
5920         (mi_cmd_var_update_iter): Update to use thread pointers.
5921         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
5922         inferior directly.
5923         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
5924         out to ...
5925         (mi_output_running): ... this new function.
5926         (mi_on_resume_1): Adjust to use it.
5927         (mi_user_selected_context_changed): Adjust to use inferior_thread.
5928         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
5929         directly.
5930         (interrupt_thread_callback): : Adjust to use thread and inferior
5931         pointers.
5932         * proc-service.c: Include "gdbthread.h".
5933         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
5934         * progspace-and-thread.c: Include "inferior.h".
5935         * progspace.c: Include "inferior.h".
5936         * python/py-exitedevent.c (create_exited_event_object): Adjust to
5937         hold a reference to an inferior_object.
5938         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
5939         inferior_thread.
5940         * python/py-inferior.c (struct inferior_object): Give the type a
5941         tag name instead of a typedef.
5942         (python_on_normal_stop): No need to check if the current thread is
5943         listed.
5944         (inferior_to_inferior_object): Change return type to
5945         inferior_object.  All callers adjusted.
5946         (find_thread_object): Delete, bits factored out to ...
5947         (thread_to_thread_object): ... this new function.
5948         * python/py-infthread.c (create_thread_object): Use
5949         inferior_to_inferior_object.
5950         (thpy_is_stopped): Use thread pointer directly.
5951         (gdbpy_selected_thread): Use inferior_thread.
5952         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
5953         field, replaced with ...
5954         <thread>: ... this new field.  All users adjusted.
5955         (btpy_insn_or_gap_new): Drop const.
5956         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
5957         callers adjusted.
5958         * python/py-record.c: Include "gdbthread.h".
5959         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
5960         a ptid_t.  All callers adjusted.
5961         (gdbpy_current_recording): Use inferior_thread.
5962         * python/py-record.h (recpy_record_object) <ptid>: Delete
5963         field, replaced with ...
5964         <thread>: ... this new field.  All users adjusted.
5965         (recpy_element_object) <ptid>: Delete
5966         field, replaced with ...
5967         <thread>: ... this new field.  All users adjusted.
5968         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
5969         a ptid_t.  All callers adjusted.
5970         * python/py-threadevent.c: Include "gdbthread.h".
5971         (get_event_thread): Use thread_to_thread_object.
5972         * python/python-internal.h (struct inferior_object): Forward
5973         declare.
5974         (find_thread_object, find_inferior_object): Delete declarations.
5975         (thread_to_thread_object, inferior_to_inferior_object): New
5976         declarations.
5977         * record-btrace.c: Include "inferior.h".
5978         (require_btrace_thread): Use inferior_thread.
5979         (record_btrace_frame_sniffer)
5980         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
5981         (get_thread_current_frame): Use scoped_restore_current_thread and
5982         switch_to_thread.
5983         (get_thread_current_frame): Use thread pointer directly.
5984         (record_btrace_replay_at_breakpoint): Use thread's inferior
5985         pointer directly.
5986         * record-full.c: Include "inferior.h".
5987         * regcache.c: Include "gdbthread.h".
5988         (get_thread_arch_regcache): Use the inferior's address space
5989         directly.
5990         (get_thread_regcache, registers_changed_thread): New.
5991         * regcache.h (get_thread_regcache(thread_info *thread)): New
5992         overload.
5993         (registers_changed_thread): New.
5994         (remote_target) <remote_detach_1>: Swap order of parameters.
5995         (remote_add_thread): <remote_add_thread>: Return the new thread.
5996         (get_remote_thread_info(ptid_t)): New overload.
5997         (remote_target::remote_notice_new_inferior): Use thread pointers
5998         directly.
5999         (remote_target::process_initial_stop_replies): Use
6000         thread_info::set_running.
6001         (remote_target::remote_detach_1, remote_target::detach)
6002         (extended_remote_target::detach): Adjust.
6003         * stack.c (frame_show_address): Use inferior_thread.
6004         * target-debug.h (target_debug_print_thread_info_pp): New.
6005         * target-delegates.c: Regenerate.
6006         * target.c (default_thread_address_space): Delete.
6007         (memory_xfer_partial_1): Use current_inferior.
6008         (target_detach): Use current_inferior.
6009         (target_thread_address_space): Delete.
6010         (generic_mourn_inferior): Use current_inferior.
6011         * target.h (struct target_ops) <thread_address_space>: Delete.
6012         (target_thread_address_space): Delete.
6013         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
6014         pointers directly.
6015         (delete_thread_1, delete_thread, delete_thread_silent): Take a
6016         thread pointer instead of a ptid_t.  Adjust all callers.
6017         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
6018         (first_thread_of_process): Delete, replaced by ...
6019         (first_thread_of_inferior): ... this new function.  All callers
6020         adjusted.
6021         (any_thread_of_process): Rename to ...
6022         (any_thread_of_inferior): ... this, and take an inferior pointer.
6023         (any_live_thread_of_process): Rename to ...
6024         (any_live_thread_of_inferior): ... this, and take an inferior
6025         pointer.
6026         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6027         (value_in_thread_stack_temporaries)
6028         (get_last_thread_stack_temporary): Take a thread pointer instead
6029         of a ptid_t.  Adjust all callers.
6030         (thread_info::set_running): New.
6031         (validate_registers_access): Use inferior_thread.
6032         (can_access_registers_ptid): Rename to ...
6033         (can_access_registers_thread): ... this, and take a thread
6034         pointer.
6035         (print_thread_info_1): Adjust to compare thread pointers instead
6036         of ptids.
6037         (switch_to_no_thread, switch_to_thread): Make extern.
6038         (scoped_restore_current_thread::~scoped_restore_current_thread):
6039         Use m_thread pointer directly.
6040         (scoped_restore_current_thread::scoped_restore_current_thread):
6041         Use inferior_thread.
6042         (thread_command): Use thread pointer directly.
6043         (thread_num_make_value_helper): Use inferior_thread.
6044         * top.c (execute_command): Use inferior_thread.
6045         * tui/tui-interp.c: Include "inferior.h".
6046         * varobj.c (varobj_create): Use inferior_thread.
6047         (value_of_root_1): Use find_thread_global_id instead of
6048         global_thread_id_to_ptid.
6049
6050 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
6051
6052         * regcache.c (readable_regcache::read_part): Avoid memcpy when
6053         possible.
6054         (regcache::write_part): Likewise.
6055         (readable_regcache::cooked_read_part): Update comment.
6056         (readable_regcache::cooked_write_part): Likewise.
6057         * regcache.h: (readable_regcache::read_part): Likewise.
6058         (regcache::write_part): Likewise.
6059
6060 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
6061             Dirk Schubert  <dirk.schubert@arm.com>
6062
6063         * aarch64-linux-nat.c (post_attach): New.
6064         (aarch64_linux_nat_target::post_attach): Override post_attach to
6065         record the number of hardware debug registers.
6066
6067 2018-06-20  Tom Tromey  <tom@tromey.com>
6068
6069         * python/py-param.c (add_setshow_generic): Make parameters const.
6070         (parmpy_init): Update.
6071
6072 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
6073
6074         * regcache.h (regcache_cooked_read_ftype): Rename to...
6075         (register_read_ftype): ...this, change type to function_view.
6076         (class reg_buffer) <save>: Remove src parameter.
6077         (readonly_detached_regcache) <readonly_detached_regcache>: Make
6078         parameter non-const in first overload.  Remove src parameter in
6079         second overload.
6080         * regcache.c (do_cooked_read): Remove.
6081         (readonly_detached_regcache::readonly_detached_regcache): Make
6082         parameter non-const, adjust call to other constructor.
6083         (reg_buffer::save): Remove src parameter.
6084         * frame.c (do_frame_register_read): Remove.
6085         (frame_save_as_regcache): Use lambda function.
6086         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
6087         parameter to ppu2spu_data *.
6088         (ppu2spu_sniffer): Use lambda function.
6089
6090 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
6091
6092         * record-full.c (record_full_target::insert_breakpoint): Remove
6093         "struct" keyword, add const.
6094
6095 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
6096
6097         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
6098         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
6099         * configure.ac: Remove AC_PREREQ, add missing quoting.
6100         * gnulib/configure.ac: Modernize usage of
6101         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
6102         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
6103         (AUTOMAKE_VERSION): Bump to 1.15.1.
6104         * configure: Re-generate.
6105         * config.in: Re-generate.
6106         * aclocal.m4: Re-generate.
6107         * gnulib/aclocal.m4: Re-generate.
6108         * gnulib/config.in: Re-generate.
6109         * gnulib/configure: Re-generate.
6110         * gnulib/import/Makefile.in: Re-generate.
6111
6112 2018-06-19  Pedro Alves  <palves@redhat.com>
6113
6114         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
6115         (lookup_minimal_symbol_by_pc_section): ... here with
6116         gdb_assert_not_reached added.
6117
6118 2018-06-19  Pedro Alves  <palves@redhat.com>
6119
6120         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
6121         parameter with a block parameter.  Compare location's block symbol
6122         with the frame's block instead of addresses.
6123         (skip_inline_frames): Pass the current block instead of the
6124         frame's address.  Break out as soon as we determine the frame
6125         should not be skipped.
6126
6127 2018-06-18  Tom Tromey  <tom@tromey.com>
6128
6129         * solib-aix.c (solib_aix_get_section_offsets): Return
6130         unique_xmalloc_ptr.
6131         (solib_aix_solib_create_inferior_hook): Update.
6132
6133 2018-06-18  Tom Tromey  <tom@tromey.com>
6134
6135         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
6136
6137 2018-06-18  Tom Tromey  <tom@tromey.com>
6138
6139         * solib-frv.c (frv_relocate_main_executable): Use
6140         unique_xmalloc_ptr.
6141         * solib-dsbt.c (dsbt_relocate_main_executable): Use
6142         unique_xmalloc_ptr.
6143
6144 2018-06-18  Tom Tromey  <tom@tromey.com>
6145
6146         * objfiles.h (inhibit_section_map_updates): Update.
6147         (resume_section_map_updates, resume_section_map_updates_cleanup):
6148         Remove.
6149         * solib-svr4.c (svr4_handle_solib_event): Update.
6150         * objfiles.c (inhibit_section_map_updates): Return
6151         scoped_restore_tmpl<int>.
6152         (resume_section_map_updates, resume_section_map_updates_cleanup):
6153         Remove.
6154
6155 2018-06-18  Tom Tromey  <tom@tromey.com>
6156
6157         * valprint.h (read_string): Update.
6158         * valprint.c (read_string): Change type of "buffer".
6159         (val_print_string): Update.
6160         * python/py-value.c (valpy_string): Update.
6161         * language.h (struct language_defn) <la_get_string>: Change
6162         type of "buffer".
6163         (default_get_string, c_get_string): Update.
6164         * language.c (default_get_string): Change type of "buffer".
6165         * guile/scm-value.c (gdbscm_value_to_string): Update.
6166         * c-lang.c (c_get_string): Change type of "buffer".
6167
6168 2018-06-18  Tom Tromey  <tom@tromey.com>
6169
6170         * ser-mingw.c (struct pipe_state_destroyer): New.
6171         (pipe_state_up): New typedef.
6172         (cleanup_pipe_state): Remove.
6173         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
6174
6175 2018-06-18  Tom Tromey  <tom@tromey.com>
6176
6177         * rust-lang.h (rust_yyerror): Don't declare.
6178         * rust-lang.c (rust_language_defn): Update.
6179         * rust-exp.y (yyerror): Now static.
6180         * parse.c (parse_exp_in_context_1): Update.
6181         * p-lang.h (p_yyerror): Don't declare.
6182         * p-lang.c (p_language_defn): Update.
6183         * p-exp.y (yyerror): Now static.
6184         * opencl-lang.c (opencl_language_defn): Update.
6185         * objc-lang.c (objc_language_defn): Update.
6186         * m2-lang.h (m2_yyerror): Don't declare.
6187         * m2-lang.c (m2_language_defn): Update.
6188         * m2-exp.y (yyerror): Now static.
6189         * language.h (struct language_defn) <la_error>: Remove.
6190         * language.c (unk_lang_error): Remove.
6191         (unknown_language_defn, auto_language_defn): Remove.
6192         * go-lang.h (go_yyerror): Don't declare.
6193         * go-lang.c (go_language_defn): Update.
6194         * go-exp.y (yyerror): Now static.
6195         * f-lang.h (f_yyerror): Don't declare.
6196         * f-lang.c (f_language_defn): Update.
6197         * f-exp.y (yyerror): Now static.
6198         * d-lang.h (d_yyerror): Don't declare.
6199         * d-lang.c (d_language_defn): Update.
6200         * d-exp.y (yyerror): Now static.
6201         * c-lang.h (c_yyerror): Don't declare.
6202         * c-lang.c (c_language_defn, cplus_language_defn)
6203         (asm_language_defn, minimal_language_defn): Update.
6204         * c-exp.y (yyerror): Now static.
6205         * ada-lang.h (ada_yyerror): Don't declare.
6206         * ada-lang.c (ada_language_defn): Update.
6207         * ada-exp.y (yyerror): Now static.
6208
6209 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6210
6211         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
6212         (store_sveregs_to_thread): Likewise.
6213         (aarch64_linux_fetch_inferior_registers): Check for SVE.
6214         (aarch64_linux_store_inferior_registers): Likewise.
6215         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
6216         function.
6217         (aarch64_sve_regs_copy_to_regcache): Likewise.
6218         (aarch64_sve_regs_copy_from_regcache): Likewise.
6219         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
6220         declaration.
6221         (aarch64_sve_regs_copy_to_regcache): Likewise.
6222         (aarch64_sve_regs_copy_from_regcache): Likewise.
6223         (sve_context): Structure from Linux headers.
6224         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
6225         (SVE_SIG_ZREG_SIZE): Likewise.
6226         (SVE_SIG_PREG_SIZE): Likewise.
6227         (SVE_SIG_FFR_SIZE): Likewise.
6228         (SVE_SIG_REGS_OFFSET): Likewise.
6229         (SVE_SIG_ZREGS_OFFSET): Likewise.
6230         (SVE_SIG_ZREG_OFFSET): Likewise.
6231         (SVE_SIG_ZREGS_SIZE): Likewise.
6232         (SVE_SIG_PREGS_OFFSET): Likewise.
6233         (SVE_SIG_PREG_OFFSET): Likewise.
6234         (SVE_SIG_PREGS_SIZE): Likewise.
6235         (SVE_SIG_FFR_OFFSET): Likewise.
6236         (SVE_SIG_REGS_SIZE): Likewise.
6237         (SVE_SIG_CONTEXT_SIZE): Likewise.
6238         (SVE_PT_REGS_MASK): Likewise.
6239         (SVE_PT_REGS_FPSIMD): Likewise.
6240         (SVE_PT_REGS_SVE): Likewise.
6241         (SVE_PT_VL_INHERIT): Likewise.
6242         (SVE_PT_VL_ONEXEC): Likewise.
6243         (SVE_PT_REGS_OFFSET): Likewise.
6244         (SVE_PT_FPSIMD_OFFSET): Likewise.
6245         (SVE_PT_FPSIMD_SIZE): Likewise.
6246         (SVE_PT_SVE_ZREG_SIZE): Likewise.
6247         (SVE_PT_SVE_PREG_SIZE): Likewise.
6248         (SVE_PT_SVE_FFR_SIZE): Likewise.
6249         (SVE_PT_SVE_FPSR_SIZE): Likewise.
6250         (SVE_PT_SVE_FPCR_SIZE): Likewise.
6251         (__SVE_SIG_TO_PT): Likewise.
6252         (SVE_PT_SVE_OFFSET): Likewise.
6253         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
6254         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
6255         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
6256         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
6257         (SVE_PT_SVE_PREG_OFFSET): Likewise.
6258         (SVE_PT_SVE_PREGS_SIZE): Likewise.
6259         (SVE_PT_SVE_FFR_OFFSET): Likewise.
6260         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
6261         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
6262         (SVE_PT_SVE_SIZE): Likewise.
6263         (SVE_PT_SIZE): Likewise.
6264         (HAS_SVE_STATE): New define.
6265
6266 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6267
6268         * nat/aarch64-sve-linux-sigcontext.h: New file.
6269         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
6270         new files.
6271         (SVE_VQ_MIN): Likewise.
6272         (SVE_VQ_MAX): Likewise.
6273         (SVE_VL_MIN): Likewise.
6274         (SVE_VL_MAX): Likewise.
6275         (SVE_NUM_ZREGS): Likewise.
6276         (SVE_NUM_PREGS): Likewise.
6277         (sve_vl_valid): Likewise.
6278         (struct user_sve_header): Likewise.
6279
6280 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
6281             Richard Bunt <Richard.Bunt@arm.com>
6282
6283         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
6284         was requested by GDB.
6285
6286 2018-06-15  Tom de Vries  <tdevries@suse.de>
6287
6288         * MAINTAINERS (Write After Approval): Add Tom de Vries.
6289
6290 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
6291
6292         * gnulib/update-gnulib.sh: Print expected versions of
6293         autoconf/aclocal.
6294
6295 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
6296
6297         * arch-utils.c (default_type_align): Use type_length_units.
6298         * gdbtypes.c (type_align): Use type_length_units.
6299
6300 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6301
6302         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
6303         of 'define' command.
6304
6305 2018-06-14  Tom de Vries  <tdevries@suse.de>
6306
6307         PR cli/22573
6308         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
6309         get_no_prettyformat_print_options.
6310
6311 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
6312
6313         * sparc-nat.h: Include target.h.
6314         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
6315         <fetch_registers>: Remove this argument in function call.
6316         <store_registers>: Remove this argument in function call, remove
6317         extra semicolon.
6318         <low_forget_process>: Call sparc64_forget_process instead of
6319         sparc_forget_process.
6320
6321 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
6322
6323         * procfs.c (_initialize_procfs): Use add_inf_child_target.
6324         (procfs_target::make_corefile_notes): Adjust to new
6325         target_read_alloc return type.
6326
6327 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6328             Stephen Roberts  <stephen.roberts@arm.com>
6329
6330         PR gdb/22882
6331         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
6332         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
6333         Move should_notify_stop local into more inner scope.
6334
6335 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6336             Stephen Roberts  <stephen.roberts@arm.com>
6337
6338         PR gdb/22882
6339         * infrun.c (resume_1): Add call to mark_async_event_handler.
6340
6341 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6342
6343         * infrun.c (do_target_wait): Change old version of $pc printed.
6344
6345 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
6346
6347         * dwarf2read.c (read_index_from_section): Rename to...
6348         (read_gdb_index_from_section): ... this, update all callers.
6349         (dwarf2_read_index): Rename to...
6350         (dwarf2_read_gdb_index): ... this, update all callers.
6351
6352 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
6353
6354         * gdb/hppa-linux-nat.c
6355         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
6356         hppa_linux_nat_target::fetch_registers.
6357
6358 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6359
6360         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
6361         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
6362         (AARCH64_DWARF_SVE_FFR): Likewise.
6363         (AARCH64_DWARF_SVE_P0): Likewise.
6364         (AARCH64_DWARF_SVE_Z0): Likewise.
6365
6366 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6367
6368         * common/common-regcache.h (raw_compare): New function.
6369         * regcache.c (regcache::raw_compare): Likewise.
6370         * regcache.h (regcache::raw_compare): New declaration.
6371
6372 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6373
6374         * common/common-regcache.h (reg_buffer_common): New structure.
6375         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
6376         (reg_buffer::raw_supply): Likewise.
6377         (reg_buffer::raw_supply_integer): Likewise.
6378         (reg_buffer::raw_supply_zeroed): Likewise.
6379         (reg_buffer::raw_collect): Likewise.
6380         (reg_buffer::raw_collect_integer): Likewise.
6381         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
6382         (reg_buffer::raw_supply): Likewise.
6383         (reg_buffer::raw_supply_integer): Likewise.
6384         (reg_buffer::raw_supply_zeroed): Likewise.
6385         (reg_buffer::raw_collect): Likewise.
6386         (reg_buffer::raw_collect_integer): Likewise.
6387
6388 2018-06-10  Tom Tromey  <tom@tromey.com>
6389
6390         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
6391         (class remote_state) <stop_reply_queue>: Now std::vector.
6392         (remote_state::~remote_state)
6393         (remote_target::stop_reply_queue_length): Update.
6394         (struct queue_iter_param, remove_child_of_pending_fork)
6395         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
6396         (check_pending_event_prevents_wildcard_vcont_callback)
6397         (remove_stop_reply_for_inferior)
6398         (remove_stop_reply_of_remote_state)
6399         (remote_notif_remove_once_on_match)
6400         (stop_reply_match_ptid_and_ws)
6401         (remote_kill_child_of_pending_fork): Remove.
6402         (remote_target::remove_new_fork_children)
6403         (remote_target::check_pending_events_prevent_wildcard_vcont)
6404         (remote_target::discard_pending_stop_replies)
6405         (remote_target::discard_pending_stop_replies_in_queue)
6406         (remote_target::remote_notif_remove_queued_reply)
6407         (remote_target::queued_stop_reply)
6408         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
6409         (remote_target::wait, remote_target::kill_new_fork_children)
6410         (remote_target::async): Update.
6411
6412 2018-06-10  Tom Tromey  <tom@tromey.com>
6413
6414         * record-full.c (record_full_arch_list_cleanups): Remove.
6415         (record_full_message): Use try/catch.
6416         (record_full_wait_cleanups): Remove.
6417         (record_full_wait_1): Use try/catch.
6418         (record_full_restore): Likewise.
6419
6420 2018-06-10  Tom Tromey  <tom@tromey.com>
6421
6422         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
6423         declare VEC.  Add constructor.
6424         <in_target_beneath>: Now bool.
6425         (record_full_breakpoints): Now a std::vector, static.
6426         (record_full_sync_record_breakpoints)
6427         (record_full_init_record_breakpoints)
6428         (record_full_target::insert_breakpoint)
6429         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
6430
6431 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
6432
6433         * dwarf2read.c (process_cu_includes): Remove struct keyword.
6434         * serial.c (serial_interface_lookup): Remove struct keyword.
6435
6436 2018-06-10  Tom Tromey  <tom@tromey.com>
6437
6438         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
6439         method.
6440         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
6441         a method.
6442         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
6443         method.
6444         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
6445         "beneath" as a method.
6446         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
6447         Use "beneath" as a method.
6448
6449 2018-06-10  Tom Tromey  <tom@tromey.com>
6450
6451         * tracefile.c (struct trace_file_writer_deleter): New.
6452         <operator()>: Rename from trace_file_writer_xfree.
6453         (trace_file_writer_up): New typedef.
6454         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
6455
6456 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
6457
6458         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
6459         <m_registers, m_register_status>: Change type to
6460         std::unique_ptr.
6461         * regcache.c (reg_buffer::reg_buffer): Use new instead of
6462         XCNEWVEC.
6463
6464 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
6465
6466         * common/common-regcache.h (enum register_status): Add
6467         underlying type "signed char".
6468         * regcache.h (reg_buffer) <m_register_status>: Change type to
6469         register_status *.
6470         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
6471         register_status instead of signed char.
6472         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
6473         (reg_buffer::get_register_status): Remove cast.
6474         (readable_regcache::raw_read): Remove cast.
6475         (readable_regcache::cooked_read): Remove cast.
6476
6477 2018-06-09  Tom Tromey  <tom@tromey.com>
6478
6479         * source.c (reverse_search_command, forward_search_command): Use
6480         scoped_fd.
6481
6482 2018-06-09  Tom Tromey  <tom@tromey.com>
6483
6484         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
6485         (serial_ops_list): Now static, std::vector.
6486         (serial_interface_lookup, serial_add_interface): Update.
6487
6488 2018-06-09  Tom Tromey  <tom@tromey.com>
6489
6490         * dwarf2read.c (process_cu_includes): Update.
6491         (process_full_comp_unit): Update.
6492         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
6493         std::vector.
6494
6495 2018-06-08  Paul Koning  <paul_koning@dell.com>
6496
6497         PR gdb/23252
6498
6499         * python/python.c (do_start_initialization):
6500         Avoid call to internal Python API.
6501         (init__gdb_module): New function.
6502
6503 2018-06-08  Gary Benson <gbenson@redhat.com>
6504
6505         * linux-thread-db.c (valprint.h): New include.
6506         (struct check_thread_db_info): New structure.
6507         (check_thread_db_on_load, tdb_testinfo): New static globals.
6508         (check_thread_db, check_thread_db_callback): New functions.
6509         (try_thread_db_load_1): Run integrity checks if requested.
6510         (maintenance_check_libthread_db): New function.
6511         (_initialize_thread_db): Register "maint check libthread-db"
6512         and "maint set/show check-libthread-db".
6513         * NEWS: Mention the above new commands.
6514
6515 2018-06-08  Tom Tromey  <tom@tromey.com>
6516
6517         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
6518         now a method.
6519
6520 2018-06-08  Tom Tromey  <tom@tromey.com>
6521
6522         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
6523
6524 2018-06-08  Tom Tromey  <tom@tromey.com>
6525
6526         * common/btrace-common.h (struct btrace_data): Add constructor,
6527         destructor, move assignment operator.
6528         <empty, clear, fini>: New methods.
6529         <format>: Initialize.
6530         (btrace_data_init, btrace_data_fini, btrace_data_clear)
6531         (btrace_data_empty): Don't declare.
6532         * common/btrace-common.c (btrace_data_init): Remove.
6533         (btrace_data::fini): Rename from btrace_data_fini.
6534         (btrace_data::empty): Rename from btrace_data_empty.
6535         (btrace_data::clear): Rename from btrace_data_clear.  Return
6536         bool.
6537         * btrace.h (make_cleanup_btrace_data): Don't declare.
6538         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
6539         (parse_xml_btrace): Update.
6540         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
6541         (maint_btrace_clear_packet_history_cmd): Update.
6542
6543 2018-06-07  Pedro Alves  <palves@redhat.com>
6544
6545         * target.h (target_ops) <beneath>: Now a method.  All references
6546         updated.
6547         (class target_stack): New.
6548         * target.c (g_target_stack): New.
6549         (g_current_top_target): Delete.
6550         (current_top_target): Get the top target out of g_target_stack.
6551         (target_stack::push, target_stack::unpush): New.
6552         (push_target, unpush_target): Reimplement.
6553         (target_is_pushed): Reimplement in terms of g_target_stack.
6554         (target_ops::beneath, target_stack::find_beneath): New.
6555
6556 2018-06-07  Pedro Alves  <palves@redhat.com>
6557
6558         * target.h (find_target_beneath): Delete declaration.
6559         * target.c (find_target_beneath): Delete definition.
6560         * aix-thread.c: All callers of find_target_beneath adjusted to
6561         call target_ops::beneath instead.
6562         * bsd-uthread.c: Likewise.
6563         * linux-thread-db.c: Likewise.
6564         * ravenscar-thread.c: Likewise.
6565         * sol-thread.c: Likewise.
6566         * spu-multiarch.c: Likewise.
6567
6568 2018-06-07  Pedro Alves  <palves@redhat.com>
6569
6570         * target.h (target_ops) <beneath>: Now a method.  All references
6571         updated.
6572         (target_ops) <m_beneath>: New.
6573         * target.c (target_ops::beneath): New.
6574         * corelow.c: Adjust all references to target_ops::beneath.
6575         * linux-thread-db.c: Likewise.
6576         * make-target-delegates: Likewise.
6577         * record-btrace.c: Likewise.
6578         * record-full.c: Likewise.
6579         * remote.c: Likewise.
6580         * target.c: Likewise.
6581         * target-delegates.c: Regenerate.
6582
6583 2018-06-07  Pedro Alves  <palves@redhat.com>
6584
6585         * target.h (target_stack): Delete.
6586         (current_top_target): Declare function.
6587         * target.c (target_stack): Delete.
6588         (g_current_top_target): New.
6589         (current_top_target): New function.
6590         * auxv.c: Use current_top_target instead of target_stack
6591         throughout.
6592         * avr-tdep.c: Likewise.
6593         * breakpoint.c: Likewise.
6594         * corefile.c: Likewise.
6595         * elfread.c: Likewise.
6596         * eval.c: Likewise.
6597         * exceptions.c: Likewise.
6598         * frame.c: Likewise.
6599         * gdbarch-selftests.c: Likewise.
6600         * gnu-v3-abi.c: Likewise.
6601         * ia64-tdep.c: Likewise.
6602         * ia64-vms-tdep.c: Likewise.
6603         * infcall.c: Likewise.
6604         * infcmd.c: Likewise.
6605         * infrun.c: Likewise.
6606         * linespec.c: Likewise.
6607         * linux-tdep.c: Likewise.
6608         * minsyms.c: Likewise.
6609         * ppc-linux-nat.c: Likewise.
6610         * ppc-linux-tdep.c: Likewise.
6611         * procfs.c: Likewise.
6612         * regcache.c: Likewise.
6613         * remote.c: Likewise.
6614         * rs6000-tdep.c: Likewise.
6615         * s390-linux-nat.c: Likewise.
6616         * s390-tdep.c: Likewise.
6617         * solib-aix.c: Likewise.
6618         * solib-darwin.c: Likewise.
6619         * solib-dsbt.c: Likewise.
6620         * solib-spu.c: Likewise.
6621         * solib-svr4.c: Likewise.
6622         * solib-target.c: Likewise.
6623         * sparc-tdep.c: Likewise.
6624         * sparc64-tdep.c: Likewise.
6625         * spu-tdep.c: Likewise.
6626         * symfile.c: Likewise.
6627         * symtab.c: Likewise.
6628         * target-descriptions.c: Likewise.
6629         * target-memory.c: Likewise.
6630         * target.c: Likewise.
6631         * target.h: Likewise.
6632         * tracefile-tfile.c: Likewise.
6633         * tracepoint.c: Likewise.
6634         * valops.c: Likewise.
6635         * valprint.c: Likewise.
6636         * value.c: Likewise.
6637         * windows-tdep.c: Likewise.
6638         * mi/mi-main.c: Likewise.
6639
6640 2018-06-07  Tom Tromey  <tom@tromey.com>
6641
6642         * valprint.h (build_address_symbolic): Declare.
6643         * printcmd.c (print_address_symbolic): Update.
6644         (build_address_symbolic): Change "name" and "filename" to
6645         std::string.
6646         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
6647         Update.
6648         * defs.h (build_address_symbolic): Remove declaration.
6649
6650 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
6651
6652         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
6653         (aarch64_vnv_type): Add function.
6654         (aarch64_pseudo_register_name): Add V regs for SVE.
6655         (aarch64_pseudo_register_type): Likewise.
6656         (aarch64_pseudo_register_reggroup_p): Likewise.
6657         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
6658         (aarch64_pseudo_read_value): Add V regs for SVE.
6659         (aarch64_pseudo_write_2): Use V0 offset for SVE
6660         (aarch64_pseudo_write): Add V regs for SVE.
6661         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
6662
6663 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
6664
6665         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
6666         (sve_vl_from_vq): Likewise.
6667
6668 2018-06-05  Tom Tromey  <tom@tromey.com>
6669
6670         * cli/cli-cmds.c (show_version): Update.
6671         * top.c (print_gdb_version): Add "interactive" parameter.
6672         Update.
6673         * main.c (captured_main_1): Update.
6674         * top.h (print_gdb_version): Add "interactive" parameter and a
6675         comment.
6676
6677 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
6678
6679         * common/enum-flags.h: Add trailing semicolon to example in
6680         comment.
6681
6682 2018-06-05  Tom Tromey  <tom@tromey.com>
6683
6684         PR cli/12326:
6685         * NEWS: Add entry about pager.
6686         * utils.c (pagination_disabled_for_command): New global.
6687         (prompt_for_continue): Allow "c" response to prompt.
6688         (reinitialize_more_filter): Clear
6689         pagination_disabled_for_command.
6690         (fputs_maybe_filtered): Check pagination_disabled_for_command.
6691
6692 2018-06-04  Tom Tromey  <tom@tromey.com>
6693
6694         * ada-lang.h (ada_lookup_symbol_list): Update.
6695         * ada-lang.c (resolve_subexp): Update.
6696         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
6697         parameter.
6698         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
6699         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
6700         results parameter to std::vector.
6701         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
6702         Update.
6703         * ada-exp.y (block_lookup): Update.
6704         (select_possible_type_sym): Change type of syms.  Remove nsyms
6705         parameter.
6706         (write_var_or_type, write_name_assoc): Update.
6707
6708 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
6709
6710         * windows-nat.c (windows_nat_target::xfer_partial): Return
6711         TARGET_XFER_E_IO if we need to delegate to the target beneath
6712         but BENEATH is NULL.
6713
6714 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
6715
6716         * Makefile.in (config.status): Add configure.nat as a
6717         dependency.
6718
6719 2018-06-04  Tom Tromey  <tom@tromey.com>
6720
6721         * cp-name-parser.y (cpname_state): Add method declarations.
6722         (HANDLE_QUAL): Update.
6723         (cpname_state::d_grab, cpname_state::fill_comp)
6724         (cpname_state::make_operator, cpname_state::make_dtor)
6725         (cpname_state::make_builtin_type, cpname_state::make_name)
6726         (cpname_state::d_qualify, cpname_state::d_int_type)
6727         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
6728         (%union): Move earlier.
6729
6730 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6731
6732         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
6733
6734 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6735
6736         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
6737         (aarch64_pseudo_write_1): Likewise.
6738         (aarch64_pseudo_read_value): Use helper.
6739         (aarch64_pseudo_write): Likewise.
6740
6741 2018-06-04  Pedro Alves  <palves@redhat.com>
6742
6743         * darwin-nat.c (darwin_ops): Delete.
6744         (darwin_attach_pid): Use get_native_target.
6745
6746 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6747
6748         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
6749         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
6750
6751 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6752
6753         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
6754         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
6755         (aarch64_gdbarch_init): Check for SVE.
6756         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
6757
6758 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6759
6760         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
6761         * aarch64-tdep.h (aarch64_read_description): Likewise.
6762         * arch/aarch64.c (aarch64_create_target_description): Likewise.
6763         * arch/aarch64.h (aarch64_create_target_description): Likewise.
6764         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
6765         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
6766         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
6767
6768 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
6769
6770         * value.c (value_fetch_lazy_bitfield): New.
6771         (value_fetch_lazy_memory): New.
6772         (value_fetch_lazy_register): New.
6773         (value_fetch_lazy): Factor out to smaller functions.
6774
6775 2018-06-01  Tom Tromey  <tom@tromey.com>
6776
6777         * cp-name-parser.y (backslashable, represented): Now const.
6778
6779 2018-06-01  Tom Tromey  <tom@tromey.com>
6780
6781         * cp-name-parser.y: Include parser-defs.h.
6782         (parser_fprintf): Remove declaration.
6783
6784 2018-06-01  Tom Tromey  <tom@tromey.com>
6785
6786         * cp-name-parser.y: Use %pure-parser, %lex-param, and
6787         %parse-param.
6788         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
6789         (global_result): Remove globals.
6790         (struct cpname_state): New.
6791         (yyparse): Don't declare.
6792         (yylex, yyerror): Move declarations after %union.
6793         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
6794         (make_name): Add state parameter.
6795         Update all callers.
6796         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
6797         parameter.
6798         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
6799         Update.
6800         (yylex): Add lvalp, state parameters.
6801         (yyerror): Add state parameter.
6802         (cp_demangled_name_to_comp): Update.
6803
6804 2018-06-01  Tom Tromey  <tom@tromey.com>
6805
6806         * cp-name-parser.y (parser_fprintf): Declare.
6807         (GDB_YY_REMAP_PREFIX): Define.
6808         Include yy-remap.h.  Don't redefine yy* identifiers.
6809
6810 2018-06-01  Tom Tromey  <tom@tromey.com>
6811
6812         * python/py-type.c (typy_legacy_template_argument): Update.
6813         * cp-support.h (cp_demangled_name_to_comp): Update.
6814         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
6815         parameter to be a "std::string *".
6816         (main): Update.
6817
6818 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
6819
6820         * ada-lex.l: Include "diagnostics.h" instead of
6821         "common/diagnostics.h".
6822         * unittests/environ-selftests.c: Likewise.
6823         * common/diagnostics.h: Moved to ../include.
6824
6825 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
6826
6827         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
6828         to language_mode_manual while calling breakpoint_re_set_one.
6829
6830 2018-06-01  Tom Tromey  <tom@tromey.com>
6831
6832         * valops.c (value_cast_structs, destructor_name_p): Update.
6833         * symtab.c (gdb_mangle_name): Update.
6834         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
6835         Update.
6836         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
6837         (pascal_object_print_value_fields, pascal_object_print_value):
6838         Update.
6839         * p-typeprint.c (pascal_type_print_derivation_info): Update.
6840         * linespec.c (find_methods): Update.
6841         * gdbtypes.h (type_name_no_tag): Remove.
6842         (type_name_or_error): Rename from type_name_no_tag_or_error.
6843         * gdbtypes.c (type_name_no_tag): Remove.
6844         (type_name_or_error): Rename from type_name_no_tag_or_error.
6845         (lookup_struct_elt_type, check_typedef): Update.
6846         * expprint.c (print_subexp_standard): Update.
6847         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
6848         * d-namespace.c (d_lookup_nested_symbol): Update.
6849         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
6850         (cp_print_class_member): Update.
6851         * cp-namespace.c (cp_lookup_nested_symbol): Update.
6852         * completer.c (add_struct_fields): Update.
6853         * c-typeprint.c (cp_type_print_derivation_info)
6854         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
6855         Update.
6856         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
6857         (ada_prefer_type, ada_is_exception_sym): Update.
6858
6859 2018-06-01  Tom Tromey  <tom@tromey.com>
6860
6861         * valops.c (enum_constant_from_type, value_namespace_elt)
6862         (value_maybe_namespace_elt): Update.
6863         * valarith.c (find_size_for_pointer_math): Update.
6864         * target-descriptions.c (make_gdb_type): Update.
6865         * symmisc.c (print_symbol): Update.
6866         * stabsread.c (define_symbol, read_type)
6867         (complain_about_struct_wipeout, add_undefined_type)
6868         (cleanup_undefined_types_1): Update.
6869         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
6870         (rust_range_type_p, val_print_struct, rust_print_struct_def)
6871         (rust_internal_print_type, rust_composite_type)
6872         (rust_evaluate_funcall, rust_evaluate_subexp)
6873         (rust_inclusive_range_type_p): Update.
6874         * python/py-type.c (typy_get_tag): Update.
6875         * p-typeprint.c (pascal_type_print_base): Update.
6876         * mdebugread.c (parse_symbol, parse_type): Update.
6877         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
6878         Update.
6879         * guile/scm-type.c (gdbscm_type_tag): Update.
6880         * go-lang.c (sixg_string_p): Update.
6881         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
6882         Update.
6883         * gdbtypes.h (struct main_type) <tag_name>: Remove.
6884         (TYPE_TAG_NAME): Remove.
6885         * gdbtypes.c (type_name_no_tag): Simplify.
6886         (check_typedef, check_types_equal, recursive_dump_type)
6887         (copy_type_recursive, arch_composite_type): Update.
6888         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
6889         in summary mode when needed.
6890         * eval.c (evaluate_funcall): Update.
6891         * dwarf2read.c (fixup_go_packaging, read_structure_type)
6892         (process_structure_scope, read_enumeration_type)
6893         (read_namespace_type, read_module_type, determine_prefix): Update.
6894         * cp-support.c (inspect_type): Update.
6895         * coffread.c (process_coff_symbol, decode_base_type): Update.
6896         * c-varobj.c (c_is_path_expr_parent): Update.
6897         * c-typeprint.c (c_type_print_base_struct_union): Update.
6898         (c_type_print_base_1): Update.  Print struct/class/union/enum in
6899         summary when using C language.
6900         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
6901         (gen_maybe_namespace_elt): Update.
6902         * ada-lang.c (ada_type_name): Simplify.
6903         (empty_record, ada_template_to_fixed_record_type_1)
6904         (template_to_static_fixed_type)
6905         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
6906
6907 2018-06-01  Tom Tromey  <tom@tromey.com>
6908
6909         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
6910         c_print_type.
6911         * c-typeprint.c (c_print_type_1): Add "language" parameter.
6912         (c_print_type): Update.
6913         (c_print_type): New overload.
6914         (c_type_print_varspec_prefix, c_type_print_args)
6915         (c_type_print_varspec_suffix, c_print_type_no_offsets)
6916         (c_type_print_base_struct_union, c_type_print_base_1)
6917         (cp_type_print_method_args): Add "language" parameter.
6918         (c_type_print_base): Update.
6919         * c-lang.h (c_print_type): Add new overload.
6920
6921 2018-06-01  Tom Tromey  <tom@tromey.com>
6922
6923         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
6924         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
6925
6926 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
6927
6928         * aarch64-tdep.c (aarch64_sve_register_names): New const
6929         var.
6930         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
6931         (AARCH64_SVE_Z_REGS_NUM): New define.
6932         (AARCH64_SVE_P_REGS_NUM): Likewise.
6933         (AARCH64_SVE_NUM_REGS): Likewise.
6934
6935 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
6936
6937         * nat/linux-ptrace.h [__alpha__]
6938         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
6939         definitions.
6940
6941 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
6942
6943         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
6944         the endianness selected.
6945         * NEWS: Document `set endian auto' mode operation update.
6946
6947 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
6948
6949         * Makefile.in: Add new header.
6950         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
6951         (sve_vl_from_vg): Likewise.
6952         (sve_vq_from_vl): Likewise.
6953         (sve_vl_from_vq): Likewise.
6954         (sve_vq_from_vg): Likewise.
6955         (sve_vg_from_vq): Likewise.
6956         * configure.nat: Add new c file.
6957         * nat/aarch64-sve-linux-ptrace.c: New file.
6958         * nat/aarch64-sve-linux-ptrace.h: New file.
6959
6960 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
6961
6962         * aarch64-linux-nat.c (aarch64_linux_read_description):
6963         Add parmeter zero.
6964         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
6965         Likewise.
6966         * aarch64-tdep.c (tdesc_aarch64_list): Add.
6967         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
6968         (aarch64_gdbarch_init): Add parmeter zero.
6969         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
6970         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
6971         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
6972         parmeter.
6973         * doc/gdb.texinfo: Describe SVE feature
6974         * features/aarch64-sve.c: New file.
6975
6976 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
6977
6978         PR gdb/23210
6979         * gdbarch.sh (significant_addr_bit): Default to zero when
6980         not set by target architecture.
6981         * gdbarch.c: Re-generated.
6982         * utils.c (address_significant): Update.
6983
6984 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
6985
6986         * stack.c (func_command): Remove trailing newline in call to error.
6987
6988 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6989
6990         * regcache.h (regcache_raw_collect): Remove, update callers to
6991         use regcache::raw_collect.
6992         * regcache.c (regcache_raw_collect): Remove.
6993
6994 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6995
6996         * regcache.h (regcache_raw_supply): Remove, update callers to
6997         use detached_regcache::raw_supply.
6998         * regcache.c (regcache_raw_supply): Remove.
6999
7000 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7001
7002         * regcache.h (regcache_cooked_write_part): Remove, update
7003         callers to use regcache::cooked_write_part.
7004         * regcache.c (regcache_cooked_write_part): Remove.
7005
7006 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7007
7008         * regcache.h (regcache_cooked_read_part): Remove, update callers
7009         to use readable_regcache::cooked_read_part.
7010         * regcache.c (regcache_cooked_read_part): Remove.
7011
7012 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7013
7014         * regcache.h (regcache_cooked_read_value): Remove, update
7015         callers to use readable_regcache::cooked_read_value.
7016         * regcache.c (regcache_cooked_read_value): Remove.
7017
7018 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7019
7020         * regcache.h (regcache_cooked_write): Remove, update callers to
7021         use regcache::cooked_write.
7022         * regcache.c (regcache_cooked_write): Remove.
7023
7024 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7025
7026         * regcache.h (regcache_invalidate): Remove, update callers to
7027         use detached_regcache::invalidate instead.
7028         * regcache.c (regcache_invalidate): Remove.
7029
7030 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7031
7032         * regcache.h (regcache_raw_write_part): Remove, update callers
7033         to use regcache::raw_write_part instead.
7034         * regcache.c (regcache_raw_write_part): Remove.
7035
7036 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7037
7038         * regcache.h (regcache_raw_read_part): Remove, update callers to
7039         use readable_regcache::raw_read_part instead.
7040         * regcache.c (regcache_raw_read_part): Remove.
7041
7042 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7043
7044         * regcache.h (regcache_cooked_read): Remove, update callers to
7045         use readable_regcache::cooked_read instead.
7046         * regcache.c (regcache_cooked_read): Remove.
7047
7048 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7049
7050         * regcache.h (regcache_raw_write): Remove, update callers to use
7051         regcache::raw_write instead.
7052         * regcache.c (regcache_raw_write): Remove.
7053
7054 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7055
7056         * regcache.h (regcache_raw_read): Remove, update callers to use
7057         readable_regcache::raw_read instead.
7058         * regcache.c (regcache_raw_read): Remove.
7059
7060 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7061
7062         * regcache.h (regcache_raw_update): Remove, update callers to
7063         use readable_regcache::raw_update instead.
7064         * regcache.c (regcache_raw_update): Remove.
7065
7066 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7067
7068         * regcache.h (regcache_register_status): Remove, update callers
7069         to use reg_buffer::get_register_status directly instead.
7070         * regcache.c (regcache_register_status): Remove.
7071
7072 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7073
7074         * regcache.h (regcache_get_ptid): Remove, update all callers to
7075         call regcache::ptid instead.
7076         * regcache.c (regcache_get_ptid): Remove.
7077
7078 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7079
7080         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
7081
7082 2018-05-30  Pedro Alves  <palves@redhat.com>
7083
7084         * common/common-exceptions.h (exception_rethrow): Use
7085         ATTRIBUTE_NORETURN.
7086
7087 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
7088
7089         * breakpoint.c (print_solib_event, check_status_catch_solib):
7090         Remove struct keyword in range-based for loops.
7091         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
7092         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
7093         Likewise.
7094         * linespec.c (find_superclass_methods, search_minsyms_for_name):
7095         Likewise.
7096         * symfile.c (addr_info_make_relative): Likewise.
7097         * thread.c (value_in_thread_stack_temporaries): Likewise.
7098
7099 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
7100
7101         PR gdb/16841
7102         * valops.c (value_struct_elt_for_reference): Call check_typedef on
7103         aggregate type to get its real type before accessing it.
7104
7105 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
7106
7107         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
7108         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
7109         * coff-pe-read.c (add_pe_forwarded_sym): Replace
7110         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
7111         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
7112         * jit.c (jit_breakpoint_re_set_internal): Likewise.
7113         * printcmd.c (info_address_command): Likewise.
7114
7115 2018-05-29  Tom Tromey  <tom@tromey.com>
7116
7117         * windows-nat.c (handle_exception): Update fall-through comment.
7118
7119 2018-05-29  Tom Tromey  <tom@tromey.com>
7120
7121         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
7122         (struct program_space) <added_solibs>: Now a std::vector.
7123         * breakpoint.c (print_solib_event): Update.
7124         (check_status_catch_solib): Update.
7125         * progspace.c (clear_program_space_solib_cache): Update.
7126         * solib.c (update_solib_list): Update.
7127
7128 2018-05-29  Tom Tromey  <tom@tromey.com>
7129
7130         * python/py-type.c (typy_richcompare): Update.
7131         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
7132         * gdbtypes.h (types_deeply_equal): Return bool.
7133         (types_equal): Likewise.
7134         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
7135         declare VEC.
7136         (check_types_equal): Change worklist to std::vector.  Return
7137         bool.
7138         (struct type_equality_entry): Add constructor.
7139         (compare_maybe_null_strings): Return bool.
7140         (check_types_worklist): Return bool.  Change worklist to
7141         std::vector.
7142         (types_deeply_equal): Use std::vector.
7143         (types_equal): Return bool.
7144         (compare_maybe_null_strings): Simplify.
7145
7146 2018-05-29  Tom Tromey  <tom@tromey.com>
7147
7148         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
7149
7150 2018-05-29  Tom Tromey  <tom@tromey.com>
7151
7152         * objc-lang.h: Don't include cp-support.h.
7153         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
7154         declare VEC.
7155
7156 2018-05-27  Tom Tromey  <tom@tromey.com>
7157
7158         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
7159
7160 2018-05-25  Tom Tromey  <tom@tromey.com>
7161
7162         * value.c (value::location): Initialize.
7163
7164 2018-05-25  Tom Tromey  <tom@tromey.com>
7165
7166         * dbxread.c (init_bincl_list): Remove.
7167         (bincl_list): Now a std::vector.
7168         (bincls_allocated, next_bincl): Remove.
7169         (free_bincl_list, do_free_bincl_list_cleanup)
7170         (make_cleanup_free_bincl_list): Remove.
7171         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
7172         unique_xmalloc_ptr.
7173         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
7174         (struct header_file_location): Add constructor.
7175         (add_bincl_to_list): Remove.
7176
7177 2018-05-25  Tom Tromey  <tom@tromey.com>
7178
7179         * tui/tui.c (tui_enable): Update.
7180         * mi/mi-interp.c (mi_interp::init): Update.
7181         * interps.h (class interp) <name>: New method.
7182         <m_name>: Rename from name.
7183         (~scoped_restore_interp): Update.
7184         * interps.c (interp::interp): Update.
7185         (interp_add, interp_set, interp_lookup_existing)
7186         (current_interp_named_p): Update.
7187
7188 2018-05-25  Tom Tromey  <tom@tromey.com>
7189
7190         * interps.c (interp_name): Remove.
7191         * mi/mi-interp.c (mi_interp::init): Update.
7192         * interps.h (interp_name): Remove.
7193         (~scoped_restore_interp): Update.
7194         * tui/tui.c (tui_enable): Update.
7195
7196 2018-05-25  Tom Tromey  <tom@tromey.com>
7197
7198         * utils.c (fputs_maybe_filtered): Update.
7199         * linespec.c (decode_line_full): Update.
7200         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
7201         (mi_print_breakpoint_for_event, mi_solib_loaded)
7202         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
7203         (mi_user_selected_context_changed): Update.
7204         * mi/mi-main.c (mi_execute_command): Update.
7205         * cli/cli-script.c (execute_control_command): Update.
7206         * python/python.c (execute_gdb_command): Update.
7207         * solib.c (info_sharedlibrary_command): Update.
7208         * interps.c (interp_ui_out): Remove.
7209         * interps.h (interp_ui_out): Remove.
7210
7211 2018-05-25  Tom Tromey  <tom@tromey.com>
7212
7213         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
7214         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
7215         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
7216
7217 2018-05-25  Tom Tromey  <tom@tromey.com>
7218
7219         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
7220         * interps.c (interp_exec): Use scoped_restore.
7221
7222 2018-05-25  Tom Tromey  <tom@tromey.com>
7223
7224         * remote.c (remote_target::remote_file_get): Use
7225         gdb::byte_vector.
7226         (remote_target::remote_file_put): Likewise.
7227
7228 2018-05-25  Tom Tromey  <tom@tromey.com>
7229
7230         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
7231         a std::string.
7232         (get_pe_section_index, add_pe_exported_sym): Update.
7233         (read_pe_exported_syms): Use gdb::def_vector.
7234
7235 2018-05-25  Tom Tromey  <tom@tromey.com>
7236
7237         * frame.c (remove_prev_frame): Remove.
7238         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
7239
7240 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
7241
7242         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
7243         Remove prototypes.
7244         * mips-linux-nat.c (supply_fpregset): Always call
7245         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
7246         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
7247         `mips_fill_fpregset'.
7248         * mips-linux-tdep.c (mips_supply_fpregset)
7249         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
7250         (mips_fill_fpregset_wrapper): Remove functions.
7251         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
7252         (mips_linux_fpregset): Remove variable.
7253         (mips_linux_iterate_over_regset_sections): Use
7254         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
7255         (mips_linux_o32_sigframe_init): Remove comment.
7256
7257 2018-05-25  Pedro Alves  <palves@redhat.com>
7258
7259         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
7260         (struct readahead_cache, struct packet_reg, struct
7261         remote_arch_state, class remote_state): Move higher up in the
7262         file.
7263         (remote_target::m_remote_state): Now an object instead of a pointer.
7264         (remote_target::get_remote_state): Adjust.
7265
7266 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7267
7268         * stack.c (select_and_print_frame): Delete.
7269         (struct function_bounds): Move struct within function.
7270         (func_command): Most content moved into new function
7271         find_frame_for_function, use new function, print result, add
7272         function comment.
7273         (find_frame_for_function): New function, now returns a result.
7274
7275 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7276
7277         * stack.c (iterate_over_block_arg_vars): Fix comment.
7278         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
7279
7280 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7281
7282         PR gdb/23203
7283         * frame.c
7284         (scoped_restore_selected_frame::scoped_restore_selected_frame):
7285         Define.
7286         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
7287         Define.
7288         * frame.h (class scoped_restore_selected_frame): New class.
7289         * stack.c (print_frame_local_vars): Remove catching and rethrowing
7290         of any exception, use scoped_restore_selected_frame to restore the
7291         frame instead.
7292
7293 2018-05-24  Pedro Alves  <palves@redhat.com>
7294
7295         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
7296         override.
7297
7298 2018-05-23  Tom Tromey  <tom@tromey.com>
7299
7300         * complaints.c (struct complaints): Remove.
7301         (symfile_complaint_book): Remove.
7302         (series): New global.
7303         (complaint_internal): Update.
7304         (clear_complaints): Update.
7305
7306 2018-05-23  Tom Tromey  <tom@tromey.com>
7307
7308         * complaints.c (counters): New global.
7309         (struct complain): Remove.
7310         (struct complaints) <root>: Remove.
7311         (complaint_sentinel): Remove.
7312         (symfile_complaint_book): Update.
7313         (find_complaint) Remove.
7314         (complaint_internal, clear_complaints): Update.
7315
7316 2018-05-23  Tom Tromey  <tom@tromey.com>
7317
7318         * complaints.c (struct complain) <file, line>: Remove.
7319         (find_complaint): Remove file, line parameters.
7320         (complaint_internal): Update.
7321
7322 2018-05-23  Tom Tromey  <tom@tromey.com>
7323
7324         * complaints.c (vcomplaint): Remove.
7325         (complaint_internal) Merge in contents of vcomplaint.
7326
7327 2018-05-23  Tom Tromey  <tom@tromey.com>
7328
7329         * complaints.c (struct complaints) <explanation>: Remove.
7330         (symfile_explanations): Remove.
7331         (symfile_complaint_book): Update.
7332         (vcomplaint): Update.
7333         (struct explanation): Remove.
7334
7335 2018-05-23  Tom Tromey  <tom@tromey.com>
7336
7337         * complaints.c (symfile_complaints): Remove.
7338         (complaint_internal): Remove "complaints" parameter.
7339         (clear_complaints, vcomplaint): Remove "c" parameter.
7340         (get_complaints): Remove.
7341         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
7342         (dwarf2_debug_line_missing_file_complaint)
7343         (dwarf2_debug_line_missing_end_sequence_complaint)
7344         (dwarf2_complex_location_expr_complaint)
7345         (dwarf2_const_value_length_mismatch_complaint)
7346         (dwarf2_section_buffer_overflow_complaint)
7347         (dwarf2_macro_malformed_definition_complaint)
7348         (dwarf2_invalid_attrib_class_complaint)
7349         (create_addrmap_from_index, dw2_symtab_iter_next)
7350         (dw2_expand_marked_cus)
7351         (dw2_debug_names_iterator::find_vec_in_debug_names)
7352         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
7353         (create_debug_type_hash_table, init_cutu_and_read_dies)
7354         (partial_die_parent_scope, add_partial_enumeration)
7355         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
7356         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
7357         (read_import_statement, read_file_scope, create_dwo_cu_reader)
7358         (create_cus_hash_table, create_dwp_hash_table)
7359         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
7360         (dwarf2_rnglists_process, dwarf2_ranges_process)
7361         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
7362         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
7363         (handle_struct_member_die, process_structure_scope)
7364         (read_array_type, read_common_block, read_module_type)
7365         (read_tag_pointer_type, read_typedef, read_base_type)
7366         (read_subrange_type, load_partial_dies, partial_die_info::read)
7367         (partial_die_info::read, partial_die_info::read)
7368         (partial_die_info::read, read_checked_initial_length_and_offset)
7369         (dwarf2_string_attr, read_formatted_entries)
7370         (dwarf_decode_line_header)
7371         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
7372         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
7373         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
7374         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
7375         (get_signatured_type, get_DW_AT_signature_type)
7376         (decode_locdesc, file_file_name, consume_improper_spaces)
7377         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
7378         (dwarf_decode_macro_bytes, dwarf_decode_macros)
7379         (dwarf2_symbol_mark_computed, set_die_type)
7380         (read_attribute_value): Update.
7381         * stap-probe.c (handle_stap_probe, get_stap_base_address):
7382         Update.
7383         * dbxread.c (unknown_symtype_complaint)
7384         (lbrac_mismatch_complaint, repeated_header_complaint)
7385         (set_namestring, function_outside_compilation_unit_complaint)
7386         (read_dbx_symtab, process_one_symbol): Update.
7387         * gdbtypes.c (stub_noname_complaint): Update.
7388         * windows-nat.c (handle_unload_dll): Update.
7389         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
7390         (decode_base_type): Update.
7391         * xcoffread.c (bf_notfound_complaint, ef_complaint)
7392         (eb_complaint, record_include_begin, record_include_end)
7393         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
7394         (process_xcoff_symbol, read_symbol)
7395         (function_outside_compilation_unit_complaint)
7396         (scan_xcoff_symtab): Update.
7397         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
7398         * buildsym.c (finish_block_internal, make_blockvector)
7399         (end_symtab_get_static_block, augment_type_symtab): Update.
7400         * dtrace-probe.c (dtrace_process_dof)
7401         (dtrace_static_probe_ops::get_probes): Update.
7402         * complaints.h (struct complaint): Don't declare.
7403         (symfile_complaints): Remove.
7404         (complaint_internal): Remove "complaints" parameter.
7405         (complaint): Likewise.
7406         (clear_complaints): Likewise.
7407         * symfile.c (syms_from_objfile_1, finish_new_objfile)
7408         (reread_symbols): Update.
7409         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
7410         (dwarf2_frame_cache, decode_frame_entry): Update.
7411         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
7412         * objc-lang.c (lookup_objc_class, lookup_child_selector)
7413         (info_selectors_command): Update.
7414         * macrotab.c (macro_include, check_for_redefinition)
7415         (macro_undef): Update.
7416         * objfiles.c (filter_overlapping_sections): Update.
7417         * stabsread.c (invalid_cpp_abbrev_complaint)
7418         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
7419         (define_symbol, error_type, read_type, rs6000_builtin_type)
7420         (stabs_method_name_from_physname, read_member_functions)
7421         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
7422         (attach_fields_to_type, complain_about_struct_wipeout)
7423         (read_range_type, read_args, common_block_start)
7424         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
7425         Update.
7426         * mdebugread.c (index_complaint, unknown_ext_complaint)
7427         (basic_type_complaint, bad_tag_guess_complaint)
7428         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
7429         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
7430         (parse_procedure, parse_lines)
7431         (function_outside_compilation_unit_complaint)
7432         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
7433         (bad_tag_guess_complaint, reg_value_complaint): Update.
7434         * cp-support.c (demangled_name_complaint): Update.
7435         * macroscope.c (sal_macro_scope): Update.
7436         * dwarf-index-write.c (class debug_names): Update.
7437
7438 2018-05-23  Tom Tromey  <tom@tromey.com>
7439
7440         * complaints.c (clear_complaints): Remove "noisy" parameter.
7441         * complaints.h (clear_complaints): Update.
7442         * symfile.c (syms_from_objfile_1, finish_new_objfile)
7443         (reread_symbols): Update.
7444
7445 2018-05-23  Tom Tromey  <tom@tromey.com>
7446
7447         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
7448         SUBSEQUENT_MESSAGE.
7449         (vcomplaint, clear_complaints): Update.
7450         (symfile_explanations): Remove some messages.
7451
7452 2018-05-23  Tom Tromey  <tom@tromey.com>
7453
7454         * complaints.c (internal_complaint): Remove.
7455         * complaints.h (internal_complaint): Remove.
7456
7457 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
7458
7459         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
7460
7461 2018-05-22  Pedro Alves  <palves@redhat.com>
7462
7463         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
7464         (remote_fileio_badfd, remote_fileio_return_errno)
7465         (remote_fileio_return_success, remote_fileio_func_open)
7466         (remote_fileio_func_open, remote_fileio_func_close)
7467         (remote_fileio_func_read, remote_fileio_func_write)
7468         (remote_fileio_func_lseek, remote_fileio_func_rename)
7469         (remote_fileio_func_unlink, remote_fileio_func_stat)
7470         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
7471         (remote_fileio_func_isatty, remote_fileio_func_system): Add
7472         remote_target parameter.
7473         (remote_fio_func_map) <func>: Add remote_target parameter.
7474         (do_remote_fileio_request, remote_fileio_request):
7475         * remote-fileio.h (remote_fileio_request):
7476         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
7477         remote_target parameter.
7478         (remote_notif_process, handle_notification): Adjust to pass down
7479         the remote.
7480         (remote_notif_state_allocate): Add remote_target parameter.  Save
7481         it.
7482         * remote-notif.h (struct remote_target): Forward declare.
7483         (struct notif_client) <parse, ack, can_get_pending_events>: Add
7484         remote_target parameter.
7485         (struct remote_notif_state) <remote>: New field.
7486         (remote_notif_ack, remote_notif_parse): Add remote_target
7487         parameter.
7488         (remote_notif_state_allocate, remote_notif_state_allocate): Add
7489         remote_target parameter.
7490         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
7491         (threads_listing_context, rmt_thread_action, protocol_feature)
7492         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
7493         (packet_result, struct threads_listing_context, remote_state):
7494         Move definitions and declarations higher up.
7495         (remote_target) <~remote_target>: Declare.
7496         (remote_download_command_source, remote_file_put, remote_file_get)
7497         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
7498         (remote_hostio_pread_vFile, remote_hostio_send_command)
7499         (remote_hostio_set_filesystem, remote_hostio_open)
7500         (remote_hostio_close, remote_hostio_unlink, remote_state)
7501         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
7502         (get_memory_write_packet_size, get_memory_read_packet_size)
7503         (append_pending_thread_resumptions, remote_detach_1)
7504         (append_resumption, remote_resume_with_vcont)
7505         (add_current_inferior_and_thread, wait_ns, wait_as)
7506         (process_stop_reply, remote_notice_new_inferior)
7507         (process_initial_stop_replies, remote_add_thread)
7508         (btrace_sync_conf, remote_btrace_maybe_reopen)
7509         (remove_new_fork_children, kill_new_fork_children)
7510         (discard_pending_stop_replies, stop_reply_queue_length)
7511         (check_pending_events_prevent_wildcard_vcont)
7512         (discard_pending_stop_replies_in_queue, stop_reply)
7513         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
7514         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
7515         (remote_interrupt_as, remote_interrupt_ns)
7516         (remote_get_noisy_reply, remote_query_attached)
7517         (remote_add_inferior, remote_current_thread, get_current_thread)
7518         (set_thread, set_general_thread, set_continue_thread)
7519         (set_general_process, write_ptid)
7520         (remote_unpack_thread_info_response, remote_get_threadinfo)
7521         (parse_threadlist_response, remote_get_threadlist)
7522         (remote_threadlist_iterator, remote_get_threads_with_ql)
7523         (remote_get_threads_with_qxfer)
7524         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
7525         (get_offsets, remote_check_symbols, remote_supported_packet)
7526         (remote_query_supported, remote_packet_size)
7527         (remote_serial_quit_handler, remote_detach_pid)
7528         (remote_vcont_probe, remote_resume_with_hc)
7529         (send_interrupt_sequence, interrupt_query)
7530         (remote_notif_get_pending_events, fetch_register_using_p)
7531         (send_g_packet, process_g_packet, fetch_registers_using_g)
7532         (store_register_using_P, store_registers_using_G)
7533         (set_remote_traceframe, check_binary_download)
7534         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
7535         (remote_xfer_live_readonly_partial, remote_read_bytes)
7536         (remote_send_printf, remote_flash_write, readchar)
7537         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
7538         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
7539         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
7540         (extended_remote_disable_randomization, extended_remote_run)
7541         (send_environment_packet, extended_remote_environment_support)
7542         (extended_remote_set_inferior_cwd, remote_write_qxfer)
7543         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
7544         (packet_command): Now methods of ...
7545         (remote_target): ... this class.
7546         (m_remote_state) <remote_target>: New field.
7547         (struct remote_state) <stop_reply_queue,
7548         remote_async_inferior_event_token, wait_forever_enabled_p>: New
7549         fields.
7550         (remote_state::remote_state): Allocate stop_reply_queue.
7551         (remote_state): Delete global.
7552         (get_remote_state_raw): Delete.
7553         (remote_target::get_remote_state): Allocate m_remote_state on
7554         demand.
7555         (get_current_remote_target): New.
7556         (remote_ops, extended_remote_ops): Delete.
7557         (wait_forever_enabled_p, remote_async_inferior_event_token):
7558         Delete, moved to struct remote_state.
7559         (remote_target::close): Delete self.  Destruction bits split to
7560         ...
7561         (remote_target::~remote_target): ... this.
7562         (show_memory_packet_size): Adjust to use
7563         get_current_remote_target.
7564         (struct protocol_feature) <func>: Add remote_target parameter.
7565         All callers adjusted.
7566         (curr_quit_handler_target): New.
7567         (remote_serial_quit_handler): Reimplement.
7568         (remote_target::open_1): Adjust to use get_current_remote_target.
7569         Heap-allocate remote_target/extended_remote_target instances.
7570         (vcont_builder::vcont_builder): Add remote_target parameter, and
7571         save it in m_remote.  All callers adjusted.
7572         (vcont_builder::m_remote): New field.
7573         (vcont_builder::restart, vcont_builder::flush)
7574         (vcont_builder::push_action): Use it.
7575         (remote_target::commit_resume): Use it.
7576         (struct queue_iter_param) <remote>: New field.
7577         (remote_target::remove_new_fork_children): Fill in 'remote' field.
7578         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
7579         (check_pending_event_prevents_wildcard_vcont_callback)
7580         (remote_target::check_pending_events_prevent_wildcard_vcont)
7581         (remote_target::discard_pending_stop_replies)
7582         (remote_target::discard_pending_stop_replies_in_queue)
7583         (remote_target::remote_notif_remove_queued_reply): Fill in
7584         'remote' field.
7585         (remote_notif_get_pending_events): New.
7586         (remote_target::readchar, remote_target::remote_serial_write):
7587         Save/restore curr_quit_handler_target.
7588         (putpkt): New.
7589         (kill_new_fork_children): Fill in 'remote' field.
7590         (packet_command): Use get_current_remote_target, defer to
7591         remote_target method of same name.
7592         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
7593         parameter, and save it in m_remote.  All callers adjusted.
7594         (scoped_remote_fd::release): Use m_remote.
7595         (scoped_remote_fd::m_remote): New field.
7596         (remote_file_put, remote_file_get, remote_file_delete): Use
7597         get_current_remote_target, defer to remote_target method of same
7598         name.
7599         (remote_btrace_reset): Add remote_state paremeter.  Update all
7600         callers.
7601         (remote_async_inferior_event_handler). Pass down 'data'.
7602         (remote_new_objfile): Use get_current_remote_target.
7603         (remote_target::vcont_r_supported): New.
7604         (set_range_stepping): Use get_current_remote_target and
7605         remote_target::vcont_r_supported.
7606         (_initialize_remote): Don't allocate 'remote_state' and
7607         'stop_reply_queue' globals.
7608         * remote.h (struct remote_target): Forward declare.
7609         (getpkt, putpkt, remote_notif_get_pending_events): Add
7610         'remote_target' parameter.
7611
7612 2018-05-22  Pedro Alves  <palves@redhat.com>
7613
7614         * remote.c (vcont_builder): Now a class.  Make all data members
7615         private.
7616         (vcont_builder) <vcont_builder, restart, flush, push_action>:
7617         Declare methods.
7618         (vcont_builder_restart): Rename to ...
7619         (vcont_builder::restart): ... this.
7620         (vcont_builder_flush): Rename to ...
7621         (vcont_builder::flush): ... this.
7622         (vcont_builder_push_action): Rename to ...
7623         (vcont_builder::push_action): ... this.
7624         (remote_target::commit_resume): Adjust.
7625
7626 2018-05-22  Pedro Alves  <palves@redhat.com>
7627
7628         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
7629         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
7630         (get_fixed_memory_packet_size): New.
7631         (get_memory_packet_size): Use it.
7632         (set_memory_packet_size): Don't override the config size with
7633         DEFAULT_MAX_MEMORY_PACKET_SIZE.
7634         (show_memory_packet_size): Use get_fixed_memory_packet_size.
7635         Don't refer to get_memory_packet_size if not connected to a remote
7636         target.  Show "(default)" if configured size is 0.
7637
7638 2018-05-22  Pedro Alves  <palves@redhat.com>
7639
7640         * remote.c (remote_target::mourn_inferior): Move
7641         discard_pending_stop_replies call here from ...
7642         (_initialize_remote): ... here.
7643
7644 2018-05-22  Pedro Alves  <palves@redhat.com>
7645
7646         * remote.c (compare_section_command): Remove set_general_process
7647         call.
7648
7649 2018-05-22  Pedro Alves  <palves@redhat.com>
7650
7651         * remote.c (struct packet_reg, struct remote_arch_state):
7652         Move higher up in the file.
7653         (remote_state) <m_arch_states>: Store remote_arch_state values
7654         instead of remote_arch_state pointers.
7655         (remote_state::get_remote_arch_state): Adjust.
7656
7657 2018-05-22  Pedro Alves  <palves@redhat.com>
7658
7659         * remote.c: Include <unordered_map>.
7660         (remote_state): Now a class.
7661         (remote_state) <get_remote_arch_state>: Declare method.
7662         <get_remote_arch_state>: New field.
7663         (remote_arch_state) <remote_arch_state>: Declare ctor.
7664         <regs>: Now a unique_ptr.
7665         (remote_gdbarch_data_handle): Delete.
7666         (get_remote_arch_state): Delete.
7667         (remote_state::get_remote_arch_state): New.
7668         (get_remote_state): Adjust to call remote_state's
7669         get_remote_arch_state method.
7670         (init_remote_state): Delete, bits factored out to ...
7671         (remote_arch_state::remote_arch_state): ... this new method.
7672         (get_remote_packet_size, get_memory_packet_size)
7673         (process_g_packet, remote_target::fetch_registers)
7674         (remote_target::prepare_to_store, store_registers_using_G)
7675         (remote_target::store_registers, remote_target::get_trace_status):
7676         Adjust to call remote_state's method.
7677         (_initialize_remote): Remove reference to
7678         remote_gdbarch_data_handle.
7679
7680 2018-05-22  Pedro Alves  <palves@redhat.com>
7681
7682         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
7683         pread>: New method declarations.
7684         (remote_target::open_1): Adjust.
7685         (readahead_cache_invalidate): Rename to ...
7686         (readahead_cache::invalidate): ... this, and adjust to be a class
7687         method.
7688         (readahead_cache_invalidate_fd): Rename to ...
7689         (readahead_cache::invalidate_fd): ... this, and adjust to be a
7690         class method.
7691         (remote_hostio_pwrite): Adjust.
7692         (remote_hostio_pread_from_cache): Rename to ...
7693         (readahead_cache::pread): ... this, and adjust to be a class
7694         method.
7695         (remote_hostio_close): Adjust.
7696
7697 2018-05-22  Pedro Alves  <palves@redhat.com>
7698
7699         * remote.c (remote_hostio_close_cleanup): Delete.
7700         (class scoped_remote_fd): New.
7701         (remote_file_put, remote_file_get): Use it.
7702
7703 2018-05-22  Pedro Alves  <palves@redhat.com>
7704
7705         (struct vCont_action_support): Use bool and initialize all fields.
7706         (struct readahead_cache): Initialize all fields.
7707         (remote_state): Use bool and initialize all fields.
7708         (remote_state::remote_state, remote_state::~remote_state): New.
7709         (new_remote_state): Delete.
7710         (_initialize_remote): Use new to allocate remote_state.
7711
7712 2018-05-22  Pedro Alves  <palves@redhat.com>
7713             張俊芝  <zjz@zjz.name>
7714
7715         PR gdb/22973
7716         * c-exp.y: Include "c-support.h".
7717         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
7718         of tolower.  Use c_ident_is_alpha to scan names.
7719         * c-lang.c: Include "c-support.h".
7720         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
7721         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
7722         * c-support.h: New file, with bits factored out from ...
7723         * cp-name-parser.y: ... this file.
7724         Include "c-support.h".
7725         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
7726         c-support.h and renamed.
7727         (symbol_end, yylex): Adjust.
7728
7729 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7730
7731         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
7732         parameter type to CORE_ADDR.
7733         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
7734         parameter type in declaration to CORE_ADDR.
7735         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
7736         target_auxv_search to get AT_HWCAP and use the result to get the
7737         target description.
7738         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
7739         to CORE_ADDR. Remove the cast of the return value to unsigned
7740         long. Fix error predicate of target_auxv_search.
7741         (ppc_linux_nat_target::read_description): Change the type of the
7742         hwcap variable to CORE_ADDR.
7743
7744 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7745
7746         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
7747         if the size of fpscr is larger than 32 bits.
7748
7749 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7750
7751         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
7752         (ppc32_linux_vsxregmap): New global.
7753         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
7754         regcache_supply_regset, and regcache_collect_regset.
7755         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
7756         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
7757         (fetch_vsx_register, store_vsx_register): Remove.
7758         (fetch_vsx_registers): Add regno parameter. Get regset using
7759         ppc_linux_vsxregset. Use regset to supply registers.
7760         (store_vsx_registers): Add regno parameter. Get regset using
7761         ppc_linux_vsxregset. Use regset to collect registers.
7762         (fetch_register): Call fetch_vsx_registers instead of
7763         fetch_vsx_register.
7764         (store_register): Call store_vsx_registers instead of
7765         store_vsx_register.
7766         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
7767         new regno parameter.
7768         (store_ppc_registers): Call store_vsx_registers with -1 for the
7769         new regno parameter.
7770         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
7771         (ppc_collect_vsxregset): Remove.
7772
7773 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7774
7775         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
7776         offset fields.
7777         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
7778         for vector register offset fields.
7779         (ppc64_fbsd_reg_offsets): Likewise.
7780         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
7781         to vector register offset fields.
7782         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
7783         to vector register offset fields.
7784         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
7785         vector register offset fields.
7786         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
7787         initializers for vector register offset fields.
7788         (rs6000_aix64_reg_offsets): Likewise.
7789         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
7790         (ppc_supply_vrregset): Remove.
7791         (ppc_collect_vrregset): Remove.
7792         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
7793         (ppc_linux_vrregset) : New function.
7794         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
7795         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
7796         (ppc32_linux_vrregset): Remove.
7797         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
7798         and use result instead of ppc32_linux_vrregset.
7799         (ppc32_linux_reg_offsets): Remove initializers for vector register
7800         offset fields.
7801         (ppc64_linux_reg_offsets): Likewise.
7802         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
7803         * ppc-linux-nat.c: Include regset.h.
7804         (gdb_vrregset_t): Adjust comment to account for little-endian
7805         mode.
7806         (supply_vrregset, fill_vrregset): Remove.
7807         (fetch_altivec_register, store_altivec_register): Remove.
7808         (fetch_altivec_registers): Add regno parameter. Get regset using
7809         ppc_linux_vrregset. Use regset to supply registers.
7810         (store_altivec_registers): Add regno parameter. Get regset using
7811         ppc_linux_vrregset. Use regset to collect registers.
7812         (fetch_register): Call fetch_altivec_registers instead of
7813         fetch_altivec_register.
7814         (store_register): Call store_altivec_registers instead of
7815         store_altivec_register.
7816         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
7817         the new regno parameter.
7818         (store_ppc_registers): Call store_altivec_registers with -1 for
7819         the new regno parameter.
7820
7821 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7822
7823         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
7824         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
7825         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
7826         (gdb_vrregset_t): Change array type size to
7827         PPC_LINUX_SIZEOF_VRREGSET.
7828         (gdb_vsxregset_t): Change array type size to
7829         PPC_LINUX_SIZEOF_VSXREGSET.
7830         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
7831         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
7832         PPC_LINUX_SIZEOF_VSXREGSET.
7833
7834 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7835
7836         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
7837         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
7838         nat/ppc-linux.c.
7839         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
7840         ppc_linux_target_wordsize with tid.
7841         (ppc_linux_nat_target::read_description): Call ppc_linux_target
7842         wordsize with tid.
7843         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
7844         (ppc64_64bit_inferior_p): Add static and inline specifiers.
7845         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
7846         tid parameter. Remove static specifier.
7847         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
7848         (ppc_linux_target_wordsize): New declaration.
7849
7850 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7851
7852         * arch/ppc-linux-common.c: New file.
7853         * arch/ppc-linux-common.h: New file.
7854         * arch/ppc-linux-tdesc.h: New file.
7855         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
7856         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
7857         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
7858         arch/ppc-linux-tdesc.h.
7859         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
7860         arch/ppc-linux-tdesc.h.
7861         (ppc_linux_nat_target::read_description): Remove target
7862         description matching code. Fill a ppc_linux_features struct and
7863         call ppc_linux_match_description with it. Move comment about ISA
7864         2.05 to ppc-linux-common.c.
7865         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
7866         arch/ppc-linux-tdesc.h.
7867         (ppc_linux_core_read_description): Remove target description
7868         matching code. Fill a ppc_linux_features struct and call
7869         ppc_linux_match_description with it.
7870         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
7871         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
7872         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
7873         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
7874         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
7875         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
7876         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
7877         (tdesc_powerpc_e500l): Remove.
7878
7879 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
7880
7881         * ada-lang.c (catch_assert_command): Pass empty string instead
7882         of NULL for excep_string argument.
7883
7884 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
7885
7886         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
7887         the width of the requested register exceeds the width of the
7888         `ptrace' data type.
7889
7890 2018-05-21  Tom Tromey  <tom@tromey.com>
7891
7892         * printcmd.c (output_command): Remove.
7893         (output_command_const): Rename to output_command.
7894         * valprint.h (output_command): Rename from output_command_const.
7895         * tracepoint.c (trace_dump_actions): Call output_command.
7896
7897 2018-05-21  Tom Tromey  <tom@tromey.com>
7898
7899         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
7900         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
7901         * ada-lang.h (create_ada_exception_catchpoint): Update.
7902         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
7903         std::string.
7904         (create_excep_cond_exprs, ~ada_catchpoint)
7905         (should_stop_exception, print_one_exception)
7906         (print_mention_exception, print_recreate_exception): Update.
7907         (ada_get_next_arg): Remove.
7908         (catch_ada_exception_command_split): Use std::string.  Change type
7909         of "excep_string", "cond_string".
7910         (catch_ada_exception_command): Update.
7911         (create_ada_exception_catchpoint): Change type of excep_string.
7912         (ada_exception_sal): Remove excep_string parameter.
7913         (~ada_catchpoint): Remove.
7914
7915 2018-05-21  Tom Tromey  <tom@tromey.com>
7916
7917         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
7918         cleanup.
7919
7920 2018-05-21  Tom Tromey  <tom@tromey.com>
7921
7922         * ada-lang.c (ada_exception_message_1, ada_exception_message):
7923         Return unique_xmalloc_ptr.
7924         (print_it_exception): Update.
7925
7926 2018-05-21  Tom Tromey  <tom@tromey.com>
7927
7928         * tracepoint.c (trace_dump_actions): Use std::string.
7929
7930 2018-05-21  Tom Tromey  <tom@tromey.com>
7931
7932         * symfile.c (reread_symbols): Use std::string for original_name.
7933
7934 2018-05-21  Tom Tromey  <tom@tromey.com>
7935
7936         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
7937         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
7938         constructor.
7939
7940 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
7941
7942         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
7943         instance to...
7944         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
7945         * objfiles.c (get_objfile_bfd_data): Allocate
7946         objfile_per_bfd_storage with obstack_new when allocating on
7947         obstack.
7948
7949 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
7950
7951         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
7952         OBSTACK_ZALLOC.
7953         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
7954         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
7955         * mdebugread.c (mdebug_build_psymtabs): Likewise.
7956         (add_pending): Likewise.
7957         (parse_symbol): Likewise.
7958         (parse_partial_symbols): Likewise.
7959         (psymtab_to_symtab_1): Likewise.
7960         (new_psymtab): Likewise.
7961         (elfmdebug_build_psymtabs): Likewise.
7962         * minsyms.c (terminate_minimal_symbol_table): Likewise.
7963         * objfiles.c (get_objfile_bfd_data): Likewise.
7964         (objfile_register_static_link): Likewise.
7965         * psymtab.c (allocate_psymtab): Likewise.
7966         * stabsread.c (read_member_functions): Likewise.
7967         * xcoffread.c (xcoff_end_psymtab): Likewise.
7968
7969 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
7970
7971         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
7972         compiler supports std::is_trivially_constructible.
7973         * common/poison.h: Include obstack.h.
7974         (IsMallocable): Define to is_trivially_constructible if the
7975         compiler supports it, define to true_type otherwise.
7976         (xobnew): New.
7977         (XOBNEW): Redefine.
7978         (xobnewvec): New.
7979         (XOBNEWVEC): Redefine.
7980         * gdb_obstack.h (obstack_zalloc): New.
7981         (OBSTACK_ZALLOC): Redefine.
7982         (obstack_calloc): New.
7983         (OBSTACK_CALLOC): Redefine.
7984         (obstack_new): New.
7985         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
7986         (gdbarch_obstack): New declaration in gdbarch.h, definition in
7987         gdbarch.c.
7988         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
7989         obstack_calloc/obstack_zalloc.
7990         (gdbarch_obstack_zalloc): Remove.
7991         * target-descriptions.c (tdesc_data_init): Use obstack_new.
7992
7993 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7994
7995         * stack.c (backtrace_command_1): Remove useless variable int i.
7996
7997 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7998
7999         * stack.c (print_frame_info): Fix comment.
8000
8001 2018-05-18  Tom Tromey  <tom@tromey.com>
8002
8003         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
8004         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
8005         (~dwarf2_per_objfile): Update
8006         (dwarf2_get_dwz_file): Use new.
8007         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
8008         unique_ptr.
8009
8010 2018-05-18  Tom Tromey  <tom@tromey.com>
8011
8012         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
8013         unique_ptr.
8014         * dwarf2read.c (struct dwp_file): Add constructor and
8015         initializers.
8016         (open_and_init_dwp_file): Return a unique_ptr.
8017         (dwarf2_per_objfile, create_dwp_hash_table)
8018         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
8019         (lookup_dwo_unit_in_dwp): Update.
8020         (open_and_init_dwp_file, get_dwp_file): Update.
8021
8022 2018-05-18  Tom Tromey  <tom@tromey.com>
8023
8024         * dwarf2read.c (dwarf2_per_objfile): Update.
8025         (struct mapped_index): Add initializers.
8026         (dwarf2_read_index): Use new.
8027         (dw2_symtab_iter_init): Update.
8028         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
8029         unique_ptr.
8030
8031 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8032
8033         * dwarf2read.c (mapped_index) <total_size>: Remove.
8034
8035 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8036
8037         * unittests/format_pieces-selftests.c (test_format_specifier):
8038         Add ARI comments.
8039
8040 2018-05-18  Tom Tromey  <tom@tromey.com>
8041
8042         * c-typeprint.c (maybe_print_hole): New function.
8043         (c_print_type_struct_field_offset): Update.
8044         (c_type_print_base_struct_union): Call maybe_print_hole.
8045
8046 2018-05-17  Keith Seitz  <keiths@redhat.com>
8047
8048         * breakpoint.c (build_bpstat_chain): New function, moved from
8049         bpstat_stop_status.
8050         (bpstat_stop_status): Add optional parameter, `stop_chain'.
8051         If no stop chain is passed, call build_bpstat_chain to build it.
8052         * breakpoint.h (build_bpstat_chain): Declare.
8053         (bpstat_stop_status): Move documentation here from breakpoint.c.
8054         * infrun.c (handle_signal_stop): Before eliding inlined frames,
8055         build the stop chain and pass it to skip_inline_frames.
8056         Pass this stop chain to bpstat_stop_status.
8057         * inline-frame.c: Include breakpoint.h.
8058         (stopped_by_user_bp_inline_frame): New function.
8059         (skip_inline_frames): Add parameter `stop_chain'.
8060         Move documention to inline-frame.h.
8061         If non-NULL, use stopped_by_user_bp_inline_frame to determine
8062         whether the frame should be elided.
8063         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
8064         Add moved documentation and update for new parameter.
8065
8066 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
8067
8068         PR cli/14975
8069         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
8070         unittests/format_pieces-selftests.c.
8071         * common/format.h (format_piece) <operator==>: New.
8072         (format_pieces) <operator[]>: Remove.
8073         * common/format.c (format_pieces::format_pieces): Handle \e.
8074         * unittests/format_pieces-selftests.c: New.
8075
8076 2018-05-17  Tom Tromey  <tom@tromey.com>
8077
8078         PR symtab/23010:
8079         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
8080         (dw2_instantiate_symtab): Add skip_partial parameter.
8081         (dw2_find_last_source_symtab, dw2_map_expand_apply)
8082         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
8083         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
8084         (dw2_expand_symtabs_matching_one)
8085         (dw2_find_pc_sect_compunit_symtab)
8086         (dw2_debug_names_lookup_symbol)
8087         (dw2_debug_names_expand_symtabs_for_function): Update.
8088         (init_cutu_and_read_dies): Add skip_partial parameter.
8089         (process_psymtab_comp_unit, build_type_psymtabs_1)
8090         (process_skeletonless_type_unit, load_partial_comp_unit)
8091         (psymtab_to_symtab_1): Update.
8092         (load_full_comp_unit): Add skip_partial parameter.
8093         (process_imported_unit_die, dwarf2_read_addr_index)
8094         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
8095         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
8096         (read_signatured_type): Update.
8097
8098 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
8099
8100         * value.c (release_value): Remove unused variable.
8101         (record_latest_value): Likewise.
8102         (access_value_history): Likewise.
8103         (preserve_values): Likewise.
8104
8105 2018-05-17  Tom Tromey  <tom@tromey.com>
8106
8107         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
8108         Initialize.
8109
8110 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
8111
8112         PR gdb/22286
8113         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
8114         Also handle registers whose width is not a multiple of
8115         PTRACE_TYPE_RET.
8116         (linux_nat_trad_target::store_register): Likewise.
8117
8118 2018-05-16  Tom Tromey  <tom@tromey.com>
8119
8120         * gdbcore.h (core_bfd): Redefine.
8121         * corelow.c (core_target::close): Update.
8122         (core_target_open): Update.
8123         * progspace.h (struct program_space) <cbfd>: Now a
8124         gdb_bfd_ref_ptr.
8125
8126 2018-05-16  Tom Tromey  <tom@tromey.com>
8127
8128         PR cli/19551:
8129         * symfile-add-flags.h (enum symfile_add_flags)
8130         <SYMFILE_NOT_FILENAME>: New constant.
8131         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
8132         objfile name from BFD.
8133         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
8134         * minidebug.c (find_separate_debug_file_in_section): Put
8135         ".gnu_debugdata" into BFD's file name.
8136
8137 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
8138
8139         * regcache.c (regcache_read_ftype, regcache_write_ftype):
8140         Remove.
8141
8142 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
8143
8144         PR binutils/21446
8145         * aarch64-tdep.c (aarch64_analyze_prologue,
8146         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
8147         Indicate not interested in errors.
8148
8149 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8150
8151         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
8152         Supply the MIPS_ZERO_REGNUM register.
8153
8154 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8155
8156         * mips-tdep.c (mask_address_var): Make variable static.
8157
8158 2018-05-14  Tom Tromey  <tom@tromey.com>
8159
8160         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
8161
8162 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
8163
8164         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
8165         FXSAVE_ADDR for the mxcsr register.
8166
8167 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
8168
8169         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
8170
8171 2018-05-11  Pedro Alves  <palves@redhat.com>
8172
8173         * corelow.c (core_target) <core_target>: No longer inline.
8174         Initialize m_core_gdbarch, m_core_vec and build the section table
8175         here.
8176         <~core_target>: New.
8177         <core_gdbarch, get_core_register_section>: New methods.
8178         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
8179         factored out from ...
8180         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
8181         (core_ops): Delete.
8182         (sniff_core_bfd): Add gdbarch parameter.
8183         (core_close): Delete, merged into ...
8184         (core_target::close): ... here.  Delete self.
8185         (core_close_cleanup): Delete.
8186         (core_target_open): Allocate a core_target on the heap.  Use a
8187         unique_ptr instead of a cleanup.  Bits moved into the core_target
8188         ctor.  Adjust to use core_target methods instead of globals.
8189         (get_core_register_section): Rename to ...
8190         (core_target::get_core_register_section): ... this and adjust.
8191         (struct get_core_registers_cb_data): New.
8192         (get_core_registers_cb): Use it.  Use bool.
8193         (core_target::fetch_registers, core_target::files_info)
8194         (core_target::xfer_partial, core_target::read_description)
8195         (core_target::pid_to, core_target::thread_name): Adjust to
8196         reference class fields instead of globals.
8197         * target.h (struct target_ops_deleter, target_ops_up): New.
8198
8199 2018-05-11  Pedro Alves  <palves@redhat.com>
8200
8201         * corefile.c (core_file_command): Move to corelow.c.
8202         * corelow.c (the_core_target): Delete.
8203         (core_file_command): Moved from corefile.c.  Check exec_bfd
8204         instead of the_core_target.  Use target_detach instead of calling
8205         into the_core_target directly.
8206         (maybe_say_no_core_file_now): New.
8207         (core_target::detach): Use it.
8208         (_initialize_corelow): Remove references to the_core_target.
8209         * gdbcore.h (the_core_target): Delete.
8210
8211 2018-05-11  Tom Tromey  <tromey@redhat.com>
8212             Pedro Alves  <palves@redhat.com>
8213
8214         * corefile.c (core_bfd): Remove.
8215         * gdbcore.h (core_bfd): Now a macro.
8216         * progspace.h (struct program_space) <cbfd>: New field.
8217
8218 2018-05-11  Tom Tromey  <tom@tromey.com>
8219
8220         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
8221         gdb::def_vector.
8222
8223 2018-05-10  Tom Tromey  <tom@tromey.com>
8224
8225         * configure: Rebuild.
8226         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
8227
8228 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
8229
8230         PR server/23158:
8231         * regformats/regdat.sh: Adjust script, following the addition
8232         of the new expedite_regs parameter to init_target_desc.
8233
8234 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
8235     
8236         PR gdb/23127
8237         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
8238         set_gdbarch_significant_addr_bit.
8239         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
8240         set_gdbarch_significant_addr_bit.
8241         * utils.c (address_significant): Update to sign extend addr.
8242
8243 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
8244
8245         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
8246         (xtensa_linux_init_abi): Limit tdep->num_regs by
8247         tdep->num_nopriv_regs.
8248         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
8249         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
8250         not initialized.
8251
8252 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
8253
8254         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
8255
8256 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
8257
8258         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
8259         (I387_MXCSR_INIT_VAL): New constant.
8260         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
8261         buffer if it was supplied by the inferior.
8262         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
8263         (i387_xsave_get_clear_bv): New function.
8264         (i387_supply_xsave): Only read x87 control registers from the
8265         xsave buffer if the feature is enabled, and the state will have
8266         been written, otherwise, provide a suitable default.
8267         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
8268         including x87 control registers.  Update control registers if they
8269         have changed from the default value, and mark features as enabled
8270         as required.
8271         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
8272
8273 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
8274
8275         * spu-tdep.c (info_spu_event_command): Fix output formatting.
8276
8277 2018-05-07  Tom Tromey  <tom@tromey.com>
8278
8279         * configure: Rebuild.
8280         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
8281
8282 2018-05-07  Tom Tromey  <tom@tromey.com>
8283
8284         PR tdep/20362:
8285         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
8286         bit.  Use correct value for VDIV.
8287
8288 2018-05-04  Tom Tromey  <tom@tromey.com>
8289
8290         * configure: Rebuild.
8291         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
8292
8293 2018-05-04  Tom Tromey  <tom@tromey.com>
8294
8295         * linux-record.c (record_linux_system_call) <case
8296         RECORD_SYS_RECVFROM>: Add "break".
8297
8298 2018-05-04  Tom Tromey  <tom@tromey.com>
8299
8300         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
8301         Add missing "break".
8302         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
8303         Add missing "break".
8304
8305 2018-05-04  Tom Tromey  <tom@tromey.com>
8306
8307         * rs6000-tdep.c (ppc_process_record_op4)
8308         (ppc_process_record_op63): Add fall-through comment.
8309
8310 2018-05-04  Tom Tromey  <tom@tromey.com>
8311
8312         * i386-tdep.c (i386_process_record): Add fall-through comment.
8313
8314 2018-05-04  Tom Tromey  <tom@tromey.com>
8315
8316         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
8317         comment.
8318
8319 2018-05-04  Tom Tromey  <tom@tromey.com>
8320
8321         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
8322         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
8323         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
8324         comment.
8325         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
8326         comment.
8327         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
8328         comment.
8329
8330 2018-05-04  Tom Tromey  <tom@tromey.com>
8331
8332         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
8333
8334 2018-05-04  Tom Tromey  <tom@tromey.com>
8335
8336         * s390-tdep.c (s390_process_record): Fix fall-through comments.
8337         * xcoffread.c (scan_xcoff_symtab): Move comment later.
8338         * symfile.c (section_is_mapped): Fix fall-through comment.
8339         * stabsread.c (define_symbol, read_member_functions): Fix
8340         fall-through comment.
8341         * s390-linux-tdep.c (s390_process_record): Fix fall-through
8342         comment.
8343         * remote.c (remote_wait_as): Fix fall-through comment.
8344         * p-exp.y (yylex): Fix fall-through comment.
8345         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
8346         comment.
8347         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
8348         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
8349         * jv-exp.y (yylex): Fix fall-through comment.
8350         * go-exp.y (lex_one_token): Fix fall-through comment.
8351         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
8352         fall-through comment.
8353         * f-exp.y (yylex): Fix fall-through comment.
8354         * dwarf2read.c (process_die): Fix fall-through comments.
8355         * dbxread.c (process_one_symbol): Fix fall-through comment.
8356         * d-exp.y (lex_one_token): Fix fall-through comment.
8357         * cp-name-parser.y (yylex): Fix fall-through comment.
8358         * coffread.c (coff_symtab_read): Fix fall-through comment.
8359         * c-exp.y (lex_one_token): Fix fall-through comment.
8360         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
8361         comment.
8362         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
8363         comment.
8364
8365 2018-05-04  Tom Tromey  <tom@tromey.com>
8366
8367         PR python/22730:
8368         * NEWS: Mention gdb.execute change.
8369         * gdbcmd.h (execute_control_command): Don't declare.
8370         * python/python.c (execute_gdb_command): Use read_command_lines_1,
8371         execute_control_commands, execute_control_commands_to_string.
8372         * cli/cli-script.h (execute_control_commands)
8373         (execute_control_commands_to_string): Declare.
8374         (execute_control_command): Add from_tty parameter.
8375         * cli/cli-script.c (execute_control_commands)
8376         (execute_control_commands_to_string): New functions.
8377         (execute_user_command): Use execute_control_commands.
8378         (execute_control_command_1): Add "from_tty" parameter.  Update.
8379         (execute_control_command): Likewise.
8380
8381 2018-05-04  Tom Tromey  <tom@tromey.com>
8382
8383         PR python/22731:
8384         * NEWS: Mention that breakpoint commands are writable.
8385         * python/py-breakpoint.c (bppy_set_commands): New function.
8386         (breakpoint_object_getset) <"commands">: Use it.
8387
8388 2018-05-04  Tom Tromey  <tom@tromey.com>
8389
8390         * tracepoint.c (actions_command): Update.
8391         * mi/mi-cmd-break.c (mi_command_line_array)
8392         (mi_command_line_array_cnt, mi_command_line_array_ptr)
8393         (mi_read_next_line): Remove.
8394         (mi_cmd_break_commands): Update.
8395         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
8396         function_view.
8397         * cli/cli-script.c (get_command_line): Update.
8398         (process_next_line): Use function_view.  Constify.
8399         (recurse_read_control_structure, read_command_lines)
8400         (read_command_lines_1): Change argument types to function_view.
8401         (do_define_command, document_command): Update.
8402         * breakpoint.h (check_tracepoint_command): Don't declare.
8403         * breakpoint.c (check_tracepoint_command): Remove.
8404         (commands_command_1, create_tracepoint_from_upload): Update.
8405
8406 2018-05-04  Tom Tromey  <tom@tromey.com>
8407
8408         PR gdb/11750:
8409         * cli/cli-script.h (enum command_control_type) <define_control>:
8410         New constant.
8411         * cli/cli-script.c (multi_line_command_p): Handle define_control.
8412         (build_command_line, execute_control_command_1)
8413         (process_next_line): Likewise.
8414         (do_define_command): New function, extracted from define_command.
8415         (define_command): Use it.
8416
8417 2018-05-04  Tom Tromey  <tom@tromey.com>
8418
8419         * tracepoint.c (actions_command): Update.
8420         * cli/cli-script.h (read_command_lines): Update.
8421         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
8422         (MAX_TMPBUF): Remove define.
8423         (define_command): Use string_printf.
8424         (document_command): Likewise.
8425         * breakpoint.c (commands_command_1): Update.
8426
8427 2018-05-04  Tom Tromey  <tom@tromey.com>
8428
8429         * top.c (execute_command): Update.
8430         * cli/cli-script.h (print_command_lines): Now varargs.
8431         * cli/cli-script.c (print_command_lines): Now varargs.
8432         (execute_control_command_1) <case while_control, case if_control>:
8433         Update.
8434
8435 2018-05-04  Tom Tromey  <tom@tromey.com>
8436
8437         * tracepoint.c (all_tracepoint_actions): Rename from
8438         all_tracepoint_actions_and_cleanup.  Change return type.
8439         (actions_command, encode_actions_1, encode_actions)
8440         (trace_dump_actions, tdump_command): Update.
8441         * remote.c (remote_download_command_source): Update.
8442         * python/python.c (gdbpy_eval_from_control_command)
8443         (python_command, python_interactive_command): Update.
8444         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
8445         * guile/guile.c (guile_command)
8446         (gdbscm_eval_from_control_command, guile_command): Update.
8447         * compile/compile.c (compile_code_command)
8448         (compile_print_command, compile_to_object): Update.
8449         * cli/cli-script.h (struct command_lines_deleter): New.
8450         (counted_command_line): New typedef.
8451         (struct command_line): Add constructor, destructor.
8452         <body_list>: Remove.
8453         <body_list_0, body_list_1>: New members.
8454         (command_line_up): Remove typedef.
8455         (read_command_lines, read_command_lines_1, get_command_line):
8456         Update.
8457         (copy_command_lines): Don't declare.
8458         * cli/cli-script.c (build_command_line): Use "new".
8459         (get_command_line): Return counted_command_line.
8460         (print_command_lines, execute_user_command)
8461         (execute_control_command_1, while_command, if_command): Update.
8462         (realloc_body_list): Remove.
8463         (process_next_line, recurse_read_control_structure): Update.
8464         (read_command_lines, read_command_lines_1): Return counted_command_line.
8465         (free_command_lines): Use "delete".
8466         (copy_command_lines): Remove.
8467         (define_command, document_command, show_user_1): Update.
8468         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
8469         a counted_command_line.
8470         * breakpoint.h (counted_command_line): Remove typedef.
8471         (breakpoint_set_commands): Update.
8472         * breakpoint.c (check_no_tracepoint_commands)
8473         (validate_commands_for_breakpoint): Update.
8474         (breakpoint_set_commands): Change commands to be a
8475         counted_command_line.
8476         (commands_command_1, update_dprintf_command_list)
8477         (create_tracepoint_from_upload): Update.
8478
8479 2018-05-04  Tom Tromey  <tom@tromey.com>
8480
8481         * cli/cli-decode.h (cmd_list_element): New constructor.
8482         (~cmd_list_element): New destructor.
8483         (struct cmd_list_element): Add initializers.
8484         * cli/cli-decode.c (do_add_cmd): Use "new".
8485         (delete_cmd): Use "delete".
8486
8487 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
8488             Pedro Alves <palves@redhat.com>
8489
8490         PR breakpoints/19806 and support for PR external/20207.
8491         * NEWS: Mention Aarch64 watchpoint improvements.
8492         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
8493         watchpoints and PR external/20207 watchpoints.
8494         * nat/aarch64-linux-hw-point.c
8495         (kernel_supports_any_contiguous_range): New.
8496         (aarch64_watchpoint_offset): New.
8497         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
8498         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
8499         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
8500         (aarch64_align_watchpoint): New parameters aligned_offset_p and
8501         next_addr_orig_p.  Support PR external/20207 watchpoints.
8502         (aarch64_downgrade_regs): New.
8503         (aarch64_dr_state_insert_one_point): New parameters offset and
8504         addr_orig.
8505         (aarch64_dr_state_remove_one_point): Likewise.
8506         (aarch64_handle_breakpoint): Update caller.
8507         (aarch64_handle_aligned_watchpoint): Likewise.
8508         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
8509         aligned_offset.
8510         (aarch64_linux_set_debug_regs): Remove const from state.  Call
8511         aarch64_downgrade_regs.
8512         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
8513         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
8514         (DR_CONTROL_MASK): ... this.
8515         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
8516         (unsigned int aarch64_watchpoint_offset): New prototype.
8517         (aarch64_linux_set_debug_regs): Remove const from state.
8518         * utils.c (align_up, align_down): Move to ...
8519         * common/common-utils.c (align_up, align_down): ... here.
8520         * utils.h (align_up, align_down): Move to ...
8521         * common/common-utils.h (align_up, align_down): ... here.
8522
8523 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
8524
8525         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
8526         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
8527         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
8528         Re-implement to match the ABI as summarized in GCC's
8529         gcc/config/sparc/sparc.c.  All callers updated.
8530         (sparc32_store_arguments): Remove assertion.
8531
8532 2018-05-04  Tom Tromey  <tom@tromey.com>
8533
8534         * printcmd.c: Don't include tui.h.
8535         (decode_format): Use skip_spaces.
8536
8537 2018-05-04  Tom Tromey  <tom@tromey.com>
8538
8539         PR gdb/22619:
8540         * printcmd.c (last_count): New global.
8541         (x_command): Use saved count when repeating.
8542
8543 2018-05-04  Tom Tromey  <tom@tromey.com>
8544
8545         * nto-procfs.c (do_closedir_cleanup): Remove.
8546         (procfs_pidlist): Use gdb_dir_up.
8547         * procfs.c (do_closedir_cleanup): Remove.
8548         (proc_update_threads): Use gdb_dir_up.
8549         * common/filestuff.h (struct gdb_dir_deleter): New.
8550         (gdb_dir_up): New typedef.
8551
8552 2018-05-04  Tom Tromey  <tom@tromey.com>
8553
8554         * ada-lang.c (print_mention_exception): Use std::string.
8555
8556 2018-05-04  Tom Tromey  <tom@tromey.com>
8557
8558         * ada-lang.c (create_excep_cond_exprs): Update.
8559         (ada_exception_catchpoint_cond_string): Use std::string.
8560
8561 2018-05-04  Tom Tromey  <tom@tromey.com>
8562
8563         * ada-lang.c (xget_renaming_scope): Return std::string.
8564         (old_renaming_is_invisible): Update.
8565
8566 2018-05-04  Tom Tromey  <tom@tromey.com>
8567
8568         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
8569         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
8570
8571 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
8572
8573         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
8574
8575 2018-05-04  Tom Tromey  <tom@tromey.com>
8576
8577         * remote.c (remote_query_supported_append): Change type.
8578         (remote_check_symbols): Update.
8579
8580 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
8581
8582         PR gdb/11420
8583         * configure.ac: Prepend libpython.
8584         * python/python-config.py: Likewise.
8585         * configure: Regenerate.
8586
8587 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
8588
8589         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
8590
8591 2018-05-03  Pedro Alves  <palves@redhat.com>
8592
8593         * s390-linux-nat.c
8594         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
8595         override.  Write 'true' instead of '1'.
8596         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
8597         declaration.
8598
8599 2018-05-02  Pedro Alves  <palves@redhat.com>
8600
8601         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
8602         add_inf_child_target.
8603         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
8604         add_inf_child_target.
8605         * aix-thread.c (aix_thread_target_info): New.
8606         (aix_thread_target) <shortname, longname, doc>: Delete.
8607         <info>: New.
8608         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
8609         add_inf_child_target.
8610         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
8611         add_inf_child_target.
8612         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
8613         add_inf_child_target.
8614         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
8615         add_inf_child_target.
8616         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
8617         add_inf_child_target.
8618         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
8619         add_inf_child_target.
8620         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
8621         add_inf_child_target.
8622         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
8623         add_inf_child_target.
8624         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
8625         add_inf_child_target.
8626         * bfd-target.c (target_bfd_target_info): New.
8627         (target_bfd) <shortname, longname, doc>: Delete.
8628         <info>: New.
8629         * bsd-kvm.c (bsd_kvm_target_info): New.
8630         (bsd_kvm_target) <shortname, longname, doc>: Delete.
8631         <info>: New.
8632         (bsd_kvm_target::open): Rename to ...
8633         (bsd_kvm_target_open): ... this.  Adjust.
8634         * bsd-uthread.c (bsd_uthread_target_info): New.
8635         (bsd_uthread_target) <shortname, longname, doc>: Delete.
8636         <info>: New.
8637         * corefile.c (core_file_command): Adjust.
8638         * corelow.c (core_target_info): New.
8639         (core_target) <shortname, longname, doc>: Delete.
8640         <info>: New.
8641         (core_target::open): Rename to ...
8642         (core_target_open): ... this.  Adjust.
8643         * ctf.c (ctf_target_info): New.
8644         (ctf_target) <shortname, longname, doc>: Delete.
8645         <info>: New.
8646         (ctf_target::open): Rename to ...
8647         (ctf_target_open): ... this.
8648         (_initialize_ctf): Adjust.
8649         * exec.c (exec_target_info): New.
8650         (exec_target) <shortname, longname, doc>: Delete.
8651         <info>: New.
8652         (exec_target::open): Rename to ...
8653         (exec_target_open): ... this.
8654         * gdbcore.h (core_target_open): Declare.
8655         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
8656         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
8657         add_inf_child_target.
8658         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
8659         add_inf_child_target.
8660         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
8661         add_inf_child_target.
8662         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
8663         add_inf_child_target.
8664         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
8665         add_inf_child_target.
8666         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
8667         add_inf_child_target.
8668         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
8669         add_inf_child_target.
8670         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
8671         add_inf_child_target.
8672         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
8673         add_inf_child_target.
8674         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
8675         add_inf_child_target.
8676         * inf-child.c (inf_child_target_info): New.
8677         (inf_child_target::info): New.
8678         (inf_child_open_target): Remove 'target' parameter.  Use
8679         get_native_target instead.
8680         (inf_child_target::open): Delete.
8681         (add_inf_child_target): New.
8682         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
8683         Delete.
8684         <info>: New.
8685         (add_inf_child_target): Declare.
8686         (inf_child_open_target): Declare.
8687         * linux-thread-db.c (thread_db_target_info): New.
8688         (thread_db_target) <shortname, longname, doc>: Delete.
8689         <info>: New.
8690         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
8691         add_inf_child_target.
8692         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
8693         add_inf_child_target.
8694         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
8695         add_inf_child_target.
8696         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
8697         add_inf_child_target.
8698         * make-target-delegates (print_class): Adjust.
8699         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
8700         add_inf_child_target.
8701         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
8702         add_inf_child_target.
8703         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
8704         add_inf_child_target.
8705         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
8706         add_inf_child_target.
8707         * nto-procfs.c (nto_native_target_info): New.
8708         (nto_procfs_target_native) <shortname, longname, doc>:
8709         Delete.
8710         <info>: New.
8711         (nto_procfs_target_info): New.
8712         (nto_procfs_target_procfs) <shortname, longname, doc>:
8713         Delete.
8714         <info>: New.
8715         (init_procfs_targets): Adjust.
8716         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
8717         add_inf_child_target.
8718         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
8719         add_inf_child_target.
8720         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
8721         add_inf_child_target.
8722         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
8723         add_inf_child_target.
8724         * ravenscar-thread.c (ravenscar_target_info): New.
8725         (ravenscar_thread_target) <shortname, longname, doc>:
8726         Delete.
8727         <info>: New.
8728         * record-btrace.c (record_btrace_target_info):
8729         (record_btrace_target) <shortname, longname, doc>: Delete.
8730         <info>: New.
8731         (record_btrace_target::open): Rename to ...
8732         (record_btrace_target_open): ... this.  Adjust.
8733         * record-full.c (record_longname, record_doc): New.
8734         (record_full_base_target) <shortname, longname, doc>: Delete.
8735         <info>: New.
8736         (record_full_target_info): New.
8737         (record_full_target): <shortname>: Delete.
8738         <info>: New.
8739         (record_full_core_open_1, record_full_open_1): Update comments.
8740         (record_full_base_target::open): Rename to ...
8741         (record_full_open): ... this.
8742         (cmd_record_full_restore): Update.
8743         (_initialize_record_full): Update.
8744         * remote-sim.c (remote_sim_target_info): New.
8745         (gdbsim_target) <shortname, longname, doc>: Delete.
8746         <info>: New.
8747         (gdbsim_target::open): Rename to ...
8748         (gdbsim_target_open): ... this.
8749         (_initialize_remote_sim): Adjust.
8750         * remote.c (remote_doc): New.
8751         (remote_target_info): New.
8752         (remote_target) <shortname, longname, doc>: Delete.
8753         <info>: New.
8754         (extended_remote_target_info): New.
8755         (extended_remote_target) <shortname, longname, doc>: Delete.
8756         <info>: New.
8757         (remote_target::open_1): Make static.  Adjust.
8758         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
8759         * s390-linux-nat.c (_initialize_s390_nat): Use
8760         add_inf_child_target.
8761         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
8762         add_inf_child_target.
8763         * sol-thread.c (thread_db_target_info): New.
8764         (sol_thread_target) <shortname, longname, doc>: Delete.
8765         <info>: New.
8766         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
8767         add_inf_child_target.
8768         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
8769         add_inf_child_target.
8770         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
8771         add_inf_child_target.
8772         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
8773         add_inf_child_target.
8774         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
8775         add_inf_child_target.
8776         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
8777         add_inf_child_target.
8778         * spu-linux-nat.c (_initialize_spu_nat): Use
8779         add_inf_child_target.
8780         * spu-multiarch.c (spu_multiarch_target_info): New.
8781         (spu_multiarch_target) <shortname, longname, doc>: Delete.
8782         <info>: New.
8783         * target-delegates.c: Regenerate.
8784         * target.c: Include <unordered_map>.
8785         (target_ops_p): Delete.
8786         (DEF_VEC_P(target_ops_p)): Delete.
8787         (target_factories): New.
8788         (test_target_info): New.
8789         (test_target_ops::info): New.
8790         (open_target): Adjust to use target_factories.
8791         (add_target_with_completer): Rename to ...
8792         (add_target): ... this.  Change prototype.  Register target_info
8793         and open callback in target_factories.  Register target_info in
8794         command context instead of target_ops.
8795         (add_target): Delete old implementation.
8796         (add_deprecated_target_alias): Change prototype.  Adjust.
8797         (the_native_target): New.
8798         (set_native_target, get_native_target): New.
8799         (find_default_run_target): Use the_native_target.
8800         (find_attach_target, find_run_target): Simplify.
8801         (target_ops::open): Delete.
8802         (dummy_target_info): New.
8803         (dummy_target::shortname, dummy_target::longname)
8804         (dummy_target::doc): Delete.
8805         (dummy_target::info): New.
8806         (debug_target::shortname, debug_target::longname)
8807         (debug_target::doc): Delete.
8808         (debug_target::info): New.
8809         * target.h (struct target_info): New.
8810         (target_ops::~target_ops): Add comment.
8811         (target_ops::info): New.
8812         (target_ops::shortname, target_ops::longname, target_ops::doc): No
8813         longer virtual.  Implement in terms of target_info.
8814         (set_native_target, get_native_target): Declare.
8815         (target_open_ftype): New.
8816         (add_target, add_target_with_completer)
8817         (add_deprecated_target_alias): Change prototype.
8818         (test_target) <shortname, longname, doc>: Delete.
8819         <info>: New.
8820         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
8821         add_inf_child_target.
8822         * tracefile-tfile.c (tfile_target_info): New.
8823         (tfile_target) <shortname, longname, doc>: Delete.
8824         <info>: New.
8825         (tfile_target::open): Rename to ...
8826         (tfile_target_open): ... this.
8827         (_initialize_tracefile_tfile): Adjust.
8828         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
8829         add_inf_child_target.
8830         * windows-nat.c (_initialize_windows_nat): Use
8831         add_inf_child_target.
8832         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
8833         add_inf_child_target.
8834
8835 2018-05-02  Pedro Alves  <palves@redhat.com>
8836
8837         * linux-nat.h (linux_nat_target) <low_new_thread,
8838         low_delete_thread, low_new_fork, low_forget_process,
8839         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
8840         New virtual methods.
8841         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
8842         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
8843         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
8844         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
8845         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
8846         Delete.
8847         * linux-fork.c (delete_fork): Adjust to call low method.
8848         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
8849         (linux_nat_new_fork, linux_nat_forget_process_hook)
8850         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
8851         (linux_nat_status_is_event):
8852         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
8853         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
8854         to call low method.
8855         (sigtrap_is_event): Rename to ...
8856         (linux_nat_target::low_status_is_event): ... this.
8857         (linux_nat_set_status_is_event): Delete.
8858         (save_stop_reason, linux_nat_wait_1)
8859         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
8860         low methods.
8861         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
8862         (linux_nat_set_new_fork, linux_nat_set_forget_process)
8863         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
8864         (linux_nat_set_prepare_to_resume): Delete.
8865         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
8866         low virtual methods.
8867         * amd64-linux-nat.c: Likewise.
8868         * arm-linux-nat.c: Likewise.
8869         * i386-linux-nat.c: Likewise.
8870         * ia64-linux-nat.c: Likewise.
8871         * mips-linux-nat.c: Likewise.
8872         * ppc-linux-nat.c: Likewise.
8873         * s390-linux-nat.c: Likewise.
8874         * sparc64-linux-nat.c: Likewise.
8875         * x86-linux-nat.c: Likewise.
8876         * x86-linux-nat.h: Include "nat/x86-linux.h".
8877         (x86_linux_nat_target) <low_new_fork, low_forget_process,
8878         low_prepare_to_resume, low_new_thread, low_delete_thread>:
8879         Override methods.
8880
8881 2018-05-02  Pedro Alves  <palves@redhat.com>
8882
8883         * target.h (target_ops)
8884         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
8885         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
8886         stopped_by_watchpoint, have_continuable_watchpoint,
8887         stopped_data_address, watchpoint_addr_within_range,
8888         can_accel_watchpoint_condition, can_run, thread_alive,
8889         has_all_memory, has_memory, has_stack, has_registers,
8890         has_execution, can_async_p, is_async_p, supports_non_stop,
8891         always_non_stop_p, can_execute_reverse, supports_multi_process,
8892         supports_enable_disable_tracepoint,
8893         supports_disable_randomization, supports_string_tracing,
8894         supports_evaluation_of_breakpoint_conditions,
8895         can_run_breakpoint_commands, filesystem_is_local,
8896         can_download_tracepoint, get_trace_state_variable_value,
8897         set_trace_notes, get_tib_address, use_agent, can_use_agent,
8898         record_is_replaying, record_will_replay,
8899         augmented_libraries_svr4_read>: Adjust to return bool.
8900         * aarch64-linux-nat.c: All implementations adjusted.
8901         * aix-thread.c: All implementations adjusted.
8902         * arm-linux-nat.c: All implementations adjusted.
8903         * breakpoint.c: All implementations adjusted.
8904         * bsd-kvm.c: All implementations adjusted.
8905         * bsd-uthread.c: All implementations adjusted.
8906         * corelow.c: All implementations adjusted.
8907         * ctf.c: All implementations adjusted.
8908         * darwin-nat.c: All implementations adjusted.
8909         * darwin-nat.h: All implementations adjusted.
8910         * exec.c: All implementations adjusted.
8911         * fbsd-nat.c: All implementations adjusted.
8912         * fbsd-nat.h: All implementations adjusted.
8913         * gnu-nat.c: All implementations adjusted.
8914         * gnu-nat.h: All implementations adjusted.
8915         * go32-nat.c: All implementations adjusted.
8916         * ia64-linux-nat.c: All implementations adjusted.
8917         * inf-child.c: All implementations adjusted.
8918         * inf-child.h: All implementations adjusted.
8919         * inf-ptrace.c: All implementations adjusted.
8920         * inf-ptrace.h: All implementations adjusted.
8921         * linux-nat.c: All implementations adjusted.
8922         * linux-nat.h: All implementations adjusted.
8923         * mips-linux-nat.c: All implementations adjusted.
8924         * nto-procfs.c: All implementations adjusted.
8925         * ppc-linux-nat.c: All implementations adjusted.
8926         * procfs.c: All implementations adjusted.
8927         * ravenscar-thread.c: All implementations adjusted.
8928         * record-btrace.c: All implementations adjusted.
8929         * record-full.c: All implementations adjusted.
8930         * remote-sim.c: All implementations adjusted.
8931         * remote.c: All implementations adjusted.
8932         * s390-linux-nat.c: All implementations adjusted.
8933         * sol-thread.c: All implementations adjusted.
8934         * spu-multiarch.c: All implementations adjusted.
8935         * target-delegates.c: All implementations adjusted.
8936         * target.c: All implementations adjusted.
8937         * target.h: All implementations adjusted.
8938         * tracefile-tfile.c: All implementations adjusted.
8939         * tracefile.c: All implementations adjusted.
8940         * tracefile.h: All implementations adjusted.
8941         * windows-nat.c: All implementations adjusted.
8942         * x86-linux-nat.h: All implementations adjusted.
8943         * x86-nat.h: All implementations adjusted.
8944
8945 2018-05-02  Pedro Alves  <palves@redhat.com>
8946
8947         * make-target-delegates (scan_target_h): Don't trim lines here.
8948         Replace sequences of tabs and/or whitespace with a single
8949         whitespace.
8950         (top level, parsing methods): Trim each line before processing it
8951         here.
8952
8953 2018-05-02  Pedro Alves  <palves@redhat.com>
8954             John Baldwin  <jhb@freebsd.org>
8955
8956         * target.h (enum strata) <debug_stratum>: New.
8957         (struct target_ops) <all delegation methods>: Replace by C++
8958         virtual methods, and drop "to_" prefix.  All references updated
8959         throughout.
8960         <to_shortname, to_longname, to_doc, to_data,
8961         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
8962         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
8963         virtual methods.  All references updated throughout.
8964         <can_attach, supports_terminal_ours, can_create_inferior,
8965         get_thread_control_capabilities, attach_no_wait>: New
8966         virtual methods.
8967         <insert_breakpoint, remove_breakpoint>: Now
8968         TARGET_DEFAULT_NORETURN methods.
8969         <info_proc>: Now returns bool.
8970         <to_magic>: Delete.
8971         (OPS_MAGIC): Delete.
8972         (current_target): Delete.  All references replaced by references
8973         to ...
8974         (target_stack): ... this.  New.
8975         (target_shortname, target_longname): Adjust.
8976         (target_can_run): Now a function declaration.
8977         (default_child_has_all_memory, default_child_has_memory)
8978         (default_child_has_stack, default_child_has_registers)
8979         (default_child_has_execution): Remove target_ops parameter.
8980         (complete_target_initialization): Delete.
8981         (memory_breakpoint_target): New template class.
8982         (test_target_ops): Refactor as a C++ class with virtual methods.
8983         * make-target-delegates (NAME_PART): Tighten.
8984         (POINTER_PART, CP_SYMBOL): New.
8985         (SIMPLE_RETURN_PART): Reimplement.
8986         (VEC_RETURN_PART): Expect less.
8987         (RETURN_PART, VIRTUAL_PART): New.
8988         (METHOD): Adjust to C++ virtual methods.
8989         (scan_target_h): Remove reference to C99.
8990         (dname): Output "target_ops::" prefix.
8991         (write_function_header): Adjust to output a C++ class method.
8992         (write_declaration): New.
8993         (write_delegator): Adjust to output a C++ class method.
8994         (tdname): Output "dummy_target::" prefix.
8995         (write_tdefault, write_debugmethod): Adjust to output a C++ class
8996         method.
8997         (tdefault_names, debug_names): Delete.
8998         (return_types, tdefaults, styles, argtypes_array): New.
8999         (top level): All methods are delegators.
9000         (print_class): New.
9001         (top level): Print dummy_target and debug_target classes.
9002         * target-delegates.c: Regenerate.
9003         * target-debug.h (target_debug_print_enum_info_proc_what)
9004         (target_debug_print_thread_control_capabilities)
9005         (target_debug_print_thread_info_p): New.
9006         * target.c (dummy_target): Delete.
9007         (the_dummy_target, the_debug_target): New.
9008         (target_stack): Now extern.
9009         (set_targetdebug): Push/unpush debug target.
9010         (default_child_has_all_memory, default_child_has_memory)
9011         (default_child_has_stack, default_child_has_registers)
9012         (default_child_has_execution): Remove target_ops parameter.
9013         (complete_target_initialization): Delete.
9014         (add_target_with_completer): No longer call
9015         complete_target_initialization.
9016         (target_supports_terminal_ours): Use regular delegation.
9017         (update_current_target): Delete.
9018         (push_target): No longer check magic number.  Don't call
9019         update_current_target.
9020         (unpush_target): Don't call update_current_target.
9021         (target_is_pushed): No longer check magic number.
9022         (target_require_runnable): Skip for all stratums over
9023         process_stratum.
9024         (target_ops::info_proc): New.
9025         (target_info_proc): Use find_target_at and
9026         find_default_run_target.
9027         (target_supports_disable_randomization): Use regular delegation.
9028         (target_get_osdata): Use find_target_at.
9029         (target_ops::open, target_ops::close, target_ops::can_attach)
9030         (target_ops::attach, target_ops::can_create_inferior)
9031         (target_ops::create_inferior, target_ops::can_run)
9032         (target_can_run): New.
9033         (default_fileio_target): Use regular delegation.
9034         (target_ops::fileio_open, target_ops::fileio_pwrite)
9035         (target_ops::fileio_pread, target_ops::fileio_fstat)
9036         (target_ops::fileio_close, target_ops::fileio_unlink)
9037         (target_ops::fileio_readlink): New.
9038         (target_fileio_open_1, target_fileio_unlink)
9039         (target_fileio_readlink): Always call the target method.  Handle
9040         FILEIO_ENOSYS.
9041         (return_zero, return_zero_has_execution): Delete.
9042         (init_dummy_target): Delete.
9043         (dummy_target::dummy_target, dummy_target::shortname)
9044         (dummy_target::longname, dummy_target::doc)
9045         (debug_target::debug_target, debug_target::shortname)
9046         (debug_target::longname, debug_target::doc): New.
9047         (target_supports_delete_record): Use regular delegation.
9048         (setup_target_debug): Delete.
9049         (maintenance_print_target_stack): Skip debug_stratum.
9050         (initialize_targets): Instantiate the_dummy_target and
9051         the_debug_target.
9052         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
9053         use target_stack.
9054         (target_auxv_search, fprint_target_auxv): Adjust.
9055         (info_auxv_command): Adjust to use target_stack.
9056         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
9057         * exceptions.c (print_flush): Handle a NULL target_stack.
9058         * regcache.c (target_ops_no_register): Refactor as class with
9059         virtual methods.
9060
9061         * exec.c (exec_target): New class.
9062         (exec_ops): Now an exec_target.
9063         (exec_open, exec_close_1, exec_get_section_table)
9064         (exec_xfer_partial, exec_files_info, exec_has_memory)
9065         (exec_make_note_section): Refactor as exec_target methods.
9066         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
9067         Delete.
9068         (exec_target::find_memory_regions): New.
9069         (_initialize_exec): Don't call init_exec_ops.
9070         * gdbcore.h (exec_file_clear): Delete.
9071
9072         * corefile.c (core_target): Delete.
9073         (core_file_command): Adjust.
9074         * corelow.c (core_target): New class.
9075         (the_core_target): New.
9076         (core_close): Remove target_ops parameter.
9077         (core_close_cleanup): Adjust.
9078         (core_target::close): New.
9079         (core_open, core_detach, get_core_registers, core_files_info)
9080         (core_xfer_partial, core_thread_alive, core_read_description)
9081         (core_pid_to_str, core_thread_name, core_has_memory)
9082         (core_has_stack, core_has_registers, core_info_proc): Rework as
9083         core_target methods.
9084         (ignore, core_remove_breakpoint, init_core_ops): Delete.
9085         (_initialize_corelow): Initialize the_core_target.
9086         * gdbcore.h (core_target): Delete.
9087         (the_core_target): New.
9088
9089         * ctf.c: (ctf_target): New class.
9090         (ctf_ops): Now a ctf_target.
9091         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
9092         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
9093         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
9094         methods.
9095         (init_ctf_ops): Delete.
9096         (_initialize_ctf): Don't call it.
9097         * tracefile-tfile.c (tfile_target): New class.
9098         (tfile_ops): Now a tfile_target.
9099         (tfile_open, tfile_close, tfile_files_info)
9100         (tfile_get_tracepoint_status, tfile_trace_find)
9101         (tfile_fetch_registers, tfile_xfer_partial)
9102         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
9103         Refactor as tfile_target methods.
9104         (tfile_xfer_partial_features): Remove target_ops parameter.
9105         (init_tfile_ops): Delete.
9106         (_initialize_tracefile_tfile): Don't call it.
9107         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
9108         (tracefile_has_stack, tracefile_has_registers)
9109         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
9110         tracefile_target methods.
9111         (init_tracefile_ops): Delete.
9112         (tracefile_target::tracefile_target): New.
9113         * tracefile.h: Include "target.h".
9114         (tracefile_target): New class.
9115         (init_tracefile_ops): Delete.
9116
9117         * spu-multiarch.c (spu_multiarch_target): New class.
9118         (spu_ops): Now a spu_multiarch_target.
9119         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
9120         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
9121         (spu_search_memory, spu_mourn_inferior): Refactor as
9122         spu_multiarch_target methods.
9123         (init_spu_ops): Delete.
9124         (_initialize_spu_multiarch): Remove references to init_spu_ops,
9125         complete_target_initialization.
9126
9127         * ravenscar-thread.c (ravenscar_thread_target): New class.
9128         (ravenscar_ops): Now a ravenscar_thread_target.
9129         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
9130         (ravenscar_thread_alive, ravenscar_pid_to_str)
9131         (ravenscar_fetch_registers, ravenscar_store_registers)
9132         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
9133         (ravenscar_stopped_by_hw_breakpoint)
9134         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
9135         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
9136         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
9137         methods.
9138         (init_ravenscar_thread_ops): Delete.
9139         (_initialize_ravenscar): Remove references to
9140         init_ravenscar_thread_ops and complete_target_initialization.
9141
9142         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
9143         (bsd_uthread_target): New class.
9144         (bsd_uthread_ops): Now a bsd_uthread_target.
9145         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
9146         (bsd_uthread_close, bsd_uthread_mourn_inferior)
9147         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
9148         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
9149         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
9150         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
9151         (bsd_uthread_target): Delete function.
9152         (_initialize_bsd_uthread): Remove reference to
9153         complete_target_initialization.
9154
9155         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
9156         (target_bfd): ... this new class.
9157         (target_bfd_xfer_partial, target_bfd_get_section_table)
9158         (target_bfd_close): Refactor as target_bfd methods.
9159         (target_bfd::~target_bfd): New.
9160         (target_bfd_reopen): Adjust.
9161         (target_bfd::close): New.
9162
9163         * record-btrace.c (record_btrace_target): New class.
9164         (record_btrace_ops): Now a record_btrace_target.
9165         (record_btrace_open, record_btrace_stop_recording)
9166         (record_btrace_disconnect, record_btrace_close)
9167         (record_btrace_async, record_btrace_info)
9168         (record_btrace_insn_history, record_btrace_insn_history_range)
9169         (record_btrace_insn_history_from, record_btrace_call_history)
9170         (record_btrace_call_history_range)
9171         (record_btrace_call_history_from, record_btrace_record_method)
9172         (record_btrace_is_replaying, record_btrace_will_replay)
9173         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
9174         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
9175         (record_btrace_store_registers, record_btrace_prepare_to_store)
9176         (record_btrace_to_get_unwinder)
9177         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
9178         (record_btrace_commit_resume, record_btrace_wait)
9179         (record_btrace_stop, record_btrace_can_execute_reverse)
9180         (record_btrace_stopped_by_sw_breakpoint)
9181         (record_btrace_supports_stopped_by_sw_breakpoint)
9182         (record_btrace_stopped_by_hw_breakpoint)
9183         (record_btrace_supports_stopped_by_hw_breakpoint)
9184         (record_btrace_update_thread_list, record_btrace_thread_alive)
9185         (record_btrace_goto_begin, record_btrace_goto_end)
9186         (record_btrace_goto, record_btrace_stop_replaying_all)
9187         (record_btrace_execution_direction)
9188         (record_btrace_prepare_to_generate_core)
9189         (record_btrace_done_generating_core): Refactor as
9190         record_btrace_target methods.
9191         (init_record_btrace_ops): Delete.
9192         (_initialize_record_btrace): Remove reference to
9193         init_record_btrace_ops.
9194         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
9195         the execution_direction global.
9196         (record_full_base_target, record_full_target)
9197         (record_full_core_target): New classes.
9198         (record_full_ops): Now a record_full_target.
9199         (record_full_core_ops): Now a record_full_core_target.
9200         (record_full_target::detach, record_full_target::disconnect)
9201         (record_full_core_target::disconnect)
9202         (record_full_target::mourn_inferior, record_full_target::kill):
9203         New.
9204         (record_full_open, record_full_close, record_full_async): Refactor
9205         as methods of the record_full_base_target class.
9206         (record_full_resume, record_full_commit_resume): Refactor
9207         as methods of the record_full_target class.
9208         (record_full_wait, record_full_stopped_by_watchpoint)
9209         (record_full_stopped_data_address)
9210         (record_full_stopped_by_sw_breakpoint)
9211         (record_full_supports_stopped_by_sw_breakpoint)
9212         (record_full_stopped_by_hw_breakpoint)
9213         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
9214         methods of the record_full_base_target class.
9215         (record_full_store_registers, record_full_xfer_partial)
9216         (record_full_insert_breakpoint, record_full_remove_breakpoint):
9217         Refactor as methods of the record_full_target class.
9218         (record_full_can_execute_reverse, record_full_get_bookmark)
9219         (record_full_goto_bookmark, record_full_execution_direction)
9220         (record_full_record_method, record_full_info, record_full_delete)
9221         (record_full_is_replaying, record_full_will_replay)
9222         (record_full_goto_begin, record_full_goto_end, record_full_goto)
9223         (record_full_stop_replaying): Refactor as methods of the
9224         record_full_base_target class.
9225         (record_full_core_resume, record_full_core_kill)
9226         (record_full_core_fetch_registers)
9227         (record_full_core_prepare_to_store)
9228         (record_full_core_store_registers, record_full_core_xfer_partial)
9229         (record_full_core_insert_breakpoint)
9230         (record_full_core_remove_breakpoint)
9231         (record_full_core_has_execution): Refactor
9232         as methods of the record_full_core_target class.
9233         (record_full_base_target::supports_delete_record): New.
9234         (init_record_full_ops): Delete.
9235         (init_record_full_core_ops): Delete.
9236         (record_full_save): Refactor as method of the
9237         record_full_base_target class.
9238         (_initialize_record_full): Remove references to
9239         init_record_full_ops and init_record_full_core_ops.
9240
9241         * remote.c (remote_target, extended_remote_target): New classes.
9242         (remote_ops): Now a remote_target.
9243         (extended_remote_ops): Now an extended_remote_target.
9244         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
9245         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
9246         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
9247         (remote_pass_signals, remote_set_syscall_catchpoint)
9248         (remote_program_signals, )
9249         (remote_thread_always_alive): Remove target_ops parameter.
9250         (remote_thread_alive, remote_thread_name)
9251         (remote_update_thread_list, remote_threads_extra_info)
9252         (remote_static_tracepoint_marker_at)
9253         (remote_static_tracepoint_markers_by_strid)
9254         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
9255         (remote_open): Refactor as methods of remote_target.
9256         (extended_remote_open, extended_remote_detach)
9257         (extended_remote_attach, extended_remote_post_attach):
9258         (extended_remote_supports_disable_randomization)
9259         (extended_remote_create_inferior): : Refactor as method of
9260         extended_remote_target.
9261         (remote_set_permissions, remote_open_1, remote_detach)
9262         (remote_follow_fork, remote_follow_exec, remote_disconnect)
9263         (remote_resume, remote_commit_resume, remote_stop)
9264         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
9265         (remote_terminal_ours, remote_wait, remote_fetch_registers)
9266         (remote_prepare_to_store, remote_store_registers)
9267         (remote_flash_erase, remote_flash_done, remote_files_info)
9268         (remote_kill, remote_mourn, remote_insert_breakpoint)
9269         (remote_remove_breakpoint, remote_insert_watchpoint)
9270         (remote_watchpoint_addr_within_range)
9271         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
9272         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
9273         (remote_supports_stopped_by_sw_breakpoint)
9274         (remote_stopped_by_hw_breakpoint)
9275         (remote_supports_stopped_by_hw_breakpoint)
9276         (remote_stopped_by_watchpoint, remote_stopped_data_address)
9277         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
9278         (remote_verify_memory): Refactor as methods of remote_target.
9279         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
9280         parameter.
9281         (remote_xfer_partial, remote_get_memory_xfer_limit)
9282         (remote_search_memory, remote_rcmd, remote_memory_map)
9283         (remote_pid_to_str, remote_get_thread_local_address)
9284         (remote_get_tib_address, remote_read_description): Refactor as
9285         methods of remote_target.
9286         (remote_target::fileio_open, remote_target::fileio_pwrite)
9287         (remote_target::fileio_pread, remote_target::fileio_close): New.
9288         (remote_hostio_readlink, remote_hostio_fstat)
9289         (remote_filesystem_is_local, remote_can_execute_reverse)
9290         (remote_supports_non_stop, remote_supports_disable_randomization)
9291         (remote_supports_multi_process, remote_supports_cond_breakpoints)
9292         (remote_supports_enable_disable_tracepoint)
9293         (remote_supports_string_tracing)
9294         (remote_can_run_breakpoint_commands, remote_trace_init)
9295         (remote_download_tracepoint, remote_can_download_tracepoint)
9296         (remote_download_trace_state_variable, remote_enable_tracepoint)
9297         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
9298         (remote_trace_start, remote_get_trace_status)
9299         (remote_get_tracepoint_status, remote_trace_stop)
9300         (remote_trace_find, remote_get_trace_state_variable_value)
9301         (remote_save_trace_data, remote_get_raw_trace_data)
9302         (remote_set_disconnected_tracing, remote_core_of_thread)
9303         (remote_set_circular_trace_buffer, remote_traceframe_info)
9304         (remote_get_min_fast_tracepoint_insn_len)
9305         (remote_set_trace_buffer_size, remote_set_trace_notes)
9306         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
9307         (remote_disable_btrace, remote_teardown_btrace)
9308         (remote_read_btrace, remote_btrace_conf)
9309         (remote_augmented_libraries_svr4_read, remote_load)
9310         (remote_pid_to_exec_file, remote_can_do_single_step)
9311         (remote_execution_direction, remote_thread_handle_to_thread_info):
9312         Refactor as methods of remote_target.
9313         (init_remote_ops, init_extended_remote_ops): Delete.
9314         (remote_can_async_p, remote_is_async_p, remote_async)
9315         (remote_thread_events, remote_upload_tracepoints)
9316         (remote_upload_trace_state_variables): Refactor as methods of
9317         remote_target.
9318         (_initialize_remote): Remove references to init_remote_ops and
9319         init_extended_remote_ops.
9320
9321         * remote-sim.c (gdbsim_target): New class.
9322         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
9323         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
9324         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
9325         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
9326         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
9327         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
9328         Refactor as methods of gdbsim_target.
9329         (gdbsim_ops): Now a gdbsim_target.
9330         (init_gdbsim_ops): Delete.
9331         (gdbsim_cntrl_c): Adjust.
9332         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
9333
9334         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
9335         (the_amd64_linux_nat_target): New.
9336         (amd64_linux_fetch_inferior_registers)
9337         (amd64_linux_store_inferior_registers): Refactor as methods of
9338         amd64_linux_nat_target.
9339         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
9340         * i386-linux-nat.c: Don't include "linux-nat.h".
9341         (i386_linux_nat_target): New class.
9342         (the_i386_linux_nat_target): New.
9343         (i386_linux_fetch_inferior_registers)
9344         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
9345         as methods of i386_linux_nat_target.
9346         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
9347         * inf-child.c (inf_child_ops): Delete.
9348         (inf_child_fetch_inferior_registers)
9349         (inf_child_store_inferior_registers): Delete.
9350         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
9351         methods of inf_child_target.
9352         (inf_child_target::supports_terminal_ours)
9353         (inf_child_target::terminal_init)
9354         (inf_child_target::terminal_inferior)
9355         (inf_child_target::terminal_ours_for_output)
9356         (inf_child_target::terminal_ours, inf_child_target::interrupt)
9357         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
9358         New.
9359         (inf_child_open, inf_child_disconnect, inf_child_close)
9360         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
9361         (inf_child_post_startup_inferior, inf_child_can_run)
9362         (inf_child_pid_to_exec_file): Refactor as methods of
9363         inf_child_target.
9364         (inf_child_follow_fork): Delete.
9365         (inf_child_target::can_create_inferior)
9366         (inf_child_target::can_attach): New.
9367         (inf_child_target::has_all_memory, inf_child_target::has_memory)
9368         (inf_child_target::has_stack, inf_child_target::has_registers)
9369         (inf_child_target::has_execution): New.
9370         (inf_child_fileio_open, inf_child_fileio_pwrite)
9371         (inf_child_fileio_pread, inf_child_fileio_fstat)
9372         (inf_child_fileio_close, inf_child_fileio_unlink)
9373         (inf_child_fileio_readlink, inf_child_use_agent)
9374         (inf_child_can_use_agent): Refactor as methods of
9375         inf_child_target.
9376         (return_zero, inf_child_target): Delete.
9377         (inf_child_target::inf_child_target): New.
9378         * inf-child.h: Include "target.h".
9379         (inf_child_target): Delete function prototype.
9380         (inf_child_target): New class.
9381         (inf_child_open_target, inf_child_mourn_inferior)
9382         (inf_child_maybe_unpush_target): Delete.
9383         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
9384         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
9385         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
9386         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
9387         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
9388         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
9389         (inf_ptrace_wait, inf_ptrace_xfer_partial)
9390         (inf_ptrace_thread_alive, inf_ptrace_files_info)
9391         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
9392         methods of inf_ptrace_target.
9393         (inf_ptrace_target): Delete function.
9394         * inf-ptrace.h: Include "inf-child.h".
9395         (inf_ptrace_target): Delete function declaration.
9396         (inf_ptrace_target): New class.
9397         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
9398         * linux-nat.c (linux_target): New.
9399         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
9400         (linux_nat_target::~linux_nat_target): New.
9401         (linux_child_post_attach, linux_child_post_startup_inferior)
9402         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
9403         (linux_child_remove_fork_catchpoint)
9404         (linux_child_insert_vfork_catchpoint)
9405         (linux_child_remove_vfork_catchpoint)
9406         (linux_child_insert_exec_catchpoint)
9407         (linux_child_remove_exec_catchpoint)
9408         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
9409         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
9410         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
9411         (linux_nat_stopped_data_address)
9412         (linux_nat_stopped_by_sw_breakpoint)
9413         (linux_nat_supports_stopped_by_sw_breakpoint)
9414         (linux_nat_stopped_by_hw_breakpoint)
9415         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
9416         (linux_nat_kill, linux_nat_mourn_inferior)
9417         (linux_nat_xfer_partial, linux_nat_thread_alive)
9418         (linux_nat_update_thread_list, linux_nat_pid_to_str)
9419         (linux_nat_thread_name, linux_child_pid_to_exec_file)
9420         (linux_child_static_tracepoint_markers_by_strid)
9421         (linux_nat_is_async_p, linux_nat_can_async_p)
9422         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
9423         (linux_nat_supports_multi_process)
9424         (linux_nat_supports_disable_randomization, linux_nat_async)
9425         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
9426         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
9427         (linux_nat_fileio_open, linux_nat_fileio_readlink)
9428         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
9429         methods of linux_nat_target.
9430         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
9431         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
9432         parameter.
9433         (check_stopped_by_watchpoint): Adjust.
9434         (linux_xfer_partial): Delete.
9435         (linux_target_install_ops, linux_target, linux_nat_add_target):
9436         Delete.
9437         (linux_nat_target::linux_nat_target): New.
9438         * linux-nat.h: Include "inf-ptrace.h".
9439         (linux_nat_target): New.
9440         (linux_target, linux_target_install_ops, linux_nat_add_target):
9441         Delete function declarations.
9442         (linux_target): Declare global.
9443         * linux-thread-db.c (thread_db_target): New.
9444         (thread_db_target::thread_db_target): New.
9445         (thread_db_ops): Delete.
9446         (the_thread_db_target): New.
9447         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
9448         (thread_db_update_thread_list, thread_db_pid_to_str)
9449         (thread_db_extra_thread_info)
9450         (thread_db_thread_handle_to_thread_info)
9451         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
9452         (thread_db_resume): Refactor as methods of thread_db_target.
9453         (init_thread_db_ops): Delete.
9454         (_initialize_thread_db): Remove reference to init_thread_db_ops.
9455         * x86-linux-nat.c: Don't include "linux-nat.h".
9456         (super_post_startup_inferior): Delete.
9457         (x86_linux_nat_target::~x86_linux_nat_target): New.
9458         (x86_linux_child_post_startup_inferior)
9459         (x86_linux_read_description, x86_linux_enable_btrace)
9460         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
9461         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
9462         methods of x86_linux_nat_target.
9463         (x86_linux_create_target): Delete.  Bits folded ...
9464         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
9465         pointer.
9466         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
9467         (x86_linux_nat_target): New class.
9468         (x86_linux_create_target): Delete.
9469         (x86_linux_add_target): Now takes a linux_nat_target pointer.
9470         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
9471         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
9472         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
9473         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
9474         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
9475         make extern.
9476         (x86_use_watchpoints): Delete.
9477         * x86-nat.h: Include "breakpoint.h" and "target.h".
9478         (x86_use_watchpoints): Delete.
9479         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
9480         (x86_stopped_by_watchpoint, x86_stopped_data_address)
9481         (x86_insert_watchpoint, x86_remove_watchpoint)
9482         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
9483         (x86_stopped_by_hw_breakpoint): New declarations.
9484         (x86_nat_target): New template class.
9485
9486         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
9487         (the_ppc_linux_nat_target): New.
9488         (ppc_linux_fetch_inferior_registers)
9489         (ppc_linux_can_use_hw_breakpoint)
9490         (ppc_linux_region_ok_for_hw_watchpoint)
9491         (ppc_linux_ranged_break_num_registers)
9492         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
9493         (ppc_linux_insert_mask_watchpoint)
9494         (ppc_linux_remove_mask_watchpoint)
9495         (ppc_linux_can_accel_watchpoint_condition)
9496         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
9497         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
9498         (ppc_linux_watchpoint_addr_within_range)
9499         (ppc_linux_masked_watch_num_registers)
9500         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
9501         (ppc_linux_read_description): Refactor as methods of
9502         ppc_linux_nat_target.
9503         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
9504
9505         * procfs.c (procfs_xfer_partial): Delete forward declaration.
9506         (procfs_target): New class.
9507         (the_procfs_target): New.
9508         (procfs_target): Delete function.
9509         (procfs_auxv_parse, procfs_attach, procfs_detach)
9510         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
9511         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
9512         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
9513         (procfs_create_inferior, procfs_update_thread_list)
9514         (procfs_thread_alive, procfs_pid_to_str)
9515         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
9516         (procfs_stopped_data_address, procfs_insert_watchpoint)
9517         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
9518         (proc_find_memory_regions, procfs_info_proc)
9519         (procfs_make_note_section): Refactor as methods of procfs_target.
9520         (_initialize_procfs): Adjust.
9521         * sol-thread.c (sol_thread_target): New class.
9522         (sol_thread_ops): Now a sol_thread_target.
9523         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
9524         (sol_thread_fetch_registers, sol_thread_store_registers)
9525         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
9526         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
9527         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
9528         (init_sol_thread_ops): Delete.
9529         (_initialize_sol_thread): Adjust.  Remove references to
9530         init_sol_thread_ops and complete_target_initialization.
9531
9532         * windows-nat.c (windows_nat_target): New class.
9533         (windows_fetch_inferior_registers)
9534         (windows_store_inferior_registers, windows_resume, windows_wait)
9535         (windows_attach, windows_detach, windows_pid_to_exec_file)
9536         (windows_files_info, windows_create_inferior)
9537         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
9538         (windows_close, windows_pid_to_str, windows_xfer_partial)
9539         (windows_get_tib_address, windows_get_ada_task_ptid)
9540         (windows_thread_name, windows_thread_alive): Refactor as
9541         windows_nat_target methods.
9542         (do_initial_windows_stuff): Adjust.
9543         (windows_target): Delete function.
9544         (_initialize_windows_nat): Adjust.
9545
9546         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
9547         (darwin_mourn_inferior, darwin_kill_inferior)
9548         (darwin_create_inferior, darwin_attach, darwin_detach)
9549         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
9550         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
9551         (darwin_supports_multi_process): Refactor as darwin_nat_target
9552         methods.
9553         (darwin_resume_to, darwin_files_info): Delete.
9554         (_initialize_darwin_inferior): Rename to ...
9555         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
9556         * darwin-nat.h: Include "inf-child.h".
9557         (darwin_nat_target): New class.
9558         (darwin_complete_target): Delete.
9559         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
9560         (darwin_target): New.
9561         (i386_darwin_fetch_inferior_registers)
9562         (i386_darwin_store_inferior_registers): Refactor as methods of
9563         darwin_nat_target.
9564         (darwin_complete_target): Delete, with ...
9565         (_initialize_i386_darwin_nat): ... bits factored out here.
9566
9567         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
9568         (the_alpha_linux_nat_target): New.
9569         (alpha_linux_register_u_offset): Refactor as
9570         alpha_linux_nat_target method.
9571         (_initialize_alpha_linux_nat): Adjust.
9572         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
9573         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
9574         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
9575         methods of linux_nat_trad_target.
9576         (linux_trad_target): Delete.
9577         * linux-nat-trad.h (linux_trad_target): Delete function.
9578         (linux_nat_trad_target): New class.
9579         * mips-linux-nat.c (mips_linux_nat_target): New class.
9580         (super_fetch_registers, super_store_registers, super_close):
9581         Delete.
9582         (the_mips_linux_nat_target): New.
9583         (mips64_linux_regsets_fetch_registers)
9584         (mips64_linux_regsets_store_registers)
9585         (mips64_linux_fetch_registers, mips64_linux_store_registers)
9586         (mips_linux_register_u_offset, mips_linux_read_description)
9587         (mips_linux_can_use_hw_breakpoint)
9588         (mips_linux_stopped_by_watchpoint)
9589         (mips_linux_stopped_data_address)
9590         (mips_linux_region_ok_for_hw_watchpoint)
9591         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
9592         (mips_linux_close): Refactor as methods of mips_linux_nat.
9593         (_initialize_mips_linux_nat): Adjust to C++ification.
9594
9595         * aix-thread.c (aix_thread_target): New class.
9596         (aix_thread_ops): Now an aix_thread_target.
9597         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
9598         (aix_thread_fetch_registers, aix_thread_store_registers)
9599         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
9600         (aix_thread_thread_alive, aix_thread_pid_to_str)
9601         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
9602         Refactor as methods of aix_thread_target.
9603         (init_aix_thread_ops): Delete.
9604         (_initialize_aix_thread): Remove references to init_aix_thread_ops
9605         and complete_target_initialization.
9606         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
9607         (rs6000_nat_target): New class.
9608         (the_rs6000_nat_target): New.
9609         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
9610         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
9611         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
9612         (super_create_inferior): Delete.
9613         (_initialize_rs6000_nat): Adjust to C++ification.
9614
9615         * arm-linux-nat.c (arm_linux_nat_target): New class.
9616         (the_arm_linux_nat_target): New.
9617         (arm_linux_fetch_inferior_registers)
9618         (arm_linux_store_inferior_registers, arm_linux_read_description)
9619         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
9620         (arm_linux_remove_hw_breakpoint)
9621         (arm_linux_region_ok_for_hw_watchpoint)
9622         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
9623         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
9624         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
9625         arm_linux_nat_target.
9626         (_initialize_arm_linux_nat): Adjust to C++ification.
9627
9628         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
9629         (the_aarch64_linux_nat_target): New.
9630         (aarch64_linux_fetch_inferior_registers)
9631         (aarch64_linux_store_inferior_registers)
9632         (aarch64_linux_child_post_startup_inferior)
9633         (aarch64_linux_read_description)
9634         (aarch64_linux_can_use_hw_breakpoint)
9635         (aarch64_linux_insert_hw_breakpoint)
9636         (aarch64_linux_remove_hw_breakpoint)
9637         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
9638         (aarch64_linux_region_ok_for_hw_watchpoint)
9639         (aarch64_linux_stopped_data_address)
9640         (aarch64_linux_stopped_by_watchpoint)
9641         (aarch64_linux_watchpoint_addr_within_range)
9642         (aarch64_linux_can_do_single_step): Refactor as methods of
9643         aarch64_linux_nat_target.
9644         (super_post_startup_inferior): Delete.
9645         (_initialize_aarch64_linux_nat): Adjust to C++ification.
9646
9647         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
9648         (the_hppa_linux_nat_target): New.
9649         (hppa_linux_fetch_inferior_registers)
9650         (hppa_linux_store_inferior_registers): Refactor as methods of
9651         hppa_linux_nat_target.
9652         (_initialize_hppa_linux_nat): Adjust to C++ification.
9653
9654         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
9655         (the_ia64_linux_nat_target): New.
9656         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
9657         (ia64_linux_stopped_data_address)
9658         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
9659         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
9660         ia64_linux_nat_target methods.
9661         (super_xfer_partial): Delete.
9662         (_initialize_ia64_linux_nat): Adjust to C++ification.
9663
9664         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
9665         (the_m32r_linux_nat_target): New.
9666         (m32r_linux_fetch_inferior_registers)
9667         (m32r_linux_store_inferior_registers): Refactor as
9668         m32r_linux_nat_target methods.
9669         (_initialize_m32r_linux_nat): Adjust to C++ification.
9670
9671         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
9672         (the_m68k_linux_nat_target): New.
9673         (m68k_linux_fetch_inferior_registers)
9674         (m68k_linux_store_inferior_registers): Refactor as
9675         m68k_linux_nat_target methods.
9676         (_initialize_m68k_linux_nat): Adjust to C++ification.
9677
9678         * s390-linux-nat.c (s390_linux_nat_target): New class.
9679         (the_s390_linux_nat_target): New.
9680         (s390_linux_fetch_inferior_registers)
9681         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
9682         (s390_insert_watchpoint, s390_remove_watchpoint)
9683         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
9684         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
9685         (s390_auxv_parse, s390_read_description): Refactor as methods of
9686         s390_linux_nat_target.
9687         (_initialize_s390_nat): Adjust to C++ification.
9688
9689         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
9690         (the_sparc_linux_nat_target): New.
9691         (_initialize_sparc_linux_nat): Adjust to C++ification.
9692         * sparc-nat.c (sparc_fetch_inferior_registers)
9693         (sparc_store_inferior_registers): Remove target_ops parameter.
9694         * sparc-nat.h (sparc_fetch_inferior_registers)
9695         (sparc_store_inferior_registers): Remove target_ops parameter.
9696         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
9697         (the_sparc64_linux_nat_target): New.
9698         (_initialize_sparc64_linux_nat): Adjust to C++ification.
9699
9700         * spu-linux-nat.c (spu_linux_nat_target): New class.
9701         (the_spu_linux_nat_target): New.
9702         (spu_child_post_startup_inferior, spu_child_post_attach)
9703         (spu_child_wait, spu_fetch_inferior_registers)
9704         (spu_store_inferior_registers, spu_xfer_partial)
9705         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
9706         methods.
9707         (_initialize_spu_nat): Adjust to C++ification.
9708
9709         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
9710         (the_tilegx_linux_nat_target): New.
9711         (fetch_inferior_registers, store_inferior_registers):
9712         Refactor as methods.
9713         (_initialize_tile_linux_nat): Adjust to C++ification.
9714
9715         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
9716         (the_xtensa_linux_nat_target): New.
9717         (xtensa_linux_fetch_inferior_registers)
9718         (xtensa_linux_store_inferior_registers): Refactor as
9719         xtensa_linux_nat_target methods.
9720         (_initialize_xtensa_linux_nat): Adjust to C++ification.
9721
9722         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
9723         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
9724         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
9725         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
9726         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
9727         (fbsd_stopped_by_sw_breakpoint)
9728         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
9729         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
9730         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
9731         (fbsd_post_startup_inferior, fbsd_post_attach)
9732         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
9733         (fbsd_set_syscall_catchpoint)
9734         (super_xfer_partial, super_resume, super_wait)
9735         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
9736         (fbsd_handle_debug_trap): Remove target_ops parameter.
9737         (fbsd_nat_add_target): Delete.
9738         * fbsd-nat.h: Include "inf-ptrace.h".
9739         (fbsd_nat_add_target): Delete.
9740         (USE_SIGTRAP_SIGINFO): Define.
9741         (fbsd_nat_target): New class.
9742
9743         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
9744         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
9745         (amd64bsd_target): Delete.
9746         * amd64-bsd-nat.h: New file.
9747         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
9748         "x86-bsd-nat.h".
9749         (amd64_fbsd_nat_target): New class.
9750         (the_amd64_fbsd_nat_target): New.
9751         (amd64fbsd_read_description): Refactor as method of
9752         amd64_fbsd_nat_target.
9753         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
9754         (_initialize_amd64fbsd_nat): Adjust to C++ification.
9755         * amd64-nat.h (amd64bsd_target): Delete function declaration.
9756         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
9757         (i386bsd_store_inferior_registers): Remove target_ops parameter.
9758         (i386bsd_target): Delete.
9759         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
9760         (i386bsd_fetch_inferior_registers)
9761         (i386bsd_store_inferior_registers): Declare.
9762         (i386_bsd_nat_target): New class.
9763         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
9764         (the_i386_fbsd_nat_target): New.
9765         (i386fbsd_resume, i386fbsd_read_description): Refactor as
9766         i386_fbsd_nat_target methods.
9767         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
9768         (_initialize_i386fbsd_nat): Adjust to C++ification.
9769         * x86-bsd-nat.c (super_mourn_inferior): Delete.
9770         (x86bsd_mourn_inferior, x86bsd_target): Delete.
9771         (_initialize_x86_bsd_nat): Adjust to C++ification.
9772         * x86-bsd-nat.h: Include "x86-nat.h".
9773         (x86bsd_target): Delete declaration.
9774         (x86bsd_nat_target): New class.
9775
9776         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
9777         (the_aarch64_fbsd_nat_target): New.
9778         (aarch64_fbsd_fetch_inferior_registers)
9779         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
9780         aarch64_fbsd_nat_target.
9781         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
9782         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
9783         (the_alpha_bsd_nat_target): New.
9784         (alphabsd_fetch_inferior_registers)
9785         (alphabsd_store_inferior_registers): Refactor as
9786         alpha_bsd_nat_target methods.
9787         (_initialize_alphabsd_nat): Refactor as methods of
9788         alpha_bsd_nat_target.
9789         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
9790         (the_amd64_nbsd_nat_target): New.
9791         (_initialize_amd64nbsd_nat): Adjust to C++ification.
9792         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
9793         (the_amd64_obsd_nat_target): New.
9794         (_initialize_amd64obsd_nat): Adjust to C++ification.
9795         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
9796         (the_arm_fbsd_nat_target): New.
9797         (arm_fbsd_fetch_inferior_registers)
9798         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
9799         (_initialize_arm_fbsd_nat): Refactor as methods of
9800         arm_fbsd_nat_target.
9801         (_initialize_arm_fbsd_nat): Adjust to C++ification.
9802         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
9803         (the_arm_netbsd_nat_target): New.
9804         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
9805         arm_netbsd_nat_target.
9806         (_initialize_arm_netbsd_nat): Adjust to C++ification.
9807         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
9808         (the_hppa_nbsd_nat_target): New.
9809         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
9810         hppa_nbsd_nat_target methods.
9811         (_initialize_hppanbsd_nat): Adjust to C++ification.
9812         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
9813         (the_hppa_obsd_nat_target): New.
9814         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
9815         methods of hppa_obsd_nat_target.
9816         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
9817         add_target.
9818         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
9819         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
9820         add_target.
9821         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
9822         (_initialize_i386obsd_nat): Use add_target.
9823         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
9824         (the_m68k_bsd_nat_target): New.
9825         (m68kbsd_fetch_inferior_registers)
9826         (m68kbsd_store_inferior_registers): Refactor as methods of
9827         m68k_bsd_nat_target.
9828         (_initialize_m68kbsd_nat): Adjust to C++ification.
9829         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
9830         (the_mips_fbsd_nat_target): New.
9831         (mips_fbsd_fetch_inferior_registers)
9832         (mips_fbsd_store_inferior_registers): Refactor as methods of
9833         mips_fbsd_nat_target.
9834         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
9835         add_target.
9836         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
9837         (the_mips_nbsd_nat_target): New.
9838         (mipsnbsd_fetch_inferior_registers)
9839         (mipsnbsd_store_inferior_registers): Refactor as methods of
9840         mips_nbsd_nat_target.
9841         (_initialize_mipsnbsd_nat): Adjust to C++ification.
9842         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
9843         (the_mips64_obsd_nat_target): New.
9844         (mips64obsd_fetch_inferior_registers)
9845         (mips64obsd_store_inferior_registers): Refactor as methods of
9846         mips64_obsd_nat_target.
9847         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
9848         add_target.
9849         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
9850         nbsd_nat_target.
9851         * nbsd-nat.h: Include "inf-ptrace.h".
9852         (nbsd_nat_target): New class.
9853         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
9854         (obsd_wait): Refactor as methods of obsd_nat_target.
9855         (obsd_add_target): Delete.
9856         * obsd-nat.h: Include "inf-ptrace.h".
9857         (obsd_nat_target): New class.
9858         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
9859         (the_ppc_fbsd_nat_target): New.
9860         (ppcfbsd_fetch_inferior_registers)
9861         (ppcfbsd_store_inferior_registers): Refactor as methods of
9862         ppc_fbsd_nat_target.
9863         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
9864         add_target.
9865         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
9866         (the_ppc_nbsd_nat_target): New.
9867         (ppcnbsd_fetch_inferior_registers)
9868         (ppcnbsd_store_inferior_registers): Refactor as methods of
9869         ppc_nbsd_nat_target.
9870         (_initialize_ppcnbsd_nat): Adjust to C++ification.
9871         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
9872         (the_ppc_obsd_nat_target): New.
9873         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
9874         methods of ppc_obsd_nat_target.
9875         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
9876         add_target.
9877         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
9878         (the_sh_nbsd_nat_target): New.
9879         (shnbsd_fetch_inferior_registers)
9880         (shnbsd_store_inferior_registers): Refactor as methods of
9881         sh_nbsd_nat_target.
9882         (_initialize_shnbsd_nat): Adjust to C++ification.
9883         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
9884         (inf_ptrace_xfer_partial): Delete.
9885         (sparc_xfer_partial, sparc_target): Delete.
9886         * sparc-nat.h (sparc_fetch_inferior_registers)
9887         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
9888         (sparc_target): Delete function declaration.
9889         (sparc_target): New template class.
9890         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
9891         (_initialize_sparcnbsd_nat): Adjust to C++ification.
9892         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
9893         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
9894         add_target.
9895         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
9896         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
9897         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
9898         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
9899         add_target.
9900         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
9901         (the_vax_bsd_nat_target): New.
9902         (vaxbsd_fetch_inferior_registers)
9903         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
9904         methods.
9905         (_initialize_vaxbsd_nat): Adjust to C++ification.
9906
9907         * bsd-kvm.c (bsd_kvm_target): New class.
9908         (bsd_kvm_ops): Now a bsd_kvm_target.
9909         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
9910         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
9911         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
9912         bsd_kvm_target.
9913         (bsd_kvm_return_one): Delete.
9914         (bsd_kvm_add_target): Adjust to C++ification.
9915
9916         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
9917         (nto_procfs_target_procfs): New classes.
9918         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
9919         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
9920         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
9921         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
9922         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
9923         (procfs_remove_hw_breakpoint, procfs_resume)
9924         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
9925         (procfs_kill_inferior, procfs_store_registers)
9926         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
9927         as methods of nto_procfs_target.
9928         (nto_procfs_ops): Now an nto_procfs_target_procfs.
9929         (nto_native_ops): Delete.
9930         (procfs_open, procfs_native_open): Delete.
9931         (nto_native_ops): Now an nto_procfs_target_native.
9932         (init_procfs_targets): Adjust to C++ification.
9933         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
9934         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
9935         Refactor as methods of nto_procfs_target.
9936
9937         * go32-nat.c (go32_nat_target): New class.
9938         (the_go32_nat_target): New.
9939         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
9940         (go32_store_registers, go32_xfer_partial, go32_files_info)
9941         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
9942         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
9943         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
9944         (go32_pid_to_str): Refactor as methods of go32_nat_target.
9945         (go32_target): Delete.
9946         (_initialize_go32_nat): Adjust to C++ification.
9947
9948         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
9949         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
9950         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
9951         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
9952         gnu_nat_target.
9953         (gnu_target): Delete.
9954         * gnu-nat.h (gnu_target): Delete.
9955         (gnu_nat_target): New class.
9956         * i386-gnu-nat.c (gnu_base_target): New.
9957         (i386_gnu_nat_target): New class.
9958         (the_i386_gnu_nat_target): New.
9959         (_initialize_i386gnu_nat): Adjust to C++ification.
9960
9961 2018-05-02  Pedro Alves  <palves@redhat.com>
9962
9963         * bfd-target.c (target_bfd_xclose): Rename to ...
9964         (target_bfd_close): ... this.
9965         (target_bfd_reopen): Adjust.
9966         * target.c (target_close): Remove references to to_xclose.
9967         * target.h (target_ops::to_xclose): Delete.
9968         (target_ops::to_close): Update comments.
9969
9970 2018-05-02  Pedro Alves  <palves@redhat.com>
9971
9972         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
9973         "linux-nat.h".
9974         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
9975         * inf-ptrace.c (inf_ptrace_register_u_offset)
9976         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
9977         (inf_ptrace_store_register, inf_ptrace_store_registers)
9978         (inf_ptrace_trad_target): Move to ...
9979         * linux-nat-trad.c: ... this new file.
9980         * linux-nat-trad.h: New file.
9981         * linux-nat.c (linux_target_install_ops): Make extern.
9982         (linux_trad_target): Delete.
9983         * linux-nat.h (linux_trad_target): Delete declaration.
9984         (linux_target_install_ops): Declare.
9985         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
9986         "linux-nat.h".
9987
9988 2018-05-02  Pedro Alves  <palves@redhat.com>
9989
9990         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
9991         procfs_target/add_target here.
9992         * procfs.c (procfs_target): Make static.
9993         (_initialize_procfs): Call add_target here.
9994         * procfs.h (struct target_ops): Remove forward declaration.
9995         (procfs_target): Remove declaration.
9996         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
9997
9998 2018-05-02  Pedro Alves  <palves@redhat.com>
9999
10000         * procfs.c (procfs_stopped_by_watchpoint)
10001         (procfs_insert_watchpoint, procfs_remove_watchpoint)
10002         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
10003         Forward declare.
10004         (procfs_use_watchpoints): Delete, move contents...
10005         (procfs_target): ... here.
10006         * procfs.h (procfs_use_watchpoints): Delete declaration.
10007         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10008         procfs_use_watchpoints.
10009         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
10010         procfs_use_watchpoints.
10011
10012 2018-05-02  Tom Tromey  <tom@tromey.com>
10013
10014         PR python/20084:
10015         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
10016         and var_zuinteger_unlimited.
10017         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
10018         and PARAM_ZUINTEGER_UNLIMITED.
10019         (set_parameter_value): Handle var_zuinteger and
10020         var_zuinteger_unlimited.
10021         (add_setshow_generic): Likewise.
10022         (parmpy_init): Likewise.
10023
10024 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
10025
10026         PR rust/23124
10027         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
10028         pointer is not null before dereferencing it.
10029
10030 2018-04-30  Tom Tromey  <tom@tromey.com>
10031
10032         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
10033         is_mi_like_p.
10034
10035 2018-04-30  Tom Tromey  <tom@tromey.com>
10036
10037         * breakpoint.c (mention): Remove use of is_mi_like_p.
10038         (print_mention_ranged_breakpoint): Likewise.
10039         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
10040         of is_mi_like_p.
10041
10042 2018-04-30  Tom Tromey  <tom@tromey.com>
10043
10044         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
10045
10046 2018-04-30  Tom Tromey  <tom@tromey.com>
10047
10048         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
10049         (info_spu_event_command): Remove some uses of is_mi_like_p.
10050
10051 2018-04-30  Tom Tromey  <tom@tromey.com>
10052
10053         * python/py-framefilter.c (py_print_single_arg)
10054         (enumerate_locals, py_print_args, py_print_frame): Remove some
10055         uses of is_mi_like_p.
10056
10057 2018-04-30  Tom Tromey  <tom@tromey.com>
10058
10059         * ui-out.c: Update.
10060         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
10061         * ui-out.h (ui_out::is_mi_like_p): Now const.
10062         (ui_out::do_is_mi_like_p): Now const.
10063         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
10064
10065 2018-04-30  Tom Tromey  <tom@tromey.com>
10066
10067         * varobj.c (varobj_set_visualizer): Use new_reference.
10068         * python/python.c (gdbpy_decode_line): Use new_reference.
10069         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
10070         new_reference.
10071
10072 2018-04-30  Tom Tromey  <tom@tromey.com>
10073
10074         * varobj.c (install_new_value): Use new_reference.
10075         * value.h (value_incref): Return void.  Swap intro comment with
10076         value_decref.
10077         * value.c (set_value_parent): Use new_reference.
10078         (value_incref): Return void.  Update intro comment.
10079         (release_value): Use new_reference.
10080         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
10081
10082 2018-04-30  Tom Tromey  <tom@tromey.com>
10083
10084         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
10085         * gdb_bfd.h (new_bfd_ref): Remove.
10086         (gdb_bfd_open): Update comment.
10087         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
10088         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
10089         (gdb_bfd_fdopenr): Use new_reference.
10090         * exec.c (exec_file_attach): Use new_reference.
10091
10092 2018-04-30  Tom Tromey  <tom@tromey.com>
10093
10094         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
10095         method.
10096
10097 2018-04-30  Tom Tromey  <tom@tromey.com>
10098
10099         * jit.c (jit_read_code_entry): Use type_align.
10100         * i386-tdep.c (i386_gdbarch_init): Don't call
10101         set_gdbarch_long_long_align_bit.
10102         * gdbarch.sh: Remove long_long_align_bit.
10103         * gdbarch.c, gdbarch.h: Rebuild.
10104         * arc-tdep.c (arc_type_align): New function.
10105         (arc_gdbarch_init): Use arc_type_align.  Don't call
10106         set_gdbarch_long_long_align_bit.
10107
10108 2018-04-30  Tom Tromey  <tom@tromey.com>
10109
10110         * rust-lang.c (rust_type_alignment): Remove.
10111         (rust_composite_type): Use type_align.
10112
10113 2018-04-30  Tom Tromey  <tom@tromey.com>
10114
10115         * NEWS: Mention Type.align.
10116         * python/py-type.c (typy_get_alignof): New function.
10117         (type_object_getset): Add "alignof".
10118
10119 2018-04-30  Tom Tromey  <tom@tromey.com>
10120
10121         PR exp/17095:
10122         * NEWS: Update.
10123         * std-operator.def (UNOP_ALIGNOF): New operator.
10124         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
10125         New.
10126         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
10127         * c-lang.c (c_op_print_tab): Add alignof.
10128         * c-exp.y (ALIGNOF): New token.
10129         (exp): Add "ALIGNOF" production.
10130         (ident_tokens): Add _Alignof and alignof.
10131
10132 2018-04-30  Tom Tromey  <tom@tromey.com>
10133
10134         * i386-tdep.c (i386_type_align): New function.
10135         (i386_gdbarch_init): Update.
10136         * gdbarch.sh (type_align): New method.
10137         * gdbarch.c, gdbarch.h: Rebuild.
10138         * arch-utils.h (default_type_align): Declare.
10139         * arch-utils.c (default_type_align): New function.
10140         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
10141         (struct type) <align_log2>: New field.
10142         <instance_flags>: Now a bitfield.
10143         (TYPE_RAW_ALIGN): New macro.
10144         (type_align, type_raw_align, set_type_align): Declare.
10145         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
10146         functions.
10147         * dwarf2read.c (quirk_rust_enum): Set type alignment.
10148         (get_alignment, maybe_set_alignment): New functions.
10149         (read_structure_type, read_enumeration_type, read_array_type)
10150         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
10151         (read_subrange_type, read_base_type): Set type alignment.
10152
10153 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
10154
10155         * dwarf2read.c (read_index_from_section): Use bool.
10156
10157 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
10158
10159         PR gdb/22950
10160         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
10161         with #ifdef.
10162
10163 2018-04-29  John Reiser  <jreiser@BitWagon.com>
10164
10165         PR build/22873
10166         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
10167         last step, and do it atomically.
10168
10169 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
10170
10171         * compile/compile-c-types.c (convert_int, convert_float):
10172         Update for C FE v1.
10173
10174 2018-04-27  Tom Tromey  <tom@tromey.com>
10175
10176         PR rust/22545:
10177         * rust-lang.c (rust_inclusive_range_type_p): New function.
10178         (rust_range): Handle inclusive ranges.
10179         (rust_compute_range): Likewise.
10180         * rust-exp.y (struct rust_op) <inclusive>: New field.
10181         (DOTDOTEQ): New constant.
10182         (range_expr): Add "..=" productions.
10183         (operator_tokens): Add "..=" token.
10184         (ast_range): Add "inclusive" parameter.
10185         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
10186         ranges.
10187         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
10188         bounds values.
10189         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
10190         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
10191         Update comments.
10192         * expprint.c (print_subexp_standard): Handle new bounds values.
10193         (dump_subexp_body_standard): Likewise.
10194
10195 2018-04-27  Tom Tromey  <tom@tromey.com>
10196
10197         * configure: Rebuild.
10198         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
10199         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
10200         "OVERRIDE".
10201         (class symbol_needs_eval_context): Likewise.
10202         * dwarf2read.c (mock_mapped_index::symbol_name_count)
10203         (mock_mapped_index::symbol_name_at): Use "override".  Remove
10204         "virtual".
10205         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
10206         "override".
10207         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
10208         * aarch64-tdep.c (instruction_reader::read): Use "override".
10209         (instruction_reader_test::read): Likewise.
10210         * arm-tdep.c (instruction_reader::read): Use "override".
10211         (instruction_reader_thumb::read): Likewise.
10212
10213 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
10214
10215         PR remote/9665
10216         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
10217         instead of remote_send.
10218         (remote_send): Remove.
10219
10220 2018-04-26  Pedro Alves  <palves@redhat.com>
10221
10222         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
10223         find_function_start_sal instead of find_pc_line.
10224
10225 2018-04-26  Pedro Alves  <palves@redhat.com>
10226
10227         * breakpoint.c (set_breakpoint_location_function): Handle
10228         mst_data_gnu_ifunc.
10229         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
10230         * elfread.c (elf_symtab_read): Give data symbols with
10231         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
10232         (elf_rel_plt_read): Update comment.
10233         * linespec.c (convert_linespec_to_sals): Handle
10234         mst_data_gnu_ifunc.
10235         (minsym_found): Handle mst_data_gnu_ifunc.
10236         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
10237         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
10238         * parse.c (find_minsym_type_and_address): Handle
10239         mst_data_gnu_ifunc.
10240         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
10241         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
10242         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
10243         comment.
10244         <mst_data_gnu_ifunc>: New enumerator.
10245
10246 2018-04-26  Pedro Alves  <palves@redhat.com>
10247
10248         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
10249         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
10250         'want_trampoline' parameter by a lookup_msym_prefer parameter.
10251         Handle it.
10252         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
10253         (lookup_minimal_symbol_by_pc): Adjust.
10254         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
10255         (lookup_solib_trampoline_symbol_by_pc): Adjust.
10256         * minsyms.h (lookup_msym_prefer): New enum.
10257         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10258         parameter by a lookup_msym_prefer parameter.
10259
10260 2018-04-26  Pedro Alves  <palves@redhat.com>
10261
10262         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
10263         ends in "@plt" instead of looking at the symbol's section.
10264
10265 2018-04-26  Pedro Alves  <palves@redhat.com>
10266
10267         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
10268         all references.
10269         (find_pc_partial_function_gnu_ifunc): Rename to ...
10270         (find_pc_partial_function): ... this, and remove references to
10271         'is_gnu_ifunc_p'.
10272         (find_pc_partial_function): Delete old implementation.
10273         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
10274
10275 2018-04-26  Pedro Alves  <palves@redhat.com>
10276
10277         * linespec.c (struct bound_minimal_symbol_search_key): New.
10278         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
10279         skip first line if we found a GNU ifunc minimal symbol by name.
10280         (compare_msymbols): Change parameters to work with a destructured
10281         lhs minsym.
10282         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
10283         functions.
10284
10285 2018-04-26  Pedro Alves  <palves@redhat.com>
10286
10287         * breakpoint.c (set_breakpoint_location_function): Don't resolve
10288         ifunc targets here.  Instead, if we have an ifunc minsym, use its
10289         address/name.
10290         (add_location_to_breakpoint): Store the minsym and the objfile in
10291         the breakpoint location.
10292         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
10293         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
10294         Record the minsym in the sal.
10295         * symtab.h (symtab_and_line) <msymbol>: New field.
10296
10297 2018-04-26  Pedro Alves  <palves@redhat.com>
10298
10299         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
10300         unless we actually resolved the ifunc.
10301
10302 2018-04-26  Pedro Alves  <palves@redhat.com>
10303
10304         * c-exp.y (variable production): Prefer ifunc minsyms over
10305         regular function symbols.
10306         * symtab.c (find_gnu_ifunc): New function.
10307         * minsyms.h (lookup_msym_prefer): New enum.
10308         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10309         parameter by a lookup_msym_prefer parameter.
10310         * symtab.h (find_gnu_ifunc): New declaration.
10311
10312 2018-04-26  Pedro Alves  <palves@redhat.com>
10313
10314         * blockframe.c (find_gnu_ifunc_target_type): New function.
10315         (find_function_type): New.
10316         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
10317         return a value with a memory address.
10318         (eval_call): For calls to GNU ifunc functions, try to find the
10319         type of the target function from the type that the resolver
10320         returns.
10321         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
10322         symbols.
10323         * infcall.c (find_function_return_type): Delete.
10324         (find_function_addr): Add 'function_type' parameter.  For calls to
10325         GNU ifunc functions, try to find the type of the target function
10326         from the type that the resolver returns, and return it via
10327         FUNCTION_TYPE.
10328         (call_function_by_hand_dummy): Adjust to use the function type
10329         returned by find_function_addr.
10330         (find_function_addr): Add 'function_type' parameter and move
10331         description here.
10332         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
10333         declarations.
10334
10335 2018-04-26  Pedro Alves  <palves@redhat.com>
10336
10337         * c-exp.y (variable production): Skip finding an alias for ifunc
10338         symbols.
10339
10340 2018-04-26  Pedro Alves  <palves@redhat.com>
10341
10342         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
10343
10344 2018-04-25  Pedro Alves  <palves@redhat.com>
10345
10346         * infcmd.c (kill_command): Print the pid as string, not the whole
10347         thread's ptid.  Add comment.  s/has been killed/killed/ in output
10348         message.
10349         * remote.c (remote_detach_1): Print the pid as string, not the
10350         whole thread's ptid.
10351
10352 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
10353             Sergio Durigan Junior  <sergiodj@redhat.com>
10354             Pedro Alves  <palves@redhat.com>
10355
10356         * infcmd.c (kill_command): Print message when inferior has
10357         been killed.
10358         * inferior.c (print_inferior_events): Remove 'static'.  Set as
10359         '1'.
10360         (add_inferior): Improve message printed when
10361         'print_inferior_events' is on.
10362         (exit_inferior): Remove message printed when
10363         'print_inferior_events' is on.
10364         (detach_inferior): Improve message printed when
10365         'print_inferior_events' is on.
10366         (initialize_inferiors): Use 'add_inferior_silent' to set
10367         'current_inferior_'.
10368         * inferior.h (print_inferior_events): Declare here as
10369         'extern'.
10370         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
10371         '[Detaching...]' messages when 'print_inferior_events' is on.
10372         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
10373         as prefix/suffix for messages.  Remove periods.  Fix erroneous
10374         'Detaching after fork from child...', replace it by '... from
10375         parent...'.
10376         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
10377         prefix/suffix when printing 'Detaching...' messages.  Print
10378         them when 'print_inferior_events' is on.
10379         * remote.c (remote_detach_1): Print message when detaching
10380         from inferior and '!is_fork_parent'.
10381
10382 2018-04-24  Tom Tromey  <tom@tromey.com>
10383
10384         * cli-out.h: Reindent.
10385
10386 2018-04-24  Tom Tromey  <tom@tromey.com>
10387
10388         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
10389         (cli_ui_out::do_field_string): Use fputs_filtered.
10390         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
10391
10392 2018-04-23  Tom Tromey  <tom@tromey.com>
10393
10394         * guile/scm-frame.c (gdbscm_frame_read_var): Use
10395         gdb::unique_xmalloc_ptr.
10396
10397 2018-04-23  Tom Tromey  <tom@tromey.com>
10398
10399         * configure: Rebuild.
10400
10401 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
10402
10403         PR gdb/23095
10404         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
10405         prepare_for_testing.  Set normal_bp to r_debug_state if target
10406         is bsd.
10407
10408 2018-04-21  Pedro Alves  <palves@redhat.com>
10409             Rajendra SY  <rajendra.sy@gmail.com>
10410
10411         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
10412         * remote.c (extended_remote_attach): In all-stop mode, mark the
10413         thread as executing.
10414
10415 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
10416
10417         * thread.c (thread_apply_all_command): Fix comment.
10418         (thread_command): Fix comment.
10419
10420 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
10421
10422         * common/tdesc.h (tdesc_create_feature): Remove xml filename
10423         parameter.
10424         * features/aarch64-core.c (create_feature_aarch64_core):
10425         Regenerate.
10426         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
10427         Likewise.
10428         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
10429         Likewise.
10430         * features/i386/32bit-avx512.c
10431         (create_feature_i386_32bit_avx512): Likewise.
10432         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
10433         Likewise.
10434         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
10435         Likewise.
10436         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
10437         Likewise.
10438         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
10439         Likewise.
10440         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
10441         Likewise.
10442         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
10443         Likewise.
10444         * features/i386/64bit-avx512.c
10445         (create_feature_i386_64bit_avx512): Likewise.
10446         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
10447         Likewise.
10448         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
10449         Likewise.
10450         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
10451         Likewise.
10452         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
10453         Likewise.
10454         * features/i386/64bit-segments.c
10455         (create_feature_i386_64bit_segments): Likewise.
10456         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
10457         Likewise.
10458         * features/i386/x32-core.c
10459         (create_feature_i386_x32_core): Likewise.
10460         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
10461         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
10462         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
10463         * target-descriptions.c: In generated code, don't pass xml
10464         filename.
10465
10466 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10467
10468         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
10469         (print_xml_feature::visit_post): Likewise.
10470         (print_xml_feature::visit): Likewise.
10471         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
10472         (print_xml_feature): Add new class.
10473         * regformats/regdat.sh: Null xmltarget on feature targets.
10474         * target-descriptions.c (struct target_desc): Add xmltarget.
10475         (maintenance_check_tdesc_xml_convert): Add unittest function.
10476         (tdesc_get_features_xml): Add function to get xml.
10477         (maintenance_check_xml_descriptions): Test xml generation.
10478         * xml-tdesc.c (string_read_description_xml): Add function.
10479         * xml-tdesc.h (string_read_description_xml): Add declaration.
10480
10481 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10482
10483         * features/Makefile: Add feature marker to targets with new style
10484         target descriptions.
10485         * regformats/aarch64.dat: Regenerate.
10486         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
10487         * regformats/i386/amd64-avx-linux.dat: Likewise.
10488         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
10489         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
10490         * regformats/i386/amd64-linux.dat: Likewise.
10491         * regformats/i386/amd64-mpx-linux.dat: Likewise.
10492         * regformats/i386/amd64.dat: Likewise.
10493         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
10494         * regformats/i386/i386-avx-linux.dat: Likewise.
10495         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
10496         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
10497         * regformats/i386/i386-linux.dat: Likewise.
10498         * regformats/i386/i386-mmx-linux.dat: Likewise.
10499         * regformats/i386/i386-mpx-linux.dat: Likewise.
10500         * regformats/i386/i386.dat: Likewise.
10501         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
10502         * regformats/i386/x32-avx-linux.dat: Likewise.
10503         * regformats/i386/x32-linux.dat: Likewise.
10504         * regformats/tic6x-c62x-linux.dat: Likewise.
10505         * regformats/tic6x-c64x-linux.dat: Likewise.
10506         * regformats/tic6x-c64xp-linux.dat: Likewise.
10507         * regformats/regdat.sh: Parse feature marker.
10508
10509 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10510
10511         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
10512         (tdesc_osabi_name): Likewise.
10513         * target-descriptions.c (tdesc_architecture_name): Add new
10514         function.
10515         (tdesc_osabi_name): Likewise.
10516
10517 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10518
10519         * common/tdesc.c (tdesc_predefined_type): Move to here.
10520         (tdesc_named_type): Likewise.
10521         (tdesc_create_vector): Likewise.
10522         (tdesc_create_struct): Likewise.
10523         (tdesc_set_struct_size): Likewise.
10524         (tdesc_create_union): Likewise.
10525         (tdesc_create_flags): Likewise.
10526         (tdesc_create_enum): Likewise.
10527         (tdesc_add_field): Likewise.
10528         (tdesc_add_typed_bitfield): Likewise.
10529         (tdesc_add_bitfield): Likewise.
10530         (tdesc_add_flag): Likewise.
10531         (tdesc_add_enum_value): Likewise.
10532         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
10533         (struct tdesc_type_vector): Likewise.
10534         (struct tdesc_type_field): Likewise.
10535         (struct tdesc_type_with_fields): Likewise.
10536         (tdesc_create_enum): Add declaration.
10537         (tdesc_add_typed_bitfield): Likewise.
10538         (tdesc_add_enum_value): Likewise.
10539         * target-descriptions.c (tdesc_type_field): Move from here.
10540         (tdesc_type_builtin): Likewise.
10541         (tdesc_type_vector): Likewise.
10542         (tdesc_type_with_fields): Likewise.
10543         (tdesc_predefined_types): Likewise.
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         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
10557         (tdesc_add_typed_bitfield): Likewise.
10558         (tdesc_add_enum_value): Likewise.
10559
10560 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10561
10562         * common/tdesc.c (tdesc_feature::accept): Move to here.
10563         (tdesc_feature::operator==): Likewise.
10564         (tdesc_create_reg): Likewise.
10565         * common/tdesc.h (tdesc_type_kind): Likewise.
10566         (struct tdesc_type): Likewise.
10567         (struct tdesc_feature): Likewise.
10568         * regformats/regdat.sh: Create a feature.
10569         * target-descriptions.c (tdesc_type_kind): Move from here.
10570         (tdesc_type): Likewise.
10571         (tdesc_type_up): Likewise.
10572         (tdesc_feature): Likewise.
10573         (tdesc_create_reg): Likewise.
10574
10575 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10576
10577         * Makefile.in: Add arch/tdesc.c
10578         * common/tdesc.c: New file.
10579         * common/tdesc.h (tdesc_element_visitor): Move to here.
10580         (tdesc_element): Likewise.
10581         (tdesc_reg): Likewise.
10582         (tdesc_reg_up): Likewise.
10583         * regformats/regdef.h (reg): Add offset to constructors.
10584         * target-descriptions.c (tdesc_element_visitor): Move from here.
10585         (tdesc_element): Likewise.
10586         (tdesc_reg): Likewise.
10587         (tdesc_reg_up): Likewise.
10588
10589 2018-04-17  Tom Tromey  <tom@tromey.com>
10590
10591         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
10592         discriminant field.
10593
10594 2018-04-17  Tom Tromey  <tom@tromey.com>
10595
10596         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
10597
10598 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
10599
10600         * symtab.c (print_symbol_info): Skip printing filename and line
10601         number when `last' is NULL.
10602         (symtab_symbol_info): Use empty string instead of NULL for first
10603         invocation of print_symbol_info.
10604         (rbreak_command): Pass NULL to `last' parameter of
10605         print_symbol_info.
10606
10607 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
10608
10609         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
10610         instead of nullptr.
10611
10612 2018-04-16  Pedro Alves  <palves@redhat.com>
10613
10614         * MAINTAINERS (sh): Remove.
10615         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
10616         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
10617         (ALLDEPFILES): Remove sh64-tdep.c.
10618         * NEWS: Mentions that support for SH-5/SH64 is removed.
10619         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
10620         (sh*-*-openbsd*): Ditto.
10621         (sh64-*-elf*): Remove.
10622         (sh*): Remove.
10623         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
10624         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
10625         * sh-tdep.c: No longer include "sh64-tdep.h".
10626         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
10627         * sh64-tdep.c, sh64-tdep.h: Remove files.
10628
10629 2018-04-16  Pedro Alves  <palves@redhat.com>
10630
10631         * MAINTAINERS: Remove m88k.
10632         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
10633         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
10634         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
10635         * NEWS: Mention that support for m88k was removed.
10636         * configure.host (m88*-*-*): Remove support.
10637         * configure.nat (m88k-*-*): Remove support.
10638         * configure.tgt (m88*-*-openbsd*): Remove.
10639         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
10640
10641 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
10642
10643         * configure.tgt (x86_tobjs): New variable.
10644         (amd64_tobjs, i386_tobjs): Use it.
10645
10646 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
10647
10648         * symtab.c (print_symbol_info): Precede the symbol definition by
10649         the line number when available.
10650         * NEWS: Advertise this enhancement.
10651
10652 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10653
10654         * NEWS (New options): announce set/show record btrace cpu.
10655         * btrace.c: Include record-btrace.h.
10656         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
10657         the vendor is unknown.
10658         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
10659         Maybe overwrite the btrace configuration's cpu.
10660         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
10661         (btrace_fetch): Add cpu parameter.  Update callers.
10662         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
10663         Maybe overwrite the btrace configuration's cpu.  Skip enabling
10664         errata workarounds if the vendor is unknown.
10665         * python/py-record-btrace.c: Include record-btrace.h.
10666         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
10667         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
10668         * record-btrace.c (record_btrace_cpu_state_kind): New.
10669         (record_btrace_cpu): New.
10670         (set_record_btrace_cpu_cmdlist): New.
10671         (record_btrace_get_cpu): New.
10672         (require_btrace_thread, record_btrace_info)
10673         (record_btrace_resume_thread): Call record_btrace_get_cpu.
10674         (cmd_set_record_btrace_cpu_none): New.
10675         (cmd_set_record_btrace_cpu_auto): New.
10676         (cmd_set_record_btrace_cpu): New.
10677         (cmd_show_record_btrace_cpu): New.
10678         (_initialize_record_btrace): Initialize set/show record btrace cpu
10679         commands.
10680         * record-btrace.h (record_btrace_get_cpu): New.
10681
10682 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10683
10684         * record.c (set_record_command): Fix typo in message.
10685
10686 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10687
10688         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
10689
10690 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10691
10692         * infrun.c (process_event_stop_test): Call
10693         gdbarch_in_indirect_branch_thunk.
10694         * gdbarch.sh (in_indirect_branch_thunk): New.
10695         * gdbarch.c: Regenerated.
10696         * gdbarch.h: Regenerated.
10697         * x86-tdep.h: New.
10698         * x86-tdep.c: New.
10699         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
10700         (HFILES_NO_SRCDIR): Add x86-tdep.h.
10701         (ALLDEPFILES): Add x86-tdep.c.
10702         * arch-utils.h (default_in_indirect_branch_thunk): New.
10703         * arch-utils.c (default_in_indirect_branch_thunk): New.
10704         * i386-tdep: Include x86-tdep.h.
10705         (i386_in_indirect_branch_thunk): New.
10706         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
10707         function.
10708         * amd64-tdep: Include x86-tdep.h.
10709         (amd64_in_indirect_branch_thunk): New.
10710         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
10711
10712 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
10713
10714         PR gdb/23053
10715         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
10716         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
10717         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
10718         regression.
10719
10720 2018-04-12  Tom Tromey  <tom@tromey.com>
10721
10722         * rust-lang.c (rust_print_struct_def): Remove univariant code.
10723         (rust_evaluate_subexp): Likewise.
10724
10725 2018-04-12  Pedro Alves  <palves@redhat.com>
10726
10727         * procfs.c (procfs_detach): Make forward declaration's prototype
10728         match definition's protototype.
10729         (proc_get_LDT_entry): Remove stale do_cleanups call.
10730
10731 2018-04-12  Pedro Alves  <palves@redhat.com>
10732
10733         * target.h (target_ops::to_has_exited): Delete.
10734         (target_has_exited): Delete.
10735         * target-delegates.c: Regenerate.
10736
10737 2018-04-11  Pedro Alves  <palves@redhat.com>
10738
10739         * target.c (fileio_fh_t::t): Add comment.
10740         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
10741         (target_fileio_close): Handle a NULL target.
10742         (invalidate_fileio_fh): New.
10743         (target_close): Call it.
10744         * remote.c (remote_hostio_send_command): No longer check whether
10745         remote_desc is open.
10746
10747 2018-04-11  Pedro Alves  <palves@redhat.com>
10748
10749         * target.c (fileio_fh_t): Make it a named struct instead of a
10750         typedef.
10751         (fileio_fh_t::is_closed): New method.
10752         (DEF_VEC_O (fileio_fh_t)): Remove.
10753         (fileio_fhandles): Now a std::vector.
10754         (is_closed_fileio_fh): Delete.
10755         (acquire_fileio_fd): Adjust.  Rename parameters.
10756         (release_fileio_fd): Adjust.
10757         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
10758         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
10759         (target_fileio_close): Adjust.
10760
10761 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
10762
10763         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
10764         index.
10765
10766 2018-04-10  Pedro Alves  <palves@redhat.com>
10767
10768         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
10769         (scoped_finish_thread_state): New class.
10770         * infcmd.c (run_command_1): Use it instead of finish_thread_state
10771         cleanup.
10772         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
10773         (fetch_inferior_event, normal_stop): Likewise.
10774         * thread.c (finish_thread_state_cleanup): Delete.
10775
10776 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10777             Pedro Alves  <palves@redhat.com>
10778
10779         * value.c: Include "selftest.h" and "common/array-view.h".
10780         (struct range) <operator ==>: New.
10781         (test_ranges_contain): New.
10782         (check_ranges_vector): New.
10783         (test_insert_into_bit_range_vector): New.
10784         (_initialize_values): Register selftests.
10785         * common/array-view.h (operator==, operator!=): New.
10786
10787 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10788
10789         * common/gdb_vecs.h (unordered_remove): Add overload that takes
10790         an iterator.
10791         * inline-frame.c: Include <algorithm>.
10792         (struct inline_state): Add constructor.
10793         (inline_state_s): Remove.
10794         (DEF_VEC_O(inline_state_s)): Remove.
10795         (inline_states): Change type to std::vector.
10796         (find_inline_frame_state): Adjust to std::vector.
10797         (allocate_inline_frame_state): Remove.
10798         (clear_inline_frame_state): Adjust to std::vector.
10799         (skip_inline_frames): Adjust to std::vector.
10800
10801 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10802
10803         * tracepoint.h (struct trace_state_variable): Add constructor.
10804         <name>: Change type to std::string.
10805         * tracepoint.c (tsv_s): Remove.
10806         (DEF_VEC_O(tsv_s)): Remove.
10807         (tvariables): Change to std::vector.
10808         (create_trace_state_variable): Adjust to std::vector.
10809         (find_trace_state_variable): Likewise.
10810         (find_trace_state_variable_by_number): Likewise.
10811         (delete_trace_state_variable): Likewise.
10812         (trace_variable_command): Adjust to std::string.
10813         (delete_trace_variable_command): Likewise.
10814         (tvariables_info_1): Adjust to std::vector.
10815         (save_trace_state_variables): Likewise.
10816         (start_tracing): Likewise.
10817         (merge_uploaded_trace_state_variables): Adjust to std::vector
10818         and std::string.
10819         * target.h (struct target_ops)
10820         <to_download_trace_state_variable>: Pass reference to
10821         trace_state_variable.
10822         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
10823         * target-delegates.c: Re-generate.
10824         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
10825         (mi_tsv_deleted): Likewise.
10826         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
10827         * remote.c (remote_download_trace_state_variable): Change
10828         pointer to reference and adjust.
10829         * make-target-delegates (parse_argtypes): Handle references.
10830         (write_function_header): Likewise.
10831         (munge_type): Likewise.
10832
10833 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10834
10835         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
10836         string_view-selftests.c.
10837         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
10838         testsuite.
10839         * unittests/basic_string_view/cons/char/1.cc: Likewise.
10840         * unittests/basic_string_view/cons/char/2.cc: Likewise.
10841         * unittests/basic_string_view/cons/char/3.cc: Likewise.
10842         * unittests/basic_string_view/element_access/char/1.cc:
10843         Likewise.
10844         * unittests/basic_string_view/element_access/char/empty.cc:
10845         Likewise.
10846         * unittests/basic_string_view/element_access/char/front_back.cc:
10847         Likewise.
10848         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
10849         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
10850         Likewise.
10851         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
10852         Likewise.
10853         * unittests/basic_string_view/modifiers/swap/char/1.cc:
10854         Likewise.
10855         * unittests/basic_string_view/operations/compare/char/1.cc:
10856         Likewise.
10857         * unittests/basic_string_view/operations/compare/char/13650.cc:
10858         Likewise.
10859         * unittests/basic_string_view/operations/copy/char/1.cc:
10860         Likewise.
10861         * unittests/basic_string_view/operations/data/char/1.cc:
10862         Likewise.
10863         * unittests/basic_string_view/operations/find/char/1.cc:
10864         Likewise.
10865         * unittests/basic_string_view/operations/find/char/2.cc:
10866         Likewise.
10867         * unittests/basic_string_view/operations/find/char/3.cc:
10868         Likewise.
10869         * unittests/basic_string_view/operations/find/char/4.cc:
10870         Likewise.
10871         * unittests/basic_string_view/operations/rfind/char/1.cc:
10872         Likewise.
10873         * unittests/basic_string_view/operations/rfind/char/2.cc:
10874         Likewise.
10875         * unittests/basic_string_view/operations/rfind/char/3.cc:
10876         Likewise.
10877         * unittests/basic_string_view/operations/substr/char/1.cc:
10878         Likewise.
10879         * unittests/basic_string_view/operators/char/2.cc: Likewise.
10880         * unittests/string_view-selftests.c: New file.
10881
10882 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10883
10884         * unittests/basic_string_view/capacity/1.cc: New file.
10885         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
10886         * unittests/basic_string_view/cons/char/1.cc: New file.
10887         * unittests/basic_string_view/cons/char/2.cc: New file.
10888         * unittests/basic_string_view/cons/char/3.cc: New file.
10889         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
10890         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
10891         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
10892         * unittests/basic_string_view/element_access/char/1.cc: New file.
10893         * unittests/basic_string_view/element_access/char/2.cc: New file.
10894         * unittests/basic_string_view/element_access/char/empty.cc: New file.
10895         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
10896         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
10897         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
10898         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
10899         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
10900         * unittests/basic_string_view/include.cc: New file.
10901         * unittests/basic_string_view/inserters/char/1.cc: New file.
10902         * unittests/basic_string_view/inserters/char/2.cc: New file.
10903         * unittests/basic_string_view/inserters/char/3.cc: New file.
10904         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
10905         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
10906         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
10907         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
10908         * unittests/basic_string_view/literals/types.cc: New file.
10909         * unittests/basic_string_view/literals/values.cc: New file.
10910         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
10911         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
10912         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
10913         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
10914         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
10915         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
10916         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
10917         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
10918         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
10919         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
10920         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
10921         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
10922         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
10923         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
10924         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
10925         * unittests/basic_string_view/operations/data/char/1.cc: New file.
10926         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
10927         * unittests/basic_string_view/operations/find/char/1.cc: New file.
10928         * unittests/basic_string_view/operations/find/char/2.cc: New file.
10929         * unittests/basic_string_view/operations/find/char/3.cc: New file.
10930         * unittests/basic_string_view/operations/find/char/4.cc: New file.
10931         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
10932         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
10933         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
10934         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
10935         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
10936         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
10937         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
10938         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
10939         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
10940         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
10941         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
10942         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
10943         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
10944         * unittests/basic_string_view/operators/char/2.cc: New file.
10945         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
10946         * unittests/basic_string_view/range_access/char/1.cc: New file.
10947         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
10948         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
10949         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
10950         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
10951         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
10952         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
10953         * unittests/basic_string_view/requirements/typedefs.cc: New file.
10954         * unittests/basic_string_view/typedefs.cc: New file.
10955         * unittests/basic_string_view/types/1.cc: New file.
10956
10957 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10958
10959         * common/gdb_string_view.h: Remove libstdc++ implementation
10960         details, adjust to gdb reality.
10961         * common/gdb_string_view.tcc: Likewise.
10962         * cli/cli-script.c (struct string_view): Remove.
10963         (user_args) <m_args>: Change element type to gdb::string_view.
10964         (user_args::insert_args): Adjust.
10965
10966 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10967
10968         * common/gdb_string_view.h: New file.
10969         * common/gdb_string_view.tcc: New file.
10970
10971 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10972
10973         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
10974         * configure: Re-generate.
10975
10976 2018-04-09  Pedro Alves  <palves@redhat.com>
10977
10978         * gdbarch.sh: Include "observable.h" instead of "observer.h".
10979         (set_target_gdbarch): Call
10980         gdb::observers::architecture_changed.notify instead of
10981         observer_notify_architecture_changed.
10982
10983 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10984
10985         * tracepoint.c (struct current_traceframe_cleanup): Remove.
10986         (do_restore_current_traceframe_cleanup): Remove.
10987         (restore_current_traceframe_cleanup_dtor): Remove.
10988         (make_cleanup_restore_current_traceframe): Remove.
10989         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
10990         New.
10991         * tracepoint.h (struct scoped_restore_current_traceframe): New.
10992         * infrun.c (fetch_inferior_event): Use
10993         scoped_restore_current_traceframe.
10994
10995 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10996
10997         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
10998         Remove.
10999         <n_allocated_type_units>: Remove.
11000         <all_type_units>: Change to std::vector.
11001         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11002         to std::vector change.
11003         (dwarf2_per_objfile::get_cutu): Likewise.
11004         (dwarf2_per_objfile::get_tu): Likewise.
11005         (create_signatured_type_table_from_index): Likewise.
11006         (create_signatured_type_table_from_debug_names): Likewise.
11007         (dw2_symtab_iter_next): Likewise.
11008         (dw2_print_stats): Likewise.
11009         (dw2_expand_all_symtabs): Likewise.
11010         (dw2_expand_marked_cus): Likewise.
11011         (dw2_debug_names_iterator::next): Likewise.
11012         (dwarf2_initialize_objfile): Likewise.
11013         (add_signatured_type_cu_to_table): Likewise.
11014         (create_all_type_units): Likewise.
11015         (add_type_unit): Likewise.
11016         (struct tu_abbrev_offset): Add constructor.
11017         (build_type_psymtabs_1): Adjust to std::vector change.
11018         (print_tu_stats): Likewise.
11019         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11020         (write_debug_names): Likewise.
11021
11022 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11023
11024         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
11025         Make an std::vector.
11026         <n_comp_units>: Remove.
11027         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11028         to std::vector change.
11029         (dwarf2_per_objfile::get_cutu): Likewise.
11030         (dwarf2_per_objfile::get_cu): Likewise.
11031         (create_cus_from_index): Likewise.
11032         (create_addrmap_from_index): Likewise.
11033         (create_addrmap_from_aranges): Likewise.
11034         (dwarf2_read_index): Likewise.
11035         (dw2_find_last_source_symtab): Likewise.
11036         (dw2_map_symtabs_matching_filename): Likewise.
11037         (dw2_symtab_iter_next): Likewise.
11038         (dw2_print_stats): Likewise.
11039         (dw2_expand_all_symtabs): Likewise.
11040         (dw2_expand_symtabs_with_fullname): Likewise.
11041         (dw2_expand_marked_cus): Likewise.
11042         (dw2_map_symbol_filenames): Likewise.
11043         (create_cus_from_debug_names): Likewise.
11044         (dwarf2_read_debug_names): Likewise.
11045         (dw2_debug_names_iterator::next): Likewise.
11046         (dwarf2_initialize_objfile): Likewise.
11047         (set_partial_user): Likewise.
11048         (dwarf2_build_psymtabs_hard): Likewise.
11049         (read_comp_units_from_section): Remove arguments, adjust to
11050         std::vector change.
11051         (create_all_comp_units): Adjust to std::vector and
11052         read_comp_units_from_section changes.
11053         (dwarf2_find_containing_comp_unit): Adjust to std::vector
11054         change.
11055         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11056         (psyms_seen_size): Likewise.
11057         (write_gdbindex): Likewise.
11058         (write_debug_names): Likewise.
11059
11060 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11061
11062         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
11063         with dwarf2_per_objfile.
11064         (create_cus_from_index): Likewise.
11065         (create_signatured_type_table_from_index): Likewise.
11066         (dwarf2_read_index): Likewise.
11067         (dwarf2_initialize_objfile): Likewise.
11068         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
11069         per_cu rather than get_dwarf2_per_objfile.
11070
11071 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11072
11073         * dwarf2read.h (struct signatured_type): Forward declare.
11074         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
11075         New methods.
11076         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
11077         (dw2_get_cutu): ...this.
11078         (dwarf2_per_objfile::get_cu): Rename from...
11079         (dw2_get_cu): ...this.
11080         (dwarf2_per_objfile::get_tu): New.
11081         (create_addrmap_from_index): Adjust.
11082         (create_addrmap_from_aranges): Adjust.
11083         (dw2_find_last_source_symtab): Adjust.
11084         (dw2_map_symtabs_matching_filename): Adjust.
11085         (dw2_symtab_iter_next): Adjust.
11086         (dw2_print_stats): Adjust.
11087         (dw2_expand_all_symtabs): Adjust.
11088         (dw2_expand_symtabs_with_fullname): Adjust.
11089         (dw2_expand_marked_cus): Adjust.
11090         (dw_expand_symtabs_matching_file_matcher): Adjust.
11091         (dw2_map_symbol_filenames): Adjust.
11092         (dw2_debug_names_iterator::next): Adjust.
11093         (dwarf2_initialize_objfile): Adjust.
11094         (set_partial_user): Adjust.
11095         (dwarf2_build_psymtabs_hard): Adjust.
11096
11097 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11098
11099         * dwarf2read.c (create_signatured_type_table_from_debug_names):
11100         Remove unused variables.
11101         (dw2_map_symtabs_matching_filename): Likewise.
11102         (dwarf2_record_block_ranges): Likewise.
11103         (dwarf2_read_addr_index): Likewise.
11104         (follow_die_offset): Likewise.
11105
11106 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11107
11108         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
11109         to symbol_file_add_main.
11110
11111 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11112
11113         PR mi/22299
11114         * mi/mi-console.c (do_fputc_async_safe): New.
11115         (mi_console_file::write_async_safe): New.
11116         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
11117         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
11118         New.
11119         * ui-file.c (ui_file::putstrn): Adjust call to
11120         fputstrn_unfiltered.
11121         * utils.c (printchar): Replace do_fputs and do_fprintf
11122         parameters by do_fputc.
11123         (fputstr_filtered): Adjust call to printchar.
11124         (fputstr_unfiltered): Likewise.
11125         (fputstrn_filtered): Likewise.
11126         (fputstrn_unfiltered): Add do_fputc parameter, pass to
11127         printchar.
11128         * utils.h (do_fputc_ftype): New typedef.
11129         (fputstrn_unfiltered): Add do_fputc parameter.
11130
11131 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11132
11133         * regformats/i386/i386-avx.dat: Remove.
11134
11135 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11136
11137         PR gdb/22979
11138         * amd64-tdep.c (amd64_none_init_abi): New function.
11139         (amd64_x32_none_init_abi): New function.
11140         (_initialize_amd64_tdep): Register handlers for x86-64 and
11141         x64_32 with GDB_OSABI_NONE.
11142         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
11143         GDB_OSABI_NONE osabi.
11144
11145 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11146
11147         PR gdb/22980
11148         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
11149         GDB_OSABI_NONE.
11150         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
11151         * osabi.c (gdb_osabi_names): Add "unknown" entry.
11152
11153 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11154
11155         * common/byte-vector.h (char_vector): New type.
11156         * target.h (target_read_alloc): Return
11157         gdb::optional<byte_vector>.
11158         (target_read_stralloc): Return gdb::optional<char_vector>.
11159         (target_get_osdata): Return gdb::optional<char_vector>.
11160         * target.c (target_read_alloc_1): Templatize.  Replacement
11161         manual memory management with vector.
11162         (target_read_alloc): Change return type, adjust.
11163         (target_read_stralloc): Change return type, adjust.
11164         (target_get_osdata): Change return type, adjust.
11165         * auxv.c (struct auxv_info) <length>: Remove.
11166         <data>: Change type to gdb::optional<byte_vector>.
11167         (auxv_inferior_data_cleanup): Free auxv_info with delete.
11168         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
11169         (target_auxv_search): Adjust.
11170         (fprint_target_auxv): Adjust.
11171         * avr-tdep.c (avr_io_reg_read_command): Adjust.
11172         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
11173         (linux_make_corefile_notes): Adjust.
11174         * osdata.c (get_osdata): Adjust.
11175         * remote.c (remote_get_threads_with_qxfer): Adjust.
11176         (remote_memory_map): Adjust.
11177         (remote_traceframe_info): Adjust.
11178         (btrace_read_config): Adjust.
11179         (remote_read_btrace): Adjust.
11180         (remote_pid_to_exec_file): Adjust.
11181         * solib-aix.c (solib_aix_get_library_list): Adjust.
11182         * solib-dsbt.c (decode_loadmap): Don't free buf.
11183         (dsbt_get_initial_loadmaps): Adjust.
11184         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
11185         * solib-target.c (solib_target_current_sos): Adjust.
11186         * tracepoint.c (sdata_make_value): Adjust.
11187         * xml-support.c (xinclude_start_include): Adjust.
11188         (xml_fetch_content_from_file): Adjust.
11189         * xml-support.h (xml_fetch_another): Change return type.
11190         (xml_fetch_content_from_file): Change return type.
11191         * xml-syscall.c (xml_init_syscalls_info): Adjust.
11192         * xml-tdesc.c (file_read_description_xml): Adjust.
11193         (fetch_available_features_from_target): Change return type.
11194         (target_fetch_description_xml): Adjust.
11195         (target_read_description_xml): Adjust.
11196
11197 2018-04-06  Tom Tromey  <tom@tromey.com>
11198
11199         * value.c (~value): Update.
11200         (struct value) <contents>: Now unique_xmalloc_ptr.
11201         (value_contents_bits_eq, allocate_value_contents)
11202         (value_contents_raw, value_contents_all_raw)
11203         (value_contents_for_printing, value_contents_for_printing_const)
11204         (set_value_enclosing_type): Update.
11205
11206 2018-04-06  Tom Tromey  <tom@tromey.com>
11207
11208         * value.c (range_s): Remove typedef, VEC.
11209         (struct range): Add operator<.
11210         (range_lessthan): Remove.
11211         (ranges_contain): Change type.
11212         (~value): Update.
11213         (struct value) <unavailable, optimized_out>: Now std::vector.
11214         (value_entirely_available)
11215         (value_entirely_covered_by_range_vector)
11216         (value_entirely_unavailable, value_entirely_optimized_out):
11217         Update.
11218         (insert_into_bit_range_vector): Change argument type.
11219         (find_first_range_overlap): Likewise.
11220         (struct ranges_and_idx, value_contents_bits_eq)
11221         (require_not_optimized_out, require_available): Update.
11222         (ranges_copy_adjusted): Change argument types.
11223         (value_optimized_out, value_copy, value_fetch_lazy): Update.
11224
11225 2018-04-06  Tom Tromey  <tom@tromey.com>
11226
11227         * value.c (~value): Update.
11228         (struct value) <parent>: Now a value_ref_ptr.
11229         (value_parent, set_value_parent, value_address, value_copy):
11230         Update.
11231
11232 2018-04-06  Tom Tromey  <tom@tromey.com>
11233
11234         * value.c (struct value): Add constructor, destructor, and member
11235         initializers.
11236         (allocate_value_lazy, value_decref): Update.
11237
11238 2018-04-06  Tom Tromey  <tom@tromey.com>
11239
11240         * value.c (struct value) <released, next>: Remove.
11241         (all_values): Now a std::vector.
11242         (allocate_value_lazy): Update.
11243         (value_next): Remove.
11244         (value_mark, value_free_to_mark, release_value)
11245         (value_release_to_mark): Update.
11246
11247 2018-04-06  Tom Tromey  <tom@tromey.com>
11248
11249         * value.h (fetch_subexp_value, value_release_to_mark): Update.
11250         (free_value_chain): Remove.
11251         * value.c (free_value_chain): Remove.
11252         (value_release_to_mark): Return a std::vector.
11253         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
11254         std::vector.
11255         (check_condition): Update.
11256         * eval.c (fetch_subexp_value): Change "val_chain" to a
11257         std::vector.
11258         * breakpoint.c (update_watchpoint): Update.
11259         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
11260
11261 2018-04-06  Tom Tromey  <tom@tromey.com>
11262
11263         * value.h (free_all_values): Remove.
11264         * value.c (free_all_values): Remove.
11265
11266 2018-04-06  Tom Tromey  <tom@tromey.com>
11267
11268         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
11269         (value_history_chain, value_history_count): Remove.
11270         (value_history): New global.
11271         (record_latest_value, access_value_history, show_values)
11272         (preserve_values): Update.
11273
11274 2018-04-06  Tom Tromey  <tom@tromey.com>
11275
11276         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
11277         * varobj.c (varobj_set_display_format, varobj_set_value)
11278         (install_default_visualizer, construct_visualizer)
11279         (install_new_value, ~varobj, varobj_get_value_type)
11280         (my_value_of_variable, varobj_editable_p): Update.
11281         * c-varobj.c (c_describe_child, c_value_of_variable)
11282         (cplus_number_of_children, cplus_describe_child): Update.
11283         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
11284         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
11285         (ada_value_of_variable, ada_value_is_changeable_p): Update.
11286
11287 2018-04-06  Tom Tromey  <tom@tromey.com>
11288
11289         * printcmd.c (last_examine_address): Change type to
11290         value_ref_ptr.
11291         (do_examine, x_command): Update.
11292
11293 2018-04-06  Tom Tromey  <tom@tromey.com>
11294
11295         * value.c (release_value): Update.
11296         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
11297         (struct bpstats) <val>: Now a value_ref_ptr.
11298         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11299         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11300         (~watchpoint, print_it_watchpoint, watch_command_1)
11301         (invalidate_bp_value_on_memory_change): Update.
11302
11303 2018-04-06  Tom Tromey  <tom@tromey.com>
11304
11305         * varobj.c (varobj_clear_saved_item)
11306         (update_dynamic_varobj_children, install_new_value, ~varobj):
11307         Update.
11308         * value.h (value_incref): Move declaration earlier.
11309         (value_decref): Rename from value_free.
11310         (struct value_ref_policy): New.
11311         (value_ref_ptr): New typedef.
11312         (struct value_deleter): Remove.
11313         (gdb_value_up): Remove typedef.
11314         (release_value): Change return type.
11315         (release_value_or_incref): Remove.
11316         * value.c (set_value_parent): Update.
11317         (value_incref): Change return type.
11318         (value_decref): Rename from value_free.
11319         (value_free_to_mark, free_all_values, free_value_chain): Update.
11320         (release_value): Return value_ref_ptr.
11321         (release_value_or_incref): Remove.
11322         (record_latest_value, set_internalvar, clear_internalvar):
11323         Update.
11324         * stack.c (info_frame_command): Don't call value_free.
11325         * python/py-value.c (valpy_dealloc, valpy_new)
11326         (value_to_value_object): Update.
11327         * printcmd.c (do_examine): Update.
11328         * opencl-lang.c (lval_func_free_closure): Update.
11329         * mi/mi-main.c (register_changed_p): Don't call value_free.
11330         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
11331         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
11332         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
11333         value_free.
11334         * guile/scm-value.c (vlscm_free_value_smob)
11335         (vlscm_scm_from_value): Update.
11336         * frame.c (frame_register_unwind, frame_unwind_register_signed)
11337         (frame_unwind_register_unsigned, get_frame_register_bytes)
11338         (put_frame_register_bytes): Don't call value_free.
11339         * findvar.c (address_from_register): Don't call value_free.
11340         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
11341         * dwarf2loc.c (entry_data_value_free_closure)
11342         (value_of_dwarf_reg_entry, free_pieced_value_closure)
11343         (dwarf2_evaluate_loc_desc_full): Update.
11344         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11345         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11346         (~watchpoint, watch_command_1)
11347         (invalidate_bp_value_on_memory_change): Update.
11348         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
11349
11350 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
11351
11352         PR gdb/23022
11353         * warning.m4: Add -Wno-error=deprecated-register.
11354         * configure: Re-generate.
11355
11356 2018-04-05  Tom Tromey  <tom@tromey.com>
11357
11358         * linespec.h: Remove include of "vec.h".
11359
11360 2018-04-05  Tom Tromey  <tom@tromey.com>
11361
11362         * linespec.c (typep): Remove typedef.
11363         (find_methods, find_superclass_methods): Take a std::vector.
11364         (find_method): Use std::vector.
11365
11366 2018-04-05  Tom Tromey  <tom@tromey.com>
11367
11368         * utils.c (compare_strings): Remove.
11369         * utils.h (compare_strings): Remove.
11370         * objc-lang.h (find_imps): Update.
11371         * objc-lang.c (find_methods): Take a std::vector.
11372         (uniquify_strings, find_imps): Likewise.
11373         * linespec.c (find_methods): Take a std::vector.
11374         (decode_objc): Use std::vector.
11375         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
11376         a std::vector.
11377         (find_method, find_function_symbols): Use std::vector.
11378
11379 2018-04-05  Tom Tromey  <tom@tromey.com>
11380
11381         * completer.c (completion_tracker::completion_tracker): Remove
11382         cast.
11383         (completion_tracker::discard_completions): Likewise.
11384         * breakpoint.c (ambiguous_names_p): Remove cast.
11385         * ada-lang.c (_initialize_ada_language): Remove cast.
11386         * utils.h (streq): Update.
11387         (streq_hash): Add new declaration.
11388         * utils.c (streq): Return bool.
11389         (streq_hash): New function.
11390
11391 2018-04-05  Tom Tromey  <tom@tromey.com>
11392
11393         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
11394         Remove a string copy.
11395
11396 2018-04-05  Tom Tromey  <tom@tromey.com>
11397
11398         * linespec.c (filter_results): Use std::vector.
11399         (decode_line_2, decode_line_full): Update.
11400
11401 2018-04-05  Tom Tromey  <tom@tromey.com>
11402
11403         * linespec.c (canonical_to_fullform): Return std::string.
11404         (filter_results): Update.
11405         (struct decode_line_2_item): Add constructor.
11406         <fullform, displayform>: Now std::string.
11407         (decode_line_2_compare_items): Now a std::sort comparator.
11408         (decode_line_2): Update.
11409
11410 2018-04-05  Tom Tromey  <tom@tromey.com>
11411
11412         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
11413         (unexpected_linespec_error): Update.
11414         (linespec_parse_basic, parse_linespec): Update.
11415
11416 2018-04-05  Tom Tromey  <tom@tromey.com>
11417
11418         * linespec.c (linespec_parse_basic): Reindent.
11419
11420 2018-04-05  Tom Tromey  <tom@tromey.com>
11421
11422         * minsyms.h (iterate_over_minimal_symbols): Update.
11423         * minsyms.c (iterate_over_minimal_symbols): Take a
11424         gdb::function_view.
11425         * linespec.c (struct collect_minsyms): Remove.
11426         (compare_msyms): Now a std::sort comparator.
11427         (add_minsym): Add parameters.
11428         (search_minsyms_for_name): Update.  Use std::vector.
11429
11430 2018-04-03  Tom Tromey  <tom@tromey.com>
11431
11432         * mipsread.c (read_alphacoff_dynamic_symtab): Use
11433         gdb::byte_vector.
11434
11435 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
11436
11437         * MAINTAINERS (Write After Approval): Add Weimin Pan.
11438
11439 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
11440
11441         PR gdb/16959
11442         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
11443         printing static type.
11444
11445 2018-04-01  Tom Tromey  <tom@tromey.com>
11446
11447         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
11448         (rs6000_xfer_shared_libraries): Update.
11449
11450 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
11451
11452         * common/gdb_vecs.h (char_ptr): Remove.
11453         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
11454
11455 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
11456
11457         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
11458         with std::vector.
11459         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
11460
11461 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
11462
11463         * tracepoint.h (struct uploaded_tp): Initialize fields.
11464         <actions, step_actions, cmd_strings>: Change type to
11465         std::vector<char *>.
11466         * tracepoint.c (get_uploaded_tp): Allocate with new.
11467         (free_uploaded_tps): Free with delete.
11468         (parse_tracepoint_definition): Adjust to std::vector change.
11469         * breakpoint.c (read_uploaded_action): Likewise.
11470         (create_tracepoint_from_upload): Likewise.
11471         * ctf.c (ctf_write_uploaded_tp): Likewise.
11472         (SET_ARRAY_FIELD): Likewise.
11473         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
11474
11475 2018-03-30  Tom Tromey  <tom@tromey.com>
11476
11477         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
11478         std::unique_ptr.
11479         (svr4_keep_data_in_core): Update.
11480         (svr4_read_so_list): Update.
11481
11482 2018-03-30  Tom Tromey  <tom@tromey.com>
11483
11484         * windows-nat.c (handle_output_debug_string, handle_exception):
11485         Update.
11486         * target.h (target_read_string): Update.
11487         * target.c (target_read_string): Change "string" to
11488         unique_xmalloc_ptr.
11489         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
11490         Update.
11491         * solib-frv.c (frv_current_sos): Update.
11492         * solib-dsbt.c (dsbt_current_sos): Update.
11493         * solib-darwin.c (darwin_current_sos): Update.
11494         * linux-thread-db.c (inferior_has_bug): Update.
11495         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
11496         Update.  Remove alloca.
11497         * ada-lang.c (ada_main_name): Update.
11498
11499 2018-03-30  Tom Tromey  <tom@tromey.com>
11500
11501         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
11502         (struct dwo_file_deleter): New.
11503         (dwo_file_up): New typedef.
11504         (open_and_init_dwo_file): Use dwo_file_up.
11505         (free_dwo_file_cleanup): Remove.
11506
11507 2018-03-30  Tom Tromey  <tom@tromey.com>
11508
11509         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
11510         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
11511
11512 2018-03-30  Tom Tromey  <tom@tromey.com>
11513
11514         * dwarf2read.c (class free_cached_comp_units): New class.
11515         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
11516         (free_cached_comp_units): Remove function.
11517
11518 2018-03-30  Tom Tromey  <tom@tromey.com>
11519
11520         * utils.h (make_cleanup_unpush_target): Remove.
11521         * inf-ptrace.c (struct target_unpusher): New.
11522         (target_unpush_up) New typedef.
11523         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
11524         target_unpush_up.
11525         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
11526
11527 2018-03-27  Tom Tromey  <tom@tromey.com>
11528
11529         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
11530
11531 2018-03-27  Pedro Alves  <palves@redhat.com>
11532             Tom Tromey  <tom@tromey.com>
11533
11534         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
11535         destructor.  Now a class.
11536         (gdb_readline_wrapper_cleanup): Remove function.
11537         (gdb_readline_wrapper): Remove cleanups.
11538
11539 2018-03-27  Tom Tromey  <tom@tromey.com>
11540
11541         * typeprint.h (struct type_print_options) <local_typedefs,
11542         global_typedefs>: Remove "struct" keyword.
11543         (class typedef_hash_table): New class.
11544         (recursively_update_typedef_hash, add_template_parameters)
11545         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
11546         (find_typedef_in_hash): Don't declare.
11547         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
11548         (typedef_hash_table::recursively_update): Rename from
11549         recursively_update_typedef_hash.  Now a member.
11550         (typedef_hash_table::add_template_parameters): Rename from
11551         add_template_parameters.  Now a member.
11552         (typedef_hash_table::typedef_hash_table): Now a constructor;
11553         rename from create_typedef_hash.
11554         (typedef_hash_table::~typedef_hash_table): Now a destructor;
11555         rename from free_typedef_hash.
11556         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
11557         (do_free_global_table): Remove.
11558         (typedef_hash_table::typedef_hash_table): New constructor; renamed
11559         from copy_type_recursive.
11560         (create_global_typedef_table): Remove.
11561         (typedef_hash_table::find_global_typedef): Now a member of
11562         typedef_hash_table.
11563         (typedef_hash_table::find_typedef): Rename from
11564         find_typedef_in_hash; now a member.
11565         (whatis_exp): Update.
11566         * extension.h (struct ext_lang_type_printers): Add constructor and
11567         destructor.
11568         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
11569         declare.
11570         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
11571         Now a constructor; rename from start_ext_lang_type_printers.
11572         (ext_lang_type_printers): Now a destructor; rename from
11573         free_ext_lang_type_printers.
11574         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
11575         Update.
11576         (c_type_print_base_struct_union): Update.  Remove cleanups.
11577
11578 2018-03-27  Tom Tromey  <tom@tromey.com>
11579
11580         * dwarf-index-write.c: Include <cmath>.
11581
11582 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
11583
11584         * NEWS: Add entry describing new "set|show varsize-limit" command.
11585         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
11586         command.
11587         * printcmd.c (_initialize_printcmd): Add "set var" alias of
11588         "set variable".
11589
11590 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
11591
11592         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
11593         dwarf-index-write.c
11594         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
11595         * dwarf-index-common.c: New file.
11596         * dwarf-index-common.h: New file.
11597         * dwarf-index-write.c: New file.
11598         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
11599         (struct dwarf2_section_info): Move from here.
11600         (dwarf2_section_info_def): Likewise.
11601         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
11602         (offset_type): Likewise.
11603         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
11604         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
11605         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
11606         (byte_swap): Likewise.
11607         (MAYBE_SWAP): Likewise.
11608         (dwarf2_per_cu_ptr): Likewise.
11609         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
11610         (struct tu_stats): Likewise.
11611         (struct dwarf2_per_objfile): Likewise.
11612         (struct dwarf2_per_cu_data): Likewise.
11613         (struct signatured_type): Likewise.
11614         (sig_type_ptr): Likewise.
11615         (DEF_VEC_P (sig_type_ptr)): Likewise.
11616         (INDEX4_SUFFIX): Likewise.
11617         (INDEX5_SUFFIX): Likewise.
11618         (DEBUG_STR_SUFFIX): Likewise.
11619         (dwarf2_read_section): Make non-static.
11620         (mapped_index_string_hash): Move from here.
11621         (dwarf5_djb_hash): Likewise.
11622         (file_write): Likewise.
11623         (class data_buf): Likewise.
11624         (struct symtab_index_entry): Likewise.
11625         (struct mapped_symtab): Likewise.
11626         (find_slot): Likewise.
11627         (hash_expand): Likewise.
11628         (add_index_entry): Likewise.
11629         (uniquify_cu_indices): Likewise.
11630         (class c_str_view): Likewise.
11631         (class c_str_view_hasher): Likewise.
11632         (class vector_hasher): Likewise.
11633         (write_hash_table): Likewise.
11634         (psym_index_map): Likewise.
11635         (struct addrmap_index_data): Likewise.
11636         (add_address_entry): Likewise.
11637         (add_address_entry_worker): Likewise.
11638         (write_address_map): Likewise.
11639         (symbol_kind): Likewise.
11640         (write_psymbols): Likewise.
11641         (struct signatured_type_index_data): Likewise.
11642         (write_one_signatured_type): Likewise.
11643         (recursively_count_psymbols): Likewise.
11644         (recursively_write_psymbols): Likewise.
11645         (class debug_names): Likewise.
11646         (check_dwarf64_offsets): Likewise.
11647         (psyms_seen_size): Likewise.
11648         (write_gdbindex): Likewise.
11649         (write_debug_names): Likewise.
11650         (assert_file_size): Likewise.
11651         (write_psymtabs_to_index): Likewise.
11652         (save_gdb_index_command): Likewise.
11653         (_initialize_dwarf2_read): Don't register the "save gdb-index"
11654         command.
11655         * dwarf2read.h: New file.
11656
11657 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
11658
11659         PR gdb/22670
11660         * dwarf2read.c (dwarf2_physname): Do not return the demangled
11661         symbol name if the CU's language stores symbol names in linkage
11662         format.
11663         * language.h (struct language_defn)
11664         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
11665         all instances of this struct.
11666
11667 2018-03-26  Tom Tromey  <tom@tromey.com>
11668
11669         * stack.c (backtrace_command_1): Remove verbose code.
11670
11671 2018-03-26  Tom Tromey  <tom@tromey.com>
11672
11673         * python/py-framefilter.c (py_print_type): Don't catch
11674         exceptions.  Return void.
11675         (py_print_value): Likewise.
11676         (py_print_single_arg): Likewise.
11677         (enumerate_args): Don't catch exceptions.
11678         (py_print_args): Likewise.
11679         (py_print_frame): Likewise.
11680         (gdbpy_apply_frame_filter): Catch exceptions here.
11681
11682 2018-03-26  Tom Tromey  <tom@tromey.com>
11683
11684         * stack.c (_initialize_stack): Remove trailing newlines from help
11685         text.  Add "Usage" line to "backtrace" help.
11686
11687 2018-03-26  Tom Tromey  <tom@tromey.com>
11688
11689         PR python/16486:
11690         * python/py-framefilter.c (py_print_args): Call wrap_hint.
11691
11692 2018-03-26  Tom Tromey  <tom@tromey.com>
11693
11694         * python/py-framefilter.c (py_print_single_arg): Return
11695         EXT_LANG_BT_ERROR from catch.
11696
11697 2018-03-26  Tom Tromey  <tom@tromey.com>
11698
11699         PR backtrace/15584:
11700         * stack.c (backtrace_command_1): Move some code into no-filters
11701         "if".
11702
11703 2018-03-26  Tom Tromey  <tom@tromey.com>
11704
11705         * python/py-framefilter.c (throw_quit_or_print_exception): New
11706         function.
11707         (gdbpy_apply_frame_filter): Use it.
11708
11709 2018-03-26  Tom Tromey  <tom@tromey.com>
11710
11711         PR cli/17716:
11712         * python/py-framefilter.c (py_print_type, py_print_value)
11713         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
11714         RETURN_MASK_ERROR.
11715
11716 2018-03-26  Tom Tromey  <tom@tromey.com>
11717
11718         * python/py-framefilter.c (enumerate_args): Use
11719         gdb::unique_xmalloc_ptr.
11720
11721 2018-03-26  Tom Tromey  <tom@tromey.com>
11722
11723         * python/py-framefilter.c (py_print_frame): Return
11724         EXT_LANG_BT_OK.
11725         (gdbpy_apply_frame_filter): Update comment.
11726         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
11727         Remove.
11728         <EXT_LANG_BT_NO_FILTERS>: Change value.
11729
11730 2018-03-26  Tom Tromey  <tom@tromey.com>
11731
11732         PR backtrace/15582:
11733         * stack.c (backtrace_command): Parse "hide" argument.
11734         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
11735         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
11736         constant.
11737
11738 2018-03-26  Tom Tromey  <tom@tromey.com>
11739
11740         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
11741         add "flags".
11742         (backtrace_command): Remove "fulltrace", add "flags".
11743
11744 2018-03-26  Tom Tromey  <tom@tromey.com>
11745
11746         * stack.c (backtrace_command): Rewrite command line parsing.
11747
11748 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
11749
11750         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
11751
11752 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
11753
11754         * filename-seen-cache.h: Add include guard.
11755
11756 2018-03-26  Keith Seitz  <keiths@redhat.com>
11757
11758         * symfile.c (place_section): Remove "struct" from section_addr_info
11759         in comment.
11760         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
11761         "struct" keyword from section_addr_info.
11762
11763 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
11764
11765         * regformats/regdef.h (reg): Add constructors.
11766
11767 2018-03-25  Pedro Alves  <palves@redhat.com>
11768
11769         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
11770         if then/else bodies in var_func_name extraction.
11771
11772 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
11773
11774         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
11775         lookup_minimal_symbol() to find symbol entry.
11776         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
11777
11778 2018-03-23  Keith Seitz  <keiths@redhat.com>
11779
11780         PR c++/22968
11781         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
11782         nested type definitions for C++, too.
11783
11784 2018-03-23  Tom Tromey  <tom@tromey.com>
11785
11786         * machoread.c (struct oso_el): Add a constructor.  Don't define as
11787         a typedef.
11788         (macho_register_oso): Remove.
11789         (macho_symtab_read): Take a std::vector.
11790         (oso_el_compare_name): Now a std::sort comparator.
11791         (macho_symfile_read_all_oso): Take a std::vector.
11792         (macho_symfile_read): Use std::vector.  Remove cleanups.
11793
11794 2018-03-22  Tom Tromey  <tom@tromey.com>
11795
11796         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
11797         (record_full_goto_bookmark): Use std::string.
11798
11799 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11800
11801         PR tdep/18295
11802         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
11803         a single mask.
11804
11805 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11806
11807         * rs6000-tdep.c (store_insn_p): New function.
11808         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
11809         and cr_reg to their unshifted values. Use store_insn_p to
11810         match LR saves using either R1 or fdata->alloca_reg. Use
11811         store_insn_p to match CR saves. Set alloca_reg_offset
11812         when alloca_reg and framep are set. Remove lr_reg shift
11813         when assigning to fdata->lr_register.
11814
11815 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11816
11817         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
11818         command line args instead of emitting a warning.
11819
11820 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
11821
11822         * tracepoint.h (struct static_tracepoint_marker): Initialize
11823         fields, define default constructor, move constructor and move
11824         assignment, disable the rest.
11825         <str_id, extra>: Make std::string.
11826         (release_static_tracepoint_marker): Remove.
11827         (free_current_marker): Remove.
11828         * tracepoint.c (free_current_marker): Remove.
11829         (parse_static_tracepoint_marker_definition): Adjust to
11830         std::string, use new hex2str overload.
11831         (release_static_tracepoint_marker): Remove.
11832         (print_one_static_tracepoint_marker): Get marker by reference
11833         and adjust to std::string.
11834         (info_static_tracepoint_markers_command): Adjust to std::vector
11835         changes
11836         * target.h (static_tracepoint_marker_p): Remove typedef.
11837         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
11838         (struct target_ops) <to_static_tracepoint_marker_at>: Return
11839         bool.
11840         <to_static_tracepoint_markers_by_strid>: Return std::vector.
11841         * target-debug.h
11842         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
11843         (target_debug_print_std_vector_static_tracepoint_marker): New.
11844         (target_debug_print_struct_static_tracepoint_marker_p): Rename
11845         to...
11846         (target_debug_print_static_tracepoint_marker_p): ... this.
11847         * target-delegates.c: Re-generate.
11848         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
11849         Make std::string.
11850         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
11851         (decode_static_tracepoint_spec): Adjust to std::vector.
11852         (tracepoint_print_one_detail): Adjust to std::string.
11853         (strace_marker_decode_location): Adjust to std::string.
11854         (update_static_tracepoint): Adjust to std::string, remove call
11855         to release_static_tracepoint_marker.
11856         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
11857         Adjust to std::vector.
11858         * remote.c (remote_static_tracepoint_marker_at): Return bool.
11859         (remote_static_tracepoint_markers_by_strid): Adjust to
11860         std::vector.
11861         * common/rsp-low.h (hex2str): New overload with explicit count
11862         of bytes.
11863         * common/rsp-low.c (hex2str): New overload with explicit count
11864         of bytes.
11865         * unittests/rsp-low-selftests.c (test_hex2str): New function.
11866         (_initialize_rsp_low_selftests): Add test_hex2str test.
11867         * unittests/tracepoint-selftests.c
11868         (test_parse_static_tracepoint_marker_definition): Adjust to
11869         std::string.
11870
11871 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
11872
11873         * tracepoint.c (parse_static_tracepoint_marker_definition):
11874         Consider case where the definition is followed by more
11875         definitions.
11876         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11877         tracepoint-selftests.c.
11878         * unittests/tracepoint-selftests.c: New.
11879
11880 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11881
11882         * MAINTAINERS (Write After Approval): Add Pedro Franco de
11883         Carvalho.
11884
11885 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
11886
11887         * symtab.c (find_pc_sect_line): fixed indentation.
11888
11889 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
11890
11891         * symtab.c (find_pc_sect_line): now uses binary search.
11892
11893 2018-03-19  Tom Tromey  <tom@tromey.com>
11894
11895         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
11896         "IDENT" production.
11897
11898 2018-03-19  Pedro Alves  <palves@redhat.com>
11899             Tom Tromey  <tom@tromey.com>
11900
11901         * unittests/observable-selftests.c: New file.
11902         * common/observable.h: New file.
11903         * observable.h: New file.
11904         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
11905         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
11906         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
11907         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
11908         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
11909         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
11910         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
11911         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
11912         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
11913         python/py-breakpoint.c, python/py-finishbreakpoint.c,
11914         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
11915         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
11916         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
11917         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
11918         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
11919         tui/tui-interp.c, valops.c: Update all users.
11920         * tui/tui-hooks.c (tui_bp_created_observer)
11921         (tui_bp_deleted_observer, tui_bp_modified_observer)
11922         (tui_inferior_exit_observer, tui_before_prompt_observer)
11923         (tui_normal_stop_observer, tui_register_changed_observer):
11924         Remove.
11925         (tui_observers_token): New global.
11926         (attach_or_detach, tui_attach_detach_observers): New functions.
11927         (tui_install_hooks, tui_remove_hooks): Use
11928         tui_attach_detach_observers.
11929         * record-btrace.c (record_btrace_thread_observer): Remove.
11930         (record_btrace_thread_observer_token): New global.
11931         * observer.sh: Remove.
11932         * observer.c: Rename to observable.c.
11933         * observable.c (namespace gdb_observers): Define new objects.
11934         (observer_debug): Move into gdb_observers namespace.
11935         (struct observer, struct observer_list, xalloc_observer_list_node)
11936         (xfree_observer_list_node, generic_observer_attach)
11937         (generic_observer_detach, generic_observer_notify): Remove.
11938         (_initialize_observer): Update.
11939         Don't include observer.inc.
11940         * Makefile.in (generated_files): Remove observer.h, observer.inc.
11941         (clean mostlyclean): Likewise.
11942         (observer.h, observer.inc): Remove targets.
11943         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
11944         (COMMON_SFILES): Use observable.c, not observer.c.
11945         * .gitignore: Remove observer.h.
11946
11947 2018-03-18  Tom Tromey  <tom@tromey.com>
11948
11949         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
11950         gdb::def_vector.
11951         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
11952
11953 2018-03-17  Tom Tromey  <tom@tromey.com>
11954
11955         * auto-load.c (auto_load_objfile_script_1): Use std::string.
11956
11957 2018-03-17  Tom Tromey  <tom@tromey.com>
11958
11959         * target.c (class scoped_target_fd): New.
11960         (target_fileio_close_cleanup): Remove.
11961         (target_fileio_read_alloc_1): Use scoped_target_fd.
11962
11963 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
11964
11965         * silent-rules.mk: New.
11966         * Makefile.in: Include silent-rules.mk
11967         (srcdir, VPATH, top_srcdir): Move up.
11968         (COMPILE): Add ECHO_CXX.
11969         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
11970         (init.c): Add ECHO_INIT_C.
11971         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
11972         (version.c): Add ECHO_GEN.
11973         (printcmd.o): Add ECHO_CXX.
11974         (target-float.o): Add ECHO_CXX.
11975         (ada-exp.o): Add ECHO_CXX.
11976         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
11977         (insight$(EXEEXT)): Add ECHO_CXXLD.
11978         * gnulib/configure.ac: Add AM_SILENT_RULES.
11979         * gnulib/aclocal.m4: Re-generate.
11980         * gnulib/configure: Re-generate.
11981         * gnulib/import/Makefile.in: Re-generate.
11982
11983 2018-03-16  Tom Tromey  <tom@tromey.com>
11984
11985         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
11986         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
11987         * utils.c (do_free_section_addr_info)
11988         (make_cleanup_free_section_addr_info): Remove.
11989         * symfile.h (struct other_sections): Add constructor.
11990         (struct section_addr_info): Remove.
11991         (section_addr_info): New typedef.
11992         (struct sym_fns) <sym_offsets>: Change type of parameter.
11993         (build_section_addr_info_from_objfile)
11994         (relative_addr_info_to_section_offsets, addr_info_make_relative)
11995         (default_symfile_offsets, symbol_file_add)
11996         (symbol_file_add_from_bfd)
11997         (build_section_addr_info_from_section_table): Update.
11998         (alloc_section_addr_info, free_section_addr_info): Don't declare.
11999         * symfile.c (alloc_section_addr_info): Remove.
12000         (build_section_addr_info_from_section_table): Change return type.
12001         Update.
12002         (build_section_addr_info_from_bfd)
12003         (build_section_addr_info_from_objfile): Likewise.
12004         (free_section_addr_info): Remove.
12005         (relative_addr_info_to_section_offsets): Change type of "addrs".
12006         (addrs_section_compar): Now a std::sort comparator.
12007         (addrs_section_sort): Change return type.
12008         (addr_info_make_relative): Change type of "addrs".  Update.
12009         (default_symfile_offsets, syms_from_objfile_1)
12010         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
12011         (symbol_file_add_separate): Update.
12012         (symbol_file_add): Change type of "addrs".  Update.
12013         (add_symbol_file_command): Update.  Remove cleanups.
12014         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
12015         cleanups.
12016         * symfile-debug.c (debug_sym_offsets): Change type of "info".
12017         * solib.c (solib_read_symbols): Update.
12018         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
12019         * machoread.c (macho_symfile_offsets): Update.
12020         * jit.c (jit_bfd_try_read_symtab): Update.
12021
12022 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
12023
12024         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12025         unittests/utils-selftests.c.
12026         * unittests/utils-selftests.c: New file.
12027
12028 2018-03-14  Tom Tromey  <tom@tromey.com>
12029
12030         PR cli/14977:
12031         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
12032         for NULL.
12033
12034 2018-03-14  Tom Tromey  <tom@tromey.com>
12035
12036         PR cli/19918:
12037         * printcmd.c (printf_pointer): Allow "-" in format.
12038
12039 2018-03-14  Tom Tromey  <tom@tromey.com>
12040
12041         * printcmd.c (_initialize_printcmd): Add usage to printf.
12042
12043 2018-03-14  Yao Qi  <qiyao@sourceware.org>
12044
12045         * MAINTAINERS: Update my email address.
12046
12047 2018-03-13  Tom Tromey  <tom@tromey.com>
12048
12049         * machoread.c (macho_check_dsym): Change filenamep to a
12050         std::string*.
12051         (macho_symfile_read): Update.
12052         * symfile.c (load_command): Use std::string.
12053
12054 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
12055
12056         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
12057         to error message string.
12058         (riscv_register_name): Use xsnprintf instead of sprintf.
12059         (riscv_insn::fetch_instruction): Use gdb_assert instead of
12060         internal_error.
12061         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
12062         error.
12063         (riscv_push_dummy_call): Likewise.
12064
12065 2018-03-12  Tom Tromey  <tom@tromey.com>
12066
12067         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
12068         Use gdb::byte_vector.
12069         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
12070
12071 2018-03-12  Yao Qi  <yao.qi@linaro.org>
12072
12073         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
12074         parameter type to readable_regcache.
12075         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
12076         the declaration.
12077
12078 2018-03-11  Tom Tromey  <tom@tromey.com>
12079
12080         * dwarf2read.c (struct nextfield): Add initializers.
12081         (struct nextfnfield): Remove.
12082         (struct fnfieldlist): Add initializers.  Remove "length" and
12083         "head", use std::vector.
12084         (struct decl_field_list): Remove.
12085         (struct field_info): Add initializers.
12086         <fields, baseclasses>: Now std::vector.
12087         <nbaseclasses, nfnfields, typedef_field_list_count,
12088         nested_types_list_count>: Remove.
12089         (dwarf2_add_field, dwarf2_add_type_defn)
12090         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
12091         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
12092         (process_structure_scope): Update.
12093
12094 2018-03-11  Tom Tromey  <tom@tromey.com>
12095
12096         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
12097         for use by std::sort.
12098         (build_type_psymtabs_1): Use std::vector.
12099
12100 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
12101
12102         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
12103         and LIBMPFR in the printed configuration.
12104
12105 2018-03-08  Tom Tromey  <tom@tromey.com>
12106
12107         * source.c (get_filename_and_charpos): Use scoped_fd.
12108         * nto-procfs.c (procfs_open_1): Use scoped_fd.
12109         (procfs_pidlist): Likewise.
12110         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
12111         (iterate_over_mappings): Likewise.
12112
12113 2018-03-08  Tom Tromey  <tom@tromey.com>
12114
12115         * infcall.c (struct call_return_meta_info)
12116         <stack_temporaries_enabled>: Remove.
12117         (get_call_return_value, call_function_by_hand_dummy): Update.
12118         * thread.c (disable_thread_stack_temporaries): Remove.
12119         (enable_thread_stack_temporaries): Remove.
12120         (thread_stack_temporaries_enabled_p): Return bool.
12121         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
12122         (get_last_thread_stack_temporary): Update.
12123         * eval.c (evaluate_subexp): Update.
12124         * gdbthread.h (class enable_thread_stack_temporaries): Now a
12125         class, not a function.
12126         (value_ptr, value_vec): Remove typedefs.
12127         (class thread_info) <stack_temporaries_enabled>: Now bool.
12128         <stack_temporaries>: Now a std::vector.
12129         (thread_stack_temporaries_enabled_p)
12130         (value_in_thread_stack_temporaries): Return bool.
12131
12132 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
12133
12134         * remote.c (putpkt_binary): Fix omitted bytes reporting.
12135         (getpkt_or_notif_sane_1): Likewise.
12136
12137 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12138
12139         * build-id.c (build_id_to_debug_bfd): Use std::string.
12140
12141 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12142
12143         * build-id.c (find_separate_debug_file_by_buildid): Return
12144         std::string.
12145         * build-id.h (find_separate_debug_file_by_buildid): Return
12146         std::string.
12147         * coffread.c (coff_symfile_read): Adjust to std::string.
12148         * elfread.c (elf_symfile_read): Adjust to std::string.
12149         * symfile.c (separate_debug_file_exists): Change parameter to
12150         std::string.
12151         (find_separate_debug_file): Return std::string.
12152         (find_separate_debug_file_by_debuglink): Return std::string.
12153         * symfile.h (find_separate_debug_file_by_debuglink): Return
12154         std::string.
12155
12156 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12157
12158         * common/xml-utils.c (xml_escape_text): Move code to...
12159         (xml_escape_text_append): ... this new function.
12160         * common/xml-utils.h (xml_escape_text_append): New declaration.
12161         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
12162         New function.
12163         (_initialize_xml_utils): register test_xml_escape_text_append as
12164         a selftest.
12165
12166 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
12167
12168         * defs.h: Remove MAX_REGISTER_SIZE.
12169         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
12170         asserts.
12171         * python/py-unwind.c (pyuw_sniffer): Likewise.
12172
12173 2018-03-07  Tom Tromey  <tom@tromey.com>
12174
12175         * linux-tdep.c (linux_info_proc): Update.
12176         * target.h (struct target_ops) <to_fileio_readlink>: Return
12177         optional<string>.
12178         (target_fileio_readlink): Return optional<string>.
12179         * remote.c (remote_hostio_readlink): Return optional<string>.
12180         * inf-child.c (inf_child_fileio_readlink): Return
12181         optional<string>.
12182         * target.c (target_fileio_readlink): Return optional<string>.
12183
12184 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
12185
12186         * regcache.c (cooked_read_test): Add riscv to the list of
12187         architectures that have a save_reggroup.
12188
12189 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12190
12191         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
12192         value is not a dynamic class object.
12193
12194 2018-03-06  Tom Tromey  <tom@tromey.com>
12195
12196         * rust-exp.y: Formatting fixes.
12197
12198 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12199
12200         * riscv-tdep.c (riscv_register_name): Remove target description
12201         support.
12202         (riscv_gdbarch_init): Remove target description check.
12203
12204 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12205
12206         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
12207         comment.
12208         * riscv-tdep.h: Likewise.
12209
12210 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12211
12212         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
12213         (riscv_pseudo_register_write): Delete.
12214         (riscv_gdbarch_init): Remove all use of pseudo registers.
12215
12216 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12217
12218         * record-btrace.c (btrace_print_lines): Replace cleanup
12219         parameter with RAII equivalents.
12220         (btrace_insn_history): Replace cleanup with RAII equivalents.
12221         * ui-out.h (make_cleanup_ui_out_list_begin_end,
12222         make_cleanup_ui_out_tuple_begin_end): Remove.
12223         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
12224         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
12225         make_cleanup_ui_out_list_begin_end): Remove.
12226
12227 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12228
12229         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
12230         parameter types to std::vector.  Use bool.
12231         (record_btrace_wait): Replace VEC(tp_t) with
12232         std::vector<thread_info *>.
12233         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
12234
12235 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12236
12237         * record-btrace.c (record_btrace_disable_callback): Remove.
12238         (struct scoped_btrace_disable): New.
12239         (record_btrace_open): Use scoped_btrace_disable.
12240
12241 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12242
12243         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
12244         reading values from registers.
12245
12246 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12247
12248         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
12249         where appropriate.
12250
12251 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12252
12253         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
12254         change parameter type.  Use GDB's print functions, and use
12255         core_addr_to_string where appropriate.
12256         (riscv_push_dummy_call): Use core_addr_to_string where
12257         appropriate, update call to riscv_print_arg_location, and reindent
12258         a few lines.
12259         (riscv_return_value): Update call to riscv_print_arg_location.
12260
12261 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12262             Tim Newsome <tim@sifive.com>
12263             Albert Ou <a0u@eecs.berkeley.edu>
12264             Darius Rad <darius@bluespec.com>
12265
12266         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
12267         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
12268         (ALLDEPFILES): Add riscv-tdep.c
12269         * configure.tgt: Add riscv support.
12270         * riscv-tdep.c: New file.
12271         * riscv-tdep.h: New file.
12272         * NEWS: Mention new target.
12273         * MAINTAINERS: Add entry for riscv.
12274
12275 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12276
12277         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
12278         fields within aggregates.
12279
12280 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
12281
12282         * record-btrace.c (btrace_print_lines): Change type of flags to
12283         gdb_disassembly_flags.
12284
12285 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12286
12287         * fbsd-nat.c: Include "inf-ptrace.h".
12288         (USE_SIGTRAP_SIGINFO): Conditionally define.
12289         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
12290         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
12291         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
12292         function.
12293         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
12294         Likewise.
12295         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
12296         Likewise.
12297         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
12298         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
12299         "supports_stopped_by_hw_breakpoint" target methods.
12300
12301 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12302
12303         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
12304         * fbsd-nat.c (debug_fbsd_nat): New variable.
12305         (show_fbsd_nat_debug): New function.
12306         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
12307         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
12308
12309 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12310
12311         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
12312         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
12313         prototype.
12314         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
12315         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
12316         method.
12317
12318 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12319
12320         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
12321         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
12322
12323 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12324
12325         * charset.c (struct charset_vector): New.
12326         (charsets): Change type to charset_vector.
12327         (find_charset_names): Adjust.
12328         (add_one): Adjust.
12329         (_initialize_charset): Adjust.
12330
12331 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12332
12333         * progspace.h (struct program_space) <deleted_solibs>: Change
12334         type to std::vector<std::string>.
12335         * progspace.c (clear_program_space_solib_cache): Adjust.
12336         * breakpoint.c (print_solib_event): Adjust.
12337         (check_status_catch_solib): Adjust.
12338         * solib.c (update_solib_list): Adjust.
12339         * ui-out.h (class ui_out) <field_string>: New overload.
12340         * ui-out.c (ui_out::field_string): New overload.
12341
12342 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12343
12344         * progspace.h (struct program_space): Add constructor and
12345         destructor, initialize fields.
12346         (add_program_space): Remove.
12347         * progspace.c (add_program_space): Rename to...
12348         (program_space::program_space): ... this.
12349         (release_program_space): Rename to...
12350         (program_space::~program_space): ... this.
12351         (delete_program_space): Use delete to delete program_space.
12352         (initialize_progspace): Use new to allocate program_space.
12353         * inferior.c (add_inferior_with_spaces): Likewise.
12354         (clone_inferior_command): Likewise.
12355         * infrun.c (follow_fork_inferior): Likewise.
12356         (handle_vfork_child_exec_or_exit): Likewise.
12357
12358 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12359
12360         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
12361         (delim_string_to_char_ptr_vec): Return std::vector of
12362         gdb::unique_xmalloc_ptr.
12363         (dirnames_to_char_ptr_vec_append): Take std::vector of
12364         gdb::unique_xmalloc_ptr.
12365         (dirnames_to_char_ptr_vec): Return std::vector of
12366         gdb::unique_xmalloc_ptr.
12367         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
12368         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
12369         (delim_string_to_char_ptr_vec): Return an std::vector of
12370         gdb::unique_xmalloc_ptr, adjust the code.
12371         (dirnames_to_char_ptr_vec_append): Take an std::vector of
12372         gdb::unique_xmalloc_ptr, adjust the code.
12373         (dirnames_to_char_ptr_vec): Return an std::vector of
12374         gdb::unique_xmalloc_ptr, adjust the code.
12375         * auto-load.c (auto_load_safe_path_vec): Change type to
12376         std::vector of gdb::unique_xmalloc_ptr.
12377         (auto_load_expand_dir_vars): Return an std::vector of
12378         gdb::unique_xmalloc_ptr, adjust the code.
12379         (auto_load_safe_path_vec_update): Adjust.
12380         (filename_is_in_auto_load_safe_path_vec): Adjust.
12381         (auto_load_objfile_script_1): Adjust.
12382         * build-id.c (build_id_to_debug_bfd): Adjust.
12383         * linux-thread-db.c (thread_db_load_search): Adjust.
12384         * source.c (add_path): Adjust.
12385         (openp): Adjust.
12386         * symfile.c (find_separate_debug_file): Adjust.
12387         * utils.c (do_free_char_ptr_vec): Remove.
12388         (make_cleanup_free_char_ptr_vec): Remove.
12389
12390 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
12391
12392         PR gdb/22907
12393         * common/pathstuff.c: Conditionally include "<windows.h>".
12394
12395 2018-03-01  Georg Sauthoff  <mail@georg.so>
12396
12397         PR gdb/22888
12398         * gcore.in: Quote variables and switch interpreter to bash.
12399
12400 2018-03-01  Tom Tromey  <tom@tromey.com>
12401
12402         * dwarf2read.c (alloc_discriminant_info): Fix default_index
12403         assertion.  Add assertion for discriminant_index.
12404         (quirk_rust_enum): Use correct base type name in univariant case.
12405
12406 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
12407
12408         * record.c (get_call_history_modifiers): Return a
12409         record_print_flags.
12410         (cmd_record_call_history): Adjust.
12411         * record-btrace.c (record_btrace_call_history): Adjust.
12412         (record_btrace_call_history_range): Adjust.
12413         (record_btrace_call_history_from): Adjust.
12414         * target-debug.h (target_debug_print_record_print_flags): New.
12415         * target-delegates.c: Re-generate.
12416         * target.c (target_call_history): Change flags type.
12417         (target_call_history_from): Likewise.
12418         (target_call_history_range): Likewise.
12419         * target.h (struct target_ops) <target_call_history>: Likewise.
12420         (target_call_history_from): Likewise.
12421         (target_call_history_range): Likewise.
12422
12423 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
12424             Simon Marchi  <simon.marchi@polymtl.ca>
12425
12426         * common/common-utils.c: Include "sys/stat.h".
12427         (is_regular_file): Move here from "source.c"; change return
12428         type to "bool".
12429         * common/common-utils.h (is_regular_file): New prototype.
12430         * common/pathstuff.c (contains_dir_separator): New function.
12431         * common/pathstuff.h (contains_dir_separator): New prototype.
12432         * source.c: Don't include "sys/stat.h".
12433         (is_regular_file): Move to "common/common-utils.c".
12434
12435 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
12436
12437         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
12438         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
12439         * auto-load.c: Include "common/pathstuff.h".
12440         * common/common-def.h (current_directory): Move here.
12441         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
12442         function.
12443         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
12444         prototype.
12445         * common/pathstuff.c: New file.
12446         * common/pathstuff.h: New file.
12447         * compile/compile.c: Include "common/pathstuff.h".
12448         * defs.h (current_directory): Move to "common/common-defs.h".
12449         * dwarf2read.c: Include "common/pathstuff.h".
12450         * exec.c: Likewise.
12451         * guile/scm-safe-call.c: Likewise.
12452         * linux-thread-db.c: Likewise.
12453         * main.c: Likewise.
12454         * nto-tdep.c: Likewise.
12455         * objfiles.c: Likewise.
12456         * source.c: Likewise.
12457         * symtab.c: Likewise.
12458         * utils.c: Include "common/pathstuff.h".
12459         (gdb_realpath): Move to "common/pathstuff.c".
12460         (gdb_realpath_keepfile): Likewise.
12461         (gdb_abspath): Likewise.
12462         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
12463         (gdb_realpath_keepfile): Likewise.
12464         (gdb_abspath): Likewise.
12465
12466 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
12467
12468         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
12469         wildcard process pid for super_resume for kernels with a
12470         specific bug.
12471
12472 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
12473
12474         * compile/compile.c (get_args): Add additional comments
12475         explaining function.
12476
12477 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
12478             Tom Tromey  <tom@tromey.com>
12479
12480         * target.h (memory_write_request_s): Remove typedef.  Don't define
12481         VEC.
12482         (target_write_memory_blocks): Change argument to std::vector.
12483         (struct memory_write_request): Add constructor.
12484         * target-memory.c (compare_block_starting_address): Return bool.
12485         Change argument types.
12486         (claim_memory): Change arguments to use std::vector.
12487         (split_regular_and_flash_blocks, blocks_to_erase)
12488         (compute_garbled_blocks): Likewise.
12489         (cleanup_request_data, cleanup_write_requests_vector): Remove.
12490         (target_write_memory_blocks): Change argument to std::vector.
12491         * symfile.c (struct load_section_data): Add constructor and
12492         destructor.  Use std::vector for "requests".
12493         (struct load_progress_data): Add initializers.
12494         (load_section_callback): Update.  Use "new".
12495         (clear_memory_write_data): Remove.
12496         (generic_load): Update.
12497
12498 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
12499
12500         * arch/aarch64.h: Use common/tdesc.h.
12501
12502 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
12503
12504         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
12505         architecture with a 64-bit ABI.
12506
12507 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
12508
12509         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
12510         ahead of target description loading.
12511
12512 2018-02-26  Tom Tromey  <tom@tromey.com>
12513
12514         * stack.c (backtrace_command_1): Update.
12515         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
12516         of "flags".
12517         * python/py-framefilter.c (py_print_frame)
12518         (gdbpy_apply_frame_filter): Change type of "flags".
12519         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
12520         of "flags".
12521         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
12522         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
12523         * extension.h (enum frame_filter_flag): Rename from
12524         frame_filter_flags.
12525         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
12526         (apply_ext_lang_frame_filter): Change type of "flags".
12527         * extension.c (apply_ext_lang_frame_filter): Change type of
12528         "flags".
12529         * extension-priv.h (struct extension_language_ops)
12530         <apply_frame_filter>: Change type of "flags".
12531
12532 2018-02-26  Tom Tromey  <tom@tromey.com>
12533
12534         PR python/16497:
12535         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
12536         off-by-one in py_end computation.
12537         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
12538         PRINT_MORE_FRAMES.
12539         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
12540         constant.
12541
12542 2018-02-26  Tom Tromey  <tom@tromey.com>
12543
12544         * dwarf2read.c (struct variant_field): New.
12545         (struct nextfield) <variant>: New field.
12546         (dwarf2_add_field): Handle DW_TAG_variant_part.
12547         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
12548         discriminated union.
12549         (read_structure_type): Handle DW_TAG_variant_part.
12550         (handle_struct_member_die): New function, extracted from
12551         process_structure_scope.  Handle DW_TAG_variant.
12552         (process_structure_scope): Handle discriminated unions.  Call
12553         handle_struct_member_die.
12554
12555 2018-02-26  Tom Tromey  <tom@tromey.com>
12556
12557         * rust-lang.h (rust_last_path_segment): Declare.
12558         * rust-lang.c (rust_last_path_segment): Now public.  Change
12559         contract.
12560         (struct disr_info): Remove.
12561         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
12562         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
12563         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
12564         (rust_enum_p, rust_enum_variant): New function.
12565         (rust_underscore_fields): Remove "offset" parameter.
12566         (rust_print_enum): New function.
12567         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
12568         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
12569         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
12570         enums.
12571         (rust_internal_print_type): New function, from rust_print_type.
12572         Remove enum code.
12573         (rust_print_type): Call rust_internal_print_type.
12574         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
12575         Update enum handling.
12576         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
12577         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
12578         (rust_union_quirks): New functions.
12579         (process_full_comp_unit, process_full_type_unit): Call
12580         rust_union_quirks.
12581         (process_structure_scope): Update rust_unions if necessary.
12582
12583 2018-02-26  Tom Tromey  <tom@tromey.com>
12584
12585         * value.h (value_union_variant): Declare.
12586         * valops.c (value_union_variant): New function.
12587         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
12588         (struct discriminant_info): New.
12589         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
12590         enumerator.
12591         (struct main_type) <flag_discriminated_union>: New field.
12592
12593 2018-02-26  Tom Tromey  <tom@tromey.com>
12594
12595         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12596         unittests/unpack-selftests.c.
12597         * unittests/unpack-selftests.c: New file.
12598         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
12599
12600 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12601
12602         * dwarf2read.c (struct partial_die_info) <read>: New method.
12603         (read_partial_die): Remove the declaration.
12604         (load_partial_dies): Update.
12605         (partial_die_info::partial_die_info):
12606         (read_partial_die): Change it to partial_die_info::read.
12607
12608 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12609
12610         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
12611         (fixup_partial_die): Remove declaration.
12612         (scan_partial_symbols): Update.
12613         (partial_die_parent_scope): Likewise.
12614         (partial_die_full_name): Likewise.
12615         (fixup_partial_die): Change it to partial_die_info::fixup.
12616
12617 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12618
12619         * dwarf2read.c (read_partial_die): Update the declaration.
12620         (load_partial_dies): Caller update.
12621         (read_partial_die): Remove one argument abbrev_len.
12622
12623 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12624
12625         * dwarf2read.c (struct partial_die_info): Add ctor, delete
12626         assignment operator.
12627         (load_partial_dies): Use ctor and copy ctor.
12628         (read_partial_die): Update.
12629         (dwarf2_cu::find_partial_die): Use ctor.
12630
12631 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12632
12633         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
12634         (find_partial_die_in_comp_unit): Change it to
12635         dwarf2_cu::find_partial_die.
12636         (find_partial_die): Update.
12637
12638 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12639
12640         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
12641         is NULL.
12642
12643 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12644
12645         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
12646
12647 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
12648
12649         * arch/amd64.h: Use common/tdesc.h.
12650         * arch/i386.c: Likewise.
12651         * arch/i386.h: Likewise.
12652         * arch/tic6x.c: Likewise.
12653         * arch/tdesc.h: Move file from here...
12654         * common/tdesc.h: ...to here.
12655         * features/aarch64-core.c: Regenerate.
12656         * features/aarch64-fpu.c: Regenerate.
12657         * features/i386/32bit-avx.c: Regenerate.
12658         * features/i386/32bit-avx512.c: Regenerate.
12659         * features/i386/32bit-core.c: Regenerate.
12660         * features/i386/32bit-linux.c: Regenerate.
12661         * features/i386/32bit-mpx.c: Regenerate.
12662         * features/i386/32bit-pkeys.c: Regenerate.
12663         * features/i386/32bit-sse.c: Regenerate.
12664         * features/i386/64bit-avx.c: Regenerate.
12665         * features/i386/64bit-avx512.c: Regenerate.
12666         * features/i386/64bit-core.c: Regenerate.
12667         * features/i386/64bit-linux.c: Regenerate.
12668         * features/i386/64bit-mpx.c: Regenerate.
12669         * features/i386/64bit-pkeys.c: Regenerate.
12670         * features/i386/64bit-segments.c: Regenerate.
12671         * features/i386/64bit-sse.c: Regenerate.
12672         * features/i386/x32-core.c: Regenerate.
12673         * features/tic6x-c6xp.c: Regenerate.
12674         * features/tic6x-core.c: Regenerate.
12675         * features/tic6x-gp.c: Regenerate.
12676         * target-descriptions.c: Use common/tdesc.h.
12677         * target-descriptions.h: Likewise.
12678
12679 2018-02-24  Tom Tromey  <tom@tromey.com>
12680
12681         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
12682         (try_thread_db_load_from_dir, thread_db_load_search): Use
12683         std::string.
12684         (info_auto_load_libthread_db_compare): Return bool.  Change
12685         argument types.
12686         (info_auto_load_libthread_db): Use std::vector, std::string.
12687         Remove cleanups.
12688
12689 2018-02-24  Tom Tromey  <tom@tromey.com>
12690
12691         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
12692         std::string.
12693         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
12694         std::string*.
12695         * gdbarch.c: Rebuild.
12696         * gdbarch.h: Rebuild.
12697         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
12698         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
12699         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
12700         std::string*.
12701
12702 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
12703
12704         * gdbtypes.h (sect_offset): Change type to uint64_t.
12705         (sect_offset_str): New function.
12706         * dwarf2read.c (create_addrmap_from_aranges): Use
12707         sect_offset_str.
12708         (error_check_comp_unit_head): Likewise.
12709         (create_debug_type_hash_table): Likewise.
12710         (read_cutu_die_from_dwo): Likewise.
12711         (init_cutu_and_read_dies): Likewise.
12712         (init_cutu_and_read_dies_no_follow): Likewise.
12713         (process_psymtab_comp_unit_reader): Likewise.
12714         (partial_die_parent_scope): Likewise.
12715         (peek_die_abbrev): Likewise.
12716         (process_queue): Likewise.
12717         (dwarf2_physname): Likewise.
12718         (read_namespace_alias): Likewise.
12719         (read_import_statement): Likewise.
12720         (create_dwo_cu_reader): Likewise.
12721         (create_cus_hash_table): Likewise.
12722         (lookup_dwo_cutu): Likewise.
12723         (inherit_abstract_dies): Likewise.
12724         (read_func_scope): Likewise.
12725         (read_call_site_scope): Likewise.
12726         (dwarf2_add_member_fn): Likewise.
12727         (read_common_block): Likewise.
12728         (read_module_type): Likewise.
12729         (read_typedef): Likewise.
12730         (read_subrange_type): Likewise.
12731         (load_partial_dies): Likewise.
12732         (read_partial_die): Likewise.
12733         (find_partial_die): Likewise.
12734         (read_str_index): Likewise.
12735         (dwarf2_string_attr): Likewise.
12736         (build_error_marker_type): Likewise.
12737         (lookup_die_type): Likewise.
12738         (dump_die_shallow): Likewise.
12739         (follow_die_ref): Likewise.
12740         (dwarf2_fetch_die_loc_sect_off): Likewise.
12741         (dwarf2_fetch_constant_bytes): Likewise.
12742         (follow_die_sig): Likewise.
12743         (get_signatured_type): Likewise.
12744         (get_DW_AT_signature_type): Likewise.
12745         (dwarf2_find_containing_comp_unit): Likewise.
12746         (set_die_type): Likewise.
12747
12748 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
12749
12750         * arch/aarch64.c: Include "common-defs.h".
12751         * arch/amd64.c: Likewise.
12752         * arch/i386.c: Likewise.
12753
12754 2018-02-21  Tom Tromey  <tom@tromey.com>
12755
12756         * value.h: (extract_field_op): Update.
12757         * eval.c (extract_field_op): Return a const char *.
12758         * expression.h (parse_expression_for_completion): Update.
12759         * completer.c (complete_expression): Update.
12760         (add_struct_fields): Make fieldname const.
12761         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
12762         (mark_completion_tag, parse_exp_in_context_1): Update.
12763         (parse_expression_for_completion): Change "name" to
12764         unique_xmalloc_ptr*.
12765
12766 2018-02-21  Tom Tromey  <tom@tromey.com>
12767
12768         * infcall.c (call_function_by_hand_dummy): Use std::vector.
12769
12770 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12771
12772         * avr-tdep.c (avr_read_pc): Change parameter type to
12773         readable_regcache.
12774         * gdbarch.sh (read_pc): Likewise.
12775         * gdbarch.c: Re-generated.
12776         * gdbarch.h: Re-generated.
12777         * hppa-tdep.c (hppa_read_pc): Change parameter type to
12778         readable_regcache.
12779         * ia64-tdep.c (ia64_read_pc): Likewise.
12780         * mips-tdep.c (mips_read_pc): Likewise.
12781         * spu-tdep.c (spu_read_pc): Likewise.
12782
12783 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12784
12785         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
12786         * regcache-dump.c: New file.
12787         * regcache.c: Move register_dump to regcache-dump.c.
12788         (maintenance_print_registers): Likewise.
12789         (maintenance_print_raw_registers): Likewise.
12790         (maintenance_print_cooked_registers): Likewise.
12791         (maintenance_print_register_groups): Likewise.
12792         (maintenance_print_remote_registers): Likewise.
12793         (_initialize_regcache): Likewise.
12794         * regcache.h (register_dump): Moved from regcache.c.
12795
12796 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12797
12798         * regcache.c (regcache::regcache): Update.
12799         (regcache::invalidate): Move it to detached_regcache::invalidate.
12800         (get_thread_arch_aspace_regcache): Update.
12801         (regcache::raw_update): Update.
12802         (regcache::cooked_read): Remove some code.
12803         (regcache::cooked_read_value): Likewise.
12804         (regcache::raw_write): Remove assert on m_readonly_p.
12805         (regcache::raw_supply_integer): Move it to
12806         detached_regcache::raw_supply_integer.
12807         (regcache::raw_supply_zeroed): Likewise.
12808         * regcache.h (detached_regcache) <raw_supply_integer>: New
12809         declaration.
12810         <raw_supply_zeroed, invalidate>: Likewise.
12811         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
12812         <invalidate>: Likewise.
12813         <m_readonly_p>: Removed.
12814
12815 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12816
12817         * infcmd.c (get_return_value): Let stop_regs point to
12818         get_current_regcache.
12819         * regcache.c (regcache::regcache): Remove.
12820         (register_dump_reg_buffer): New class.
12821         (regcache_print): Adjust.
12822         * regcache.h (regcache): Remove constructors.
12823
12824 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12825
12826         * regcache.c (class register_dump): New class.
12827         (register_dump_regcache, register_dump_none): New class.
12828         (register_dump_remote, register_dump_groups): New class.
12829         (regcache_print): Update.
12830         * regcache.h (regcache_dump_what): Move it to regcache.c.
12831         (regcache) <dump>: Remove.
12832
12833 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12834
12835         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
12836          reg_buffer_rw *.
12837         (jit_unwind_reg_set_impl): Call raw_supply.
12838         (jit_frame_sniffer): Use reg_buffer_rw.
12839         * record-full.c (record_full_core_regbuf): Change its type.
12840         (record_full_core_open_1): Use reg_buffer_rw.
12841         (record_full_close): Likewise.
12842         (record_full_core_fetch_registers): Use regcache->raw_supply.
12843         (record_full_core_store_registers): Likewise.
12844         * regcache.c (regcache::get_register_status): Move it to
12845         reg_buffer.
12846         (regcache_raw_set_cached_value): Remove.
12847         (regcache::raw_set_cached_value): Remove.
12848         (regcache::raw_write): Call raw_supply.
12849         (regcache::raw_supply): Move it to reg_buffer_rw.
12850         * regcache.h (regcache_raw_set_cached_value): Remove.
12851         (reg_buffer_rw): New class.
12852
12853 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12854
12855         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
12856         readonly_detached_regcache.
12857         (dummy_frame_prev_register): Use regcache->cooked_read.
12858         * frame.c (frame_save_as_regcache): Change return type.
12859         (frame_pop): Update.
12860         * frame.h (frame_save_as_regcache): Update declaration.
12861         * inferior.h (get_infcall_suspend_state_regcache): Update
12862         declaration.
12863         * infrun.c (infcall_suspend_state) <registers>: use
12864         readonly_detached_regcache.
12865         (save_infcall_suspend_state): Don't use regcache_dup.
12866         (get_infcall_suspend_state_regcache): Change return type.
12867         * linux-fork.c (struct fork_info) <savedregs>: Change to
12868         readonly_detached_regcache.
12869         <pc>: New field.
12870         (fork_save_infrun_state): Don't use regcache_dup.
12871         (info_checkpoints_command): Adjust.
12872         * mi/mi-main.c (register_changed_p): Update declaration.
12873         (mi_cmd_data_list_changed_registers): Use
12874         readonly_detached_regcache.
12875         (register_changed_p): Change parameter type to
12876         readonly_detached_regcache.
12877         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
12878         readonly_detached_regcache.
12879         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
12880         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
12881         New.
12882         (regcache::save): Move it to reg_buffer.
12883         (regcache::restore): Change parameter type.
12884         (regcache_dup): Remove.
12885         * regcache.h (reg_buffer) <save>: New method.
12886         (readonly_detached_regcache): New class.
12887         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
12888         readonly_detached_regcache.
12889         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
12890
12891 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12892
12893         * frame.c (frame_save_as_regcache): Use regcache method save.
12894         (frame_pop): Use regcache method restore.
12895         * infrun.c (restore_infcall_suspend_state): Likewise.
12896         * linux-fork.c (fork_load_infrun_state): Likewise.
12897         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
12898         save.
12899         * regcache.c (regcache_save): Remove.
12900         (regcache::restore): More asserts.
12901         (regcache_cpy): Remove.
12902         * regcache.h (regcache_save): Remove the declaration.
12903         (regcache::restore): Move from private to public.
12904         Remove the friend declaration of regcache_cpy.
12905         (regcache_cpy): Remove declaration.
12906
12907 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12908
12909         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
12910         parameter type to 'readable_regcache *'.
12911         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
12912         * arm-tdep.c (arm_neon_quad_read): Likewise.
12913         (arm_pseudo_read): Likewise.
12914         * avr-tdep.c (avr_pseudo_register_read): Likewise.
12915         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
12916         * frv-tdep.c (frv_pseudo_register_read): Likewise.
12917         * gdbarch.c: Re-generated.
12918         * gdbarch.h: Re-generated.
12919         * gdbarch.sh (pseudo_register_read): Change parameter type to
12920         'readable_regcache *'.
12921         (pseudo_register_read_value): Likewise.
12922         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
12923         (h8300_pseudo_register_read): Likewise.
12924         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
12925         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
12926         (i386_pseudo_register_read_into_value): Likewise.
12927         (i386_pseudo_register_read_value): Likewise.
12928         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
12929         declaration.
12930         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
12931         * m32c-tdep.c (m32c_raw_read): Likewise.
12932         (m32c_read_flg): Likewise.
12933         (m32c_banked_register): Likewise.
12934         (m32c_banked_read): Likewise.
12935         (m32c_sb_read): Likewise.
12936         (m32c_part_read): Likewise.
12937         (m32c_cat_read): Likewise.
12938         (m32c_r3r2r1r0_read): Likewise.
12939         (m32c_pseudo_register_read): Likewise.
12940         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
12941         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
12942         (mep_pseudo_cr64_read): Likewise.
12943         (mep_pseudo_register_read): Likewise.
12944         * mips-tdep.c (mips_pseudo_register_read): Likewise.
12945         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
12946         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
12947         * regcache.c (regcache::raw_read): Move it to readable_regcache.
12948         (regcache::cooked_read): Likewise.
12949         (regcache::cooked_read_value): Likewise.
12950         (regcache_cooked_read_signed):
12951         (regcache::cooked_read): Likewise.
12952         * regcache.h (readable_regcache): New class.
12953         (regcache): Inherit readable_regcache.  Move some methods to
12954         readable_regcache.
12955         * rl78-tdep.c (rl78_pseudo_register_read): Change
12956         parameter type to 'readable_regcache *'.
12957         * rs6000-tdep.c (do_regcache_raw_read): Remove.
12958         (e500_pseudo_register_read): Change parameter type to
12959         'readable_regcache *'.
12960         (dfp_pseudo_register_read): Likewise.
12961         (vsx_pseudo_register_read): Likewise.
12962         (efpr_pseudo_register_read): Likewise.
12963         * s390-tdep.c (s390_pseudo_register_read): Likewise.
12964         * sh-tdep.c (sh_pseudo_register_read): Likewise.
12965         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
12966         (sh64_pseudo_register_read): Likewise.
12967         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
12968         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
12969         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
12970         (spu_pseudo_register_read): Likewise.
12971         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
12972         (xtensa_pseudo_register_read): Likewise.
12973
12974 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12975
12976         * regcache.c (regcache::regcache): Call reg_buffer ctor.
12977         (regcache::arch): Move it to reg_buffer::arch.
12978         (regcache::register_buffer): Likewise.
12979         (regcache::assert_regnum): Likewise.
12980         (regcache::num_raw_registers): Likewise.
12981         * regcache.h (reg_buffer): New class.
12982         (regcache): Inherit reg_buffer.
12983
12984 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
12985
12986         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
12987         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
12988
12989 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
12990
12991         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
12992
12993 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
12994
12995         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
12996         (SFILES): Remove common/*.c files.
12997         (COMMON_OBS): Remove some *.o files built from common/*.c files.
12998         * common/common.host: Add common reference.
12999         * configure.ac: Likewise.
13000         * configure: Regenerate.
13001
13002 2018-02-16  Yao Qi  <yao.qi@linaro.org>
13003
13004         * block.c (block_namespace_info): Inherit allocate_on_obstack.
13005         (block_initialize_namespace): Use new.
13006         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
13007         (dwarf2_free_objfile): Use delete.
13008         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
13009         (copy_type_recursive): Use new.
13010         * gdb_obstack.h (allocate_on_obstack): New.
13011
13012 2018-02-15  Yao Qi  <yao.qi@linaro.org>
13013
13014         PR gdb/22849
13015         * inferior.c (exit_inferior_1): Reset inf->control.
13016
13017 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
13018
13019         * ada-lang.c (ada_to_fixed_value_create): Delete advance
13020         declaration.
13021
13022 2018-02-14  Pedro Alves  <palves@redhat.com>
13023
13024         * frame-unwind.c (frame_unwind_try_unwinder): Always call
13025         frame_cleanup_after_sniffer on exception.
13026
13027 2018-02-14  Tom Tromey  <tom@tromey.com>
13028
13029         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
13030         const.
13031         (solib_bfd_open): Make pathname const.
13032         * solib.c (solib_bfd_open): Make pathname const.
13033         * solib-spu.c (spu_bfd_fopen): Make name const.
13034         (spu_bfd_open): Make pathname const.
13035         * solib-darwin.c (darwin_bfd_open): Make pathname const.
13036         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
13037
13038 2018-02-14  Tom Tromey  <tom@tromey.com>
13039
13040         * symfile.c (symfile_bfd_open): Update.
13041         * source.h (openp, source_full_path_of, find_and_open_source):
13042         Change argument type to unique_xmalloc_ptr.
13043         * source.c (openp): Take a unique_xmalloc_ptr.
13044         (source_full_path_of, find_and_open_source): Likewise.
13045         (open_source_file, symtab_to_fullname): Update.
13046         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
13047         unique_xmalloc_ptr.
13048         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
13049         (exec_file_find): Update.
13050         * psymtab.c (psymtab_to_fullname): Update.
13051         * nto-tdep.h (nto_find_and_open_solib): Update.
13052         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
13053         unique_xmalloc_ptr.
13054         * exec.c (exec_file_attach): Update.
13055         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
13056         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
13057
13058 2018-02-14  Tom Tromey  <tom@tromey.com>
13059
13060         * solib.c: Include source.h.
13061         * nto-tdep.c: Include source.h.
13062         * mi/mi-cmd-env.c: Include source.h.
13063         * infcmd.c: Include source.h.
13064         * exec.c: Include source.h.
13065         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
13066         (add_path, directory_switch, source_path, init_source_path): Move
13067         declarations...
13068         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
13069         (add_path, directory_switch, source_path, init_source_path):
13070         ...here.
13071
13072 2018-02-14  Tom Tromey  <tom@tromey.com>
13073
13074         * solist.h (exec_file_find, solib_find): Return
13075         unique_xmalloc_ptr.
13076         (solib_bfd_fopen): Take a const char *.
13077         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
13078         (exec_file_find, solib_find): Likewise.
13079         (solib_bfd_fopen): Do not take ownership of "pathname".
13080         (solib_bfd_open): Use unique_xmalloc_ptr.
13081         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
13082         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
13083         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
13084         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
13085
13086 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
13087
13088         * ada-lang.c (name_match_type_from_name): Remove reference to
13089         ada_name_for_lookup in function's documentation.
13090         * ada-lang.h (ada_name_for_lookup): Delete declaration.
13091
13092 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
13093
13094         * defs.h (enum openp_flags): New enum.
13095         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
13096         Move to enum openp_flags.
13097         (openp_flags): New enum flags.
13098         (openp): Change parameter type to openp_flags.
13099         * source.c (openp): Change parameter type to openp_flags.
13100         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
13101         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
13102
13103 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
13104
13105         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
13106         per-command.
13107
13108 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
13109
13110         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
13111         into...
13112         (class dwarf2_queue_guard): ...the destructor of this new class.
13113         (dw2_do_instantiate_symtab): Create instance of the new class
13114         dwarf2_queue_guard, remove cleanup.
13115
13116 2018-02-09  Tom Tromey  <tom@tromey.com>
13117
13118         * source.c (find_source_lines): Don't reference past the end of
13119         the vector.
13120
13121 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13122
13123         * remote.c (remote_btrace_maybe_reopen): Change error message.
13124         * btrace.c (btrace_enable): Likewise.
13125         (parse_xml_btrace): Likewise.
13126         (parse_xml_btrace_conf): Likewise.
13127
13128 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13129
13130         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
13131         (linux_enable_pt, linux_enable_bts): Call
13132         diagnose_perf_event_open_fail.
13133
13134 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13135
13136         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
13137         Remove parameter and change return type.  Update callers.  Move it.
13138         (linux_enable_bts, linux_enable_pt): Improve error message.
13139         (linux_enable_pt): Remove zero buffer size check.
13140         (linux_enable_btrace): Improve error messages.  Remove NULL return
13141         check.
13142
13143 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13144
13145         * btrace.c (btrace_enable): Remove target_supports_btrace call.
13146         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
13147         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
13148         (linux_supports_pt, linux_supports_btrace): Remove.
13149         (linux_enable_bts): Call cpu_supports_bts.
13150         * nat/linux-btrace.h (linux_supports_btrace): Remove.
13151         * remote.c (remote_supports_btrace): Remove.
13152         (init_remote_ops): Remove remote_supports_btrace.
13153         * target-delegates.c: Regenerated.
13154         * target.c (target_supports_btrace): Remove.
13155         * target.h (target_ops) <to_supports_btrace>: Remove
13156         (target_supports_btrace): Remove.
13157         * x86-linux-nat.c (x86_linux_create_target): Remove
13158         linux_supports_btrace.
13159
13160 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13161
13162         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
13163         btrace failed.
13164         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
13165         exception and use message in own exception.
13166
13167 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13168
13169         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
13170         (perf_event_pt_event_type): Use gdb_file_up.
13171         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
13172         scoped_fd, and scoped_mmap.
13173
13174 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13175
13176         * common/scoped_mmap.h: New.
13177         * unittests/scoped_mmap-selftest.c: New.
13178         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13179         unittests/scoped_mmap-selftest.c.
13180
13181 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13182
13183         * common/scoped_fd.h: New.
13184         * unittests/scoped_fd-selftest.c: New.
13185         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13186         unittests/scoped_fd-selftest.c.
13187
13188 2018-02-09  Tom Tromey  <tom@tromey.com>
13189
13190         * auto-load.c (auto_load_section_scripts): Use
13191         gdb::unique_xmalloc_ptr.
13192
13193 2018-02-09  Tom Tromey  <tom@tromey.com>
13194
13195         * auto-load.c (execute_script_contents): Use std::string.
13196
13197 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
13198
13199         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
13200         Python function, rather than a new command.
13201
13202 2018-02-08  Tom Tromey  <tom@tromey.com>
13203
13204         * solib.c (solib_find_1): Use std::string.
13205         (solib_bfd_fopen): Use unique_xmalloc_ptr.
13206
13207 2018-02-08  Tom Tromey  <tom@tromey.com>
13208
13209         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
13210
13211 2018-02-08  Tom Tromey  <tom@tromey.com>
13212
13213         * source.c (find_source_lines): Use gdb::def_vector.
13214
13215 2018-02-08  Tom Tromey  <tom@tromey.com>
13216
13217         * macrocmd.c (struct temporary_macro_definition): New.
13218         (macro_define_command): Use temporary_macro_definition.  Remove
13219         cleanups.
13220         (free_macro_definition_ptr): Remove.
13221
13222 2018-02-08  Tom Tromey  <tom@tromey.com>
13223
13224         * macroexp.c (maybe_expand): Use std::string.
13225
13226 2018-02-08  Tom Tromey  <tom@tromey.com>
13227
13228         * macroexp.c (struct macro_buffer): Add initializers for some
13229         members.
13230         (init_buffer, init_shared_buffer, free_buffer)
13231         (free_buffer_return_text): Remove.
13232         (macro_buffer): New constructors.
13233         (~macro_buffer): New destructor.
13234         (macro_buffer::set_shared): New method.
13235         (macro_buffer::resize_buffer, macro_buffer::appendc)
13236         (macro_buffer::appendmem): Now methods, not free functions.
13237         (set_token, append_tokens_without_splicing, stringify)
13238         (macro_stringify): Update.
13239         (gather_arguments): Change return type.  Remove argc_p argument,
13240         add args_ptr argument.  Use std::vector.
13241         (substitute_args): Remove argc argument.  Accept std::vector.
13242         (expand): Update.  Use std::vector.
13243         (scan, macro_expand, macro_expand_next): Update.
13244
13245 2018-02-08  Tom Tromey  <tom@tromey.com>
13246
13247         * symtab.c (default_collect_symbol_completion_matches_break_on):
13248         Use unique_xmalloc_ptr.
13249         * macroscope.h: (sal_macro_scope, user_macro_scope)
13250         (default_macro_scope): Return unique_xmalloc_ptr.
13251         * macroscope.c (sal_macro_scope, user_macro_scope)
13252         (default_macro_scope): Return unique_xmalloc_ptr.
13253         * macroexp.h (macro_expand, macro_expand_once): Return
13254         unique_xmalloc_ptr.
13255         * macroexp.c (macro_expand, macro_expand_once): Return
13256         unique_xmalloc_ptr.
13257         * macrocmd.c (macro_expand_command, macro_expand_once_command)
13258         (info_macro_command, info_macros_command): Use
13259         unique_xmalloc_ptr.
13260         * compile/compile-c-support.c (write_macro_definitions): Use
13261         unique_xmalloc_ptr.
13262         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
13263
13264 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
13265
13266         * value.c (value_static_field): Assign field type instead of
13267         containing type when returning an optimized out value.
13268
13269 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13270
13271         * ft32-tdep.c (ft32_read_pc): Remove.
13272         (ft32_write_pc): Remove.
13273         (ft32_gdbarch_init): Update.
13274         * m32r-tdep.c (m32r_read_pc): Remove.
13275         (m32r_gdbarch_init): Update.
13276         * mep-tdep.c (mep_read_pc): Remove.
13277         (mep_gdbarch_init): Update.
13278         * microblaze-tdep.c (microblaze_write_pc): Remove.
13279         (microblaze_gdbarch_init): Update.
13280         * mn10300-tdep.c (mn10300_read_pc): Remove.
13281         (mn10300_write_pc): Remove.
13282         (mn10300_gdbarch_init): Update.
13283         * moxie-tdep.c (moxie_read_pc): Remove.
13284         (moxie_write_pc): Remove.
13285         (moxie_gdbarch_init): Update.
13286
13287 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13288
13289         * expprint.c (print_subexp_standard): Handle
13290         OP_F77_UNDETERMINED_ARGLIST.
13291         (dump_subexp_body_standard): Likewise.
13292
13293 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
13294
13295         * target-descriptions.c (tdesc_element_visitor) Add empty
13296         implementations.
13297         (tdesc_type): Move make_gdb_type from here.
13298         (tdesc_type_builtin): Likewise.
13299         (tdesc_type_vector): Likewise.
13300         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
13301         (make_gdb_type_struct): Move from tdesc_type_with_fields.
13302         (make_gdb_type_union): Likewise.
13303         (make_gdb_type_flags): Likewise.
13304         (make_gdb_type_enum): Likewise.
13305         (make_gdb_type): New function.
13306         (tdesc_register_type): Use static make_gdb_type.
13307
13308 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
13309
13310         * infcmd.c (default_print_one_register_info): Align natural-format
13311         column values consistently one under another.
13312         (pad_to_column): New function.
13313
13314 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
13315
13316         * dwarf2read.c (dwarf2_physname): Move commment.
13317
13318 2018-02-01  Leszek Swirski  <leszeks@google.com>
13319
13320         * varobj.c (varobj_formatted_print_options): Allow recursive
13321         pretty printing if pretty printing is enabled.
13322
13323 2018-02-01  Leszek Swirski  <leszeks@google.com>
13324
13325         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
13326         names after a structop as a filename.
13327
13328 2018-02-01  Yao Qi  <yao.qi@linaro.org>
13329
13330         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
13331         (arm_record_coproc_data_proc): Likewise.
13332
13333 2018-02-01  Yao Qi  <yao.qi@linaro.org>
13334
13335         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
13336
13337 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
13338
13339         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
13340         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
13341
13342 2018-01-31  Pedro Alves  <palves@redhat.com>
13343
13344         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
13345         * inflow.c (child_terminal_save_inferior): Wrap reference to
13346         tcgetpgrp in HAVE_TERMIOS_H.
13347         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
13348         _WIN32.
13349         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
13350         always iterate over all inferiors.
13351         (gdbsim_cntrl_c): Adjust.
13352         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
13353
13354 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13355
13356         * gdbtypes.c (lookup_array_range_type): Make sure the array's
13357         index type is objfile-owned if the element type is as well.
13358
13359 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13360
13361         GDB 8.1 released.
13362
13363 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13364
13365         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
13366         "features/s390x-linux64.c".
13367         (_initialize_s390_linux_tdep): Remove initialization of tdescs
13368         s390_linux32 and s390x_linux64.
13369         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
13370         default tdesc.
13371         * s390-tdep.c: Include "features/s390-linux32.c" and
13372         "features/s390x-linux64.c".
13373         (s390_tdesc_valid): Add check for tdesc_has_registers.
13374         (s390_gdbarch_init): Make sure there is always a valid tdesc.
13375         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
13376         tdesc_s390x_linux64.
13377         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
13378         tdesc_s390x_linux64 to...
13379         * s390-tdep.h: ...here.
13380
13381 2018-01-30  Pedro Alves  <palves@redhat.com>
13382
13383         PR gdb/13211
13384         * config.in, configure: Regenerate.
13385         * configure.ac: Check for getpgid.
13386         * go32-nat.c (go32_pass_ctrlc): New.
13387         (go32_target): Install it.
13388         * inf-child.c (inf_child_target): Install
13389         child_terminal_save_inferior, child_pass_ctrlc and
13390         child_interrupt.
13391         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
13392         (inf_ptrace_target): No longer install it.
13393         * infcmd.c (interrupt_target_1): Adjust.
13394         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
13395         (child_interrupt): Declare.
13396         (inferior::terminal_state): New.
13397         * inflow.c (struct terminal_info): Update comments.
13398         (inferior_process_group): Delete.
13399         (terminal_is_ours): Delete.
13400         (gdb_tty_state): New.
13401         (child_terminal_init): Adjust.
13402         (is_gdb_terminal, sharing_input_terminal_1)
13403         (sharing_input_terminal): New functions.
13404         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
13405         Set the process's actual process group in the foreground if
13406         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
13407         mark terminal as the inferior's if not sharing GDB's terminal.
13408         Don't check attach_flag.
13409         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
13410         pass down a target_terminal_state.
13411         (child_terminal_save_inferior): New, factored out from ...
13412         (child_terminal_ours_1): ... this.  Handle
13413         target_terminal_state::is_ours_for_output.
13414         (child_interrupt, child_pass_ctrlc): New.
13415         (inflow_inferior_exit): Clear the inferior's terminal_state.
13416         (copy_terminal_info): Copy the inferior's terminal state.
13417         (_initialize_inflow): Remove reference to terminal_is_ours.
13418         * inflow.h (inferior_process_group): Delete.
13419         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
13420         * procfs.c (procfs_target): Don't install procfs_interrupt.
13421         (procfs_interrupt): Delete.
13422         * remote.c (remote_serial_quit_handler): Adjust.
13423         (remote_interrupt): Remove ptid parameter.  Adjust.
13424         * target-delegates.c: Regenerate.
13425         * target.c: Include "terminal.h".
13426         (target_terminal::terminal_state): Rename to ...
13427         (target_terminal::m_terminal_state): ... this.
13428         (target_terminal::init): Adjust.
13429         (target_terminal::inferior): Adjust to per-inferior
13430         terminal_state.
13431         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
13432         (target_terminal::ours, target_terminal::ours_for_output): Use
13433         target_terminal_is_ours_kind.
13434         (target_interrupt): Remove ptid parameter.  Adjust.
13435         (default_target_pass_ctrlc): Adjust.
13436         * target.h (target_ops::to_terminal_save_inferior): New field.
13437         (target_ops::to_interrupt): Remove ptid_t parameter.
13438         (target_interrupt): Remove ptid_t parameter.  Update comment.
13439         (target_pass_ctrlc): Update comment.
13440         * target/target.h (target_terminal_state): New scoped enum,
13441         factored out of ...
13442         (target_terminal::terminal_state): ... here.
13443         (target_terminal::inferior): Update comments.
13444         (target_terminal::restore_inferior): New.
13445         (target_terminal::is_inferior, target_terminal::is_ours)
13446         (target_terminal::is_ours_for_output): Adjust.
13447         (target_terminal::scoped_restore_terminal_state): Adjust to
13448         rename, and call restore_inferior() instead of inferior().
13449         (target_terminal::scoped_restore_terminal_state::m_state): Change
13450         type.
13451         (target_terminal::terminal_state): Rename to ...
13452         (target_terminal::m_terminal_state): ... this and change type.
13453
13454 2018-01-30  Pedro Alves  <palves@redhat.com>
13455
13456         * linux-nat.c (wait_for_signal): New function.
13457         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
13458         directly.
13459         (async_terminal_is_ours)
13460         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
13461         (linux_nat_add_target): Don't override
13462         to_terminal_inferior/to_terminal_ours.
13463
13464 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
13465
13466         * remote.c (remote_follow_fork): Don't call "detach_inferior".
13467
13468 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
13469
13470         * dwarf2read.c (free_dwo_files): Add forward-declaration.
13471         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
13472         dwarf2_per_objfile_free here.
13473         (dwarf2_per_objfile_free): Remove.
13474         (_initialize_dwarf2_read): Don't register
13475         dwarf2_per_objfile_free as a registry cleanup.
13476
13477 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
13478
13479         Avoid compilation errors in MinGW native builds
13480
13481         The error is triggered by including python-internal.h, and the
13482         error message is:
13483
13484              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
13485                       from build-gnulib/import/math.h:27,
13486                       from d:/usr/Python26/include/pyport.h:235,
13487                       from d:/usr/Python26/include/Python.h:58,
13488                       from python/python-internal.h:94,
13489                       from python/py-arch.c:24:
13490              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
13491         using ::hypot;
13492                 ^~~~~
13493
13494         This happens because Python headers define 'hypot' to expand t
13495         '_hypot' in the Windows builds.
13496         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
13497         'hypoth'.  This avoids a compilation error.
13498
13499 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
13500
13501         * MAINTAINERS (Write After Approval): Fix ordering.
13502
13503 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
13504
13505         * MAINTAINERS (Write After Approval): Add Alan Hayward.
13506
13507 2018-01-26  Alan Modra  <amodra@gmail.com>
13508
13509         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
13510         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
13511         Remove nop.  Make const.  Comment.
13512         (powerpc32_plt_stub_so_2): New.
13513         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
13514         Correct count.  Update uses.
13515         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
13516         Move common code reading PLT entry word.  Correct
13517         powerpc32_plt_stub PLT address calculation.
13518         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
13519         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
13520         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
13521         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
13522         (ppc64_standard_linkage8): Likewise.
13523         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
13524         Correct insns description.
13525         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
13526
13527 2018-01-24  Pedro Alves  <palves@redhat.com>
13528
13529         GCC PR libstdc++/83906
13530         * gdbtypes.c (operator==(const dynamic_prop &,
13531         const dynamic_prop &)): New.
13532         (operator==(const range_bounds &, const range_bounds &)): New.
13533         (check_types_equal): Use them instead of memcmp.
13534         * gdbtypes.h (operator==(const dynamic_prop &,
13535         const dynamic_prop &)): Declare.
13536         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
13537         (operator==(const range_bounds &, const range_bounds &)): Declare.
13538         (operator!=(const range_bounds &, const range_bounds &)): Declare.
13539
13540 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13541
13542         * s390-linux-tdep.c (s390_record_address_mask)
13543         (s390_record_calc_disp_common, s390_record_calc_disp)
13544         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
13545         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
13546         (s390_process_record): Move to s390-tdep.c.
13547         (s390_linux_init_abi_any): Adjust.
13548         * s390-tdep.c (s390_record_address_mask)
13549         (s390_record_calc_disp_common, s390_record_calc_disp)
13550         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
13551         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
13552         (s390_process_record): Moved from s390-linux-tdep.c
13553         (s390_gdbarch_init): Adjust.
13554
13555 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13556
13557         * s390-linux-nat.c (s390-tdep.h): New include.
13558         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
13559         (HFILES_NO_SRCDIR): Add s390-tdep.h.
13560         (ALLDEPFILES): Add s390-tdep.c.
13561         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
13562         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
13563         * s390-tdep.h: ...this.  New file.
13564         * s390-linux-tdep.c (s390-tdep.h): New include.
13565         (_initialize_s390_tdep): Rename to...
13566         (_initialize_s390_linux_tdep): ...this and adjust.
13567         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
13568         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
13569         s390-tdep.h.
13570         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
13571         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
13572         (s390_is_partial_instruction, s390_software_single_step)
13573         (is_non_branch_ril, s390_displaced_step_copy_insn)
13574         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
13575         (s390_prologue_data, s390_addr, s390_store, s390_load)
13576         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
13577         (s390_register_call_saved, s390_guess_tracepoint_registers)
13578         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
13579         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
13580         (s390_pseudo_register_name, s390_pseudo_register_type)
13581         (s390_pseudo_register_read, s390_pseudo_register_write)
13582         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
13583         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
13584         (s390_addr_bits_remove, s390_address_class_type_flags)
13585         (s390_address_class_type_flags_to_name)
13586         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
13587         (s390_function_arg_float, s390_function_arg_vector)
13588         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
13589         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
13590         (s390_frame_align, s390_register_return_value, s390_return_value)
13591         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
13592         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
13593         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
13594         (s390_trad_frame_prev_register, s390_unwind_cache)
13595         (s390_prologue_frame_unwind_cache)
13596         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
13597         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
13598         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
13599         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
13600         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
13601         (s390_frame_base_address, s390_local_base_address)
13602         (s390_frame_base, s390_gcc_target_options)
13603         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
13604         (s390_validate_reg_range, s390_tdesc_valid)
13605         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
13606         * s390-tdep.c: ...this.  New file.
13607
13608 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13609
13610         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
13611         (s390_process_record, s390_gdbarch_tdep_alloc)
13612         (s390_linux_init_abi_any): Use/set new hook.
13613
13614 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13615
13616         * s390-linux-tdep.c (osabi.h): New include.
13617         (s390_linux_init_abi_31, s390_linux_init_abi_64)
13618         (s390_linux_init_abi_any): New functions.
13619         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
13620
13621 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13622
13623         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
13624         tdesc_has_registers check
13625
13626 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13627
13628         * s390-linux-tdep.c (s390_tdesc_valid): New function.
13629         (s390_validate_reg_range): New macro.
13630         (s390_gdbarch_init): Adjust.
13631
13632 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13633
13634         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
13635         (s390_gdbarch_tdep_alloc): Adjust.
13636         (s390_gdbarch_init): Adjust.
13637
13638 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13639
13640         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
13641         <have_tdb>: Change type to bool.
13642         (s390_gdbarch_tdep_alloc): Adjust.
13643         (s390_gdbarch_init): Adjust.
13644
13645 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13646
13647         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
13648         (gdbarch_tdep) <have_upper, have_vx>: New fields.
13649         (s390_gdbarch_tdep_alloc): New function.
13650         (s390_gdbarch_init): Allocate tdep at start and use its fields
13651         instead of separate variables.
13652
13653 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13654
13655         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
13656         when looking for cached gdbarch and add comment for remaining.
13657
13658 2018-01-22  Pedro Alves  <palves@redhat.com>
13659             Sergio Durigan Junior  <sergiodj@redhat.com>
13660
13661         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
13662         case.
13663
13664 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
13665
13666         * MAINTAINERS: Update my company e-mail address.
13667
13668 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13669
13670         * regcache.c (cooked_write_test): New function.
13671         (_initialize_regcache): Register the test.
13672
13673 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13674
13675         * ia64-tdep.c (ia64_pseudo_register_read): Call
13676         regcache->cooked_read instead of regcache_cooked_read_unsigned.
13677         * m32c-tdep.c (m32c_cat_read): Likewise.
13678         (m32c_r3r2r1r0_read): Likewise.
13679         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
13680         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
13681
13682 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13683
13684         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
13685         method raw_read instead of regcache_raw_read.
13686         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
13687         * arm-tdep.c (arm_neon_quad_read): Likewise.
13688         * avr-tdep.c (avr_pseudo_register_read): Likewise.
13689         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
13690         * frv-tdep.c (frv_pseudo_register_read): Likewise.
13691         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
13692         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
13693         (i386_pseudo_register_read_into_value): Likewise.
13694         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
13695         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
13696         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
13697         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
13698         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
13699         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
13700         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
13701         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
13702         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
13703
13704 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13705
13706         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
13707         * configure.tgt: Remove target mt.
13708         * mt-tdep.c: Remove.
13709         * regcache.c (cooked_read_test): Remove the check for mt.
13710
13711 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13712
13713         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
13714         instead of gdbarch_pseudo_register_read_value.
13715
13716 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
13717
13718         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
13719         language is Ada.
13720
13721 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
13722
13723         * linespec.c (create_sals_line_offset): Remove code that preserved
13724         the symtab_and_line's line number.
13725
13726 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13727
13728         * varobj.c (varobj_create): Don't set valid_block when creating a
13729         floating varobj.
13730
13731 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13732
13733         * varobj.c (varobj_create): Remove out of date comment.
13734
13735 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13736
13737         PR mi/20395
13738         * ada-exp.y (write_var_from_sym): Pass extra parameter when
13739         updating innermost block.
13740         * parse.c (innermost_block_tracker::update): Take extra type
13741         parameter, and check types match before updating innermost block.
13742         (write_dollar_variable): Update innermost block for registers.
13743         * parser-defs.h (enum innermost_block_tracker_type): New enum.
13744         (innermost_block_tracker::innermost_block_tracker): Initialise
13745         m_types member.
13746         (innermost_block_tracker::reset): Take type parameter.
13747         (innermost_block_tracker::update): Take type parameter, and pass
13748         type through as needed.
13749         (innermost_block_tracker::m_types): New member.
13750         * varobj.c (varobj_create): Pass type when reseting innermost
13751         block.
13752
13753 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13754
13755         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
13756         * ada-lang.c (resolve_subexp): Likewise.
13757         * breakpoint.c (set_breakpoint_condition) Likewise.
13758         (watch_command_1) Likewise.
13759         * c-exp.y (variable): Likewise.
13760         * d-exp.y (PrimaryExpression): Likewise.
13761         * f-exp.y (variable): Likewise.
13762         * go-exp.y (variable): Likewise.
13763         * m2-exp.y (variable): Likewise.
13764         * objfiles.c (objfile::~objfile): Likewise.
13765         * p-exp.y (variable): Likewise.
13766         * parse.c (innermost_block): Change type.
13767         * parser-defs.h (class innermost_block_tracker): New.
13768         (innermost_block): Change to innermost_block_tracker.
13769         * printcmd.c (display_command): Switch to innermost_block API.
13770         (do_one_display): Likewise.
13771         * rust-exp.y (do_one_display): Likewise.
13772         * symfile.c (clear_symtab_users): Likewise.
13773         * varobj.c (varobj_create): Switch to innermost_block API, replace
13774         use of innermost_block with block stored on varobj object.
13775
13776 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13777
13778         * expression.h (innermost_block): Remove declaration.
13779         * varobj.c: Add 'parser-defs.h' include.
13780
13781 2018-01-19  Tom Tromey  <tom@tromey.com>
13782
13783         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
13784         symbols in the static and global blocks.
13785
13786 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
13787
13788         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
13789         gdb_ptrace.h, and move including gdb_wait.h ...
13790         * nat/linux-ptrace.h: ... to here.
13791
13792 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13793
13794         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
13795         inf_ptrace_detach_success.
13796         (inf_ptrace_detach_success): Add inferior parameter, use it
13797         instead of inferior_ptid, pass it to detach_inferior.
13798         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
13799         parameter.
13800         * inferior.c (detach_inferior): Add overload that takes an
13801         inferior object.
13802         * inferior.h (detach_inferior): Likewise.
13803         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
13804         use inferior_ptid, adjust call to inf_ptrace_detach_success.
13805         * linux-thread-db.c (thread_db_detach): Use inf parameter.
13806
13807 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13808
13809         * target.h (struct target_ops) <to_detach>: Add inferior
13810         parameter.
13811         (target_detach): Likewise.
13812         * target.c (dispose_inferior): Pass inferior down.
13813         (target_detach): Pass inferior down.  Assert that it is equal to
13814         the current inferior.
13815         * aix-thread.c (aix_thread_detach): Pass inferior down.
13816         * corefile.c (core_file_command): Pass current_inferior() down.
13817         * corelow.c (core_detach): Add inferior parameter.
13818         * darwin-nat.c (darwin_detach): Likewise.
13819         * gnu-nat.c (gnu_detach): Likewise.
13820         * inf-ptrace.c (inf_ptrace_detach): Likewise.
13821         * infcmd.c (detach_command): Pass current_inferior() down to
13822         target_detach.
13823         * infrun.c (follow_fork_inferior): Pass parent_inf to
13824         target_detach.
13825         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
13826         target_detach.
13827         * linux-nat.c (linux_nat_detach): Add inferior parameter.
13828         * linux-thread-db.c (thread_db_detach): Likewise.
13829         * nto-procfs.c (procfs_detach): Likewise.
13830         * procfs.c (procfs_detach): Likewise.
13831         * record.c (record_detach): Likewise.
13832         * record.h (struct inferior): Forward-declare.
13833         (record_detach): Add inferior parameter.
13834         * remote-sim.c (gdbsim_detach): Likewise.
13835         * remote.c (remote_detach_1): Likewise.
13836         (remote_detach): Likewise.
13837         (extended_remote_detach): Likewise.
13838         * sol-thread.c (sol_thread_detach): Likewise.
13839         * target-debug.h (target_debug_print_inferior_p): New macro.
13840         * target-delegates.c: Re-generate.
13841         * top.c (kill_or_detach): Pass inferior down to target_detach.
13842         * windows-nat.c (windows_detach): Add inferior parameter.
13843
13844 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13845
13846         * target.h (struct target_ops) <to_detach>: Remove args
13847         parameter.
13848         (target_detach): Likewise.
13849         * target.c (dispose_inferior): Adjust.
13850         (target_detach): Remove args parameter, adjust.
13851         * aix-thread.c (aix_thread_detach): Adjust.
13852         * corefile.c (core_file_command): Adjust.
13853         * corelow.c (core_detach): Adjust.
13854         * darwin-nat.c (darwin_detach): Adjust.
13855         * gnu-nat.c (gnu_detach): Adjust.
13856         * inf-ptrace.c (inf_ptrace_detach): Adjust.
13857         * infcmd.c (detach_command): Adjust
13858         * infrun.c (follow_fork_inferior): Adjust.
13859         (handle_vfork_child_exec_or_exit): Adjust.
13860         * linux-fork.c (linux_fork_detach): Remove args parameter.
13861         * linux-fork.h (linux_fork_detach): Likewise.
13862         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
13863         * linux-thread-db.c (thread_db_detach): Likewise.
13864         * nto-procfs.c (procfs_detach): Likewise.
13865         * procfs.c (procfs_detach): Likewise.
13866         (do_detach): Remove signo parameter.
13867         * record.c (record_detach): Remove args parameter.
13868         * record.h (record_detach): Likewise.
13869         * remote-sim.c (gdbsim_detach): Likewise.
13870         * remote.c (remote_detach_1): Likewise.
13871         (remote_detach): Likewise.
13872         (extended_remote_detach): Likewise.
13873         * sol-thread.c (sol_thread_detach): Likewise.
13874         * target-delegates.c: Re-generate.
13875         * top.c (struct qt_args) <args>: Remove field.
13876         (kill_or_detach): Don't pass args.
13877         (quit_force): Don't set args.
13878         * windows-nat.c (windows_detach): Remove args parameter.
13879
13880 2018-01-19  Yao Qi  <yao.qi@linaro.org>
13881
13882         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
13883         (arm_linux_init_abi): Install it.
13884
13885 2018-01-19  Yao Qi  <yao.qi@linaro.org>
13886
13887         * osabi.c (gdb_osabi_names): Extend the regexp for
13888         arm-linux-gnueabihf.
13889
13890 2018-01-18  Yao Qi  <yao.qi@linaro.org>
13891
13892         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
13893         m_abbrevs.
13894         (abbrev_table::add_abbrev): Update.
13895         (abbrev_table::lookup_abbrev): Update.
13896
13897 2018-01-18  Yao Qi  <yao.qi@linaro.org>
13898
13899         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
13900
13901 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
13902
13903         * compile/compile.c (compile_to_object): Convert "triplet_rx"
13904         to "std::string".
13905
13906 2018-01-17  Tom Tromey  <tom@tromey.com>
13907
13908         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
13909
13910 2018-01-17  Tom Tromey  <tom@tromey.com>
13911
13912         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
13913         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
13914         (create_array_type_with_stride): Update.
13915         * dwarf2read.c (set_die_type): Update.
13916
13917 2018-01-17  Tom Tromey  <tom@tromey.com>
13918
13919         * dwarf2read.c (delayed_method_info): Remove typedef.
13920         (dwarf2_cu::method_info): Now a std::vector.
13921         (add_to_method_list): Update.
13922         (free_delayed_list): Remove.
13923         (compute_delayed_physnames): Update.
13924         (process_full_comp_unit, process_full_type_unit): Clear the method
13925         list.  Remove cleanups.
13926         (psymtab_include_file_name): Add name_holder parameter.  Use
13927         unique_xmalloc_ptr.
13928         (dwarf_decode_lines): Update.
13929
13930 2018-01-17  Tom Tromey  <tom@tromey.com>
13931             Simon Marchi  <simon.marchi@ericsson.com>
13932
13933         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
13934         (dwarf2_per_objfile::free_cached_comp_units)
13935         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
13936         (init_cutu_and_read_dies_no_follow): Update.
13937         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
13938         (dwarf2_cu::~dwarf2_cu): New.
13939         (free_heap_comp_unit, free_stack_comp_unit): Remove.
13940         (age_cached_comp_units, free_one_cached_comp_unit): Update.
13941
13942 2018-01-17  Tom Tromey  <tom@tromey.com>
13943             Simon Marchi  <simon.marchi@ericsson.com>
13944
13945         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
13946         (struct die_reader_specs) <abbrev_table>: New member.
13947         (struct abbrev_table): Add constructor.
13948         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
13949         <abbrev_obstack>: Now an auto_obstack.
13950         (abbrev_table_up): New typedef.
13951         (init_cu_die_reader): Add abbrev_table parameter.
13952         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
13953         Add result_dwo_abbrev_table.
13954         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
13955         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
13956         Update.
13957         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
13958         parameter.
13959         (skip_children): Update.
13960         (abbrev_table::alloc_abbrev): Rename from
13961         abbrev_table_alloc_abbrev.
13962         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
13963         (abbrev_table::lookup_abbrev): Rename from
13964         abbrev_table_lookup_abbrev.
13965         (abbrev_table_read_table): Return abbrev_table_up.
13966         (abbrev_table_free, abbrev_table_free_cleanup)
13967         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
13968         (load_partial_dies): Update.
13969
13970 2018-01-17  Tom Tromey  <tom@tromey.com>
13971
13972         * dwarf2read.c (dwarf2_compute_name): Update comment.
13973         (read_func_scope, read_variable): Update.
13974         (new_symbol): Remove.
13975         (new_symbol_full): Rename to new_symbol.
13976
13977 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
13978
13979         PR gdb/16577
13980         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
13981         a warning instead of throwing an error, set section size to 0 and return
13982         NULL.
13983         * gdb_bfd.h (gdb_bfd_map_section): Update description.
13984
13985 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
13986
13987         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
13988         std::string.
13989         (linux_ptrace_attach_fail_reason_string): Likewise.
13990         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
13991         Likewise.
13992         (linux_ptrace_attach_fail_reason_string): Likewise.
13993         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
13994
13995 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
13996
13997         * linux-nat.c (linux_nat_attach): Remove xstrdup.
13998
13999 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
14000
14001         PR gdb/21559
14002         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
14003         checking for fs_base/gs_base fields in struct user_regs_struct.
14004         * configure: Regenerate.
14005
14006 2018-01-17  Yao Qi  <yao.qi@linaro.org>
14007
14008         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
14009         function.
14010         (aarch64_linux_init_abi): Install it to gdbarch hook
14011         gcc_target_options.
14012
14013 2018-01-15  Pedro Alves  <palves@redhat.com>
14014
14015         * common/signals-state-save-restore.c
14016         (save_original_signals_state): Fix typos.
14017
14018 2017-01-12  Tom Tromey  <tom@tromey.com>
14019             Sergio Durigan Junior  <sergiodj@redhat.com>
14020
14021         * Makefile.in (install-only): Install gdb-add-index.
14022
14023 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
14024
14025         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
14026
14027 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
14028
14029         * infrun.c (keep_going_pass_signal): Clear step-over info when
14030         insert_breakpoints fails.
14031
14032 2018-01-11  Pedro Alves  <palves@redhat.com>
14033
14034         PR gdb/22583
14035         * infrun.c (resume): Rename to ...
14036         (resume_1): ... this.
14037         (resume): Reimplement as wrapper around resume_1.
14038
14039 2018-01-11  Pedro Alves  <palves@redhat.com>
14040
14041         PR remote/22597
14042         * remote.c (remote_parse_stop_reply): Default to the last-set
14043         general thread instead of to 'magic_null_ptid'.
14044
14045 2018-01-10  Pedro Alves  <palves@redhat.com>
14046
14047         * language.h (language_get_symbol_name_matcher): Rename ...
14048         (get_symbol_name_matcher): ... this.
14049         * language.c (language_get_symbol_name_matcher): Ditto.
14050         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
14051         callers adjusted.
14052
14053 2018-01-10  Pedro Alves  <palves@redhat.com>
14054
14055         PR gdb/22670
14056         * dwarf2read.c
14057         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
14058         Adjust to use language_get_symbol_name_matcher instead of
14059         language_defn::la_get_symbol_name_matcher.
14060         * language.c (language_get_symbol_name_matcher): If in Ada mode
14061         and the lookup name is a verbatim match, return Ada's matcher.
14062         * language.h (language_get_symbol_name_matcher): Adjust comment.
14063         (ada_lookup_name_info::verbatim_p):: New method.
14064
14065 2018-01-10  Pedro Alves  <palves@redhat.com>
14066
14067         PR gdb/22670
14068         * ada-lang.c (ada_collect_symbol_completion_matches): If the
14069         minsym's language is language_auto or language_cplus, pass down
14070         language_ada instead.
14071         * symtab.c (compare_symbol_name): Don't frob symbol language here.
14072
14073 2018-01-10  Pedro Alves  <palves@redhat.com>
14074
14075         PR gdb/22670
14076         * minsyms.c (linkage_name_str): New function.
14077         (iterate_over_minimal_symbols): Use it.
14078
14079 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14080
14081         * NEWS: Document that 'info proc' now works on FreeBSD.
14082
14083 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14084
14085         * configure.ac: Check for kinfo_getfile in libutil.
14086         * configure: Regenerate.
14087         * config.in: Regenerate.
14088         * fbsd-nat.c: Include "fbsd-tdep.h".
14089         (fbsd_fetch_cmdline): New.
14090         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
14091         rather than calling error.
14092         (fbsd_info_proc): New.
14093         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
14094         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
14095         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
14096
14097 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14098
14099         * fbsd-nat.c (struct free_deleter): Remove.
14100         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
14101
14102 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14103
14104         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
14105         NULL for an empty pathname.
14106
14107 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14108
14109         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
14110         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
14111         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
14112         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
14113         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
14114         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
14115         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
14116         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
14117         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
14118         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
14119         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
14120         (fbsd_core_fetch_timeval, fbsd_print_sigset)
14121         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
14122         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
14123         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
14124
14125 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
14126
14127         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
14128         (gnu_xfer_auxv): New function.
14129         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
14130         TARGET_OBJECT_AUXV.
14131
14132 2018-01-08  Yao Qi  <yao.qi@linaro.org>
14133             Simon Marchi  <simon.marchi@ericsson.com>
14134
14135         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
14136         common/selftest.c.
14137         (COMMON_OBS): Remove selftest.o.
14138         * configure.ac: Append selftest-arch.c and common/selftest.c to
14139         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
14140         * configure: Re-generated.
14141         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
14142         GDB_SELF_TEST.
14143         (maintenance_info_selftests): Likewise.
14144
14145 2018-01-08  Xavier Roirand  <roirand@adacore.com>
14146
14147         * ada-valprint.c (val_print_packed_array_elements): Use
14148         proper number of elements when printing an array indexed
14149         by an enumeration type.
14150
14151 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14152
14153         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
14154         (dw2_get_file_names_reader): Adjust.
14155         (lookup_dwo_signatured_type): Adjust.
14156         (lookup_dwp_signatured_type): Adjust.
14157         (lookup_signatured_type): Adjust.
14158         (create_type_unit_group): Adjust.
14159         (get_type_unit_group): Adjust.
14160         (process_psymtab_comp_unit_reader): Adjust.
14161         (build_type_psymtabs_reader): Adjust.
14162         (scan_partial_symbols): Adjust.
14163         (add_partial_symbol): Adjust.
14164         (add_partial_subprogram): Adjust.
14165         (peek_die_abbrev): Adjust.
14166         (fixup_go_packaging): Adjust.
14167         (process_imported_unit_die): Adjust.
14168         (dwarf2_compute_name): Adjust.
14169         (dwarf2_physname): Adjust.
14170         (read_import_statement): Adjust.
14171         (handle_DW_AT_stmt_list): Adjust.
14172         (read_file_scope): Adjust.
14173         (read_func_scope): Adjust.
14174         (read_lexical_block_scope): Adjust.
14175         (read_call_site_scope): Adjust.
14176         (read_variable): Adjust.
14177         (dwarf2_rnglists_process): Adjust.
14178         (dwarf2_ranges_process): Adjust.
14179         (dwarf2_ranges_read): Adjust.
14180         (dwarf2_get_pc_bounds): Adjust.
14181         (dwarf2_record_block_ranges): Adjust.
14182         (dwarf2_add_field): Adjust.
14183         (dwarf2_add_member_fn): Adjust.
14184         (read_structure_type): Adjust.
14185         (process_structure_scope): Adjust.
14186         (read_enumeration_type): Adjust.
14187         (read_array_type): Adjust.
14188         (mark_common_block_symbol_computed): Adjust.
14189         (read_common_block): Adjust.
14190         (read_namespace_type): Adjust.
14191         (read_namespace): Adjust.
14192         (read_module_type): Adjust.
14193         (read_tag_pointer_type): Adjust.
14194         (read_tag_ptr_to_member_type): Adjust.
14195         (read_tag_string_type): Adjust.
14196         (read_subroutine_type): Adjust.
14197         (read_typedef): Adjust.
14198         (read_base_type): Adjust.
14199         (attr_to_dynamic_prop): Adjust.
14200         (read_subrange_type): Adjust.
14201         (read_unspecified_type): Adjust.
14202         (dwarf2_read_abbrevs): Adjust.
14203         (load_partial_dies): Adjust.
14204         (read_partial_die): Adjust.
14205         (find_partial_die): Adjust.
14206         (guess_partial_die_structure_name): Adjust.
14207         (fixup_partial_die): Adjust.
14208         (read_attribute_value): Adjust.
14209         (read_addr_index): Adjust.
14210         (read_addr_index_from_leb128): Adjust.
14211         (read_str_index): Adjust.
14212         (dwarf2_string_attr): Adjust.
14213         (get_debug_line_section): Adjust.
14214         (dwarf_decode_line_header): Adjust.
14215         (lnp_state_machine::check_line_address): Adjust.
14216         (dwarf_decode_lines_1): Adjust.
14217         (dwarf_decode_lines): Adjust.
14218         (dwarf2_start_symtab): Adjust.
14219         (var_decode_location): Adjust.
14220         (new_symbol_full): Adjust.
14221         (dwarf2_const_value_data): Adjust.
14222         (dwarf2_const_value_attr): Adjust.
14223         (dwarf2_const_value): Adjust.
14224         (die_type): Adjust.
14225         (die_containing_type): Adjust.
14226         (build_error_marker_type): Adjust.
14227         (lookup_die_type): Adjust.
14228         (guess_full_die_structure_name): Adjust.
14229         (anonymous_struct_prefix): Adjust.
14230         (determine_prefix): Adjust.
14231         (dwarf2_name): Adjust.
14232         (follow_die_ref_or_sig): Adjust.
14233         (follow_die_offset): Adjust.
14234         (follow_die_ref): Adjust.
14235         (follow_die_sig_1): Adjust.
14236         (follow_die_sig): Adjust.
14237         (get_signatured_type): Adjust.
14238         (get_DW_AT_signature_type): Adjust.
14239         (decode_locdesc): Adjust.
14240         (dwarf_decode_macros): Adjust.
14241         (cu_debug_loc_section): Adjust.
14242         (fill_in_loclist_baton): Adjust.
14243         (dwarf2_symbol_mark_computed): Adjust.
14244         (init_one_comp_unit): Don't assign
14245         dwarf2_cu::dwarf2_per_objfile.
14246         (set_die_type): Adjust.
14247
14248 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14249
14250         * dwarf2read.c (struct mapped_debug_names): Add constructor.
14251         <dwarf2_per_objfile>: New field.
14252         (dwarf2_per_objfile): Remove global.
14253         (get_dwarf2_per_objfile): New function.
14254         (set_dwarf2_per_objfile): New function.
14255         (dwarf2_build_psymtabs_hard): Change objfile parameter to
14256         dwarf2_per_objfile.
14257         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14258         (read_abbrev_offset): Likewise.
14259         (read_indirect_string): Likewise.
14260         (read_indirect_line_string): Likewise.
14261         (read_indirect_string_at_offset): Likewise.
14262         (read_indirect_string_from_dwz): Likewise.
14263         (dwarf2_find_containing_comp_unit): Change objfile parameter to
14264         dwarf2_per_objfile.
14265         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
14266         (create_all_comp_units): Change objfile parameter to
14267         dwarf2_per_objfile.
14268         (create_all_type_units): Likewise.
14269         (process_queue): Add dwarf2_per_objfile parameter.
14270         (read_and_check_comp_unit_head): Likewise.
14271         (lookup_dwo_unit_in_dwp): Likewise.
14272         (get_dwp_file): Likewise.
14273         (process_cu_includes): Likewise.
14274         (struct free_dwo_file_cleanup_data): New struct.
14275         (dwarf2_has_info): Use get_dwarf2_per_objfile and
14276         set_dwarf2_per_objfile.
14277         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
14278         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
14279         context, adjust calls.
14280         (dw2_instantiate_symtab): Likewise.
14281         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
14282         (dw2_get_cu): Likewise.
14283         (create_cu_from_index_list): Change objfile parameter to
14284         dwarf2_per_objfile.
14285         (create_cus_from_index_list): Get dwarf2_per_objfile from
14286         context, adjust calls.
14287         (create_cus_from_index): Likewise.
14288         (create_signatured_type_table_from_index): Change objfile
14289         parameter to dwarf2_per_objfile.
14290         (create_signatured_type_table_from_debug_names): Change objfile
14291         parameter to dwarf2_per_objfile.
14292         (create_addrmap_from_index): Likewise.
14293         (create_addrmap_from_aranges): Likewise.
14294         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
14295         (dw2_setup): Remove.
14296         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
14297         context.
14298         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
14299         get_dwarf2_per_objfile.
14300         (dw2_forget_cached_source_info): Likewise.
14301         (dw2_map_symtabs_matching_filename): Likewise.
14302         (struct dw2_symtab_iterator) <index>: Remove.
14303         <dwarf2_per_objfile>: New field.
14304         (dw2_symtab_iter_init): Replace index parameter with
14305         dwarf2_per_objfile.
14306         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
14307         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
14308         (dw2_print_stats): Likewise.
14309         (dw2_dump): Likewise.
14310         (dw2_expand_symtabs_for_function): Likewise.
14311         (dw2_expand_all_symtabs): Likewise.
14312         (dw2_expand_symtabs_with_fullname): Likewise.
14313         (dw2_expand_marked_cus): Replace index and objfile parameters
14314         with dwarf2_per_objfile.
14315         (dw_expand_symtabs_matching_file_matcher): Add
14316         dwarf2_per_objfile parameter and adjust calls.
14317         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
14318         adjust calls.
14319         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
14320         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
14321         adjust calls.
14322         (create_cus_from_debug_names_list): Replace objfile parameter
14323         with dwarf2_per_objfile and adjust calls.
14324         (create_cus_from_debug_names): Likewise.
14325         (dwarf2_read_debug_names): Likewise.
14326         (mapped_debug_names::namei_to_name): Adjust call.
14327         (dw2_debug_names_iterator::next): Likewise.
14328         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
14329         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
14330         (dw2_debug_names_dump): Likewise.
14331         (dw2_debug_names_expand_symtabs_for_function): Likewise.
14332         (dw2_debug_names_expand_symtabs_matching): Likewise.
14333         (dwarf2_initialize_objfile): Likewise.
14334         (dwarf2_build_psymtabs): Likewise.
14335         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
14336         this_cu.
14337         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
14338         (read_and_check_comp_unit_head): Likewise.
14339         (read_abbrev_offset): Likewise.
14340         (create_debug_type_hash_table): Likewise.
14341         (create_debug_types_hash_table): Likewise.
14342         (create_all_type_units): Replace objfile parameter with
14343         dwarf2_per_objfile.
14344         (add_type_unit): Add dwarf2_per_objfile parameter.
14345         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
14346         with dwarf2_per_objfile.
14347         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
14348         (lookup_dwp_signatured_type): Likewise.
14349         (lookup_signatured_type): Likewise.
14350         (read_cutu_die_from_dwo): Likewise.
14351         (init_tu_and_read_dwo_dies): Likewise.
14352         (init_cutu_and_read_dies): Likewise.
14353         (init_cutu_and_read_dies_no_follow): Likewise.
14354         (allocate_type_unit_groups_table): Add objfile parameter.
14355         (create_type_unit_group): Use dwarf2_per_objfile from cu.
14356         (get_type_unit_group): Likewise.
14357         (process_psymtab_comp_unit): Update call.
14358         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
14359         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
14360         (print_tu_stats): Likewise.
14361         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
14362         in void* parameter.
14363         (build_type_psymtabs): Change objfile parameter to
14364         dwarf2_per_objfile.
14365         (process_skeletonless_type_unit): Use dwarf2_per_objfile
14366         passed in void* parameter.
14367         (process_skeletonless_type_units): Change objfile parameter to
14368         dwarf2_per_objfile.
14369         (set_partial_user): Likewise.
14370         (dwarf2_build_psymtabs_hard): Likewise.
14371         (read_comp_units_from_section): Likewise.
14372         (create_all_comp_units): Likewise.
14373         (scan_partial_symbols): Update calls.
14374         (add_partial_symbol): Likewise.
14375         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
14376         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
14377         (process_queue): Add dwarf2_per_objfile parameter.
14378         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
14379         (compute_compunit_symtab_includes): Likewise.
14380         (process_cu_includes): Add dwarf2_per_objfile parameter.
14381         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
14382         (process_full_type_unit): Likewise.
14383         (process_imported_unit_die): Update call.
14384         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
14385         (read_file_scope): Likewise.
14386         (allocate_dwo_file_hash_table): Add objfile parameter.
14387         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
14388         (create_cus_hash_table): Likewise.
14389         (create_dwp_hash_table): Likewise.
14390         (create_dwo_unit_in_dwp_v1): Likewise.
14391         (create_dwp_v2_section): Likewise.
14392         (create_dwo_unit_in_dwp_v2): Likewise.
14393         (lookup_dwo_unit_in_dwp): Likewise.
14394         (try_open_dwop_file): Likewise.
14395         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
14396         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
14397         cleanup to include a reference to dwarf2_per_objfile.
14398         (open_dwp_file): Add dwarf2_per_objfile parameter.
14399         (open_and_init_dwp_file): Likewise.
14400         (get_dwp_file): Likewise.
14401         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
14402         (queue_and_load_all_dwo_tus): Update call.
14403         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
14404         data.
14405         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
14406         (dwarf2_ranges_process): Likewise.
14407         (dwarf2_get_pc_bounds): Likewise.
14408         (mark_common_block_symbol_computed): Likewise.
14409         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14410         (dwarf2_read_abbrevs): Update call.
14411         (read_partial_die): Use dwarf2_per_objfile from cu.
14412         (find_partial_die): Likewise.
14413         (fixup_partial_die): Likewise.
14414         (read_attribute_value): Likewise.
14415         (read_indirect_string_at_offset_from): Add objfile parameter.
14416         (read_indirect_string_at_offset): Add dwarf2_per_objfile
14417         parameter.
14418         (read_indirect_string_from_dwz): Add objfile parameter.
14419         (read_indirect_string): Add objfile parameter.
14420         (read_addr_index_1): Add dwarf2_per_objfile parameter.
14421         (read_addr_index): Use dwarf2_per_objfile from cu.
14422         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
14423         call dw2_setup.
14424         (read_str_index): Use dwarf2_per_objfile from cu.
14425         (get_debug_line_section): Likewise.
14426         (read_formatted_entries): Add dwarf2_per_objfile parameter.
14427         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
14428         (new_symbol_full): Use dwarf2_per_objfile from cu.
14429         (build_error_marker_type): Likewise.
14430         (lookup_die_type): Likewise.
14431         (determine_prefix): Likewise.
14432         (follow_die_offset): Likewise.
14433         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
14434         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
14435         (dwarf2_fetch_die_type_sect_off): Likewise.
14436         (dwarf2_get_die_type): Likewise.
14437         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
14438         (get_signatured_type): Likewise.
14439         (get_DW_AT_signature_type): Likewise.
14440         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
14441         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
14442         (cu_debug_loc_section): Likewise.
14443         (fill_in_loclist_baton): Likewise.
14444         (dwarf2_symbol_mark_computed): Likewise.
14445         (dwarf2_find_containing_comp_unit): Change objfile parameter to
14446         dwarf2_per_objfile.
14447         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
14448         parameter.
14449         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
14450         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
14451         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
14452         (set_die_type): Use dwarf2_free_objfile from cu.
14453         (get_die_type_at_offset): Likewise.
14454         (dwarf2_per_objfile_free): Don't assign global variable.
14455         (debug_names) <constructor>: Add dwarf2_per_objfile
14456         parameter, update m_debugstrlookup construction.
14457         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
14458         parameter.
14459         <m_dwarf2_per_objfile>: New field.
14460         <lookup>: Use m_dwarf2_per_objfile.
14461         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
14462         (psyms_seen_size): Likewise.
14463         (write_gdbindex): Replace objfile parameter with
14464         dwarf2_per_objfile.
14465         (write_debug_names): Likewise.
14466         (write_psymtabs_to_index): Likewise.
14467         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
14468         calls.
14469
14470 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14471
14472         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
14473         <dwarf2_per_objfile>: New field.
14474         (struct dwarf2_per_cu_data) <objfile>: Remove.
14475         <dwarf2_per_objfile>: New field.
14476         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
14477         of objfile.
14478         (create_signatured_type_table_from_index): Likewise.
14479         (create_debug_type_hash_table): Likewise.
14480         (fill_in_sig_entry_from_dwo_entry): Likewise.
14481         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
14482         (create_type_unit_group): Assign dwarf2_per_objfile instead of
14483         objfile.
14484         (create_partial_symtab): Access objfile through
14485         dwarf2_per_objfile.
14486         (process_psymtab_comp_unit_reader): Likewise.
14487         (read_comp_units_from_section): Likewise.
14488         (scan_partial_symbols): Likewise.
14489         (add_partial_symbol): Likewise.
14490         (add_partial_subprogram): Likewise.
14491         (peek_die_abbrev): Likewise.
14492         (fixup_go_packaging): Likewise.
14493         (process_full_comp_unit): Likewise.
14494         (process_full_type_unit): Likewise.
14495         (process_imported_unit_die): Likewise.
14496         (dwarf2_compute_name): Likewise.
14497         (dwarf2_physname): Likewise.
14498         (read_import_statement): Likewise.
14499         (create_cus_hash_table): Assign dwarf2_physname instead of
14500         objfile.
14501         (read_func_scope): Access objfile through dwarf2_per_objfile.
14502         (read_lexical_block_scope): Likewise.
14503         (read_call_site_scope): Likewise.
14504         (read_variable): Likewise.
14505         (dwarf2_rnglists_process): Likewise.
14506         (dwarf2_ranges_process): Likewise.
14507         (dwarf2_ranges_read): Likewise.
14508         (dwarf2_record_block_ranges): Likewise.
14509         (dwarf2_add_field): Likewise.
14510         (dwarf2_add_member_fn): Likewise.
14511         (read_structure_type): Likewise.
14512         (process_structure_scope): Likewise.
14513         (read_enumeration_type): Likewise.
14514         (read_array_type): Likewise.
14515         (read_common_block): Likewise.
14516         (read_namespace_type): Likewise.
14517         (read_namespace): Likewise.
14518         (read_module_type): Likewise.
14519         (read_tag_pointer_type): Likewise.
14520         (read_tag_ptr_to_member_type): Likewise.
14521         (read_tag_string_type): Likewise.
14522         (read_subroutine_type): Likewise.
14523         (read_typedef): Likewise.
14524         (read_base_type): Likewise.
14525         (attr_to_dynamic_prop): Likewise.
14526         (read_subrange_type): Likewise.
14527         (read_unspecified_type): Likewise.
14528         (load_partial_dies): Likewise.
14529         (read_partial_die): Likewise.
14530         (find_partial_die): Likewise.
14531         (guess_partial_die_structure_name): Likewise.
14532         (fixup_partial_die): Likewise.
14533         (read_attribute_value): Likewise.
14534         (read_addr_index_from_leb128): Likewise.
14535         (dwarf2_read_addr_index): Likewise.
14536         (dwarf2_string_attr): Likewise.
14537         (lnp_state_machine::check_line_address): Likewise.
14538         (dwarf_decode_lines_1): Likewise.
14539         (dwarf_decode_lines): Likewise.
14540         (dwarf2_start_symtab): Likewise.
14541         (var_decode_location): Likewise.
14542         (new_symbol_full): Likewise.
14543         (dwarf2_const_value_data): Likewise.
14544         (dwarf2_const_value_attr): Likewise.
14545         (dwarf2_const_value): Likewise.
14546         (die_type): Likewise.
14547         (die_containing_type): Likewise.
14548         (lookup_die_type): Likewise.
14549         (guess_full_die_structure_name): Likewise.
14550         (anonymous_struct_prefix): Likewise.
14551         (dwarf2_name): Likewise.
14552         (follow_die_ref_or_sig): Likewise.
14553         (follow_die_offset): Likewise.
14554         (follow_die_ref): Likewise.
14555         (dwarf2_fetch_die_loc_sect_off): Likewise.
14556         (dwarf2_fetch_constant_bytes): Likewise.
14557         (dwarf2_fetch_die_type_sect_off): Likewise.
14558         (dwarf2_get_die_type): Likewise.
14559         (follow_die_sig): Likewise.
14560         (decode_locdesc): Likewise.
14561         (dwarf2_per_cu_objfile): Likewise.
14562         (dwarf2_per_cu_text_offset): Likewise.
14563         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
14564         objfile.
14565         (set_die_type): Access objfile through
14566         dwarf2_per_objfile.
14567
14568 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14569
14570         * valprint.c (converted_character_d): Remove typedef.
14571         (DEF_VEC_O (converted_character_d)): Remove.
14572         (count_next_character): Use std::vector.
14573         (print_converted_chars_to_obstack): Likewise.
14574         (generic_printstr): Likewise.
14575
14576 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14577
14578         * xml-support.h (struct gdb_xml_value): Add constructor.
14579         <value>: Change type to unique_xmalloc_ptr.
14580         (gdb_xml_value_s): Remove typedef.
14581         (DEF_VEC_O (gdb_xml_value_s)): Remove.
14582         (gdb_xml_element_start_handler): Change parameter type to
14583         std::vector.
14584         (xml_find_attribute): Likewise.
14585         * xml-support.c (xml_find_attribute): Change parameter type to
14586         std::vector and adjust.
14587         (gdb_xml_values_cleanup): Remove.
14588         (gdb_xml_parser::start_element): Adjust to std::vector.
14589         (xinclude_start_include): Change paraeter type to std::vector
14590         and adjust.
14591         * btrace.c (check_xml_btrace_version): Likewise.
14592         (parse_xml_btrace_block): Likewise.
14593         (parse_xml_btrace_pt_config_cpu): Likewise.
14594         (parse_xml_btrace_pt): Likewise.
14595         (parse_xml_btrace_conf_bts): Likewise.
14596         (parse_xml_btrace_conf_pt): Likewise.
14597         * memory-map.c (memory_map_start_memory): Likewise.
14598         (memory_map_start_property): Likewise.
14599         * osdata.c (osdata_start_osdata): Likewise.
14600         (osdata_start_item): Likewise.
14601         (osdata_start_column): Likewise.
14602         * remote.c (start_thread): Likewise.
14603         * solib-aix.c (library_list_start_library): Likewise.
14604         (library_list_start_list): Likewise.
14605         * solib-svr4.c (library_list_start_library): Likewise.
14606         (svr4_library_list_start_list): Likewise.
14607         * solib-target.c (library_list_start_segment): Likewise.
14608         (library_list_start_section): Likewise.
14609         (library_list_start_library): Likewise.
14610         (library_list_start_list): Likewise.
14611         * tracepoint.c (traceframe_info_start_memory): Likewise.
14612         (traceframe_info_start_tvar): Likewise.
14613         * xml-syscall.c (syscall_start_syscall): Likewise.
14614         * xml-tdesc.c (tdesc_start_target): Likewise.
14615         (tdesc_start_feature): Likewise.
14616         (tdesc_start_reg): Likewise.
14617         (tdesc_start_union): Likewise.
14618         (tdesc_start_struct): Likewise.
14619         (tdesc_start_flags): Likewise.
14620         (tdesc_start_enum): Likewise.
14621         (tdesc_start_field): Likewise.
14622         (tdesc_start_enum_value): Likewise.
14623         (tdesc_start_vector): Likewise.
14624
14625 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14626
14627         * extension.h (struct xmethod_worker) <clone>: Remove.
14628         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
14629         Remove.
14630         (python_xmethod_worker::clone): Remove.
14631         * valops.c (find_overload_match): Use std::move instead of
14632         clone.
14633
14634 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14635
14636         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
14637         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
14638         <free_xmethod_worker_data>: Remove.
14639         <get_matching_xmethod_workers>: Chance VEC to std::vector.
14640         <get_xmethod_arg_types>: Remove.
14641         <get_xmethod_result_type>: Remove.
14642         <invoke_xmethod>: Remove.
14643         * extension.c (new_xmethod_worker): Remove.
14644         (clone_xmethod_worker): Remove.
14645         (get_matching_xmethod_workers): Return void, pass std::vector by
14646         pointer.
14647         (get_xmethod_arg_types): Rename to...
14648         (xmethod_worker::get_arg_types): ... this, and adjust.
14649         (get_xmethod_result_type): Rename to...
14650         (xmethod_worker::get_result_type): ... this, and adjust.
14651         (invoke_xmethod): Remove.
14652         (free_xmethod_worker): Remove.
14653         (free_xmethod_worker_vec): Remove.
14654         * extension.h (enum ext_lang_rc): Move here from
14655         extension-priv.h.
14656         (struct xmethod_worker): Add constructor and destructor.
14657         <data>: Remove.
14658         <value>: Remove.
14659         <invoke, clone, do_get_result_type, do_get_arg_types>: New
14660         virtual pure methods.
14661         <get_arg_types, get_result_type>: New methods.
14662         (xmethod_worker_ptr): Remove typedef.
14663         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
14664         (xmethod_worker_vec): Remove typedef.
14665         (xmethod_worker_up): New typedef.
14666         (invoke_xmethod): Remove.
14667         (clone_xmethod_worker): Remove.
14668         (free_xmethod_worker): Remove.
14669         (free_xmethod_worker_vec): Remove.
14670         (get_xmethod_arg_types): Remove.
14671         (get_xmethod_result_type): Remove.
14672         * valops.c (find_method_list): Use std::vector, don't use
14673         intermediate vector.
14674         (value_find_oload_method_list): Use std::vector.
14675         (find_overload_match): Use std::vector.
14676         (find_oload_champ): Use std::vector.
14677         * value.c (value_free): Use operator delete.
14678         (value_of_xmethod): Rename to...
14679         (value_from_xmethod): ... this.  Don't assign
14680         xmethod_worker::value, take rvalue-reference.
14681         (result_type_of_xmethod): Adjust.
14682         (call_xmethod): Adjust.
14683         * value.h: Include extension.h.
14684         (struct xmethod_worker): Don't forward-declare.
14685         (value_of_xmethod): Rename to...
14686         (value_from_xmethod): ... this, take rvalue-reference.
14687         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
14688         (struct python_xmethod_worker): ... this, add constructor and
14689         destructor.
14690         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
14691         (gdbpy_free_xmethod_worker_data): Rename to...
14692         (python_xmethod_worker::~python_xmethod_worker): ... this and
14693         adjust.
14694         (gdbpy_clone_xmethod_worker_data): Rename to...
14695         (python_xmethod_worker::clone): ... this and adjust.
14696         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
14697         temporary vector.
14698         (gdbpy_get_xmethod_arg_types): Rename to...
14699         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
14700         (gdbpy_get_xmethod_result_type): Rename to...
14701         (python_xmethod_worker::do_get_result_type): ... this and
14702         adjust.
14703         (gdbpy_invoke_xmethod): Rename to...
14704         (python_xmethod_worker::invoke): ... this and adjust.
14705         (new_python_xmethod_worker): Rename to...
14706         (python_xmethod_worker::python_xmethod_worker): ... this and
14707         adjust.
14708         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
14709         Remove.
14710         (gdbpy_free_xmethod_worker_data): Remove.
14711         (gdbpy_get_matching_xmethod_workers): Use std::vector.
14712         (gdbpy_get_xmethod_arg_types): Remove.
14713         (gdbpy_get_xmethod_result_type): Remove.
14714         (gdbpy_invoke_xmethod): Remove.
14715         * python/python.c (python_extension_ops): Remove obsolete
14716         callbacks.
14717
14718 2018-01-05  Pedro Alves  <palves@redhat.com>
14719
14720         PR gdb/18653
14721         * common/signals-state-save-restore.c
14722         (save_original_signals_state): New parameter 'quiet'.  Warn if we
14723         find a custom handler preinstalled, instead of internal erroring.
14724         But only warn if !quiet.
14725         * common/signals-state-save-restore.h
14726         (save_original_signals_state): New parameter 'quiet'.
14727         * main.c (captured_main_1): Move save_original_signals_state call
14728         after option handling, and pass QUIET.
14729
14730 2018-01-05  Pedro Alves  <palves@redhat.com>
14731
14732         * spu-tdep.c (spu_catch_start): Pass
14733         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
14734
14735 2018-01-05  Pedro Alves  <palves@redhat.com>
14736
14737         PR gdb/22670
14738         * ada-lang.c (literal_symbol_name_matcher): New function.
14739         (ada_get_symbol_name_matcher): Use it for
14740         symbol_name_match_type::SEARCH_NAME.
14741         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
14742         it down instead of assuming symbol_name_match_type::FULL.
14743         * block.h (block_lookup_symbol): New parameter 'match_type'.
14744         * c-valprint.c (print_unpacked_pointer): Use
14745         lookup_symbol_search_name instead of lookup_symbol.
14746         * compile/compile-object-load.c (get_out_value_type): Pass down
14747         symbol_name_match_type::SEARCH_NAME.
14748         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
14749         symbol_name_match_type::FULL.
14750         * cp-support.c (cp_get_symbol_name_matcher): Handle
14751         symbol_name_match_type::SEARCH_NAME.
14752         * infrun.c (insert_exception_resume_breakpoint): Use
14753         lookup_symbol_search_name.
14754         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
14755         * psymtab.c (maintenance_check_psymtabs): Use
14756         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
14757         * stack.c (print_frame_args): Use lookup_symbol_search_name and
14758         SYMBOL_SEARCH_NAME.
14759         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
14760         if symbol_name_match_type::SEARCH_NAME.
14761         (lookup_symbol_in_language): Pass down
14762         symbol_name_match_type::FULL.
14763         (lookup_symbol_search_name): New.
14764         (lookup_language_this): Pass down
14765         symbol_name_match_type::SEARCH_NAME.
14766         (lookup_symbol_aux, lookup_local_symbol): New parameter
14767         'match_type'.  Pass it down.
14768         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
14769         (lookup_symbol_search_name): New declaration.
14770         (lookup_symbol_in_block): New 'match_type' parameter.
14771
14772 2018-01-05  Pedro Alves  <palves@redhat.com>
14773
14774         PR gdb/22670
14775         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
14776         ada_lookup_symbol.
14777         (ada_lookup_symbol): Reimplement in terms of
14778         ada_lookup_symbol_list, bits factored out from
14779         ada_lookup_encoded_symbol.
14780
14781 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14782
14783         * ada-exp.y (write_object_renaming): When subscripting an array
14784         using a symbol as the index, pass the block in call to
14785         ada_lookup_encoded_symbol when looking that symbol up.
14786
14787 2018-01-05  Jerome Guitton  <guitton@adacore.com>
14788
14789         * ada-lang.c (ada_array_length): Use ada_index_type instead of
14790         TYPE_INDEX_TYPE.
14791
14792 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14793
14794         * ada-lang.c (ada_to_fixed_value_create): Add handling of
14795         the case where VALUE_LVAL (val0) is not lval_memory.
14796
14797 2018-01-05  Xavier Roirand  <roirand@adacore.com>
14798
14799         * ada-valprint.c (print_optional_low_bound): Handle
14800         character-indexed array printing like boolean-indexed array
14801         printing.
14802
14803 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14804
14805         * NEWS: Create a new section for the next release branch.
14806         Rename the section of the current branch, now that it has
14807         been cut.
14808
14809 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14810
14811         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
14812         * version.in: Bump version to 8.1.50.DATE-git.
14813
14814 2018-01-03  Xavier Roirand  <roirand@adacore.com>
14815
14816         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
14817         Add field.
14818         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
14819         Add field.
14820         (default_exception_support_info) <catch_handlers_sym>: Add field.
14821         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
14822         (ada_exception_name_addr_1): Add "catch handlers" handling.
14823         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
14824         Update all callers.
14825         (create_excep_cond_exprs) <ex>: Add parameter.
14826         (re_set_exception): Update create_excep_cond_exprs call.
14827         (print_it_exception, print_one_exception, print_mention_exception)
14828         (print_recreate_exception): Add "catch handler" handling.
14829         (allocate_location_catch_handlers, re_set_catch_handlers)
14830         (check_status_catch_handlers, print_it_catch_handlers)
14831         (print_one_catch_handlers, print_mention_catch_handlers)
14832         (print_recreate_catch_handlers): New function.
14833         (catch_handlers_breakpoint_ops): New variable.
14834         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
14835         Add parameter.  Add "catch handler" handling.
14836         (ada_exception_sym_name, ada_exception_breakpoint_ops):
14837         Add "catch handler" handling.
14838         (ada_exception_catchpoint_cond_string): Add "catch handler"
14839         handling.
14840         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
14841         call.
14842         (catch_ada_handlers_command): New function.
14843         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
14844         operations structure.
14845         (_initialize_ada_language): Add "catch handlers" command entry.
14846         * NEWS: Document "catch handlers" feature.
14847
14848 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14849
14850         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
14851         account when creating the array type of the slice.
14852         (ada_value_slice): Likewise.
14853
14854 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14855
14856         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
14857         New enum value.
14858         (create_array_type_with_stride): Add byte_stride_prop parameter.
14859         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
14860         New parameter.  Update all callers in this file.
14861         (array_type_has_dynamic_stride): New function.
14862         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
14863         of arrays with dynamic byte strides.
14864         * dwarf2read.c (read_array_type): Add support for dynamic
14865         DW_AT_byte_stride attributes.
14866
14867 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14868
14869         * dwarf2read.c (read_unspecified_type): Treat
14870         DW_TAG_enumeration_type DIEs from Ada units as stubs.
14871
14872 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14873
14874         Update copyright year range in all GDB files.
14875
14876 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
14877
14878         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
14879         and gdb/testsuite/gdb.base/step-line.c.
14880
14881 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14882
14883         * copyright.py (main): Dump the contents of
14884         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
14885         even if BY_HAND is empty.
14886
14887 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14888
14889         * top.c (print_gdb_version): Update Copyright year in version
14890         message.
14891
14892 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14893
14894         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
14895
14896 For older changes see ChangeLog-2017.
14897 \f
14898 Local Variables:
14899 mode: change-log
14900 left-margin: 8
14901 fill-column: 74
14902 version-control: never
14903 coding: utf-8
14904 End: