gdb/python: Make convert_values_to_python return gdbpy_ref<>
[external/binutils.git] / gdb / ChangeLog
1 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
2
3         * python/py-function.c (convert_values_to_python): Return
4         gdbpy_ref<>.  Add header comment.
5         (fnpy_call): Adjust.
6
7 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
8
9         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
10         (cmdpy_completer_handle_brkchars): Adjust.
11         (cmdpy_completer): Adjust.
12
13 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
14
15         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
16         Pass correct regnum to raw_supply_zeroed.
17
18 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
19
20         * regcache.c (cooked_read_test): Add CSKY to the list of
21         architectures with a save_reggroup
22
23 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
24
25         PR gdb/23368
26         * infrun.c (follow_exec): In the follow_exec_mode_new case,
27         transfer terminal state from old new new inferior.
28         * terminal.h (swap_terminal_info): New function.
29         * inflow.c (swap_terminal_info): New function.
30
31 2018-10-23  Tom Tromey  <tom@tromey.com>
32
33         * record-btrace.c (get_thread_current_frame_id): Rename from
34         get_thread_current_frame.  Return a frame_id.
35         (record_btrace_start_replaying): Update.
36
37 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
38
39         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
40         for CSRs.
41
42 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
43
44         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
45         have_nonsteppable_watchpoint attribute to 1.
46
47 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
48
49         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
50         register names.
51         (struct register_alias): Rename to...
52         (struct riscv_register_alias): ...this, and update comment.
53         (riscv_register_aliases): Update type, and alias names.  Remove
54         CSR names from this list.
55         (riscv_register_name): Use riscv_gdb_reg_names for int and float
56         register names.  Add an extra assertion.
57         (riscv_is_regnum_a_named_csr): New function.
58         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
59
60 2018-10-22  Jim Wilson  <jimw@sifive.com>
61
62         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
63         FP reg smaller than FP reg size, and fill with -1 instead of 0.
64
65         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
66         (riscv_register_type): Use them.
67         (riscv_print_one_register_info): Handle union of floats same as float.
68         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
69         riscv_fpreg_q_type fields.
70
71 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
72
73         * gdbarch.sh (gdbarch_num_cooked_regs): New.
74         * gdbarch.h: Re-generate.
75         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
76         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
77         * eval.c (evaluate_subexp_standard): Likewise.
78         * findvar.c (value_of_register): Likewise.
79         (value_of_register_lazy): Likewise.
80         (address_from_register): Likewise.
81         * frame.c (get_frame_register_bytes): Likewise.
82         * gdbarch-selftests.c (register_to_value_test): Likewise.
83         * h8300-tdep.c (h8300_register_type): Likewise.
84         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
85         (i386_svr4_reg_to_regnum): Likewise.
86         * infcmd.c (default_print_registers_info): Likewise.
87         (registers_info): Likewise.
88         (print_vector_info): Likewise.
89         (default_print_float_info): Likewise.
90         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
91         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
92         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
93         (mi_cmd_data_list_changed_registers): Likewise.
94         (mi_cmd_data_list_register_values): Likewise.
95         (mi_cmd_data_write_register_values): Likewise.
96         (mi_cmd_trace_frame_collected): Likewise.
97         * mips-tdep.c (print_gp_register_row): Likewise.
98         (mips_print_registers_info): Likewise.
99         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
100         * regcache.c (init_regcache_descr): Likewise.
101         (register_size): Likewise.
102         (register_dump::dump): Likewise.
103         (cooked_read_test): Likewise.
104         (cooked_write_test): Likewise.
105         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
106         (rs6000_gdbarch_init): Likewise.
107         * stabsread.c (stab_reg_to_regnum): Likewise.
108         * stack.c (info_frame_command): Likewise.
109         * target-descriptions.c (tdesc_register_name): Likewise.
110         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
111         * tui/tui-regs.c (tui_show_register_group): Likewise.
112         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
113         (user_reg_map_regnum_to_name): Likewise.
114         (value_of_user_reg): Likewise.
115         (maintenance_print_user_registers): Likewise.
116         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
117         (xtensa_register_name): Likewise.
118         (xtensa_register_type): Likewise.
119         (xtensa_reg_to_regnum): Likewise.
120         (xtensa_pseudo_register_read): Likewise.
121         (xtensa_pseudo_register_write): Likewise.
122
123 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
124
125         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
126         correctly-sized buffer with raw_read.
127         (amd64_pseudo_register_write): Use correctly-sized buffer for
128         raw_read/raw_write.
129
130 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
131
132         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
133         in add_prefix_cmd of set print type.
134
135 2018-10-19  Tom Tromey  <tom@tromey.com>
136
137         PR tui/18388:
138         * NEWS: Mention tabset deprecation.
139         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
140         (update_tab_width): New function.
141         (tui_set_tab_width, tui_show_tab_width): New functions.
142         (tui_set_tab_width_command): Use update_tab_width.
143         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
144         Add new "set tui tab-width" command.
145         * tui/tui-source.c (tui_set_source_content): Update.
146         * tui/tui-disasm.c (tui_set_disassem_content): Update.
147         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
148         Don't declare.
149         (tui_tab_width): Declare.
150         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
151         (tui_set_default_tab_len): Remove.
152
153 2018-10-19  Tom Tromey  <tom@tromey.com>
154
155         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
156         (key_is_backspace, tui_getc): Don't declare.
157         * tui/tui-io.c (key_is_start_sequence): Now static.
158         (key_is_end_sequence, key_is_backspace): Remove.
159         (tui_getc): Now static.
160
161 2018-10-19  Tom Tromey  <tom@tromey.com>
162
163         * symfile.c (reread_symbols): Clear "static_links".
164
165 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
166
167         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
168         define.
169         (aarch64_linux_sigframe_init): Extra boundary checks.
170
171 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
172
173         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
174         the possibly non-existent tdesc type 'vec128', but the type of raw
175         register v16 instead.
176
177 2018-10-19  Gary Benson <gbenson@redhat.com>
178
179         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
180
181 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
182
183         PR cli/23785
184         * cli/cli-dump.c (restore_binary_file): Check if "file" is
185         NULL.
186
187 2018-10-17  Paul Koning  <paul_koning@dell.com>
188
189         * charset.c (convert_between_encodings): Fix unsigned overflow.
190
191 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
192
193         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
194         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
195         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
196         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
197         New functions.
198         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
199         and fbsd_info_proc_mappings_header.
200         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
201         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
202         New.
203
204 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
205
206         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
207         Solaris Maintainer.
208
209 2018-10-15  Tom Tromey  <tom@tromey.com>
210
211         * tui/tui.c (strcat_to_buf): Remove casts.
212         * tui/tui-winsource.c (tui_show_source_line)
213         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
214         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
215         * tui/tui-windata.c (tui_first_data_item_displayed)
216         (tui_delete_data_content_windows, tui_erase_data_content)
217         (tui_display_all_data, tui_display_data_from)
218         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
219         * tui/tui-win.c (tui_set_win_height)
220         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
221         casts.
222         * tui/tui-win.c (tui_resize_all): Remove casts.
223         (tui_scroll_backward_command, tui_set_focus)
224         (tui_set_tab_width_command): Likewise.
225         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
226         * tui/tui-regs.c (tui_show_register_group): Remove cast.
227         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
228         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
229         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
230         Remove casts.
231
232 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
233
234         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
235         AArch64/ARM maintainer.
236
237 2018-10-11  Gary Benson <gbenson@redhat.com>
238
239         * interps.h (interp::m_name): Make private and mutable.
240         * interps.c (interp::~interp): Free m_name.
241
242 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
243             Simon Marchi <simark@simark.ca>
244
245         * README (`configure' options): Add documentation for new
246         "--enable-unit-tests" option.
247         * acinclude.m4: Include "selftest.m4".
248         * configure: Regenerate.
249         * configure.ac: Use "GDB_AC_SELFTEST".
250         * maint.c (maintenance_selftest): Update message informing
251         that selftests have been disabled.
252         (maintenance_info_selftests): Likewise.
253         * selftest.m4: New file.
254
255 2018-10-10  Gary Benson <gbenson@redhat.com>
256
257         * remote.c (remote_target::remote_send_printf): Add
258         missing va_end found by Coverity.
259
260 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
261
262         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
263
264 2018-10-09  Tom Tromey  <tom@tromey.com>
265
266         * configure: Rebuild.
267         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
268         * NEWS: Update --enable-ubsan documentation.
269
270 2018-10-09  Gary Benson <gbenson@redhat.com>
271
272         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
273         found by Coverity.
274
275 2018-10-08  Tom Tromey  <tom@tromey.com>
276
277         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
278         variable.
279         (riscv_fbsd_init_abi): Likewise.
280
281 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
282         * valops.c (value_struct_elt_for_reference): Rename local variable
283         to work around the shadowing a previous local warning.
284
285 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
286
287         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
288         * NEWS: Mention new FreeBSD/riscv native configuration.
289         * configure.host: Add riscv*-*-freebsd*.
290         * configure.nat: Likewise.
291         * riscv-fbsd-nat.c: New file.
292
293 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
294
295         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
296         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
297         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
298         * NEWS: Mention new FreeBSD/riscv target.
299         * configure.tgt: Add riscv*-*-freebsd*.
300         * riscv-fbsd-tdep.c: New file.
301         * riscv-fbsd-tdep.h: New file.
302
303 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
304
305         * regcache.h (struct regcache_map_entry): Note that this type can
306         be used with traditional frame caches.
307         * trad-frame.c (trad_frame_set_reg_regmap): New.
308         * trad-frame.h (trad_frame_set_reg_regmap): New.
309
310 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
311
312         PR c++/16841
313         * valops.c (get_virtual_base_offset): New function.
314         (value_struct_elt_for_reference): Use it to get virtual base offset
315         and add it in calculating class member address.
316
317 2018-10-08   John Darrington <john@darrington.wattle.id.au>
318
319     * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
320       (check_producer): Check if the producer is codewarrior.
321       (producer_is_codewarrior): New function.
322       (lnp_state_machine::record_line): Ignore is_stmt flag for records
323        produced by codewarrior.
324       (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
325
326 2018-10-06  Tom Tromey  <tom@tromey.com>
327
328         PR python/19399:
329         * python/py-inferior.c: Add "architecture" entry.
330         (infpy_architecture): New function.
331
332 2018-10-06  Tom Tromey  <tom@tromey.com>
333
334         PR python/21765:
335         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
336         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
337         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
338         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
339
340 2018-10-06  Tom Tromey  <tom@tromey.com>
341
342         PR build/17077:
343         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
344         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
345         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
346         #include.
347
348 2018-10-06  Tom Tromey  <tom@tromey.com>
349
350         * python/py-breakpoint.c (bppy_get_location): Handle a
351         bp_breakpoint without a location.
352
353 2018-10-06  Tom Tromey  <tom@tromey.com>
354
355         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
356         (_RegEx): Reformat help text.
357         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
358         (AnyCallerIs, AnyCallerMatches): Reformat help text.
359         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
360         text.
361         * python/lib/gdb/command/xmethods.py (InfoXMethod)
362         (EnableXMethod, DisableXMethod): Remove help indentation.
363         Capitalize meta-syntactic variables.
364         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
365         (EnableUnwinder, DisableUnwinder): Remove help indentation.
366         Capitalize meta-syntactic variables.
367         * python/lib/gdb/command/explore.py (ExploreCommand)
368         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
369         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
370         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
371         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
372         Remove help indentation.
373         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
374         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
375         (DisableFrameFilter, SetFrameFilterPriority)
376         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
377
378 2018-10-06  Tom Tromey  <tom@tromey.com>
379
380         PR tui/28819:
381         * tui/tui-io.c (gdb_wgetch): New function.
382         (tui_mld_getc, tui_getc): Use it.
383
384 2018-10-05  Tom Tromey  <tom@tromey.com>
385
386         * sol-thread.c (sol_thread_target::wait): Rename inner
387         "save_ptid".
388
389 2018-10-04  Tom Tromey  <tom@tromey.com>
390
391         * configure: Rebuild.
392         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
393
394 2018-10-04  Tom Tromey  <tom@tromey.com>
395
396         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
397         declaration of "block".
398
399 2018-10-04  Tom Tromey  <tom@tromey.com>
400
401         * common/filestuff.c (fdwalk): Remove inner declaration of
402         "result".
403
404 2018-10-04  Tom Tromey  <tom@tromey.com>
405
406         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
407         "structs_addr" and hoist declaration.
408
409 2018-10-04  Tom Tromey  <tom@tromey.com>
410
411         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
412         variable "size".
413
414 2018-10-04  Tom Tromey  <tom@tromey.com>
415
416         * mdebugread.c (parse_partial_symbols): Use std::string.
417
418 2018-10-04  Tom Tromey  <tom@tromey.com>
419
420         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
421         * p-valprint.c (pascal_val_print): Split inner "i" variable.
422         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
423         header.
424         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
425         more inner scope.
426         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
427         * varobj.c (varobj_update): Rename inner "newobj",
428         "type_changed".
429         * valprint.c (generic_emit_char): Rename inner "buf".
430         * valops.c (find_overload_match): Rename inner "temp".
431         (value_struct_elt_for_reference): Declare "v" in more inner
432         scope.
433         * v850-tdep.c (v850_push_dummy_call): Rename "len".
434         * unittests/array-view-selftests.c (run_tests): Rename inner
435         "vec".
436         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
437         header.
438         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
439         "tsv" in more inner scope.
440         (print_one_static_tracepoint_marker): Rename inner
441         "tuple_emitter".
442         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
443         (tic6x_push_dummy_call): Don't redeclare "addr".
444         * target-float.c: Declare "dto" lower.
445         * symtab.c (lookup_local_symbol): Rename inner "sym".
446         (find_pc_sect_line): Rename inner "pc".
447         * stack.c (print_frame): Don't redeclare "gdbarch".
448         (return_command): Rename inner "gdbarch".
449         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
450         "sp".
451         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
452         header.
453         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
454         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
455         scope.
456         * remote.c (remote_target::update_thread_list): Don't redeclare
457         "tp".
458         (remote_target::process_initial_stop_replies): Rename inner
459         "thread".
460         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
461         (remote_target::wait_as): Don't redeclare "stop_reply".
462         (remote_target::get_thread_local_address): Rename inner
463         "result".
464         (remote_target::get_tib_address): Likewise.
465
466         * regcache.c (cooked_read_test): Rename "regnum".
467         * record-btrace.c (cmd_record_btrace_start): Rename inner
468         "exception".
469         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
470         loop header.
471         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
472         header.
473         (ppu2spu_sniffer): Rename inner "buf".
474         * parse.c (operator_check_standard): Rename inner "type",
475         "objfile".
476         * p-valprint.c (pascal_val_print): Introduce new scope for
477         "low_bound", "high_bound".
478         * p-exp.y (yylex): Declare "i" in loop header.
479         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
480         Lower declaration of "s".
481         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
482         header.
483         (nios2_push_dummy_call): Rename "len".
484         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
485         "buf".
486         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
487         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
488         (linux_xfer_osdata_modules): Likewise.
489         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
490         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
491         (mips_o64_push_dummy_call): Likewise.
492         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
493         "op".
494         * mi/mi-main.c (list_available_thread_groups): Rename inner
495         "tuple_emitter".
496         (mi_cmd_data_read_memory): Rename inner "opts".
497         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
498         "tuple_emitter".
499         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
500         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
501         more inner scope.
502         (parse_partial_symbols): Rename inner "pst", "p", "name"
503         * main.c (captured_main_1): Rename inner "i"s.
504         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
505         "oso2".
506         * linux-tdep.c (linux_info_proc): Rename inner "filename".
507         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
508         * infrun.c (handle_no_resumed): Don't redeclare "thread".
509         (handle_signal_stop): Rename inner "gdbarch".
510         (handle_command): Declare "signum" in loop header.
511         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
512         "status".
513         (examine_prologue): Rename inner "sol" and "sof".
514         (ia64_extract_return_value): Rename inner "val".  Declare another
515         "val" in a more inner scope.
516         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
517         inner scope.
518         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
519         "except".
520         * findvar.c (default_read_var_value): Don't redeclare "addr".
521         * f-exp.y (yylex): Declare "i" in loop header.
522         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
523         Rename inner "type", "expect_type".
524         (evaluate_subexp_for_sizeof): Rename inner "pc".
525         * elfread.c (elf_symfile_read): Rename inner "abfd".
526         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
527         "bytes_read".
528         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
529         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
530         (dwarf_decode_line_header): Rename inner "lh".
531         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
532         "offset".  Declare "i" in loop header.
533         (disassemble_dwarf_expression): Rename inner "addr_size".
534         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
535         inner "result".
536         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
537         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
538         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
539         "inner_list_emitter".
540         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
541         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
542         declaration in a block.
543         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
544         * cp-valprint.c (cp_print_value_fields): Don't redeclare
545         "obstack_final_size".
546         * cp-support.c (inspect_type): Declare "i" in loop header.
547         * compile/compile.c (compile_instance::insert_symbol_error):
548         Rename inner "e".
549         * common/agent.c (agent_run_command): Remove inner "ret"
550         declaration.
551         * coffread.c (coff_symfile_read): Rename inner "name".
552         (coff_symfile_read): Rename inner "abfd".
553         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
554         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
555         "high".
556         * c-exp.y (lex_one_token): Move "len" declaration lower.
557         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
558         "gdbarch".
559         (create_exception_master_breakpoint): Likewise.  Don't redeclare
560         "b".
561         (watch_command_1): Declare "mark" later.
562         (clear_command): Don't shadow "a" or "b".
563         (delete_command): Rename inner "b".
564         (delete_trace_command): Likewise.
565         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
566         "op".
567         (arm_gdbarch_init): Remove inner "e_flags".
568         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
569         "offset" in inner blocks.
570
571 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
572
573         * dwarf-index-write.c (file_write): Don't write if the vector is
574         empty.
575
576 2018-10-05  Tom de Vries  <tdevries@suse.de>
577
578         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
579         PyArg_ParseTuple call.
580
581 2018-10-05  Tom de Vries  <tdevries@suse.de>
582
583         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
584         PyArg_ParseTuple call.
585
586 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
587
588         * psymtab.c (recursively_search_psymtabs): Reformat parameters
589         to avoid exceeding 80 characters per line limit.
590
591 2018-10-04  Tom Tromey  <tom@tromey.com>
592
593         * symfile.c (syms_from_objfile_1, finish_new_objfile)
594         (reread_symbols): Update.
595         * complaints.h (clear_complaints): Remove argument.
596         * complaints.c (enum complaint_series): Remove.
597         (series): Remove global.
598         (complaint_internal): Update.
599         (clear_complaints): Remove argument.
600
601 2018-10-04  Tom Tromey  <tom@tromey.com>
602
603         * symfile.c (symbol_file_add_with_addrs): Do not print "no
604         debugging symbols" message if there is a separate debug objfile.
605
606 2018-10-04  Tom Tromey  <tom@tromey.com>
607
608         PR cli/19551:
609         * symfile.c (symbol_file_add_with_addrs): Update output.
610         * psymtab.c (require_partial_symbols): Update output.
611
612 2018-10-04  Tom Tromey  <tom@tromey.com>
613
614         PR cli/22234:
615         * complaints.c: Emit \n.
616
617 2018-10-04  Tom Tromey  <tom@tromey.com>
618
619         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
620         (separate_debug_file_exists, find_separate_debug_file)
621         (add_symbol_file_command, reread_symbols, allocate_symtab)
622         (allocate_compunit_symtab): Use filtered printing, not
623         unfiltered.
624         * psymtab.c (require_partial_symbols, dump_psymtab)
625         (allocate_psymtab): Use filtered printing, not unfiltered.
626
627 2018-10-04  Tom Tromey  <tom@tromey.com>
628
629         * complaints.c (complaint_internal): Correctly check complaint
630         count.
631
632 2018-10-04  Tom Tromey  <tom@tromey.com>
633
634         * complaints.h (struct complaints): Remove declaration.
635         * complaints.c (clear_complaints): Remove an unused variable.
636
637 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
638
639         * MAINTAINERS (Write After Approval): Add self.
640
641 2018-10-03  Tom Tromey  <tom@tromey.com>
642
643         * guile/scm-value.c (gdbscm_value_to_string): Initialize
644         "buffer_contents".
645         * coffread.c (coff_symtab_read): Initialize "newobj".
646
647 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
648
649         * dwarf2read.c (read_func_scope): Remove struct keyword in
650         range-based for.
651
652 2018-10-03  Tom Tromey  <tom@tromey.com>
653
654         * README: Mention --enable-ubsan.
655         * NEWS: Mention --enable-ubsan.
656         * acinclude.m4: Include sanitize.m4.
657         * configure: Rebuild.
658         * configure.ac: Call AM_GDB_UBSAN.
659         * sanitize.m4: New file.
660
661 2018-10-03  Tom Tromey  <tom@tromey.com>
662
663         * expression.h (enum exp_opcode): Use uint8_t as base type.
664         * expprint.c (op_name): Handle invalid opcodes.
665
666 2018-10-03  Tom Tromey  <tom@tromey.com>
667
668         * parse.c (prefixify_expression): Add assert.
669         (parse_exp_in_context_1): Throw exception if the expression is
670         empty.
671
672 2018-10-03  Tom Tromey  <tom@tromey.com>
673
674         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
675
676 2018-10-03  Tom Tromey  <tom@tromey.com>
677
678         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
679
680 2018-10-03  Tom Tromey  <tom@tromey.com>
681
682         * dwarf2read.c (read_subrange_type): Make "negative_mask"
683         unsigned.
684
685 2018-10-03  Tom Tromey  <tom@tromey.com>
686
687         * findvar.c (extract_integer): Do work in an unsigned type.
688
689 2018-10-03  Tom Tromey  <tom@tromey.com>
690
691         * common/enum-flags.h (enum_flags::operator~): Add static assert.
692         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
693         base type.
694         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
695         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
696         type.
697         * c-lang.h (enum c_string_type_values): Use unsigned as base
698         type.
699         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
700
701 2018-10-03  Tom Tromey  <tom@tromey.com>
702
703         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
704         <~dwarf2_frame_state_reg_info>: Update.
705         <dwarf2_frame_state_reg_info>: Update.
706         <alloc_regs>: Add assertion.  Update.
707         <reg>: Now a std::vector.
708         <num_regs>: Remove.
709         <swap>: Update.
710         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
711         (execute_cfa_program_test, dwarf2_frame_cache): Update.
712
713 2018-10-03  Tom Tromey  <tom@tromey.com>
714
715         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
716
717 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
718
719         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
720
721 2018-10-02  Tom Tromey  <tom@tromey.com>
722
723         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
724
725 2018-10-02  John Darrington <john@darrington.wattle.id.au>
726
727         * NEWS: Mention changed commands.
728         * ser-uds.c: New file.
729         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
730         * configure: Regenerate.
731         * Makefile.in: Add new file.
732         * serial.c (serial_open): Check if filename is a socket
733           and lookup the appropriate interface accordingly.
734
735 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
736
737         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
738         define.
739         (AARCH64_EXTRA_MAGIC): Likewise.
740         (AARCH64_FPSIMD_MAGIC): Likewise.
741         (AARCH64_SVE_MAGIC): Likewise.
742         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
743         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
744         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
745         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
746         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
747         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
748         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
749         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
750         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
751         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
752         (read_aarch64_ctx): Add function.
753         (aarch64_linux_sigframe_init): Detect FP registers.
754
755 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
756
757         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
758         (AARCH64_D0_REGNUM): Likewise.
759         (AARCH64_S0_REGNUM): Likewise.
760         (AARCH64_H0_REGNUM): Likewise.
761         (AARCH64_B0_REGNUM): Likewise.
762         (AARCH64_SVE_V0_REGNUM): Likewise.
763         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
764         (AARCH64_D0_REGNUM): Likewise.
765         (AARCH64_S0_REGNUM): Likewise.
766         (AARCH64_H0_REGNUM): Likewise.
767         (AARCH64_B0_REGNUM): Likewise.
768         (AARCH64_SVE_V0_REGNUM): Likewise.
769
770 2018-10-01  Gary Benson <gbenson@redhat.com>
771
772         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
773         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
774         prfpregset_t instead of gdb_prfpregset_t.
775         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
776         * configure, config.in: Rebuild.
777
778 2018-10-01  Gary Benson <gbenson@redhat.com>
779
780         * common/gdb_proc_service.h: New file, factored out from...
781         * gdb_proc_service.h: Moved common code to the above file.
782         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
783
784 2018-10-01  Gary Benson <gbenson@redhat.com>
785
786         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
787         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
788
789 2018-10-01  Gary Benson <gbenson@redhat.com>
790
791         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
792         (AC_CHECK_HEADERS): Check for linux/elf.h.
793         * configure, config.in: Rebuild.
794         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
795         doesn't define elf_fpregset_t.
796
797 2018-10-01  Gary Benson <gbenson@redhat.com>
798
799         * gdb_proc_service.h: Whitespace change.
800
801 2018-10-01  Tom Tromey  <tom@tromey.com>
802
803         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
804         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
805         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
806
807 2018-10-01  Tom Tromey  <tom@tromey.com>
808
809         * README: Minor change.
810
811 2018-09-30  Pedro Alves  <palves@redhat.com>
812
813         * darwin-nat-info.c (darwin_debug_regions_recurse)
814         (info_mach_exceptions_command): Remove unused local variables.
815         * darwin-nat.c (darwin_decode_notify_message)
816         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
817         (darwin_stop_inferior, darwin_setup_exceptions)
818         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
819         (darwin_nat_target::attach, darwin_nat_target::detach)
820         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
821         local variables.
822         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
823         variables.
824
825 2018-09-29  Tom Tromey  <tom@tromey.com>
826
827         * README: Remove some leftover text.
828
829 2018-09-29  Tom Tromey  <tom@tromey.com>
830
831         * PROBLEMS: Rewrite.
832         * README: Update.
833
834 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
835
836         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
837         case with explicit breakpoint kind.
838         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
839         'additional_info' and related logic.
840         (riscv_debug_breakpoints): New variable.
841         (riscv_breakpoint_kind_from_pc): Use the length of the existing
842         instruction to determine the breakpoint kind.
843         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
844         flag.  Update description of 'set/show riscv
845         use-compressed-breakpoints' flag.
846
847 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
848
849         (NEWS): Mention changes to frame related commands.
850         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
851         (add_prefix_cmd_suppress_notification): New function.
852         (add_com_suppress_notification): Call
853         add_cmd_suppress_notification.
854         * command.h (add_cmd_suppress_notification): Declare.
855         (add_prefix_cmd_suppress_notification): Declare.
856         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
857         (parse_frame_specification): Moved from stack.c, with
858         simplification to handle a single argument.
859         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
860         switch to the selected frame.  Add a header comment.
861         * stack.c: Remove 'safe-ctype.h' include.
862         (find_frame_for_function): Add declaration.
863         (find_frame_for_address): New function.
864         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
865         (frame_selection_by_function_completer): New function.
866         (info_frame_command): Rename to...
867         (info_frame_command_core): ...this, and update parameter types.
868         (select_frame_command): Rename to...
869         (select_frame_command_core): ...this, and update parameter types.
870         (frame_command): Rename to...
871         (frame_command_core): ...this, and update parameter types.
872         (class frame_command_helper): New class to wrap implementations of
873         frame related sub-commands.
874         (frame_apply_cmd_list): New static global.
875         (frame_cmd_list): Make static.
876         (select_frame_cmd_list): New global for sub-commands.
877         (info_frame_cmd_list): New global for sub-commands.
878         (_initialize_stack): Register sub-commands for 'frame',
879         'select-frame', and 'info frame'.  Update 'frame apply' commands
880         to use frame_apply_cmd_list.  Move function local static
881         frame_apply_list to file static frame_apply_cmd_list for
882         consistency.
883         * stack.h (select_frame_command): Delete declarationn.
884         (select_frame_for_mi): Declare new function.
885
886 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
887
888         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
889         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
890         and NOP.
891
892 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
893
894         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
895
896 2018-09-26  Tom Tromey  <tom@tromey.com>
897
898         * valops.c (auto_abandon): Remove dead code.
899
900 2018-09-26  Tom Tromey  <tom@tromey.com>
901
902         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
903
904 2018-09-24  Tom Tromey  <tom@tromey.com>
905
906         * common/pathstuff.c (get_standard_cache_dir): Make
907         "xdg_cache_home" and "home" const.
908         * top.c (init_history): Make "tmpenv" const.
909         * main.c (get_init_files): Make "homedir" const.
910
911 2018-09-23  Tom Tromey  <tom@tromey.com>
912
913         PR python/18852:
914         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
915
916 2018-09-23  Tom Tromey  <tom@tromey.com>
917
918         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
919         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
920         * python/python-internal.h (gdbpy_handle_exception): Declare.
921         * python/py-utils.c (gdbpy_handle_exception): New function.
922
923 2018-09-23  Tom Tromey  <tom@tromey.com>
924
925         PR python/17284:
926         * python/py-type.c (typy_template_argument): Check for negative
927         argument number.
928
929 2018-09-23  Tom Tromey  <tom@tromey.com>
930
931         PR python/14062:
932         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
933
934 2018-09-23  Tom Tromey  <tom@tromey.com>
935
936         PR python/18170:
937         * python/py-value.c (valpy_int): Allow conversion from pointer
938         type.
939
940 2018-09-23  Tom Tromey  <tom@tromey.com>
941
942         PR python/20126:
943         * python/py-value.c (valpy_int): Respect type sign.
944
945 2018-09-23  Tom Tromey  <tom@tromey.com>
946
947         PR python/18352;
948         * python/py-value.c (valpy_float): Allow conversions from int or
949         char.
950         (valpy_int, valpy_long): Allow conversions from float.
951
952 2018-09-23  Tom Tromey  <tom@tromey.com>
953
954         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
955         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
956
957 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
958
959         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
960         __sighndlr.
961         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
962
963 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
964
965         * windows-nat.c (windows_nat_target::wait): Remove a spurious
966         target_terminal::ours().
967
968 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
969
970         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
971         of vl to ULONGEST.
972
973 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
974
975         * breakpoint.c (update_inserted_breakpoint_locations): Remove
976         redundant condition.
977
978 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
979
980         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
981
982         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
983         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
984         * sol-thread.c (ps_pdmodel): Don't guard definition.
985
986         * procfs.c: Fix formatting.
987
988         * procfs.c (sysset_t_alloc): Remove.
989         (create_procinfo): Use XNEW instead of sysset_t_alloc.
990         (procfs_debug_inferior): Likewise.
991         (procfs_set_exec_trap): Likewise.
992         (proc_set_traced_sysentry): Don't allocate argp dynamically.
993         (proc_set_traced_sysexit): Likewise.
994
995         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
996         (dead_procinfo): Likewise.
997         (proc_warn): Likewise.
998         (proc_error): Likewise.
999         (proc_get_LDT_entry): Likewise.
1000         (do_attach): Likewise.
1001         (procfs_target::pid_to_str): Likewise.
1002         (iterate_over_mappings): Likewise.
1003
1004         * procfs.c (create_procinfo): Fix ARI warning.
1005         (proc_get_status): Likewise.
1006         (proc_stop_process): Likewise.
1007         (proc_run_process): Likewise.
1008         (proc_kill): Likewise.
1009         (proc_get_LDT_entry): Likewise.
1010         (procfs_find_LDT_entry): Likewise.
1011         (proc_update_threads): Likewise.
1012         (proc_iterate_over_threads): Likewise.
1013         (do_attach): Likewise.
1014         (procfs_xfer_memory): Likewise.
1015         (invalidate_cache): Likewise.
1016         (procfs_target::resume): Likewise.
1017         (procfs_init_inferior): Likewise.
1018         (procfs_set_exec_trap): Likewise.
1019         (procfs_target::thread_alive): Likewise.
1020         (procfs_target::pid_to_exec_file): Likewise.
1021         (iterate_over_mappings): Likewise.
1022         (procfs_target::make_corefile_notes): Likewise.
1023         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
1024
1025         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
1026         (procfs_find_LDT_entry): Likewise.
1027         * sol-thread.c (ps_lgetLDT): Likewise.
1028
1029 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1030
1031         PR tdep/17903
1032         * procfs.c (procfs_target): Declare pid_to_exec_file.
1033         (procfs_target::pid_to_exec_file): New.
1034
1035 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1036
1037         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
1038         renaming.
1039         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
1040         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
1041
1042 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1043
1044         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
1045         (supply_fpregset, fill_fpregset): Move ...
1046         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
1047         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
1048         Remove references to ioctl-based procfs.
1049         Include <sys/reg.h>.
1050         Remove PR_MODEL_NATIVE guards.
1051         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
1052         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
1053
1054 2018-09-19  Xavier Roirand  <roirand@adacore.com>
1055
1056         PR gdb/20981:
1057         * solib-darwin.c (darwin_get_dyld_bfd): New function.
1058         (darwin_solib_get_all_image_info_addr_at_init): Update call.
1059         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
1060
1061 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
1062
1063         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
1064         (fbsd_print_sockaddr_in6): Likewise.
1065
1066 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
1067             Chris January  <chris.january@arm.com>
1068
1069         * eval.c (skip_undetermined_arglist): Skip argument list helper.
1070         (evaluate_subexp_standard): Return a dummy type when
1071         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
1072         OP_F77_UNDETERMINED_ARGLIST case.
1073         * expression.h (enum noside): Update comment.
1074
1075 2018-09-19  George Vasick <george.vasick@oracle.com>
1076
1077         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
1078
1079 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
1080             April Chin <april.chin@oracle.com>
1081             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1082
1083         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
1084         uint_t lwpid_t.
1085         (create_procinfo): Print pids in /proc without leading zeros.
1086
1087 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
1088
1089         * nios2-tdep.c (nios2_gcc_target_options): New.
1090         (nios2_gdb_arch_init): Install new hook.
1091
1092 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
1093
1094         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
1095         New file.
1096         * update-gnulib.sh: Apply patch.
1097         * configure: Re-generate.
1098
1099 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1100
1101         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
1102         description.  Make "info proc" command descriptions more
1103         consistent.
1104
1105 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1106
1107         * NEWS: Mention 'info proc files' command.
1108
1109 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1110
1111         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
1112         descriptors for IP_FILES and IP_ALL.
1113
1114 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1115
1116         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
1117         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
1118         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
1119         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
1120         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
1121         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
1122         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
1123         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
1124         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
1125         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
1126         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
1127         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
1128         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
1129         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
1130         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
1131         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
1132         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
1133         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
1134         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
1135         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
1136         (struct fbsd_sockaddr_un): New types.
1137         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
1138         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
1139         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
1140         (fbsd_core_info_proc_files): New functions.
1141         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
1142         IP_ALL.
1143         * fbsd-tdep.h (fbsd_info_proc_files_header)
1144         (fbsd_info_proc_files_entry): New.
1145
1146 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1147
1148         * defs.h (enum info_proc_what) [IP_FILES]: New value.
1149         * infcmd.c (info_proc_cmd_files): New function.
1150         (_initialize_infcmd): Register 'info proc files' command.
1151
1152 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1153
1154         * gnulib/aclocal-m4-deps.mk: Re-generate.
1155         * gnulib/aclocal.m4: Re-generate.
1156         * gnulib/config.in: Re-generate.
1157         * gnulib/configure: Re-generate.
1158         * gnulib/import/Makefile.am: Re-generate.
1159         * gnulib/import/Makefile.in: Re-generate.
1160         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
1161         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
1162         * gnulib/import/arpa_inet.in.h: New file.
1163         * gnulib/import/inet_ntop.c: New file.
1164         * gnulib/import/m4/arpa_inet_h.m4: New file.
1165         * gnulib/import/m4/inet_ntop.m4: New file.
1166         * gnulib/import/m4/netinet_in_h.m4: New file.
1167         * gnulib/import/m4/socklen.m4: New file.
1168         * gnulib/import/m4/sockpfaf.m4: New file.
1169         * gnulib/import/m4/stdalign.m4: New file.
1170         * gnulib/import/m4/sys_uio_h.m4: New file.
1171         * gnulib/import/netinet_in.in.h: New file.
1172         * gnulib/import/stdalign.in.h: New file.
1173         * gnulib/import/sys_socket.c: New file.
1174         * gnulib/import/sys_socket.in.h: New file.
1175         * gnulib/import/sys_uio.in.h: New file.
1176         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
1177         module.
1178
1179 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1180
1181         * gnulib/aclocal-m4-deps.mk: New file.
1182         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
1183         deterministically.
1184
1185 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1186
1187         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
1188         KVE_PATH.
1189
1190 2018-09-18  Tom Tromey  <tom@tromey.com>
1191
1192         * compile/compile-object-load.c (struct
1193         link_hash_table_cleanup_data): Add constructor and destructor.
1194         Use DISABLE_COPY_AND_ASSIGN.
1195         (~link_hash_table_cleanup_data): Rename from
1196         link_hash_table_free.  Now a destructor.
1197         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
1198
1199 2018-09-18  Tom Tromey  <tom@tromey.com>
1200
1201         * compile/compile-object-run.c (do_module_cleanup): Use delete.
1202         * compile/compile-object-load.c (struct munmap_list): Move to
1203         header file.
1204         (munmap_list::add): Rename from munmap_list_add; rewrite.
1205         (munmap_list::~munmap_list): Rename from munmap_list_free.
1206         (munmap_listp_free_cleanup): Remove.
1207         (compile_object_load): Update.
1208         * compile/compile-object-load.h (struct munmap_list): Move from
1209         compile-object-load.c.  Rewrite.
1210
1211 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
1212
1213         * aarch64-tdep.c (pass_in_v): Use register size.
1214         (aarch64_extract_return_value): Likewise.
1215         (aarch64_store_return_value): Likewise.
1216
1217 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1218
1219         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
1220         rlim_t.
1221
1222 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1223
1224         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
1225         Fix short help line.
1226
1227 2018-09-17  Tom Tromey  <tom@tromey.com>
1228
1229         PR python/20445:
1230         * configure: Rebuild.
1231         * configure.ac: Conditionally use -DNDEBUG for Python.
1232
1233 2018-09-17  Tom Tromey  <tom@tromey.com>
1234
1235         * configure: Rebuild.
1236         * configure.ac: Use gmp as a library dependency when checking for
1237         mpfr.
1238
1239 2018-09-17  Pedro Alves  <palves@redhat.com>
1240
1241         * python/py-inferior.c (find_inferior_object): Delete.
1242
1243 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
1244
1245         * compile/compile-cplus-types.c
1246         (compile_cplus_instance::enter_scope): Don't use new_scope after
1247         std::move.
1248
1249 2018-09-17  Tom Tromey  <tom@tromey.com>
1250
1251         * common/pathstuff.c (get_standard_cache_dir): Use
1252         ~/Library/Caches on macOS.
1253         * common/pathstuff.h (get_standard_cache_dir): Update comment.
1254
1255 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
1256
1257         PR python/23669
1258         * breakpoint.c (commands_cmd_element): New.
1259         (_initialize_breakpoint): Assign commands_cmd_element.
1260         * breakpoint.h (commands_cmd_element): New.
1261         * cli/cli-script.c (while_cmd_element, if_command,
1262         define_cmd_element): New.
1263         (command_name_equals): Remove.
1264         (process_next_line): Compare commands by pointer, not by name.
1265         (_initialize_cli_script): Assign the various cmd_list_element
1266         variables.
1267         * compile/compile.c (compile_cmd_element): New.
1268         (_initialize_compile): Assign compile_cmd_element.
1269         * compile/compile.h (compile_cmd_element): New.
1270         * guile/guile.c (guile_cmd_element): New.
1271         (install_gdb_commands): Assign guile_cmd_element.
1272         * guile/guile.h (guile_cmd_element): New.
1273         * python/python.c (python_cmd_element): New.
1274         (_initialize_python): Assign python_cmd_element.
1275         * python/python.h (python_cmd_element): New.
1276         * tracepoint.c (while_stepping_cmd_element): New.
1277         (_initialize_tracepoint): Assign while_stepping_cmd_element.
1278         * tracepoint.h (while_stepping_cmd_element): New.
1279
1280 2018-09-17  Tom Tromey  <tom@tromey.com>
1281
1282         * infrun.c (save_infcall_suspend_state): Return
1283         infcall_suspend_state_up.
1284         (save_infcall_control_state): Return infcall_control_state_up.
1285         * inferior.h (save_infcall_suspend_state)
1286         (save_infcall_control_state): Declare later.  Return unique
1287         pointers.
1288
1289 2018-09-17  Tom Tromey  <tom@tromey.com>
1290
1291         * infrun.c (struct stop_context): Declare constructor,
1292         destructor, "changed" method.
1293         (stop_context::stop_context): Rename from save_stop_context.
1294         (stop_context::~stop_context): Rename from
1295         release_stop_context_cleanup.
1296         (normal_stop): Update.
1297         (stop_context::changed): Rename from stop_context_changed.  Return
1298         bool.
1299
1300 2018-09-17  Tom Tromey  <tom@tromey.com>
1301
1302         * inferior.h (struct infcall_suspend_state_deleter): New.
1303         (infcall_suspend_state_up): New typedef.
1304         (struct infcall_control_state_deleter): New.
1305         (infcall_control_state_up): New typedef.
1306         (make_cleanup_restore_infcall_suspend_state)
1307         (make_cleanup_restore_infcall_control_state): Don't declare.
1308         * infcall.c (call_function_by_hand_dummy): Update.
1309         * infrun.c (do_restore_infcall_suspend_state_cleanup)
1310         (make_cleanup_restore_infcall_suspend_state): Remove.
1311         (do_restore_infcall_control_state_cleanup)
1312         (make_cleanup_restore_infcall_control_state): Remove.
1313
1314 2018-09-17  Tom Tromey  <tom@tromey.com>
1315
1316         * gdbthread.h (struct thread_control_state): Add initializer.
1317         (class thread_info) <control>: Remove initializer.
1318         * inferior.h (struct inferior_control_state): Add initializer.
1319         (class inferior) <control>: Remove initializer.
1320         (exit_inferior_1): Update.
1321         * infrun.c (struct infcall_control_state): Add constructors.
1322         (save_infcall_control_state): Use new.
1323         (restore_infcall_control_state, discard_infcall_control_state):
1324         Use delete.
1325
1326 2018-09-17  Tom Tromey  <tom@tromey.com>
1327
1328         * infrun.c (struct infcall_suspend_state) <registers>: Now a
1329         unique_ptr.
1330         <siginfo_data>: Now a unique_xmalloc_ptr.
1331         (save_infcall_suspend_state, restore_infcall_suspend_state)
1332         (discard_infcall_suspend_state)
1333         (get_infcall_suspend_state_regcache): Update.
1334
1335 2018-09-17  Tom Tromey  <tom@tromey.com>
1336
1337         * gdbthread.h (struct thread_suspend_state): Add initializers.
1338         (class thread_info) <suspend>: Remove initializer.
1339         * infrun.c (struct infcall_suspend_state): Add initializers.
1340         (save_infcall_suspend_state): Use new.
1341         (discard_infcall_suspend_state): Use delete.
1342
1343 2018-09-16  Tom Tromey  <tom@tromey.com>
1344
1345         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
1346         Remove.
1347         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
1348         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
1349         (py_varobj_iter_new): Likewise.
1350         (py_varobj_get_iterator): Use gdbpy_ref.
1351
1352 2018-09-16  Tom Tromey  <tom@tromey.com>
1353
1354         * python/py-threadevent.c (py_get_event_thread): Simplify.
1355         * python/py-inferior.c (infpy_thread_from_thread_handle):
1356         Return immediately after calling thread_to_thread_object.  Use
1357         Py_RETURN_NONE.
1358         (thread_to_thread_object): Set the exception on a NULL return.
1359
1360 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
1361
1362         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
1363
1364 2018-09-16  Tom Tromey  <tom@tromey.com>
1365
1366         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
1367         Remove.
1368
1369 2018-09-16  Tom Tromey  <tom@tromey.com>
1370
1371         * python/python-internal.h (thread_to_thread_object): Change
1372         return type.
1373         * python/py-inferior.c (thread_to_thread_object): Return a new
1374         reference.
1375         (infpy_thread_from_thread_handle): Update.
1376         * python/py-infthread.c (gdbpy_selected_thread): Update.
1377         * python/py-stopevent.c (create_stop_event_object): Update.
1378         * python/py-threadevent.c (py_get_event_thread): Return a new
1379         reference.
1380         (py_get_event_thread): Update.
1381         * python/py-event.h (py_get_event_thread): Change return type.
1382         * python/py-continueevent.c (create_continue_event_object):
1383         Update.
1384
1385 2018-09-16  Tom Tromey  <tom@tromey.com>
1386
1387         * python/py-progspace.c (pspy_get_objfiles): Update.
1388         * python/python-internal.h (objfile_to_objfile_object): Change
1389         return type.
1390         * python/py-newobjfileevent.c (create_new_objfile_event_object):
1391         Update.
1392         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1393         Update.
1394         * python/python.c (gdbpy_get_current_objfile): Update.
1395         (gdbpy_objfiles): Update.
1396         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
1397         Update.
1398         (objfile_to_objfile_object): Return a new reference.
1399         * python/py-symtab.c (stpy_get_objfile): Update.
1400         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
1401         Update.
1402
1403 2018-09-16  Tom Tromey  <tom@tromey.com>
1404
1405         * python/py-inferior.c (infpy_get_progspace): Update.
1406         * python/python-internal.h (pspace_to_pspace_object): Change
1407         return type.
1408         * python/py-newobjfileevent.c
1409         (create_clear_objfiles_event_object): Update.
1410         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1411         Update.
1412         * python/python.c (gdbpy_get_current_progspace): Update.
1413         (gdbpy_progspaces): Update.
1414         * python/py-progspace.c (pspace_to_pspace_object): Return a new
1415         reference.
1416         * python/py-objfile.c (objfpy_get_progspace): Update.
1417         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
1418         Update.
1419
1420 2018-09-16  Tom Tromey  <tom@tromey.com>
1421
1422         * python/lib/gdb/__init__.py (current_progspace, objfiles)
1423         (solib_name, block_for_pc, find_pc_line): New functions.
1424         (execute_unwinders): Update.
1425         * python/py-block.c (gdbpy_block_for_pc): Remove.
1426         * python/py-inferior.c (infpy_get_progspace): New function.
1427         (inferior_object_getset) <progspace>: Add.
1428         * python/py-progspace.c (pspy_objfiles): Rewrite.
1429         (pspy_solib_name, pspy_block_for_pc)
1430         (pspy_find_pc_line, pspy_is_valid): New functions.
1431         (progspace_object_methods): Add entries for solib_name,
1432         block_for_pc, find_pc_line, is_valid.
1433         * python/python-internal.h (gdbpy_block_for_pc)
1434         (build_objfiles_list): Don't declare.
1435         * python/python.c: Don't include solib.h.
1436         (gdbpy_solib_name, gdbpy_find_pc_line)
1437         (gdbpy_get_current_progspace, build_objfiles_list)
1438         (gdbpy_objfiles): Remove.
1439         (GdbMethods) <current_progspace, objfiles, block_for_pc,
1440         solib_name, find_pc_line>: Remove entries.
1441
1442 2018-09-16  Tom Tromey  <tom@tromey.com>
1443
1444         * top.c (new_ui_command): Use GNU style for metasyntactic
1445         variables.
1446         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
1447         variables.
1448         * maint.c (maintenance_translate_address): Remove "<>" around
1449         text.
1450         * interps.c (interpreter_exec_cmd): Use GNU style for
1451         metasyntactic variables.
1452         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
1453         metasyntactic variables.
1454         * tracepoint.c (tfind_range_command): Use GNU style for
1455         metasyntactic variables.
1456         (tfind_outside_command): Likewise.
1457         (_initialize_tracepoint): Likewise.
1458         * remote.c (extended_remote_target::create_inferior): Use GNU
1459         style for metasyntactic variables.
1460         * sparc64-tdep.c (adi_examine_command): Use GNU style for
1461         metasyntactic variables.
1462         (adi_assign_command): Likewise.
1463
1464 2018-09-16  Tom Tromey  <tom@tromey.com>
1465
1466         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
1467         metasyntactic variables.  Print message if no disassembler options
1468         are available.
1469
1470 2018-09-15  Tom Tromey  <tom@tromey.com>
1471
1472         * infcmd.c (get_inferior_args): Return const char *.
1473         * inferior.h (get_inferior_args): Return type now const.
1474         * linux-tdep.c (linux_fill_prpsinfo): Update.
1475         * procfs.c (procfs_target::make_corefile_notes): Update.
1476
1477 2018-09-07  Tom Tromey  <tom@tromey.com>
1478
1479         * python/python.c (execute_gdb_command): Call bpstat_do_actions
1480         inside the TRY.
1481
1482 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
1483
1484         * nios2-tdep.c (nios2_type_align): New.
1485         (nios2_gdb_arch_init): Install type_align hook.
1486
1487 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
1488
1489         * eval.c (fake_method::fake_method): Call xzalloc directly for a
1490         type that is neither object file owned, nor gdbarch owned.
1491         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
1492         gdbarch is non-NULL.
1493         (alloc_type_instance): Allocate non-objfile owned types on the
1494         gdbarch obstack.
1495         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
1496         using TYPE_ALLOC to ensure memory is allocated on the correct
1497         obstack.
1498         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
1499         obstack, or the gdbarch obstack.
1500         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
1501
1502 2018-09-14  Tom Tromey  <tom@tromey.com>
1503
1504         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
1505         block.
1506
1507 2018-09-14  Tom Tromey  <tom@tromey.com>
1508
1509         * nat/fork-inferior.c (get_startup_shell): Remove "static".
1510
1511 2018-09-13  Tom Tromey  <tom@tromey.com>
1512
1513         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
1514         static.
1515
1516 2018-09-13  Tom Tromey  <tom@tromey.com>
1517
1518         * exec.c (try_open_exec_file): Use std::string.
1519
1520 2018-09-13  Tom Tromey  <tom@tromey.com>
1521
1522         * utils.h (gdb_bfd_errmsg): Return std::string.
1523         * exec.c (exec_file_attach): Update.
1524         * compile/compile-object-load.c (compile_object_load): Update.
1525         * utils.c (gdb_bfd_errmsg): Return std::string.
1526
1527 2018-09-13  Tom Tromey  <tom@tromey.com>
1528
1529         * procfs.c (struct procinfo_deleter): New.
1530         (procinfo_up): New typedef.
1531         (do_destroy_procinfo_cleanup): Remove.
1532         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
1533
1534 2018-09-13  Tom Tromey  <tom@tromey.com>
1535
1536         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
1537
1538 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1539 2018-09-13  Tom Tromey  <tom@tromey.com>
1540
1541         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
1542         (pspy_get_objfiles): New function.
1543         (progspace_object_methods): New.
1544         (pspace_object_type): Add tp_methods callback.
1545         * python/python-internal.h (build_objfiles_list): New
1546         declaration.
1547         * python/python.c (build_objfiles_list): New function.
1548         (gdbpy_objfiles): Implement using build_objfiles_list.
1549         * NEWS: Mention the Progspace.objfiles method.
1550
1551 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1552
1553         * python/py-inferior.c (infpy_get_progspace): New function.
1554         (inferior_object_getset): Add progspace property.
1555         * NEWS: Mention the new property.
1556
1557 2018-09-13  Tom Tromey  <tom@tromey.com>
1558
1559         PR rust/23650:
1560         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
1561
1562 2018-09-13  Tom Tromey  <tom@tromey.com>
1563
1564         PR rust/23626:
1565         * rust-lang.c (rust_enum_variant): Now static.
1566         (rust_empty_enum_p): New function.
1567         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
1568         Handle empty enum.
1569
1570 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1571
1572         * python/py-inferior.c (infpy_repr): New.
1573         (inferior_object_type): Register infpy_repr.
1574         * python/py-objfile.c (objfpy_repr): New.
1575         (objfile_object_type): Register objfpy_repr.
1576
1577 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
1578
1579         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
1580
1581 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
1582
1583         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
1584         typo.
1585
1586 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
1587
1588         * common/common-utils.c: Don't include '<sys/stat.h>'.
1589         (is_regular_file): Move to...
1590         * common/filestuff.c (is_regular_file): ... here.
1591         * common/common-utils.h (is_regular_file): Move to...
1592         * common/filestuff.h (is_regular_file): ... here.
1593
1594 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
1595
1596         * skip.c (debug_skip): New variable.
1597         (skiplist_entry::do_skip_file_p): Add debug output.
1598         (skiplist_entry::do_skip_gfile_p): Likewise.
1599         (skiplist_entry::skip_function_p): Likewise.
1600         (_initialize_step_skip): Create debug command.
1601         * NEWS: Mention set/show debug skip.
1602
1603 2018-09-11  Xavier Roirand  <roirand@adacore.com>
1604
1605         * darwin-nat.c (should_disable_startup_with_shell):
1606         New function.
1607         (darwin_nat_target::create_inferior): Add call.
1608
1609 2018-09-11  Xavier Roirand  <roirand@adacore.com>
1610
1611         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
1612         inf_port, msg_state>: Initialize.
1613         (struct darwin_thread_info) <signaled, single_step>: Change
1614         type and initialize.
1615         (struct darwin_thread_info) <event>: Initialize.
1616
1617 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
1618
1619         PR gdb/23555
1620         PR gdb/23558
1621         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
1622         guesses.
1623
1624 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
1625
1626         Revert:
1627         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
1628
1629         PR gdb/23555
1630         PR gdb/23558
1631         * gnulib/aclocal.m4: Regenerate.
1632         * gnulib/config.in: Regenerate.
1633         * gnulib/configure: Regenerate.
1634         * gnulib/import/Makefile.am: Update.
1635         * gnulib/import/Makefile.in: Update.
1636         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
1637         * gnulib/import/_Noreturn.h: ... this.
1638         * gnulib/import/alloca.in.h: Update.
1639         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
1640         * gnulib/import/arg-nonnull.h: ... this.
1641         * gnulib/import/assure.h: Update.
1642         * gnulib/import/at-func.c: Update.
1643         * gnulib/import/basename-lgpl.c: Update.
1644         * gnulib/import/extra/snippet/c++defs.h: Rename to...
1645         * gnulib/import/c++defs.h: ... this.
1646         * gnulib/import/canonicalize-lgpl.c: Update.
1647         * gnulib/import/cdefs.h: Update.
1648         * gnulib/import/chdir-long.c: Update.
1649         * gnulib/import/chdir-long.h: Update.
1650         * gnulib/import/cloexec.c: Update.
1651         * gnulib/import/cloexec.h: Update.
1652         * gnulib/import/close.c: Update.
1653         * gnulib/import/closedir.c: Update.
1654         * gnulib/import/config.charset: Update.
1655         * gnulib/import/dirent-private.h: Update.
1656         * gnulib/import/dirent.in.h: Update.
1657         * gnulib/import/dirfd.c: Update.
1658         * gnulib/import/dirname-lgpl.c: Update.
1659         * gnulib/import/dirname.h: Update.
1660         * gnulib/import/dosname.h: Update.
1661         * gnulib/import/dup-safer-flag.c: Update.
1662         * gnulib/import/dup-safer.c: Update.
1663         * gnulib/import/dup.c: Update.
1664         * gnulib/import/dup2.c: Update.
1665         * gnulib/import/errno.in.h: Update.
1666         * gnulib/import/error.c: Update.
1667         * gnulib/import/error.h: Update.
1668         * gnulib/import/exitfail.c: Update.
1669         * gnulib/import/exitfail.h: Update.
1670         * gnulib/import/extra/update-copyright: Update.
1671         * gnulib/import/fchdir.c: Update.
1672         * gnulib/import/fcntl.c: Update.
1673         * gnulib/import/fcntl.in.h: Update.
1674         * gnulib/import/fd-hook.c: Update.
1675         * gnulib/import/fd-hook.h: Update.
1676         * gnulib/import/fd-safer-flag.c: Update.
1677         * gnulib/import/fd-safer.c: Update.
1678         * gnulib/import/fdopendir.c: Update.
1679         * gnulib/import/filename.h: Update.
1680         * gnulib/import/filenamecat-lgpl.c: Update.
1681         * gnulib/import/filenamecat.h: Update.
1682         * gnulib/import/flexmember.h: Update.
1683         * gnulib/import/float+.h: Update.
1684         * gnulib/import/float.c: Update.
1685         * gnulib/import/float.in.h: Update.
1686         * gnulib/import/fnmatch.c: Update.
1687         * gnulib/import/fnmatch.in.h: Update.
1688         * gnulib/import/fnmatch_loop.c: Update.
1689         * gnulib/import/fpucw.h: Update.
1690         * gnulib/import/frexp.c: Update.
1691         * gnulib/import/frexpl.c: Update.
1692         * gnulib/import/fstat.c: Update.
1693         * gnulib/import/fstatat.c: Update.
1694         * gnulib/import/getcwd-lgpl.c: Update.
1695         * gnulib/import/getcwd.c: Update.
1696         * gnulib/import/getdtablesize.c: Update.
1697         * gnulib/import/getlogin_r.c: Update.
1698         * gnulib/import/getprogname.c: Update.
1699         * gnulib/import/getprogname.h: Update.
1700         * gnulib/import/gettext.h: Update.
1701         * gnulib/import/gettimeofday.c: Update.
1702         * gnulib/import/glob-libc.h: Update.
1703         * gnulib/import/glob.c: Update.
1704         * gnulib/import/glob.in.h: Update.
1705         * gnulib/import/glob_internal.h: Update.
1706         * gnulib/import/glob_pattern_p.c: Update.
1707         * gnulib/import/globfree.c: Update.
1708         * gnulib/import/hard-locale.c: Update.
1709         * gnulib/import/hard-locale.h: Update.
1710         * gnulib/import/intprops.h: Update.
1711         * gnulib/import/inttypes.in.h: Update.
1712         * gnulib/import/isnan.c: Update.
1713         * gnulib/import/isnand-nolibm.h: Update.
1714         * gnulib/import/isnand.c: Update.
1715         * gnulib/import/isnanl-nolibm.h: Update.
1716         * gnulib/import/isnanl.c: Update.
1717         * gnulib/import/itold.c: Update.
1718         * gnulib/import/libc-config.h: Update.
1719         * gnulib/import/limits.in.h: Update.
1720         * gnulib/import/localcharset.c: Update.
1721         * gnulib/import/localcharset.h: Update.
1722         * gnulib/import/localtime-buffer.c: Update.
1723         * gnulib/import/localtime-buffer.h: Update.
1724         * gnulib/import/lstat.c: Update.
1725         * gnulib/import/m4/00gnulib.m4: Update.
1726         * gnulib/import/m4/__inline.m4: Update.
1727         * gnulib/import/m4/absolute-header.m4: Update.
1728         * gnulib/import/m4/alloca.m4: Update.
1729         * gnulib/import/m4/builtin-expect.m4: Update.
1730         * gnulib/import/m4/canonicalize.m4: Update.
1731         * gnulib/import/m4/chdir-long.m4: Update.
1732         * gnulib/import/m4/close.m4: Update.
1733         * gnulib/import/m4/closedir.m4: Update.
1734         * gnulib/import/m4/configmake.m4: Update.
1735         * gnulib/import/m4/d-ino.m4: Update.
1736         * gnulib/import/m4/d-type.m4: Update.
1737         * gnulib/import/m4/dirent_h.m4: Update.
1738         * gnulib/import/m4/dirfd.m4: Update.
1739         * gnulib/import/m4/dirname.m4: Update.
1740         * gnulib/import/m4/double-slash-root.m4: Update.
1741         * gnulib/import/m4/dup.m4: Update.
1742         * gnulib/import/m4/dup2.m4: Update.
1743         * gnulib/import/m4/eealloc.m4: Update.
1744         * gnulib/import/m4/environ.m4: Update.
1745         * gnulib/import/m4/errno_h.m4: Update.
1746         * gnulib/import/m4/error.m4: Update.
1747         * gnulib/import/m4/exponentd.m4: Update.
1748         * gnulib/import/m4/exponentl.m4: Update.
1749         * gnulib/import/m4/extensions.m4: Update.
1750         * gnulib/import/m4/extern-inline.m4: Update.
1751         * gnulib/import/m4/fchdir.m4: Update.
1752         * gnulib/import/m4/fcntl-o.m4: Update.
1753         * gnulib/import/m4/fcntl.m4: Update.
1754         * gnulib/import/m4/fcntl_h.m4: Update.
1755         * gnulib/import/m4/fdopendir.m4: Update.
1756         * gnulib/import/m4/filenamecat.m4: Update.
1757         * gnulib/import/m4/flexmember.m4: Update.
1758         * gnulib/import/m4/float_h.m4: Update.
1759         * gnulib/import/m4/fnmatch.m4: Update.
1760         * gnulib/import/m4/fnmatch_h.m4: Update.
1761         * gnulib/import/m4/fpieee.m4: Update.
1762         * gnulib/import/m4/frexp.m4: Update.
1763         * gnulib/import/m4/frexpl.m4: Update.
1764         * gnulib/import/m4/fstat.m4: Update.
1765         * gnulib/import/m4/fstatat.m4: Update.
1766         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
1767         * gnulib/import/m4/getcwd-path-max.m4: Update.
1768         * gnulib/import/m4/getcwd.m4: Update.
1769         * gnulib/import/m4/getdtablesize.m4: Update.
1770         * gnulib/import/m4/getlogin.m4: Update.
1771         * gnulib/import/m4/getlogin_r.m4: Update.
1772         * gnulib/import/m4/getpagesize.m4: Update.
1773         * gnulib/import/m4/getprogname.m4: Update.
1774         * gnulib/import/m4/gettimeofday.m4: Update.
1775         * gnulib/import/m4/glibc21.m4: Update.
1776         * gnulib/import/m4/glob.m4: Update.
1777         * gnulib/import/m4/glob_h.m4: Update.
1778         * gnulib/import/m4/gnulib-cache.m4: Update.
1779         * gnulib/import/m4/gnulib-common.m4: Update.
1780         * gnulib/import/m4/gnulib-comp.m4: Update.
1781         * gnulib/import/m4/gnulib-tool.m4: Update.
1782         * gnulib/import/m4/hard-locale.m4: Update.
1783         * gnulib/import/m4/include_next.m4: Update.
1784         * gnulib/import/m4/inttypes-pri.m4: Update.
1785         * gnulib/import/m4/inttypes.m4: Update.
1786         * gnulib/import/m4/isnand.m4: Update.
1787         * gnulib/import/m4/isnanl.m4: Update.
1788         * gnulib/import/m4/largefile.m4: Update.
1789         * gnulib/import/m4/limits-h.m4: Update.
1790         * gnulib/import/m4/localcharset.m4: Update.
1791         * gnulib/import/m4/locale-fr.m4: Update.
1792         * gnulib/import/m4/locale-ja.m4: Update.
1793         * gnulib/import/m4/locale-zh.m4: Update.
1794         * gnulib/import/m4/localtime-buffer.m4: Update.
1795         * gnulib/import/m4/longlong.m4: Update.
1796         * gnulib/import/m4/lstat.m4: Update.
1797         * gnulib/import/m4/malloc.m4: Update.
1798         * gnulib/import/m4/malloca.m4: Update.
1799         * gnulib/import/m4/math_h.m4: Update.
1800         * gnulib/import/m4/mbrtowc.m4: Update.
1801         * gnulib/import/m4/mbsinit.m4: Update.
1802         * gnulib/import/m4/mbsrtowcs.m4: Update.
1803         * gnulib/import/m4/mbstate_t.m4: Update.
1804         * gnulib/import/m4/memchr.m4: Update.
1805         * gnulib/import/m4/memmem.m4: Update.
1806         * gnulib/import/m4/mempcpy.m4: Update.
1807         * gnulib/import/m4/memrchr.m4: Update.
1808         * gnulib/import/m4/mkdir.m4: Update.
1809         * gnulib/import/m4/mkstemp.m4: Update.
1810         * gnulib/import/m4/mmap-anon.m4: Update.
1811         * gnulib/import/m4/mode_t.m4: Update.
1812         * gnulib/import/m4/msvc-inval.m4: Update.
1813         * gnulib/import/m4/msvc-nothrow.m4: Update.
1814         * gnulib/import/m4/multiarch.m4: Update.
1815         * gnulib/import/m4/nocrash.m4: Update.
1816         * gnulib/import/m4/off_t.m4: Update.
1817         * gnulib/import/m4/onceonly.m4: Update.
1818         * gnulib/import/m4/open-cloexec.m4: Update.
1819         * gnulib/import/m4/open.m4: Update.
1820         * gnulib/import/m4/openat.m4: Update.
1821         * gnulib/import/m4/opendir.m4: Update.
1822         * gnulib/import/m4/pathmax.m4: Update.
1823         * gnulib/import/m4/rawmemchr.m4: Update.
1824         * gnulib/import/m4/readdir.m4: Update.
1825         * gnulib/import/m4/readlink.m4: Update.
1826         * gnulib/import/m4/realloc.m4: Update.
1827         * gnulib/import/m4/rename.m4: Update.
1828         * gnulib/import/m4/rewinddir.m4: Update.
1829         * gnulib/import/m4/rmdir.m4: Update.
1830         * gnulib/import/m4/save-cwd.m4: Update.
1831         * gnulib/import/m4/secure_getenv.m4: Update.
1832         * gnulib/import/m4/setenv.m4: Update.
1833         * gnulib/import/m4/signal_h.m4: Update.
1834         * gnulib/import/m4/ssize_t.m4: Update.
1835         * gnulib/import/m4/stat-time.m4: Update.
1836         * gnulib/import/m4/stat.m4: Update.
1837         * gnulib/import/m4/std-gnu11.m4: Update.
1838         * gnulib/import/m4/stdbool.m4: Update.
1839         * gnulib/import/m4/stddef_h.m4: Update.
1840         * gnulib/import/m4/stdint.m4: Update.
1841         * gnulib/import/m4/stdio_h.m4: Update.
1842         * gnulib/import/m4/stdlib_h.m4: Update.
1843         * gnulib/import/m4/strchrnul.m4: Update.
1844         * gnulib/import/m4/strdup.m4: Update.
1845         * gnulib/import/m4/strerror.m4: Update.
1846         * gnulib/import/m4/string_h.m4: Update.
1847         * gnulib/import/m4/strstr.m4: Update.
1848         * gnulib/import/m4/strtok_r.m4: Update.
1849         * gnulib/import/m4/sys_socket_h.m4: Update.
1850         * gnulib/import/m4/sys_stat_h.m4: Update.
1851         * gnulib/import/m4/sys_time_h.m4: Update.
1852         * gnulib/import/m4/sys_types_h.m4: Update.
1853         * gnulib/import/m4/tempname.m4: Update.
1854         * gnulib/import/m4/time_h.m4: Update.
1855         * gnulib/import/m4/unistd-safer.m4: Update.
1856         * gnulib/import/m4/unistd_h.m4: Update.
1857         * gnulib/import/m4/warn-on-use.m4: Update.
1858         * gnulib/import/m4/wchar_h.m4: Update.
1859         * gnulib/import/m4/wchar_t.m4: Update.
1860         * gnulib/import/m4/wctype_h.m4: Update.
1861         * gnulib/import/m4/wint_t.m4: Update.
1862         * gnulib/import/malloc.c: Update.
1863         * gnulib/import/malloc/scratch_buffer.h: Update.
1864         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
1865         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
1866         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
1867         * gnulib/import/malloca.c: Update.
1868         * gnulib/import/malloca.h: Update.
1869         * gnulib/import/malloca.valgrind: Update.
1870         * gnulib/import/math.in.h: Update.
1871         * gnulib/import/mbrtowc.c: Update.
1872         * gnulib/import/mbsinit.c: Update.
1873         * gnulib/import/mbsrtowcs-impl.h: Update.
1874         * gnulib/import/mbsrtowcs-state.c: Update.
1875         * gnulib/import/mbsrtowcs.c: Update.
1876         * gnulib/import/memchr.c: Update.
1877         * gnulib/import/memmem.c: Update.
1878         * gnulib/import/mempcpy.c: Update.
1879         * gnulib/import/memrchr.c: Update.
1880         * gnulib/import/mkdir.c: Update.
1881         * gnulib/import/mkstemp.c: Update.
1882         * gnulib/import/msvc-inval.c: Update.
1883         * gnulib/import/msvc-inval.h: Update.
1884         * gnulib/import/msvc-nothrow.c: Update.
1885         * gnulib/import/msvc-nothrow.h: Update.
1886         * gnulib/import/open.c: Update.
1887         * gnulib/import/openat-die.c: Update.
1888         * gnulib/import/openat-priv.h: Update.
1889         * gnulib/import/openat-proc.c: Update.
1890         * gnulib/import/openat.c: Update.
1891         * gnulib/import/openat.h: Update.
1892         * gnulib/import/opendir.c: Update.
1893         * gnulib/import/pathmax.h: Update.
1894         * gnulib/import/pipe-safer.c: Update.
1895         * gnulib/import/rawmemchr.c: Update.
1896         * gnulib/import/readdir.c: Update.
1897         * gnulib/import/readlink.c: Update.
1898         * gnulib/import/realloc.c: Update.
1899         * gnulib/import/ref-add.sin: Update.
1900         * gnulib/import/ref-del.sin: Update.
1901         * gnulib/import/rename.c: Update.
1902         * gnulib/import/rewinddir.c: Update.
1903         * gnulib/import/rmdir.c: Update.
1904         * gnulib/import/same-inode.h: Update.
1905         * gnulib/import/save-cwd.c: Update.
1906         * gnulib/import/save-cwd.h: Update.
1907         * gnulib/import/scratch_buffer.h: Update.
1908         * gnulib/import/secure_getenv.c: Update.
1909         * gnulib/import/setenv.c: Update.
1910         * gnulib/import/signal.in.h: Update.
1911         * gnulib/import/stat-time.c: Update.
1912         * gnulib/import/stat-time.h: Update.
1913         * gnulib/import/stat-w32.c: Update.
1914         * gnulib/import/stat-w32.h: Update.
1915         * gnulib/import/stat.c: Update.
1916         * gnulib/import/stdbool.in.h: Update.
1917         * gnulib/import/stddef.in.h: Update.
1918         * gnulib/import/stdint.in.h: Update.
1919         * gnulib/import/stdio.in.h: Update.
1920         * gnulib/import/stdlib.in.h: Update.
1921         * gnulib/import/str-two-way.h: Update.
1922         * gnulib/import/strchrnul.c: Update.
1923         * gnulib/import/strdup.c: Update.
1924         * gnulib/import/streq.h: Update.
1925         * gnulib/import/strerror-override.c: Update.
1926         * gnulib/import/strerror-override.h: Update.
1927         * gnulib/import/strerror.c: Update.
1928         * gnulib/import/string.in.h: Update.
1929         * gnulib/import/stripslash.c: Update.
1930         * gnulib/import/strnlen1.c: Update.
1931         * gnulib/import/strnlen1.h: Update.
1932         * gnulib/import/strstr.c: Update.
1933         * gnulib/import/strtok_r.c: Update.
1934         * gnulib/import/sys_stat.in.h: Update.
1935         * gnulib/import/sys_time.in.h: Update.
1936         * gnulib/import/sys_types.in.h: Update.
1937         * gnulib/import/tempname.c: Update.
1938         * gnulib/import/tempname.h: Update.
1939         * gnulib/import/time.in.h: Update.
1940         * gnulib/import/unistd--.h: Update.
1941         * gnulib/import/unistd-safer.h: Update.
1942         * gnulib/import/unistd.in.h: Update.
1943         * gnulib/import/unsetenv.c: Update.
1944         * gnulib/import/verify.h: Update.
1945         * gnulib/import/extra/snippet/warn-on-use.h: Update.
1946         * gnulib/import/wchar.in.h: Update.
1947         * gnulib/import/wctype.in.h: Update.
1948         * gnulib/import/xalloc-oversized.h: Update.
1949         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
1950         "53e2c179f26a890fa6685af4b6c1397ee370433b".
1951
1952 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
1953
1954         * record-btrace.c (get_thread_current_frame): Remove
1955         old_inferior_ptid.
1956
1957 2018-09-10  Jerome Guitton  <guitton@adacore.com>
1958
1959         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
1960         with check_tag to 1 if and only if the type is tagged and the
1961         component being searched cannot been found in the current
1962         view. Otherwise, always call ada_to_fixed_type with
1963         check_tag to 0.
1964
1965 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1966
1967         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
1968         declaration.
1969         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
1970         * ada-varobj.c (ada_varobj_get_number_of_children,
1971         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
1972
1973 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1974
1975         * ada-valprint.c (ada_value_print): Use type instead of
1976         enclosing type.
1977
1978 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1979
1980         * ada-lang.c (ada_value_subscript): Handle case when parameter is
1981         an array of access to unconstrained array.
1982
1983 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1984
1985         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
1986         (ada_check_typedef): Use it.
1987
1988 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1989
1990         * ada-varobj.c (ada_varobj_describe_struct_child)
1991         (ada_varobj_describe_child): Handle union case like struct one.
1992
1993 2018-09-10  Tom Tromey  <tom@tromey.com>
1994
1995         PR python/18380:
1996         * python/python.c (_initialize_python): Make example in "python"
1997         help work in Python 3.
1998
1999 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
2000
2001         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
2002         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
2003         $(EXEEXT) to the script, as it is not a program.
2004
2005 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
2006
2007         * python/py-prettyprint.c (pretty_print_one_value): Return
2008         gdbpy_ref<>.
2009         (print_string_repr): Adjust.
2010         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
2011         * python/python-internal.h (apply_varobj_pretty_printer): Return
2012         gdbpy_ref<>.
2013         * varobj.c (varobj_value_get_print_value): Adjust.
2014
2015 2018-09-08  Tom Tromey  <tom@tromey.com>
2016
2017         PR python/16047:
2018         * python/py-prettyprint.c (pretty_print_one_value): Check for
2019         to_string method.
2020
2021 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2022
2023         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
2024         replace_operator_with_call.
2025
2026 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2027
2028         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
2029
2030 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2031
2032         * ada-typeprint.c (print_range): Print the bounds using TYPE
2033         rather than its TYPE_TARGET_TYPE.
2034
2035 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2036
2037         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
2038         call to ada_to_fixed_value_create.
2039
2040 2018-09-08  Jerome Guitton  <guitton@adacore.com>
2041
2042         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
2043
2044 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2045
2046         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
2047         by calls to error.
2048
2049 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2050
2051         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
2052         Move update of loop variable "fi".
2053
2054 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2055
2056         * ada-lang.c (value_assign_to_component): In the case of
2057         big-endian targets, extract the bits of the given VAL
2058         using an src_offset of zero if container is not a scalar.
2059
2060 2018-09-06  Simon Ser  <contact@emersion.fr>
2061
2062         PR gdb/23105
2063         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
2064         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2065         * fbsd-tdep.c (fbsd_make_note_desc): New.
2066         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
2067         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
2068         * target.h (enum target_object) Add FreeBSD-specific
2069         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2070
2071 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2072
2073         * compile/compile-c.h (generate_c_for_variable_locations):
2074         Change reference to pointer.
2075         * compile/compile-c-support.c (compile_program) <compute>:
2076         Likewise.
2077         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
2078         (generate_c_for_for_one_variable): Likewise
2079         (generate_c_for_variable_locations): Likewise
2080         * compile/compile-c-types.c (compile_c_instance::convert_type):
2081         Likewise
2082         * compile/compile-cplus-symbols.c (convert_one_symbol):
2083         std::move the scope passed to enter_scope.
2084         * compile/compile-cplus-types.c
2085         (compile_cplus_instance::enter_scope): Make parameter
2086         rvalue-reference.
2087         (compile_cplus_instance::new_scope): Change reference to
2088         pointer.
2089         (compile_cplus_instance::convert_type): Likewise
2090         (compile_cplus_convert_typedef): std::move the scope passed to
2091         enter_scope.
2092         (compile_cplus_convert_struct_or_union): Likewise.
2093         (compile_cplus_convert_enum): Likewise.
2094         (compile_cplus_convert_namespace): Likewise.
2095         * compile/compile-cplus.h (compile_cplus_instance)
2096         <enter_scope>: Make parameter rvalue-reference.
2097         * compile/compile-internal.h (compile_instance)
2098         <get_cached_type>: Likewise
2099         * compile/compile-loc2c.c (push): Likewise
2100         (pushf): Likewise
2101         (unary): Likewise
2102         (binary): Likewise
2103         (print_label): Likewise
2104         (pushf_register_address): Likewise
2105         (pushf_register): Likewise
2106         (do_compile_dwarf_expr_to_c): Likewise
2107         (compile_dwarf_expr_to_c): Likewise
2108         (compile_dwarf_bounds_to_c): Likewise
2109         * compile/compile.c (compile_instance::get_cached_type):
2110         Likewise
2111         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
2112         (compile_dwarf_bounds_to_c): Likewise
2113         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
2114         (dwarf2_compile_property_to_c): Likewise
2115         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
2116         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
2117         Likewise
2118
2119 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2120
2121         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
2122         * tui/tui-data.c (init_content_element): Don't initialize it.
2123
2124 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2125
2126         * tui/tui-data.h (struct tui_win_info)
2127         <detail::opaque>: Remove.
2128         * tui/tui-data.c (init_win_info): Remove assignment.
2129
2130 2018-09-05  Tom Tromey  <tom@tromey.com>
2131
2132         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
2133         -Wformat-nonliteral.
2134         * target-float.c (host_float_ops<T>::to_string)
2135         (host_float_ops<T>::from_string): Use
2136         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2137         * configure: Rebuild.
2138
2139 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
2140
2141         * printcmd.c (printf_c_string): Use
2142         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2143         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
2144
2145 2018-09-05  Tom Tromey  <tom@tromey.com>
2146
2147         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
2148
2149 2018-09-05  Tom de Vries  <tdevries@suse.de>
2150
2151         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
2152         with resolve_abstract_p == true.
2153         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
2154         defaulting to false. Propagate resolve_abstract_p to
2155         dwarf2_fetch_die_loc_sect_off.
2156         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
2157         parameter, defaulting to false.
2158         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
2159         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
2160         parameter.
2161         * dwarf2read.h (struct die_info): Forward-declare.
2162         (die_info_ptr): New typedef.
2163         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
2164
2165 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
2166
2167         GDB 8.2 released.
2168
2169 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
2170             Pedro Alves  <palves@redhat.com>
2171
2172         * gnulib/Makefile.in (aclocal_m4_deps): Move to
2173         "aclocal-m4-deps.mk".  Include file here.
2174         $(srcdir)/aclocal.m4: Add "configure.ac".
2175         * gnulib/aclocal-m4-deps.mk: New file.
2176         * gnulib/update-gnulib.sh: Automatically update
2177         "aclocal-m4-deps.mk".
2178
2179 2018-09-04  Tom Tromey  <tom@tromey.com>
2180
2181         * configure: Rebuild.
2182         * configure.ac: Remove multi-ice code.
2183
2184 2018-09-04  Tom Tromey  <tom@tromey.com>
2185
2186         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
2187         (ada-exp.o): Update.
2188
2189 2018-09-04  Tom Tromey  <tom@tromey.com>
2190
2191         * Makefile.in (printcmd.o, target-float.o): Remove.
2192         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
2193
2194 2018-09-04  Tom Tromey  <tom@tromey.com>
2195
2196         * gnulib/Makefile.in: Remove obsolete comment.
2197         * Makefile.in: Remove obsolete comment.
2198
2199 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
2200
2201         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
2202         line with '+'.
2203
2204 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2205
2206         * riscv-tdep.c: Add 'prologue-value.h' include.
2207         (struct riscv_unwind_cache): New struct.
2208         (riscv_debug_unwinder): New global.
2209         (riscv_scan_prologue): Update arguments, capture register details
2210         from prologue scan.
2211         (riscv_skip_prologue): Reformat arguments line, move end of
2212         prologue calculation into riscv_scan_prologue.
2213         (riscv_frame_cache): Update return type, create
2214         riscv_unwind_cache, scan the prologue, and fill in remaining cache
2215         details.
2216         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
2217         (riscv_frame_prev_register): Use the trad_frame within the
2218         riscv_unwind_cache.
2219         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
2220         flag.
2221
2222 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2223
2224         * trad-frame.h (trad_frame_set_realreg): Declare.
2225         (trad_frame_set_addr): Declare.
2226         * trad-frame.c (trad_frame_set_realreg): Define new function.
2227         (trad_frame_set_addr): Define new function.
2228         (trad_frame_set_reg_realreg): Use new function.
2229         (trad_frame_set_reg_addr): Use new function.
2230
2231 2018-09-01  Keith Seitz  <keiths@redhat.com>
2232
2233         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
2234         pulongest instead of "%lld".
2235         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
2236         ATTRIBUTE_UNUSED.
2237
2238 2018-08-31  Tom Tromey  <tom@tromey.com>
2239
2240         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
2241         variant part type.
2242
2243 2018-08-31  Pedro Alves  <palves@redhat.com>
2244
2245         * gdbarch.h: Regenerate.
2246
2247 2018-08-31  Pedro Alves  <palves@redhat.com>
2248
2249         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
2250         * target.h (Hardware watchpoint interfaces): Describe
2251         continuable/steppable/non-steppable watchpoints.
2252         * gdbarch.h, gdbarch.c: Regenerate.
2253
2254 2018-08-31  Pedro Alves  <palves@redhat.com>
2255
2256         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
2257         Delete.
2258         * s390-linux-nat.c
2259         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
2260         * target.h (target_ops::have_continuable_watchpoint): Delete.
2261         (target_have_continuable_watchpoint): Delete.
2262         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
2263         * target-delegates.c: Regenerate.
2264
2265 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
2266
2267         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
2268         the files present in "gnulib/import/m4/".
2269
2270 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2271
2272         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
2273         c.sw, c.swsp, and c.sdsp.
2274
2275 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2276
2277         * riscv-tdep.c (struct riscv_inferior_data): Delete.
2278         (riscv_read_misa_reg): Don't cache value read into inferior data.
2279         (riscv_new_inferior_data): Delete.
2280         (riscv_inferior_data_cleanup): Delete.
2281         (riscv_inferior_data): Delete.
2282         (riscv_invalidate_inferior_data): Delete.
2283         (_initialize_riscv_tdep): Remove initialisation of inferior data.
2284
2285 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
2286
2287         * compile/compile-cplus-types.c
2288         (compile_cplus_instance::leave_scope): Take the address of scope
2289         object.
2290         (compile_cplus_instance::convert_qualified_base): Compare quals
2291         to 0.
2292
2293 2018-08-30  Keith Seitz  <keiths@redhat.com>
2294
2295         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
2296         Use "%s" and host_address_to_string instead of "%p" in printf.
2297
2298 2018-08-29  Keith Seitz  <keiths@redhat.com>
2299
2300         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
2301         and compile-cplus-types.c.
2302         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
2303         * c-lang.c (cplus_language_defn): Set C++ compile functions.
2304         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
2305         Declare.
2306         * compile/compile-c-support.c: Include compile-cplus.h.
2307         (load_libcompile): Templatize.
2308         (get_compile_context): "New" function.
2309         (c_get_compile_context): Use get_compile_context.
2310         (cplus_get_compile_context): New function.
2311         (cplus_push_user_expression, cplus_pop_user_expression)
2312         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
2313         (cplus_compute_program): Define new structs/functions.
2314         * compile/compile-cplus-symmbols.c: New file.
2315         * compile/compile-cplus-types.c: New file.
2316         * compile/compile-cplus.h: New file.
2317         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
2318         Declare.
2319         * compile/compile-object-load.c (get_out_value_type): Use
2320         strncmp_iw when comparing symbol names.
2321         (compile_object_load): Add mst_bss and mst_data.
2322         * compile/compile.c (_initialize_compile): Remove
2323         -Wno-implicit-function-declaration from `compile_args'.
2324         * compile/gcc-cp-plugin.h: New file.
2325         * NEWS: Mention C++ compile support and new debug options.
2326
2327 2018-08-29  Keith Seitz  <keiths@redhat.com>
2328
2329         * linespec.c (collect_info::add_symbol): Make virtual.
2330         (struct symbol_searcher_collect_info): New struct.
2331         (symbol_searcher::find_all_symbols): New method.
2332         * symtab.h (class symbol_searcher): New class.
2333
2334 2018-08-29  Keith Seitz  <keiths@redhat.com>
2335
2336         * linespec.c (struct linespec) <function_symbols, label_symbols>:
2337         Change to vector of block_symbol.  Update all users.
2338         (struct collect_info) <symbols>: Likewise.
2339         (collect_info::add_symbol): Take block_symbol as argument.
2340         Update all callers.
2341         (decode_compound_collector) <m_symbols>: Change type to vector
2342         of block_symbol.  Update all users.
2343         (decode_compound_collector::operator ()): Change parameter type
2344         to block_symbol.
2345         (find_method, find_function_symbols, find_linespec_symbols)
2346         (find_label_symbols_in_block, find_label_symbols): Change symbol
2347         vectors to block_symbol vectors.
2348         * symtab.h (symbol_found_callback_ftype): Change parameter type to
2349         block_symbol.
2350
2351 2018-08-29  Keith Seitz  <keiths@redhat.com>
2352
2353         * linespec.c (symbolp): Remove typedef and VEC definitions.
2354         (bound_minimal_symbol_d): Likewise.
2355
2356 2018-08-29  Keith Seitz  <keiths@redhat.com>
2357
2358         * linespec.c (decode_compound_collector::decode_compound_collector):
2359         Remove initialization for `m_symtabs'.
2360         (decode_compound_collector::release_symbols): Change return type
2361         to std::vector.  Update all callers.
2362         (class decode_compound_collector) <m_symbols>: Change type to
2363         std::vector.
2364         (lookup_prefix_sym): Change return type to std::vector.  Update all
2365         callers.
2366         (compare_symbols): Remove.
2367         (std_compare_symbols): Rename to `compare_symbols'.
2368         (find_method): Change `sym_classes' parameter to std::vector.
2369         Update all callers.  Use std::sort to sort sym_classes.
2370         (find_linespec_symbols): Remove cleanup.
2371
2372 2018-08-29  Keith Seitz  <keiths@redhat.com>
2373
2374         * linespec.c (struct linespec) <minimal_symbols>: Change type to
2375         std::vector.  Update all users.
2376         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
2377         (struct collect_info) <minimal_symbols>: Likewise.
2378         (compare_msymbols): Return bool.  Change parameters to const
2379         bound_minimal_symbol references.
2380         (find_method, find_function_symbols, find_linespec_symbols): Change
2381         `minsyms' parameter to std::vector.  Update all callers.
2382
2383 2018-08-29  Keith Seitz  <keiths@redhat.com>
2384
2385         * linespec.c (struct linespec) <label_symbols>: Change type to
2386         std::vector.  Update all users.
2387         (find_label_symbols_in_block): Change `result' parameter to
2388         std::vector.  Update all callers.
2389         (find_label_symbols): Return std::vector.  Update all callers.
2390
2391 2018-08-29  Keith Seitz  <keiths@redhat.com>
2392
2393         * linespec.c (struct linespec) <function_symbols>: Change type to
2394         std::vector.  Update all users.
2395         (struct collect_info) <function_symbols>: Likewise.
2396         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
2397         (std_compare_symbols): New function.
2398         (find_method, find_function_symbols, find_linespec_symbols)
2399         (find_label_symbols_in_block): Change `symbols' parameter to
2400         std::vector.  Update all callers.
2401         (find_label_symbols): Likewise for `function_symbols' and
2402         `label_funcs_ret'.
2403
2404 2018-08-29  Keith Seitz  <keiths@redhat.com>
2405
2406         * linespec.c (symtab_vector_up): Define.
2407         (struct linespec) <file_symtabs>: Change type to std::vector *.
2408         Update all uses.
2409         (struct collect_info) <file_symtabs>: Likewise.
2410         (collect_symtabs_from_filename): Return symtab_vector_up.
2411         Update all callers.
2412         (decode_objc): Remove cleanup.
2413         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
2414         (symtab_collector::release_symtabs): Return symtab_vector_up.
2415         Update all callers.
2416         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
2417         Update all users.
2418         (collect_symtabs_from_filename, symtabs_from_filename): Return
2419         symtab_vector_up.  Update all callers.
2420
2421 2018-08-29  Tom Tromey  <tom@tromey.com>
2422
2423         * csky-tdep.c (csky_analyze_prologue): Use
2424         core_addr_to_string_nz.
2425
2426 2018-08-29  Tom Tromey  <tom@tromey.com>
2427
2428         * windows-nat.c (struct xlate_exception) <them>: Change type to
2429         DWORD.
2430         (xlate): Fix formatting.  Remove last entry.
2431         (struct xlate_exception, xlate): Comment out.
2432         (windows_nat_target::resume): Use ranged for.
2433
2434 2018-08-29  Jim Wilson  <jimw@sifive.com>
2435
2436         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
2437         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
2438         of NT_PRFPREG.
2439         (riscv_linux_nat_target::store_registers): Likewise.
2440
2441 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
2442
2443         PR gdb/23555
2444         PR gdb/23558
2445         * gnulib/aclocal.m4: Regenerate.
2446         * gnulib/config.in: Regenerate.
2447         * gnulib/configure: Regenerate.
2448         * gnulib/import/Makefile.am: Update.
2449         * gnulib/import/Makefile.in: Update.
2450         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
2451         * gnulib/import/_Noreturn.h: ... this.
2452         * gnulib/import/alloca.in.h: Update.
2453         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
2454         * gnulib/import/arg-nonnull.h: ... this.
2455         * gnulib/import/assure.h: Update.
2456         * gnulib/import/at-func.c: Update.
2457         * gnulib/import/basename-lgpl.c: Update.
2458         * gnulib/import/extra/snippet/c++defs.h: Rename to...
2459         * gnulib/import/c++defs.h: ... this.
2460         * gnulib/import/canonicalize-lgpl.c: Update.
2461         * gnulib/import/cdefs.h: Update.
2462         * gnulib/import/chdir-long.c: Update.
2463         * gnulib/import/chdir-long.h: Update.
2464         * gnulib/import/cloexec.c: Update.
2465         * gnulib/import/cloexec.h: Update.
2466         * gnulib/import/close.c: Update.
2467         * gnulib/import/closedir.c: Update.
2468         * gnulib/import/config.charset: Update.
2469         * gnulib/import/dirent-private.h: Update.
2470         * gnulib/import/dirent.in.h: Update.
2471         * gnulib/import/dirfd.c: Update.
2472         * gnulib/import/dirname-lgpl.c: Update.
2473         * gnulib/import/dirname.h: Update.
2474         * gnulib/import/dosname.h: Update.
2475         * gnulib/import/dup-safer-flag.c: Update.
2476         * gnulib/import/dup-safer.c: Update.
2477         * gnulib/import/dup.c: Update.
2478         * gnulib/import/dup2.c: Update.
2479         * gnulib/import/errno.in.h: Update.
2480         * gnulib/import/error.c: Update.
2481         * gnulib/import/error.h: Update.
2482         * gnulib/import/exitfail.c: Update.
2483         * gnulib/import/exitfail.h: Update.
2484         * gnulib/import/extra/update-copyright: Update.
2485         * gnulib/import/fchdir.c: Update.
2486         * gnulib/import/fcntl.c: Update.
2487         * gnulib/import/fcntl.in.h: Update.
2488         * gnulib/import/fd-hook.c: Update.
2489         * gnulib/import/fd-hook.h: Update.
2490         * gnulib/import/fd-safer-flag.c: Update.
2491         * gnulib/import/fd-safer.c: Update.
2492         * gnulib/import/fdopendir.c: Update.
2493         * gnulib/import/filename.h: Update.
2494         * gnulib/import/filenamecat-lgpl.c: Update.
2495         * gnulib/import/filenamecat.h: Update.
2496         * gnulib/import/flexmember.h: Update.
2497         * gnulib/import/float+.h: Update.
2498         * gnulib/import/float.c: Update.
2499         * gnulib/import/float.in.h: Update.
2500         * gnulib/import/fnmatch.c: Update.
2501         * gnulib/import/fnmatch.in.h: Update.
2502         * gnulib/import/fnmatch_loop.c: Update.
2503         * gnulib/import/fpucw.h: Update.
2504         * gnulib/import/frexp.c: Update.
2505         * gnulib/import/frexpl.c: Update.
2506         * gnulib/import/fstat.c: Update.
2507         * gnulib/import/fstatat.c: Update.
2508         * gnulib/import/getcwd-lgpl.c: Update.
2509         * gnulib/import/getcwd.c: Update.
2510         * gnulib/import/getdtablesize.c: Update.
2511         * gnulib/import/getlogin_r.c: Update.
2512         * gnulib/import/getprogname.c: Update.
2513         * gnulib/import/getprogname.h: Update.
2514         * gnulib/import/gettext.h: Update.
2515         * gnulib/import/gettimeofday.c: Update.
2516         * gnulib/import/glob-libc.h: Update.
2517         * gnulib/import/glob.c: Update.
2518         * gnulib/import/glob.in.h: Update.
2519         * gnulib/import/glob_internal.h: Update.
2520         * gnulib/import/glob_pattern_p.c: Update.
2521         * gnulib/import/globfree.c: Update.
2522         * gnulib/import/hard-locale.c: Update.
2523         * gnulib/import/hard-locale.h: Update.
2524         * gnulib/import/intprops.h: Update.
2525         * gnulib/import/inttypes.in.h: Update.
2526         * gnulib/import/isnan.c: Update.
2527         * gnulib/import/isnand-nolibm.h: Update.
2528         * gnulib/import/isnand.c: Update.
2529         * gnulib/import/isnanl-nolibm.h: Update.
2530         * gnulib/import/isnanl.c: Update.
2531         * gnulib/import/itold.c: Update.
2532         * gnulib/import/libc-config.h: Update.
2533         * gnulib/import/limits.in.h: Update.
2534         * gnulib/import/localcharset.c: Update.
2535         * gnulib/import/localcharset.h: Update.
2536         * gnulib/import/localtime-buffer.c: Update.
2537         * gnulib/import/localtime-buffer.h: Update.
2538         * gnulib/import/lstat.c: Update.
2539         * gnulib/import/m4/00gnulib.m4: Update.
2540         * gnulib/import/m4/__inline.m4: Update.
2541         * gnulib/import/m4/absolute-header.m4: Update.
2542         * gnulib/import/m4/alloca.m4: Update.
2543         * gnulib/import/m4/builtin-expect.m4: Update.
2544         * gnulib/import/m4/canonicalize.m4: Update.
2545         * gnulib/import/m4/chdir-long.m4: Update.
2546         * gnulib/import/m4/close.m4: Update.
2547         * gnulib/import/m4/closedir.m4: Update.
2548         * gnulib/import/m4/configmake.m4: Update.
2549         * gnulib/import/m4/d-ino.m4: Update.
2550         * gnulib/import/m4/d-type.m4: Update.
2551         * gnulib/import/m4/dirent_h.m4: Update.
2552         * gnulib/import/m4/dirfd.m4: Update.
2553         * gnulib/import/m4/dirname.m4: Update.
2554         * gnulib/import/m4/double-slash-root.m4: Update.
2555         * gnulib/import/m4/dup.m4: Update.
2556         * gnulib/import/m4/dup2.m4: Update.
2557         * gnulib/import/m4/eealloc.m4: Update.
2558         * gnulib/import/m4/environ.m4: Update.
2559         * gnulib/import/m4/errno_h.m4: Update.
2560         * gnulib/import/m4/error.m4: Update.
2561         * gnulib/import/m4/exponentd.m4: Update.
2562         * gnulib/import/m4/exponentl.m4: Update.
2563         * gnulib/import/m4/extensions.m4: Update.
2564         * gnulib/import/m4/extern-inline.m4: Update.
2565         * gnulib/import/m4/fchdir.m4: Update.
2566         * gnulib/import/m4/fcntl-o.m4: Update.
2567         * gnulib/import/m4/fcntl.m4: Update.
2568         * gnulib/import/m4/fcntl_h.m4: Update.
2569         * gnulib/import/m4/fdopendir.m4: Update.
2570         * gnulib/import/m4/filenamecat.m4: Update.
2571         * gnulib/import/m4/flexmember.m4: Update.
2572         * gnulib/import/m4/float_h.m4: Update.
2573         * gnulib/import/m4/fnmatch.m4: Update.
2574         * gnulib/import/m4/fnmatch_h.m4: Update.
2575         * gnulib/import/m4/fpieee.m4: Update.
2576         * gnulib/import/m4/frexp.m4: Update.
2577         * gnulib/import/m4/frexpl.m4: Update.
2578         * gnulib/import/m4/fstat.m4: Update.
2579         * gnulib/import/m4/fstatat.m4: Update.
2580         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
2581         * gnulib/import/m4/getcwd-path-max.m4: Update.
2582         * gnulib/import/m4/getcwd.m4: Update.
2583         * gnulib/import/m4/getdtablesize.m4: Update.
2584         * gnulib/import/m4/getlogin.m4: Update.
2585         * gnulib/import/m4/getlogin_r.m4: Update.
2586         * gnulib/import/m4/getpagesize.m4: Update.
2587         * gnulib/import/m4/getprogname.m4: Update.
2588         * gnulib/import/m4/gettimeofday.m4: Update.
2589         * gnulib/import/m4/glibc21.m4: Update.
2590         * gnulib/import/m4/glob.m4: Update.
2591         * gnulib/import/m4/glob_h.m4: Update.
2592         * gnulib/import/m4/gnulib-cache.m4: Update.
2593         * gnulib/import/m4/gnulib-common.m4: Update.
2594         * gnulib/import/m4/gnulib-comp.m4: Update.
2595         * gnulib/import/m4/gnulib-tool.m4: Update.
2596         * gnulib/import/m4/hard-locale.m4: Update.
2597         * gnulib/import/m4/include_next.m4: Update.
2598         * gnulib/import/m4/inttypes-pri.m4: Update.
2599         * gnulib/import/m4/inttypes.m4: Update.
2600         * gnulib/import/m4/isnand.m4: Update.
2601         * gnulib/import/m4/isnanl.m4: Update.
2602         * gnulib/import/m4/largefile.m4: Update.
2603         * gnulib/import/m4/limits-h.m4: Update.
2604         * gnulib/import/m4/localcharset.m4: Update.
2605         * gnulib/import/m4/locale-fr.m4: Update.
2606         * gnulib/import/m4/locale-ja.m4: Update.
2607         * gnulib/import/m4/locale-zh.m4: Update.
2608         * gnulib/import/m4/localtime-buffer.m4: Update.
2609         * gnulib/import/m4/longlong.m4: Update.
2610         * gnulib/import/m4/lstat.m4: Update.
2611         * gnulib/import/m4/malloc.m4: Update.
2612         * gnulib/import/m4/malloca.m4: Update.
2613         * gnulib/import/m4/math_h.m4: Update.
2614         * gnulib/import/m4/mbrtowc.m4: Update.
2615         * gnulib/import/m4/mbsinit.m4: Update.
2616         * gnulib/import/m4/mbsrtowcs.m4: Update.
2617         * gnulib/import/m4/mbstate_t.m4: Update.
2618         * gnulib/import/m4/memchr.m4: Update.
2619         * gnulib/import/m4/memmem.m4: Update.
2620         * gnulib/import/m4/mempcpy.m4: Update.
2621         * gnulib/import/m4/memrchr.m4: Update.
2622         * gnulib/import/m4/mkdir.m4: Update.
2623         * gnulib/import/m4/mkstemp.m4: Update.
2624         * gnulib/import/m4/mmap-anon.m4: Update.
2625         * gnulib/import/m4/mode_t.m4: Update.
2626         * gnulib/import/m4/msvc-inval.m4: Update.
2627         * gnulib/import/m4/msvc-nothrow.m4: Update.
2628         * gnulib/import/m4/multiarch.m4: Update.
2629         * gnulib/import/m4/nocrash.m4: Update.
2630         * gnulib/import/m4/off_t.m4: Update.
2631         * gnulib/import/m4/onceonly.m4: Update.
2632         * gnulib/import/m4/open-cloexec.m4: Update.
2633         * gnulib/import/m4/open.m4: Update.
2634         * gnulib/import/m4/openat.m4: Update.
2635         * gnulib/import/m4/opendir.m4: Update.
2636         * gnulib/import/m4/pathmax.m4: Update.
2637         * gnulib/import/m4/rawmemchr.m4: Update.
2638         * gnulib/import/m4/readdir.m4: Update.
2639         * gnulib/import/m4/readlink.m4: Update.
2640         * gnulib/import/m4/realloc.m4: Update.
2641         * gnulib/import/m4/rename.m4: Update.
2642         * gnulib/import/m4/rewinddir.m4: Update.
2643         * gnulib/import/m4/rmdir.m4: Update.
2644         * gnulib/import/m4/save-cwd.m4: Update.
2645         * gnulib/import/m4/secure_getenv.m4: Update.
2646         * gnulib/import/m4/setenv.m4: Update.
2647         * gnulib/import/m4/signal_h.m4: Update.
2648         * gnulib/import/m4/ssize_t.m4: Update.
2649         * gnulib/import/m4/stat-time.m4: Update.
2650         * gnulib/import/m4/stat.m4: Update.
2651         * gnulib/import/m4/std-gnu11.m4: Update.
2652         * gnulib/import/m4/stdbool.m4: Update.
2653         * gnulib/import/m4/stddef_h.m4: Update.
2654         * gnulib/import/m4/stdint.m4: Update.
2655         * gnulib/import/m4/stdio_h.m4: Update.
2656         * gnulib/import/m4/stdlib_h.m4: Update.
2657         * gnulib/import/m4/strchrnul.m4: Update.
2658         * gnulib/import/m4/strdup.m4: Update.
2659         * gnulib/import/m4/strerror.m4: Update.
2660         * gnulib/import/m4/string_h.m4: Update.
2661         * gnulib/import/m4/strstr.m4: Update.
2662         * gnulib/import/m4/strtok_r.m4: Update.
2663         * gnulib/import/m4/sys_socket_h.m4: Update.
2664         * gnulib/import/m4/sys_stat_h.m4: Update.
2665         * gnulib/import/m4/sys_time_h.m4: Update.
2666         * gnulib/import/m4/sys_types_h.m4: Update.
2667         * gnulib/import/m4/tempname.m4: Update.
2668         * gnulib/import/m4/time_h.m4: Update.
2669         * gnulib/import/m4/unistd-safer.m4: Update.
2670         * gnulib/import/m4/unistd_h.m4: Update.
2671         * gnulib/import/m4/warn-on-use.m4: Update.
2672         * gnulib/import/m4/wchar_h.m4: Update.
2673         * gnulib/import/m4/wchar_t.m4: Update.
2674         * gnulib/import/m4/wctype_h.m4: Update.
2675         * gnulib/import/m4/wint_t.m4: Update.
2676         * gnulib/import/malloc.c: Update.
2677         * gnulib/import/malloc/scratch_buffer.h: Update.
2678         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
2679         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
2680         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
2681         * gnulib/import/malloca.c: Update.
2682         * gnulib/import/malloca.h: Update.
2683         * gnulib/import/malloca.valgrind: Update.
2684         * gnulib/import/math.in.h: Update.
2685         * gnulib/import/mbrtowc.c: Update.
2686         * gnulib/import/mbsinit.c: Update.
2687         * gnulib/import/mbsrtowcs-impl.h: Update.
2688         * gnulib/import/mbsrtowcs-state.c: Update.
2689         * gnulib/import/mbsrtowcs.c: Update.
2690         * gnulib/import/memchr.c: Update.
2691         * gnulib/import/memmem.c: Update.
2692         * gnulib/import/mempcpy.c: Update.
2693         * gnulib/import/memrchr.c: Update.
2694         * gnulib/import/mkdir.c: Update.
2695         * gnulib/import/mkstemp.c: Update.
2696         * gnulib/import/msvc-inval.c: Update.
2697         * gnulib/import/msvc-inval.h: Update.
2698         * gnulib/import/msvc-nothrow.c: Update.
2699         * gnulib/import/msvc-nothrow.h: Update.
2700         * gnulib/import/open.c: Update.
2701         * gnulib/import/openat-die.c: Update.
2702         * gnulib/import/openat-priv.h: Update.
2703         * gnulib/import/openat-proc.c: Update.
2704         * gnulib/import/openat.c: Update.
2705         * gnulib/import/openat.h: Update.
2706         * gnulib/import/opendir.c: Update.
2707         * gnulib/import/pathmax.h: Update.
2708         * gnulib/import/pipe-safer.c: Update.
2709         * gnulib/import/rawmemchr.c: Update.
2710         * gnulib/import/readdir.c: Update.
2711         * gnulib/import/readlink.c: Update.
2712         * gnulib/import/realloc.c: Update.
2713         * gnulib/import/ref-add.sin: Update.
2714         * gnulib/import/ref-del.sin: Update.
2715         * gnulib/import/rename.c: Update.
2716         * gnulib/import/rewinddir.c: Update.
2717         * gnulib/import/rmdir.c: Update.
2718         * gnulib/import/same-inode.h: Update.
2719         * gnulib/import/save-cwd.c: Update.
2720         * gnulib/import/save-cwd.h: Update.
2721         * gnulib/import/scratch_buffer.h: Update.
2722         * gnulib/import/secure_getenv.c: Update.
2723         * gnulib/import/setenv.c: Update.
2724         * gnulib/import/signal.in.h: Update.
2725         * gnulib/import/stat-time.c: Update.
2726         * gnulib/import/stat-time.h: Update.
2727         * gnulib/import/stat-w32.c: Update.
2728         * gnulib/import/stat-w32.h: Update.
2729         * gnulib/import/stat.c: Update.
2730         * gnulib/import/stdbool.in.h: Update.
2731         * gnulib/import/stddef.in.h: Update.
2732         * gnulib/import/stdint.in.h: Update.
2733         * gnulib/import/stdio.in.h: Update.
2734         * gnulib/import/stdlib.in.h: Update.
2735         * gnulib/import/str-two-way.h: Update.
2736         * gnulib/import/strchrnul.c: Update.
2737         * gnulib/import/strdup.c: Update.
2738         * gnulib/import/streq.h: Update.
2739         * gnulib/import/strerror-override.c: Update.
2740         * gnulib/import/strerror-override.h: Update.
2741         * gnulib/import/strerror.c: Update.
2742         * gnulib/import/string.in.h: Update.
2743         * gnulib/import/stripslash.c: Update.
2744         * gnulib/import/strnlen1.c: Update.
2745         * gnulib/import/strnlen1.h: Update.
2746         * gnulib/import/strstr.c: Update.
2747         * gnulib/import/strtok_r.c: Update.
2748         * gnulib/import/sys_stat.in.h: Update.
2749         * gnulib/import/sys_time.in.h: Update.
2750         * gnulib/import/sys_types.in.h: Update.
2751         * gnulib/import/tempname.c: Update.
2752         * gnulib/import/tempname.h: Update.
2753         * gnulib/import/time.in.h: Update.
2754         * gnulib/import/unistd--.h: Update.
2755         * gnulib/import/unistd-safer.h: Update.
2756         * gnulib/import/unistd.in.h: Update.
2757         * gnulib/import/unsetenv.c: Update.
2758         * gnulib/import/verify.h: Update.
2759         * gnulib/import/extra/snippet/warn-on-use.h: Update.
2760         * gnulib/import/wchar.in.h: Update.
2761         * gnulib/import/wctype.in.h: Update.
2762         * gnulib/import/xalloc-oversized.h: Update.
2763         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
2764         "53e2c179f26a890fa6685af4b6c1397ee370433b".
2765
2766 2018-08-16  Gary Benson <gbenson@redhat.com>
2767
2768         PR gdb/13000:
2769         * gdb/main.c (captured_main_1): Exit with nonzero status
2770         in batch mode if the last command to be executed failed.
2771         * NEWS: Mention the above.
2772
2773 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
2774
2775         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
2776         end of warning message.
2777
2778 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2779
2780         PR gdb/22943:
2781         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
2782         (aarch64_extract_return_value): Use
2783         aapcs_is_vfp_call_or_return_candidate.
2784         (aarch64_return_in_memory): Likewise.
2785         (aarch64_store_return_value): Likewise.
2786
2787 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2788
2789         * aarch64-tdep.c
2790         (aapcs_is_vfp_call_or_return_candidate): Make static
2791         (pass_in_v_or_stack): Remove function.
2792         (pass_in_v_vfp_candidate): New function.
2793         (aarch64_push_dummy_call): Check for float register candidates.
2794
2795 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2796
2797         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
2798         (aapcs_is_vfp_call_or_return_candidate_1): New function.
2799         (aapcs_is_vfp_call_or_return_candidate): Likewise.
2800
2801 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
2802
2803         PR build/23399
2804         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
2805         (struct ipa_sym_addresses): Rename to...
2806         (struct ipa_sym_addresses_common): ... this.
2807         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
2808
2809 2018-08-28  Tom Tromey  <tom@tromey.com>
2810
2811         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2812         (token_fifo): Now a std::vector.
2813         (yylex, c_parse): Update.
2814         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2815         (token_fifo): Now a std::vector.
2816         (yylex, d_parse): Update.
2817         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2818         (token_fifo): Now a std::vector.
2819         (yylex, go_parse): Update.
2820
2821 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
2822
2823         * parser-defs.h (struct type_stack) <elements>: Change type to
2824         std::vector<union type_stack_elt>.
2825         <depth, size>: Remove.
2826         * parse.c (parse_exp_in_context_1): Adjust.
2827         (type_stack_reserve): Remove.
2828         (check_type_stack_depth): Remove.
2829         (insert_into_type_stack): Adjust to std::vector.
2830         (insert_type): Likewise.
2831         (push_type): Likewise.
2832         (push_type_int): Likewise.
2833         (insert_type_address_space): Likewise.
2834         (pop_type): Likewise.
2835         (pop_type_int): Likewise.
2836         (pop_typelist): Likewise.
2837         (pop_type_stack): Likewise.
2838         (append_type_stack): Likewise.
2839         (push_type_stack): Likewise.
2840         (get_type_stack): Likewise.
2841         (type_stack_cleanup): Likewise.
2842         (push_typelist): Likewise.
2843         (follow_types): Likewise.
2844         (_initialize_parse): Likewise.
2845
2846 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
2847
2848         * NEWS: Mention csky target.
2849
2850 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
2851             Hafiz Abid Qadeer  <abidh@codesourcery.com>
2852             Don Breazeal  <donb@codesourcery.com>
2853
2854         * csky-linux-tdep.c: New file.
2855         * csky-tdep.c: Likewise.
2856         * csky-tdep.h: Likewise.
2857         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
2858         csky-tdep.o.
2859         (HFILES_NO_SRCDIR): Add csky-tdep.h.
2860         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
2861         * configure.tgt: Add csky support.
2862
2863 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
2864
2865         * python/py-framefilter.c (py_print_frame): Print frame architecture
2866         when printing on an MI output.
2867
2868 2018-08-27  Tom Tromey  <tom@tromey.com>
2869
2870         PR build/23087:
2871         * configure: Rebuild.
2872         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
2873
2874 2018-08-27  Tom Tromey  <tom@tromey.com>
2875
2876         * aarch64-linux-tdep.c
2877         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
2878         casts to int.
2879
2880 2018-08-27  Tom Tromey  <tom@tromey.com>
2881
2882         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
2883         unsigned.
2884         (ppc64_standard_linkage1, ppc64_standard_linkage2)
2885         (ppc64_standard_linkage3, ppc64_standard_linkage4)
2886         (ppc64_standard_linkage5, ppc64_standard_linkage6)
2887         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
2888         unsigned.
2889
2890 2018-08-27  Tom Tromey  <tom@tromey.com>
2891
2892         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
2893         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
2894
2895 2018-08-27  Tom Tromey  <tom@tromey.com>
2896
2897         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
2898         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
2899         ULONGEST_MAX.
2900         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
2901         ULONGEST_MAX.
2902         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
2903         ULONGEST_MAX.
2904         * sparc-linux-tdep.c (sparc32_linux_sigframe)
2905         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
2906         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
2907         ULONGEST_MAX.
2908         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
2909         (ppc64_linux_sigaction_tramp_frame)
2910         (ppc32_linux_sighandler_tramp_frame)
2911         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
2912         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
2913         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
2914         * mn10300-linux-tdep.c (am33_linux_sigframe)
2915         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
2916         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
2917         * mips-linux-tdep.c (mips_linux_o32_sigframe)
2918         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
2919         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
2920         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
2921         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
2922         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
2923         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
2924         * microblaze-linux-tdep.c
2925         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
2926         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
2927         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
2928         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
2929         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
2930         * common/common-types.h (ULONGEST_MAX): New define.
2931         (CORE_ADDR_MAX): Fix formatting.
2932         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
2933         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
2934         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
2935         (arm_linux_rt_sigreturn_tramp_frame)
2936         (arm_eabi_linux_sigreturn_tramp_frame)
2937         (arm_eabi_linux_rt_sigreturn_tramp_frame)
2938         (thumb2_eabi_linux_sigreturn_tramp_frame)
2939         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
2940         (arm_linux_restart_syscall_tramp_frame)
2941         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
2942         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
2943         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
2944         ULONGEST_MAX.
2945         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
2946
2947 2018-08-27  Tom Tromey  <tom@tromey.com>
2948
2949         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
2950         CORE_ADDR_MAX.
2951         * mips-tdep.c (mips_deal_with_atomic_sequence)
2952         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
2953         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
2954         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
2955         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
2956         CORE_ADDR_MAX.
2957         * aarch64-tdep.c (aarch64_software_single_step): Use
2958         CORE_ADDR_MAX.
2959
2960 2018-08-27  Tom Tromey  <tom@tromey.com>
2961
2962         * linespec.c (complete_linespec_component): Add cast to "char".
2963         * completer.c (completion_tracker::build_completion_result): Add
2964         cast to "char".
2965
2966 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
2967
2968         * solist.h (struct solist, struct target_so_ops): Fix
2969         indentation.
2970
2971 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
2972
2973         * ada-tasks.c (ada_task_info_s): Remove typedef.
2974         (DEF_VEC_O(ada_task_info_s)): Remove.
2975         (struct ada_tasks_inferior_data): Initialize fields.
2976         <task_list>: Make an std::vector.
2977         (get_ada_tasks_inferior_data): Allocate with new.
2978         (ada_get_task_number): Adjust.
2979         (get_task_number_from_id): Likewise.
2980         (valid_task_id): Likewise.
2981         (ada_get_task_info_from_ptid): Likewise.
2982         (iterate_over_live_ada_tasks): Likewise.
2983         (add_ada_task): Likewise.
2984         (read_known_tasks): Likewise.
2985         (ada_build_task_list): Likewise.
2986         (print_ada_task_info): Likewise.
2987         (info_task): Likewise.
2988         (task_command_1): Likewise.
2989
2990 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
2991
2992         * ada-lang.c (add_angle_brackets): Return std::string.
2993
2994 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
2995
2996         * python/py-threadevent.c (py_get_event_thread): Initialize
2997         pythread.
2998
2999 2018-08-24  Pedro Alves  <palves@redhat.com>
3000
3001         * python/py-bpevent.c (create_breakpoint_event_object): Use
3002         copy-initialization.
3003         * python/py-continueevent.c (emit_continue_event): Use
3004         copy-initialization.
3005         * python/py-exitedevent.c (create_exited_event_object): Return a
3006         gdbpy_ref<>.
3007         (emit_exited_event): Use copy-initialization.
3008         * python/py-inferior.c (python_new_inferior)
3009         (python_inferior_deleted, add_thread_object): Use
3010         copy-initialization.
3011         * python/py-infevents.c (create_inferior_call_event_object)
3012         (create_register_changed_event_object)
3013         (create_memory_changed_event_object): Return a gdbpy_ref<>.
3014         (emit_inferior_call_event, emit_memory_changed_event)
3015         (emit_register_changed_event): Use copy-initialization.
3016         * python/py-newobjfileevent.c (create_new_objfile_event_object):
3017         Return a gdbpy_ref<>.
3018         (emit_new_objfile_event): Use copy-initialization.
3019         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
3020         (emit_clear_objfiles_event): Use copy-initialization.
3021         * python/py-signalevent.c (create_signal_event_object): Use
3022         copy-initialization.
3023         * python/py-threadevent.c (create_thread_event_object): Use
3024         copy-initialization.
3025
3026 2018-08-24  Pedro Alves  <palves@redhat.com>
3027             Simon Marchi  <simon.marchi@ericsson.com>
3028
3029         PR gdb/23379
3030         * python/py-continueevent.c: Include "gdbthread.h".
3031         (create_continue_event_object): Add intro comment.  Add 'ptid'
3032         parameter.  Use it to find thread to pass to
3033         create_thread_event_object.
3034         (emit_continue_event): Pass PTID down to
3035         create_continue_event_object.
3036         * python/py-event.h (py_get_event_thread): Declare.
3037         (create_thread_event_object): Remove default from 'thread'
3038         parameter.
3039         * python/py-stopevent.c (create_stop_event_object): Use
3040         py_get_event_thread.
3041         * python/py-threadevent.c (get_event_thread): Rename to ...
3042         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
3043         and use it to find the thread.
3044         (create_thread_event_object): Assert that THREAD isn't null.
3045         Don't find the event thread here.
3046
3047 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
3048
3049         * block.h (blockrange, blockranges): New struct declarations.
3050         (struct block): Add new field named `ranges'.
3051         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
3052         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
3053         macros for accessing ranges in struct block.
3054         (make_blockranges): New declaration.
3055         block.c (make_blockranges): New function.
3056         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
3057         for block.
3058         * symtab.h (find_pc_partial_function): Add new parameter `block'.
3059         * blockframe.c (cache_pc_function_block): New static global.
3060         (clear_pc_function_cache): Clear cache_pc_function_block.
3061         (find_pc_partial_function): Move comment to symtab.h.  Add
3062         support for non-contiguous blocks.
3063         * cli/cli-cmds.c (block.h): Include.
3064         (print_disassembly): Handle printing of non-contiguous blocks.
3065         (disassemble_current_function): Likewise.
3066         (disassemble_command): Likewise.
3067
3068         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
3069         BLOCK_START.
3070         * blockframe.c (get_pc_function_start): Likewise.
3071         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
3072         (gcc_symbol_address): Likewise.
3073         * compile/compile-object-run.c (compile_object_run): Likewise.
3074         * compile/compile.c (get_expr_block_and_pc): Likewise.
3075         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
3076         (func_addr_to_tail_call_list): Likewise.
3077         * findvar.c (default_read_var_value): Likewise.
3078         * inline-frame.c (inline_frame_this_id): Likewise.
3079         (skip-inline_frames): Likewise.
3080         * infcmd.c (until_next_command): Likewise.
3081         * linespec.c (convert_linespec_to_sals): Likewise.
3082         * parse.c (parse_exp_in_context_1): Likewise.
3083         * printcmd.c (build_address_symbolic): likewise.
3084         (info_address_command): Likewise.
3085         symtab.c (find_function_start_sal): Likewise.
3086         (skip_prologue_sal): Likewise.
3087         (find_function_alias_target): Likewise.
3088         (find_gnu_ifunc): Likewise.
3089         * stack.c (find_frame_funname): Likewise.
3090         * symtab.c (fixup_symbol_section): Likewise.
3091         (find_function_start_sal): Likewise.
3092         (skip_prologue_sal): Likewsie.
3093         (find_function_alias_target): Likewise.
3094         (find_gnu_ifunc): Likewise.
3095         * tracepoint.c (info_scope_command): Likewise.
3096         * value.c (value_fn_field): Likewise.
3097
3098         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
3099         in place of find_pc_partial_function.
3100         * blockframe.c (find_function_entry_range_from_pc): New function.
3101         * symtab.h (find_function_entry_range_from_pc): Declare and document.
3102         * objfiles.c (objfile_relocate1): Relocate start and end addresses
3103         for each range in a block.
3104
3105
3106 2018-08-23  Xavier Roirand  <roirand@adacore.com>
3107
3108         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
3109         incrementation.
3110
3111 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3112
3113         * solib-svr4.c (read_program_headers_from_bfd): Return
3114         gdb::optional<gdb::byte_vector>.
3115         (svr4_exec_displacement): Adjust.
3116
3117 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3118
3119         * solib-svr4.c (read_program_header): Return
3120         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
3121         (find_program_interpreter): Return
3122         gdb::optional<gdb::byte_vector>.
3123         (scan_dyntag_auxv): Adjust.
3124         (enable_break): Adjust.
3125         (svr4_exec_displacement): Adjust.
3126
3127 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3128
3129         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
3130         * inf-child.c (inf_child_target::terminal_save_inferior): New.
3131
3132 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3133
3134         * guile/scm-string.c (gdbscm_scm_from_printf): Use
3135         string_vprintf.
3136         * guile/scm-utils.c (gdbscm_printf): Likewise.
3137         * serial.c (serial_printf): Likewise.
3138         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
3139
3140 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
3141
3142         * stack.c (print_frame): Print frame architecture when printing on
3143         an MI output.
3144         * NEWS: Mention new "arch" attribute in frame output.
3145
3146 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3147
3148         * arch/aarch64.h (aarch64_regnum): Update comment.
3149
3150 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3151
3152         * NEWS: Add SVE to 8.2 section.
3153
3154 2018-08-21  Pedro Alves  <palves@redhat.com>
3155
3156         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
3157         out from gdbscm_parse_function_args.
3158         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
3159         gdbscm_parse_function_args_1.
3160
3161 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
3162
3163         PR gdb/17816
3164         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
3165         operator.
3166
3167 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
3168
3169         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
3170
3171 2018-08-19  Michael Spang  <spang@google.com>
3172
3173         PR gdb/11786
3174         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
3175         for PT_TLS segments.
3176
3177 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
3178
3179         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
3180         dwarf_variable_value.
3181         * dwarf2-frame.c (class dwarf_expr_executor):
3182         Add override for dwarf_variable_value.
3183         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
3184         (class symbol_needs_eval_context): Likewise.
3185         (indirect_synthetic_pointer): Add forward declaration.
3186         (sect_variable_value): New function.
3187         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
3188         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
3189         for DW_OP_GNU_variable_value.
3190
3191 2018-08-16  Tom Tromey  <tom@tromey.com>
3192
3193         * top.c (read_command_file): Update.
3194         (command_line_input): Remove "repeat" argument.
3195         * ada-lang.c (get_selections): Update.
3196         * linespec.c (decode_line_2): Update.
3197         * defs.h (command_line_input): Remove argument.
3198         * cli/cli-script.c (read_next_line): Update.
3199         * python/py-gdb-readline.c: Update.
3200
3201 2018-08-17  Tom Tromey  <tom@tromey.com>
3202
3203         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
3204         command_line_input.
3205
3206 2018-08-15  Tom Tromey  <tom@tromey.com>
3207
3208         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
3209
3210 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
3211
3212         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
3213         If used, use find_pc_partial_function to find address range
3214         to disassemble.
3215         * mi/mi-main.c (mi_cmd_list_features): Report
3216         "data-disassemble-a-option" feature.
3217         * NEWS: Mention new -data-disassemble option -a.
3218
3219 2018-08-13  Tom Tromey  <tom@tromey.com>
3220
3221         * common/common-defs.h (_FORTIFY_SOURCE): Define.
3222
3223 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3224
3225         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
3226         (aarch64_linux_collect_sve_regset): Likewise.
3227         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
3228         * regcache.h (regcache_map_entry_size): New function.
3229
3230 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3231
3232         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
3233         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
3234         (SVE_HEADER_VL_LENGTH): Likewise.
3235         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
3236         (SVE_HEADER_FLAGS_LENGTH): Likewise.
3237         (SVE_HEADER_RESERVED_LENGTH): Likewise.
3238         (SVE_HEADER_SIZE_OFFSET): Likewise.
3239         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
3240         (SVE_HEADER_VL_OFFSET): Likewise.
3241         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
3242         (SVE_HEADER_FLAGS_OFFSET): Likewise.
3243         (SVE_HEADER_RESERVED_OFFSET): Likewise.
3244         (SVE_HEADER_SIZE): Likewise.
3245         (aarch64_linux_core_read_vq): Add function.
3246         (aarch64_linux_core_read_description): Check for SVE section.
3247
3248 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3249
3250         * aarch64-fbsd-tdep.c
3251         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
3252         collect_size.
3253         * aarch64-linux-tdep.c
3254         (aarch64_linux_iterate_over_regset_sections): Likewise.
3255         * alpha-linux-tdep.c
3256         (alpha_linux_iterate_over_regset_sections):
3257         * alpha-nbsd-tdep.c
3258         (alphanbsd_iterate_over_regset_sections): Likewise.
3259         * amd64-fbsd-tdep.c
3260         (amd64fbsd_iterate_over_regset_sections): Likewise.
3261         * amd64-linux-tdep.c
3262         (amd64_linux_iterate_over_regset_sections): Likewise.
3263         * arm-bsd-tdep.c
3264         (armbsd_iterate_over_regset_sections): Likewise.
3265         * arm-fbsd-tdep.c
3266         (arm_fbsd_iterate_over_regset_sections): Likewise.
3267         * arm-linux-tdep.c
3268         (arm_linux_iterate_over_regset_sections): Likewise.
3269         * corelow.c (get_core_registers_cb): Likewise.
3270         (core_target::fetch_registers): Likewise.
3271         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
3272         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
3273         * gdbarch.h (void): Regenerate.
3274         * gdbarch.sh: Add supply_size and collect_size.
3275         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
3276         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
3277         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
3278         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
3279         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
3280         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
3281         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
3282         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
3283         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
3284         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
3285         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
3286         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
3287         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
3288         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
3289         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections): Likewise.
3290         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
3291         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
3292         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
3293         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
3294         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
3295         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
3296         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections): Likewise.
3297         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
3298         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
3299         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
3300         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
3301         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
3302         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
3303         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
3304         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
3305
3306 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
3307
3308         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
3309         with string_printf.
3310
3311 2018-08-10  Keith Seitz  <keiths@redhat.com>
3312
3313         * compile/compile-c-support.c (add_code_header, add_code_footer):
3314         Move into policy class.
3315         (c_push_user_expression, pop_user_expression_nop)
3316         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
3317         (compile_program): New host class.
3318         (c_compile_program): New typedef.
3319         (c_compute_porgram): Use c_compile_program.
3320
3321 2018-08-10  Keith Seitz  <keiths@redhat.com>
3322
3323         * compile/compile-internal.h (compile_instance::~compile_instance):
3324         Remove calls to htab_delete.
3325         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
3326         * compile.c (compile_instance::compile_instance): Initialize
3327         htab unique pointers.
3328         (compile_instance::get_cached_type, compile_instance::insert_type)
3329         (compile_instance::error_symbol_once): Update for unique_ptr.
3330
3331 2018-08-10  Keith Seitz  <keiths@redhat.com>
3332
3333         * compile/compile-c-symbols.c (struct symbol_error)
3334         (hash_symbol_error, eq_symbol_error, del_symbol_error)
3335         (compile_instance::insert_symbol_error)
3336         (compile_instance::error_symbol_once): Move to ...
3337         * compile/compile.c: ... here.
3338
3339 2018-08-10  Keith Seitz  <keiths@redhat.com>
3340
3341         * compile/compile-c-support.c (c_get_compile_context): Use `new'
3342         instead of `new_compile_instance'.
3343         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
3344         Update description.
3345         If the symbol error map is not initialized, create it.
3346         (generate_c_for_for_one_symbol): Do not check/initialize
3347         the symbol error map.
3348         * compile/compile-c-types.c (compile_c_instance): Make a class.
3349         Update all callers.
3350         (compile_instance::compile_instance): Initialize the type cache.
3351         (get_cached_type): New function.
3352         (insert_type): Update description.
3353         (compile_c_instance::m_default_cflags): Define.
3354         (convert_type): Update description.  Use get_cached_type.
3355         (delete_instance): Moved to destructor.
3356         (new_compile_instance): Moved to constructor.
3357         * compile/compile-c.h (compile_c_instance): Make class inheriting
3358         from compile_instance.
3359         <base>: Remove field.
3360         <type_map, symbol_err_map>: Move to base class.
3361         <c_plugin>: Rename to `m_plugin' and remove pointer type.
3362         * compile/compile-internal.h (compile_instance): Make class.
3363         <type_map_t, symbol_err_map_t>: Define.
3364         <fe>: Rename to `m_gcc_fe'.
3365         <scope, block, gcc_target_options>: Add `m_' prefix.
3366         <m_type_map, m_symbol_err_map>: New fields, moved from
3367         compile_c_instance.
3368         <destroy>: Remove.
3369         (convert_type, new_compile_instance): Remove.
3370         * compile/compile.c (cleanup_compile_instance): Remove.
3371         (compile_to_object): Use unique_ptr to eliminate cleanups.
3372         (compile_instance::set_print_callback, compile_instance::version)
3373         (compile_instance::set_verbose)
3374         (compile_instance::set_driver_filename)
3375         (compile_instance::set_triplet_regexp)
3376         (compile_instance::set_arguments)
3377         (compile_instance::set_source_file)
3378         (compile_instance::compile): Define.
3379
3380 2018-08-10  Keith Seitz  <keiths@redhat.com>
3381
3382         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
3383         * compile/compile-c-types.c: Define GCC_METHODN macros and include
3384         gcc-c-fe.def to define C plugin.
3385         (delete_instance): Delete `c_plugin'.
3386         (new_compile_instance): Initialize `c_plugin'.
3387         * compile/compile-c.h: Include gcc_c_plugin.h.
3388         (struct compile_c_instance) <c_plugin>: New member.
3389         * gcc-c-plugin.h: New file.
3390         Update all callers with API change.
3391
3392 2018-08-10  Keith Seitz  <keiths@redhat.com>
3393
3394         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
3395         (HFILES_NO_SRCDIR): ... to here.
3396         Add compile-internal.h and compile-c.h.
3397         * compile/compile-c-support.c: Include compile-c.h.
3398         * compile/compile-c-symbols.c: Include compile-c.h.
3399         (generate_c_for_variable_locations): Update comment.
3400         * compile/compile-c-types.c: Include compile-c.h.
3401         * compile/compile-c.h: New file -- moved C language declarations
3402         from other files here.
3403         * compile/compile-internal.h: Do not include hashtab.h or
3404         common/enum-flags.h.
3405         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
3406         (gcc_convert_symbol, gcc_symbol_address)
3407         (generate_c_for_variable_locations, c_get_mode_for_size)
3408         (c_get_range_decl_name): Definitions moved to compile-c.h.
3409         * compile/compile-loc2c.c: Include compile-c.h.
3410
3411 2018-08-10  Keith Seitz  <keiths@redhat.com>
3412
3413         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
3414         (c_symbol_substitution_name): ... this.
3415         Update all callers.
3416
3417 2018-08-10  Keith Seitz  <keiths@redhat.com>
3418
3419         * compile/compile-c-support.c (c_compute_program): Use
3420         unique_xmalloc_ptr to eliminate cleanup.
3421         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
3422         Return a unique_xmalloc_ptr and eliminate cleanup.
3423         * compile/compile-internal.h (generate_c_for_variable_locations):
3424         Return unique_xmalloc_ptr and update description.
3425
3426 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
3427
3428         * corelow.c (core_target::get_core_register_section): Rename
3429         min_size to section_min_size.
3430
3431 2018-08-09  Jim Wilson  <jimw@sifive.com>
3432
3433         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
3434         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
3435         * NEWS: Mention new GNU/Linux RISC-V target.
3436         * configure.host: Add riscv*-*-linux*.
3437         * configure.nat: Add riscv*.
3438         * configure.tgt: Add riscv*-*-linux*.
3439         * riscv-linux-nat.c: New file.
3440         * riscv-linux-tdep.c: New file.
3441
3442 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3443
3444         * infrun.c (resume): Make static, add forward declaration.
3445         (proceed): Update header comment.
3446         * infrun.h (resume): Delete declaration.
3447
3448 2018-08-09  Tom Tromey  <tom@tromey.com>
3449
3450         * riscv-tdep.h: Minor formatting fixes.
3451
3452 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
3453
3454         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
3455         * dwarf-index-cache.c (create_dir_and_check): Likewise.
3456         (test_mkdir_recursive): Likewise.
3457         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
3458
3459 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3460
3461         * valarith.c (value_subscripted_rvalue): If an array is not in
3462         memory, and we don't know the upper bound, then we can't know that
3463         the requested element exists or not.
3464
3465 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
3466
3467         * target.c (str_comma_list_concat_elem): Fix typo in comment.
3468         (target_options_to_string): Add comment.
3469
3470 2018-08-08  Tom Tromey  <tom@tromey.com>
3471
3472         * unittests/scoped_mmap-selftests.c: Check result of "write".
3473
3474 2018-08-08  Jim Wilson  <jimw@sifive.com>
3475
3476         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
3477         (decode_register_index_short): New.
3478         (decode_j_type_insn, decode_cj_type_insn): New.
3479         (decode_b_type_insn, decode_cb_type_insn): New.
3480         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
3481         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
3482         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
3483         is_c_sw_insn instead of is_sw_insn.
3484         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
3485         (riscv_software_single_step): New.
3486         * riscv-tdep.h (riscv_software_single_step): Declare.
3487
3488         * riscv-tdep.c (riscv_isa_xlen): Drop static.
3489         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
3490
3491 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
3492
3493         PR gdb/18050:
3494         * target.c (dispose_inferior): Don't dispose of inferiors that are
3495         already killed.
3496
3497 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
3498
3499         * remote.c (remote_target::download_tracepoint): Change char* to
3500         const char*.
3501
3502 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
3503
3504         * target.h (target_options_to_string): Return an std::string.
3505         * target.c (str_comma_list_concat_elem): Return void, use
3506         std::string.
3507         (do_option): Likewise.
3508         (target_options_to_string): Return an std::string.
3509         * linux-nat.c (linux_nat_target::wait): Adjust.
3510         * target-debug.h (target_debug_print_options): Adjust.
3511
3512 2018-08-07  Tom Tromey  <tom@tromey.com>
3513
3514         * Makefile.in (CPPFLAGS): New variable.
3515         (INTERNAL_CPPFLAGS): Use it.
3516
3517 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3518
3519         * NEWS: Mention the index cache.
3520
3521 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3522
3523         * common/pathstuff.h (get_standard_cache_dir): New.
3524         * common/pathstuff.c (get_standard_cache_dir): New.
3525         * build-id.h (build_id_to_string): New.
3526         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
3527         DEBUG_STR_SUFFIX): Move to here.
3528         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
3529         DEBUG_STR_SUFFIX): Move from there.
3530         (write_psymtabs_to_index): Make non-static, add basename
3531         parameter.  Write to temporary files, rename when done.
3532         (save_gdb_index_command): Adjust call to
3533         write_psymtabs_to_index.
3534         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
3535         field.
3536         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
3537         (get_gdb_index_contents_from_cache): New.
3538         (get_gdb_index_contents_from_cache_dwz): New.
3539         (dwarf2_initialize_objfile): Read index from cache.
3540         (dwarf2_build_psymtabs): Save to index.
3541         * dwarf-index-cache.h: New file.
3542         * dwarf-index-cache.c: New file.
3543         * dwarf-index-write.h: New file.
3544
3545 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3546
3547         * gnulib/aclocal.m4: Re-generate.
3548         * gnulib/config.in: Re-generate.
3549         * gnulib/configure: Re-generate.
3550         * gnulib/import/Makefile.am: Re-generate.
3551         * gnulib/import/Makefile.in: Re-generate.
3552         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
3553         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
3554         * gnulib/import/m4/mkdir.m4: New file.
3555         * gnulib/import/mkdir.c: New file.
3556         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
3557         module.
3558
3559 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3560
3561         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
3562         * common/scoped_mmap.c: New file.
3563         * common/scoped_mmap.h (destroy): New method.
3564         (~scoped_mmap, reset): Use destroy.
3565         (scoped_mmap): New move constructor.
3566         (mmap_file): New declaration.
3567         * unittests/scoped_mmap-selftests.c (test_normal,
3568         test_invalid_filename, run_tests): New functions.
3569         (_initialize_scoped_mmap_selftests): Register selftest.
3570
3571 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3572
3573         * dwarf2read.c (read_gdb_index_from_section): Rename to...
3574         (read_gdb_index_from_buffer): ... this.  Remove section
3575         parameter, add buffer parameter.
3576         (get_gdb_index_contents_ftype,
3577         get_gdb_index_contents_dwz_ftype): New typedefs.
3578         (dwarf2_read_gdb_index): Add callback parameters to get the
3579         index contents.
3580         (get_gdb_index_contents_from_section): New.
3581         (dwarf2_initialize_objfile): Update call to
3582         dwarf2_read_gdb_index.
3583
3584 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3585
3586         * common/filestuff.h (gdb_fopen_cloexec): New overload.
3587         (gdb_open_cloexec): Likewise.
3588         * nat/linux-osdata.c (command_from_pid): Use string_printf.
3589         (commandline_from_pid): Likewise.
3590         (linux_xfer_osdata_threads): Likewise.
3591         (linux_xfer_osdata_fds): Likewise.
3592         * ada-lang.c (is_package_name): Likewise.
3593         * auxv.c (procfs_xfer_auxv): Likewise.
3594         * breakpoint.c (print_one_breakpoint_location): Use
3595         uiout::field_fmt.
3596         (print_one_catch_solib): Use string_printf.
3597         * coff-pe-read.c (add_pe_exported_sym): Likewise.
3598         (add_pe_forwarded_sym): Likewise.
3599         * dwarf2read.c (create_type_unit_group): Likewise.
3600         (build_error_marker_type): Likewise.
3601         * infcall.c (get_function_name): Likewise.
3602         * valprint.c (print_converted_chars_to_obstack): Likewise.
3603         * xtensa-tdep.c (xtensa_register_type): Likewise.
3604
3605 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
3606
3607         * remote.c (remote_target::download_tracepoint): Fix format
3608         string errors.
3609
3610 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3611
3612         * tracefile.c: Include common/byte-vector.h.
3613         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
3614         with trace_regblock_size if needed.  Update uses of buf.
3615
3616 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3617
3618         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
3619         std::vector<unsigned char>.
3620         * tracepoint.c (collection_list::collection_list): Remove
3621         m_regs_mask initializer from initializer list.  Resize
3622         m_regs_mask using the largest remote register number.
3623         (collection_list::add_remote_register): Remove size check on
3624         m_regs_mask.  Use at to access element.
3625         (collection_list::stringify): Change type of temp_buf to
3626         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
3627         stringify the register mask.  Use pack_hex_byte for the register
3628         mask.
3629
3630 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3631
3632         * tracepoint.h (class collection_list) <add_register>: Remove.
3633         <add_remote_register, add_ax_registers, add_local_register>:
3634         Declare.
3635         <add_memrange>: Add scope parameter.
3636         * tracepoint.c (encode_actions_1): Likewise.
3637         (collection_list::add_register): Rename to ...
3638         (collection_list::add_remote_register): ... this.  Update
3639         comment.
3640         (collection_list::add_ax_registers, add_local_register): New
3641         methods.
3642         (collection_list::add_memrange): Add scope parameter.  Call
3643         add_local_register instead of add_register.
3644         (finalize_tracepoint_aexpr): New function.
3645         (collection_list::collect_symbol): Update calls to add_memrange.
3646         Call add_local_register instead of add_register.  Call
3647         add_ax_registers.  Call finalize_tracepoint_aexpr.
3648         (encode_actions_1): Get remote regnos for $reg action.  Call
3649         add_remote_register, add_ax_registers, and add_local_register.
3650         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
3651         (validate_actionline): Call finalize_tracepoint_aexpr.
3652
3653 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3654
3655         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
3656         Replace array buf with gdb::char_vector buf, of size
3657         get_remote_packet_size ().  Replace references to buf and
3658         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
3659         and xsnprintf with snprintf.  Raise errors if the buffer is too
3660         small.
3661
3662 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3663
3664         * remote.c (remote_target::download_tracepoint): Fix the has_more
3665         predicate in the QTDP action list iteration.
3666
3667 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3668
3669         * remote.c (remote_target::download_tracepoint): Fix indentation
3670         in for block.
3671
3672 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3673
3674         * proc-api.c (_initialize_proc_api): Remove c, unused.
3675         * procfs.c (procfs_init_inferior): Remove signals, unused.
3676         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
3677         unused.
3678
3679 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
3680             Andrew Burgess  <andrew.burgess@embecosm.com>
3681
3682         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
3683         'W_STOPCODE (0)' as this could be ambiguous.
3684
3685 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
3686
3687         * ser-tcp.c (net_open): Fix thinko when deciding whether to
3688         disable TCP's Nagle algorithm (use "ai_protocol" instead of
3689         "ai_socktype").
3690
3691 2018-08-02  Tom Tromey  <tom@tromey.com>
3692
3693         PR symtab/16842.
3694         * dwarf2read.c (read_func_scope): Set symtab on template parameter
3695         symbols.
3696         (process_structure_scope): Likewise.
3697
3698 2018-08-02  Xavier Roirand  <roirand@adacore.com>
3699
3700         PR gdb/22629:
3701         * darwin-nat.c (darwin_kill_inferior): Fix handling of
3702         kill inferior.
3703
3704 2018-08-02  Tom Tromey  <tom@tromey.com>
3705
3706         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
3707         (darwin_suspend_inferior, darwin_resume_inferior)
3708         (darwin_decode_notify_message, darwin_resume_inferior_threads)
3709         (darwin_check_new_threads): Check result of get_darwin_inferior.
3710
3711 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
3712
3713         GDB 8.1.1 released.
3714
3715 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
3716
3717         * varobj.c (varobj_get_path_expr_parent): Report an error if
3718         parent is a dynamic varobj.
3719
3720 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
3721
3722         * gnulib/aclocal.m4: Re-generate.
3723         * gnulib/config.in: Re-generate.
3724         * gnulib/configure: Re-generate.
3725         * gnulib/import/Makefile.in: Re-generate.
3726         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
3727         * gnulib/import/m4/onceonly.m4: Re-generate.
3728
3729 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
3730
3731         * target-descriptions.c (struct xml_test_tdesc): New.
3732         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
3733         (record_xml_tdesc): Update.
3734         (maintenance_check_xml_descriptions): Update.
3735         * target-descriptions.h (record_xml_tdesc): Update comment.
3736
3737 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
3738
3739         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
3740         checking array bounds are defined.
3741
3742 2018-07-30  Tom Tromey  <tom@tromey.com>
3743
3744         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
3745         irreflexivity violation.
3746
3747 2018-07-30  Tom Tromey  <tom@tromey.com>
3748
3749         * cli/cli-decode.c (lookup_cmd): Remove lint code.
3750         * value.c (unpack_long): Remove lint code.
3751         * valops.c (value_ind): Remove lint code.
3752         * valarith.c (value_x_binop, value_x_unop, value_equal)
3753         (value_pos): Remove lint code.
3754
3755 2018-07-28  Tom de Vries  <tdevries@suse.de>
3756
3757         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
3758         with undefined upper bound as <optimized out>.
3759
3760 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
3761
3762         * gcore.in: Rename variable "name" to "prefix".  Expand
3763         "usage" text.
3764
3765 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
3766
3767         * windows-nat.c (windows_nat_target::create_inferior): Update to
3768         call close() in global namespace.
3769
3770 2018-07-26  Tom Tromey  <tom@tromey.com>
3771
3772         * dwarf-index-write.c (add_address_entry): Don't add objfile
3773         offsets.
3774         * dbxread.c (find_stab_function): Rename from
3775         find_stab_function_addr.  Return a bound_minimal_symbol.
3776         (read_dbx_symtab): Use raw_text_low, raw_text_high.
3777         Don't add objfile offsets.
3778         (end_psymtab): Use raw_text_low, raw_text_high,
3779         MSYMBOL_VALUE_RAW_ADDRESS.
3780         (read_ofile_symtab): Update.
3781         (process_one_symbol): Update.
3782         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
3783         offsets.
3784         (dw2_relocate): Remove.
3785         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
3786         searching addrmap.
3787         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
3788         Update.
3789         (process_psymtab_comp_unit_reader, add_partial_symbol)
3790         (add_partial_subprogram, dwarf2_ranges_read): Update.
3791         (load_partial_dies): Update.
3792         (add_address_entry): Don't add objfile offsets.
3793         (dwarf2_build_include_psymtabs): Update.
3794         (create_addrmap_from_aranges): Don't add objfile offsets.
3795         (dw2_find_pc_sect_compunit_symtab): Update.
3796         * mdebugread.c (parse_symbol): Don't add objfile offsets.
3797         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
3798         Update.
3799         (parse_partial_symbols): Don't add objfile offsets.  Use
3800         raw_text_low, raw_text_high.  Update.
3801         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
3802         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
3803         or call 'relocate' quick function.  Clear psymbol_map.
3804         * psympriv.h (struct partial_symbol) <address>: Add section
3805         offset.
3806         <set_unrelocated_address>: Rename from set_address.
3807         <raw_text_low, raw_text_high>: New methods.
3808         <text_low, text_high>: Add objfile parameter.
3809         (add_psymbol_to_bcache): Add 'section' parameter.  Call
3810         set_unrelocated_address.
3811         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3812         (find_pc_psymbol): Update.
3813         (fixup_psymbol_section, relocate_psymtabs): Remove.
3814         (dump_psymtab, psym_functions): Update.
3815         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
3816         parameter.
3817         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
3818         (start_psymtab_common): Update.
3819         * symfile-debug.c (debug_qf_relocate): Remove.
3820         (debug_sym_quick_functions): Update.
3821         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
3822         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
3823         Update.
3824
3825 2018-07-26  Tom Tromey  <tromey@redhat.com>
3826
3827         * dbxread.c (end_psymtab): Use text_high_valid and
3828         text_low_valid.
3829         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
3830         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
3831         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
3832         Update comment.
3833         <text_low_valid, text_high_valid>: New fields.
3834         <set_text_low, set_text_high>: Update.
3835         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
3836
3837 2018-07-26  Tom Tromey  <tom@tromey.com>
3838
3839         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
3840         Update.
3841         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
3842         textlow and texthigh fields.
3843         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
3844         Update.
3845         * mdebugread.c (parse_lines, parse_partial_symbols)
3846         (psymtab_to_symtab_1): Update.
3847         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
3848         Rename fields.  Update comment.  Now private.
3849         <text_low, text_high, set_text_low, set_text_high>: New methods.
3850         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3851         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
3852         (start_psymtab_common, maintenance_info_psymtabs)
3853         (maintenance_check_psymtabs): Update.
3854         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
3855         texthigh fields.
3856         (scan_xcoff_symtab): Update.
3857
3858 2018-07-26  Tom Tromey  <tromey@redhat.com>
3859
3860         * psympriv.h (struct partial_symbol) <unrelocated_address,
3861         address, set_address>: New methods.
3862         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
3863         (fixup_psymbol_section, relocate_psymtabs): Update.
3864         (print_partial_symbols): Add 'objfile' parameter.  Update.
3865         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
3866         Update.
3867
3868 2018-07-26  Tom Tromey  <tom@tromey.com>
3869
3870         * dwarf-index-write.c (write_psymbols, debug_names::insert)
3871         (debug_names::write_psymbols): Update.
3872         * psympriv.h (struct partial_symbol): Derive from
3873         general_symbol_info.
3874         <obj_section>: New method.
3875         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
3876         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3877         (find_pc_sect_psymbol, fixup_psymbol_section)
3878         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
3879         (print_partial_symbols, recursively_search_psymtabs)
3880         (compare_psymbols, psymbol_hash, psymbol_compare)
3881         (add_psymbol_to_bcache, maintenance_check_psymtabs)
3882         (psymbol_name_matches, psym_fill_psymbol_map): Update.
3883
3884 2018-07-26  Tom Tromey  <tromey@redhat.com>
3885
3886         * dbxread.c (end_psymtab): Remove dead code.
3887
3888 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
3889
3890         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
3891         DWARF unwinders are disabled.
3892         * dwarf2-frame.c: Add dwarf2read.h include.
3893         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
3894         disabled.
3895         (dwarf2_frame_unwinders_enabled_p): Define.
3896         (show_dwarf_unwinders_enabled_p): New function.
3897         (_initialize_dwarf2_frame): Register switch to control DWARF
3898         unwinder use.
3899         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
3900         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
3901         (show_dwarf_cmdlist): Remove static keyword.
3902         * dwarf2read.h (set_dwarf_cmdlist): Declare.
3903         (show_dwarf_cmdlist): Declare.
3904         * NEWS: Document new feature.
3905
3906 2018-07-26  Tom de Vries  <tdevries@suse.de>
3907
3908         PR breakpoints/23366
3909         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
3910
3911 2018-07-26  Tom de Vries  <tdevries@suse.de>
3912
3913         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
3914         DW_AT_count can't be translated to a dynamic prop.
3915
3916 2018-07-25  Tom de Vries  <tdevries@suse.de>
3917
3918         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
3919         try/catch.
3920
3921 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
3922
3923         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
3924
3925 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
3926
3927         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
3928
3929 2018-07-24  Keith Seitz  <keiths@redhat.comt
3930
3931         PR symtab/23010
3932         * dwarf2read.c (dw2_add_symbol_to_list): New function.
3933         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
3934         instead of add_symbol_to_list.
3935         (read_file_scope): Call prepare_one_comp_unit before reading
3936         any other DIEs.
3937
3938 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
3939
3940         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
3941
3942 2018-07-24  Tom Tromey  <tom@tromey.com>
3943
3944         * utils.c (malloc, realloc, free): Don't declare.
3945         * configure, config.in: Rebuild.
3946         * configure.ac: Don't check for declarations of free, malloc, or
3947         realloc.
3948
3949 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
3950
3951         * aarch64-linux-nat.c
3952         (aarch64_linux_nat_target::stopped_data_address): Remove unused
3953         variable.
3954         * arm-linux-nat.c (fetch_regs): Likewise.
3955         (store_regs): Likewise.
3956         (fetch_vfp_regs): Likewise.
3957         (store_vfp_regs): Likewise.
3958         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
3959         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
3960         (arm_linux_nat_target::insert_watchpoint): Likewise.
3961         (arm_linux_nat_target::remove_watchpoint): Likewise.
3962         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
3963         Likewise.
3964         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
3965         Likewise.
3966         * ppc-linux-nat.c (fetch_register): Likewise.
3967         (fetch_all_gp_regs): Likewise.
3968         (fetch_ppc_registers): Likewise.
3969         (store_all_gp_regs): Likewise.
3970         (store_ppc_registers): Likewise.
3971         (hwdebug_insert_point): Likewise.
3972         (can_use_watchpoint_cond_accel): Likewise.
3973         * remote-sim.c (gdb_os_write_stdout): Likewise.
3974
3975 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
3976             Tom Tromey  <tom@tromey.com>
3977
3978         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
3979         test for it.
3980         * configure: Rebuild.
3981
3982 2018-07-22  Tom Tromey  <tom@tromey.com>
3983
3984         * regformats/regdat.sh: Define xmltarget_${name} inside
3985         #ifndef IN_PROCESS_AGENT.
3986
3987 2018-07-22  Tom Tromey  <tom@tromey.com>
3988
3989         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
3990
3991 2018-07-22  Tom Tromey  <tom@tromey.com>
3992
3993         * symfile.c (reread_symbols): Notify iter, not objfile.
3994
3995 2018-07-22  Tom Tromey  <tom@tromey.com>
3996
3997         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
3998         Use arch_ops.
3999         (ravenscar_thread_target::prepare_to_store): Likewise.
4000
4001 2018-07-22  Tom Tromey  <tom@tromey.com>
4002
4003         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
4004         unused variable.  Call value_fetch_lazy when needed.
4005         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
4006         Remove unused variable.  Call value_fetch_lazy when needed.
4007
4008 2018-07-22  Tom Tromey  <tom@tromey.com>
4009
4010         * m32c-tdep.c (mark_dma): Return void.
4011         (make_regs): Remove unused declarations.
4012
4013 2018-07-22  Tom Tromey  <tom@tromey.com>
4014
4015         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
4016         cmdscm_get_valid_command_smob_arg_unsafe for effect.
4017         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
4018         bkscm_get_valid_block_smob_arg_unsafe for effect.
4019
4020 2018-07-22  Tom Tromey  <tom@tromey.com>
4021
4022         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
4023         value_type.
4024
4025 2018-07-22  Tom Tromey  <tom@tromey.com>
4026
4027         * windows-nat.c (saved_context): Conditionally define.
4028         * remote.c (remote_target::remote_btrace_maybe_reopen):
4029         Conditionally declare "warned".
4030         * inflow.c (sigquit_ours): Conditionally define.
4031         (new_tty): Move "tty" declaration inside #if.
4032         * guile/guile.c (guile_datadir): Conditionally define.
4033         * charset.c (set_be_le_names): Move some declarations inside #if.
4034         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
4035         #if.
4036         (parse_xml_btrace_conf): Likewise.
4037
4038 2018-07-22  Tom Tromey  <tom@tromey.com>
4039
4040         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
4041
4042 2018-07-22  Tom Tromey  <tom@tromey.com>
4043
4044         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
4045         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
4046         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
4047         * buildsym-legacy.c (get_macro_table): Remove unused variable.
4048         * stack.c (frame_apply_level_command): Remove unused variable.
4049         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
4050         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
4051         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
4052         unused variable.
4053         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
4054         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
4055         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
4056         variable.
4057         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
4058         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
4059         variable.
4060         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
4061         Remove unused variable.
4062         * cli/cli-script.c (recurse_read_control_structure): Remove unused
4063         variable.
4064         * common/tdesc.c (print_xml_feature::visit): Remove unused
4065         variable.
4066         * compile/compile-object-load.c (store_regs): Remove unused
4067         variables.
4068         * complaints.c (clear_complaints): Remove unused variable.
4069         * corelow.c (core_target_open): Remove unused variable.
4070         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
4071         variable.
4072         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
4073         variable.
4074         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
4075         variable.
4076         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
4077         variable.
4078         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
4079         variable.
4080         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
4081         variable.
4082         * ia64-tdep.c (examine_prologue): Remove unused variable.
4083         * infcall.c (run_inferior_call): Remove unused variable.
4084         * inferior.c (exit_inferior): Remove unused variable.
4085         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
4086         * linespec.c (decode_line_2): Remove unused variable.
4087         * linux-nat.c (super_close): Remove.
4088         * linux-tdep.c (linux_info_proc): Remove unused variable.
4089         * mi/mi-main.c (mi_execute_command): Remove unused variable.
4090         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
4091         Remove unused variable.
4092         * parse.c (find_minsym_type_and_address): Remove unused variable.
4093         * printcmd.c (info_symbol_command, printf_floating): Remove unused
4094         variable.
4095         * python/py-breakpoint.c (bppy_set_commands): Remove unused
4096         variable.
4097         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
4098         variables.
4099         * record-btrace.c (record_btrace_target::store_registers): Remove
4100         unused variable.
4101         (cmd_show_record_btrace_cpu): Remove unused variable.
4102         * riscv-tdep.c (riscv_register_reggroup_p)
4103         (riscv_push_dummy_call, riscv_return_value): Remove unused
4104         variable.
4105         * rust-exp.y (literal): Remove unused variable.
4106         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
4107         unused variable.
4108         <STRUCTOP_ANONYMOUS>: Likewise.
4109         * s390-linux-tdep.c (s390_linux_init_abi_31)
4110         (s390_linux_init_abi_64): Remove unused variable.
4111         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
4112         (file_select_thread, net_windows_open, _initialize_ser_windows):
4113         Remove unused variables.
4114         * symtab.c (find_pc_sect_line): Remove unused variable.
4115         * target-memory.c (compute_garbled_blocks): Remove unused
4116         variable.
4117         (target_write_memory_blocks): Remove unused variable.
4118         * target.c (target_stack::unpush): Remove unused variables.
4119         * tracepoint.c (start_tracing, all_tracepoint_actions)
4120         (merge_uploaded_trace_state_variables)
4121         (print_one_static_tracepoint_marker): Remove unused variable.
4122         * unittests/basic_string_view/element_access/char/1.cc (test01):
4123         Remove unused variable.
4124         * windows-nat.c (windows_continue, windows_add_all_dlls)
4125         (do_initial_windows_stuff, windows_nat_target::create_inferior):
4126         Remove unused variables.
4127
4128 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
4129
4130         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
4131         attr_profile in HAVE_ELF.
4132         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
4133         HAVE_ELF.
4134
4135 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
4136
4137         * frame.c (frame_register_unwind): Change parameter name.
4138         (frame_unwind_register): Likewise.
4139         (frame_unwind_register_value): Likewise.
4140         (frame_unwind_register_signed): Likewise.
4141         (frame_unwind_register_unsigned): Likewise.
4142         * frame.h (frame_register_unwind): Likewise.
4143         (frame_unwind_register): Likewise.
4144         (frame_unwind_register_value): Likewise.
4145         (frame_unwind_register_signed): Likewise.
4146         (frame_unwind_register_unsigned): Likewise.
4147         (frame_unwind_arch): Likewise.
4148
4149 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4150
4151         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
4152         ISA maintenance.
4153
4154 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4155
4156         * mips-linux-nat.c (mips_linux_nat_target::read_description):
4157         Call `get_ptrace_pid' rather than extracting the ptrace PID by
4158         hand.
4159
4160 2018-07-20  Keith Seitz  <keiths@redhat.com>
4161
4162         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
4163         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
4164         m_compunit_symtab, m_language>: Add "m_" prefix.
4165         Update all uses.
4166         * buildsym.c: Update all uses.
4167
4168 2018-07-20  Tom Tromey  <tom@tromey.com>
4169
4170         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
4171         * buildsym.h (record_line_ftype): Remove typedef.
4172
4173 2018-07-20  Tom Tromey  <tom@tromey.com>
4174
4175         * buildsym-legacy.h (augment_type_symtab): Don't declare.
4176         (end_expandable_symtab): Likewise.
4177         (end_symtab_get_static_block): Likewise.
4178         (end_symtab_from_static_block): Likewise.
4179         * buildsym-legacy.c (augment_type_symtab): Remove.
4180         (end_expandable_symtab): Remove.
4181         (end_symtab_get_static_block): Remove.
4182         (end_symtab_from_static_block): Remove.
4183
4184 2018-07-20  Tom Tromey  <tom@tromey.com>
4185
4186         * dwarf2read.c: Include buildsym.h.
4187         (struct dwarf2_cu) <builder>: New method.
4188         (fixup_go_packaging): Update.
4189         (process_full_comp_unit, process_full_type_unit): Update.  Don't
4190         use scoped_free_pendings.
4191         (using_directives): Add "cu" parameter, remove "language".
4192         (read_import_statement, setup_type_unit_groups, )
4193         (read_func_scope, read_lexical_block_scope)
4194         (dwarf2_record_block_ranges, read_namespace): Update.
4195         (lnp_state_machine::lnp_state_machine): Add cu parameter.
4196         (lnp_state_machine::handle_end_sequence): Update.
4197         (class lnp_state_machine) <m_cu>: New member.
4198         <m_record_line_callback>: Remove.
4199         <m_currently_recording_lines>: New member.
4200         (lnp_state_machine::handle_set_file): Update.
4201         (noop_record_line): Remove.
4202         (dwarf_record_line_p): Add cu parameter.
4203         (dwarf_record_line_1, dwarf_finish_line): Likewise.
4204         (lnp_state_machine::record_line)
4205         (lnp_state_machine::lnp_state_machine)
4206         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
4207         (dwarf_decode_lines): Update.
4208         (dwarf2_start_subfile): Add cu parameter.
4209         (dwarf2_start_symtab, new_symbol): Update.
4210         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
4211         Remove dwarf2_per_objfile parameter.
4212         (dwarf_decode_macros): Update.
4213
4214 2018-07-20  Tom Tromey  <tom@tromey.com>
4215
4216         * stabsread.c (define_symbol): Update.
4217         * buildsym-legacy.h (get_buildsym_compunit): Declare.
4218         * dwarf2read.c (new_symbol): Update.
4219         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
4220         * cp-namespace.c: Include buildsym.h.
4221         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
4222         * buildsym-legacy.c (get_buildsym_compunit): New function.
4223
4224 2018-07-20  Tom Tromey  <tom@tromey.com>
4225
4226         * xcoffread.c: Include buildsym-legacy.h.
4227         * windows-nat.c: Include buildsym-legacy.h.
4228         * stabsread.c: Include buildsym-legacy.h.
4229         * mdebugread.c: Include buildsym-legacy.h.
4230         * buildsym-legacy.h: New file.
4231         * buildsym-legacy.c: New file, from buildsym.c.
4232         * go32-nat.c: Include buildsym-legacy.h.
4233         * dwarf2read.c: Include buildsym-legacy.h.
4234         * dbxread.c: Include buildsym-legacy.h.
4235         * cp-namespace.c: Include buildsym-legacy.h.
4236         * coffread.c: Include buildsym-legacy.h.
4237         * buildsym.h: Move some contents to buildsym-legacy.h.
4238         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
4239         buildsym-legacy.c.
4240         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
4241
4242 2018-07-20  Tom Tromey  <tom@tromey.com>
4243
4244         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
4245         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
4246         (buildsym_compunit::buildsym_compunit)
4247         (buildsym_compunit::~buildsym_compunit)
4248         (buildsym_compunit::get_macro_table): Define.
4249
4250 2018-07-20  Tom Tromey  <tom@tromey.com>
4251
4252         * buildsym.c (reset_symtab_globals): Remove.
4253         (buildsym_compunit::end_symtab_from_static_block): Update.
4254         (buildsym_compunit::augment_type_symtab): Update.
4255         (end_symtab_from_static_block): Call free_buildsym_compunit.
4256         (augment_type_symtab, end_symtab, end_expandable_symtab):
4257         Likewise.
4258
4259 2018-07-20  Tom Tromey  <tom@tromey.com>
4260
4261         * arch-utils.c: Do not include buildsym.h.
4262         * mipsread.c: Do not include buildsym.h.
4263         * machoread.c: Do not include buildsym.h.
4264         * elfread.c: Do not include buildsym.h.
4265
4266 2018-07-20  Tom Tromey  <tom@tromey.com>
4267
4268         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
4269         initialization.
4270         (buildsym_compunit): Add new constructor.
4271         (struct buildsym_compunit) <get_last_source_file, finish_block,
4272         record_block_range, start_subfile, patch_subfile_names,
4273         push_subfile, pop_subfile, record_line, get_compunit_symtab,
4274         set_last_source_start_addr, get_last_source_start_addr,
4275         get_local_using_directives, set_local_using_directives,
4276         get_global_using_directives, outermost_context_p,
4277         get_current_context_stack, get_context_stack_depth,
4278         get_current_subfile, get_local_symbols, get_file_symbols,
4279         get_global_symbols, record_debugformat, record_producer,
4280         push_context, pop_context, end_symtab_get_static_block,
4281         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
4282         New public methods.
4283         <record_pending_block, finish_block_internal, make_blockvector,
4284         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
4285         private methods.
4286         Update all users.
4287
4288 2018-05-22  Tom Tromey  <tom@tromey.com>
4289
4290         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
4291         parameter.
4292         (finish_block_internal): Update.
4293
4294 2018-07-20  Tom Tromey  <tom@tromey.com>
4295
4296         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
4297         parameter.
4298         (finish_block_internal): Update.
4299
4300 2018-07-20  Tom Tromey  <tom@tromey.com>
4301
4302         * buildsym.h (EXTERN): Don't define or undef.
4303         * buildsym.c (EXTERN): Don't define.
4304
4305 2018-07-20  Tom Tromey  <tom@tromey.com>
4306
4307         * buildsym.c: Remove TODO comment.
4308
4309 2018-07-20  Tom Tromey  <tom@tromey.com>
4310
4311         * coffread.c (coff_symtab_read): Update.
4312         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
4313         (xcoff_new_init): Update.
4314         * mipsread.c (mipscoff_new_init): Update.
4315         * mdebugread.c (mdebug_build_psymtabs): Update.
4316         * elfread.c (elf_new_init): Update.
4317         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
4318         Update.
4319         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
4320         (coffstab_build_psymtabs, elfstab_build_psymtabs)
4321         (stabsect_build_psymtabs): Update.
4322         * buildsym.h (buildsym_init): Don't declare.
4323         * buildsym.c: Update comment.
4324         (prepare_for_building): Remove.
4325         (start_symtab, restart_symtab): Update.
4326         (reset_symtab_globals): Update comment.
4327         (buildsym_init): Remove.
4328
4329 2018-07-20  Tom Tromey  <tom@tromey.com>
4330
4331         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
4332         * stabsread.c (patch_block_stabs, define_symbol, read_type)
4333         (read_enum_type, common_block_start, common_block_end)
4334         (cleanup_undefined_types_1, finish_global_stabs): Update.
4335         * mdebugread.c (psymtab_to_symtab_1): Update.
4336         * dwarf2read.c (fixup_go_packaging, read_func_scope)
4337         (read_lexical_block_scope, new_symbol): Update.
4338         * dbxread.c (process_one_symbol): Update.
4339         * coffread.c (coff_symtab_read, process_coff_symbol)
4340         (coff_read_enum_type): Update.
4341         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
4342         declare.
4343         (get_local_symbols, get_file_symbols, get_global_symbols): New
4344         functions.
4345         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
4346         m_global_symbols.
4347         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
4348         (~scoped_free_pendings): Update.
4349         (finish_block, prepare_for_building, reset_symtab_globals)
4350         (end_symtab_get_static_block, end_symtab_with_blockvector)
4351         (augment_type_symtab, push_context): Update.
4352         (get_local_symbols, get_file_symbols, get_global_symbols): New
4353         functions.
4354         (buildsym_init): Update.
4355
4356 2018-07-20  Tom Tromey  <tom@tromey.com>
4357
4358         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
4359         (process_full_type_unit): Likewise.
4360         (dwarf2_start_symtab): Set list_in_scope.
4361
4362 2018-07-20  Tom Tromey  <tom@tromey.com>
4363
4364         * dwarf2read.c (process_psymtab_comp_unit_reader)
4365         (build_type_psymtabs_reader): Do not set list_in_scope.
4366
4367 2018-07-20  Tom Tromey  <tom@tromey.com>
4368
4369         * buildsym.c (free_pendings): Remove.
4370         (add_symbol_to_list, scoped_free_pendings)
4371         (finish_block_internal, buildsym_init): Update.
4372
4373 2018-07-20  Tom Tromey  <tom@tromey.com>
4374
4375         * xcoffread.c (read_xcoff_symtab): Update.
4376         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
4377         Update.
4378         * dbxread.c (process_one_symbol): Update.
4379         * coffread.c (coff_symtab_read): Update.
4380         * buildsym.h (finish_block): Update.
4381         * buildsym.c (finish_block): Remove "listhead" argument.
4382         (end_symtab_get_static_block): Update.
4383
4384 2018-07-20  Tom Tromey  <tom@tromey.com>
4385
4386         * buildsym.h (class scoped_free_pendings): Remove constructor.
4387         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
4388         method.
4389         <m_pending_block_obstack, m_pending_blocks>: New members.
4390         (pending_block_obstack, pending_blocks): Remove.
4391         (scoped_free_pendings::scoped_free_pendings): Default.
4392         (~scoped_free_pendings): Update.
4393         (free_pending_blocks): Remove.
4394         (finish_block_internal, record_pending_block, make_blockvector)
4395         (end_symtab_get_static_block, augment_type_symtab, push_context)
4396         (buildsym_init): Update.
4397
4398 2018-07-20  Tom Tromey  <tom@tromey.com>
4399
4400         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
4401         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
4402         members.
4403         (pending_addrmap, pending_addrmap_obstack)
4404         (pending_addrmap_interesting): Remove.
4405         (scoped_free_pendings, record_block_range, make_blockvector)
4406         (prepare_for_building, reset_symtab_globals, buildsym_init):
4407         Update.
4408
4409 2018-07-20  Tom Tromey  <tom@tromey.com>
4410
4411         * xcoffread.c (process_linenos): Update.
4412         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
4413         * mdebugread.c (psymtab_to_symtab_1): Update.
4414         * dwarf2read.c (setup_type_unit_groups)
4415         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
4416         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
4417         * dbxread.c (process_one_symbol): Update.
4418         * coffread.c (coff_symtab_read, enter_linenos)
4419         (process_coff_symbol): Update.
4420         * buildsym.h (current_subfile): Don't declare.
4421         (get_current_subfile): Declare.
4422         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
4423         member.
4424         (start_subfile, free_buildsym_compunit, push_subfile)
4425         (prepare_for_building, start_symtab): Update.
4426         (get_current_subfile): New function.
4427
4428 2018-07-20  Tom Tromey  <tom@tromey.com>
4429
4430         * coffread.c (coff_symtab_read): Update.
4431         * xcoffread.c (read_xcoff_symtab): Update.
4432         * dwarf2read.c (new_symbol): Update.
4433         (read_func_scope, read_lexical_block_scope): Update.
4434         * dbxread.c (process_one_symbol): Update.
4435         * buildsym.h (context_stack, context_stack_depth): Don't declare.
4436         (outermost_context_p): Remove macro.
4437         (outermost_context_p, get_current_context_stack)
4438         (get_context_stack_depth): Declare.
4439         (pop_context): Return struct context_stack.
4440         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
4441         member.
4442         (context_stack_size): Remove.
4443         (INITIAL_CONTEXT_STACK_SIZE): Remove.
4444         (prepare_for_building, end_symtab_get_static_block)
4445         (augment_type_symtab, push_context): Update.
4446         (pop_context): Return struct context_stack.
4447         (outermost_context_p, get_current_context_stack)
4448         (get_context_stack_depth): New functions.
4449         (buildsym_init): Update.
4450
4451 2018-07-20  Tom Tromey  <tom@tromey.com>
4452
4453         * rust-exp.y: Now a pure parser.  Update all rules.
4454         (%union): Move earlier.
4455         (current_parser, work_obstack): Remove globals.
4456         (rust_parser, ~rust_parser): Update.
4457         (class rust_parser) <copy_name, concat3, crate_name, super_name,
4458         lex_character, lex_number, lex_string, lex_identifier,
4459         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
4460         convert_name, convert_params_to_expression,
4461         convert_ast_to_expression, ast_basic_type, ast_operation,
4462         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
4463         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
4464         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
4465         ast_array_type, ast_slice_type, ast_reference_type,
4466         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
4467         (rust_parse): Update.
4468         (rustyyerror, rustyylex): Add parser parameter.
4469         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
4470         (rust_lex_stringish_test, rust_lex_test_sequence)
4471         (rust_lex_test_trailing_dot, rust_lex_test_completion)
4472         (rust_lex_test_push_back, rust_lex_tests): Update.
4473
4474 2018-07-19  Pedro Alves  <palves@redhat.com>
4475
4476         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
4477         gdb::unique_xmalloc_ptr.
4478         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
4479         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
4480         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
4481         copy-initialization.
4482         * guile/scm-pretty-print.c (ppscm_print_children): Use
4483         gdb::unique_xmalloc_ptr instead of cleanups.
4484         (gdbscm_apply_val_pretty_printer): Remove cleanups.
4485         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
4486         gdb::unique_xmalloc_ptr.
4487         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
4488         Adjust to use gdb::unique_xmalloc_ptr.
4489         * guile/scm-utils.c (extract_arg): Adjust.
4490         * guile/scm-value.c (gdbscm_value_field): Adjust to use
4491         gdb::unique_xmalloc_ptr instead of a cleanup.
4492
4493 2018-07-19  Tom Tromey  <tom@tromey.com>
4494
4495         * utils.c (do_value_free_to_mark)
4496         (make_cleanup_value_free_to_mark): Remove.
4497         * utils.h (make_cleanup_value_free_to_mark): Remove.
4498
4499 2018-07-19  Pedro Alves  <palves@redhat.com>
4500
4501         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
4502         forwarding reference.
4503
4504 2018-07-18  Pedro Alves  <palves@redhat.com>
4505
4506         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
4507         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
4508         cleanup.
4509
4510 2018-07-18  Pedro Alves  <palves@redhat.com>
4511
4512         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
4513         exceptions.
4514         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
4515         (gdbscm_wrap): New.
4516         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
4517         directly instead of a cleanup.
4518         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
4519         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
4520         (vlscm_binop_gdbthrow): New, factored out from ...
4521         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
4522         (vlscm_rich_compare): Use gdbscm_wrap.
4523         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
4524         instead of a cleanup.
4525         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
4526         cleanup.
4527         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
4528         Use xfree directly instead of a cleanup.
4529         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
4530         Adjust to use gdbscm_wrap and scoped_value_mark.
4531         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
4532         (gdbscm_value_address, gdbscm_value_dereference)
4533         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
4534         scoped_value_mark.
4535         (gdbscm_value_dynamic_type): Use scoped_value_mark.
4536         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
4537         scoped_value_mark.
4538         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
4539         gdbscm_wrap and scoped_value_mark.
4540         (gdbscm_value_to_string): Use xfree directly instead of a
4541         cleanup.  Move 'buffer' unique_ptr to TRY scope.
4542         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
4543         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
4544         scoped_value_mark.
4545         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
4546         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
4547         scoped_value_mark.
4548         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
4549         gdbscm_wrap.
4550
4551 2018-07-18  Tom de Vries  <tdevries@suse.de>
4552
4553         * findvar.c (default_read_var_value): Also resolve dynamic type for
4554         LOC_OPTIMIZED_OUT vars.
4555
4556 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
4557
4558         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
4559         decoding.
4560
4561 2018-07-17  Tom Tromey  <tom@tromey.com>
4562
4563         * guile/scm-param.c (pascm_set_func, pascm_show_func)
4564         (compute_enum_list, pascm_set_param_value_x)
4565         (gdbscm_parameter_value): Update.
4566         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
4567         (gdbscm_scm_to_host_string): Update.
4568         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
4569         Update.
4570         * guile/scm-cmd.c (cmdscm_add_completion): Update.
4571         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
4572         * guile/scm-string.c (gdbscm_scm_to_string): Return
4573         unique_xmalloc_ptr.
4574         (gdbscm_scm_to_host_string): Likewise.
4575
4576 2018-07-17  Tom Tromey  <tom@tromey.com>
4577
4578         * guile/guile.c (gdbscm_eval_from_control_command): Update.
4579         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
4580         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
4581         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
4582         unique_xmalloc_ptr.
4583
4584 2018-07-17  Tom Tromey  <tom@tromey.com>
4585
4586         * guile/scm-param.c (pascm_signal_setshow_error): Update.
4587         * guile/guile-internal.h (gdbscm_exception_message_to_string):
4588         Update.
4589         * guile/scm-cmd.c (cmdscm_function): Update.
4590         * guile/scm-pretty-print.c
4591         (ppscm_print_exception_unless_memory_error): Update.
4592         * guile/scm-exception.c (gdbscm_exception_message_to_string):
4593         Return unique_xmalloc_ptr.
4594
4595 2018-07-17  Tom Tromey  <tom@tromey.com>
4596
4597         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
4598         Use string_printf.
4599
4600 2018-07-17  Jim Wilson  <jimw@sifive.com>
4601
4602         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
4603         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
4604         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
4605         unecessary braces after EF_RISCV_RVC test.  Delete call to
4606         set_gdbarch_decr_pc_after_break.
4607
4608         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
4609         RISCV_LAST_FP_REGNUM + 1.
4610         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
4611
4612 2018-07-17  Tom Tromey  <tom@tromey.com>
4613
4614         * configure.ac: Remove --disable-gdbcli.
4615         * configure: Rebuild.
4616         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
4617         (SUBDIR_CLI_CFLAGS): Remove.
4618         (SFILES): Use SUBDIR_CLI_SRCS.
4619         (COMMON_OBS): Use SUBDIR_CLI_OBS.
4620
4621 2018-07-17  Tom Tromey  <tom@tromey.com>
4622
4623         PR gdb/18624:
4624         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
4625
4626 2018-07-16  Jim Wilson  <jimw@sifive.com>
4627
4628         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
4629
4630 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
4631
4632         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
4633         variable.
4634         (libunwind_frame_sniffer): Likewise.
4635         (libunwind_frame_prev_register): Likewise.
4636         (libunwind_sigtramp_frame_sniffer): Likewise.
4637         * ia64-tdep.c (ia64_access_reg): Likewise.
4638         (ia64_access_rse_reg): Likewise.
4639         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
4640         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
4641
4642 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
4643
4644         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
4645
4646 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
4647
4648         * remote-sim.c (gdbsim_target::close,
4649         gdbsim_target::mourn_inferior): Remove unused variables.
4650
4651 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
4652
4653         * ia64-tdep.c (ktab_buf): New global.
4654         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
4655         (get_kernel_table): Adjust.
4656
4657 2018-07-16  Tom Tromey  <tom@tromey.com>
4658
4659         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
4660         * dwarf2read.c (using_directives, new_symbol): Use
4661         outermost_context_p.
4662         * dbxread.c (process_one_symbol): Use outermost_context_p.
4663         * coffread.c (coff_symtab_read): Use outermost_context_p.
4664
4665 2018-07-16  Tom Tromey  <tom@tromey.com>
4666
4667         * dwarf2read.c (using_directives, read_func_scope)
4668         (read_lexical_block_scope): Update.
4669         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
4670         * buildsym.h (local_using_directives, global_using_directives):
4671         Don't declare.
4672         (get_local_using_directives, set_local_using_directives)
4673         (get_global_using_directives): Declare.
4674         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
4675         m_global_using_directives>: New members.
4676         (finish_block_internal, prepare_for_building)
4677         (reset_symtab_globals, end_symtab_get_static_block)
4678         (push_context): Update.
4679         (get_local_using_directives, set_local_using_directives)
4680         (get_global_using_directives): New functions.
4681         (buildsym_init): Update.
4682
4683 2018-07-16  Tom Tromey  <tom@tromey.com>
4684
4685         * xcoffread.c (xcoff_initial_scan): Don't call
4686         free_pending_blocks.
4687         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
4688         * buildsym.h (class scoped_free_pendings): Add constructor.
4689         (free_pending_blocks): Don't declare.
4690         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
4691         (free_pending_blocks): Now static.
4692
4693 2018-07-16  Tom Tromey  <tom@tromey.com>
4694
4695         * buildsym.h (push_subfile, pop_subfile): Update declarations.
4696         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
4697         member.
4698         (struct subfile_stack): Remove.
4699         (subfile_stack): Remove.
4700         (push_subfile, pop_subfile, buildsym_init): Update.
4701
4702 2018-07-16  Tom Tromey  <tom@tromey.com>
4703
4704         * buildsym.c (push_subfile): Use gdb_assert.
4705         (pop_subfile): Use gdb_assert.
4706
4707 2018-07-16  Tom Tromey  <tom@tromey.com>
4708
4709         * buildsym.h (merge_symbol_lists): Remove.
4710         * buildsym.c (merge_symbol_lists): Remove.
4711
4712 2018-07-16  Tom Tromey  <tom@tromey.com>
4713
4714         * stabsread.c (scan_file_globals): Update comment.
4715         * stabsread.h (scan_file_globals): Move from buildsym.h.
4716         * buildsym.h (scan_file_globals): Move to stabsread.h.
4717
4718 2018-07-16  Tom Tromey  <tom@tromey.com>
4719
4720         * xcoffread.c (xcoff_new_init): Update.
4721         * mipsread.c (mipscoff_new_init): Update.
4722         * mdebugread.c (mdebug_build_psymtabs): Update.
4723         * elfread.c (elf_new_init): Update.
4724         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
4725         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
4726         * buildsym.h (buildsym_new_init): Don't declare.
4727         * buildsym.c (buildsym_new_init): Remove.
4728
4729 2018-07-16  Tom Tromey  <tom@tromey.com>
4730
4731         * stabsread.h (within_function): Move from buildsym.h.
4732         * stabsread.c (start_stabs): Clear within_function.
4733         * coffread.c (coff_start_symtab): Clear within_function.
4734         * buildsym.h (within_function): Move to stabsread.h.
4735         * buildsym.c (prepare_for_building): Update.
4736
4737 2018-07-16  Tom Tromey  <tom@tromey.com>
4738
4739         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
4740         * dwarf2read.c (dwarf2_start_symtab): Don't set
4741         processing_gcc_compilation.
4742         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
4743
4744 2018-07-16  Tom Tromey  <tom@tromey.com>
4745
4746         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
4747         (next_symbol_text_func): Move from buildsym.h.
4748         * stabsread.c (hashname): Move from buildsym.c.
4749         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
4750         (next_symbol_text_func, hashname): Move to stabsread.h.
4751         * buildsym.c: Don't include bcache.h
4752         (hashname): Move to stasbread.c.
4753
4754 2018-07-16  Tom Tromey  <tom@tromey.com>
4755
4756         * buildsym.h (context_stack_size): Don't declare.
4757         * buildsym.c (context_stack_size): New global.
4758
4759 2018-07-16  Tom Tromey  <tom@tromey.com>
4760
4761         * dbxread.c (processing_acc_compilation): New global.
4762         * buildsym.h (processing_acc_compilation): Don't declare.
4763
4764 2018-07-16  Tom Tromey  <tom@tromey.com>
4765
4766         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
4767         * dbxread.c (read_ofile_symtab): Update.
4768         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
4769         * buildsym.h (last_source_start_addr): Remove.
4770         (set_last_source_start_addr, get_last_source_start_addr):
4771         Declare.
4772         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
4773         parameter.
4774         (struct buildsym_compunit) <m_last_source_start_addr>: New
4775         member.
4776         (prepare_for_building): Remove start_addr parameter.
4777         (start_symtab, restart_symtab, end_symtab_get_static_block)
4778         (end_symtab_with_blockvector): Update.
4779         (set_last_source_start_addr, get_last_source_start_addr): New
4780         functions.
4781
4782 2018-07-16  Tom Tromey  <tom@tromey.com>
4783
4784         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
4785         member.
4786         (have_line_numbers): Remove.
4787         (record_line, prepare_for_building, end_symtab_get_static_block)
4788         (augment_type_symtab): Update.
4789
4790 2018-07-16  Tom Tromey  <tom@tromey.com>
4791
4792         * buildsym.c (~buildsym_compunit): Free the macro table.
4793         (struct buildsym_compunit) <get_macro_table, release_macros>: New
4794         methods.
4795         <m_pending_macros>: New member.
4796         (pending_macros): Remove.
4797         (~scoped_free_pendings, get_macro_table, prepare_for_building)
4798         (reset_symtab_globals, end_symtab_get_static_block)
4799         (end_symtab_with_blockvector, augment_type_symtab)
4800         (buildsym_init): Update.
4801
4802 2018-07-16  Tom Tromey  <tom@tromey.com>
4803
4804         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
4805         parameter.
4806         (buildsym_compunit::set_last_source_file): New method.
4807         <m_last_source_file>: New member.
4808         (prepare_for_building): Remove "name" parameter.
4809         (start_symtab, restart_symtab, reset_symtab_globals): Update.
4810         (last_source_file): Remove.
4811         (set_last_source_file, get_last_source_file): Update.
4812
4813 2018-07-16  Tom Tromey  <tom@tromey.com>
4814
4815         * buildsym.c (prepare_for_building): Add assert.
4816
4817 2018-07-16  Tom Tromey  <tom@tromey.com>
4818
4819         * buildsym.c (~buildsym_compunit): Update.
4820         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
4821         (start_subfile, patch_subfile_names)
4822         (end_symtab_with_blockvector): Update.
4823
4824 2018-07-16  Tom Tromey  <tom@tromey.com>
4825
4826         * buildsym.c (struct buildsym_compunit): Add constructor,
4827         destructor, initializers.
4828         (start_buildsym_compunit): Remove.
4829         (free_buildsym_compunit): Use "delete".
4830         (start_symtab, restart_symtab): Use "new".
4831
4832 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
4833
4834         * symfile.c (set_objfile_default_section_offset): Remove struct
4835         keyword.
4836
4837 2018-07-14  Stafford Horne  <shorne@gmail.com>
4838
4839         * (Responsible Maintainers): Add myself as or1k maintainer.
4840
4841 2018-07-13  Tom Tromey  <tom@tromey.com>
4842
4843         * symfile.c (set_objfile_default_section_offset): Use extra braces
4844         around initializer.
4845
4846 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
4847
4848         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
4849         non-branching basr.
4850
4851 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4852
4853         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
4854         unittests/cli-utils-selftests.c
4855         * unittests/cli-utils-selftests.c: New file.
4856
4857 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4858
4859         * NEWS: Mention new commands. Mention change to 'thread apply'.
4860
4861 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4862
4863         * thread.c (thr_try_catch_cmd): New function.
4864         (thread_apply_all_command): Handle qcs flags.
4865         (thread_apply_command): Handle qcs flags.
4866         (taas_command): New function.
4867         (tfaas_command): New function.
4868         (_initialize_thread): Update to setup the new commands 'taas
4869         and 'tfaas'. Change doc string for 'thread apply'.
4870
4871 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4872
4873         * stack.c: (trailing_outermost_frame): New function, mostly
4874         extracted from backtrace_command_1.
4875         (leading_innermost_frame): New function.
4876         (backtrace_command_1): Update to call trailing_outermost_frame.
4877         (frame_apply_command_count): New function.
4878         (frame_apply_level_command): New function.
4879         (frame_apply_all_command): New function.
4880         (frame_apply_command): New function.
4881         (faas_command): New function.
4882         (frame_cmd_list): New variable.
4883         (_initialize_stack): Update to setup the new commands 'frame apply'
4884         and 'faas'.
4885
4886 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4887
4888         * cli-utils.c (number_or_range_parser::get_number): Only handle
4889         numbers or convenience var as numbers.
4890         (parse_flags): New function.
4891         (parse_flags_qcs): New function.
4892         (number_or_range_parser::finished): Ensure parsing end is detected
4893         before end of string.
4894         * cli-utils.h (parse_flags): New function.
4895         (parse_flags_qcs): New function.
4896         (number_or_range_parser): Remove m_finished bool.
4897         (number_or_range_parser::skip_range): Set m_in_range to false.
4898
4899 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
4900
4901         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
4902         on Windows.
4903
4904 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
4905             Jan Kratochvil  <jan.kratochvil@redhat.com>
4906             Paul Fertser  <fercerpav@gmail.com>
4907             Tsutomu Seki  <sekiriki@gmail.com>
4908             Pedro Alves  <palves@redhat.com>
4909
4910         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
4911         'unittests/parse-connection-spec-selftests.c'.
4912         (COMMON_SFILES): Add 'common/netstuff.c'.
4913         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
4914         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
4915         * common/netstuff.c: New file.
4916         * common/netstuff.h: New file.
4917         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
4918         (wait_for_connect): Update comment.  New parameter
4919         'gdb::optional<int> sock' instead of 'struct serial *scb'.
4920         Use 'sock' directly instead of 'scb->fd'.
4921         (try_connect): New function, with code from 'net_open'.
4922         (net_open): Rewrite main loop to deal with multiple
4923         sockets/addresses.  Handle IPv6-style hostnames; implement
4924         support for IPv6 connections.
4925         * unittests/parse-connection-spec-selftests.c: New file.
4926
4927 2018-07-11  Pedro Alves  <palves@redhat.com>
4928
4929         PR gdb/23377
4930         * remote.c (remote_target::remote_detach_pid): Call
4931         set_current_process.
4932
4933 2018-07-11  Pedro Alves  <palves@redhat.com>
4934
4935         * h8300-tdep.c (h8300_gdbarch_init): Remove
4936         set_gdbarch_ecoff_reg_to_regnum calls.
4937
4938 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
4939
4940         PR c++/23373
4941         * c-typeprint.c (c_type_print_base_struct_union): Don't print
4942         offsets/sizes for static members of a class/struct.
4943
4944 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
4945
4946         * target-descriptions.c (tdesc_register_bitsize): Rename.
4947         * target-descriptions.h (tdesc_register_bitsize): Likewise.
4948         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
4949         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
4950
4951 2018-07-10  Tom Tromey  <tom@tromey.com>
4952
4953         * breakpoint.c (moribund_locations): Now static and a
4954         std::vector.
4955         (breakpoint_init_inferior, moribund_breakpoint_here_p)
4956         (build_bpstat_chain, update_global_location_list)
4957         (breakpoint_retire_moribund): Update.
4958         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
4959         VEC.
4960
4961 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
4962
4963         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
4964         (riscv_register_reggroup_p): Use new function, remove unneeded
4965         parenthesis.
4966         (riscv_push_dummy_call): Extend assert to compare against xlen or
4967         flen based on register type.
4968
4969 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
4970
4971         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
4972
4973 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4974
4975         * remote.c (show_hardware_watchpoint_limit): New function.
4976         (show_hardware_watchpoint_length_limit): New function.
4977         (show_hardware_breakpoint_limit): New function.
4978         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
4979         where appropriate, update help text.
4980
4981 2018-07-09  Tom Tromey  <tom@tromey.com>
4982
4983         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
4984         (CLIBS): Don't mention NAT_CLIBS.
4985
4986 2018-07-09  Tom Tromey  <tom@tromey.com>
4987
4988         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
4989         (LIBGDB_OBS, clean mostlyclean): Update.
4990         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
4991
4992 2018-07-09  Tom Tromey  <tom@tromey.com>
4993
4994         * Makefile.in (%.c: %.y): Use ECHO_YACC.
4995         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
4996         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
4997
4998 2018-07-09  Tom Tromey  <tom@tromey.com>
4999
5000         * Makefile.in (ALLDEPFILES): Remove exec.c.
5001         (COMMON_OBS): Remove exec.o.
5002         (COMMON_SFILES): Add exec.c.
5003
5004 2018-07-09  Tom Tromey  <tom@tromey.com>
5005
5006         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
5007
5008 2018-07-09  Tom Tromey  <tom@tromey.com>
5009
5010         * Makefile.in (clean mostlyclean): Remove stamp-version.
5011         (version.c): Depend on stamp-version.
5012         (stamp-version): New rule, from version.c rule.
5013
5014 2018-07-09  Tom Tromey  <tom@tromey.com>
5015
5016         * Makefile.in (init.c): Depend on stamp-init.
5017         (stamp-init): New rule, from init.c rule.
5018         (clean mostlyclean): Remove stamp-init.
5019
5020 2018-07-09  Tom Tromey  <tom@tromey.com>
5021
5022         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
5023         SUBDIR_GCC_COMPILE_SRCS.
5024
5025 2018-07-09  Tom Tromey  <tom@tromey.com>
5026
5027         * Makefile.in (init.c): Remove some unused sed rules.
5028
5029 2018-07-09  Tom Tromey  <tom@tromey.com>
5030
5031         * Makefile.in (TSOBS): Remove.
5032         (INIT_FILES): Update.
5033         (LIBGDB_OBS): Update.
5034         (COMMON_SFILES): Add inflow.c.
5035         (SFILES): Remove inflow.c.
5036
5037 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
5038
5039         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
5040
5041 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
5042
5043         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
5044         get_saveloc_name, is_signal_frame_name, step_name,
5045         init_remote_name, create_addr_space_name,
5046         destroy_addr_space_name, search_unwind_table_name,
5047         find_dyn_list_name): Constify.
5048
5049 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
5050
5051         * darwin-nat.c (darwin_pthread_kill): New function.
5052         (darwin_resume_thread): Use darwin_pthread_kill.
5053
5054 2018-07-05  Tom de Vries  <tdevries@suse.de>
5055
5056         * macroexp.c (macro_buffer) <operator=>: New member function.
5057
5058 2018-07-04  Tom Tromey  <tom@tromey.com>
5059
5060         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
5061
5062 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
5063
5064         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
5065         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
5066         * maint.c: Likewise.
5067         * top.c: Likewise.
5068
5069 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5070
5071         * NEWS: Create a new section for the next release branch.
5072         Rename the section of the current branch, now that it has
5073         been cut.
5074
5075 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5076
5077         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
5078         * version.in: Bump version to 8.2.50.DATE-git.
5079
5080 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
5081             Pedro Alves  <palves@redhat.com>
5082
5083         * linux-nat.c (linux_init_ptrace): Rename to ...
5084         (linux_init_ptrace_procfs): ... this.  Call
5085         linux_proc_init_warnings.
5086         (linux_nat_target::post_attach)
5087         (linux_nat_target::post_startup_inferior): Adjust.
5088         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
5089         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
5090
5091 2018-07-04  Tom de Vries  <tdevries@suse.de>
5092
5093         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
5094         check ...
5095         (read_comp_unit_head): ... here.
5096
5097 2018-07-03  Tom Tromey  <tom@tromey.com>
5098
5099         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
5100         (stop_tracing, tstatus_command)
5101         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
5102         (print_one_static_tracepoint_marker): Update.
5103         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
5104         std::vector.
5105         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
5106         VEC.
5107         (all_tracepoints, static_tracepoints_here): Return std::vector.
5108
5109 2018-07-03  Tom Tromey  <tom@tromey.com>
5110
5111         * common/ptid.c (ptid_equal): Remove.
5112         * common/ptid.h (ptid_equal): Don't declare.
5113         * ada-tasks.c: Update.
5114         * breakpoint.c: Update.
5115         * common/agent.c: Update.
5116         * corelow.c: Update.
5117         * darwin-nat-info.c: Update.
5118         * darwin-nat.c: Update.
5119         * dcache.c: Update.
5120         * dtrace-probe.c: Update.
5121         * dummy-frame.c: Update.
5122         * fbsd-nat.c: Update.
5123         * frame.c: Update.
5124         * gdbthread.h: Update.
5125         * gnu-nat.c: Update.
5126         * go32-nat.c: Update.
5127         * inf-loop.c: Update.
5128         * inf-ptrace.c: Update.
5129         * infcall.c: Update.
5130         * infcmd.c: Update.
5131         * inflow.c: Update.
5132         * infrun.c: Update.
5133         * linux-fork.c: Update.
5134         * linux-nat.c: Update.
5135         * linux-thread-db.c: Update.
5136         * mi/mi-cmd-var.c: Update.
5137         * mi/mi-interp.c: Update.
5138         * mi/mi-main.c: Update.
5139         * nto-procfs.c: Update.
5140         * ppc-linux-tdep.c: Update.
5141         * procfs.c: Update.
5142         * python/py-inferior.c: Update.
5143         * python/py-record-btrace.c: Update.
5144         * python/py-record.c: Update.
5145         * ravenscar-thread.c: Update.
5146         * regcache.c: Update.
5147         * remote-sim.c: Update.
5148         * remote.c: Update.
5149         * sol-thread.c: Update.
5150         * solib.c: Update.
5151         * target.c: Update.
5152         * tui/tui-stack.c: Update.
5153         * varobj.c: Update.
5154         * windows-nat.c: Update.
5155         * windows-tdep.c: Update.
5156
5157 2018-07-03  Tom Tromey  <tom@tromey.com>
5158
5159         * common/ptid.c (ptid_match): Remove.
5160         * common/ptid.h (ptid_match): Don't declare.
5161         * fbsd-nat.c: Update.
5162         * infcmd.c: Update.
5163         * infrun.c: Update.
5164         * linux-nat.c: Update.
5165         * record-btrace.c: Update.
5166         * regcache.c: Update.
5167         * remote.c: Update.
5168
5169 2018-07-03  Tom Tromey  <tom@tromey.com>
5170
5171         * common/ptid.c (ptid_tid_p): Remove.
5172         * common/ptid.h (ptid_tid_p): Don't declare.
5173         * sol-thread.c: Update.
5174
5175 2018-07-03  Tom Tromey  <tom@tromey.com>
5176
5177         * common/ptid.c (ptid_lwp_p): Remove.
5178         * common/ptid.h (ptid_lwp_p): Don't declare.
5179         * fbsd-nat.c: Update.
5180         * linux-nat.c: Update.
5181         * nat/linux-procfs.c: Update.
5182         * nat/x86-linux-dregs.c: Update.
5183         * sol-thread.c: Update.
5184
5185 2018-07-03  Tom Tromey  <tom@tromey.com>
5186
5187         * common/ptid.c (ptid_is_pid): Remove.
5188         * common/ptid.h (ptid_is_pid): Don't declare.
5189         * infrun.c: Update.
5190         * linux-nat.c: Update.
5191         * mi/mi-interp.c: Update.
5192         * remote.c: Update.
5193         * thread.c: Update.
5194
5195 2018-07-03  Tom Tromey  <tom@tromey.com>
5196
5197         * common/ptid.c (ptid_get_tid): Remove.
5198         * common/ptid.h (ptid_get_tid): Don't declare.
5199         * ada-tasks.c: Update.
5200         * aix-thread.c: Update.
5201         * bsd-uthread.c: Update.
5202         * darwin-nat.c: Update.
5203         * fbsd-nat.c: Update.
5204         * i386-darwin-nat.c: Update.
5205         * infrun.c: Update.
5206         * linux-tdep.c: Update.
5207         * nto-procfs.c: Update.
5208         * ppc-ravenscar-thread.c: Update.
5209         * python/py-infthread.c: Update.
5210         * ravenscar-thread.c: Update.
5211         * sol-thread.c: Update.
5212         * sparc-ravenscar-thread.c: Update.
5213         * windows-nat.c: Update.
5214
5215 2018-07-03  Tom Tromey  <tom@tromey.com>
5216
5217         * common/ptid.c (ptid_get_lwp): Remove.
5218         * common/ptid.h (ptid_get_lwp): Don't declare.
5219         * aarch64-linux-nat.c: Update.
5220         * ada-tasks.c: Update.
5221         * aix-thread.c: Update.
5222         * amd64-linux-nat.c: Update.
5223         * arm-linux-nat.c: Update.
5224         * corelow.c: Update.
5225         * fbsd-nat.c: Update.
5226         * fbsd-tdep.c: Update.
5227         * gnu-nat.c: Update.
5228         * i386-cygwin-tdep.c: Update.
5229         * i386-gnu-nat.c: Update.
5230         * i386-linux-nat.c: Update.
5231         * ia64-linux-nat.c: Update.
5232         * inf-ptrace.c: Update.
5233         * infrun.c: Update.
5234         * linux-fork.c: Update.
5235         * linux-nat.c: Update.
5236         * linux-tdep.c: Update.
5237         * linux-thread-db.c: Update.
5238         * mips-linux-nat.c: Update.
5239         * nat/aarch64-linux-hw-point.c: Update.
5240         * nat/aarch64-linux.c: Update.
5241         * nat/linux-btrace.c: Update.
5242         * nat/linux-osdata.c: Update.
5243         * nat/linux-procfs.c: Update.
5244         * nat/x86-linux-dregs.c: Update.
5245         * obsd-nat.c: Update.
5246         * ppc-fbsd-nat.c: Update.
5247         * ppc-linux-nat.c: Update.
5248         * procfs.c: Update.
5249         * python/py-infthread.c: Update.
5250         * ravenscar-thread.c: Update.
5251         * remote.c: Update.
5252         * s390-linux-nat.c: Update.
5253         * sol-thread.c: Update.
5254         * sol2-tdep.c: Update.
5255         * spu-linux-nat.c: Update.
5256         * x86-linux-nat.c: Update.
5257         * xtensa-linux-nat.c: Update.
5258
5259 2018-07-03  Tom Tromey  <tom@tromey.com>
5260
5261         * common/ptid.c (ptid_get_pid): Remove.
5262         * common/ptid.h (ptid_get_pid): Don't declare.
5263         * aarch64-linux-nat.c: Update.
5264         * ada-lang.c: Update.
5265         * aix-thread.c: Update.
5266         * alpha-bsd-nat.c: Update.
5267         * amd64-fbsd-nat.c: Update.
5268         * amd64-linux-nat.c: Update.
5269         * arm-linux-nat.c: Update.
5270         * arm-nbsd-nat.c: Update.
5271         * auxv.c: Update.
5272         * break-catch-syscall.c: Update.
5273         * breakpoint.c: Update.
5274         * bsd-uthread.c: Update.
5275         * corelow.c: Update.
5276         * ctf.c: Update.
5277         * darwin-nat.c: Update.
5278         * fbsd-nat.c: Update.
5279         * fbsd-tdep.c: Update.
5280         * gcore.c: Update.
5281         * gnu-nat.c: Update.
5282         * hppa-nbsd-nat.c: Update.
5283         * hppa-obsd-nat.c: Update.
5284         * i386-fbsd-nat.c: Update.
5285         * ia64-linux-nat.c: Update.
5286         * inf-ptrace.c: Update.
5287         * infcmd.c: Update.
5288         * inferior.c: Update.
5289         * inferior.h: Update.
5290         * inflow.c: Update.
5291         * infrun.c: Update.
5292         * linux-fork.c: Update.
5293         * linux-nat.c: Update.
5294         * linux-tdep.c: Update.
5295         * linux-thread-db.c: Update.
5296         * m68k-bsd-nat.c: Update.
5297         * mi/mi-interp.c: Update.
5298         * mi/mi-main.c: Update.
5299         * mips-linux-nat.c: Update.
5300         * mips-nbsd-nat.c: Update.
5301         * mips64-obsd-nat.c: Update.
5302         * nat/aarch64-linux-hw-point.c: Update.
5303         * nat/aarch64-linux.c: Update.
5304         * nat/linux-btrace.c: Update.
5305         * nat/linux-osdata.c: Update.
5306         * nat/linux-procfs.c: Update.
5307         * nat/x86-linux-dregs.c: Update.
5308         * nto-procfs.c: Update.
5309         * obsd-nat.c: Update.
5310         * ppc-linux-nat.c: Update.
5311         * ppc-nbsd-nat.c: Update.
5312         * ppc-obsd-nat.c: Update.
5313         * proc-service.c: Update.
5314         * procfs.c: Update.
5315         * python/py-inferior.c: Update.
5316         * python/py-infthread.c: Update.
5317         * ravenscar-thread.c: Update.
5318         * record.c: Update.
5319         * remote-sim.c: Update.
5320         * remote.c: Update.
5321         * rs6000-nat.c: Update.
5322         * s390-linux-nat.c: Update.
5323         * sh-nbsd-nat.c: Update.
5324         * sol-thread.c: Update.
5325         * sparc-nat.c: Update.
5326         * sparc64-tdep.c: Update.
5327         * spu-linux-nat.c: Update.
5328         * spu-tdep.c: Update.
5329         * target-debug.h: Update.
5330         * target.c: Update.
5331         * thread.c: Update.
5332         * tid-parse.c: Update.
5333         * tracefile-tfile.c: Update.
5334         * vax-bsd-nat.c: Update.
5335         * windows-nat.c: Update.
5336         * x86-linux-nat.c: Update.
5337         * x86-nat.c: Update.
5338
5339 2018-07-03  Tom Tromey  <tom@tromey.com>
5340
5341         * common/ptid.c (pid_to_ptid): Remove.
5342         * common/ptid.h (pid_to_ptid): Don't declare.
5343         * aix-thread.c: Update.
5344         * arm-linux-nat.c: Update.
5345         * common/ptid.c: Update.
5346         * common/ptid.h: Update.
5347         * corelow.c: Update.
5348         * ctf.c: Update.
5349         * darwin-nat.c: Update.
5350         * fbsd-nat.c: Update.
5351         * fork-child.c: Update.
5352         * gnu-nat.c: Update.
5353         * go32-nat.c: Update.
5354         * inf-ptrace.c: Update.
5355         * infcmd.c: Update.
5356         * inferior.c: Update.
5357         * infrun.c: Update.
5358         * linux-fork.c: Update.
5359         * linux-nat.c: Update.
5360         * nat/aarch64-linux-hw-point.c: Update.
5361         * nat/fork-inferior.c: Update.
5362         * nat/x86-linux-dregs.c: Update.
5363         * nto-procfs.c: Update.
5364         * obsd-nat.c: Update.
5365         * procfs.c: Update.
5366         * progspace.c: Update.
5367         * remote.c: Update.
5368         * rs6000-nat.c: Update.
5369         * s390-linux-nat.c: Update.
5370         * sol-thread.c: Update.
5371         * spu-linux-nat.c: Update.
5372         * target.c: Update.
5373         * top.c: Update.
5374         * tracefile-tfile.c: Update.
5375         * windows-nat.c: Update.
5376
5377 2018-07-03  Tom Tromey  <tom@tromey.com>
5378
5379         * common/ptid.h (ptid_build): Don't declare.
5380         * common/ptid.c (ptid_build): Remove.
5381         * aix-thread.c: Update.
5382         * bsd-kvm.c: Update.
5383         * bsd-uthread.c: Update.
5384         * common/agent.c: Update.
5385         * common/ptid.c: Update.
5386         * common/ptid.h: Update.
5387         * corelow.c: Update.
5388         * darwin-nat.c: Update.
5389         * fbsd-nat.c: Update.
5390         * gnu-nat.c: Update.
5391         * linux-fork.c: Update.
5392         * linux-nat.c: Update.
5393         * linux-thread-db.c: Update.
5394         * nat/linux-osdata.c: Update.
5395         * nat/linux-procfs.c: Update.
5396         * nto-procfs.c: Update.
5397         * obsd-nat.c: Update.
5398         * proc-service.c: Update.
5399         * procfs.c: Update.
5400         * ravenscar-thread.c: Update.
5401         * remote-sim.c: Update.
5402         * remote.c: Update.
5403         * sol-thread.c: Update.
5404         * target.c: Update.
5405         * windows-nat.c: Update.
5406
5407 2018-07-03  Tom Tromey  <tom@tromey.com>
5408
5409         * infrun.c (follow_exec): Use exit_inferior_silent.
5410         * inferior.c (exit_inferior_num_silent): Remove.
5411         * inferior.h (exit_inferior_num_silent): Don't declare.
5412
5413 2018-07-03  Tom Tromey  <tom@tromey.com>
5414
5415         PR cli/23340:
5416         * darwin-nat.c (darwin_attach_pid): Reset inferior and
5417         inferior_ptid on error.
5418
5419 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
5420             Simon Marchi  <simon.marchi@polymtl.ca>
5421
5422         PR tdep/8282
5423         * disasm.h (gdb_disassembler): Add
5424         `m_disassembler_options_holder'. member
5425         * disasm.c (get_all_disassembler_options): New function.
5426         (gdb_disassembler::gdb_disassembler): Use it.
5427         (gdb_buffered_insn_length_init_dis): Likewise.
5428         (gdb_buffered_insn_length): Adjust accordingly.
5429         (set_disassembler_options): Handle options with arguments.
5430         (show_disassembler_options_sfunc): Likewise.  Add a leading new
5431         line if showing options with descriptions.
5432         (disassembler_options_completer): Adapt to using the
5433         `disasm_options_and_args_t' structure.
5434         * mips-tdep.c (mips_disassembler_options): New variable.
5435         (mips_disassembler_options_o32): Likewise.
5436         (mips_disassembler_options_n32): Likewise.
5437         (mips_disassembler_options_n64): Likewise.
5438         (gdb_print_insn_mips): Don't set `disassembler_options'.
5439         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
5440         functions.
5441         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
5442         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
5443         `gdbarch_disassembler_options_implicit' and
5444         `gdbarch_valid_disassembler_options'.
5445         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
5446         `disasm_options_and_args_t' structure.
5447         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
5448         method.
5449         (valid_disassembler_options): Switch from `disasm_options_t' to
5450         the `disasm_options_and_args_t' structure.
5451         * NEWS: Document `set disassembler-options' support for the MIPS
5452         target.
5453         * gdbarch.h: Regenerate.
5454         * gdbarch.c: Regenerate.
5455
5456 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
5457
5458         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
5459
5460 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
5461
5462         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
5463         parameter in call to amd64_target_description.
5464         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
5465         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
5466         (amd64fbsd_init_abi): Likewise.
5467         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
5468         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
5469         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
5470         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
5471
5472 2018-06-29  Pedro Alves  <palves@redhat.com>
5473
5474         * gdb/amd64-tdep.h (amd64_create_target_description): Add
5475         "segments" parameter.
5476         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
5477         (_initialize_amd64_tdep): Update call to
5478         amd64_create_target_description.
5479         (amd64_target_description): Add "segments" parameter.  Adjust
5480         the implementation to use it.
5481         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
5482         call to amd64_create_target_description.
5483         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
5484         * gdb/arch/amd64.h (amd64_create_target_description): Add
5485         "segments" register.
5486         * gdb/arch/amd64.c (amd64_create_target_description): Add
5487         "segments" parameter.  Call create_feature_i386_64bit_segments
5488         only if SEGMENTS is true.
5489         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
5490         call to amd64_create_target_description.
5491
5492 2018-06-29  Pedro Alves  <palves@redhat.com>
5493
5494         * thread.c (thread_target_id_str): New, factored out from ...
5495         (print_thread_info_1): ... here.  Use it to compute the max
5496         "Target Id" column width.
5497
5498 2018-06-29  Pedro Alves  <palves@redhat.com>
5499
5500         * remote.c (remote_target::extra_thread_info): Delete
5501         'display_buf' and 'n' locals.  from the cache, regardless of
5502         packet mechanims is in use.  Use cache for qThreadExtra and qP
5503         methods too.
5504
5505 2018-06-29  Pedro Alves  <palves@redhat.com>
5506
5507         * blockframe.c (find_pc_sect_containing_function): New function.
5508         * breakpoint.c (print_breakpoint_location): Don't call
5509         find_pc_sect_function.
5510         * linespec.c (create_sals_line_offset): Record the location's
5511         symbol in the sal.
5512         * linespec.c (convert_address_location_to_sals): Fill in sal's
5513         symbol with find_pc_sect_containing_function.
5514         * symtab.c (find_function_start_sal): Rename to ...
5515         (find_function_start_sal_1): ... this.
5516         (find_function_start_sal): Reimplement as wrapper around
5517         find_function_start_sal_1, and use
5518         find_pc_sect_containing_function to fill in the sal's symbol.
5519         (find_function_start_sal(symbol*, bool)): Adjust.
5520         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
5521         comments.
5522         (find_pc_sect_containing_function): Declare.
5523
5524 2018-06-29  Pedro Alves  <palves@redhat.com>
5525
5526         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
5527         true if the the location has no symbol.
5528
5529 2018-06-28  Tom Tromey  <tom@tromey.com>
5530
5531         * NEWS: Mention --enable-codesign.
5532         * silent-rules.mk (ECHO_SIGN): New variable.
5533         * configure.ac: Add --enable-codesign.
5534         * configure: Rebuild.
5535         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
5536         (gdb$(EXEEXT)): Optionally invoke codesign.
5537
5538 2018-06-28  Pedro Alves  <palves@redhat.com>
5539
5540         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
5541         comments.
5542         (switch_to_thread_no_regs): Adjust comment.
5543         * infcmd.c (stop_pc): Delete.
5544         (post_create_inferior, info_program_command): Replace references
5545         to stop_pc with references to thread_info->suspend.stop_pc.
5546         * inferior.h (stop_pc): Delete declaration.
5547         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
5548         (handle_inferior_event_1, handle_signal_stop)
5549         (process_event_stop_test, keep_going_stepped_thread)
5550         (handle_step_into_function, handle_step_into_function_backward)
5551         (print_stop_location): Replace references to stop_pc with
5552         references to thread_info->suspend.stop_pc.
5553         (struct infcall_suspend_state) <stop_pc>: Delete field.
5554         (save_infcall_suspend_state, restore_infcall_suspend_state):
5555         Remove references to inf_stat->stop_pc.
5556         * linux-fork.c (fork_load_infrun_state): Likewise.
5557         * record-btrace.c (record_btrace_set_replay): Likewise.
5558         * record-full.c (record_full_goto_entry): Likewise.
5559         * remote.c (print_one_stopped_thread): Likewise.
5560         * target.c (target_resume): Extend comment.
5561         * thread.c (set_executing_thread): New.
5562         (set_executing): Use it.
5563         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
5564         Remove references to stop_pc.
5565
5566 2018-06-28  Pedro Alves  <palves@redhat.com>
5567
5568         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
5569         Moving fetching stop_pc until after ecs->event_thread is refreshed.
5570
5571 2018-06-28  Tom Tromey  <tom@tromey.com>
5572
5573         * coffread.c (coff_symfile_finish): Update.
5574         * xcoffread.c (xcoff_symfile_finish): Update.
5575         * elfread.c (elf_symfile_finish): Update.
5576         * symfile.h (dwarf2_free_objfile): Don't declare.
5577         * dwarf2read.c (_initialize_dwarf2_read): Use
5578         register_objfile_data_with_cleanup.
5579         (dwarf2_free_objfile): Now static.  Change signature.
5580
5581 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5582
5583         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
5584         option "-o" to add-symbol-file-load to add an offset to each
5585         section's load address.
5586         * symfile.c (set_objfile_default_section_offset): New function.
5587
5588 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5589
5590         * symfile.c (add_symbol_file_command): Make sure that sections
5591         with the same name are sorted in the same order.
5592
5593 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5594
5595         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
5596         require the second argument.  If omitted, load sections at the
5597         addresses specified in the file.
5598
5599 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5600
5601         * symfile.c (symbol_file_command, symbol_file_add_main_1)
5602         (_initialize_symfile): Add option "-o" to symbol-file to add an
5603         offset to each section of the symbol file.
5604
5605 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5606
5607         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
5608
5609 2018-06-27  Tom Tromey  <tom@tromey.com>
5610
5611         * stack.c (_initialize_stack): Update "func" help text.
5612
5613 2018-06-27  Tom Tromey  <tom@tromey.com>
5614
5615         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
5616         std::vector.
5617         (unwind_infopy_str, pyuw_create_unwind_info)
5618         (unwind_infopy_add_saved_register, pyuw_sniffer)
5619         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
5620         Update.
5621         (struct saved_reg): Add constructor.
5622         <value>: Now a gdbpy_ref<>.
5623
5624 2018-06-27  Tom Tromey  <tom@tromey.com>
5625
5626         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
5627
5628 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5629
5630         * gdb-gdb.py.in: Format using autopep8.
5631
5632 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5633
5634         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
5635         (type_lookup_function): Recognize CORE_ADDR values.
5636
5637 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5638
5639         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
5640         print tag_name.
5641
5642 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5643
5644         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
5645         <__lt__>: Add.
5646
5647 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5648
5649         * gdb-gdb.py: Move to...
5650         * gdb-gdb.py.in: ... here.
5651         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
5652         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
5653         dependencies.
5654         (distclean): Remove gdb-gdb.py when cleaning.
5655         (gdb-gdb.py, gdb-gdb.gdb): New rules.
5656         * configure: Re-generate.
5657
5658 2018-06-27  Pedro Alves  <palves@redhat.com>
5659
5660         * proc-service.c (get_ps_regcache): New.
5661         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
5662         (ps_lsetfpregs): Use it.
5663
5664 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
5665
5666         PR gdb/21695
5667         * dwarf2read.c (lnp_state_machine::check_line_address): Update declaration.
5668         (dwarf_decode_lines_1): Adjust.
5669
5670 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5671
5672         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
5673         override.
5674         <info_proc>: Likewise.
5675
5676 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
5677
5678         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
5679         to windows_fetch_one_register, and only handle the case of
5680         fetching one register.  Move the code that reloads the context
5681         and iterates over all registers if R is negative to...
5682         (windows_nat_target::fetch_registers): ... here.
5683         (do_windows_store_inferior_registers): Rename to
5684         windows_store_one_register, and only handle the case of storing
5685         one register.  Move the code that handles the case where r is
5686         negative to...
5687         (windows_nat_target::store_registers) ... here.
5688
5689 2018-06-26  Tom Tromey  <tom@tromey.com>
5690
5691         PR rust/22574:
5692         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
5693         * rust-lang.c (rust_print_struct_def): Add podata parameter.
5694         Update.
5695         (rust_internal_print_type): Add podata parameter.
5696         (rust_print_type): Update.
5697
5698 2018-06-26  Tom Tromey  <tom@tromey.com>
5699
5700         * typeprint.h (struct print_offset_data) <update, finish,
5701         maybe_print_hole>: New methods.
5702         <indentation>: New constant.
5703         * typeprint.c (print_offset_data::indentation): Define.
5704         (print_offset_data::maybe_print_hole, print_offset_data::update)
5705         (print_offset_data::finish): Move from c-typeprint.c and rename.
5706         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
5707         (print_spaces_filtered_with_print_options): Update.
5708         (c_print_type_union_field_offset, maybe_print_hole)
5709         (c_print_type_struct_field_offset): Move to typeprint.c and
5710         rename.
5711         (c_type_print_base_struct_union): Update.
5712
5713 2018-06-25  Pedro Alves  <palves@redhat.com>
5714
5715         * gdbthread.h (thread_info_ref, delete_thread)
5716         (delete_thread_silent, first_thread_of_inferior)
5717         (any_thread_of_inferior, switch_to_thread)
5718         (enable_thread_stack_temporaries)
5719         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
5720         (get_last_thread_stack_temporary)
5721         (value_in_thread_stack_temporaries, can_access_registers_thread):
5722         Spell out "struct thread_info" instead of just "thread_info".
5723         * inferior.h (notice_new_inferior): Likewise.
5724
5725 2018-06-25  Pedro Alves  <palves@redhat.com>
5726
5727         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
5728         pass thread_info pointer to delete_thread.
5729         (windows_nat_target::detach): Pass inferior pointer to
5730         detach_inferior.
5731         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
5732         delete_thread.
5733         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
5734         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
5735         and pass a thread_info pointer to delete_thread.
5736         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
5737         pass thread_info pointer to delete_thread.
5738         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
5739         delete_thread_silent call.
5740         * procfs.c (procfs_target::detach): Pass inferior pointer to
5741         detach_inferior.
5742         (procfs_target::wait): Pass thread_info pointer to delete_thread.
5743         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
5744         delete_thread_silent call.
5745         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
5746         pass thread_info pointer to delete_thread.
5747         (windows_nat_target::detach): Pass inferior pointer to
5748         delete_inferior.
5749
5750 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
5751
5752         * regcache.c (readable_regcache::read_part): Fix asserts.
5753         (reg_buffer::raw_collect_part): New function.
5754         (regcache::write_part): Fix asserts.
5755         (reg_buffer::raw_supply_part): New function.
5756         (regcache::transfer_regset_register): New helper function.
5757         (regcache::transfer_regset): Call new functions.
5758         (regcache_supply_regset): Use gdb_byte*.
5759         (regcache::supply_regset): Likewise.
5760         (regcache_collect_regset): Likewise.
5761         (regcache::collect_regset): Likewise.
5762         * regcache.h (reg_buffer::raw_collect_part): New declaration.
5763         (reg_buffer::raw_supply_part): Likewise.
5764         (regcache::transfer_regset_register): Likewise.
5765         (regcache::transfer_regset): Use gdb_byte*.
5766
5767 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
5768
5769         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
5770
5771 2018-06-21  Pedro Alves  <palves@redhat.com>
5772
5773         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
5774         instead of a ptid_t.  All callers adjusted.
5775         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
5776         adjusted.
5777         (print_ada_task_info, display_current_task_id, task_command_1):
5778         Adjust.
5779         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
5780         inferior_thread.
5781         (breakpoint_kind): Adjust.
5782         (remove_breakpoints_pid): Rename to ...
5783         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
5784         pointer.  All callers adjusted.
5785         (bpstat_clear_actions): Use inferior_thread.
5786         (get_bpstat_thread): New.
5787         (bpstat_do_actions): Use it.
5788         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
5789         to take a thread_info pointer.  All callers adjusted.
5790         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
5791         (breakpoint_re_set_thread): Use inferior_thread.
5792         * breakpoint.h (struct inferior): Forward declare.
5793         (bpstat_stop_status): Update.
5794         (remove_breakpoints_pid): Delete.
5795         (remove_breakpoints_inf): New.
5796         * bsd-uthread.c (bsd_uthread_target::wait)
5797         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
5798         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
5799         (maint_btrace_packet_history_cmd)
5800         (maint_btrace_clear_packet_history_cmd): Adjust.
5801         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
5802         inferior_thread.
5803         * cli/cli-interp.c: Include "inferior.h".
5804         * common/refcounted-object.h (struct
5805         refcounted_object_ref_policy): New.
5806         * compile/compile-object-load.c: Include gdbthread.h.
5807         (store_regs): Use inferior_thread.
5808         * corelow.c (core_target::close): Use current_inferior.
5809         (core_target_open): Adjust to use first_thread_of_inferior and use
5810         the current inferior.
5811         * ctf.c (ctf_target::close): Adjust to use current_inferior.
5812         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
5813         <thread>: ... this new field.  All references adjusted.
5814         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
5815         Take a thread_info pointer instead of a ptid_t.
5816         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
5817         (dummy_frame_discard, register_dummy_frame_dtor): Take a
5818         thread_info pointer instead of a ptid_t.
5819         * elfread.c: Include "inferior.h".
5820         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
5821         Use inferior_thread.
5822         * eval.c (evaluate_subexp): Likewise.
5823         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
5824         inferior_thread.
5825         * gdb_proc_service.h (struct thread_info): Forward declare.
5826         (struct ps_prochandle) <ptid>: Delete, replaced by ...
5827         <thread>: ... this new field.  All references adjusted.
5828         * gdbarch.h, gdbarch.c: Regenerate.
5829         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
5830         'thread' parameter.  All implementations and callers adjusted.
5831         * gdbthread.h (thread_info) <set_running>: New method.
5832         (delete_thread, delete_thread_silent): Take a thread_info pointer
5833         instead of a ptid.
5834         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
5835         (first_thread_of_process): Delete, replaced by ...
5836         (first_thread_of_inferior): ... this new function.  All callers
5837         adjusted.
5838         (any_live_thread_of_process): Delete, replaced by ...
5839         (any_live_thread_of_inferior): ... this new function.  All callers
5840         adjusted.
5841         (switch_to_thread, switch_to_no_thread): Declare.
5842         (is_executing): Delete.
5843         (enable_thread_stack_temporaries): Update comment.
5844         <enable_thread_stack_temporaries>: Take a thread_info pointer
5845         instead of a ptid_t.  Incref the thread.
5846         <~enable_thread_stack_temporaries>: Decref the thread.
5847         <m_ptid>: Delete
5848         <m_thr>: New.
5849         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
5850         (get_last_thread_stack_temporary)
5851         (value_in_thread_stack_temporaries, can_access_registers_thread):
5852         Take a thread_info pointer instead of a ptid_t.  All callers
5853         adjusted.
5854         * infcall.c (get_call_return_value): Use inferior_thread.
5855         (run_inferior_call): Work with thread pointers instead of ptid_t.
5856         (call_function_by_hand_dummy): Work with thread pointers instead
5857         of ptid_t.  Use thread_info_ref.
5858         * infcmd.c (proceed_thread_callback): Access thread's state
5859         directly.
5860         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
5861         access thread's state directly.
5862         (continue_command): Use inferior_thread.
5863         (info_program_command): Use find_thread_ptid and access thread
5864         state directly.
5865         (proceed_after_attach_callback): Use thread state directly.
5866         (notice_new_inferior): Take a thread_info pointer instead of a
5867         ptid_t.  All callers adjusted.
5868         (exit_inferior): Take an inferior pointer instead of a pid.  All
5869         callers adjusted.
5870         (exit_inferior_silent): New.
5871         (detach_inferior): Delete.
5872         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
5873         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
5874         (detach_inferior_command, kill_inferior_command): Use
5875         find_inferior_id instead of valid_gdb_inferior_id and
5876         gdb_inferior_id_to_pid.
5877         (inferior_command): Use inferior and thread pointers.
5878         * inferior.h (struct thread_info): Forward declare.
5879         (notice_new_inferior): Take a thread_info pointer instead of a
5880         ptid_t.  All callers adjusted.
5881         (detach_inferior): Delete declaration.
5882         (exit_inferior, exit_inferior_silent): Take an inferior pointer
5883         instead of a pid.  All callers adjusted.
5884         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
5885         (valid_gdb_inferior_id): Delete.
5886         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
5887         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
5888         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
5889         ...
5890         <inf>: ... this new field.
5891         <step_ptid>: Delete, replaced by ...
5892         <step_thread>: ... this new field.
5893         (get_displaced_stepping_state): Take an inferior pointer instead
5894         of a pid.  All callers adjusted.
5895         (displaced_step_in_progress_any_inferior): Adjust.
5896         (displaced_step_in_progress_thread): Take a thread pointer instead
5897         of a ptid_t.  All callers adjusted.
5898         (displaced_step_in_progress, add_displaced_stepping_state): Take
5899         an inferior pointer instead of a pid.  All callers adjusted.
5900         (get_displaced_step_closure_by_addr): Adjust.
5901         (remove_displaced_stepping_state): Take an inferior pointer
5902         instead of a pid.  All callers adjusted.
5903         (displaced_step_prepare_throw, displaced_step_prepare)
5904         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
5905         All callers adjusted.
5906         (start_step_over): Adjust.
5907         (infrun_thread_ptid_changed): Remove bit updating ptids in the
5908         displaced step queue.
5909         (do_target_resume): Adjust.
5910         (fetch_inferior_event): Use inferior_thread.
5911         (context_switch, get_inferior_stop_soon): Take an
5912         execution_control_state pointer instead of a ptid_t.  All callers
5913         adjusted.
5914         (switch_to_thread_cleanup): Delete.
5915         (stop_all_threads): Use scoped_restore_current_thread.
5916         * inline-frame.c: Include "gdbthread.h".
5917         (inline_state) <inline_state>: Take a thread pointer instead of a
5918         ptid_t.  All callers adjusted.
5919         <ptid>: Delete, replaced by ...
5920         <thread>: ... this new field.
5921         (find_inline_frame_state): Take a thread pointer instead of a
5922         ptid_t.  All callers adjusted.
5923         (skip_inline_frames, step_into_inline_frame)
5924         (inline_skipped_frames, inline_skipped_symbol): Take a thread
5925         pointer instead of a ptid_t.  All callers adjusted.
5926         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
5927         (inline_skipped_frames, inline_skipped_symbol): Likewise.
5928         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
5929         pointers directly.
5930         * linux-nat.c (get_detach_signal): Likewise.
5931         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
5932         (thread_db_notice_clone): Adjust.
5933         (thread_db_find_new_threads_silently)
5934         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
5935         a thread pointer instead of a ptid_t.  All callers adjusted.
5936         * mi/mi-cmd-var.c: Include "inferior.h".
5937         (mi_cmd_var_update_iter): Update to use thread pointers.
5938         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
5939         inferior directly.
5940         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
5941         out to ...
5942         (mi_output_running): ... this new function.
5943         (mi_on_resume_1): Adjust to use it.
5944         (mi_user_selected_context_changed): Adjust to use inferior_thread.
5945         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
5946         directly.
5947         (interrupt_thread_callback): : Adjust to use thread and inferior
5948         pointers.
5949         * proc-service.c: Include "gdbthread.h".
5950         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
5951         * progspace-and-thread.c: Include "inferior.h".
5952         * progspace.c: Include "inferior.h".
5953         * python/py-exitedevent.c (create_exited_event_object): Adjust to
5954         hold a reference to an inferior_object.
5955         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
5956         inferior_thread.
5957         * python/py-inferior.c (struct inferior_object): Give the type a
5958         tag name instead of a typedef.
5959         (python_on_normal_stop): No need to check if the current thread is
5960         listed.
5961         (inferior_to_inferior_object): Change return type to
5962         inferior_object.  All callers adjusted.
5963         (find_thread_object): Delete, bits factored out to ...
5964         (thread_to_thread_object): ... this new function.
5965         * python/py-infthread.c (create_thread_object): Use
5966         inferior_to_inferior_object.
5967         (thpy_is_stopped): Use thread pointer directly.
5968         (gdbpy_selected_thread): Use inferior_thread.
5969         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
5970         field, replaced with ...
5971         <thread>: ... this new field.  All users adjusted.
5972         (btpy_insn_or_gap_new): Drop const.
5973         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
5974         callers adjusted.
5975         * python/py-record.c: Include "gdbthread.h".
5976         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
5977         a ptid_t.  All callers adjusted.
5978         (gdbpy_current_recording): Use inferior_thread.
5979         * python/py-record.h (recpy_record_object) <ptid>: Delete
5980         field, replaced with ...
5981         <thread>: ... this new field.  All users adjusted.
5982         (recpy_element_object) <ptid>: Delete
5983         field, replaced with ...
5984         <thread>: ... this new field.  All users adjusted.
5985         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
5986         a ptid_t.  All callers adjusted.
5987         * python/py-threadevent.c: Include "gdbthread.h".
5988         (get_event_thread): Use thread_to_thread_object.
5989         * python/python-internal.h (struct inferior_object): Forward
5990         declare.
5991         (find_thread_object, find_inferior_object): Delete declarations.
5992         (thread_to_thread_object, inferior_to_inferior_object): New
5993         declarations.
5994         * record-btrace.c: Include "inferior.h".
5995         (require_btrace_thread): Use inferior_thread.
5996         (record_btrace_frame_sniffer)
5997         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
5998         (get_thread_current_frame): Use scoped_restore_current_thread and
5999         switch_to_thread.
6000         (get_thread_current_frame): Use thread pointer directly.
6001         (record_btrace_replay_at_breakpoint): Use thread's inferior
6002         pointer directly.
6003         * record-full.c: Include "inferior.h".
6004         * regcache.c: Include "gdbthread.h".
6005         (get_thread_arch_regcache): Use the inferior's address space
6006         directly.
6007         (get_thread_regcache, registers_changed_thread): New.
6008         * regcache.h (get_thread_regcache(thread_info *thread)): New
6009         overload.
6010         (registers_changed_thread): New.
6011         (remote_target) <remote_detach_1>: Swap order of parameters.
6012         (remote_add_thread): <remote_add_thread>: Return the new thread.
6013         (get_remote_thread_info(ptid_t)): New overload.
6014         (remote_target::remote_notice_new_inferior): Use thread pointers
6015         directly.
6016         (remote_target::process_initial_stop_replies): Use
6017         thread_info::set_running.
6018         (remote_target::remote_detach_1, remote_target::detach)
6019         (extended_remote_target::detach): Adjust.
6020         * stack.c (frame_show_address): Use inferior_thread.
6021         * target-debug.h (target_debug_print_thread_info_pp): New.
6022         * target-delegates.c: Regenerate.
6023         * target.c (default_thread_address_space): Delete.
6024         (memory_xfer_partial_1): Use current_inferior.
6025         (target_detach): Use current_inferior.
6026         (target_thread_address_space): Delete.
6027         (generic_mourn_inferior): Use current_inferior.
6028         * target.h (struct target_ops) <thread_address_space>: Delete.
6029         (target_thread_address_space): Delete.
6030         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
6031         pointers directly.
6032         (delete_thread_1, delete_thread, delete_thread_silent): Take a
6033         thread pointer instead of a ptid_t.  Adjust all callers.
6034         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
6035         (first_thread_of_process): Delete, replaced by ...
6036         (first_thread_of_inferior): ... this new function.  All callers
6037         adjusted.
6038         (any_thread_of_process): Rename to ...
6039         (any_thread_of_inferior): ... this, and take an inferior pointer.
6040         (any_live_thread_of_process): Rename to ...
6041         (any_live_thread_of_inferior): ... this, and take an inferior
6042         pointer.
6043         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6044         (value_in_thread_stack_temporaries)
6045         (get_last_thread_stack_temporary): Take a thread pointer instead
6046         of a ptid_t.  Adjust all callers.
6047         (thread_info::set_running): New.
6048         (validate_registers_access): Use inferior_thread.
6049         (can_access_registers_ptid): Rename to ...
6050         (can_access_registers_thread): ... this, and take a thread
6051         pointer.
6052         (print_thread_info_1): Adjust to compare thread pointers instead
6053         of ptids.
6054         (switch_to_no_thread, switch_to_thread): Make extern.
6055         (scoped_restore_current_thread::~scoped_restore_current_thread):
6056         Use m_thread pointer directly.
6057         (scoped_restore_current_thread::scoped_restore_current_thread):
6058         Use inferior_thread.
6059         (thread_command): Use thread pointer directly.
6060         (thread_num_make_value_helper): Use inferior_thread.
6061         * top.c (execute_command): Use inferior_thread.
6062         * tui/tui-interp.c: Include "inferior.h".
6063         * varobj.c (varobj_create): Use inferior_thread.
6064         (value_of_root_1): Use find_thread_global_id instead of
6065         global_thread_id_to_ptid.
6066
6067 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
6068
6069         * regcache.c (readable_regcache::read_part): Avoid memcpy when
6070         possible.
6071         (regcache::write_part): Likewise.
6072         (readable_regcache::cooked_read_part): Update comment.
6073         (readable_regcache::cooked_write_part): Likewise.
6074         * regcache.h: (readable_regcache::read_part): Likewise.
6075         (regcache::write_part): Likewise.
6076
6077 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
6078             Dirk Schubert  <dirk.schubert@arm.com>
6079
6080         * aarch64-linux-nat.c (post_attach): New.
6081         (aarch64_linux_nat_target::post_attach): Override post_attach to
6082         record the number of hardware debug registers.
6083
6084 2018-06-20  Tom Tromey  <tom@tromey.com>
6085
6086         * python/py-param.c (add_setshow_generic): Make parameters const.
6087         (parmpy_init): Update.
6088
6089 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
6090
6091         * regcache.h (regcache_cooked_read_ftype): Rename to...
6092         (register_read_ftype): ...this, change type to function_view.
6093         (class reg_buffer) <save>: Remove src parameter.
6094         (readonly_detached_regcache) <readonly_detached_regcache>: Make
6095         parameter non-const in first overload.  Remove src parameter in
6096         second overload.
6097         * regcache.c (do_cooked_read): Remove.
6098         (readonly_detached_regcache::readonly_detached_regcache): Make
6099         parameter non-const, adjust call to other constructor.
6100         (reg_buffer::save): Remove src parameter.
6101         * frame.c (do_frame_register_read): Remove.
6102         (frame_save_as_regcache): Use lambda function.
6103         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
6104         parameter to ppu2spu_data *.
6105         (ppu2spu_sniffer): Use lambda function.
6106
6107 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
6108
6109         * record-full.c (record_full_target::insert_breakpoint): Remove
6110         "struct" keyword, add const.
6111
6112 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
6113
6114         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
6115         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
6116         * configure.ac: Remove AC_PREREQ, add missing quoting.
6117         * gnulib/configure.ac: Modernize usage of
6118         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
6119         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
6120         (AUTOMAKE_VERSION): Bump to 1.15.1.
6121         * configure: Re-generate.
6122         * config.in: Re-generate.
6123         * aclocal.m4: Re-generate.
6124         * gnulib/aclocal.m4: Re-generate.
6125         * gnulib/config.in: Re-generate.
6126         * gnulib/configure: Re-generate.
6127         * gnulib/import/Makefile.in: Re-generate.
6128
6129 2018-06-19  Pedro Alves  <palves@redhat.com>
6130
6131         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
6132         (lookup_minimal_symbol_by_pc_section): ... here with
6133         gdb_assert_not_reached added.
6134
6135 2018-06-19  Pedro Alves  <palves@redhat.com>
6136
6137         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
6138         parameter with a block parameter.  Compare location's block symbol
6139         with the frame's block instead of addresses.
6140         (skip_inline_frames): Pass the current block instead of the
6141         frame's address.  Break out as soon as we determine the frame
6142         should not be skipped.
6143
6144 2018-06-18  Tom Tromey  <tom@tromey.com>
6145
6146         * solib-aix.c (solib_aix_get_section_offsets): Return
6147         unique_xmalloc_ptr.
6148         (solib_aix_solib_create_inferior_hook): Update.
6149
6150 2018-06-18  Tom Tromey  <tom@tromey.com>
6151
6152         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
6153
6154 2018-06-18  Tom Tromey  <tom@tromey.com>
6155
6156         * solib-frv.c (frv_relocate_main_executable): Use
6157         unique_xmalloc_ptr.
6158         * solib-dsbt.c (dsbt_relocate_main_executable): Use
6159         unique_xmalloc_ptr.
6160
6161 2018-06-18  Tom Tromey  <tom@tromey.com>
6162
6163         * objfiles.h (inhibit_section_map_updates): Update.
6164         (resume_section_map_updates, resume_section_map_updates_cleanup):
6165         Remove.
6166         * solib-svr4.c (svr4_handle_solib_event): Update.
6167         * objfiles.c (inhibit_section_map_updates): Return
6168         scoped_restore_tmpl<int>.
6169         (resume_section_map_updates, resume_section_map_updates_cleanup):
6170         Remove.
6171
6172 2018-06-18  Tom Tromey  <tom@tromey.com>
6173
6174         * valprint.h (read_string): Update.
6175         * valprint.c (read_string): Change type of "buffer".
6176         (val_print_string): Update.
6177         * python/py-value.c (valpy_string): Update.
6178         * language.h (struct language_defn) <la_get_string>: Change
6179         type of "buffer".
6180         (default_get_string, c_get_string): Update.
6181         * language.c (default_get_string): Change type of "buffer".
6182         * guile/scm-value.c (gdbscm_value_to_string): Update.
6183         * c-lang.c (c_get_string): Change type of "buffer".
6184
6185 2018-06-18  Tom Tromey  <tom@tromey.com>
6186
6187         * ser-mingw.c (struct pipe_state_destroyer): New.
6188         (pipe_state_up): New typedef.
6189         (cleanup_pipe_state): Remove.
6190         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
6191
6192 2018-06-18  Tom Tromey  <tom@tromey.com>
6193
6194         * rust-lang.h (rust_yyerror): Don't declare.
6195         * rust-lang.c (rust_language_defn): Update.
6196         * rust-exp.y (yyerror): Now static.
6197         * parse.c (parse_exp_in_context_1): Update.
6198         * p-lang.h (p_yyerror): Don't declare.
6199         * p-lang.c (p_language_defn): Update.
6200         * p-exp.y (yyerror): Now static.
6201         * opencl-lang.c (opencl_language_defn): Update.
6202         * objc-lang.c (objc_language_defn): Update.
6203         * m2-lang.h (m2_yyerror): Don't declare.
6204         * m2-lang.c (m2_language_defn): Update.
6205         * m2-exp.y (yyerror): Now static.
6206         * language.h (struct language_defn) <la_error>: Remove.
6207         * language.c (unk_lang_error): Remove.
6208         (unknown_language_defn, auto_language_defn): Remove.
6209         * go-lang.h (go_yyerror): Don't declare.
6210         * go-lang.c (go_language_defn): Update.
6211         * go-exp.y (yyerror): Now static.
6212         * f-lang.h (f_yyerror): Don't declare.
6213         * f-lang.c (f_language_defn): Update.
6214         * f-exp.y (yyerror): Now static.
6215         * d-lang.h (d_yyerror): Don't declare.
6216         * d-lang.c (d_language_defn): Update.
6217         * d-exp.y (yyerror): Now static.
6218         * c-lang.h (c_yyerror): Don't declare.
6219         * c-lang.c (c_language_defn, cplus_language_defn)
6220         (asm_language_defn, minimal_language_defn): Update.
6221         * c-exp.y (yyerror): Now static.
6222         * ada-lang.h (ada_yyerror): Don't declare.
6223         * ada-lang.c (ada_language_defn): Update.
6224         * ada-exp.y (yyerror): Now static.
6225
6226 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6227
6228         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
6229         (store_sveregs_to_thread): Likewise.
6230         (aarch64_linux_fetch_inferior_registers): Check for SVE.
6231         (aarch64_linux_store_inferior_registers): Likewise.
6232         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
6233         function.
6234         (aarch64_sve_regs_copy_to_regcache): Likewise.
6235         (aarch64_sve_regs_copy_from_regcache): Likewise.
6236         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
6237         declaration.
6238         (aarch64_sve_regs_copy_to_regcache): Likewise.
6239         (aarch64_sve_regs_copy_from_regcache): Likewise.
6240         (sve_context): Structure from Linux headers.
6241         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
6242         (SVE_SIG_ZREG_SIZE): Likewise.
6243         (SVE_SIG_PREG_SIZE): Likewise.
6244         (SVE_SIG_FFR_SIZE): Likewise.
6245         (SVE_SIG_REGS_OFFSET): Likewise.
6246         (SVE_SIG_ZREGS_OFFSET): Likewise.
6247         (SVE_SIG_ZREG_OFFSET): Likewise.
6248         (SVE_SIG_ZREGS_SIZE): Likewise.
6249         (SVE_SIG_PREGS_OFFSET): Likewise.
6250         (SVE_SIG_PREG_OFFSET): Likewise.
6251         (SVE_SIG_PREGS_SIZE): Likewise.
6252         (SVE_SIG_FFR_OFFSET): Likewise.
6253         (SVE_SIG_REGS_SIZE): Likewise.
6254         (SVE_SIG_CONTEXT_SIZE): Likewise.
6255         (SVE_PT_REGS_MASK): Likewise.
6256         (SVE_PT_REGS_FPSIMD): Likewise.
6257         (SVE_PT_REGS_SVE): Likewise.
6258         (SVE_PT_VL_INHERIT): Likewise.
6259         (SVE_PT_VL_ONEXEC): Likewise.
6260         (SVE_PT_REGS_OFFSET): Likewise.
6261         (SVE_PT_FPSIMD_OFFSET): Likewise.
6262         (SVE_PT_FPSIMD_SIZE): Likewise.
6263         (SVE_PT_SVE_ZREG_SIZE): Likewise.
6264         (SVE_PT_SVE_PREG_SIZE): Likewise.
6265         (SVE_PT_SVE_FFR_SIZE): Likewise.
6266         (SVE_PT_SVE_FPSR_SIZE): Likewise.
6267         (SVE_PT_SVE_FPCR_SIZE): Likewise.
6268         (__SVE_SIG_TO_PT): Likewise.
6269         (SVE_PT_SVE_OFFSET): Likewise.
6270         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
6271         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
6272         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
6273         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
6274         (SVE_PT_SVE_PREG_OFFSET): Likewise.
6275         (SVE_PT_SVE_PREGS_SIZE): Likewise.
6276         (SVE_PT_SVE_FFR_OFFSET): Likewise.
6277         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
6278         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
6279         (SVE_PT_SVE_SIZE): Likewise.
6280         (SVE_PT_SIZE): Likewise.
6281         (HAS_SVE_STATE): New define.
6282
6283 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6284
6285         * nat/aarch64-sve-linux-sigcontext.h: New file.
6286         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
6287         new files.
6288         (SVE_VQ_MIN): Likewise.
6289         (SVE_VQ_MAX): Likewise.
6290         (SVE_VL_MIN): Likewise.
6291         (SVE_VL_MAX): Likewise.
6292         (SVE_NUM_ZREGS): Likewise.
6293         (SVE_NUM_PREGS): Likewise.
6294         (sve_vl_valid): Likewise.
6295         (struct user_sve_header): Likewise.
6296
6297 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
6298             Richard Bunt <Richard.Bunt@arm.com>
6299
6300         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
6301         was requested by GDB.
6302
6303 2018-06-15  Tom de Vries  <tdevries@suse.de>
6304
6305         * MAINTAINERS (Write After Approval): Add Tom de Vries.
6306
6307 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
6308
6309         * gnulib/update-gnulib.sh: Print expected versions of
6310         autoconf/aclocal.
6311
6312 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
6313
6314         * arch-utils.c (default_type_align): Use type_length_units.
6315         * gdbtypes.c (type_align): Use type_length_units.
6316
6317 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6318
6319         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
6320         of 'define' command.
6321
6322 2018-06-14  Tom de Vries  <tdevries@suse.de>
6323
6324         PR cli/22573
6325         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
6326         get_no_prettyformat_print_options.
6327
6328 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
6329
6330         * sparc-nat.h: Include target.h.
6331         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
6332         <fetch_registers>: Remove this argument in function call.
6333         <store_registers>: Remove this argument in function call, remove
6334         extra semicolon.
6335         <low_forget_process>: Call sparc64_forget_process instead of
6336         sparc_forget_process.
6337
6338 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
6339
6340         * procfs.c (_initialize_procfs): Use add_inf_child_target.
6341         (procfs_target::make_corefile_notes): Adjust to new
6342         target_read_alloc return type.
6343
6344 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6345             Stephen Roberts  <stephen.roberts@arm.com>
6346
6347         PR gdb/22882
6348         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
6349         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
6350         Move should_notify_stop local into more inner scope.
6351
6352 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6353             Stephen Roberts  <stephen.roberts@arm.com>
6354
6355         PR gdb/22882
6356         * infrun.c (resume_1): Add call to mark_async_event_handler.
6357
6358 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6359
6360         * infrun.c (do_target_wait): Change old version of $pc printed.
6361
6362 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
6363
6364         * dwarf2read.c (read_index_from_section): Rename to...
6365         (read_gdb_index_from_section): ... this, update all callers.
6366         (dwarf2_read_index): Rename to...
6367         (dwarf2_read_gdb_index): ... this, update all callers.
6368
6369 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
6370
6371         * gdb/hppa-linux-nat.c
6372         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
6373         hppa_linux_nat_target::fetch_registers.
6374
6375 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6376
6377         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
6378         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
6379         (AARCH64_DWARF_SVE_FFR): Likewise.
6380         (AARCH64_DWARF_SVE_P0): Likewise.
6381         (AARCH64_DWARF_SVE_Z0): Likewise.
6382
6383 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6384
6385         * common/common-regcache.h (raw_compare): New function.
6386         * regcache.c (regcache::raw_compare): Likewise.
6387         * regcache.h (regcache::raw_compare): New declaration.
6388
6389 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6390
6391         * common/common-regcache.h (reg_buffer_common): New structure.
6392         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
6393         (reg_buffer::raw_supply): Likewise.
6394         (reg_buffer::raw_supply_integer): Likewise.
6395         (reg_buffer::raw_supply_zeroed): Likewise.
6396         (reg_buffer::raw_collect): Likewise.
6397         (reg_buffer::raw_collect_integer): Likewise.
6398         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
6399         (reg_buffer::raw_supply): Likewise.
6400         (reg_buffer::raw_supply_integer): Likewise.
6401         (reg_buffer::raw_supply_zeroed): Likewise.
6402         (reg_buffer::raw_collect): Likewise.
6403         (reg_buffer::raw_collect_integer): Likewise.
6404
6405 2018-06-10  Tom Tromey  <tom@tromey.com>
6406
6407         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
6408         (class remote_state) <stop_reply_queue>: Now std::vector.
6409         (remote_state::~remote_state)
6410         (remote_target::stop_reply_queue_length): Update.
6411         (struct queue_iter_param, remove_child_of_pending_fork)
6412         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
6413         (check_pending_event_prevents_wildcard_vcont_callback)
6414         (remove_stop_reply_for_inferior)
6415         (remove_stop_reply_of_remote_state)
6416         (remote_notif_remove_once_on_match)
6417         (stop_reply_match_ptid_and_ws)
6418         (remote_kill_child_of_pending_fork): Remove.
6419         (remote_target::remove_new_fork_children)
6420         (remote_target::check_pending_events_prevent_wildcard_vcont)
6421         (remote_target::discard_pending_stop_replies)
6422         (remote_target::discard_pending_stop_replies_in_queue)
6423         (remote_target::remote_notif_remove_queued_reply)
6424         (remote_target::queued_stop_reply)
6425         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
6426         (remote_target::wait, remote_target::kill_new_fork_children)
6427         (remote_target::async): Update.
6428
6429 2018-06-10  Tom Tromey  <tom@tromey.com>
6430
6431         * record-full.c (record_full_arch_list_cleanups): Remove.
6432         (record_full_message): Use try/catch.
6433         (record_full_wait_cleanups): Remove.
6434         (record_full_wait_1): Use try/catch.
6435         (record_full_restore): Likewise.
6436
6437 2018-06-10  Tom Tromey  <tom@tromey.com>
6438
6439         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
6440         declare VEC.  Add constructor.
6441         <in_target_beneath>: Now bool.
6442         (record_full_breakpoints): Now a std::vector, static.
6443         (record_full_sync_record_breakpoints)
6444         (record_full_init_record_breakpoints)
6445         (record_full_target::insert_breakpoint)
6446         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
6447
6448 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
6449
6450         * dwarf2read.c (process_cu_includes): Remove struct keyword.
6451         * serial.c (serial_interface_lookup): Remove struct keyword.
6452
6453 2018-06-10  Tom Tromey  <tom@tromey.com>
6454
6455         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
6456         method.
6457         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
6458         a method.
6459         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
6460         method.
6461         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
6462         "beneath" as a method.
6463         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
6464         Use "beneath" as a method.
6465
6466 2018-06-10  Tom Tromey  <tom@tromey.com>
6467
6468         * tracefile.c (struct trace_file_writer_deleter): New.
6469         <operator()>: Rename from trace_file_writer_xfree.
6470         (trace_file_writer_up): New typedef.
6471         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
6472
6473 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
6474
6475         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
6476         <m_registers, m_register_status>: Change type to
6477         std::unique_ptr.
6478         * regcache.c (reg_buffer::reg_buffer): Use new instead of
6479         XCNEWVEC.
6480
6481 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
6482
6483         * common/common-regcache.h (enum register_status): Add
6484         underlying type "signed char".
6485         * regcache.h (reg_buffer) <m_register_status>: Change type to
6486         register_status *.
6487         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
6488         register_status instead of signed char.
6489         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
6490         (reg_buffer::get_register_status): Remove cast.
6491         (readable_regcache::raw_read): Remove cast.
6492         (readable_regcache::cooked_read): Remove cast.
6493
6494 2018-06-09  Tom Tromey  <tom@tromey.com>
6495
6496         * source.c (reverse_search_command, forward_search_command): Use
6497         scoped_fd.
6498
6499 2018-06-09  Tom Tromey  <tom@tromey.com>
6500
6501         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
6502         (serial_ops_list): Now static, std::vector.
6503         (serial_interface_lookup, serial_add_interface): Update.
6504
6505 2018-06-09  Tom Tromey  <tom@tromey.com>
6506
6507         * dwarf2read.c (process_cu_includes): Update.
6508         (process_full_comp_unit): Update.
6509         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
6510         std::vector.
6511
6512 2018-06-08  Paul Koning  <paul_koning@dell.com>
6513
6514         PR gdb/23252
6515
6516         * python/python.c (do_start_initialization):
6517         Avoid call to internal Python API.
6518         (init__gdb_module): New function.
6519
6520 2018-06-08  Gary Benson <gbenson@redhat.com>
6521
6522         * linux-thread-db.c (valprint.h): New include.
6523         (struct check_thread_db_info): New structure.
6524         (check_thread_db_on_load, tdb_testinfo): New static globals.
6525         (check_thread_db, check_thread_db_callback): New functions.
6526         (try_thread_db_load_1): Run integrity checks if requested.
6527         (maintenance_check_libthread_db): New function.
6528         (_initialize_thread_db): Register "maint check libthread-db"
6529         and "maint set/show check-libthread-db".
6530         * NEWS: Mention the above new commands.
6531
6532 2018-06-08  Tom Tromey  <tom@tromey.com>
6533
6534         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
6535         now a method.
6536
6537 2018-06-08  Tom Tromey  <tom@tromey.com>
6538
6539         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
6540
6541 2018-06-08  Tom Tromey  <tom@tromey.com>
6542
6543         * common/btrace-common.h (struct btrace_data): Add constructor,
6544         destructor, move assignment operator.
6545         <empty, clear, fini>: New methods.
6546         <format>: Initialize.
6547         (btrace_data_init, btrace_data_fini, btrace_data_clear)
6548         (btrace_data_empty): Don't declare.
6549         * common/btrace-common.c (btrace_data_init): Remove.
6550         (btrace_data::fini): Rename from btrace_data_fini.
6551         (btrace_data::empty): Rename from btrace_data_empty.
6552         (btrace_data::clear): Rename from btrace_data_clear.  Return
6553         bool.
6554         * btrace.h (make_cleanup_btrace_data): Don't declare.
6555         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
6556         (parse_xml_btrace): Update.
6557         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
6558         (maint_btrace_clear_packet_history_cmd): Update.
6559
6560 2018-06-07  Pedro Alves  <palves@redhat.com>
6561
6562         * target.h (target_ops) <beneath>: Now a method.  All references
6563         updated.
6564         (class target_stack): New.
6565         * target.c (g_target_stack): New.
6566         (g_current_top_target): Delete.
6567         (current_top_target): Get the top target out of g_target_stack.
6568         (target_stack::push, target_stack::unpush): New.
6569         (push_target, unpush_target): Reimplement.
6570         (target_is_pushed): Reimplement in terms of g_target_stack.
6571         (target_ops::beneath, target_stack::find_beneath): New.
6572
6573 2018-06-07  Pedro Alves  <palves@redhat.com>
6574
6575         * target.h (find_target_beneath): Delete declaration.
6576         * target.c (find_target_beneath): Delete definition.
6577         * aix-thread.c: All callers of find_target_beneath adjusted to
6578         call target_ops::beneath instead.
6579         * bsd-uthread.c: Likewise.
6580         * linux-thread-db.c: Likewise.
6581         * ravenscar-thread.c: Likewise.
6582         * sol-thread.c: Likewise.
6583         * spu-multiarch.c: Likewise.
6584
6585 2018-06-07  Pedro Alves  <palves@redhat.com>
6586
6587         * target.h (target_ops) <beneath>: Now a method.  All references
6588         updated.
6589         (target_ops) <m_beneath>: New.
6590         * target.c (target_ops::beneath): New.
6591         * corelow.c: Adjust all references to target_ops::beneath.
6592         * linux-thread-db.c: Likewise.
6593         * make-target-delegates: Likewise.
6594         * record-btrace.c: Likewise.
6595         * record-full.c: Likewise.
6596         * remote.c: Likewise.
6597         * target.c: Likewise.
6598         * target-delegates.c: Regenerate.
6599
6600 2018-06-07  Pedro Alves  <palves@redhat.com>
6601
6602         * target.h (target_stack): Delete.
6603         (current_top_target): Declare function.
6604         * target.c (target_stack): Delete.
6605         (g_current_top_target): New.
6606         (current_top_target): New function.
6607         * auxv.c: Use current_top_target instead of target_stack
6608         throughout.
6609         * avr-tdep.c: Likewise.
6610         * breakpoint.c: Likewise.
6611         * corefile.c: Likewise.
6612         * elfread.c: Likewise.
6613         * eval.c: Likewise.
6614         * exceptions.c: Likewise.
6615         * frame.c: Likewise.
6616         * gdbarch-selftests.c: Likewise.
6617         * gnu-v3-abi.c: Likewise.
6618         * ia64-tdep.c: Likewise.
6619         * ia64-vms-tdep.c: Likewise.
6620         * infcall.c: Likewise.
6621         * infcmd.c: Likewise.
6622         * infrun.c: Likewise.
6623         * linespec.c: Likewise.
6624         * linux-tdep.c: Likewise.
6625         * minsyms.c: Likewise.
6626         * ppc-linux-nat.c: Likewise.
6627         * ppc-linux-tdep.c: Likewise.
6628         * procfs.c: Likewise.
6629         * regcache.c: Likewise.
6630         * remote.c: Likewise.
6631         * rs6000-tdep.c: Likewise.
6632         * s390-linux-nat.c: Likewise.
6633         * s390-tdep.c: Likewise.
6634         * solib-aix.c: Likewise.
6635         * solib-darwin.c: Likewise.
6636         * solib-dsbt.c: Likewise.
6637         * solib-spu.c: Likewise.
6638         * solib-svr4.c: Likewise.
6639         * solib-target.c: Likewise.
6640         * sparc-tdep.c: Likewise.
6641         * sparc64-tdep.c: Likewise.
6642         * spu-tdep.c: Likewise.
6643         * symfile.c: Likewise.
6644         * symtab.c: Likewise.
6645         * target-descriptions.c: Likewise.
6646         * target-memory.c: Likewise.
6647         * target.c: Likewise.
6648         * target.h: Likewise.
6649         * tracefile-tfile.c: Likewise.
6650         * tracepoint.c: Likewise.
6651         * valops.c: Likewise.
6652         * valprint.c: Likewise.
6653         * value.c: Likewise.
6654         * windows-tdep.c: Likewise.
6655         * mi/mi-main.c: Likewise.
6656
6657 2018-06-07  Tom Tromey  <tom@tromey.com>
6658
6659         * valprint.h (build_address_symbolic): Declare.
6660         * printcmd.c (print_address_symbolic): Update.
6661         (build_address_symbolic): Change "name" and "filename" to
6662         std::string.
6663         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
6664         Update.
6665         * defs.h (build_address_symbolic): Remove declaration.
6666
6667 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
6668
6669         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
6670         (aarch64_vnv_type): Add function.
6671         (aarch64_pseudo_register_name): Add V regs for SVE.
6672         (aarch64_pseudo_register_type): Likewise.
6673         (aarch64_pseudo_register_reggroup_p): Likewise.
6674         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
6675         (aarch64_pseudo_read_value): Add V regs for SVE.
6676         (aarch64_pseudo_write_2): Use V0 offset for SVE
6677         (aarch64_pseudo_write): Add V regs for SVE.
6678         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
6679
6680 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
6681
6682         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
6683         (sve_vl_from_vq): Likewise.
6684
6685 2018-06-05  Tom Tromey  <tom@tromey.com>
6686
6687         * cli/cli-cmds.c (show_version): Update.
6688         * top.c (print_gdb_version): Add "interactive" parameter.
6689         Update.
6690         * main.c (captured_main_1): Update.
6691         * top.h (print_gdb_version): Add "interactive" parameter and a
6692         comment.
6693
6694 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
6695
6696         * common/enum-flags.h: Add trailing semicolon to example in
6697         comment.
6698
6699 2018-06-05  Tom Tromey  <tom@tromey.com>
6700
6701         PR cli/12326:
6702         * NEWS: Add entry about pager.
6703         * utils.c (pagination_disabled_for_command): New global.
6704         (prompt_for_continue): Allow "c" response to prompt.
6705         (reinitialize_more_filter): Clear
6706         pagination_disabled_for_command.
6707         (fputs_maybe_filtered): Check pagination_disabled_for_command.
6708
6709 2018-06-04  Tom Tromey  <tom@tromey.com>
6710
6711         * ada-lang.h (ada_lookup_symbol_list): Update.
6712         * ada-lang.c (resolve_subexp): Update.
6713         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
6714         parameter.
6715         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
6716         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
6717         results parameter to std::vector.
6718         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
6719         Update.
6720         * ada-exp.y (block_lookup): Update.
6721         (select_possible_type_sym): Change type of syms.  Remove nsyms
6722         parameter.
6723         (write_var_or_type, write_name_assoc): Update.
6724
6725 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
6726
6727         * windows-nat.c (windows_nat_target::xfer_partial): Return
6728         TARGET_XFER_E_IO if we need to delegate to the target beneath
6729         but BENEATH is NULL.
6730
6731 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
6732
6733         * Makefile.in (config.status): Add configure.nat as a
6734         dependency.
6735
6736 2018-06-04  Tom Tromey  <tom@tromey.com>
6737
6738         * cp-name-parser.y (cpname_state): Add method declarations.
6739         (HANDLE_QUAL): Update.
6740         (cpname_state::d_grab, cpname_state::fill_comp)
6741         (cpname_state::make_operator, cpname_state::make_dtor)
6742         (cpname_state::make_builtin_type, cpname_state::make_name)
6743         (cpname_state::d_qualify, cpname_state::d_int_type)
6744         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
6745         (%union): Move earlier.
6746
6747 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6748
6749         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
6750
6751 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6752
6753         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
6754         (aarch64_pseudo_write_1): Likewise.
6755         (aarch64_pseudo_read_value): Use helper.
6756         (aarch64_pseudo_write): Likewise.
6757
6758 2018-06-04  Pedro Alves  <palves@redhat.com>
6759
6760         * darwin-nat.c (darwin_ops): Delete.
6761         (darwin_attach_pid): Use get_native_target.
6762
6763 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6764
6765         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
6766         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
6767
6768 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6769
6770         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
6771         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
6772         (aarch64_gdbarch_init): Check for SVE.
6773         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
6774
6775 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6776
6777         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
6778         * aarch64-tdep.h (aarch64_read_description): Likewise.
6779         * arch/aarch64.c (aarch64_create_target_description): Likewise.
6780         * arch/aarch64.h (aarch64_create_target_description): Likewise.
6781         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
6782         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
6783         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
6784
6785 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
6786
6787         * value.c (value_fetch_lazy_bitfield): New.
6788         (value_fetch_lazy_memory): New.
6789         (value_fetch_lazy_register): New.
6790         (value_fetch_lazy): Factor out to smaller functions.
6791
6792 2018-06-01  Tom Tromey  <tom@tromey.com>
6793
6794         * cp-name-parser.y (backslashable, represented): Now const.
6795
6796 2018-06-01  Tom Tromey  <tom@tromey.com>
6797
6798         * cp-name-parser.y: Include parser-defs.h.
6799         (parser_fprintf): Remove declaration.
6800
6801 2018-06-01  Tom Tromey  <tom@tromey.com>
6802
6803         * cp-name-parser.y: Use %pure-parser, %lex-param, and
6804         %parse-param.
6805         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
6806         (global_result): Remove globals.
6807         (struct cpname_state): New.
6808         (yyparse): Don't declare.
6809         (yylex, yyerror): Move declarations after %union.
6810         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
6811         (make_name): Add state parameter.
6812         Update all callers.
6813         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
6814         parameter.
6815         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
6816         Update.
6817         (yylex): Add lvalp, state parameters.
6818         (yyerror): Add state parameter.
6819         (cp_demangled_name_to_comp): Update.
6820
6821 2018-06-01  Tom Tromey  <tom@tromey.com>
6822
6823         * cp-name-parser.y (parser_fprintf): Declare.
6824         (GDB_YY_REMAP_PREFIX): Define.
6825         Include yy-remap.h.  Don't redefine yy* identifiers.
6826
6827 2018-06-01  Tom Tromey  <tom@tromey.com>
6828
6829         * python/py-type.c (typy_legacy_template_argument): Update.
6830         * cp-support.h (cp_demangled_name_to_comp): Update.
6831         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
6832         parameter to be a "std::string *".
6833         (main): Update.
6834
6835 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
6836
6837         * ada-lex.l: Include "diagnostics.h" instead of
6838         "common/diagnostics.h".
6839         * unittests/environ-selftests.c: Likewise.
6840         * common/diagnostics.h: Moved to ../include.
6841
6842 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
6843
6844         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
6845         to language_mode_manual while calling breakpoint_re_set_one.
6846
6847 2018-06-01  Tom Tromey  <tom@tromey.com>
6848
6849         * valops.c (value_cast_structs, destructor_name_p): Update.
6850         * symtab.c (gdb_mangle_name): Update.
6851         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
6852         Update.
6853         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
6854         (pascal_object_print_value_fields, pascal_object_print_value):
6855         Update.
6856         * p-typeprint.c (pascal_type_print_derivation_info): Update.
6857         * linespec.c (find_methods): Update.
6858         * gdbtypes.h (type_name_no_tag): Remove.
6859         (type_name_or_error): Rename from type_name_no_tag_or_error.
6860         * gdbtypes.c (type_name_no_tag): Remove.
6861         (type_name_or_error): Rename from type_name_no_tag_or_error.
6862         (lookup_struct_elt_type, check_typedef): Update.
6863         * expprint.c (print_subexp_standard): Update.
6864         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
6865         * d-namespace.c (d_lookup_nested_symbol): Update.
6866         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
6867         (cp_print_class_member): Update.
6868         * cp-namespace.c (cp_lookup_nested_symbol): Update.
6869         * completer.c (add_struct_fields): Update.
6870         * c-typeprint.c (cp_type_print_derivation_info)
6871         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
6872         Update.
6873         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
6874         (ada_prefer_type, ada_is_exception_sym): Update.
6875
6876 2018-06-01  Tom Tromey  <tom@tromey.com>
6877
6878         * valops.c (enum_constant_from_type, value_namespace_elt)
6879         (value_maybe_namespace_elt): Update.
6880         * valarith.c (find_size_for_pointer_math): Update.
6881         * target-descriptions.c (make_gdb_type): Update.
6882         * symmisc.c (print_symbol): Update.
6883         * stabsread.c (define_symbol, read_type)
6884         (complain_about_struct_wipeout, add_undefined_type)
6885         (cleanup_undefined_types_1): Update.
6886         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
6887         (rust_range_type_p, val_print_struct, rust_print_struct_def)
6888         (rust_internal_print_type, rust_composite_type)
6889         (rust_evaluate_funcall, rust_evaluate_subexp)
6890         (rust_inclusive_range_type_p): Update.
6891         * python/py-type.c (typy_get_tag): Update.
6892         * p-typeprint.c (pascal_type_print_base): Update.
6893         * mdebugread.c (parse_symbol, parse_type): Update.
6894         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
6895         Update.
6896         * guile/scm-type.c (gdbscm_type_tag): Update.
6897         * go-lang.c (sixg_string_p): Update.
6898         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
6899         Update.
6900         * gdbtypes.h (struct main_type) <tag_name>: Remove.
6901         (TYPE_TAG_NAME): Remove.
6902         * gdbtypes.c (type_name_no_tag): Simplify.
6903         (check_typedef, check_types_equal, recursive_dump_type)
6904         (copy_type_recursive, arch_composite_type): Update.
6905         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
6906         in summary mode when needed.
6907         * eval.c (evaluate_funcall): Update.
6908         * dwarf2read.c (fixup_go_packaging, read_structure_type)
6909         (process_structure_scope, read_enumeration_type)
6910         (read_namespace_type, read_module_type, determine_prefix): Update.
6911         * cp-support.c (inspect_type): Update.
6912         * coffread.c (process_coff_symbol, decode_base_type): Update.
6913         * c-varobj.c (c_is_path_expr_parent): Update.
6914         * c-typeprint.c (c_type_print_base_struct_union): Update.
6915         (c_type_print_base_1): Update.  Print struct/class/union/enum in
6916         summary when using C language.
6917         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
6918         (gen_maybe_namespace_elt): Update.
6919         * ada-lang.c (ada_type_name): Simplify.
6920         (empty_record, ada_template_to_fixed_record_type_1)
6921         (template_to_static_fixed_type)
6922         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
6923
6924 2018-06-01  Tom Tromey  <tom@tromey.com>
6925
6926         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
6927         c_print_type.
6928         * c-typeprint.c (c_print_type_1): Add "language" parameter.
6929         (c_print_type): Update.
6930         (c_print_type): New overload.
6931         (c_type_print_varspec_prefix, c_type_print_args)
6932         (c_type_print_varspec_suffix, c_print_type_no_offsets)
6933         (c_type_print_base_struct_union, c_type_print_base_1)
6934         (cp_type_print_method_args): Add "language" parameter.
6935         (c_type_print_base): Update.
6936         * c-lang.h (c_print_type): Add new overload.
6937
6938 2018-06-01  Tom Tromey  <tom@tromey.com>
6939
6940         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
6941         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
6942
6943 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
6944
6945         * aarch64-tdep.c (aarch64_sve_register_names): New const
6946         var.
6947         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
6948         (AARCH64_SVE_Z_REGS_NUM): New define.
6949         (AARCH64_SVE_P_REGS_NUM): Likewise.
6950         (AARCH64_SVE_NUM_REGS): Likewise.
6951
6952 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
6953
6954         * nat/linux-ptrace.h [__alpha__]
6955         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
6956         definitions.
6957
6958 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
6959
6960         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
6961         the endianness selected.
6962         * NEWS: Document `set endian auto' mode operation update.
6963
6964 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
6965
6966         * Makefile.in: Add new header.
6967         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
6968         (sve_vl_from_vg): Likewise.
6969         (sve_vq_from_vl): Likewise.
6970         (sve_vl_from_vq): Likewise.
6971         (sve_vq_from_vg): Likewise.
6972         (sve_vg_from_vq): Likewise.
6973         * configure.nat: Add new c file.
6974         * nat/aarch64-sve-linux-ptrace.c: New file.
6975         * nat/aarch64-sve-linux-ptrace.h: New file.
6976
6977 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
6978
6979         * aarch64-linux-nat.c (aarch64_linux_read_description):
6980         Add parmeter zero.
6981         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
6982         Likewise.
6983         * aarch64-tdep.c (tdesc_aarch64_list): Add.
6984         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
6985         (aarch64_gdbarch_init): Add parmeter zero.
6986         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
6987         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
6988         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
6989         parmeter.
6990         * doc/gdb.texinfo: Describe SVE feature
6991         * features/aarch64-sve.c: New file.
6992
6993 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
6994
6995         PR gdb/23210
6996         * gdbarch.sh (significant_addr_bit): Default to zero when
6997         not set by target architecture.
6998         * gdbarch.c: Re-generated.
6999         * utils.c (address_significant): Update.
7000
7001 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
7002
7003         * stack.c (func_command): Remove trailing newline in call to error.
7004
7005 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7006
7007         * regcache.h (regcache_raw_collect): Remove, update callers to
7008         use regcache::raw_collect.
7009         * regcache.c (regcache_raw_collect): Remove.
7010
7011 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7012
7013         * regcache.h (regcache_raw_supply): Remove, update callers to
7014         use detached_regcache::raw_supply.
7015         * regcache.c (regcache_raw_supply): Remove.
7016
7017 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7018
7019         * regcache.h (regcache_cooked_write_part): Remove, update
7020         callers to use regcache::cooked_write_part.
7021         * regcache.c (regcache_cooked_write_part): Remove.
7022
7023 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7024
7025         * regcache.h (regcache_cooked_read_part): Remove, update callers
7026         to use readable_regcache::cooked_read_part.
7027         * regcache.c (regcache_cooked_read_part): Remove.
7028
7029 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7030
7031         * regcache.h (regcache_cooked_read_value): Remove, update
7032         callers to use readable_regcache::cooked_read_value.
7033         * regcache.c (regcache_cooked_read_value): Remove.
7034
7035 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7036
7037         * regcache.h (regcache_cooked_write): Remove, update callers to
7038         use regcache::cooked_write.
7039         * regcache.c (regcache_cooked_write): Remove.
7040
7041 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7042
7043         * regcache.h (regcache_invalidate): Remove, update callers to
7044         use detached_regcache::invalidate instead.
7045         * regcache.c (regcache_invalidate): Remove.
7046
7047 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7048
7049         * regcache.h (regcache_raw_write_part): Remove, update callers
7050         to use regcache::raw_write_part instead.
7051         * regcache.c (regcache_raw_write_part): Remove.
7052
7053 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7054
7055         * regcache.h (regcache_raw_read_part): Remove, update callers to
7056         use readable_regcache::raw_read_part instead.
7057         * regcache.c (regcache_raw_read_part): Remove.
7058
7059 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7060
7061         * regcache.h (regcache_cooked_read): Remove, update callers to
7062         use readable_regcache::cooked_read instead.
7063         * regcache.c (regcache_cooked_read): Remove.
7064
7065 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7066
7067         * regcache.h (regcache_raw_write): Remove, update callers to use
7068         regcache::raw_write instead.
7069         * regcache.c (regcache_raw_write): Remove.
7070
7071 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7072
7073         * regcache.h (regcache_raw_read): Remove, update callers to use
7074         readable_regcache::raw_read instead.
7075         * regcache.c (regcache_raw_read): Remove.
7076
7077 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7078
7079         * regcache.h (regcache_raw_update): Remove, update callers to
7080         use readable_regcache::raw_update instead.
7081         * regcache.c (regcache_raw_update): Remove.
7082
7083 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7084
7085         * regcache.h (regcache_register_status): Remove, update callers
7086         to use reg_buffer::get_register_status directly instead.
7087         * regcache.c (regcache_register_status): Remove.
7088
7089 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7090
7091         * regcache.h (regcache_get_ptid): Remove, update all callers to
7092         call regcache::ptid instead.
7093         * regcache.c (regcache_get_ptid): Remove.
7094
7095 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7096
7097         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
7098
7099 2018-05-30  Pedro Alves  <palves@redhat.com>
7100
7101         * common/common-exceptions.h (exception_rethrow): Use
7102         ATTRIBUTE_NORETURN.
7103
7104 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
7105
7106         * breakpoint.c (print_solib_event, check_status_catch_solib):
7107         Remove struct keyword in range-based for loops.
7108         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
7109         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
7110         Likewise.
7111         * linespec.c (find_superclass_methods, search_minsyms_for_name):
7112         Likewise.
7113         * symfile.c (addr_info_make_relative): Likewise.
7114         * thread.c (value_in_thread_stack_temporaries): Likewise.
7115
7116 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
7117
7118         PR gdb/16841
7119         * valops.c (value_struct_elt_for_reference): Call check_typedef on
7120         aggregate type to get its real type before accessing it.
7121
7122 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
7123
7124         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
7125         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
7126         * coff-pe-read.c (add_pe_forwarded_sym): Replace
7127         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
7128         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
7129         * jit.c (jit_breakpoint_re_set_internal): Likewise.
7130         * printcmd.c (info_address_command): Likewise.
7131
7132 2018-05-29  Tom Tromey  <tom@tromey.com>
7133
7134         * windows-nat.c (handle_exception): Update fall-through comment.
7135
7136 2018-05-29  Tom Tromey  <tom@tromey.com>
7137
7138         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
7139         (struct program_space) <added_solibs>: Now a std::vector.
7140         * breakpoint.c (print_solib_event): Update.
7141         (check_status_catch_solib): Update.
7142         * progspace.c (clear_program_space_solib_cache): Update.
7143         * solib.c (update_solib_list): Update.
7144
7145 2018-05-29  Tom Tromey  <tom@tromey.com>
7146
7147         * python/py-type.c (typy_richcompare): Update.
7148         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
7149         * gdbtypes.h (types_deeply_equal): Return bool.
7150         (types_equal): Likewise.
7151         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
7152         declare VEC.
7153         (check_types_equal): Change worklist to std::vector.  Return
7154         bool.
7155         (struct type_equality_entry): Add constructor.
7156         (compare_maybe_null_strings): Return bool.
7157         (check_types_worklist): Return bool.  Change worklist to
7158         std::vector.
7159         (types_deeply_equal): Use std::vector.
7160         (types_equal): Return bool.
7161         (compare_maybe_null_strings): Simplify.
7162
7163 2018-05-29  Tom Tromey  <tom@tromey.com>
7164
7165         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
7166
7167 2018-05-29  Tom Tromey  <tom@tromey.com>
7168
7169         * objc-lang.h: Don't include cp-support.h.
7170         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
7171         declare VEC.
7172
7173 2018-05-27  Tom Tromey  <tom@tromey.com>
7174
7175         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
7176
7177 2018-05-25  Tom Tromey  <tom@tromey.com>
7178
7179         * value.c (value::location): Initialize.
7180
7181 2018-05-25  Tom Tromey  <tom@tromey.com>
7182
7183         * dbxread.c (init_bincl_list): Remove.
7184         (bincl_list): Now a std::vector.
7185         (bincls_allocated, next_bincl): Remove.
7186         (free_bincl_list, do_free_bincl_list_cleanup)
7187         (make_cleanup_free_bincl_list): Remove.
7188         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
7189         unique_xmalloc_ptr.
7190         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
7191         (struct header_file_location): Add constructor.
7192         (add_bincl_to_list): Remove.
7193
7194 2018-05-25  Tom Tromey  <tom@tromey.com>
7195
7196         * tui/tui.c (tui_enable): Update.
7197         * mi/mi-interp.c (mi_interp::init): Update.
7198         * interps.h (class interp) <name>: New method.
7199         <m_name>: Rename from name.
7200         (~scoped_restore_interp): Update.
7201         * interps.c (interp::interp): Update.
7202         (interp_add, interp_set, interp_lookup_existing)
7203         (current_interp_named_p): Update.
7204
7205 2018-05-25  Tom Tromey  <tom@tromey.com>
7206
7207         * interps.c (interp_name): Remove.
7208         * mi/mi-interp.c (mi_interp::init): Update.
7209         * interps.h (interp_name): Remove.
7210         (~scoped_restore_interp): Update.
7211         * tui/tui.c (tui_enable): Update.
7212
7213 2018-05-25  Tom Tromey  <tom@tromey.com>
7214
7215         * utils.c (fputs_maybe_filtered): Update.
7216         * linespec.c (decode_line_full): Update.
7217         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
7218         (mi_print_breakpoint_for_event, mi_solib_loaded)
7219         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
7220         (mi_user_selected_context_changed): Update.
7221         * mi/mi-main.c (mi_execute_command): Update.
7222         * cli/cli-script.c (execute_control_command): Update.
7223         * python/python.c (execute_gdb_command): Update.
7224         * solib.c (info_sharedlibrary_command): Update.
7225         * interps.c (interp_ui_out): Remove.
7226         * interps.h (interp_ui_out): Remove.
7227
7228 2018-05-25  Tom Tromey  <tom@tromey.com>
7229
7230         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
7231         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
7232         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
7233
7234 2018-05-25  Tom Tromey  <tom@tromey.com>
7235
7236         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
7237         * interps.c (interp_exec): Use scoped_restore.
7238
7239 2018-05-25  Tom Tromey  <tom@tromey.com>
7240
7241         * remote.c (remote_target::remote_file_get): Use
7242         gdb::byte_vector.
7243         (remote_target::remote_file_put): Likewise.
7244
7245 2018-05-25  Tom Tromey  <tom@tromey.com>
7246
7247         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
7248         a std::string.
7249         (get_pe_section_index, add_pe_exported_sym): Update.
7250         (read_pe_exported_syms): Use gdb::def_vector.
7251
7252 2018-05-25  Tom Tromey  <tom@tromey.com>
7253
7254         * frame.c (remove_prev_frame): Remove.
7255         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
7256
7257 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
7258
7259         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
7260         Remove prototypes.
7261         * mips-linux-nat.c (supply_fpregset): Always call
7262         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
7263         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
7264         `mips_fill_fpregset'.
7265         * mips-linux-tdep.c (mips_supply_fpregset)
7266         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
7267         (mips_fill_fpregset_wrapper): Remove functions.
7268         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
7269         (mips_linux_fpregset): Remove variable.
7270         (mips_linux_iterate_over_regset_sections): Use
7271         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
7272         (mips_linux_o32_sigframe_init): Remove comment.
7273
7274 2018-05-25  Pedro Alves  <palves@redhat.com>
7275
7276         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
7277         (struct readahead_cache, struct packet_reg, struct
7278         remote_arch_state, class remote_state): Move higher up in the
7279         file.
7280         (remote_target::m_remote_state): Now an object instead of a pointer.
7281         (remote_target::get_remote_state): Adjust.
7282
7283 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7284
7285         * stack.c (select_and_print_frame): Delete.
7286         (struct function_bounds): Move struct within function.
7287         (func_command): Most content moved into new function
7288         find_frame_for_function, use new function, print result, add
7289         function comment.
7290         (find_frame_for_function): New function, now returns a result.
7291
7292 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7293
7294         * stack.c (iterate_over_block_arg_vars): Fix comment.
7295         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
7296
7297 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7298
7299         PR gdb/23203
7300         * frame.c
7301         (scoped_restore_selected_frame::scoped_restore_selected_frame):
7302         Define.
7303         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
7304         Define.
7305         * frame.h (class scoped_restore_selected_frame): New class.
7306         * stack.c (print_frame_local_vars): Remove catching and rethrowing
7307         of any exception, use scoped_restore_selected_frame to restore the
7308         frame instead.
7309
7310 2018-05-24  Pedro Alves  <palves@redhat.com>
7311
7312         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
7313         override.
7314
7315 2018-05-23  Tom Tromey  <tom@tromey.com>
7316
7317         * complaints.c (struct complaints): Remove.
7318         (symfile_complaint_book): Remove.
7319         (series): New global.
7320         (complaint_internal): Update.
7321         (clear_complaints): Update.
7322
7323 2018-05-23  Tom Tromey  <tom@tromey.com>
7324
7325         * complaints.c (counters): New global.
7326         (struct complain): Remove.
7327         (struct complaints) <root>: Remove.
7328         (complaint_sentinel): Remove.
7329         (symfile_complaint_book): Update.
7330         (find_complaint) Remove.
7331         (complaint_internal, clear_complaints): Update.
7332
7333 2018-05-23  Tom Tromey  <tom@tromey.com>
7334
7335         * complaints.c (struct complain) <file, line>: Remove.
7336         (find_complaint): Remove file, line parameters.
7337         (complaint_internal): Update.
7338
7339 2018-05-23  Tom Tromey  <tom@tromey.com>
7340
7341         * complaints.c (vcomplaint): Remove.
7342         (complaint_internal) Merge in contents of vcomplaint.
7343
7344 2018-05-23  Tom Tromey  <tom@tromey.com>
7345
7346         * complaints.c (struct complaints) <explanation>: Remove.
7347         (symfile_explanations): Remove.
7348         (symfile_complaint_book): Update.
7349         (vcomplaint): Update.
7350         (struct explanation): Remove.
7351
7352 2018-05-23  Tom Tromey  <tom@tromey.com>
7353
7354         * complaints.c (symfile_complaints): Remove.
7355         (complaint_internal): Remove "complaints" parameter.
7356         (clear_complaints, vcomplaint): Remove "c" parameter.
7357         (get_complaints): Remove.
7358         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
7359         (dwarf2_debug_line_missing_file_complaint)
7360         (dwarf2_debug_line_missing_end_sequence_complaint)
7361         (dwarf2_complex_location_expr_complaint)
7362         (dwarf2_const_value_length_mismatch_complaint)
7363         (dwarf2_section_buffer_overflow_complaint)
7364         (dwarf2_macro_malformed_definition_complaint)
7365         (dwarf2_invalid_attrib_class_complaint)
7366         (create_addrmap_from_index, dw2_symtab_iter_next)
7367         (dw2_expand_marked_cus)
7368         (dw2_debug_names_iterator::find_vec_in_debug_names)
7369         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
7370         (create_debug_type_hash_table, init_cutu_and_read_dies)
7371         (partial_die_parent_scope, add_partial_enumeration)
7372         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
7373         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
7374         (read_import_statement, read_file_scope, create_dwo_cu_reader)
7375         (create_cus_hash_table, create_dwp_hash_table)
7376         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
7377         (dwarf2_rnglists_process, dwarf2_ranges_process)
7378         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
7379         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
7380         (handle_struct_member_die, process_structure_scope)
7381         (read_array_type, read_common_block, read_module_type)
7382         (read_tag_pointer_type, read_typedef, read_base_type)
7383         (read_subrange_type, load_partial_dies, partial_die_info::read)
7384         (partial_die_info::read, partial_die_info::read)
7385         (partial_die_info::read, read_checked_initial_length_and_offset)
7386         (dwarf2_string_attr, read_formatted_entries)
7387         (dwarf_decode_line_header)
7388         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
7389         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
7390         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
7391         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
7392         (get_signatured_type, get_DW_AT_signature_type)
7393         (decode_locdesc, file_file_name, consume_improper_spaces)
7394         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
7395         (dwarf_decode_macro_bytes, dwarf_decode_macros)
7396         (dwarf2_symbol_mark_computed, set_die_type)
7397         (read_attribute_value): Update.
7398         * stap-probe.c (handle_stap_probe, get_stap_base_address):
7399         Update.
7400         * dbxread.c (unknown_symtype_complaint)
7401         (lbrac_mismatch_complaint, repeated_header_complaint)
7402         (set_namestring, function_outside_compilation_unit_complaint)
7403         (read_dbx_symtab, process_one_symbol): Update.
7404         * gdbtypes.c (stub_noname_complaint): Update.
7405         * windows-nat.c (handle_unload_dll): Update.
7406         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
7407         (decode_base_type): Update.
7408         * xcoffread.c (bf_notfound_complaint, ef_complaint)
7409         (eb_complaint, record_include_begin, record_include_end)
7410         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
7411         (process_xcoff_symbol, read_symbol)
7412         (function_outside_compilation_unit_complaint)
7413         (scan_xcoff_symtab): Update.
7414         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
7415         * buildsym.c (finish_block_internal, make_blockvector)
7416         (end_symtab_get_static_block, augment_type_symtab): Update.
7417         * dtrace-probe.c (dtrace_process_dof)
7418         (dtrace_static_probe_ops::get_probes): Update.
7419         * complaints.h (struct complaint): Don't declare.
7420         (symfile_complaints): Remove.
7421         (complaint_internal): Remove "complaints" parameter.
7422         (complaint): Likewise.
7423         (clear_complaints): Likewise.
7424         * symfile.c (syms_from_objfile_1, finish_new_objfile)
7425         (reread_symbols): Update.
7426         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
7427         (dwarf2_frame_cache, decode_frame_entry): Update.
7428         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
7429         * objc-lang.c (lookup_objc_class, lookup_child_selector)
7430         (info_selectors_command): Update.
7431         * macrotab.c (macro_include, check_for_redefinition)
7432         (macro_undef): Update.
7433         * objfiles.c (filter_overlapping_sections): Update.
7434         * stabsread.c (invalid_cpp_abbrev_complaint)
7435         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
7436         (define_symbol, error_type, read_type, rs6000_builtin_type)
7437         (stabs_method_name_from_physname, read_member_functions)
7438         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
7439         (attach_fields_to_type, complain_about_struct_wipeout)
7440         (read_range_type, read_args, common_block_start)
7441         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
7442         Update.
7443         * mdebugread.c (index_complaint, unknown_ext_complaint)
7444         (basic_type_complaint, bad_tag_guess_complaint)
7445         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
7446         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
7447         (parse_procedure, parse_lines)
7448         (function_outside_compilation_unit_complaint)
7449         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
7450         (bad_tag_guess_complaint, reg_value_complaint): Update.
7451         * cp-support.c (demangled_name_complaint): Update.
7452         * macroscope.c (sal_macro_scope): Update.
7453         * dwarf-index-write.c (class debug_names): Update.
7454
7455 2018-05-23  Tom Tromey  <tom@tromey.com>
7456
7457         * complaints.c (clear_complaints): Remove "noisy" parameter.
7458         * complaints.h (clear_complaints): Update.
7459         * symfile.c (syms_from_objfile_1, finish_new_objfile)
7460         (reread_symbols): Update.
7461
7462 2018-05-23  Tom Tromey  <tom@tromey.com>
7463
7464         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
7465         SUBSEQUENT_MESSAGE.
7466         (vcomplaint, clear_complaints): Update.
7467         (symfile_explanations): Remove some messages.
7468
7469 2018-05-23  Tom Tromey  <tom@tromey.com>
7470
7471         * complaints.c (internal_complaint): Remove.
7472         * complaints.h (internal_complaint): Remove.
7473
7474 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
7475
7476         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
7477
7478 2018-05-22  Pedro Alves  <palves@redhat.com>
7479
7480         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
7481         (remote_fileio_badfd, remote_fileio_return_errno)
7482         (remote_fileio_return_success, remote_fileio_func_open)
7483         (remote_fileio_func_open, remote_fileio_func_close)
7484         (remote_fileio_func_read, remote_fileio_func_write)
7485         (remote_fileio_func_lseek, remote_fileio_func_rename)
7486         (remote_fileio_func_unlink, remote_fileio_func_stat)
7487         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
7488         (remote_fileio_func_isatty, remote_fileio_func_system): Add
7489         remote_target parameter.
7490         (remote_fio_func_map) <func>: Add remote_target parameter.
7491         (do_remote_fileio_request, remote_fileio_request):
7492         * remote-fileio.h (remote_fileio_request):
7493         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
7494         remote_target parameter.
7495         (remote_notif_process, handle_notification): Adjust to pass down
7496         the remote.
7497         (remote_notif_state_allocate): Add remote_target parameter.  Save
7498         it.
7499         * remote-notif.h (struct remote_target): Forward declare.
7500         (struct notif_client) <parse, ack, can_get_pending_events>: Add
7501         remote_target parameter.
7502         (struct remote_notif_state) <remote>: New field.
7503         (remote_notif_ack, remote_notif_parse): Add remote_target
7504         parameter.
7505         (remote_notif_state_allocate, remote_notif_state_allocate): Add
7506         remote_target parameter.
7507         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
7508         (threads_listing_context, rmt_thread_action, protocol_feature)
7509         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
7510         (packet_result, struct threads_listing_context, remote_state):
7511         Move definitions and declarations higher up.
7512         (remote_target) <~remote_target>: Declare.
7513         (remote_download_command_source, remote_file_put, remote_file_get)
7514         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
7515         (remote_hostio_pread_vFile, remote_hostio_send_command)
7516         (remote_hostio_set_filesystem, remote_hostio_open)
7517         (remote_hostio_close, remote_hostio_unlink, remote_state)
7518         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
7519         (get_memory_write_packet_size, get_memory_read_packet_size)
7520         (append_pending_thread_resumptions, remote_detach_1)
7521         (append_resumption, remote_resume_with_vcont)
7522         (add_current_inferior_and_thread, wait_ns, wait_as)
7523         (process_stop_reply, remote_notice_new_inferior)
7524         (process_initial_stop_replies, remote_add_thread)
7525         (btrace_sync_conf, remote_btrace_maybe_reopen)
7526         (remove_new_fork_children, kill_new_fork_children)
7527         (discard_pending_stop_replies, stop_reply_queue_length)
7528         (check_pending_events_prevent_wildcard_vcont)
7529         (discard_pending_stop_replies_in_queue, stop_reply)
7530         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
7531         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
7532         (remote_interrupt_as, remote_interrupt_ns)
7533         (remote_get_noisy_reply, remote_query_attached)
7534         (remote_add_inferior, remote_current_thread, get_current_thread)
7535         (set_thread, set_general_thread, set_continue_thread)
7536         (set_general_process, write_ptid)
7537         (remote_unpack_thread_info_response, remote_get_threadinfo)
7538         (parse_threadlist_response, remote_get_threadlist)
7539         (remote_threadlist_iterator, remote_get_threads_with_ql)
7540         (remote_get_threads_with_qxfer)
7541         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
7542         (get_offsets, remote_check_symbols, remote_supported_packet)
7543         (remote_query_supported, remote_packet_size)
7544         (remote_serial_quit_handler, remote_detach_pid)
7545         (remote_vcont_probe, remote_resume_with_hc)
7546         (send_interrupt_sequence, interrupt_query)
7547         (remote_notif_get_pending_events, fetch_register_using_p)
7548         (send_g_packet, process_g_packet, fetch_registers_using_g)
7549         (store_register_using_P, store_registers_using_G)
7550         (set_remote_traceframe, check_binary_download)
7551         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
7552         (remote_xfer_live_readonly_partial, remote_read_bytes)
7553         (remote_send_printf, remote_flash_write, readchar)
7554         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
7555         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
7556         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
7557         (extended_remote_disable_randomization, extended_remote_run)
7558         (send_environment_packet, extended_remote_environment_support)
7559         (extended_remote_set_inferior_cwd, remote_write_qxfer)
7560         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
7561         (packet_command): Now methods of ...
7562         (remote_target): ... this class.
7563         (m_remote_state) <remote_target>: New field.
7564         (struct remote_state) <stop_reply_queue,
7565         remote_async_inferior_event_token, wait_forever_enabled_p>: New
7566         fields.
7567         (remote_state::remote_state): Allocate stop_reply_queue.
7568         (remote_state): Delete global.
7569         (get_remote_state_raw): Delete.
7570         (remote_target::get_remote_state): Allocate m_remote_state on
7571         demand.
7572         (get_current_remote_target): New.
7573         (remote_ops, extended_remote_ops): Delete.
7574         (wait_forever_enabled_p, remote_async_inferior_event_token):
7575         Delete, moved to struct remote_state.
7576         (remote_target::close): Delete self.  Destruction bits split to
7577         ...
7578         (remote_target::~remote_target): ... this.
7579         (show_memory_packet_size): Adjust to use
7580         get_current_remote_target.
7581         (struct protocol_feature) <func>: Add remote_target parameter.
7582         All callers adjusted.
7583         (curr_quit_handler_target): New.
7584         (remote_serial_quit_handler): Reimplement.
7585         (remote_target::open_1): Adjust to use get_current_remote_target.
7586         Heap-allocate remote_target/extended_remote_target instances.
7587         (vcont_builder::vcont_builder): Add remote_target parameter, and
7588         save it in m_remote.  All callers adjusted.
7589         (vcont_builder::m_remote): New field.
7590         (vcont_builder::restart, vcont_builder::flush)
7591         (vcont_builder::push_action): Use it.
7592         (remote_target::commit_resume): Use it.
7593         (struct queue_iter_param) <remote>: New field.
7594         (remote_target::remove_new_fork_children): Fill in 'remote' field.
7595         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
7596         (check_pending_event_prevents_wildcard_vcont_callback)
7597         (remote_target::check_pending_events_prevent_wildcard_vcont)
7598         (remote_target::discard_pending_stop_replies)
7599         (remote_target::discard_pending_stop_replies_in_queue)
7600         (remote_target::remote_notif_remove_queued_reply): Fill in
7601         'remote' field.
7602         (remote_notif_get_pending_events): New.
7603         (remote_target::readchar, remote_target::remote_serial_write):
7604         Save/restore curr_quit_handler_target.
7605         (putpkt): New.
7606         (kill_new_fork_children): Fill in 'remote' field.
7607         (packet_command): Use get_current_remote_target, defer to
7608         remote_target method of same name.
7609         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
7610         parameter, and save it in m_remote.  All callers adjusted.
7611         (scoped_remote_fd::release): Use m_remote.
7612         (scoped_remote_fd::m_remote): New field.
7613         (remote_file_put, remote_file_get, remote_file_delete): Use
7614         get_current_remote_target, defer to remote_target method of same
7615         name.
7616         (remote_btrace_reset): Add remote_state paremeter.  Update all
7617         callers.
7618         (remote_async_inferior_event_handler). Pass down 'data'.
7619         (remote_new_objfile): Use get_current_remote_target.
7620         (remote_target::vcont_r_supported): New.
7621         (set_range_stepping): Use get_current_remote_target and
7622         remote_target::vcont_r_supported.
7623         (_initialize_remote): Don't allocate 'remote_state' and
7624         'stop_reply_queue' globals.
7625         * remote.h (struct remote_target): Forward declare.
7626         (getpkt, putpkt, remote_notif_get_pending_events): Add
7627         'remote_target' parameter.
7628
7629 2018-05-22  Pedro Alves  <palves@redhat.com>
7630
7631         * remote.c (vcont_builder): Now a class.  Make all data members
7632         private.
7633         (vcont_builder) <vcont_builder, restart, flush, push_action>:
7634         Declare methods.
7635         (vcont_builder_restart): Rename to ...
7636         (vcont_builder::restart): ... this.
7637         (vcont_builder_flush): Rename to ...
7638         (vcont_builder::flush): ... this.
7639         (vcont_builder_push_action): Rename to ...
7640         (vcont_builder::push_action): ... this.
7641         (remote_target::commit_resume): Adjust.
7642
7643 2018-05-22  Pedro Alves  <palves@redhat.com>
7644
7645         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
7646         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
7647         (get_fixed_memory_packet_size): New.
7648         (get_memory_packet_size): Use it.
7649         (set_memory_packet_size): Don't override the config size with
7650         DEFAULT_MAX_MEMORY_PACKET_SIZE.
7651         (show_memory_packet_size): Use get_fixed_memory_packet_size.
7652         Don't refer to get_memory_packet_size if not connected to a remote
7653         target.  Show "(default)" if configured size is 0.
7654
7655 2018-05-22  Pedro Alves  <palves@redhat.com>
7656
7657         * remote.c (remote_target::mourn_inferior): Move
7658         discard_pending_stop_replies call here from ...
7659         (_initialize_remote): ... here.
7660
7661 2018-05-22  Pedro Alves  <palves@redhat.com>
7662
7663         * remote.c (compare_section_command): Remove set_general_process
7664         call.
7665
7666 2018-05-22  Pedro Alves  <palves@redhat.com>
7667
7668         * remote.c (struct packet_reg, struct remote_arch_state):
7669         Move higher up in the file.
7670         (remote_state) <m_arch_states>: Store remote_arch_state values
7671         instead of remote_arch_state pointers.
7672         (remote_state::get_remote_arch_state): Adjust.
7673
7674 2018-05-22  Pedro Alves  <palves@redhat.com>
7675
7676         * remote.c: Include <unordered_map>.
7677         (remote_state): Now a class.
7678         (remote_state) <get_remote_arch_state>: Declare method.
7679         <get_remote_arch_state>: New field.
7680         (remote_arch_state) <remote_arch_state>: Declare ctor.
7681         <regs>: Now a unique_ptr.
7682         (remote_gdbarch_data_handle): Delete.
7683         (get_remote_arch_state): Delete.
7684         (remote_state::get_remote_arch_state): New.
7685         (get_remote_state): Adjust to call remote_state's
7686         get_remote_arch_state method.
7687         (init_remote_state): Delete, bits factored out to ...
7688         (remote_arch_state::remote_arch_state): ... this new method.
7689         (get_remote_packet_size, get_memory_packet_size)
7690         (process_g_packet, remote_target::fetch_registers)
7691         (remote_target::prepare_to_store, store_registers_using_G)
7692         (remote_target::store_registers, remote_target::get_trace_status):
7693         Adjust to call remote_state's method.
7694         (_initialize_remote): Remove reference to
7695         remote_gdbarch_data_handle.
7696
7697 2018-05-22  Pedro Alves  <palves@redhat.com>
7698
7699         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
7700         pread>: New method declarations.
7701         (remote_target::open_1): Adjust.
7702         (readahead_cache_invalidate): Rename to ...
7703         (readahead_cache::invalidate): ... this, and adjust to be a class
7704         method.
7705         (readahead_cache_invalidate_fd): Rename to ...
7706         (readahead_cache::invalidate_fd): ... this, and adjust to be a
7707         class method.
7708         (remote_hostio_pwrite): Adjust.
7709         (remote_hostio_pread_from_cache): Rename to ...
7710         (readahead_cache::pread): ... this, and adjust to be a class
7711         method.
7712         (remote_hostio_close): Adjust.
7713
7714 2018-05-22  Pedro Alves  <palves@redhat.com>
7715
7716         * remote.c (remote_hostio_close_cleanup): Delete.
7717         (class scoped_remote_fd): New.
7718         (remote_file_put, remote_file_get): Use it.
7719
7720 2018-05-22  Pedro Alves  <palves@redhat.com>
7721
7722         (struct vCont_action_support): Use bool and initialize all fields.
7723         (struct readahead_cache): Initialize all fields.
7724         (remote_state): Use bool and initialize all fields.
7725         (remote_state::remote_state, remote_state::~remote_state): New.
7726         (new_remote_state): Delete.
7727         (_initialize_remote): Use new to allocate remote_state.
7728
7729 2018-05-22  Pedro Alves  <palves@redhat.com>
7730             張俊芝  <zjz@zjz.name>
7731
7732         PR gdb/22973
7733         * c-exp.y: Include "c-support.h".
7734         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
7735         of tolower.  Use c_ident_is_alpha to scan names.
7736         * c-lang.c: Include "c-support.h".
7737         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
7738         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
7739         * c-support.h: New file, with bits factored out from ...
7740         * cp-name-parser.y: ... this file.
7741         Include "c-support.h".
7742         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
7743         c-support.h and renamed.
7744         (symbol_end, yylex): Adjust.
7745
7746 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7747
7748         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
7749         parameter type to CORE_ADDR.
7750         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
7751         parameter type in declaration to CORE_ADDR.
7752         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
7753         target_auxv_search to get AT_HWCAP and use the result to get the
7754         target description.
7755         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
7756         to CORE_ADDR. Remove the cast of the return value to unsigned
7757         long. Fix error predicate of target_auxv_search.
7758         (ppc_linux_nat_target::read_description): Change the type of the
7759         hwcap variable to CORE_ADDR.
7760
7761 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7762
7763         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
7764         if the size of fpscr is larger than 32 bits.
7765
7766 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7767
7768         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
7769         (ppc32_linux_vsxregmap): New global.
7770         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
7771         regcache_supply_regset, and regcache_collect_regset.
7772         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
7773         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
7774         (fetch_vsx_register, store_vsx_register): Remove.
7775         (fetch_vsx_registers): Add regno parameter. Get regset using
7776         ppc_linux_vsxregset. Use regset to supply registers.
7777         (store_vsx_registers): Add regno parameter. Get regset using
7778         ppc_linux_vsxregset. Use regset to collect registers.
7779         (fetch_register): Call fetch_vsx_registers instead of
7780         fetch_vsx_register.
7781         (store_register): Call store_vsx_registers instead of
7782         store_vsx_register.
7783         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
7784         new regno parameter.
7785         (store_ppc_registers): Call store_vsx_registers with -1 for the
7786         new regno parameter.
7787         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
7788         (ppc_collect_vsxregset): Remove.
7789
7790 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7791
7792         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
7793         offset fields.
7794         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
7795         for vector register offset fields.
7796         (ppc64_fbsd_reg_offsets): Likewise.
7797         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
7798         to vector register offset fields.
7799         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
7800         to vector register offset fields.
7801         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
7802         vector register offset fields.
7803         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
7804         initializers for vector register offset fields.
7805         (rs6000_aix64_reg_offsets): Likewise.
7806         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
7807         (ppc_supply_vrregset): Remove.
7808         (ppc_collect_vrregset): Remove.
7809         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
7810         (ppc_linux_vrregset) : New function.
7811         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
7812         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
7813         (ppc32_linux_vrregset): Remove.
7814         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
7815         and use result instead of ppc32_linux_vrregset.
7816         (ppc32_linux_reg_offsets): Remove initializers for vector register
7817         offset fields.
7818         (ppc64_linux_reg_offsets): Likewise.
7819         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
7820         * ppc-linux-nat.c: Include regset.h.
7821         (gdb_vrregset_t): Adjust comment to account for little-endian
7822         mode.
7823         (supply_vrregset, fill_vrregset): Remove.
7824         (fetch_altivec_register, store_altivec_register): Remove.
7825         (fetch_altivec_registers): Add regno parameter. Get regset using
7826         ppc_linux_vrregset. Use regset to supply registers.
7827         (store_altivec_registers): Add regno parameter. Get regset using
7828         ppc_linux_vrregset. Use regset to collect registers.
7829         (fetch_register): Call fetch_altivec_registers instead of
7830         fetch_altivec_register.
7831         (store_register): Call store_altivec_registers instead of
7832         store_altivec_register.
7833         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
7834         the new regno parameter.
7835         (store_ppc_registers): Call store_altivec_registers with -1 for
7836         the new regno parameter.
7837
7838 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7839
7840         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
7841         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
7842         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
7843         (gdb_vrregset_t): Change array type size to
7844         PPC_LINUX_SIZEOF_VRREGSET.
7845         (gdb_vsxregset_t): Change array type size to
7846         PPC_LINUX_SIZEOF_VSXREGSET.
7847         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
7848         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
7849         PPC_LINUX_SIZEOF_VSXREGSET.
7850
7851 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7852
7853         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
7854         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
7855         nat/ppc-linux.c.
7856         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
7857         ppc_linux_target_wordsize with tid.
7858         (ppc_linux_nat_target::read_description): Call ppc_linux_target
7859         wordsize with tid.
7860         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
7861         (ppc64_64bit_inferior_p): Add static and inline specifiers.
7862         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
7863         tid parameter. Remove static specifier.
7864         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
7865         (ppc_linux_target_wordsize): New declaration.
7866
7867 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7868
7869         * arch/ppc-linux-common.c: New file.
7870         * arch/ppc-linux-common.h: New file.
7871         * arch/ppc-linux-tdesc.h: New file.
7872         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
7873         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
7874         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
7875         arch/ppc-linux-tdesc.h.
7876         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
7877         arch/ppc-linux-tdesc.h.
7878         (ppc_linux_nat_target::read_description): Remove target
7879         description matching code. Fill a ppc_linux_features struct and
7880         call ppc_linux_match_description with it. Move comment about ISA
7881         2.05 to ppc-linux-common.c.
7882         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
7883         arch/ppc-linux-tdesc.h.
7884         (ppc_linux_core_read_description): Remove target description
7885         matching code. Fill a ppc_linux_features struct and call
7886         ppc_linux_match_description with it.
7887         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
7888         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
7889         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
7890         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
7891         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
7892         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
7893         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
7894         (tdesc_powerpc_e500l): Remove.
7895
7896 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
7897
7898         * ada-lang.c (catch_assert_command): Pass empty string instead
7899         of NULL for excep_string argument.
7900
7901 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
7902
7903         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
7904         the width of the requested register exceeds the width of the
7905         `ptrace' data type.
7906
7907 2018-05-21  Tom Tromey  <tom@tromey.com>
7908
7909         * printcmd.c (output_command): Remove.
7910         (output_command_const): Rename to output_command.
7911         * valprint.h (output_command): Rename from output_command_const.
7912         * tracepoint.c (trace_dump_actions): Call output_command.
7913
7914 2018-05-21  Tom Tromey  <tom@tromey.com>
7915
7916         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
7917         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
7918         * ada-lang.h (create_ada_exception_catchpoint): Update.
7919         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
7920         std::string.
7921         (create_excep_cond_exprs, ~ada_catchpoint)
7922         (should_stop_exception, print_one_exception)
7923         (print_mention_exception, print_recreate_exception): Update.
7924         (ada_get_next_arg): Remove.
7925         (catch_ada_exception_command_split): Use std::string.  Change type
7926         of "excep_string", "cond_string".
7927         (catch_ada_exception_command): Update.
7928         (create_ada_exception_catchpoint): Change type of excep_string.
7929         (ada_exception_sal): Remove excep_string parameter.
7930         (~ada_catchpoint): Remove.
7931
7932 2018-05-21  Tom Tromey  <tom@tromey.com>
7933
7934         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
7935         cleanup.
7936
7937 2018-05-21  Tom Tromey  <tom@tromey.com>
7938
7939         * ada-lang.c (ada_exception_message_1, ada_exception_message):
7940         Return unique_xmalloc_ptr.
7941         (print_it_exception): Update.
7942
7943 2018-05-21  Tom Tromey  <tom@tromey.com>
7944
7945         * tracepoint.c (trace_dump_actions): Use std::string.
7946
7947 2018-05-21  Tom Tromey  <tom@tromey.com>
7948
7949         * symfile.c (reread_symbols): Use std::string for original_name.
7950
7951 2018-05-21  Tom Tromey  <tom@tromey.com>
7952
7953         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
7954         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
7955         constructor.
7956
7957 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
7958
7959         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
7960         instance to...
7961         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
7962         * objfiles.c (get_objfile_bfd_data): Allocate
7963         objfile_per_bfd_storage with obstack_new when allocating on
7964         obstack.
7965
7966 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
7967
7968         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
7969         OBSTACK_ZALLOC.
7970         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
7971         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
7972         * mdebugread.c (mdebug_build_psymtabs): Likewise.
7973         (add_pending): Likewise.
7974         (parse_symbol): Likewise.
7975         (parse_partial_symbols): Likewise.
7976         (psymtab_to_symtab_1): Likewise.
7977         (new_psymtab): Likewise.
7978         (elfmdebug_build_psymtabs): Likewise.
7979         * minsyms.c (terminate_minimal_symbol_table): Likewise.
7980         * objfiles.c (get_objfile_bfd_data): Likewise.
7981         (objfile_register_static_link): Likewise.
7982         * psymtab.c (allocate_psymtab): Likewise.
7983         * stabsread.c (read_member_functions): Likewise.
7984         * xcoffread.c (xcoff_end_psymtab): Likewise.
7985
7986 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
7987
7988         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
7989         compiler supports std::is_trivially_constructible.
7990         * common/poison.h: Include obstack.h.
7991         (IsMallocable): Define to is_trivially_constructible if the
7992         compiler supports it, define to true_type otherwise.
7993         (xobnew): New.
7994         (XOBNEW): Redefine.
7995         (xobnewvec): New.
7996         (XOBNEWVEC): Redefine.
7997         * gdb_obstack.h (obstack_zalloc): New.
7998         (OBSTACK_ZALLOC): Redefine.
7999         (obstack_calloc): New.
8000         (OBSTACK_CALLOC): Redefine.
8001         (obstack_new): New.
8002         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
8003         (gdbarch_obstack): New declaration in gdbarch.h, definition in
8004         gdbarch.c.
8005         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
8006         obstack_calloc/obstack_zalloc.
8007         (gdbarch_obstack_zalloc): Remove.
8008         * target-descriptions.c (tdesc_data_init): Use obstack_new.
8009
8010 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8011
8012         * stack.c (backtrace_command_1): Remove useless variable int i.
8013
8014 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8015
8016         * stack.c (print_frame_info): Fix comment.
8017
8018 2018-05-18  Tom Tromey  <tom@tromey.com>
8019
8020         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
8021         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
8022         (~dwarf2_per_objfile): Update
8023         (dwarf2_get_dwz_file): Use new.
8024         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
8025         unique_ptr.
8026
8027 2018-05-18  Tom Tromey  <tom@tromey.com>
8028
8029         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
8030         unique_ptr.
8031         * dwarf2read.c (struct dwp_file): Add constructor and
8032         initializers.
8033         (open_and_init_dwp_file): Return a unique_ptr.
8034         (dwarf2_per_objfile, create_dwp_hash_table)
8035         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
8036         (lookup_dwo_unit_in_dwp): Update.
8037         (open_and_init_dwp_file, get_dwp_file): Update.
8038
8039 2018-05-18  Tom Tromey  <tom@tromey.com>
8040
8041         * dwarf2read.c (dwarf2_per_objfile): Update.
8042         (struct mapped_index): Add initializers.
8043         (dwarf2_read_index): Use new.
8044         (dw2_symtab_iter_init): Update.
8045         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
8046         unique_ptr.
8047
8048 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8049
8050         * dwarf2read.c (mapped_index) <total_size>: Remove.
8051
8052 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8053
8054         * unittests/format_pieces-selftests.c (test_format_specifier):
8055         Add ARI comments.
8056
8057 2018-05-18  Tom Tromey  <tom@tromey.com>
8058
8059         * c-typeprint.c (maybe_print_hole): New function.
8060         (c_print_type_struct_field_offset): Update.
8061         (c_type_print_base_struct_union): Call maybe_print_hole.
8062
8063 2018-05-17  Keith Seitz  <keiths@redhat.com>
8064
8065         * breakpoint.c (build_bpstat_chain): New function, moved from
8066         bpstat_stop_status.
8067         (bpstat_stop_status): Add optional parameter, `stop_chain'.
8068         If no stop chain is passed, call build_bpstat_chain to build it.
8069         * breakpoint.h (build_bpstat_chain): Declare.
8070         (bpstat_stop_status): Move documentation here from breakpoint.c.
8071         * infrun.c (handle_signal_stop): Before eliding inlined frames,
8072         build the stop chain and pass it to skip_inline_frames.
8073         Pass this stop chain to bpstat_stop_status.
8074         * inline-frame.c: Include breakpoint.h.
8075         (stopped_by_user_bp_inline_frame): New function.
8076         (skip_inline_frames): Add parameter `stop_chain'.
8077         Move documention to inline-frame.h.
8078         If non-NULL, use stopped_by_user_bp_inline_frame to determine
8079         whether the frame should be elided.
8080         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
8081         Add moved documentation and update for new parameter.
8082
8083 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
8084
8085         PR cli/14975
8086         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
8087         unittests/format_pieces-selftests.c.
8088         * common/format.h (format_piece) <operator==>: New.
8089         (format_pieces) <operator[]>: Remove.
8090         * common/format.c (format_pieces::format_pieces): Handle \e.
8091         * unittests/format_pieces-selftests.c: New.
8092
8093 2018-05-17  Tom Tromey  <tom@tromey.com>
8094
8095         PR symtab/23010:
8096         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
8097         (dw2_instantiate_symtab): Add skip_partial parameter.
8098         (dw2_find_last_source_symtab, dw2_map_expand_apply)
8099         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
8100         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
8101         (dw2_expand_symtabs_matching_one)
8102         (dw2_find_pc_sect_compunit_symtab)
8103         (dw2_debug_names_lookup_symbol)
8104         (dw2_debug_names_expand_symtabs_for_function): Update.
8105         (init_cutu_and_read_dies): Add skip_partial parameter.
8106         (process_psymtab_comp_unit, build_type_psymtabs_1)
8107         (process_skeletonless_type_unit, load_partial_comp_unit)
8108         (psymtab_to_symtab_1): Update.
8109         (load_full_comp_unit): Add skip_partial parameter.
8110         (process_imported_unit_die, dwarf2_read_addr_index)
8111         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
8112         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
8113         (read_signatured_type): Update.
8114
8115 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
8116
8117         * value.c (release_value): Remove unused variable.
8118         (record_latest_value): Likewise.
8119         (access_value_history): Likewise.
8120         (preserve_values): Likewise.
8121
8122 2018-05-17  Tom Tromey  <tom@tromey.com>
8123
8124         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
8125         Initialize.
8126
8127 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
8128
8129         PR gdb/22286
8130         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
8131         Also handle registers whose width is not a multiple of
8132         PTRACE_TYPE_RET.
8133         (linux_nat_trad_target::store_register): Likewise.
8134
8135 2018-05-16  Tom Tromey  <tom@tromey.com>
8136
8137         * gdbcore.h (core_bfd): Redefine.
8138         * corelow.c (core_target::close): Update.
8139         (core_target_open): Update.
8140         * progspace.h (struct program_space) <cbfd>: Now a
8141         gdb_bfd_ref_ptr.
8142
8143 2018-05-16  Tom Tromey  <tom@tromey.com>
8144
8145         PR cli/19551:
8146         * symfile-add-flags.h (enum symfile_add_flags)
8147         <SYMFILE_NOT_FILENAME>: New constant.
8148         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
8149         objfile name from BFD.
8150         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
8151         * minidebug.c (find_separate_debug_file_in_section): Put
8152         ".gnu_debugdata" into BFD's file name.
8153
8154 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
8155
8156         * regcache.c (regcache_read_ftype, regcache_write_ftype):
8157         Remove.
8158
8159 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
8160
8161         PR binutils/21446
8162         * aarch64-tdep.c (aarch64_analyze_prologue,
8163         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
8164         Indicate not interested in errors.
8165
8166 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8167
8168         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
8169         Supply the MIPS_ZERO_REGNUM register.
8170
8171 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8172
8173         * mips-tdep.c (mask_address_var): Make variable static.
8174
8175 2018-05-14  Tom Tromey  <tom@tromey.com>
8176
8177         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
8178
8179 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
8180
8181         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
8182         FXSAVE_ADDR for the mxcsr register.
8183
8184 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
8185
8186         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
8187
8188 2018-05-11  Pedro Alves  <palves@redhat.com>
8189
8190         * corelow.c (core_target) <core_target>: No longer inline.
8191         Initialize m_core_gdbarch, m_core_vec and build the section table
8192         here.
8193         <~core_target>: New.
8194         <core_gdbarch, get_core_register_section>: New methods.
8195         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
8196         factored out from ...
8197         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
8198         (core_ops): Delete.
8199         (sniff_core_bfd): Add gdbarch parameter.
8200         (core_close): Delete, merged into ...
8201         (core_target::close): ... here.  Delete self.
8202         (core_close_cleanup): Delete.
8203         (core_target_open): Allocate a core_target on the heap.  Use a
8204         unique_ptr instead of a cleanup.  Bits moved into the core_target
8205         ctor.  Adjust to use core_target methods instead of globals.
8206         (get_core_register_section): Rename to ...
8207         (core_target::get_core_register_section): ... this and adjust.
8208         (struct get_core_registers_cb_data): New.
8209         (get_core_registers_cb): Use it.  Use bool.
8210         (core_target::fetch_registers, core_target::files_info)
8211         (core_target::xfer_partial, core_target::read_description)
8212         (core_target::pid_to, core_target::thread_name): Adjust to
8213         reference class fields instead of globals.
8214         * target.h (struct target_ops_deleter, target_ops_up): New.
8215
8216 2018-05-11  Pedro Alves  <palves@redhat.com>
8217
8218         * corefile.c (core_file_command): Move to corelow.c.
8219         * corelow.c (the_core_target): Delete.
8220         (core_file_command): Moved from corefile.c.  Check exec_bfd
8221         instead of the_core_target.  Use target_detach instead of calling
8222         into the_core_target directly.
8223         (maybe_say_no_core_file_now): New.
8224         (core_target::detach): Use it.
8225         (_initialize_corelow): Remove references to the_core_target.
8226         * gdbcore.h (the_core_target): Delete.
8227
8228 2018-05-11  Tom Tromey  <tromey@redhat.com>
8229             Pedro Alves  <palves@redhat.com>
8230
8231         * corefile.c (core_bfd): Remove.
8232         * gdbcore.h (core_bfd): Now a macro.
8233         * progspace.h (struct program_space) <cbfd>: New field.
8234
8235 2018-05-11  Tom Tromey  <tom@tromey.com>
8236
8237         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
8238         gdb::def_vector.
8239
8240 2018-05-10  Tom Tromey  <tom@tromey.com>
8241
8242         * configure: Rebuild.
8243         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
8244
8245 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
8246
8247         PR server/23158:
8248         * regformats/regdat.sh: Adjust script, following the addition
8249         of the new expedite_regs parameter to init_target_desc.
8250
8251 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
8252     
8253         PR gdb/23127
8254         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
8255         set_gdbarch_significant_addr_bit.
8256         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
8257         set_gdbarch_significant_addr_bit.
8258         * utils.c (address_significant): Update to sign extend addr.
8259
8260 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
8261
8262         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
8263         (xtensa_linux_init_abi): Limit tdep->num_regs by
8264         tdep->num_nopriv_regs.
8265         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
8266         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
8267         not initialized.
8268
8269 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
8270
8271         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
8272
8273 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
8274
8275         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
8276         (I387_MXCSR_INIT_VAL): New constant.
8277         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
8278         buffer if it was supplied by the inferior.
8279         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
8280         (i387_xsave_get_clear_bv): New function.
8281         (i387_supply_xsave): Only read x87 control registers from the
8282         xsave buffer if the feature is enabled, and the state will have
8283         been written, otherwise, provide a suitable default.
8284         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
8285         including x87 control registers.  Update control registers if they
8286         have changed from the default value, and mark features as enabled
8287         as required.
8288         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
8289
8290 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
8291
8292         * spu-tdep.c (info_spu_event_command): Fix output formatting.
8293
8294 2018-05-07  Tom Tromey  <tom@tromey.com>
8295
8296         * configure: Rebuild.
8297         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
8298
8299 2018-05-07  Tom Tromey  <tom@tromey.com>
8300
8301         PR tdep/20362:
8302         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
8303         bit.  Use correct value for VDIV.
8304
8305 2018-05-04  Tom Tromey  <tom@tromey.com>
8306
8307         * configure: Rebuild.
8308         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
8309
8310 2018-05-04  Tom Tromey  <tom@tromey.com>
8311
8312         * linux-record.c (record_linux_system_call) <case
8313         RECORD_SYS_RECVFROM>: Add "break".
8314
8315 2018-05-04  Tom Tromey  <tom@tromey.com>
8316
8317         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
8318         Add missing "break".
8319         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
8320         Add missing "break".
8321
8322 2018-05-04  Tom Tromey  <tom@tromey.com>
8323
8324         * rs6000-tdep.c (ppc_process_record_op4)
8325         (ppc_process_record_op63): Add fall-through comment.
8326
8327 2018-05-04  Tom Tromey  <tom@tromey.com>
8328
8329         * i386-tdep.c (i386_process_record): Add fall-through comment.
8330
8331 2018-05-04  Tom Tromey  <tom@tromey.com>
8332
8333         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
8334         comment.
8335
8336 2018-05-04  Tom Tromey  <tom@tromey.com>
8337
8338         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
8339         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
8340         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
8341         comment.
8342         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
8343         comment.
8344         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
8345         comment.
8346
8347 2018-05-04  Tom Tromey  <tom@tromey.com>
8348
8349         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
8350
8351 2018-05-04  Tom Tromey  <tom@tromey.com>
8352
8353         * s390-tdep.c (s390_process_record): Fix fall-through comments.
8354         * xcoffread.c (scan_xcoff_symtab): Move comment later.
8355         * symfile.c (section_is_mapped): Fix fall-through comment.
8356         * stabsread.c (define_symbol, read_member_functions): Fix
8357         fall-through comment.
8358         * s390-linux-tdep.c (s390_process_record): Fix fall-through
8359         comment.
8360         * remote.c (remote_wait_as): Fix fall-through comment.
8361         * p-exp.y (yylex): Fix fall-through comment.
8362         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
8363         comment.
8364         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
8365         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
8366         * jv-exp.y (yylex): Fix fall-through comment.
8367         * go-exp.y (lex_one_token): Fix fall-through comment.
8368         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
8369         fall-through comment.
8370         * f-exp.y (yylex): Fix fall-through comment.
8371         * dwarf2read.c (process_die): Fix fall-through comments.
8372         * dbxread.c (process_one_symbol): Fix fall-through comment.
8373         * d-exp.y (lex_one_token): Fix fall-through comment.
8374         * cp-name-parser.y (yylex): Fix fall-through comment.
8375         * coffread.c (coff_symtab_read): Fix fall-through comment.
8376         * c-exp.y (lex_one_token): Fix fall-through comment.
8377         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
8378         comment.
8379         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
8380         comment.
8381
8382 2018-05-04  Tom Tromey  <tom@tromey.com>
8383
8384         PR python/22730:
8385         * NEWS: Mention gdb.execute change.
8386         * gdbcmd.h (execute_control_command): Don't declare.
8387         * python/python.c (execute_gdb_command): Use read_command_lines_1,
8388         execute_control_commands, execute_control_commands_to_string.
8389         * cli/cli-script.h (execute_control_commands)
8390         (execute_control_commands_to_string): Declare.
8391         (execute_control_command): Add from_tty parameter.
8392         * cli/cli-script.c (execute_control_commands)
8393         (execute_control_commands_to_string): New functions.
8394         (execute_user_command): Use execute_control_commands.
8395         (execute_control_command_1): Add "from_tty" parameter.  Update.
8396         (execute_control_command): Likewise.
8397
8398 2018-05-04  Tom Tromey  <tom@tromey.com>
8399
8400         PR python/22731:
8401         * NEWS: Mention that breakpoint commands are writable.
8402         * python/py-breakpoint.c (bppy_set_commands): New function.
8403         (breakpoint_object_getset) <"commands">: Use it.
8404
8405 2018-05-04  Tom Tromey  <tom@tromey.com>
8406
8407         * tracepoint.c (actions_command): Update.
8408         * mi/mi-cmd-break.c (mi_command_line_array)
8409         (mi_command_line_array_cnt, mi_command_line_array_ptr)
8410         (mi_read_next_line): Remove.
8411         (mi_cmd_break_commands): Update.
8412         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
8413         function_view.
8414         * cli/cli-script.c (get_command_line): Update.
8415         (process_next_line): Use function_view.  Constify.
8416         (recurse_read_control_structure, read_command_lines)
8417         (read_command_lines_1): Change argument types to function_view.
8418         (do_define_command, document_command): Update.
8419         * breakpoint.h (check_tracepoint_command): Don't declare.
8420         * breakpoint.c (check_tracepoint_command): Remove.
8421         (commands_command_1, create_tracepoint_from_upload): Update.
8422
8423 2018-05-04  Tom Tromey  <tom@tromey.com>
8424
8425         PR gdb/11750:
8426         * cli/cli-script.h (enum command_control_type) <define_control>:
8427         New constant.
8428         * cli/cli-script.c (multi_line_command_p): Handle define_control.
8429         (build_command_line, execute_control_command_1)
8430         (process_next_line): Likewise.
8431         (do_define_command): New function, extracted from define_command.
8432         (define_command): Use it.
8433
8434 2018-05-04  Tom Tromey  <tom@tromey.com>
8435
8436         * tracepoint.c (actions_command): Update.
8437         * cli/cli-script.h (read_command_lines): Update.
8438         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
8439         (MAX_TMPBUF): Remove define.
8440         (define_command): Use string_printf.
8441         (document_command): Likewise.
8442         * breakpoint.c (commands_command_1): Update.
8443
8444 2018-05-04  Tom Tromey  <tom@tromey.com>
8445
8446         * top.c (execute_command): Update.
8447         * cli/cli-script.h (print_command_lines): Now varargs.
8448         * cli/cli-script.c (print_command_lines): Now varargs.
8449         (execute_control_command_1) <case while_control, case if_control>:
8450         Update.
8451
8452 2018-05-04  Tom Tromey  <tom@tromey.com>
8453
8454         * tracepoint.c (all_tracepoint_actions): Rename from
8455         all_tracepoint_actions_and_cleanup.  Change return type.
8456         (actions_command, encode_actions_1, encode_actions)
8457         (trace_dump_actions, tdump_command): Update.
8458         * remote.c (remote_download_command_source): Update.
8459         * python/python.c (gdbpy_eval_from_control_command)
8460         (python_command, python_interactive_command): Update.
8461         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
8462         * guile/guile.c (guile_command)
8463         (gdbscm_eval_from_control_command, guile_command): Update.
8464         * compile/compile.c (compile_code_command)
8465         (compile_print_command, compile_to_object): Update.
8466         * cli/cli-script.h (struct command_lines_deleter): New.
8467         (counted_command_line): New typedef.
8468         (struct command_line): Add constructor, destructor.
8469         <body_list>: Remove.
8470         <body_list_0, body_list_1>: New members.
8471         (command_line_up): Remove typedef.
8472         (read_command_lines, read_command_lines_1, get_command_line):
8473         Update.
8474         (copy_command_lines): Don't declare.
8475         * cli/cli-script.c (build_command_line): Use "new".
8476         (get_command_line): Return counted_command_line.
8477         (print_command_lines, execute_user_command)
8478         (execute_control_command_1, while_command, if_command): Update.
8479         (realloc_body_list): Remove.
8480         (process_next_line, recurse_read_control_structure): Update.
8481         (read_command_lines, read_command_lines_1): Return counted_command_line.
8482         (free_command_lines): Use "delete".
8483         (copy_command_lines): Remove.
8484         (define_command, document_command, show_user_1): Update.
8485         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
8486         a counted_command_line.
8487         * breakpoint.h (counted_command_line): Remove typedef.
8488         (breakpoint_set_commands): Update.
8489         * breakpoint.c (check_no_tracepoint_commands)
8490         (validate_commands_for_breakpoint): Update.
8491         (breakpoint_set_commands): Change commands to be a
8492         counted_command_line.
8493         (commands_command_1, update_dprintf_command_list)
8494         (create_tracepoint_from_upload): Update.
8495
8496 2018-05-04  Tom Tromey  <tom@tromey.com>
8497
8498         * cli/cli-decode.h (cmd_list_element): New constructor.
8499         (~cmd_list_element): New destructor.
8500         (struct cmd_list_element): Add initializers.
8501         * cli/cli-decode.c (do_add_cmd): Use "new".
8502         (delete_cmd): Use "delete".
8503
8504 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
8505             Pedro Alves <palves@redhat.com>
8506
8507         PR breakpoints/19806 and support for PR external/20207.
8508         * NEWS: Mention Aarch64 watchpoint improvements.
8509         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
8510         watchpoints and PR external/20207 watchpoints.
8511         * nat/aarch64-linux-hw-point.c
8512         (kernel_supports_any_contiguous_range): New.
8513         (aarch64_watchpoint_offset): New.
8514         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
8515         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
8516         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
8517         (aarch64_align_watchpoint): New parameters aligned_offset_p and
8518         next_addr_orig_p.  Support PR external/20207 watchpoints.
8519         (aarch64_downgrade_regs): New.
8520         (aarch64_dr_state_insert_one_point): New parameters offset and
8521         addr_orig.
8522         (aarch64_dr_state_remove_one_point): Likewise.
8523         (aarch64_handle_breakpoint): Update caller.
8524         (aarch64_handle_aligned_watchpoint): Likewise.
8525         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
8526         aligned_offset.
8527         (aarch64_linux_set_debug_regs): Remove const from state.  Call
8528         aarch64_downgrade_regs.
8529         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
8530         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
8531         (DR_CONTROL_MASK): ... this.
8532         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
8533         (unsigned int aarch64_watchpoint_offset): New prototype.
8534         (aarch64_linux_set_debug_regs): Remove const from state.
8535         * utils.c (align_up, align_down): Move to ...
8536         * common/common-utils.c (align_up, align_down): ... here.
8537         * utils.h (align_up, align_down): Move to ...
8538         * common/common-utils.h (align_up, align_down): ... here.
8539
8540 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
8541
8542         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
8543         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
8544         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
8545         Re-implement to match the ABI as summarized in GCC's
8546         gcc/config/sparc/sparc.c.  All callers updated.
8547         (sparc32_store_arguments): Remove assertion.
8548
8549 2018-05-04  Tom Tromey  <tom@tromey.com>
8550
8551         * printcmd.c: Don't include tui.h.
8552         (decode_format): Use skip_spaces.
8553
8554 2018-05-04  Tom Tromey  <tom@tromey.com>
8555
8556         PR gdb/22619:
8557         * printcmd.c (last_count): New global.
8558         (x_command): Use saved count when repeating.
8559
8560 2018-05-04  Tom Tromey  <tom@tromey.com>
8561
8562         * nto-procfs.c (do_closedir_cleanup): Remove.
8563         (procfs_pidlist): Use gdb_dir_up.
8564         * procfs.c (do_closedir_cleanup): Remove.
8565         (proc_update_threads): Use gdb_dir_up.
8566         * common/filestuff.h (struct gdb_dir_deleter): New.
8567         (gdb_dir_up): New typedef.
8568
8569 2018-05-04  Tom Tromey  <tom@tromey.com>
8570
8571         * ada-lang.c (print_mention_exception): Use std::string.
8572
8573 2018-05-04  Tom Tromey  <tom@tromey.com>
8574
8575         * ada-lang.c (create_excep_cond_exprs): Update.
8576         (ada_exception_catchpoint_cond_string): Use std::string.
8577
8578 2018-05-04  Tom Tromey  <tom@tromey.com>
8579
8580         * ada-lang.c (xget_renaming_scope): Return std::string.
8581         (old_renaming_is_invisible): Update.
8582
8583 2018-05-04  Tom Tromey  <tom@tromey.com>
8584
8585         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
8586         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
8587
8588 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
8589
8590         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
8591
8592 2018-05-04  Tom Tromey  <tom@tromey.com>
8593
8594         * remote.c (remote_query_supported_append): Change type.
8595         (remote_check_symbols): Update.
8596
8597 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
8598
8599         PR gdb/11420
8600         * configure.ac: Prepend libpython.
8601         * python/python-config.py: Likewise.
8602         * configure: Regenerate.
8603
8604 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
8605
8606         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
8607
8608 2018-05-03  Pedro Alves  <palves@redhat.com>
8609
8610         * s390-linux-nat.c
8611         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
8612         override.  Write 'true' instead of '1'.
8613         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
8614         declaration.
8615
8616 2018-05-02  Pedro Alves  <palves@redhat.com>
8617
8618         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
8619         add_inf_child_target.
8620         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
8621         add_inf_child_target.
8622         * aix-thread.c (aix_thread_target_info): New.
8623         (aix_thread_target) <shortname, longname, doc>: Delete.
8624         <info>: New.
8625         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
8626         add_inf_child_target.
8627         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
8628         add_inf_child_target.
8629         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
8630         add_inf_child_target.
8631         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
8632         add_inf_child_target.
8633         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
8634         add_inf_child_target.
8635         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
8636         add_inf_child_target.
8637         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
8638         add_inf_child_target.
8639         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
8640         add_inf_child_target.
8641         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
8642         add_inf_child_target.
8643         * bfd-target.c (target_bfd_target_info): New.
8644         (target_bfd) <shortname, longname, doc>: Delete.
8645         <info>: New.
8646         * bsd-kvm.c (bsd_kvm_target_info): New.
8647         (bsd_kvm_target) <shortname, longname, doc>: Delete.
8648         <info>: New.
8649         (bsd_kvm_target::open): Rename to ...
8650         (bsd_kvm_target_open): ... this.  Adjust.
8651         * bsd-uthread.c (bsd_uthread_target_info): New.
8652         (bsd_uthread_target) <shortname, longname, doc>: Delete.
8653         <info>: New.
8654         * corefile.c (core_file_command): Adjust.
8655         * corelow.c (core_target_info): New.
8656         (core_target) <shortname, longname, doc>: Delete.
8657         <info>: New.
8658         (core_target::open): Rename to ...
8659         (core_target_open): ... this.  Adjust.
8660         * ctf.c (ctf_target_info): New.
8661         (ctf_target) <shortname, longname, doc>: Delete.
8662         <info>: New.
8663         (ctf_target::open): Rename to ...
8664         (ctf_target_open): ... this.
8665         (_initialize_ctf): Adjust.
8666         * exec.c (exec_target_info): New.
8667         (exec_target) <shortname, longname, doc>: Delete.
8668         <info>: New.
8669         (exec_target::open): Rename to ...
8670         (exec_target_open): ... this.
8671         * gdbcore.h (core_target_open): Declare.
8672         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
8673         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
8674         add_inf_child_target.
8675         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
8676         add_inf_child_target.
8677         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
8678         add_inf_child_target.
8679         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
8680         add_inf_child_target.
8681         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
8682         add_inf_child_target.
8683         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
8684         add_inf_child_target.
8685         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
8686         add_inf_child_target.
8687         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
8688         add_inf_child_target.
8689         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
8690         add_inf_child_target.
8691         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
8692         add_inf_child_target.
8693         * inf-child.c (inf_child_target_info): New.
8694         (inf_child_target::info): New.
8695         (inf_child_open_target): Remove 'target' parameter.  Use
8696         get_native_target instead.
8697         (inf_child_target::open): Delete.
8698         (add_inf_child_target): New.
8699         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
8700         Delete.
8701         <info>: New.
8702         (add_inf_child_target): Declare.
8703         (inf_child_open_target): Declare.
8704         * linux-thread-db.c (thread_db_target_info): New.
8705         (thread_db_target) <shortname, longname, doc>: Delete.
8706         <info>: New.
8707         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
8708         add_inf_child_target.
8709         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
8710         add_inf_child_target.
8711         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
8712         add_inf_child_target.
8713         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
8714         add_inf_child_target.
8715         * make-target-delegates (print_class): Adjust.
8716         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
8717         add_inf_child_target.
8718         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
8719         add_inf_child_target.
8720         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
8721         add_inf_child_target.
8722         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
8723         add_inf_child_target.
8724         * nto-procfs.c (nto_native_target_info): New.
8725         (nto_procfs_target_native) <shortname, longname, doc>:
8726         Delete.
8727         <info>: New.
8728         (nto_procfs_target_info): New.
8729         (nto_procfs_target_procfs) <shortname, longname, doc>:
8730         Delete.
8731         <info>: New.
8732         (init_procfs_targets): Adjust.
8733         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
8734         add_inf_child_target.
8735         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
8736         add_inf_child_target.
8737         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
8738         add_inf_child_target.
8739         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
8740         add_inf_child_target.
8741         * ravenscar-thread.c (ravenscar_target_info): New.
8742         (ravenscar_thread_target) <shortname, longname, doc>:
8743         Delete.
8744         <info>: New.
8745         * record-btrace.c (record_btrace_target_info):
8746         (record_btrace_target) <shortname, longname, doc>: Delete.
8747         <info>: New.
8748         (record_btrace_target::open): Rename to ...
8749         (record_btrace_target_open): ... this.  Adjust.
8750         * record-full.c (record_longname, record_doc): New.
8751         (record_full_base_target) <shortname, longname, doc>: Delete.
8752         <info>: New.
8753         (record_full_target_info): New.
8754         (record_full_target): <shortname>: Delete.
8755         <info>: New.
8756         (record_full_core_open_1, record_full_open_1): Update comments.
8757         (record_full_base_target::open): Rename to ...
8758         (record_full_open): ... this.
8759         (cmd_record_full_restore): Update.
8760         (_initialize_record_full): Update.
8761         * remote-sim.c (remote_sim_target_info): New.
8762         (gdbsim_target) <shortname, longname, doc>: Delete.
8763         <info>: New.
8764         (gdbsim_target::open): Rename to ...
8765         (gdbsim_target_open): ... this.
8766         (_initialize_remote_sim): Adjust.
8767         * remote.c (remote_doc): New.
8768         (remote_target_info): New.
8769         (remote_target) <shortname, longname, doc>: Delete.
8770         <info>: New.
8771         (extended_remote_target_info): New.
8772         (extended_remote_target) <shortname, longname, doc>: Delete.
8773         <info>: New.
8774         (remote_target::open_1): Make static.  Adjust.
8775         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
8776         * s390-linux-nat.c (_initialize_s390_nat): Use
8777         add_inf_child_target.
8778         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
8779         add_inf_child_target.
8780         * sol-thread.c (thread_db_target_info): New.
8781         (sol_thread_target) <shortname, longname, doc>: Delete.
8782         <info>: New.
8783         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
8784         add_inf_child_target.
8785         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
8786         add_inf_child_target.
8787         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
8788         add_inf_child_target.
8789         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
8790         add_inf_child_target.
8791         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
8792         add_inf_child_target.
8793         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
8794         add_inf_child_target.
8795         * spu-linux-nat.c (_initialize_spu_nat): Use
8796         add_inf_child_target.
8797         * spu-multiarch.c (spu_multiarch_target_info): New.
8798         (spu_multiarch_target) <shortname, longname, doc>: Delete.
8799         <info>: New.
8800         * target-delegates.c: Regenerate.
8801         * target.c: Include <unordered_map>.
8802         (target_ops_p): Delete.
8803         (DEF_VEC_P(target_ops_p)): Delete.
8804         (target_factories): New.
8805         (test_target_info): New.
8806         (test_target_ops::info): New.
8807         (open_target): Adjust to use target_factories.
8808         (add_target_with_completer): Rename to ...
8809         (add_target): ... this.  Change prototype.  Register target_info
8810         and open callback in target_factories.  Register target_info in
8811         command context instead of target_ops.
8812         (add_target): Delete old implementation.
8813         (add_deprecated_target_alias): Change prototype.  Adjust.
8814         (the_native_target): New.
8815         (set_native_target, get_native_target): New.
8816         (find_default_run_target): Use the_native_target.
8817         (find_attach_target, find_run_target): Simplify.
8818         (target_ops::open): Delete.
8819         (dummy_target_info): New.
8820         (dummy_target::shortname, dummy_target::longname)
8821         (dummy_target::doc): Delete.
8822         (dummy_target::info): New.
8823         (debug_target::shortname, debug_target::longname)
8824         (debug_target::doc): Delete.
8825         (debug_target::info): New.
8826         * target.h (struct target_info): New.
8827         (target_ops::~target_ops): Add comment.
8828         (target_ops::info): New.
8829         (target_ops::shortname, target_ops::longname, target_ops::doc): No
8830         longer virtual.  Implement in terms of target_info.
8831         (set_native_target, get_native_target): Declare.
8832         (target_open_ftype): New.
8833         (add_target, add_target_with_completer)
8834         (add_deprecated_target_alias): Change prototype.
8835         (test_target) <shortname, longname, doc>: Delete.
8836         <info>: New.
8837         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
8838         add_inf_child_target.
8839         * tracefile-tfile.c (tfile_target_info): New.
8840         (tfile_target) <shortname, longname, doc>: Delete.
8841         <info>: New.
8842         (tfile_target::open): Rename to ...
8843         (tfile_target_open): ... this.
8844         (_initialize_tracefile_tfile): Adjust.
8845         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
8846         add_inf_child_target.
8847         * windows-nat.c (_initialize_windows_nat): Use
8848         add_inf_child_target.
8849         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
8850         add_inf_child_target.
8851
8852 2018-05-02  Pedro Alves  <palves@redhat.com>
8853
8854         * linux-nat.h (linux_nat_target) <low_new_thread,
8855         low_delete_thread, low_new_fork, low_forget_process,
8856         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
8857         New virtual methods.
8858         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
8859         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
8860         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
8861         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
8862         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
8863         Delete.
8864         * linux-fork.c (delete_fork): Adjust to call low method.
8865         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
8866         (linux_nat_new_fork, linux_nat_forget_process_hook)
8867         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
8868         (linux_nat_status_is_event):
8869         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
8870         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
8871         to call low method.
8872         (sigtrap_is_event): Rename to ...
8873         (linux_nat_target::low_status_is_event): ... this.
8874         (linux_nat_set_status_is_event): Delete.
8875         (save_stop_reason, linux_nat_wait_1)
8876         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
8877         low methods.
8878         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
8879         (linux_nat_set_new_fork, linux_nat_set_forget_process)
8880         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
8881         (linux_nat_set_prepare_to_resume): Delete.
8882         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
8883         low virtual methods.
8884         * amd64-linux-nat.c: Likewise.
8885         * arm-linux-nat.c: Likewise.
8886         * i386-linux-nat.c: Likewise.
8887         * ia64-linux-nat.c: Likewise.
8888         * mips-linux-nat.c: Likewise.
8889         * ppc-linux-nat.c: Likewise.
8890         * s390-linux-nat.c: Likewise.
8891         * sparc64-linux-nat.c: Likewise.
8892         * x86-linux-nat.c: Likewise.
8893         * x86-linux-nat.h: Include "nat/x86-linux.h".
8894         (x86_linux_nat_target) <low_new_fork, low_forget_process,
8895         low_prepare_to_resume, low_new_thread, low_delete_thread>:
8896         Override methods.
8897
8898 2018-05-02  Pedro Alves  <palves@redhat.com>
8899
8900         * target.h (target_ops)
8901         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
8902         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
8903         stopped_by_watchpoint, have_continuable_watchpoint,
8904         stopped_data_address, watchpoint_addr_within_range,
8905         can_accel_watchpoint_condition, can_run, thread_alive,
8906         has_all_memory, has_memory, has_stack, has_registers,
8907         has_execution, can_async_p, is_async_p, supports_non_stop,
8908         always_non_stop_p, can_execute_reverse, supports_multi_process,
8909         supports_enable_disable_tracepoint,
8910         supports_disable_randomization, supports_string_tracing,
8911         supports_evaluation_of_breakpoint_conditions,
8912         can_run_breakpoint_commands, filesystem_is_local,
8913         can_download_tracepoint, get_trace_state_variable_value,
8914         set_trace_notes, get_tib_address, use_agent, can_use_agent,
8915         record_is_replaying, record_will_replay,
8916         augmented_libraries_svr4_read>: Adjust to return bool.
8917         * aarch64-linux-nat.c: All implementations adjusted.
8918         * aix-thread.c: All implementations adjusted.
8919         * arm-linux-nat.c: All implementations adjusted.
8920         * breakpoint.c: All implementations adjusted.
8921         * bsd-kvm.c: All implementations adjusted.
8922         * bsd-uthread.c: All implementations adjusted.
8923         * corelow.c: All implementations adjusted.
8924         * ctf.c: All implementations adjusted.
8925         * darwin-nat.c: All implementations adjusted.
8926         * darwin-nat.h: All implementations adjusted.
8927         * exec.c: All implementations adjusted.
8928         * fbsd-nat.c: All implementations adjusted.
8929         * fbsd-nat.h: All implementations adjusted.
8930         * gnu-nat.c: All implementations adjusted.
8931         * gnu-nat.h: All implementations adjusted.
8932         * go32-nat.c: All implementations adjusted.
8933         * ia64-linux-nat.c: All implementations adjusted.
8934         * inf-child.c: All implementations adjusted.
8935         * inf-child.h: All implementations adjusted.
8936         * inf-ptrace.c: All implementations adjusted.
8937         * inf-ptrace.h: All implementations adjusted.
8938         * linux-nat.c: All implementations adjusted.
8939         * linux-nat.h: All implementations adjusted.
8940         * mips-linux-nat.c: All implementations adjusted.
8941         * nto-procfs.c: All implementations adjusted.
8942         * ppc-linux-nat.c: All implementations adjusted.
8943         * procfs.c: All implementations adjusted.
8944         * ravenscar-thread.c: All implementations adjusted.
8945         * record-btrace.c: All implementations adjusted.
8946         * record-full.c: All implementations adjusted.
8947         * remote-sim.c: All implementations adjusted.
8948         * remote.c: All implementations adjusted.
8949         * s390-linux-nat.c: All implementations adjusted.
8950         * sol-thread.c: All implementations adjusted.
8951         * spu-multiarch.c: All implementations adjusted.
8952         * target-delegates.c: All implementations adjusted.
8953         * target.c: All implementations adjusted.
8954         * target.h: All implementations adjusted.
8955         * tracefile-tfile.c: All implementations adjusted.
8956         * tracefile.c: All implementations adjusted.
8957         * tracefile.h: All implementations adjusted.
8958         * windows-nat.c: All implementations adjusted.
8959         * x86-linux-nat.h: All implementations adjusted.
8960         * x86-nat.h: All implementations adjusted.
8961
8962 2018-05-02  Pedro Alves  <palves@redhat.com>
8963
8964         * make-target-delegates (scan_target_h): Don't trim lines here.
8965         Replace sequences of tabs and/or whitespace with a single
8966         whitespace.
8967         (top level, parsing methods): Trim each line before processing it
8968         here.
8969
8970 2018-05-02  Pedro Alves  <palves@redhat.com>
8971             John Baldwin  <jhb@freebsd.org>
8972
8973         * target.h (enum strata) <debug_stratum>: New.
8974         (struct target_ops) <all delegation methods>: Replace by C++
8975         virtual methods, and drop "to_" prefix.  All references updated
8976         throughout.
8977         <to_shortname, to_longname, to_doc, to_data,
8978         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
8979         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
8980         virtual methods.  All references updated throughout.
8981         <can_attach, supports_terminal_ours, can_create_inferior,
8982         get_thread_control_capabilities, attach_no_wait>: New
8983         virtual methods.
8984         <insert_breakpoint, remove_breakpoint>: Now
8985         TARGET_DEFAULT_NORETURN methods.
8986         <info_proc>: Now returns bool.
8987         <to_magic>: Delete.
8988         (OPS_MAGIC): Delete.
8989         (current_target): Delete.  All references replaced by references
8990         to ...
8991         (target_stack): ... this.  New.
8992         (target_shortname, target_longname): Adjust.
8993         (target_can_run): Now a function declaration.
8994         (default_child_has_all_memory, default_child_has_memory)
8995         (default_child_has_stack, default_child_has_registers)
8996         (default_child_has_execution): Remove target_ops parameter.
8997         (complete_target_initialization): Delete.
8998         (memory_breakpoint_target): New template class.
8999         (test_target_ops): Refactor as a C++ class with virtual methods.
9000         * make-target-delegates (NAME_PART): Tighten.
9001         (POINTER_PART, CP_SYMBOL): New.
9002         (SIMPLE_RETURN_PART): Reimplement.
9003         (VEC_RETURN_PART): Expect less.
9004         (RETURN_PART, VIRTUAL_PART): New.
9005         (METHOD): Adjust to C++ virtual methods.
9006         (scan_target_h): Remove reference to C99.
9007         (dname): Output "target_ops::" prefix.
9008         (write_function_header): Adjust to output a C++ class method.
9009         (write_declaration): New.
9010         (write_delegator): Adjust to output a C++ class method.
9011         (tdname): Output "dummy_target::" prefix.
9012         (write_tdefault, write_debugmethod): Adjust to output a C++ class
9013         method.
9014         (tdefault_names, debug_names): Delete.
9015         (return_types, tdefaults, styles, argtypes_array): New.
9016         (top level): All methods are delegators.
9017         (print_class): New.
9018         (top level): Print dummy_target and debug_target classes.
9019         * target-delegates.c: Regenerate.
9020         * target-debug.h (target_debug_print_enum_info_proc_what)
9021         (target_debug_print_thread_control_capabilities)
9022         (target_debug_print_thread_info_p): New.
9023         * target.c (dummy_target): Delete.
9024         (the_dummy_target, the_debug_target): New.
9025         (target_stack): Now extern.
9026         (set_targetdebug): Push/unpush debug target.
9027         (default_child_has_all_memory, default_child_has_memory)
9028         (default_child_has_stack, default_child_has_registers)
9029         (default_child_has_execution): Remove target_ops parameter.
9030         (complete_target_initialization): Delete.
9031         (add_target_with_completer): No longer call
9032         complete_target_initialization.
9033         (target_supports_terminal_ours): Use regular delegation.
9034         (update_current_target): Delete.
9035         (push_target): No longer check magic number.  Don't call
9036         update_current_target.
9037         (unpush_target): Don't call update_current_target.
9038         (target_is_pushed): No longer check magic number.
9039         (target_require_runnable): Skip for all stratums over
9040         process_stratum.
9041         (target_ops::info_proc): New.
9042         (target_info_proc): Use find_target_at and
9043         find_default_run_target.
9044         (target_supports_disable_randomization): Use regular delegation.
9045         (target_get_osdata): Use find_target_at.
9046         (target_ops::open, target_ops::close, target_ops::can_attach)
9047         (target_ops::attach, target_ops::can_create_inferior)
9048         (target_ops::create_inferior, target_ops::can_run)
9049         (target_can_run): New.
9050         (default_fileio_target): Use regular delegation.
9051         (target_ops::fileio_open, target_ops::fileio_pwrite)
9052         (target_ops::fileio_pread, target_ops::fileio_fstat)
9053         (target_ops::fileio_close, target_ops::fileio_unlink)
9054         (target_ops::fileio_readlink): New.
9055         (target_fileio_open_1, target_fileio_unlink)
9056         (target_fileio_readlink): Always call the target method.  Handle
9057         FILEIO_ENOSYS.
9058         (return_zero, return_zero_has_execution): Delete.
9059         (init_dummy_target): Delete.
9060         (dummy_target::dummy_target, dummy_target::shortname)
9061         (dummy_target::longname, dummy_target::doc)
9062         (debug_target::debug_target, debug_target::shortname)
9063         (debug_target::longname, debug_target::doc): New.
9064         (target_supports_delete_record): Use regular delegation.
9065         (setup_target_debug): Delete.
9066         (maintenance_print_target_stack): Skip debug_stratum.
9067         (initialize_targets): Instantiate the_dummy_target and
9068         the_debug_target.
9069         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
9070         use target_stack.
9071         (target_auxv_search, fprint_target_auxv): Adjust.
9072         (info_auxv_command): Adjust to use target_stack.
9073         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
9074         * exceptions.c (print_flush): Handle a NULL target_stack.
9075         * regcache.c (target_ops_no_register): Refactor as class with
9076         virtual methods.
9077
9078         * exec.c (exec_target): New class.
9079         (exec_ops): Now an exec_target.
9080         (exec_open, exec_close_1, exec_get_section_table)
9081         (exec_xfer_partial, exec_files_info, exec_has_memory)
9082         (exec_make_note_section): Refactor as exec_target methods.
9083         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
9084         Delete.
9085         (exec_target::find_memory_regions): New.
9086         (_initialize_exec): Don't call init_exec_ops.
9087         * gdbcore.h (exec_file_clear): Delete.
9088
9089         * corefile.c (core_target): Delete.
9090         (core_file_command): Adjust.
9091         * corelow.c (core_target): New class.
9092         (the_core_target): New.
9093         (core_close): Remove target_ops parameter.
9094         (core_close_cleanup): Adjust.
9095         (core_target::close): New.
9096         (core_open, core_detach, get_core_registers, core_files_info)
9097         (core_xfer_partial, core_thread_alive, core_read_description)
9098         (core_pid_to_str, core_thread_name, core_has_memory)
9099         (core_has_stack, core_has_registers, core_info_proc): Rework as
9100         core_target methods.
9101         (ignore, core_remove_breakpoint, init_core_ops): Delete.
9102         (_initialize_corelow): Initialize the_core_target.
9103         * gdbcore.h (core_target): Delete.
9104         (the_core_target): New.
9105
9106         * ctf.c: (ctf_target): New class.
9107         (ctf_ops): Now a ctf_target.
9108         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
9109         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
9110         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
9111         methods.
9112         (init_ctf_ops): Delete.
9113         (_initialize_ctf): Don't call it.
9114         * tracefile-tfile.c (tfile_target): New class.
9115         (tfile_ops): Now a tfile_target.
9116         (tfile_open, tfile_close, tfile_files_info)
9117         (tfile_get_tracepoint_status, tfile_trace_find)
9118         (tfile_fetch_registers, tfile_xfer_partial)
9119         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
9120         Refactor as tfile_target methods.
9121         (tfile_xfer_partial_features): Remove target_ops parameter.
9122         (init_tfile_ops): Delete.
9123         (_initialize_tracefile_tfile): Don't call it.
9124         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
9125         (tracefile_has_stack, tracefile_has_registers)
9126         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
9127         tracefile_target methods.
9128         (init_tracefile_ops): Delete.
9129         (tracefile_target::tracefile_target): New.
9130         * tracefile.h: Include "target.h".
9131         (tracefile_target): New class.
9132         (init_tracefile_ops): Delete.
9133
9134         * spu-multiarch.c (spu_multiarch_target): New class.
9135         (spu_ops): Now a spu_multiarch_target.
9136         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
9137         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
9138         (spu_search_memory, spu_mourn_inferior): Refactor as
9139         spu_multiarch_target methods.
9140         (init_spu_ops): Delete.
9141         (_initialize_spu_multiarch): Remove references to init_spu_ops,
9142         complete_target_initialization.
9143
9144         * ravenscar-thread.c (ravenscar_thread_target): New class.
9145         (ravenscar_ops): Now a ravenscar_thread_target.
9146         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
9147         (ravenscar_thread_alive, ravenscar_pid_to_str)
9148         (ravenscar_fetch_registers, ravenscar_store_registers)
9149         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
9150         (ravenscar_stopped_by_hw_breakpoint)
9151         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
9152         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
9153         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
9154         methods.
9155         (init_ravenscar_thread_ops): Delete.
9156         (_initialize_ravenscar): Remove references to
9157         init_ravenscar_thread_ops and complete_target_initialization.
9158
9159         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
9160         (bsd_uthread_target): New class.
9161         (bsd_uthread_ops): Now a bsd_uthread_target.
9162         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
9163         (bsd_uthread_close, bsd_uthread_mourn_inferior)
9164         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
9165         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
9166         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
9167         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
9168         (bsd_uthread_target): Delete function.
9169         (_initialize_bsd_uthread): Remove reference to
9170         complete_target_initialization.
9171
9172         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
9173         (target_bfd): ... this new class.
9174         (target_bfd_xfer_partial, target_bfd_get_section_table)
9175         (target_bfd_close): Refactor as target_bfd methods.
9176         (target_bfd::~target_bfd): New.
9177         (target_bfd_reopen): Adjust.
9178         (target_bfd::close): New.
9179
9180         * record-btrace.c (record_btrace_target): New class.
9181         (record_btrace_ops): Now a record_btrace_target.
9182         (record_btrace_open, record_btrace_stop_recording)
9183         (record_btrace_disconnect, record_btrace_close)
9184         (record_btrace_async, record_btrace_info)
9185         (record_btrace_insn_history, record_btrace_insn_history_range)
9186         (record_btrace_insn_history_from, record_btrace_call_history)
9187         (record_btrace_call_history_range)
9188         (record_btrace_call_history_from, record_btrace_record_method)
9189         (record_btrace_is_replaying, record_btrace_will_replay)
9190         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
9191         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
9192         (record_btrace_store_registers, record_btrace_prepare_to_store)
9193         (record_btrace_to_get_unwinder)
9194         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
9195         (record_btrace_commit_resume, record_btrace_wait)
9196         (record_btrace_stop, record_btrace_can_execute_reverse)
9197         (record_btrace_stopped_by_sw_breakpoint)
9198         (record_btrace_supports_stopped_by_sw_breakpoint)
9199         (record_btrace_stopped_by_hw_breakpoint)
9200         (record_btrace_supports_stopped_by_hw_breakpoint)
9201         (record_btrace_update_thread_list, record_btrace_thread_alive)
9202         (record_btrace_goto_begin, record_btrace_goto_end)
9203         (record_btrace_goto, record_btrace_stop_replaying_all)
9204         (record_btrace_execution_direction)
9205         (record_btrace_prepare_to_generate_core)
9206         (record_btrace_done_generating_core): Refactor as
9207         record_btrace_target methods.
9208         (init_record_btrace_ops): Delete.
9209         (_initialize_record_btrace): Remove reference to
9210         init_record_btrace_ops.
9211         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
9212         the execution_direction global.
9213         (record_full_base_target, record_full_target)
9214         (record_full_core_target): New classes.
9215         (record_full_ops): Now a record_full_target.
9216         (record_full_core_ops): Now a record_full_core_target.
9217         (record_full_target::detach, record_full_target::disconnect)
9218         (record_full_core_target::disconnect)
9219         (record_full_target::mourn_inferior, record_full_target::kill):
9220         New.
9221         (record_full_open, record_full_close, record_full_async): Refactor
9222         as methods of the record_full_base_target class.
9223         (record_full_resume, record_full_commit_resume): Refactor
9224         as methods of the record_full_target class.
9225         (record_full_wait, record_full_stopped_by_watchpoint)
9226         (record_full_stopped_data_address)
9227         (record_full_stopped_by_sw_breakpoint)
9228         (record_full_supports_stopped_by_sw_breakpoint)
9229         (record_full_stopped_by_hw_breakpoint)
9230         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
9231         methods of the record_full_base_target class.
9232         (record_full_store_registers, record_full_xfer_partial)
9233         (record_full_insert_breakpoint, record_full_remove_breakpoint):
9234         Refactor as methods of the record_full_target class.
9235         (record_full_can_execute_reverse, record_full_get_bookmark)
9236         (record_full_goto_bookmark, record_full_execution_direction)
9237         (record_full_record_method, record_full_info, record_full_delete)
9238         (record_full_is_replaying, record_full_will_replay)
9239         (record_full_goto_begin, record_full_goto_end, record_full_goto)
9240         (record_full_stop_replaying): Refactor as methods of the
9241         record_full_base_target class.
9242         (record_full_core_resume, record_full_core_kill)
9243         (record_full_core_fetch_registers)
9244         (record_full_core_prepare_to_store)
9245         (record_full_core_store_registers, record_full_core_xfer_partial)
9246         (record_full_core_insert_breakpoint)
9247         (record_full_core_remove_breakpoint)
9248         (record_full_core_has_execution): Refactor
9249         as methods of the record_full_core_target class.
9250         (record_full_base_target::supports_delete_record): New.
9251         (init_record_full_ops): Delete.
9252         (init_record_full_core_ops): Delete.
9253         (record_full_save): Refactor as method of the
9254         record_full_base_target class.
9255         (_initialize_record_full): Remove references to
9256         init_record_full_ops and init_record_full_core_ops.
9257
9258         * remote.c (remote_target, extended_remote_target): New classes.
9259         (remote_ops): Now a remote_target.
9260         (extended_remote_ops): Now an extended_remote_target.
9261         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
9262         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
9263         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
9264         (remote_pass_signals, remote_set_syscall_catchpoint)
9265         (remote_program_signals, )
9266         (remote_thread_always_alive): Remove target_ops parameter.
9267         (remote_thread_alive, remote_thread_name)
9268         (remote_update_thread_list, remote_threads_extra_info)
9269         (remote_static_tracepoint_marker_at)
9270         (remote_static_tracepoint_markers_by_strid)
9271         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
9272         (remote_open): Refactor as methods of remote_target.
9273         (extended_remote_open, extended_remote_detach)
9274         (extended_remote_attach, extended_remote_post_attach):
9275         (extended_remote_supports_disable_randomization)
9276         (extended_remote_create_inferior): : Refactor as method of
9277         extended_remote_target.
9278         (remote_set_permissions, remote_open_1, remote_detach)
9279         (remote_follow_fork, remote_follow_exec, remote_disconnect)
9280         (remote_resume, remote_commit_resume, remote_stop)
9281         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
9282         (remote_terminal_ours, remote_wait, remote_fetch_registers)
9283         (remote_prepare_to_store, remote_store_registers)
9284         (remote_flash_erase, remote_flash_done, remote_files_info)
9285         (remote_kill, remote_mourn, remote_insert_breakpoint)
9286         (remote_remove_breakpoint, remote_insert_watchpoint)
9287         (remote_watchpoint_addr_within_range)
9288         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
9289         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
9290         (remote_supports_stopped_by_sw_breakpoint)
9291         (remote_stopped_by_hw_breakpoint)
9292         (remote_supports_stopped_by_hw_breakpoint)
9293         (remote_stopped_by_watchpoint, remote_stopped_data_address)
9294         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
9295         (remote_verify_memory): Refactor as methods of remote_target.
9296         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
9297         parameter.
9298         (remote_xfer_partial, remote_get_memory_xfer_limit)
9299         (remote_search_memory, remote_rcmd, remote_memory_map)
9300         (remote_pid_to_str, remote_get_thread_local_address)
9301         (remote_get_tib_address, remote_read_description): Refactor as
9302         methods of remote_target.
9303         (remote_target::fileio_open, remote_target::fileio_pwrite)
9304         (remote_target::fileio_pread, remote_target::fileio_close): New.
9305         (remote_hostio_readlink, remote_hostio_fstat)
9306         (remote_filesystem_is_local, remote_can_execute_reverse)
9307         (remote_supports_non_stop, remote_supports_disable_randomization)
9308         (remote_supports_multi_process, remote_supports_cond_breakpoints)
9309         (remote_supports_enable_disable_tracepoint)
9310         (remote_supports_string_tracing)
9311         (remote_can_run_breakpoint_commands, remote_trace_init)
9312         (remote_download_tracepoint, remote_can_download_tracepoint)
9313         (remote_download_trace_state_variable, remote_enable_tracepoint)
9314         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
9315         (remote_trace_start, remote_get_trace_status)
9316         (remote_get_tracepoint_status, remote_trace_stop)
9317         (remote_trace_find, remote_get_trace_state_variable_value)
9318         (remote_save_trace_data, remote_get_raw_trace_data)
9319         (remote_set_disconnected_tracing, remote_core_of_thread)
9320         (remote_set_circular_trace_buffer, remote_traceframe_info)
9321         (remote_get_min_fast_tracepoint_insn_len)
9322         (remote_set_trace_buffer_size, remote_set_trace_notes)
9323         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
9324         (remote_disable_btrace, remote_teardown_btrace)
9325         (remote_read_btrace, remote_btrace_conf)
9326         (remote_augmented_libraries_svr4_read, remote_load)
9327         (remote_pid_to_exec_file, remote_can_do_single_step)
9328         (remote_execution_direction, remote_thread_handle_to_thread_info):
9329         Refactor as methods of remote_target.
9330         (init_remote_ops, init_extended_remote_ops): Delete.
9331         (remote_can_async_p, remote_is_async_p, remote_async)
9332         (remote_thread_events, remote_upload_tracepoints)
9333         (remote_upload_trace_state_variables): Refactor as methods of
9334         remote_target.
9335         (_initialize_remote): Remove references to init_remote_ops and
9336         init_extended_remote_ops.
9337
9338         * remote-sim.c (gdbsim_target): New class.
9339         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
9340         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
9341         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
9342         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
9343         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
9344         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
9345         Refactor as methods of gdbsim_target.
9346         (gdbsim_ops): Now a gdbsim_target.
9347         (init_gdbsim_ops): Delete.
9348         (gdbsim_cntrl_c): Adjust.
9349         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
9350
9351         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
9352         (the_amd64_linux_nat_target): New.
9353         (amd64_linux_fetch_inferior_registers)
9354         (amd64_linux_store_inferior_registers): Refactor as methods of
9355         amd64_linux_nat_target.
9356         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
9357         * i386-linux-nat.c: Don't include "linux-nat.h".
9358         (i386_linux_nat_target): New class.
9359         (the_i386_linux_nat_target): New.
9360         (i386_linux_fetch_inferior_registers)
9361         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
9362         as methods of i386_linux_nat_target.
9363         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
9364         * inf-child.c (inf_child_ops): Delete.
9365         (inf_child_fetch_inferior_registers)
9366         (inf_child_store_inferior_registers): Delete.
9367         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
9368         methods of inf_child_target.
9369         (inf_child_target::supports_terminal_ours)
9370         (inf_child_target::terminal_init)
9371         (inf_child_target::terminal_inferior)
9372         (inf_child_target::terminal_ours_for_output)
9373         (inf_child_target::terminal_ours, inf_child_target::interrupt)
9374         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
9375         New.
9376         (inf_child_open, inf_child_disconnect, inf_child_close)
9377         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
9378         (inf_child_post_startup_inferior, inf_child_can_run)
9379         (inf_child_pid_to_exec_file): Refactor as methods of
9380         inf_child_target.
9381         (inf_child_follow_fork): Delete.
9382         (inf_child_target::can_create_inferior)
9383         (inf_child_target::can_attach): New.
9384         (inf_child_target::has_all_memory, inf_child_target::has_memory)
9385         (inf_child_target::has_stack, inf_child_target::has_registers)
9386         (inf_child_target::has_execution): New.
9387         (inf_child_fileio_open, inf_child_fileio_pwrite)
9388         (inf_child_fileio_pread, inf_child_fileio_fstat)
9389         (inf_child_fileio_close, inf_child_fileio_unlink)
9390         (inf_child_fileio_readlink, inf_child_use_agent)
9391         (inf_child_can_use_agent): Refactor as methods of
9392         inf_child_target.
9393         (return_zero, inf_child_target): Delete.
9394         (inf_child_target::inf_child_target): New.
9395         * inf-child.h: Include "target.h".
9396         (inf_child_target): Delete function prototype.
9397         (inf_child_target): New class.
9398         (inf_child_open_target, inf_child_mourn_inferior)
9399         (inf_child_maybe_unpush_target): Delete.
9400         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
9401         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
9402         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
9403         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
9404         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
9405         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
9406         (inf_ptrace_wait, inf_ptrace_xfer_partial)
9407         (inf_ptrace_thread_alive, inf_ptrace_files_info)
9408         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
9409         methods of inf_ptrace_target.
9410         (inf_ptrace_target): Delete function.
9411         * inf-ptrace.h: Include "inf-child.h".
9412         (inf_ptrace_target): Delete function declaration.
9413         (inf_ptrace_target): New class.
9414         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
9415         * linux-nat.c (linux_target): New.
9416         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
9417         (linux_nat_target::~linux_nat_target): New.
9418         (linux_child_post_attach, linux_child_post_startup_inferior)
9419         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
9420         (linux_child_remove_fork_catchpoint)
9421         (linux_child_insert_vfork_catchpoint)
9422         (linux_child_remove_vfork_catchpoint)
9423         (linux_child_insert_exec_catchpoint)
9424         (linux_child_remove_exec_catchpoint)
9425         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
9426         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
9427         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
9428         (linux_nat_stopped_data_address)
9429         (linux_nat_stopped_by_sw_breakpoint)
9430         (linux_nat_supports_stopped_by_sw_breakpoint)
9431         (linux_nat_stopped_by_hw_breakpoint)
9432         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
9433         (linux_nat_kill, linux_nat_mourn_inferior)
9434         (linux_nat_xfer_partial, linux_nat_thread_alive)
9435         (linux_nat_update_thread_list, linux_nat_pid_to_str)
9436         (linux_nat_thread_name, linux_child_pid_to_exec_file)
9437         (linux_child_static_tracepoint_markers_by_strid)
9438         (linux_nat_is_async_p, linux_nat_can_async_p)
9439         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
9440         (linux_nat_supports_multi_process)
9441         (linux_nat_supports_disable_randomization, linux_nat_async)
9442         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
9443         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
9444         (linux_nat_fileio_open, linux_nat_fileio_readlink)
9445         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
9446         methods of linux_nat_target.
9447         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
9448         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
9449         parameter.
9450         (check_stopped_by_watchpoint): Adjust.
9451         (linux_xfer_partial): Delete.
9452         (linux_target_install_ops, linux_target, linux_nat_add_target):
9453         Delete.
9454         (linux_nat_target::linux_nat_target): New.
9455         * linux-nat.h: Include "inf-ptrace.h".
9456         (linux_nat_target): New.
9457         (linux_target, linux_target_install_ops, linux_nat_add_target):
9458         Delete function declarations.
9459         (linux_target): Declare global.
9460         * linux-thread-db.c (thread_db_target): New.
9461         (thread_db_target::thread_db_target): New.
9462         (thread_db_ops): Delete.
9463         (the_thread_db_target): New.
9464         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
9465         (thread_db_update_thread_list, thread_db_pid_to_str)
9466         (thread_db_extra_thread_info)
9467         (thread_db_thread_handle_to_thread_info)
9468         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
9469         (thread_db_resume): Refactor as methods of thread_db_target.
9470         (init_thread_db_ops): Delete.
9471         (_initialize_thread_db): Remove reference to init_thread_db_ops.
9472         * x86-linux-nat.c: Don't include "linux-nat.h".
9473         (super_post_startup_inferior): Delete.
9474         (x86_linux_nat_target::~x86_linux_nat_target): New.
9475         (x86_linux_child_post_startup_inferior)
9476         (x86_linux_read_description, x86_linux_enable_btrace)
9477         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
9478         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
9479         methods of x86_linux_nat_target.
9480         (x86_linux_create_target): Delete.  Bits folded ...
9481         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
9482         pointer.
9483         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
9484         (x86_linux_nat_target): New class.
9485         (x86_linux_create_target): Delete.
9486         (x86_linux_add_target): Now takes a linux_nat_target pointer.
9487         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
9488         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
9489         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
9490         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
9491         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
9492         make extern.
9493         (x86_use_watchpoints): Delete.
9494         * x86-nat.h: Include "breakpoint.h" and "target.h".
9495         (x86_use_watchpoints): Delete.
9496         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
9497         (x86_stopped_by_watchpoint, x86_stopped_data_address)
9498         (x86_insert_watchpoint, x86_remove_watchpoint)
9499         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
9500         (x86_stopped_by_hw_breakpoint): New declarations.
9501         (x86_nat_target): New template class.
9502
9503         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
9504         (the_ppc_linux_nat_target): New.
9505         (ppc_linux_fetch_inferior_registers)
9506         (ppc_linux_can_use_hw_breakpoint)
9507         (ppc_linux_region_ok_for_hw_watchpoint)
9508         (ppc_linux_ranged_break_num_registers)
9509         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
9510         (ppc_linux_insert_mask_watchpoint)
9511         (ppc_linux_remove_mask_watchpoint)
9512         (ppc_linux_can_accel_watchpoint_condition)
9513         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
9514         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
9515         (ppc_linux_watchpoint_addr_within_range)
9516         (ppc_linux_masked_watch_num_registers)
9517         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
9518         (ppc_linux_read_description): Refactor as methods of
9519         ppc_linux_nat_target.
9520         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
9521
9522         * procfs.c (procfs_xfer_partial): Delete forward declaration.
9523         (procfs_target): New class.
9524         (the_procfs_target): New.
9525         (procfs_target): Delete function.
9526         (procfs_auxv_parse, procfs_attach, procfs_detach)
9527         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
9528         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
9529         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
9530         (procfs_create_inferior, procfs_update_thread_list)
9531         (procfs_thread_alive, procfs_pid_to_str)
9532         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
9533         (procfs_stopped_data_address, procfs_insert_watchpoint)
9534         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
9535         (proc_find_memory_regions, procfs_info_proc)
9536         (procfs_make_note_section): Refactor as methods of procfs_target.
9537         (_initialize_procfs): Adjust.
9538         * sol-thread.c (sol_thread_target): New class.
9539         (sol_thread_ops): Now a sol_thread_target.
9540         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
9541         (sol_thread_fetch_registers, sol_thread_store_registers)
9542         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
9543         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
9544         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
9545         (init_sol_thread_ops): Delete.
9546         (_initialize_sol_thread): Adjust.  Remove references to
9547         init_sol_thread_ops and complete_target_initialization.
9548
9549         * windows-nat.c (windows_nat_target): New class.
9550         (windows_fetch_inferior_registers)
9551         (windows_store_inferior_registers, windows_resume, windows_wait)
9552         (windows_attach, windows_detach, windows_pid_to_exec_file)
9553         (windows_files_info, windows_create_inferior)
9554         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
9555         (windows_close, windows_pid_to_str, windows_xfer_partial)
9556         (windows_get_tib_address, windows_get_ada_task_ptid)
9557         (windows_thread_name, windows_thread_alive): Refactor as
9558         windows_nat_target methods.
9559         (do_initial_windows_stuff): Adjust.
9560         (windows_target): Delete function.
9561         (_initialize_windows_nat): Adjust.
9562
9563         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
9564         (darwin_mourn_inferior, darwin_kill_inferior)
9565         (darwin_create_inferior, darwin_attach, darwin_detach)
9566         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
9567         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
9568         (darwin_supports_multi_process): Refactor as darwin_nat_target
9569         methods.
9570         (darwin_resume_to, darwin_files_info): Delete.
9571         (_initialize_darwin_inferior): Rename to ...
9572         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
9573         * darwin-nat.h: Include "inf-child.h".
9574         (darwin_nat_target): New class.
9575         (darwin_complete_target): Delete.
9576         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
9577         (darwin_target): New.
9578         (i386_darwin_fetch_inferior_registers)
9579         (i386_darwin_store_inferior_registers): Refactor as methods of
9580         darwin_nat_target.
9581         (darwin_complete_target): Delete, with ...
9582         (_initialize_i386_darwin_nat): ... bits factored out here.
9583
9584         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
9585         (the_alpha_linux_nat_target): New.
9586         (alpha_linux_register_u_offset): Refactor as
9587         alpha_linux_nat_target method.
9588         (_initialize_alpha_linux_nat): Adjust.
9589         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
9590         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
9591         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
9592         methods of linux_nat_trad_target.
9593         (linux_trad_target): Delete.
9594         * linux-nat-trad.h (linux_trad_target): Delete function.
9595         (linux_nat_trad_target): New class.
9596         * mips-linux-nat.c (mips_linux_nat_target): New class.
9597         (super_fetch_registers, super_store_registers, super_close):
9598         Delete.
9599         (the_mips_linux_nat_target): New.
9600         (mips64_linux_regsets_fetch_registers)
9601         (mips64_linux_regsets_store_registers)
9602         (mips64_linux_fetch_registers, mips64_linux_store_registers)
9603         (mips_linux_register_u_offset, mips_linux_read_description)
9604         (mips_linux_can_use_hw_breakpoint)
9605         (mips_linux_stopped_by_watchpoint)
9606         (mips_linux_stopped_data_address)
9607         (mips_linux_region_ok_for_hw_watchpoint)
9608         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
9609         (mips_linux_close): Refactor as methods of mips_linux_nat.
9610         (_initialize_mips_linux_nat): Adjust to C++ification.
9611
9612         * aix-thread.c (aix_thread_target): New class.
9613         (aix_thread_ops): Now an aix_thread_target.
9614         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
9615         (aix_thread_fetch_registers, aix_thread_store_registers)
9616         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
9617         (aix_thread_thread_alive, aix_thread_pid_to_str)
9618         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
9619         Refactor as methods of aix_thread_target.
9620         (init_aix_thread_ops): Delete.
9621         (_initialize_aix_thread): Remove references to init_aix_thread_ops
9622         and complete_target_initialization.
9623         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
9624         (rs6000_nat_target): New class.
9625         (the_rs6000_nat_target): New.
9626         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
9627         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
9628         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
9629         (super_create_inferior): Delete.
9630         (_initialize_rs6000_nat): Adjust to C++ification.
9631
9632         * arm-linux-nat.c (arm_linux_nat_target): New class.
9633         (the_arm_linux_nat_target): New.
9634         (arm_linux_fetch_inferior_registers)
9635         (arm_linux_store_inferior_registers, arm_linux_read_description)
9636         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
9637         (arm_linux_remove_hw_breakpoint)
9638         (arm_linux_region_ok_for_hw_watchpoint)
9639         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
9640         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
9641         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
9642         arm_linux_nat_target.
9643         (_initialize_arm_linux_nat): Adjust to C++ification.
9644
9645         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
9646         (the_aarch64_linux_nat_target): New.
9647         (aarch64_linux_fetch_inferior_registers)
9648         (aarch64_linux_store_inferior_registers)
9649         (aarch64_linux_child_post_startup_inferior)
9650         (aarch64_linux_read_description)
9651         (aarch64_linux_can_use_hw_breakpoint)
9652         (aarch64_linux_insert_hw_breakpoint)
9653         (aarch64_linux_remove_hw_breakpoint)
9654         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
9655         (aarch64_linux_region_ok_for_hw_watchpoint)
9656         (aarch64_linux_stopped_data_address)
9657         (aarch64_linux_stopped_by_watchpoint)
9658         (aarch64_linux_watchpoint_addr_within_range)
9659         (aarch64_linux_can_do_single_step): Refactor as methods of
9660         aarch64_linux_nat_target.
9661         (super_post_startup_inferior): Delete.
9662         (_initialize_aarch64_linux_nat): Adjust to C++ification.
9663
9664         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
9665         (the_hppa_linux_nat_target): New.
9666         (hppa_linux_fetch_inferior_registers)
9667         (hppa_linux_store_inferior_registers): Refactor as methods of
9668         hppa_linux_nat_target.
9669         (_initialize_hppa_linux_nat): Adjust to C++ification.
9670
9671         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
9672         (the_ia64_linux_nat_target): New.
9673         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
9674         (ia64_linux_stopped_data_address)
9675         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
9676         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
9677         ia64_linux_nat_target methods.
9678         (super_xfer_partial): Delete.
9679         (_initialize_ia64_linux_nat): Adjust to C++ification.
9680
9681         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
9682         (the_m32r_linux_nat_target): New.
9683         (m32r_linux_fetch_inferior_registers)
9684         (m32r_linux_store_inferior_registers): Refactor as
9685         m32r_linux_nat_target methods.
9686         (_initialize_m32r_linux_nat): Adjust to C++ification.
9687
9688         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
9689         (the_m68k_linux_nat_target): New.
9690         (m68k_linux_fetch_inferior_registers)
9691         (m68k_linux_store_inferior_registers): Refactor as
9692         m68k_linux_nat_target methods.
9693         (_initialize_m68k_linux_nat): Adjust to C++ification.
9694
9695         * s390-linux-nat.c (s390_linux_nat_target): New class.
9696         (the_s390_linux_nat_target): New.
9697         (s390_linux_fetch_inferior_registers)
9698         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
9699         (s390_insert_watchpoint, s390_remove_watchpoint)
9700         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
9701         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
9702         (s390_auxv_parse, s390_read_description): Refactor as methods of
9703         s390_linux_nat_target.
9704         (_initialize_s390_nat): Adjust to C++ification.
9705
9706         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
9707         (the_sparc_linux_nat_target): New.
9708         (_initialize_sparc_linux_nat): Adjust to C++ification.
9709         * sparc-nat.c (sparc_fetch_inferior_registers)
9710         (sparc_store_inferior_registers): Remove target_ops parameter.
9711         * sparc-nat.h (sparc_fetch_inferior_registers)
9712         (sparc_store_inferior_registers): Remove target_ops parameter.
9713         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
9714         (the_sparc64_linux_nat_target): New.
9715         (_initialize_sparc64_linux_nat): Adjust to C++ification.
9716
9717         * spu-linux-nat.c (spu_linux_nat_target): New class.
9718         (the_spu_linux_nat_target): New.
9719         (spu_child_post_startup_inferior, spu_child_post_attach)
9720         (spu_child_wait, spu_fetch_inferior_registers)
9721         (spu_store_inferior_registers, spu_xfer_partial)
9722         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
9723         methods.
9724         (_initialize_spu_nat): Adjust to C++ification.
9725
9726         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
9727         (the_tilegx_linux_nat_target): New.
9728         (fetch_inferior_registers, store_inferior_registers):
9729         Refactor as methods.
9730         (_initialize_tile_linux_nat): Adjust to C++ification.
9731
9732         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
9733         (the_xtensa_linux_nat_target): New.
9734         (xtensa_linux_fetch_inferior_registers)
9735         (xtensa_linux_store_inferior_registers): Refactor as
9736         xtensa_linux_nat_target methods.
9737         (_initialize_xtensa_linux_nat): Adjust to C++ification.
9738
9739         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
9740         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
9741         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
9742         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
9743         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
9744         (fbsd_stopped_by_sw_breakpoint)
9745         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
9746         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
9747         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
9748         (fbsd_post_startup_inferior, fbsd_post_attach)
9749         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
9750         (fbsd_set_syscall_catchpoint)
9751         (super_xfer_partial, super_resume, super_wait)
9752         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
9753         (fbsd_handle_debug_trap): Remove target_ops parameter.
9754         (fbsd_nat_add_target): Delete.
9755         * fbsd-nat.h: Include "inf-ptrace.h".
9756         (fbsd_nat_add_target): Delete.
9757         (USE_SIGTRAP_SIGINFO): Define.
9758         (fbsd_nat_target): New class.
9759
9760         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
9761         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
9762         (amd64bsd_target): Delete.
9763         * amd64-bsd-nat.h: New file.
9764         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
9765         "x86-bsd-nat.h".
9766         (amd64_fbsd_nat_target): New class.
9767         (the_amd64_fbsd_nat_target): New.
9768         (amd64fbsd_read_description): Refactor as method of
9769         amd64_fbsd_nat_target.
9770         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
9771         (_initialize_amd64fbsd_nat): Adjust to C++ification.
9772         * amd64-nat.h (amd64bsd_target): Delete function declaration.
9773         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
9774         (i386bsd_store_inferior_registers): Remove target_ops parameter.
9775         (i386bsd_target): Delete.
9776         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
9777         (i386bsd_fetch_inferior_registers)
9778         (i386bsd_store_inferior_registers): Declare.
9779         (i386_bsd_nat_target): New class.
9780         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
9781         (the_i386_fbsd_nat_target): New.
9782         (i386fbsd_resume, i386fbsd_read_description): Refactor as
9783         i386_fbsd_nat_target methods.
9784         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
9785         (_initialize_i386fbsd_nat): Adjust to C++ification.
9786         * x86-bsd-nat.c (super_mourn_inferior): Delete.
9787         (x86bsd_mourn_inferior, x86bsd_target): Delete.
9788         (_initialize_x86_bsd_nat): Adjust to C++ification.
9789         * x86-bsd-nat.h: Include "x86-nat.h".
9790         (x86bsd_target): Delete declaration.
9791         (x86bsd_nat_target): New class.
9792
9793         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
9794         (the_aarch64_fbsd_nat_target): New.
9795         (aarch64_fbsd_fetch_inferior_registers)
9796         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
9797         aarch64_fbsd_nat_target.
9798         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
9799         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
9800         (the_alpha_bsd_nat_target): New.
9801         (alphabsd_fetch_inferior_registers)
9802         (alphabsd_store_inferior_registers): Refactor as
9803         alpha_bsd_nat_target methods.
9804         (_initialize_alphabsd_nat): Refactor as methods of
9805         alpha_bsd_nat_target.
9806         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
9807         (the_amd64_nbsd_nat_target): New.
9808         (_initialize_amd64nbsd_nat): Adjust to C++ification.
9809         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
9810         (the_amd64_obsd_nat_target): New.
9811         (_initialize_amd64obsd_nat): Adjust to C++ification.
9812         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
9813         (the_arm_fbsd_nat_target): New.
9814         (arm_fbsd_fetch_inferior_registers)
9815         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
9816         (_initialize_arm_fbsd_nat): Refactor as methods of
9817         arm_fbsd_nat_target.
9818         (_initialize_arm_fbsd_nat): Adjust to C++ification.
9819         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
9820         (the_arm_netbsd_nat_target): New.
9821         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
9822         arm_netbsd_nat_target.
9823         (_initialize_arm_netbsd_nat): Adjust to C++ification.
9824         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
9825         (the_hppa_nbsd_nat_target): New.
9826         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
9827         hppa_nbsd_nat_target methods.
9828         (_initialize_hppanbsd_nat): Adjust to C++ification.
9829         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
9830         (the_hppa_obsd_nat_target): New.
9831         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
9832         methods of hppa_obsd_nat_target.
9833         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
9834         add_target.
9835         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
9836         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
9837         add_target.
9838         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
9839         (_initialize_i386obsd_nat): Use add_target.
9840         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
9841         (the_m68k_bsd_nat_target): New.
9842         (m68kbsd_fetch_inferior_registers)
9843         (m68kbsd_store_inferior_registers): Refactor as methods of
9844         m68k_bsd_nat_target.
9845         (_initialize_m68kbsd_nat): Adjust to C++ification.
9846         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
9847         (the_mips_fbsd_nat_target): New.
9848         (mips_fbsd_fetch_inferior_registers)
9849         (mips_fbsd_store_inferior_registers): Refactor as methods of
9850         mips_fbsd_nat_target.
9851         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
9852         add_target.
9853         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
9854         (the_mips_nbsd_nat_target): New.
9855         (mipsnbsd_fetch_inferior_registers)
9856         (mipsnbsd_store_inferior_registers): Refactor as methods of
9857         mips_nbsd_nat_target.
9858         (_initialize_mipsnbsd_nat): Adjust to C++ification.
9859         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
9860         (the_mips64_obsd_nat_target): New.
9861         (mips64obsd_fetch_inferior_registers)
9862         (mips64obsd_store_inferior_registers): Refactor as methods of
9863         mips64_obsd_nat_target.
9864         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
9865         add_target.
9866         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
9867         nbsd_nat_target.
9868         * nbsd-nat.h: Include "inf-ptrace.h".
9869         (nbsd_nat_target): New class.
9870         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
9871         (obsd_wait): Refactor as methods of obsd_nat_target.
9872         (obsd_add_target): Delete.
9873         * obsd-nat.h: Include "inf-ptrace.h".
9874         (obsd_nat_target): New class.
9875         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
9876         (the_ppc_fbsd_nat_target): New.
9877         (ppcfbsd_fetch_inferior_registers)
9878         (ppcfbsd_store_inferior_registers): Refactor as methods of
9879         ppc_fbsd_nat_target.
9880         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
9881         add_target.
9882         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
9883         (the_ppc_nbsd_nat_target): New.
9884         (ppcnbsd_fetch_inferior_registers)
9885         (ppcnbsd_store_inferior_registers): Refactor as methods of
9886         ppc_nbsd_nat_target.
9887         (_initialize_ppcnbsd_nat): Adjust to C++ification.
9888         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
9889         (the_ppc_obsd_nat_target): New.
9890         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
9891         methods of ppc_obsd_nat_target.
9892         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
9893         add_target.
9894         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
9895         (the_sh_nbsd_nat_target): New.
9896         (shnbsd_fetch_inferior_registers)
9897         (shnbsd_store_inferior_registers): Refactor as methods of
9898         sh_nbsd_nat_target.
9899         (_initialize_shnbsd_nat): Adjust to C++ification.
9900         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
9901         (inf_ptrace_xfer_partial): Delete.
9902         (sparc_xfer_partial, sparc_target): Delete.
9903         * sparc-nat.h (sparc_fetch_inferior_registers)
9904         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
9905         (sparc_target): Delete function declaration.
9906         (sparc_target): New template class.
9907         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
9908         (_initialize_sparcnbsd_nat): Adjust to C++ification.
9909         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
9910         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
9911         add_target.
9912         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
9913         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
9914         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
9915         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
9916         add_target.
9917         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
9918         (the_vax_bsd_nat_target): New.
9919         (vaxbsd_fetch_inferior_registers)
9920         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
9921         methods.
9922         (_initialize_vaxbsd_nat): Adjust to C++ification.
9923
9924         * bsd-kvm.c (bsd_kvm_target): New class.
9925         (bsd_kvm_ops): Now a bsd_kvm_target.
9926         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
9927         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
9928         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
9929         bsd_kvm_target.
9930         (bsd_kvm_return_one): Delete.
9931         (bsd_kvm_add_target): Adjust to C++ification.
9932
9933         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
9934         (nto_procfs_target_procfs): New classes.
9935         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
9936         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
9937         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
9938         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
9939         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
9940         (procfs_remove_hw_breakpoint, procfs_resume)
9941         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
9942         (procfs_kill_inferior, procfs_store_registers)
9943         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
9944         as methods of nto_procfs_target.
9945         (nto_procfs_ops): Now an nto_procfs_target_procfs.
9946         (nto_native_ops): Delete.
9947         (procfs_open, procfs_native_open): Delete.
9948         (nto_native_ops): Now an nto_procfs_target_native.
9949         (init_procfs_targets): Adjust to C++ification.
9950         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
9951         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
9952         Refactor as methods of nto_procfs_target.
9953
9954         * go32-nat.c (go32_nat_target): New class.
9955         (the_go32_nat_target): New.
9956         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
9957         (go32_store_registers, go32_xfer_partial, go32_files_info)
9958         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
9959         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
9960         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
9961         (go32_pid_to_str): Refactor as methods of go32_nat_target.
9962         (go32_target): Delete.
9963         (_initialize_go32_nat): Adjust to C++ification.
9964
9965         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
9966         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
9967         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
9968         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
9969         gnu_nat_target.
9970         (gnu_target): Delete.
9971         * gnu-nat.h (gnu_target): Delete.
9972         (gnu_nat_target): New class.
9973         * i386-gnu-nat.c (gnu_base_target): New.
9974         (i386_gnu_nat_target): New class.
9975         (the_i386_gnu_nat_target): New.
9976         (_initialize_i386gnu_nat): Adjust to C++ification.
9977
9978 2018-05-02  Pedro Alves  <palves@redhat.com>
9979
9980         * bfd-target.c (target_bfd_xclose): Rename to ...
9981         (target_bfd_close): ... this.
9982         (target_bfd_reopen): Adjust.
9983         * target.c (target_close): Remove references to to_xclose.
9984         * target.h (target_ops::to_xclose): Delete.
9985         (target_ops::to_close): Update comments.
9986
9987 2018-05-02  Pedro Alves  <palves@redhat.com>
9988
9989         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
9990         "linux-nat.h".
9991         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
9992         * inf-ptrace.c (inf_ptrace_register_u_offset)
9993         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
9994         (inf_ptrace_store_register, inf_ptrace_store_registers)
9995         (inf_ptrace_trad_target): Move to ...
9996         * linux-nat-trad.c: ... this new file.
9997         * linux-nat-trad.h: New file.
9998         * linux-nat.c (linux_target_install_ops): Make extern.
9999         (linux_trad_target): Delete.
10000         * linux-nat.h (linux_trad_target): Delete declaration.
10001         (linux_target_install_ops): Declare.
10002         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
10003         "linux-nat.h".
10004
10005 2018-05-02  Pedro Alves  <palves@redhat.com>
10006
10007         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10008         procfs_target/add_target here.
10009         * procfs.c (procfs_target): Make static.
10010         (_initialize_procfs): Call add_target here.
10011         * procfs.h (struct target_ops): Remove forward declaration.
10012         (procfs_target): Remove declaration.
10013         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
10014
10015 2018-05-02  Pedro Alves  <palves@redhat.com>
10016
10017         * procfs.c (procfs_stopped_by_watchpoint)
10018         (procfs_insert_watchpoint, procfs_remove_watchpoint)
10019         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
10020         Forward declare.
10021         (procfs_use_watchpoints): Delete, move contents...
10022         (procfs_target): ... here.
10023         * procfs.h (procfs_use_watchpoints): Delete declaration.
10024         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10025         procfs_use_watchpoints.
10026         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
10027         procfs_use_watchpoints.
10028
10029 2018-05-02  Tom Tromey  <tom@tromey.com>
10030
10031         PR python/20084:
10032         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
10033         and var_zuinteger_unlimited.
10034         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
10035         and PARAM_ZUINTEGER_UNLIMITED.
10036         (set_parameter_value): Handle var_zuinteger and
10037         var_zuinteger_unlimited.
10038         (add_setshow_generic): Likewise.
10039         (parmpy_init): Likewise.
10040
10041 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
10042
10043         PR rust/23124
10044         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
10045         pointer is not null before dereferencing it.
10046
10047 2018-04-30  Tom Tromey  <tom@tromey.com>
10048
10049         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
10050         is_mi_like_p.
10051
10052 2018-04-30  Tom Tromey  <tom@tromey.com>
10053
10054         * breakpoint.c (mention): Remove use of is_mi_like_p.
10055         (print_mention_ranged_breakpoint): Likewise.
10056         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
10057         of is_mi_like_p.
10058
10059 2018-04-30  Tom Tromey  <tom@tromey.com>
10060
10061         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
10062
10063 2018-04-30  Tom Tromey  <tom@tromey.com>
10064
10065         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
10066         (info_spu_event_command): Remove some uses of is_mi_like_p.
10067
10068 2018-04-30  Tom Tromey  <tom@tromey.com>
10069
10070         * python/py-framefilter.c (py_print_single_arg)
10071         (enumerate_locals, py_print_args, py_print_frame): Remove some
10072         uses of is_mi_like_p.
10073
10074 2018-04-30  Tom Tromey  <tom@tromey.com>
10075
10076         * ui-out.c: Update.
10077         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
10078         * ui-out.h (ui_out::is_mi_like_p): Now const.
10079         (ui_out::do_is_mi_like_p): Now const.
10080         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
10081
10082 2018-04-30  Tom Tromey  <tom@tromey.com>
10083
10084         * varobj.c (varobj_set_visualizer): Use new_reference.
10085         * python/python.c (gdbpy_decode_line): Use new_reference.
10086         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
10087         new_reference.
10088
10089 2018-04-30  Tom Tromey  <tom@tromey.com>
10090
10091         * varobj.c (install_new_value): Use new_reference.
10092         * value.h (value_incref): Return void.  Swap intro comment with
10093         value_decref.
10094         * value.c (set_value_parent): Use new_reference.
10095         (value_incref): Return void.  Update intro comment.
10096         (release_value): Use new_reference.
10097         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
10098
10099 2018-04-30  Tom Tromey  <tom@tromey.com>
10100
10101         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
10102         * gdb_bfd.h (new_bfd_ref): Remove.
10103         (gdb_bfd_open): Update comment.
10104         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
10105         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
10106         (gdb_bfd_fdopenr): Use new_reference.
10107         * exec.c (exec_file_attach): Use new_reference.
10108
10109 2018-04-30  Tom Tromey  <tom@tromey.com>
10110
10111         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
10112         method.
10113
10114 2018-04-30  Tom Tromey  <tom@tromey.com>
10115
10116         * jit.c (jit_read_code_entry): Use type_align.
10117         * i386-tdep.c (i386_gdbarch_init): Don't call
10118         set_gdbarch_long_long_align_bit.
10119         * gdbarch.sh: Remove long_long_align_bit.
10120         * gdbarch.c, gdbarch.h: Rebuild.
10121         * arc-tdep.c (arc_type_align): New function.
10122         (arc_gdbarch_init): Use arc_type_align.  Don't call
10123         set_gdbarch_long_long_align_bit.
10124
10125 2018-04-30  Tom Tromey  <tom@tromey.com>
10126
10127         * rust-lang.c (rust_type_alignment): Remove.
10128         (rust_composite_type): Use type_align.
10129
10130 2018-04-30  Tom Tromey  <tom@tromey.com>
10131
10132         * NEWS: Mention Type.align.
10133         * python/py-type.c (typy_get_alignof): New function.
10134         (type_object_getset): Add "alignof".
10135
10136 2018-04-30  Tom Tromey  <tom@tromey.com>
10137
10138         PR exp/17095:
10139         * NEWS: Update.
10140         * std-operator.def (UNOP_ALIGNOF): New operator.
10141         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
10142         New.
10143         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
10144         * c-lang.c (c_op_print_tab): Add alignof.
10145         * c-exp.y (ALIGNOF): New token.
10146         (exp): Add "ALIGNOF" production.
10147         (ident_tokens): Add _Alignof and alignof.
10148
10149 2018-04-30  Tom Tromey  <tom@tromey.com>
10150
10151         * i386-tdep.c (i386_type_align): New function.
10152         (i386_gdbarch_init): Update.
10153         * gdbarch.sh (type_align): New method.
10154         * gdbarch.c, gdbarch.h: Rebuild.
10155         * arch-utils.h (default_type_align): Declare.
10156         * arch-utils.c (default_type_align): New function.
10157         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
10158         (struct type) <align_log2>: New field.
10159         <instance_flags>: Now a bitfield.
10160         (TYPE_RAW_ALIGN): New macro.
10161         (type_align, type_raw_align, set_type_align): Declare.
10162         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
10163         functions.
10164         * dwarf2read.c (quirk_rust_enum): Set type alignment.
10165         (get_alignment, maybe_set_alignment): New functions.
10166         (read_structure_type, read_enumeration_type, read_array_type)
10167         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
10168         (read_subrange_type, read_base_type): Set type alignment.
10169
10170 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
10171
10172         * dwarf2read.c (read_index_from_section): Use bool.
10173
10174 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
10175
10176         PR gdb/22950
10177         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
10178         with #ifdef.
10179
10180 2018-04-29  John Reiser  <jreiser@BitWagon.com>
10181
10182         PR build/22873
10183         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
10184         last step, and do it atomically.
10185
10186 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
10187
10188         * compile/compile-c-types.c (convert_int, convert_float):
10189         Update for C FE v1.
10190
10191 2018-04-27  Tom Tromey  <tom@tromey.com>
10192
10193         PR rust/22545:
10194         * rust-lang.c (rust_inclusive_range_type_p): New function.
10195         (rust_range): Handle inclusive ranges.
10196         (rust_compute_range): Likewise.
10197         * rust-exp.y (struct rust_op) <inclusive>: New field.
10198         (DOTDOTEQ): New constant.
10199         (range_expr): Add "..=" productions.
10200         (operator_tokens): Add "..=" token.
10201         (ast_range): Add "inclusive" parameter.
10202         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
10203         ranges.
10204         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
10205         bounds values.
10206         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
10207         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
10208         Update comments.
10209         * expprint.c (print_subexp_standard): Handle new bounds values.
10210         (dump_subexp_body_standard): Likewise.
10211
10212 2018-04-27  Tom Tromey  <tom@tromey.com>
10213
10214         * configure: Rebuild.
10215         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
10216         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
10217         "OVERRIDE".
10218         (class symbol_needs_eval_context): Likewise.
10219         * dwarf2read.c (mock_mapped_index::symbol_name_count)
10220         (mock_mapped_index::symbol_name_at): Use "override".  Remove
10221         "virtual".
10222         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
10223         "override".
10224         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
10225         * aarch64-tdep.c (instruction_reader::read): Use "override".
10226         (instruction_reader_test::read): Likewise.
10227         * arm-tdep.c (instruction_reader::read): Use "override".
10228         (instruction_reader_thumb::read): Likewise.
10229
10230 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
10231
10232         PR remote/9665
10233         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
10234         instead of remote_send.
10235         (remote_send): Remove.
10236
10237 2018-04-26  Pedro Alves  <palves@redhat.com>
10238
10239         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
10240         find_function_start_sal instead of find_pc_line.
10241
10242 2018-04-26  Pedro Alves  <palves@redhat.com>
10243
10244         * breakpoint.c (set_breakpoint_location_function): Handle
10245         mst_data_gnu_ifunc.
10246         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
10247         * elfread.c (elf_symtab_read): Give data symbols with
10248         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
10249         (elf_rel_plt_read): Update comment.
10250         * linespec.c (convert_linespec_to_sals): Handle
10251         mst_data_gnu_ifunc.
10252         (minsym_found): Handle mst_data_gnu_ifunc.
10253         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
10254         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
10255         * parse.c (find_minsym_type_and_address): Handle
10256         mst_data_gnu_ifunc.
10257         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
10258         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
10259         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
10260         comment.
10261         <mst_data_gnu_ifunc>: New enumerator.
10262
10263 2018-04-26  Pedro Alves  <palves@redhat.com>
10264
10265         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
10266         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
10267         'want_trampoline' parameter by a lookup_msym_prefer parameter.
10268         Handle it.
10269         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
10270         (lookup_minimal_symbol_by_pc): Adjust.
10271         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
10272         (lookup_solib_trampoline_symbol_by_pc): Adjust.
10273         * minsyms.h (lookup_msym_prefer): New enum.
10274         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10275         parameter by a lookup_msym_prefer parameter.
10276
10277 2018-04-26  Pedro Alves  <palves@redhat.com>
10278
10279         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
10280         ends in "@plt" instead of looking at the symbol's section.
10281
10282 2018-04-26  Pedro Alves  <palves@redhat.com>
10283
10284         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
10285         all references.
10286         (find_pc_partial_function_gnu_ifunc): Rename to ...
10287         (find_pc_partial_function): ... this, and remove references to
10288         'is_gnu_ifunc_p'.
10289         (find_pc_partial_function): Delete old implementation.
10290         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
10291
10292 2018-04-26  Pedro Alves  <palves@redhat.com>
10293
10294         * linespec.c (struct bound_minimal_symbol_search_key): New.
10295         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
10296         skip first line if we found a GNU ifunc minimal symbol by name.
10297         (compare_msymbols): Change parameters to work with a destructured
10298         lhs minsym.
10299         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
10300         functions.
10301
10302 2018-04-26  Pedro Alves  <palves@redhat.com>
10303
10304         * breakpoint.c (set_breakpoint_location_function): Don't resolve
10305         ifunc targets here.  Instead, if we have an ifunc minsym, use its
10306         address/name.
10307         (add_location_to_breakpoint): Store the minsym and the objfile in
10308         the breakpoint location.
10309         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
10310         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
10311         Record the minsym in the sal.
10312         * symtab.h (symtab_and_line) <msymbol>: New field.
10313
10314 2018-04-26  Pedro Alves  <palves@redhat.com>
10315
10316         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
10317         unless we actually resolved the ifunc.
10318
10319 2018-04-26  Pedro Alves  <palves@redhat.com>
10320
10321         * c-exp.y (variable production): Prefer ifunc minsyms over
10322         regular function symbols.
10323         * symtab.c (find_gnu_ifunc): New function.
10324         * minsyms.h (lookup_msym_prefer): New enum.
10325         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10326         parameter by a lookup_msym_prefer parameter.
10327         * symtab.h (find_gnu_ifunc): New declaration.
10328
10329 2018-04-26  Pedro Alves  <palves@redhat.com>
10330
10331         * blockframe.c (find_gnu_ifunc_target_type): New function.
10332         (find_function_type): New.
10333         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
10334         return a value with a memory address.
10335         (eval_call): For calls to GNU ifunc functions, try to find the
10336         type of the target function from the type that the resolver
10337         returns.
10338         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
10339         symbols.
10340         * infcall.c (find_function_return_type): Delete.
10341         (find_function_addr): Add 'function_type' parameter.  For calls to
10342         GNU ifunc functions, try to find the type of the target function
10343         from the type that the resolver returns, and return it via
10344         FUNCTION_TYPE.
10345         (call_function_by_hand_dummy): Adjust to use the function type
10346         returned by find_function_addr.
10347         (find_function_addr): Add 'function_type' parameter and move
10348         description here.
10349         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
10350         declarations.
10351
10352 2018-04-26  Pedro Alves  <palves@redhat.com>
10353
10354         * c-exp.y (variable production): Skip finding an alias for ifunc
10355         symbols.
10356
10357 2018-04-26  Pedro Alves  <palves@redhat.com>
10358
10359         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
10360
10361 2018-04-25  Pedro Alves  <palves@redhat.com>
10362
10363         * infcmd.c (kill_command): Print the pid as string, not the whole
10364         thread's ptid.  Add comment.  s/has been killed/killed/ in output
10365         message.
10366         * remote.c (remote_detach_1): Print the pid as string, not the
10367         whole thread's ptid.
10368
10369 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
10370             Sergio Durigan Junior  <sergiodj@redhat.com>
10371             Pedro Alves  <palves@redhat.com>
10372
10373         * infcmd.c (kill_command): Print message when inferior has
10374         been killed.
10375         * inferior.c (print_inferior_events): Remove 'static'.  Set as
10376         '1'.
10377         (add_inferior): Improve message printed when
10378         'print_inferior_events' is on.
10379         (exit_inferior): Remove message printed when
10380         'print_inferior_events' is on.
10381         (detach_inferior): Improve message printed when
10382         'print_inferior_events' is on.
10383         (initialize_inferiors): Use 'add_inferior_silent' to set
10384         'current_inferior_'.
10385         * inferior.h (print_inferior_events): Declare here as
10386         'extern'.
10387         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
10388         '[Detaching...]' messages when 'print_inferior_events' is on.
10389         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
10390         as prefix/suffix for messages.  Remove periods.  Fix erroneous
10391         'Detaching after fork from child...', replace it by '... from
10392         parent...'.
10393         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
10394         prefix/suffix when printing 'Detaching...' messages.  Print
10395         them when 'print_inferior_events' is on.
10396         * remote.c (remote_detach_1): Print message when detaching
10397         from inferior and '!is_fork_parent'.
10398
10399 2018-04-24  Tom Tromey  <tom@tromey.com>
10400
10401         * cli-out.h: Reindent.
10402
10403 2018-04-24  Tom Tromey  <tom@tromey.com>
10404
10405         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
10406         (cli_ui_out::do_field_string): Use fputs_filtered.
10407         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
10408
10409 2018-04-23  Tom Tromey  <tom@tromey.com>
10410
10411         * guile/scm-frame.c (gdbscm_frame_read_var): Use
10412         gdb::unique_xmalloc_ptr.
10413
10414 2018-04-23  Tom Tromey  <tom@tromey.com>
10415
10416         * configure: Rebuild.
10417
10418 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
10419
10420         PR gdb/23095
10421         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
10422         prepare_for_testing.  Set normal_bp to r_debug_state if target
10423         is bsd.
10424
10425 2018-04-21  Pedro Alves  <palves@redhat.com>
10426             Rajendra SY  <rajendra.sy@gmail.com>
10427
10428         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
10429         * remote.c (extended_remote_attach): In all-stop mode, mark the
10430         thread as executing.
10431
10432 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
10433
10434         * thread.c (thread_apply_all_command): Fix comment.
10435         (thread_command): Fix comment.
10436
10437 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
10438
10439         * common/tdesc.h (tdesc_create_feature): Remove xml filename
10440         parameter.
10441         * features/aarch64-core.c (create_feature_aarch64_core):
10442         Regenerate.
10443         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
10444         Likewise.
10445         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
10446         Likewise.
10447         * features/i386/32bit-avx512.c
10448         (create_feature_i386_32bit_avx512): Likewise.
10449         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
10450         Likewise.
10451         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
10452         Likewise.
10453         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
10454         Likewise.
10455         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
10456         Likewise.
10457         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
10458         Likewise.
10459         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
10460         Likewise.
10461         * features/i386/64bit-avx512.c
10462         (create_feature_i386_64bit_avx512): Likewise.
10463         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
10464         Likewise.
10465         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
10466         Likewise.
10467         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
10468         Likewise.
10469         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
10470         Likewise.
10471         * features/i386/64bit-segments.c
10472         (create_feature_i386_64bit_segments): Likewise.
10473         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
10474         Likewise.
10475         * features/i386/x32-core.c
10476         (create_feature_i386_x32_core): Likewise.
10477         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
10478         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
10479         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
10480         * target-descriptions.c: In generated code, don't pass xml
10481         filename.
10482
10483 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10484
10485         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
10486         (print_xml_feature::visit_post): Likewise.
10487         (print_xml_feature::visit): Likewise.
10488         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
10489         (print_xml_feature): Add new class.
10490         * regformats/regdat.sh: Null xmltarget on feature targets.
10491         * target-descriptions.c (struct target_desc): Add xmltarget.
10492         (maintenance_check_tdesc_xml_convert): Add unittest function.
10493         (tdesc_get_features_xml): Add function to get xml.
10494         (maintenance_check_xml_descriptions): Test xml generation.
10495         * xml-tdesc.c (string_read_description_xml): Add function.
10496         * xml-tdesc.h (string_read_description_xml): Add declaration.
10497
10498 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10499
10500         * features/Makefile: Add feature marker to targets with new style
10501         target descriptions.
10502         * regformats/aarch64.dat: Regenerate.
10503         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
10504         * regformats/i386/amd64-avx-linux.dat: Likewise.
10505         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
10506         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
10507         * regformats/i386/amd64-linux.dat: Likewise.
10508         * regformats/i386/amd64-mpx-linux.dat: Likewise.
10509         * regformats/i386/amd64.dat: Likewise.
10510         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
10511         * regformats/i386/i386-avx-linux.dat: Likewise.
10512         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
10513         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
10514         * regformats/i386/i386-linux.dat: Likewise.
10515         * regformats/i386/i386-mmx-linux.dat: Likewise.
10516         * regformats/i386/i386-mpx-linux.dat: Likewise.
10517         * regformats/i386/i386.dat: Likewise.
10518         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
10519         * regformats/i386/x32-avx-linux.dat: Likewise.
10520         * regformats/i386/x32-linux.dat: Likewise.
10521         * regformats/tic6x-c62x-linux.dat: Likewise.
10522         * regformats/tic6x-c64x-linux.dat: Likewise.
10523         * regformats/tic6x-c64xp-linux.dat: Likewise.
10524         * regformats/regdat.sh: Parse feature marker.
10525
10526 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10527
10528         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
10529         (tdesc_osabi_name): Likewise.
10530         * target-descriptions.c (tdesc_architecture_name): Add new
10531         function.
10532         (tdesc_osabi_name): Likewise.
10533
10534 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10535
10536         * common/tdesc.c (tdesc_predefined_type): Move to here.
10537         (tdesc_named_type): Likewise.
10538         (tdesc_create_vector): Likewise.
10539         (tdesc_create_struct): Likewise.
10540         (tdesc_set_struct_size): Likewise.
10541         (tdesc_create_union): Likewise.
10542         (tdesc_create_flags): Likewise.
10543         (tdesc_create_enum): Likewise.
10544         (tdesc_add_field): Likewise.
10545         (tdesc_add_typed_bitfield): Likewise.
10546         (tdesc_add_bitfield): Likewise.
10547         (tdesc_add_flag): Likewise.
10548         (tdesc_add_enum_value): Likewise.
10549         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
10550         (struct tdesc_type_vector): Likewise.
10551         (struct tdesc_type_field): Likewise.
10552         (struct tdesc_type_with_fields): Likewise.
10553         (tdesc_create_enum): Add declaration.
10554         (tdesc_add_typed_bitfield): Likewise.
10555         (tdesc_add_enum_value): Likewise.
10556         * target-descriptions.c (tdesc_type_field): Move from here.
10557         (tdesc_type_builtin): Likewise.
10558         (tdesc_type_vector): Likewise.
10559         (tdesc_type_with_fields): Likewise.
10560         (tdesc_predefined_types): Likewise.
10561         (tdesc_named_type): Likewise.
10562         (tdesc_create_vector): Likewise.
10563         (tdesc_create_struct): Likewise.
10564         (tdesc_set_struct_size): Likewise.
10565         (tdesc_create_union): Likewise.
10566         (tdesc_create_flags): Likewise.
10567         (tdesc_create_enum): Likewise.
10568         (tdesc_add_field): Likewise.
10569         (tdesc_add_typed_bitfield): Likewise.
10570         (tdesc_add_bitfield): Likewise.
10571         (tdesc_add_flag): Likewise.
10572         (tdesc_add_enum_value): Likewise.
10573         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
10574         (tdesc_add_typed_bitfield): Likewise.
10575         (tdesc_add_enum_value): Likewise.
10576
10577 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10578
10579         * common/tdesc.c (tdesc_feature::accept): Move to here.
10580         (tdesc_feature::operator==): Likewise.
10581         (tdesc_create_reg): Likewise.
10582         * common/tdesc.h (tdesc_type_kind): Likewise.
10583         (struct tdesc_type): Likewise.
10584         (struct tdesc_feature): Likewise.
10585         * regformats/regdat.sh: Create a feature.
10586         * target-descriptions.c (tdesc_type_kind): Move from here.
10587         (tdesc_type): Likewise.
10588         (tdesc_type_up): Likewise.
10589         (tdesc_feature): Likewise.
10590         (tdesc_create_reg): Likewise.
10591
10592 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10593
10594         * Makefile.in: Add arch/tdesc.c
10595         * common/tdesc.c: New file.
10596         * common/tdesc.h (tdesc_element_visitor): Move to here.
10597         (tdesc_element): Likewise.
10598         (tdesc_reg): Likewise.
10599         (tdesc_reg_up): Likewise.
10600         * regformats/regdef.h (reg): Add offset to constructors.
10601         * target-descriptions.c (tdesc_element_visitor): Move from here.
10602         (tdesc_element): Likewise.
10603         (tdesc_reg): Likewise.
10604         (tdesc_reg_up): Likewise.
10605
10606 2018-04-17  Tom Tromey  <tom@tromey.com>
10607
10608         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
10609         discriminant field.
10610
10611 2018-04-17  Tom Tromey  <tom@tromey.com>
10612
10613         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
10614
10615 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
10616
10617         * symtab.c (print_symbol_info): Skip printing filename and line
10618         number when `last' is NULL.
10619         (symtab_symbol_info): Use empty string instead of NULL for first
10620         invocation of print_symbol_info.
10621         (rbreak_command): Pass NULL to `last' parameter of
10622         print_symbol_info.
10623
10624 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
10625
10626         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
10627         instead of nullptr.
10628
10629 2018-04-16  Pedro Alves  <palves@redhat.com>
10630
10631         * MAINTAINERS (sh): Remove.
10632         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
10633         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
10634         (ALLDEPFILES): Remove sh64-tdep.c.
10635         * NEWS: Mentions that support for SH-5/SH64 is removed.
10636         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
10637         (sh*-*-openbsd*): Ditto.
10638         (sh64-*-elf*): Remove.
10639         (sh*): Remove.
10640         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
10641         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
10642         * sh-tdep.c: No longer include "sh64-tdep.h".
10643         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
10644         * sh64-tdep.c, sh64-tdep.h: Remove files.
10645
10646 2018-04-16  Pedro Alves  <palves@redhat.com>
10647
10648         * MAINTAINERS: Remove m88k.
10649         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
10650         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
10651         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
10652         * NEWS: Mention that support for m88k was removed.
10653         * configure.host (m88*-*-*): Remove support.
10654         * configure.nat (m88k-*-*): Remove support.
10655         * configure.tgt (m88*-*-openbsd*): Remove.
10656         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
10657
10658 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
10659
10660         * configure.tgt (x86_tobjs): New variable.
10661         (amd64_tobjs, i386_tobjs): Use it.
10662
10663 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
10664
10665         * symtab.c (print_symbol_info): Precede the symbol definition by
10666         the line number when available.
10667         * NEWS: Advertise this enhancement.
10668
10669 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10670
10671         * NEWS (New options): announce set/show record btrace cpu.
10672         * btrace.c: Include record-btrace.h.
10673         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
10674         the vendor is unknown.
10675         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
10676         Maybe overwrite the btrace configuration's cpu.
10677         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
10678         (btrace_fetch): Add cpu parameter.  Update callers.
10679         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
10680         Maybe overwrite the btrace configuration's cpu.  Skip enabling
10681         errata workarounds if the vendor is unknown.
10682         * python/py-record-btrace.c: Include record-btrace.h.
10683         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
10684         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
10685         * record-btrace.c (record_btrace_cpu_state_kind): New.
10686         (record_btrace_cpu): New.
10687         (set_record_btrace_cpu_cmdlist): New.
10688         (record_btrace_get_cpu): New.
10689         (require_btrace_thread, record_btrace_info)
10690         (record_btrace_resume_thread): Call record_btrace_get_cpu.
10691         (cmd_set_record_btrace_cpu_none): New.
10692         (cmd_set_record_btrace_cpu_auto): New.
10693         (cmd_set_record_btrace_cpu): New.
10694         (cmd_show_record_btrace_cpu): New.
10695         (_initialize_record_btrace): Initialize set/show record btrace cpu
10696         commands.
10697         * record-btrace.h (record_btrace_get_cpu): New.
10698
10699 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10700
10701         * record.c (set_record_command): Fix typo in message.
10702
10703 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10704
10705         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
10706
10707 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10708
10709         * infrun.c (process_event_stop_test): Call
10710         gdbarch_in_indirect_branch_thunk.
10711         * gdbarch.sh (in_indirect_branch_thunk): New.
10712         * gdbarch.c: Regenerated.
10713         * gdbarch.h: Regenerated.
10714         * x86-tdep.h: New.
10715         * x86-tdep.c: New.
10716         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
10717         (HFILES_NO_SRCDIR): Add x86-tdep.h.
10718         (ALLDEPFILES): Add x86-tdep.c.
10719         * arch-utils.h (default_in_indirect_branch_thunk): New.
10720         * arch-utils.c (default_in_indirect_branch_thunk): New.
10721         * i386-tdep: Include x86-tdep.h.
10722         (i386_in_indirect_branch_thunk): New.
10723         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
10724         function.
10725         * amd64-tdep: Include x86-tdep.h.
10726         (amd64_in_indirect_branch_thunk): New.
10727         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
10728
10729 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
10730
10731         PR gdb/23053
10732         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
10733         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
10734         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
10735         regression.
10736
10737 2018-04-12  Tom Tromey  <tom@tromey.com>
10738
10739         * rust-lang.c (rust_print_struct_def): Remove univariant code.
10740         (rust_evaluate_subexp): Likewise.
10741
10742 2018-04-12  Pedro Alves  <palves@redhat.com>
10743
10744         * procfs.c (procfs_detach): Make forward declaration's prototype
10745         match definition's protototype.
10746         (proc_get_LDT_entry): Remove stale do_cleanups call.
10747
10748 2018-04-12  Pedro Alves  <palves@redhat.com>
10749
10750         * target.h (target_ops::to_has_exited): Delete.
10751         (target_has_exited): Delete.
10752         * target-delegates.c: Regenerate.
10753
10754 2018-04-11  Pedro Alves  <palves@redhat.com>
10755
10756         * target.c (fileio_fh_t::t): Add comment.
10757         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
10758         (target_fileio_close): Handle a NULL target.
10759         (invalidate_fileio_fh): New.
10760         (target_close): Call it.
10761         * remote.c (remote_hostio_send_command): No longer check whether
10762         remote_desc is open.
10763
10764 2018-04-11  Pedro Alves  <palves@redhat.com>
10765
10766         * target.c (fileio_fh_t): Make it a named struct instead of a
10767         typedef.
10768         (fileio_fh_t::is_closed): New method.
10769         (DEF_VEC_O (fileio_fh_t)): Remove.
10770         (fileio_fhandles): Now a std::vector.
10771         (is_closed_fileio_fh): Delete.
10772         (acquire_fileio_fd): Adjust.  Rename parameters.
10773         (release_fileio_fd): Adjust.
10774         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
10775         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
10776         (target_fileio_close): Adjust.
10777
10778 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
10779
10780         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
10781         index.
10782
10783 2018-04-10  Pedro Alves  <palves@redhat.com>
10784
10785         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
10786         (scoped_finish_thread_state): New class.
10787         * infcmd.c (run_command_1): Use it instead of finish_thread_state
10788         cleanup.
10789         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
10790         (fetch_inferior_event, normal_stop): Likewise.
10791         * thread.c (finish_thread_state_cleanup): Delete.
10792
10793 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10794             Pedro Alves  <palves@redhat.com>
10795
10796         * value.c: Include "selftest.h" and "common/array-view.h".
10797         (struct range) <operator ==>: New.
10798         (test_ranges_contain): New.
10799         (check_ranges_vector): New.
10800         (test_insert_into_bit_range_vector): New.
10801         (_initialize_values): Register selftests.
10802         * common/array-view.h (operator==, operator!=): New.
10803
10804 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10805
10806         * common/gdb_vecs.h (unordered_remove): Add overload that takes
10807         an iterator.
10808         * inline-frame.c: Include <algorithm>.
10809         (struct inline_state): Add constructor.
10810         (inline_state_s): Remove.
10811         (DEF_VEC_O(inline_state_s)): Remove.
10812         (inline_states): Change type to std::vector.
10813         (find_inline_frame_state): Adjust to std::vector.
10814         (allocate_inline_frame_state): Remove.
10815         (clear_inline_frame_state): Adjust to std::vector.
10816         (skip_inline_frames): Adjust to std::vector.
10817
10818 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10819
10820         * tracepoint.h (struct trace_state_variable): Add constructor.
10821         <name>: Change type to std::string.
10822         * tracepoint.c (tsv_s): Remove.
10823         (DEF_VEC_O(tsv_s)): Remove.
10824         (tvariables): Change to std::vector.
10825         (create_trace_state_variable): Adjust to std::vector.
10826         (find_trace_state_variable): Likewise.
10827         (find_trace_state_variable_by_number): Likewise.
10828         (delete_trace_state_variable): Likewise.
10829         (trace_variable_command): Adjust to std::string.
10830         (delete_trace_variable_command): Likewise.
10831         (tvariables_info_1): Adjust to std::vector.
10832         (save_trace_state_variables): Likewise.
10833         (start_tracing): Likewise.
10834         (merge_uploaded_trace_state_variables): Adjust to std::vector
10835         and std::string.
10836         * target.h (struct target_ops)
10837         <to_download_trace_state_variable>: Pass reference to
10838         trace_state_variable.
10839         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
10840         * target-delegates.c: Re-generate.
10841         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
10842         (mi_tsv_deleted): Likewise.
10843         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
10844         * remote.c (remote_download_trace_state_variable): Change
10845         pointer to reference and adjust.
10846         * make-target-delegates (parse_argtypes): Handle references.
10847         (write_function_header): Likewise.
10848         (munge_type): Likewise.
10849
10850 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10851
10852         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
10853         string_view-selftests.c.
10854         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
10855         testsuite.
10856         * unittests/basic_string_view/cons/char/1.cc: Likewise.
10857         * unittests/basic_string_view/cons/char/2.cc: Likewise.
10858         * unittests/basic_string_view/cons/char/3.cc: Likewise.
10859         * unittests/basic_string_view/element_access/char/1.cc:
10860         Likewise.
10861         * unittests/basic_string_view/element_access/char/empty.cc:
10862         Likewise.
10863         * unittests/basic_string_view/element_access/char/front_back.cc:
10864         Likewise.
10865         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
10866         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
10867         Likewise.
10868         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
10869         Likewise.
10870         * unittests/basic_string_view/modifiers/swap/char/1.cc:
10871         Likewise.
10872         * unittests/basic_string_view/operations/compare/char/1.cc:
10873         Likewise.
10874         * unittests/basic_string_view/operations/compare/char/13650.cc:
10875         Likewise.
10876         * unittests/basic_string_view/operations/copy/char/1.cc:
10877         Likewise.
10878         * unittests/basic_string_view/operations/data/char/1.cc:
10879         Likewise.
10880         * unittests/basic_string_view/operations/find/char/1.cc:
10881         Likewise.
10882         * unittests/basic_string_view/operations/find/char/2.cc:
10883         Likewise.
10884         * unittests/basic_string_view/operations/find/char/3.cc:
10885         Likewise.
10886         * unittests/basic_string_view/operations/find/char/4.cc:
10887         Likewise.
10888         * unittests/basic_string_view/operations/rfind/char/1.cc:
10889         Likewise.
10890         * unittests/basic_string_view/operations/rfind/char/2.cc:
10891         Likewise.
10892         * unittests/basic_string_view/operations/rfind/char/3.cc:
10893         Likewise.
10894         * unittests/basic_string_view/operations/substr/char/1.cc:
10895         Likewise.
10896         * unittests/basic_string_view/operators/char/2.cc: Likewise.
10897         * unittests/string_view-selftests.c: New file.
10898
10899 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10900
10901         * unittests/basic_string_view/capacity/1.cc: New file.
10902         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
10903         * unittests/basic_string_view/cons/char/1.cc: New file.
10904         * unittests/basic_string_view/cons/char/2.cc: New file.
10905         * unittests/basic_string_view/cons/char/3.cc: New file.
10906         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
10907         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
10908         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
10909         * unittests/basic_string_view/element_access/char/1.cc: New file.
10910         * unittests/basic_string_view/element_access/char/2.cc: New file.
10911         * unittests/basic_string_view/element_access/char/empty.cc: New file.
10912         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
10913         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
10914         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
10915         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
10916         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
10917         * unittests/basic_string_view/include.cc: New file.
10918         * unittests/basic_string_view/inserters/char/1.cc: New file.
10919         * unittests/basic_string_view/inserters/char/2.cc: New file.
10920         * unittests/basic_string_view/inserters/char/3.cc: New file.
10921         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
10922         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
10923         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
10924         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
10925         * unittests/basic_string_view/literals/types.cc: New file.
10926         * unittests/basic_string_view/literals/values.cc: New file.
10927         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
10928         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
10929         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
10930         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
10931         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
10932         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
10933         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
10934         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
10935         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
10936         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
10937         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
10938         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
10939         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
10940         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
10941         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
10942         * unittests/basic_string_view/operations/data/char/1.cc: New file.
10943         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
10944         * unittests/basic_string_view/operations/find/char/1.cc: New file.
10945         * unittests/basic_string_view/operations/find/char/2.cc: New file.
10946         * unittests/basic_string_view/operations/find/char/3.cc: New file.
10947         * unittests/basic_string_view/operations/find/char/4.cc: New file.
10948         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
10949         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
10950         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
10951         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
10952         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
10953         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
10954         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
10955         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
10956         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
10957         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
10958         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
10959         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
10960         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
10961         * unittests/basic_string_view/operators/char/2.cc: New file.
10962         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
10963         * unittests/basic_string_view/range_access/char/1.cc: New file.
10964         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
10965         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
10966         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
10967         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
10968         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
10969         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
10970         * unittests/basic_string_view/requirements/typedefs.cc: New file.
10971         * unittests/basic_string_view/typedefs.cc: New file.
10972         * unittests/basic_string_view/types/1.cc: New file.
10973
10974 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10975
10976         * common/gdb_string_view.h: Remove libstdc++ implementation
10977         details, adjust to gdb reality.
10978         * common/gdb_string_view.tcc: Likewise.
10979         * cli/cli-script.c (struct string_view): Remove.
10980         (user_args) <m_args>: Change element type to gdb::string_view.
10981         (user_args::insert_args): Adjust.
10982
10983 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10984
10985         * common/gdb_string_view.h: New file.
10986         * common/gdb_string_view.tcc: New file.
10987
10988 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10989
10990         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
10991         * configure: Re-generate.
10992
10993 2018-04-09  Pedro Alves  <palves@redhat.com>
10994
10995         * gdbarch.sh: Include "observable.h" instead of "observer.h".
10996         (set_target_gdbarch): Call
10997         gdb::observers::architecture_changed.notify instead of
10998         observer_notify_architecture_changed.
10999
11000 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11001
11002         * tracepoint.c (struct current_traceframe_cleanup): Remove.
11003         (do_restore_current_traceframe_cleanup): Remove.
11004         (restore_current_traceframe_cleanup_dtor): Remove.
11005         (make_cleanup_restore_current_traceframe): Remove.
11006         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
11007         New.
11008         * tracepoint.h (struct scoped_restore_current_traceframe): New.
11009         * infrun.c (fetch_inferior_event): Use
11010         scoped_restore_current_traceframe.
11011
11012 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11013
11014         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
11015         Remove.
11016         <n_allocated_type_units>: Remove.
11017         <all_type_units>: Change to std::vector.
11018         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11019         to std::vector change.
11020         (dwarf2_per_objfile::get_cutu): Likewise.
11021         (dwarf2_per_objfile::get_tu): Likewise.
11022         (create_signatured_type_table_from_index): Likewise.
11023         (create_signatured_type_table_from_debug_names): Likewise.
11024         (dw2_symtab_iter_next): Likewise.
11025         (dw2_print_stats): Likewise.
11026         (dw2_expand_all_symtabs): Likewise.
11027         (dw2_expand_marked_cus): Likewise.
11028         (dw2_debug_names_iterator::next): Likewise.
11029         (dwarf2_initialize_objfile): Likewise.
11030         (add_signatured_type_cu_to_table): Likewise.
11031         (create_all_type_units): Likewise.
11032         (add_type_unit): Likewise.
11033         (struct tu_abbrev_offset): Add constructor.
11034         (build_type_psymtabs_1): Adjust to std::vector change.
11035         (print_tu_stats): Likewise.
11036         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11037         (write_debug_names): Likewise.
11038
11039 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11040
11041         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
11042         Make an std::vector.
11043         <n_comp_units>: Remove.
11044         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11045         to std::vector change.
11046         (dwarf2_per_objfile::get_cutu): Likewise.
11047         (dwarf2_per_objfile::get_cu): Likewise.
11048         (create_cus_from_index): Likewise.
11049         (create_addrmap_from_index): Likewise.
11050         (create_addrmap_from_aranges): Likewise.
11051         (dwarf2_read_index): Likewise.
11052         (dw2_find_last_source_symtab): Likewise.
11053         (dw2_map_symtabs_matching_filename): Likewise.
11054         (dw2_symtab_iter_next): Likewise.
11055         (dw2_print_stats): Likewise.
11056         (dw2_expand_all_symtabs): Likewise.
11057         (dw2_expand_symtabs_with_fullname): Likewise.
11058         (dw2_expand_marked_cus): Likewise.
11059         (dw2_map_symbol_filenames): Likewise.
11060         (create_cus_from_debug_names): Likewise.
11061         (dwarf2_read_debug_names): Likewise.
11062         (dw2_debug_names_iterator::next): Likewise.
11063         (dwarf2_initialize_objfile): Likewise.
11064         (set_partial_user): Likewise.
11065         (dwarf2_build_psymtabs_hard): Likewise.
11066         (read_comp_units_from_section): Remove arguments, adjust to
11067         std::vector change.
11068         (create_all_comp_units): Adjust to std::vector and
11069         read_comp_units_from_section changes.
11070         (dwarf2_find_containing_comp_unit): Adjust to std::vector
11071         change.
11072         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11073         (psyms_seen_size): Likewise.
11074         (write_gdbindex): Likewise.
11075         (write_debug_names): Likewise.
11076
11077 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11078
11079         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
11080         with dwarf2_per_objfile.
11081         (create_cus_from_index): Likewise.
11082         (create_signatured_type_table_from_index): Likewise.
11083         (dwarf2_read_index): Likewise.
11084         (dwarf2_initialize_objfile): Likewise.
11085         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
11086         per_cu rather than get_dwarf2_per_objfile.
11087
11088 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11089
11090         * dwarf2read.h (struct signatured_type): Forward declare.
11091         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
11092         New methods.
11093         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
11094         (dw2_get_cutu): ...this.
11095         (dwarf2_per_objfile::get_cu): Rename from...
11096         (dw2_get_cu): ...this.
11097         (dwarf2_per_objfile::get_tu): New.
11098         (create_addrmap_from_index): Adjust.
11099         (create_addrmap_from_aranges): Adjust.
11100         (dw2_find_last_source_symtab): Adjust.
11101         (dw2_map_symtabs_matching_filename): Adjust.
11102         (dw2_symtab_iter_next): Adjust.
11103         (dw2_print_stats): Adjust.
11104         (dw2_expand_all_symtabs): Adjust.
11105         (dw2_expand_symtabs_with_fullname): Adjust.
11106         (dw2_expand_marked_cus): Adjust.
11107         (dw_expand_symtabs_matching_file_matcher): Adjust.
11108         (dw2_map_symbol_filenames): Adjust.
11109         (dw2_debug_names_iterator::next): Adjust.
11110         (dwarf2_initialize_objfile): Adjust.
11111         (set_partial_user): Adjust.
11112         (dwarf2_build_psymtabs_hard): Adjust.
11113
11114 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11115
11116         * dwarf2read.c (create_signatured_type_table_from_debug_names):
11117         Remove unused variables.
11118         (dw2_map_symtabs_matching_filename): Likewise.
11119         (dwarf2_record_block_ranges): Likewise.
11120         (dwarf2_read_addr_index): Likewise.
11121         (follow_die_offset): Likewise.
11122
11123 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11124
11125         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
11126         to symbol_file_add_main.
11127
11128 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11129
11130         PR mi/22299
11131         * mi/mi-console.c (do_fputc_async_safe): New.
11132         (mi_console_file::write_async_safe): New.
11133         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
11134         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
11135         New.
11136         * ui-file.c (ui_file::putstrn): Adjust call to
11137         fputstrn_unfiltered.
11138         * utils.c (printchar): Replace do_fputs and do_fprintf
11139         parameters by do_fputc.
11140         (fputstr_filtered): Adjust call to printchar.
11141         (fputstr_unfiltered): Likewise.
11142         (fputstrn_filtered): Likewise.
11143         (fputstrn_unfiltered): Add do_fputc parameter, pass to
11144         printchar.
11145         * utils.h (do_fputc_ftype): New typedef.
11146         (fputstrn_unfiltered): Add do_fputc parameter.
11147
11148 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11149
11150         * regformats/i386/i386-avx.dat: Remove.
11151
11152 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11153
11154         PR gdb/22979
11155         * amd64-tdep.c (amd64_none_init_abi): New function.
11156         (amd64_x32_none_init_abi): New function.
11157         (_initialize_amd64_tdep): Register handlers for x86-64 and
11158         x64_32 with GDB_OSABI_NONE.
11159         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
11160         GDB_OSABI_NONE osabi.
11161
11162 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11163
11164         PR gdb/22980
11165         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
11166         GDB_OSABI_NONE.
11167         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
11168         * osabi.c (gdb_osabi_names): Add "unknown" entry.
11169
11170 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11171
11172         * common/byte-vector.h (char_vector): New type.
11173         * target.h (target_read_alloc): Return
11174         gdb::optional<byte_vector>.
11175         (target_read_stralloc): Return gdb::optional<char_vector>.
11176         (target_get_osdata): Return gdb::optional<char_vector>.
11177         * target.c (target_read_alloc_1): Templatize.  Replacement
11178         manual memory management with vector.
11179         (target_read_alloc): Change return type, adjust.
11180         (target_read_stralloc): Change return type, adjust.
11181         (target_get_osdata): Change return type, adjust.
11182         * auxv.c (struct auxv_info) <length>: Remove.
11183         <data>: Change type to gdb::optional<byte_vector>.
11184         (auxv_inferior_data_cleanup): Free auxv_info with delete.
11185         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
11186         (target_auxv_search): Adjust.
11187         (fprint_target_auxv): Adjust.
11188         * avr-tdep.c (avr_io_reg_read_command): Adjust.
11189         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
11190         (linux_make_corefile_notes): Adjust.
11191         * osdata.c (get_osdata): Adjust.
11192         * remote.c (remote_get_threads_with_qxfer): Adjust.
11193         (remote_memory_map): Adjust.
11194         (remote_traceframe_info): Adjust.
11195         (btrace_read_config): Adjust.
11196         (remote_read_btrace): Adjust.
11197         (remote_pid_to_exec_file): Adjust.
11198         * solib-aix.c (solib_aix_get_library_list): Adjust.
11199         * solib-dsbt.c (decode_loadmap): Don't free buf.
11200         (dsbt_get_initial_loadmaps): Adjust.
11201         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
11202         * solib-target.c (solib_target_current_sos): Adjust.
11203         * tracepoint.c (sdata_make_value): Adjust.
11204         * xml-support.c (xinclude_start_include): Adjust.
11205         (xml_fetch_content_from_file): Adjust.
11206         * xml-support.h (xml_fetch_another): Change return type.
11207         (xml_fetch_content_from_file): Change return type.
11208         * xml-syscall.c (xml_init_syscalls_info): Adjust.
11209         * xml-tdesc.c (file_read_description_xml): Adjust.
11210         (fetch_available_features_from_target): Change return type.
11211         (target_fetch_description_xml): Adjust.
11212         (target_read_description_xml): Adjust.
11213
11214 2018-04-06  Tom Tromey  <tom@tromey.com>
11215
11216         * value.c (~value): Update.
11217         (struct value) <contents>: Now unique_xmalloc_ptr.
11218         (value_contents_bits_eq, allocate_value_contents)
11219         (value_contents_raw, value_contents_all_raw)
11220         (value_contents_for_printing, value_contents_for_printing_const)
11221         (set_value_enclosing_type): Update.
11222
11223 2018-04-06  Tom Tromey  <tom@tromey.com>
11224
11225         * value.c (range_s): Remove typedef, VEC.
11226         (struct range): Add operator<.
11227         (range_lessthan): Remove.
11228         (ranges_contain): Change type.
11229         (~value): Update.
11230         (struct value) <unavailable, optimized_out>: Now std::vector.
11231         (value_entirely_available)
11232         (value_entirely_covered_by_range_vector)
11233         (value_entirely_unavailable, value_entirely_optimized_out):
11234         Update.
11235         (insert_into_bit_range_vector): Change argument type.
11236         (find_first_range_overlap): Likewise.
11237         (struct ranges_and_idx, value_contents_bits_eq)
11238         (require_not_optimized_out, require_available): Update.
11239         (ranges_copy_adjusted): Change argument types.
11240         (value_optimized_out, value_copy, value_fetch_lazy): Update.
11241
11242 2018-04-06  Tom Tromey  <tom@tromey.com>
11243
11244         * value.c (~value): Update.
11245         (struct value) <parent>: Now a value_ref_ptr.
11246         (value_parent, set_value_parent, value_address, value_copy):
11247         Update.
11248
11249 2018-04-06  Tom Tromey  <tom@tromey.com>
11250
11251         * value.c (struct value): Add constructor, destructor, and member
11252         initializers.
11253         (allocate_value_lazy, value_decref): Update.
11254
11255 2018-04-06  Tom Tromey  <tom@tromey.com>
11256
11257         * value.c (struct value) <released, next>: Remove.
11258         (all_values): Now a std::vector.
11259         (allocate_value_lazy): Update.
11260         (value_next): Remove.
11261         (value_mark, value_free_to_mark, release_value)
11262         (value_release_to_mark): Update.
11263
11264 2018-04-06  Tom Tromey  <tom@tromey.com>
11265
11266         * value.h (fetch_subexp_value, value_release_to_mark): Update.
11267         (free_value_chain): Remove.
11268         * value.c (free_value_chain): Remove.
11269         (value_release_to_mark): Return a std::vector.
11270         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
11271         std::vector.
11272         (check_condition): Update.
11273         * eval.c (fetch_subexp_value): Change "val_chain" to a
11274         std::vector.
11275         * breakpoint.c (update_watchpoint): Update.
11276         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
11277
11278 2018-04-06  Tom Tromey  <tom@tromey.com>
11279
11280         * value.h (free_all_values): Remove.
11281         * value.c (free_all_values): Remove.
11282
11283 2018-04-06  Tom Tromey  <tom@tromey.com>
11284
11285         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
11286         (value_history_chain, value_history_count): Remove.
11287         (value_history): New global.
11288         (record_latest_value, access_value_history, show_values)
11289         (preserve_values): Update.
11290
11291 2018-04-06  Tom Tromey  <tom@tromey.com>
11292
11293         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
11294         * varobj.c (varobj_set_display_format, varobj_set_value)
11295         (install_default_visualizer, construct_visualizer)
11296         (install_new_value, ~varobj, varobj_get_value_type)
11297         (my_value_of_variable, varobj_editable_p): Update.
11298         * c-varobj.c (c_describe_child, c_value_of_variable)
11299         (cplus_number_of_children, cplus_describe_child): Update.
11300         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
11301         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
11302         (ada_value_of_variable, ada_value_is_changeable_p): Update.
11303
11304 2018-04-06  Tom Tromey  <tom@tromey.com>
11305
11306         * printcmd.c (last_examine_address): Change type to
11307         value_ref_ptr.
11308         (do_examine, x_command): Update.
11309
11310 2018-04-06  Tom Tromey  <tom@tromey.com>
11311
11312         * value.c (release_value): Update.
11313         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
11314         (struct bpstats) <val>: Now a value_ref_ptr.
11315         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11316         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11317         (~watchpoint, print_it_watchpoint, watch_command_1)
11318         (invalidate_bp_value_on_memory_change): Update.
11319
11320 2018-04-06  Tom Tromey  <tom@tromey.com>
11321
11322         * varobj.c (varobj_clear_saved_item)
11323         (update_dynamic_varobj_children, install_new_value, ~varobj):
11324         Update.
11325         * value.h (value_incref): Move declaration earlier.
11326         (value_decref): Rename from value_free.
11327         (struct value_ref_policy): New.
11328         (value_ref_ptr): New typedef.
11329         (struct value_deleter): Remove.
11330         (gdb_value_up): Remove typedef.
11331         (release_value): Change return type.
11332         (release_value_or_incref): Remove.
11333         * value.c (set_value_parent): Update.
11334         (value_incref): Change return type.
11335         (value_decref): Rename from value_free.
11336         (value_free_to_mark, free_all_values, free_value_chain): Update.
11337         (release_value): Return value_ref_ptr.
11338         (release_value_or_incref): Remove.
11339         (record_latest_value, set_internalvar, clear_internalvar):
11340         Update.
11341         * stack.c (info_frame_command): Don't call value_free.
11342         * python/py-value.c (valpy_dealloc, valpy_new)
11343         (value_to_value_object): Update.
11344         * printcmd.c (do_examine): Update.
11345         * opencl-lang.c (lval_func_free_closure): Update.
11346         * mi/mi-main.c (register_changed_p): Don't call value_free.
11347         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
11348         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
11349         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
11350         value_free.
11351         * guile/scm-value.c (vlscm_free_value_smob)
11352         (vlscm_scm_from_value): Update.
11353         * frame.c (frame_register_unwind, frame_unwind_register_signed)
11354         (frame_unwind_register_unsigned, get_frame_register_bytes)
11355         (put_frame_register_bytes): Don't call value_free.
11356         * findvar.c (address_from_register): Don't call value_free.
11357         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
11358         * dwarf2loc.c (entry_data_value_free_closure)
11359         (value_of_dwarf_reg_entry, free_pieced_value_closure)
11360         (dwarf2_evaluate_loc_desc_full): Update.
11361         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11362         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11363         (~watchpoint, watch_command_1)
11364         (invalidate_bp_value_on_memory_change): Update.
11365         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
11366
11367 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
11368
11369         PR gdb/23022
11370         * warning.m4: Add -Wno-error=deprecated-register.
11371         * configure: Re-generate.
11372
11373 2018-04-05  Tom Tromey  <tom@tromey.com>
11374
11375         * linespec.h: Remove include of "vec.h".
11376
11377 2018-04-05  Tom Tromey  <tom@tromey.com>
11378
11379         * linespec.c (typep): Remove typedef.
11380         (find_methods, find_superclass_methods): Take a std::vector.
11381         (find_method): Use std::vector.
11382
11383 2018-04-05  Tom Tromey  <tom@tromey.com>
11384
11385         * utils.c (compare_strings): Remove.
11386         * utils.h (compare_strings): Remove.
11387         * objc-lang.h (find_imps): Update.
11388         * objc-lang.c (find_methods): Take a std::vector.
11389         (uniquify_strings, find_imps): Likewise.
11390         * linespec.c (find_methods): Take a std::vector.
11391         (decode_objc): Use std::vector.
11392         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
11393         a std::vector.
11394         (find_method, find_function_symbols): Use std::vector.
11395
11396 2018-04-05  Tom Tromey  <tom@tromey.com>
11397
11398         * completer.c (completion_tracker::completion_tracker): Remove
11399         cast.
11400         (completion_tracker::discard_completions): Likewise.
11401         * breakpoint.c (ambiguous_names_p): Remove cast.
11402         * ada-lang.c (_initialize_ada_language): Remove cast.
11403         * utils.h (streq): Update.
11404         (streq_hash): Add new declaration.
11405         * utils.c (streq): Return bool.
11406         (streq_hash): New function.
11407
11408 2018-04-05  Tom Tromey  <tom@tromey.com>
11409
11410         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
11411         Remove a string copy.
11412
11413 2018-04-05  Tom Tromey  <tom@tromey.com>
11414
11415         * linespec.c (filter_results): Use std::vector.
11416         (decode_line_2, decode_line_full): Update.
11417
11418 2018-04-05  Tom Tromey  <tom@tromey.com>
11419
11420         * linespec.c (canonical_to_fullform): Return std::string.
11421         (filter_results): Update.
11422         (struct decode_line_2_item): Add constructor.
11423         <fullform, displayform>: Now std::string.
11424         (decode_line_2_compare_items): Now a std::sort comparator.
11425         (decode_line_2): Update.
11426
11427 2018-04-05  Tom Tromey  <tom@tromey.com>
11428
11429         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
11430         (unexpected_linespec_error): Update.
11431         (linespec_parse_basic, parse_linespec): Update.
11432
11433 2018-04-05  Tom Tromey  <tom@tromey.com>
11434
11435         * linespec.c (linespec_parse_basic): Reindent.
11436
11437 2018-04-05  Tom Tromey  <tom@tromey.com>
11438
11439         * minsyms.h (iterate_over_minimal_symbols): Update.
11440         * minsyms.c (iterate_over_minimal_symbols): Take a
11441         gdb::function_view.
11442         * linespec.c (struct collect_minsyms): Remove.
11443         (compare_msyms): Now a std::sort comparator.
11444         (add_minsym): Add parameters.
11445         (search_minsyms_for_name): Update.  Use std::vector.
11446
11447 2018-04-03  Tom Tromey  <tom@tromey.com>
11448
11449         * mipsread.c (read_alphacoff_dynamic_symtab): Use
11450         gdb::byte_vector.
11451
11452 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
11453
11454         * MAINTAINERS (Write After Approval): Add Weimin Pan.
11455
11456 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
11457
11458         PR gdb/16959
11459         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
11460         printing static type.
11461
11462 2018-04-01  Tom Tromey  <tom@tromey.com>
11463
11464         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
11465         (rs6000_xfer_shared_libraries): Update.
11466
11467 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
11468
11469         * common/gdb_vecs.h (char_ptr): Remove.
11470         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
11471
11472 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
11473
11474         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
11475         with std::vector.
11476         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
11477
11478 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
11479
11480         * tracepoint.h (struct uploaded_tp): Initialize fields.
11481         <actions, step_actions, cmd_strings>: Change type to
11482         std::vector<char *>.
11483         * tracepoint.c (get_uploaded_tp): Allocate with new.
11484         (free_uploaded_tps): Free with delete.
11485         (parse_tracepoint_definition): Adjust to std::vector change.
11486         * breakpoint.c (read_uploaded_action): Likewise.
11487         (create_tracepoint_from_upload): Likewise.
11488         * ctf.c (ctf_write_uploaded_tp): Likewise.
11489         (SET_ARRAY_FIELD): Likewise.
11490         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
11491
11492 2018-03-30  Tom Tromey  <tom@tromey.com>
11493
11494         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
11495         std::unique_ptr.
11496         (svr4_keep_data_in_core): Update.
11497         (svr4_read_so_list): Update.
11498
11499 2018-03-30  Tom Tromey  <tom@tromey.com>
11500
11501         * windows-nat.c (handle_output_debug_string, handle_exception):
11502         Update.
11503         * target.h (target_read_string): Update.
11504         * target.c (target_read_string): Change "string" to
11505         unique_xmalloc_ptr.
11506         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
11507         Update.
11508         * solib-frv.c (frv_current_sos): Update.
11509         * solib-dsbt.c (dsbt_current_sos): Update.
11510         * solib-darwin.c (darwin_current_sos): Update.
11511         * linux-thread-db.c (inferior_has_bug): Update.
11512         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
11513         Update.  Remove alloca.
11514         * ada-lang.c (ada_main_name): Update.
11515
11516 2018-03-30  Tom Tromey  <tom@tromey.com>
11517
11518         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
11519         (struct dwo_file_deleter): New.
11520         (dwo_file_up): New typedef.
11521         (open_and_init_dwo_file): Use dwo_file_up.
11522         (free_dwo_file_cleanup): Remove.
11523
11524 2018-03-30  Tom Tromey  <tom@tromey.com>
11525
11526         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
11527         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
11528
11529 2018-03-30  Tom Tromey  <tom@tromey.com>
11530
11531         * dwarf2read.c (class free_cached_comp_units): New class.
11532         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
11533         (free_cached_comp_units): Remove function.
11534
11535 2018-03-30  Tom Tromey  <tom@tromey.com>
11536
11537         * utils.h (make_cleanup_unpush_target): Remove.
11538         * inf-ptrace.c (struct target_unpusher): New.
11539         (target_unpush_up) New typedef.
11540         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
11541         target_unpush_up.
11542         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
11543
11544 2018-03-27  Tom Tromey  <tom@tromey.com>
11545
11546         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
11547
11548 2018-03-27  Pedro Alves  <palves@redhat.com>
11549             Tom Tromey  <tom@tromey.com>
11550
11551         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
11552         destructor.  Now a class.
11553         (gdb_readline_wrapper_cleanup): Remove function.
11554         (gdb_readline_wrapper): Remove cleanups.
11555
11556 2018-03-27  Tom Tromey  <tom@tromey.com>
11557
11558         * typeprint.h (struct type_print_options) <local_typedefs,
11559         global_typedefs>: Remove "struct" keyword.
11560         (class typedef_hash_table): New class.
11561         (recursively_update_typedef_hash, add_template_parameters)
11562         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
11563         (find_typedef_in_hash): Don't declare.
11564         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
11565         (typedef_hash_table::recursively_update): Rename from
11566         recursively_update_typedef_hash.  Now a member.
11567         (typedef_hash_table::add_template_parameters): Rename from
11568         add_template_parameters.  Now a member.
11569         (typedef_hash_table::typedef_hash_table): Now a constructor;
11570         rename from create_typedef_hash.
11571         (typedef_hash_table::~typedef_hash_table): Now a destructor;
11572         rename from free_typedef_hash.
11573         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
11574         (do_free_global_table): Remove.
11575         (typedef_hash_table::typedef_hash_table): New constructor; renamed
11576         from copy_type_recursive.
11577         (create_global_typedef_table): Remove.
11578         (typedef_hash_table::find_global_typedef): Now a member of
11579         typedef_hash_table.
11580         (typedef_hash_table::find_typedef): Rename from
11581         find_typedef_in_hash; now a member.
11582         (whatis_exp): Update.
11583         * extension.h (struct ext_lang_type_printers): Add constructor and
11584         destructor.
11585         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
11586         declare.
11587         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
11588         Now a constructor; rename from start_ext_lang_type_printers.
11589         (ext_lang_type_printers): Now a destructor; rename from
11590         free_ext_lang_type_printers.
11591         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
11592         Update.
11593         (c_type_print_base_struct_union): Update.  Remove cleanups.
11594
11595 2018-03-27  Tom Tromey  <tom@tromey.com>
11596
11597         * dwarf-index-write.c: Include <cmath>.
11598
11599 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
11600
11601         * NEWS: Add entry describing new "set|show varsize-limit" command.
11602         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
11603         command.
11604         * printcmd.c (_initialize_printcmd): Add "set var" alias of
11605         "set variable".
11606
11607 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
11608
11609         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
11610         dwarf-index-write.c
11611         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
11612         * dwarf-index-common.c: New file.
11613         * dwarf-index-common.h: New file.
11614         * dwarf-index-write.c: New file.
11615         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
11616         (struct dwarf2_section_info): Move from here.
11617         (dwarf2_section_info_def): Likewise.
11618         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
11619         (offset_type): Likewise.
11620         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
11621         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
11622         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
11623         (byte_swap): Likewise.
11624         (MAYBE_SWAP): Likewise.
11625         (dwarf2_per_cu_ptr): Likewise.
11626         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
11627         (struct tu_stats): Likewise.
11628         (struct dwarf2_per_objfile): Likewise.
11629         (struct dwarf2_per_cu_data): Likewise.
11630         (struct signatured_type): Likewise.
11631         (sig_type_ptr): Likewise.
11632         (DEF_VEC_P (sig_type_ptr)): Likewise.
11633         (INDEX4_SUFFIX): Likewise.
11634         (INDEX5_SUFFIX): Likewise.
11635         (DEBUG_STR_SUFFIX): Likewise.
11636         (dwarf2_read_section): Make non-static.
11637         (mapped_index_string_hash): Move from here.
11638         (dwarf5_djb_hash): Likewise.
11639         (file_write): Likewise.
11640         (class data_buf): Likewise.
11641         (struct symtab_index_entry): Likewise.
11642         (struct mapped_symtab): Likewise.
11643         (find_slot): Likewise.
11644         (hash_expand): Likewise.
11645         (add_index_entry): Likewise.
11646         (uniquify_cu_indices): Likewise.
11647         (class c_str_view): Likewise.
11648         (class c_str_view_hasher): Likewise.
11649         (class vector_hasher): Likewise.
11650         (write_hash_table): Likewise.
11651         (psym_index_map): Likewise.
11652         (struct addrmap_index_data): Likewise.
11653         (add_address_entry): Likewise.
11654         (add_address_entry_worker): Likewise.
11655         (write_address_map): Likewise.
11656         (symbol_kind): Likewise.
11657         (write_psymbols): Likewise.
11658         (struct signatured_type_index_data): Likewise.
11659         (write_one_signatured_type): Likewise.
11660         (recursively_count_psymbols): Likewise.
11661         (recursively_write_psymbols): Likewise.
11662         (class debug_names): Likewise.
11663         (check_dwarf64_offsets): Likewise.
11664         (psyms_seen_size): Likewise.
11665         (write_gdbindex): Likewise.
11666         (write_debug_names): Likewise.
11667         (assert_file_size): Likewise.
11668         (write_psymtabs_to_index): Likewise.
11669         (save_gdb_index_command): Likewise.
11670         (_initialize_dwarf2_read): Don't register the "save gdb-index"
11671         command.
11672         * dwarf2read.h: New file.
11673
11674 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
11675
11676         PR gdb/22670
11677         * dwarf2read.c (dwarf2_physname): Do not return the demangled
11678         symbol name if the CU's language stores symbol names in linkage
11679         format.
11680         * language.h (struct language_defn)
11681         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
11682         all instances of this struct.
11683
11684 2018-03-26  Tom Tromey  <tom@tromey.com>
11685
11686         * stack.c (backtrace_command_1): Remove verbose code.
11687
11688 2018-03-26  Tom Tromey  <tom@tromey.com>
11689
11690         * python/py-framefilter.c (py_print_type): Don't catch
11691         exceptions.  Return void.
11692         (py_print_value): Likewise.
11693         (py_print_single_arg): Likewise.
11694         (enumerate_args): Don't catch exceptions.
11695         (py_print_args): Likewise.
11696         (py_print_frame): Likewise.
11697         (gdbpy_apply_frame_filter): Catch exceptions here.
11698
11699 2018-03-26  Tom Tromey  <tom@tromey.com>
11700
11701         * stack.c (_initialize_stack): Remove trailing newlines from help
11702         text.  Add "Usage" line to "backtrace" help.
11703
11704 2018-03-26  Tom Tromey  <tom@tromey.com>
11705
11706         PR python/16486:
11707         * python/py-framefilter.c (py_print_args): Call wrap_hint.
11708
11709 2018-03-26  Tom Tromey  <tom@tromey.com>
11710
11711         * python/py-framefilter.c (py_print_single_arg): Return
11712         EXT_LANG_BT_ERROR from catch.
11713
11714 2018-03-26  Tom Tromey  <tom@tromey.com>
11715
11716         PR backtrace/15584:
11717         * stack.c (backtrace_command_1): Move some code into no-filters
11718         "if".
11719
11720 2018-03-26  Tom Tromey  <tom@tromey.com>
11721
11722         * python/py-framefilter.c (throw_quit_or_print_exception): New
11723         function.
11724         (gdbpy_apply_frame_filter): Use it.
11725
11726 2018-03-26  Tom Tromey  <tom@tromey.com>
11727
11728         PR cli/17716:
11729         * python/py-framefilter.c (py_print_type, py_print_value)
11730         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
11731         RETURN_MASK_ERROR.
11732
11733 2018-03-26  Tom Tromey  <tom@tromey.com>
11734
11735         * python/py-framefilter.c (enumerate_args): Use
11736         gdb::unique_xmalloc_ptr.
11737
11738 2018-03-26  Tom Tromey  <tom@tromey.com>
11739
11740         * python/py-framefilter.c (py_print_frame): Return
11741         EXT_LANG_BT_OK.
11742         (gdbpy_apply_frame_filter): Update comment.
11743         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
11744         Remove.
11745         <EXT_LANG_BT_NO_FILTERS>: Change value.
11746
11747 2018-03-26  Tom Tromey  <tom@tromey.com>
11748
11749         PR backtrace/15582:
11750         * stack.c (backtrace_command): Parse "hide" argument.
11751         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
11752         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
11753         constant.
11754
11755 2018-03-26  Tom Tromey  <tom@tromey.com>
11756
11757         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
11758         add "flags".
11759         (backtrace_command): Remove "fulltrace", add "flags".
11760
11761 2018-03-26  Tom Tromey  <tom@tromey.com>
11762
11763         * stack.c (backtrace_command): Rewrite command line parsing.
11764
11765 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
11766
11767         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
11768
11769 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
11770
11771         * filename-seen-cache.h: Add include guard.
11772
11773 2018-03-26  Keith Seitz  <keiths@redhat.com>
11774
11775         * symfile.c (place_section): Remove "struct" from section_addr_info
11776         in comment.
11777         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
11778         "struct" keyword from section_addr_info.
11779
11780 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
11781
11782         * regformats/regdef.h (reg): Add constructors.
11783
11784 2018-03-25  Pedro Alves  <palves@redhat.com>
11785
11786         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
11787         if then/else bodies in var_func_name extraction.
11788
11789 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
11790
11791         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
11792         lookup_minimal_symbol() to find symbol entry.
11793         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
11794
11795 2018-03-23  Keith Seitz  <keiths@redhat.com>
11796
11797         PR c++/22968
11798         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
11799         nested type definitions for C++, too.
11800
11801 2018-03-23  Tom Tromey  <tom@tromey.com>
11802
11803         * machoread.c (struct oso_el): Add a constructor.  Don't define as
11804         a typedef.
11805         (macho_register_oso): Remove.
11806         (macho_symtab_read): Take a std::vector.
11807         (oso_el_compare_name): Now a std::sort comparator.
11808         (macho_symfile_read_all_oso): Take a std::vector.
11809         (macho_symfile_read): Use std::vector.  Remove cleanups.
11810
11811 2018-03-22  Tom Tromey  <tom@tromey.com>
11812
11813         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
11814         (record_full_goto_bookmark): Use std::string.
11815
11816 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11817
11818         PR tdep/18295
11819         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
11820         a single mask.
11821
11822 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11823
11824         * rs6000-tdep.c (store_insn_p): New function.
11825         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
11826         and cr_reg to their unshifted values. Use store_insn_p to
11827         match LR saves using either R1 or fdata->alloca_reg. Use
11828         store_insn_p to match CR saves. Set alloca_reg_offset
11829         when alloca_reg and framep are set. Remove lr_reg shift
11830         when assigning to fdata->lr_register.
11831
11832 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11833
11834         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
11835         command line args instead of emitting a warning.
11836
11837 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
11838
11839         * tracepoint.h (struct static_tracepoint_marker): Initialize
11840         fields, define default constructor, move constructor and move
11841         assignment, disable the rest.
11842         <str_id, extra>: Make std::string.
11843         (release_static_tracepoint_marker): Remove.
11844         (free_current_marker): Remove.
11845         * tracepoint.c (free_current_marker): Remove.
11846         (parse_static_tracepoint_marker_definition): Adjust to
11847         std::string, use new hex2str overload.
11848         (release_static_tracepoint_marker): Remove.
11849         (print_one_static_tracepoint_marker): Get marker by reference
11850         and adjust to std::string.
11851         (info_static_tracepoint_markers_command): Adjust to std::vector
11852         changes
11853         * target.h (static_tracepoint_marker_p): Remove typedef.
11854         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
11855         (struct target_ops) <to_static_tracepoint_marker_at>: Return
11856         bool.
11857         <to_static_tracepoint_markers_by_strid>: Return std::vector.
11858         * target-debug.h
11859         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
11860         (target_debug_print_std_vector_static_tracepoint_marker): New.
11861         (target_debug_print_struct_static_tracepoint_marker_p): Rename
11862         to...
11863         (target_debug_print_static_tracepoint_marker_p): ... this.
11864         * target-delegates.c: Re-generate.
11865         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
11866         Make std::string.
11867         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
11868         (decode_static_tracepoint_spec): Adjust to std::vector.
11869         (tracepoint_print_one_detail): Adjust to std::string.
11870         (strace_marker_decode_location): Adjust to std::string.
11871         (update_static_tracepoint): Adjust to std::string, remove call
11872         to release_static_tracepoint_marker.
11873         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
11874         Adjust to std::vector.
11875         * remote.c (remote_static_tracepoint_marker_at): Return bool.
11876         (remote_static_tracepoint_markers_by_strid): Adjust to
11877         std::vector.
11878         * common/rsp-low.h (hex2str): New overload with explicit count
11879         of bytes.
11880         * common/rsp-low.c (hex2str): New overload with explicit count
11881         of bytes.
11882         * unittests/rsp-low-selftests.c (test_hex2str): New function.
11883         (_initialize_rsp_low_selftests): Add test_hex2str test.
11884         * unittests/tracepoint-selftests.c
11885         (test_parse_static_tracepoint_marker_definition): Adjust to
11886         std::string.
11887
11888 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
11889
11890         * tracepoint.c (parse_static_tracepoint_marker_definition):
11891         Consider case where the definition is followed by more
11892         definitions.
11893         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11894         tracepoint-selftests.c.
11895         * unittests/tracepoint-selftests.c: New.
11896
11897 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11898
11899         * MAINTAINERS (Write After Approval): Add Pedro Franco de
11900         Carvalho.
11901
11902 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
11903
11904         * symtab.c (find_pc_sect_line): fixed indentation.
11905
11906 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
11907
11908         * symtab.c (find_pc_sect_line): now uses binary search.
11909
11910 2018-03-19  Tom Tromey  <tom@tromey.com>
11911
11912         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
11913         "IDENT" production.
11914
11915 2018-03-19  Pedro Alves  <palves@redhat.com>
11916             Tom Tromey  <tom@tromey.com>
11917
11918         * unittests/observable-selftests.c: New file.
11919         * common/observable.h: New file.
11920         * observable.h: New file.
11921         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
11922         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
11923         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
11924         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
11925         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
11926         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
11927         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
11928         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
11929         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
11930         python/py-breakpoint.c, python/py-finishbreakpoint.c,
11931         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
11932         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
11933         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
11934         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
11935         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
11936         tui/tui-interp.c, valops.c: Update all users.
11937         * tui/tui-hooks.c (tui_bp_created_observer)
11938         (tui_bp_deleted_observer, tui_bp_modified_observer)
11939         (tui_inferior_exit_observer, tui_before_prompt_observer)
11940         (tui_normal_stop_observer, tui_register_changed_observer):
11941         Remove.
11942         (tui_observers_token): New global.
11943         (attach_or_detach, tui_attach_detach_observers): New functions.
11944         (tui_install_hooks, tui_remove_hooks): Use
11945         tui_attach_detach_observers.
11946         * record-btrace.c (record_btrace_thread_observer): Remove.
11947         (record_btrace_thread_observer_token): New global.
11948         * observer.sh: Remove.
11949         * observer.c: Rename to observable.c.
11950         * observable.c (namespace gdb_observers): Define new objects.
11951         (observer_debug): Move into gdb_observers namespace.
11952         (struct observer, struct observer_list, xalloc_observer_list_node)
11953         (xfree_observer_list_node, generic_observer_attach)
11954         (generic_observer_detach, generic_observer_notify): Remove.
11955         (_initialize_observer): Update.
11956         Don't include observer.inc.
11957         * Makefile.in (generated_files): Remove observer.h, observer.inc.
11958         (clean mostlyclean): Likewise.
11959         (observer.h, observer.inc): Remove targets.
11960         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
11961         (COMMON_SFILES): Use observable.c, not observer.c.
11962         * .gitignore: Remove observer.h.
11963
11964 2018-03-18  Tom Tromey  <tom@tromey.com>
11965
11966         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
11967         gdb::def_vector.
11968         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
11969
11970 2018-03-17  Tom Tromey  <tom@tromey.com>
11971
11972         * auto-load.c (auto_load_objfile_script_1): Use std::string.
11973
11974 2018-03-17  Tom Tromey  <tom@tromey.com>
11975
11976         * target.c (class scoped_target_fd): New.
11977         (target_fileio_close_cleanup): Remove.
11978         (target_fileio_read_alloc_1): Use scoped_target_fd.
11979
11980 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
11981
11982         * silent-rules.mk: New.
11983         * Makefile.in: Include silent-rules.mk
11984         (srcdir, VPATH, top_srcdir): Move up.
11985         (COMPILE): Add ECHO_CXX.
11986         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
11987         (init.c): Add ECHO_INIT_C.
11988         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
11989         (version.c): Add ECHO_GEN.
11990         (printcmd.o): Add ECHO_CXX.
11991         (target-float.o): Add ECHO_CXX.
11992         (ada-exp.o): Add ECHO_CXX.
11993         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
11994         (insight$(EXEEXT)): Add ECHO_CXXLD.
11995         * gnulib/configure.ac: Add AM_SILENT_RULES.
11996         * gnulib/aclocal.m4: Re-generate.
11997         * gnulib/configure: Re-generate.
11998         * gnulib/import/Makefile.in: Re-generate.
11999
12000 2018-03-16  Tom Tromey  <tom@tromey.com>
12001
12002         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
12003         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
12004         * utils.c (do_free_section_addr_info)
12005         (make_cleanup_free_section_addr_info): Remove.
12006         * symfile.h (struct other_sections): Add constructor.
12007         (struct section_addr_info): Remove.
12008         (section_addr_info): New typedef.
12009         (struct sym_fns) <sym_offsets>: Change type of parameter.
12010         (build_section_addr_info_from_objfile)
12011         (relative_addr_info_to_section_offsets, addr_info_make_relative)
12012         (default_symfile_offsets, symbol_file_add)
12013         (symbol_file_add_from_bfd)
12014         (build_section_addr_info_from_section_table): Update.
12015         (alloc_section_addr_info, free_section_addr_info): Don't declare.
12016         * symfile.c (alloc_section_addr_info): Remove.
12017         (build_section_addr_info_from_section_table): Change return type.
12018         Update.
12019         (build_section_addr_info_from_bfd)
12020         (build_section_addr_info_from_objfile): Likewise.
12021         (free_section_addr_info): Remove.
12022         (relative_addr_info_to_section_offsets): Change type of "addrs".
12023         (addrs_section_compar): Now a std::sort comparator.
12024         (addrs_section_sort): Change return type.
12025         (addr_info_make_relative): Change type of "addrs".  Update.
12026         (default_symfile_offsets, syms_from_objfile_1)
12027         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
12028         (symbol_file_add_separate): Update.
12029         (symbol_file_add): Change type of "addrs".  Update.
12030         (add_symbol_file_command): Update.  Remove cleanups.
12031         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
12032         cleanups.
12033         * symfile-debug.c (debug_sym_offsets): Change type of "info".
12034         * solib.c (solib_read_symbols): Update.
12035         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
12036         * machoread.c (macho_symfile_offsets): Update.
12037         * jit.c (jit_bfd_try_read_symtab): Update.
12038
12039 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
12040
12041         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12042         unittests/utils-selftests.c.
12043         * unittests/utils-selftests.c: New file.
12044
12045 2018-03-14  Tom Tromey  <tom@tromey.com>
12046
12047         PR cli/14977:
12048         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
12049         for NULL.
12050
12051 2018-03-14  Tom Tromey  <tom@tromey.com>
12052
12053         PR cli/19918:
12054         * printcmd.c (printf_pointer): Allow "-" in format.
12055
12056 2018-03-14  Tom Tromey  <tom@tromey.com>
12057
12058         * printcmd.c (_initialize_printcmd): Add usage to printf.
12059
12060 2018-03-14  Yao Qi  <qiyao@sourceware.org>
12061
12062         * MAINTAINERS: Update my email address.
12063
12064 2018-03-13  Tom Tromey  <tom@tromey.com>
12065
12066         * machoread.c (macho_check_dsym): Change filenamep to a
12067         std::string*.
12068         (macho_symfile_read): Update.
12069         * symfile.c (load_command): Use std::string.
12070
12071 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
12072
12073         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
12074         to error message string.
12075         (riscv_register_name): Use xsnprintf instead of sprintf.
12076         (riscv_insn::fetch_instruction): Use gdb_assert instead of
12077         internal_error.
12078         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
12079         error.
12080         (riscv_push_dummy_call): Likewise.
12081
12082 2018-03-12  Tom Tromey  <tom@tromey.com>
12083
12084         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
12085         Use gdb::byte_vector.
12086         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
12087
12088 2018-03-12  Yao Qi  <yao.qi@linaro.org>
12089
12090         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
12091         parameter type to readable_regcache.
12092         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
12093         the declaration.
12094
12095 2018-03-11  Tom Tromey  <tom@tromey.com>
12096
12097         * dwarf2read.c (struct nextfield): Add initializers.
12098         (struct nextfnfield): Remove.
12099         (struct fnfieldlist): Add initializers.  Remove "length" and
12100         "head", use std::vector.
12101         (struct decl_field_list): Remove.
12102         (struct field_info): Add initializers.
12103         <fields, baseclasses>: Now std::vector.
12104         <nbaseclasses, nfnfields, typedef_field_list_count,
12105         nested_types_list_count>: Remove.
12106         (dwarf2_add_field, dwarf2_add_type_defn)
12107         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
12108         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
12109         (process_structure_scope): Update.
12110
12111 2018-03-11  Tom Tromey  <tom@tromey.com>
12112
12113         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
12114         for use by std::sort.
12115         (build_type_psymtabs_1): Use std::vector.
12116
12117 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
12118
12119         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
12120         and LIBMPFR in the printed configuration.
12121
12122 2018-03-08  Tom Tromey  <tom@tromey.com>
12123
12124         * source.c (get_filename_and_charpos): Use scoped_fd.
12125         * nto-procfs.c (procfs_open_1): Use scoped_fd.
12126         (procfs_pidlist): Likewise.
12127         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
12128         (iterate_over_mappings): Likewise.
12129
12130 2018-03-08  Tom Tromey  <tom@tromey.com>
12131
12132         * infcall.c (struct call_return_meta_info)
12133         <stack_temporaries_enabled>: Remove.
12134         (get_call_return_value, call_function_by_hand_dummy): Update.
12135         * thread.c (disable_thread_stack_temporaries): Remove.
12136         (enable_thread_stack_temporaries): Remove.
12137         (thread_stack_temporaries_enabled_p): Return bool.
12138         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
12139         (get_last_thread_stack_temporary): Update.
12140         * eval.c (evaluate_subexp): Update.
12141         * gdbthread.h (class enable_thread_stack_temporaries): Now a
12142         class, not a function.
12143         (value_ptr, value_vec): Remove typedefs.
12144         (class thread_info) <stack_temporaries_enabled>: Now bool.
12145         <stack_temporaries>: Now a std::vector.
12146         (thread_stack_temporaries_enabled_p)
12147         (value_in_thread_stack_temporaries): Return bool.
12148
12149 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
12150
12151         * remote.c (putpkt_binary): Fix omitted bytes reporting.
12152         (getpkt_or_notif_sane_1): Likewise.
12153
12154 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12155
12156         * build-id.c (build_id_to_debug_bfd): Use std::string.
12157
12158 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12159
12160         * build-id.c (find_separate_debug_file_by_buildid): Return
12161         std::string.
12162         * build-id.h (find_separate_debug_file_by_buildid): Return
12163         std::string.
12164         * coffread.c (coff_symfile_read): Adjust to std::string.
12165         * elfread.c (elf_symfile_read): Adjust to std::string.
12166         * symfile.c (separate_debug_file_exists): Change parameter to
12167         std::string.
12168         (find_separate_debug_file): Return std::string.
12169         (find_separate_debug_file_by_debuglink): Return std::string.
12170         * symfile.h (find_separate_debug_file_by_debuglink): Return
12171         std::string.
12172
12173 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12174
12175         * common/xml-utils.c (xml_escape_text): Move code to...
12176         (xml_escape_text_append): ... this new function.
12177         * common/xml-utils.h (xml_escape_text_append): New declaration.
12178         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
12179         New function.
12180         (_initialize_xml_utils): register test_xml_escape_text_append as
12181         a selftest.
12182
12183 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
12184
12185         * defs.h: Remove MAX_REGISTER_SIZE.
12186         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
12187         asserts.
12188         * python/py-unwind.c (pyuw_sniffer): Likewise.
12189
12190 2018-03-07  Tom Tromey  <tom@tromey.com>
12191
12192         * linux-tdep.c (linux_info_proc): Update.
12193         * target.h (struct target_ops) <to_fileio_readlink>: Return
12194         optional<string>.
12195         (target_fileio_readlink): Return optional<string>.
12196         * remote.c (remote_hostio_readlink): Return optional<string>.
12197         * inf-child.c (inf_child_fileio_readlink): Return
12198         optional<string>.
12199         * target.c (target_fileio_readlink): Return optional<string>.
12200
12201 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
12202
12203         * regcache.c (cooked_read_test): Add riscv to the list of
12204         architectures that have a save_reggroup.
12205
12206 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12207
12208         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
12209         value is not a dynamic class object.
12210
12211 2018-03-06  Tom Tromey  <tom@tromey.com>
12212
12213         * rust-exp.y: Formatting fixes.
12214
12215 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12216
12217         * riscv-tdep.c (riscv_register_name): Remove target description
12218         support.
12219         (riscv_gdbarch_init): Remove target description check.
12220
12221 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12222
12223         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
12224         comment.
12225         * riscv-tdep.h: Likewise.
12226
12227 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12228
12229         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
12230         (riscv_pseudo_register_write): Delete.
12231         (riscv_gdbarch_init): Remove all use of pseudo registers.
12232
12233 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12234
12235         * record-btrace.c (btrace_print_lines): Replace cleanup
12236         parameter with RAII equivalents.
12237         (btrace_insn_history): Replace cleanup with RAII equivalents.
12238         * ui-out.h (make_cleanup_ui_out_list_begin_end,
12239         make_cleanup_ui_out_tuple_begin_end): Remove.
12240         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
12241         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
12242         make_cleanup_ui_out_list_begin_end): Remove.
12243
12244 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12245
12246         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
12247         parameter types to std::vector.  Use bool.
12248         (record_btrace_wait): Replace VEC(tp_t) with
12249         std::vector<thread_info *>.
12250         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
12251
12252 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12253
12254         * record-btrace.c (record_btrace_disable_callback): Remove.
12255         (struct scoped_btrace_disable): New.
12256         (record_btrace_open): Use scoped_btrace_disable.
12257
12258 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12259
12260         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
12261         reading values from registers.
12262
12263 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12264
12265         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
12266         where appropriate.
12267
12268 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12269
12270         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
12271         change parameter type.  Use GDB's print functions, and use
12272         core_addr_to_string where appropriate.
12273         (riscv_push_dummy_call): Use core_addr_to_string where
12274         appropriate, update call to riscv_print_arg_location, and reindent
12275         a few lines.
12276         (riscv_return_value): Update call to riscv_print_arg_location.
12277
12278 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12279             Tim Newsome <tim@sifive.com>
12280             Albert Ou <a0u@eecs.berkeley.edu>
12281             Darius Rad <darius@bluespec.com>
12282
12283         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
12284         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
12285         (ALLDEPFILES): Add riscv-tdep.c
12286         * configure.tgt: Add riscv support.
12287         * riscv-tdep.c: New file.
12288         * riscv-tdep.h: New file.
12289         * NEWS: Mention new target.
12290         * MAINTAINERS: Add entry for riscv.
12291
12292 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12293
12294         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
12295         fields within aggregates.
12296
12297 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
12298
12299         * record-btrace.c (btrace_print_lines): Change type of flags to
12300         gdb_disassembly_flags.
12301
12302 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12303
12304         * fbsd-nat.c: Include "inf-ptrace.h".
12305         (USE_SIGTRAP_SIGINFO): Conditionally define.
12306         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
12307         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
12308         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
12309         function.
12310         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
12311         Likewise.
12312         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
12313         Likewise.
12314         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
12315         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
12316         "supports_stopped_by_hw_breakpoint" target methods.
12317
12318 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12319
12320         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
12321         * fbsd-nat.c (debug_fbsd_nat): New variable.
12322         (show_fbsd_nat_debug): New function.
12323         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
12324         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
12325
12326 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12327
12328         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
12329         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
12330         prototype.
12331         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
12332         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
12333         method.
12334
12335 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12336
12337         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
12338         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
12339
12340 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12341
12342         * charset.c (struct charset_vector): New.
12343         (charsets): Change type to charset_vector.
12344         (find_charset_names): Adjust.
12345         (add_one): Adjust.
12346         (_initialize_charset): Adjust.
12347
12348 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12349
12350         * progspace.h (struct program_space) <deleted_solibs>: Change
12351         type to std::vector<std::string>.
12352         * progspace.c (clear_program_space_solib_cache): Adjust.
12353         * breakpoint.c (print_solib_event): Adjust.
12354         (check_status_catch_solib): Adjust.
12355         * solib.c (update_solib_list): Adjust.
12356         * ui-out.h (class ui_out) <field_string>: New overload.
12357         * ui-out.c (ui_out::field_string): New overload.
12358
12359 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12360
12361         * progspace.h (struct program_space): Add constructor and
12362         destructor, initialize fields.
12363         (add_program_space): Remove.
12364         * progspace.c (add_program_space): Rename to...
12365         (program_space::program_space): ... this.
12366         (release_program_space): Rename to...
12367         (program_space::~program_space): ... this.
12368         (delete_program_space): Use delete to delete program_space.
12369         (initialize_progspace): Use new to allocate program_space.
12370         * inferior.c (add_inferior_with_spaces): Likewise.
12371         (clone_inferior_command): Likewise.
12372         * infrun.c (follow_fork_inferior): Likewise.
12373         (handle_vfork_child_exec_or_exit): Likewise.
12374
12375 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12376
12377         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
12378         (delim_string_to_char_ptr_vec): Return std::vector of
12379         gdb::unique_xmalloc_ptr.
12380         (dirnames_to_char_ptr_vec_append): Take std::vector of
12381         gdb::unique_xmalloc_ptr.
12382         (dirnames_to_char_ptr_vec): Return std::vector of
12383         gdb::unique_xmalloc_ptr.
12384         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
12385         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
12386         (delim_string_to_char_ptr_vec): Return an std::vector of
12387         gdb::unique_xmalloc_ptr, adjust the code.
12388         (dirnames_to_char_ptr_vec_append): Take an std::vector of
12389         gdb::unique_xmalloc_ptr, adjust the code.
12390         (dirnames_to_char_ptr_vec): Return an std::vector of
12391         gdb::unique_xmalloc_ptr, adjust the code.
12392         * auto-load.c (auto_load_safe_path_vec): Change type to
12393         std::vector of gdb::unique_xmalloc_ptr.
12394         (auto_load_expand_dir_vars): Return an std::vector of
12395         gdb::unique_xmalloc_ptr, adjust the code.
12396         (auto_load_safe_path_vec_update): Adjust.
12397         (filename_is_in_auto_load_safe_path_vec): Adjust.
12398         (auto_load_objfile_script_1): Adjust.
12399         * build-id.c (build_id_to_debug_bfd): Adjust.
12400         * linux-thread-db.c (thread_db_load_search): Adjust.
12401         * source.c (add_path): Adjust.
12402         (openp): Adjust.
12403         * symfile.c (find_separate_debug_file): Adjust.
12404         * utils.c (do_free_char_ptr_vec): Remove.
12405         (make_cleanup_free_char_ptr_vec): Remove.
12406
12407 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
12408
12409         PR gdb/22907
12410         * common/pathstuff.c: Conditionally include "<windows.h>".
12411
12412 2018-03-01  Georg Sauthoff  <mail@georg.so>
12413
12414         PR gdb/22888
12415         * gcore.in: Quote variables and switch interpreter to bash.
12416
12417 2018-03-01  Tom Tromey  <tom@tromey.com>
12418
12419         * dwarf2read.c (alloc_discriminant_info): Fix default_index
12420         assertion.  Add assertion for discriminant_index.
12421         (quirk_rust_enum): Use correct base type name in univariant case.
12422
12423 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
12424
12425         * record.c (get_call_history_modifiers): Return a
12426         record_print_flags.
12427         (cmd_record_call_history): Adjust.
12428         * record-btrace.c (record_btrace_call_history): Adjust.
12429         (record_btrace_call_history_range): Adjust.
12430         (record_btrace_call_history_from): Adjust.
12431         * target-debug.h (target_debug_print_record_print_flags): New.
12432         * target-delegates.c: Re-generate.
12433         * target.c (target_call_history): Change flags type.
12434         (target_call_history_from): Likewise.
12435         (target_call_history_range): Likewise.
12436         * target.h (struct target_ops) <target_call_history>: Likewise.
12437         (target_call_history_from): Likewise.
12438         (target_call_history_range): Likewise.
12439
12440 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
12441             Simon Marchi  <simon.marchi@polymtl.ca>
12442
12443         * common/common-utils.c: Include "sys/stat.h".
12444         (is_regular_file): Move here from "source.c"; change return
12445         type to "bool".
12446         * common/common-utils.h (is_regular_file): New prototype.
12447         * common/pathstuff.c (contains_dir_separator): New function.
12448         * common/pathstuff.h (contains_dir_separator): New prototype.
12449         * source.c: Don't include "sys/stat.h".
12450         (is_regular_file): Move to "common/common-utils.c".
12451
12452 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
12453
12454         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
12455         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
12456         * auto-load.c: Include "common/pathstuff.h".
12457         * common/common-def.h (current_directory): Move here.
12458         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
12459         function.
12460         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
12461         prototype.
12462         * common/pathstuff.c: New file.
12463         * common/pathstuff.h: New file.
12464         * compile/compile.c: Include "common/pathstuff.h".
12465         * defs.h (current_directory): Move to "common/common-defs.h".
12466         * dwarf2read.c: Include "common/pathstuff.h".
12467         * exec.c: Likewise.
12468         * guile/scm-safe-call.c: Likewise.
12469         * linux-thread-db.c: Likewise.
12470         * main.c: Likewise.
12471         * nto-tdep.c: Likewise.
12472         * objfiles.c: Likewise.
12473         * source.c: Likewise.
12474         * symtab.c: Likewise.
12475         * utils.c: Include "common/pathstuff.h".
12476         (gdb_realpath): Move to "common/pathstuff.c".
12477         (gdb_realpath_keepfile): Likewise.
12478         (gdb_abspath): Likewise.
12479         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
12480         (gdb_realpath_keepfile): Likewise.
12481         (gdb_abspath): Likewise.
12482
12483 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
12484
12485         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
12486         wildcard process pid for super_resume for kernels with a
12487         specific bug.
12488
12489 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
12490
12491         * compile/compile.c (get_args): Add additional comments
12492         explaining function.
12493
12494 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
12495             Tom Tromey  <tom@tromey.com>
12496
12497         * target.h (memory_write_request_s): Remove typedef.  Don't define
12498         VEC.
12499         (target_write_memory_blocks): Change argument to std::vector.
12500         (struct memory_write_request): Add constructor.
12501         * target-memory.c (compare_block_starting_address): Return bool.
12502         Change argument types.
12503         (claim_memory): Change arguments to use std::vector.
12504         (split_regular_and_flash_blocks, blocks_to_erase)
12505         (compute_garbled_blocks): Likewise.
12506         (cleanup_request_data, cleanup_write_requests_vector): Remove.
12507         (target_write_memory_blocks): Change argument to std::vector.
12508         * symfile.c (struct load_section_data): Add constructor and
12509         destructor.  Use std::vector for "requests".
12510         (struct load_progress_data): Add initializers.
12511         (load_section_callback): Update.  Use "new".
12512         (clear_memory_write_data): Remove.
12513         (generic_load): Update.
12514
12515 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
12516
12517         * arch/aarch64.h: Use common/tdesc.h.
12518
12519 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
12520
12521         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
12522         architecture with a 64-bit ABI.
12523
12524 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
12525
12526         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
12527         ahead of target description loading.
12528
12529 2018-02-26  Tom Tromey  <tom@tromey.com>
12530
12531         * stack.c (backtrace_command_1): Update.
12532         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
12533         of "flags".
12534         * python/py-framefilter.c (py_print_frame)
12535         (gdbpy_apply_frame_filter): Change type of "flags".
12536         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
12537         of "flags".
12538         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
12539         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
12540         * extension.h (enum frame_filter_flag): Rename from
12541         frame_filter_flags.
12542         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
12543         (apply_ext_lang_frame_filter): Change type of "flags".
12544         * extension.c (apply_ext_lang_frame_filter): Change type of
12545         "flags".
12546         * extension-priv.h (struct extension_language_ops)
12547         <apply_frame_filter>: Change type of "flags".
12548
12549 2018-02-26  Tom Tromey  <tom@tromey.com>
12550
12551         PR python/16497:
12552         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
12553         off-by-one in py_end computation.
12554         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
12555         PRINT_MORE_FRAMES.
12556         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
12557         constant.
12558
12559 2018-02-26  Tom Tromey  <tom@tromey.com>
12560
12561         * dwarf2read.c (struct variant_field): New.
12562         (struct nextfield) <variant>: New field.
12563         (dwarf2_add_field): Handle DW_TAG_variant_part.
12564         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
12565         discriminated union.
12566         (read_structure_type): Handle DW_TAG_variant_part.
12567         (handle_struct_member_die): New function, extracted from
12568         process_structure_scope.  Handle DW_TAG_variant.
12569         (process_structure_scope): Handle discriminated unions.  Call
12570         handle_struct_member_die.
12571
12572 2018-02-26  Tom Tromey  <tom@tromey.com>
12573
12574         * rust-lang.h (rust_last_path_segment): Declare.
12575         * rust-lang.c (rust_last_path_segment): Now public.  Change
12576         contract.
12577         (struct disr_info): Remove.
12578         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
12579         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
12580         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
12581         (rust_enum_p, rust_enum_variant): New function.
12582         (rust_underscore_fields): Remove "offset" parameter.
12583         (rust_print_enum): New function.
12584         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
12585         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
12586         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
12587         enums.
12588         (rust_internal_print_type): New function, from rust_print_type.
12589         Remove enum code.
12590         (rust_print_type): Call rust_internal_print_type.
12591         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
12592         Update enum handling.
12593         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
12594         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
12595         (rust_union_quirks): New functions.
12596         (process_full_comp_unit, process_full_type_unit): Call
12597         rust_union_quirks.
12598         (process_structure_scope): Update rust_unions if necessary.
12599
12600 2018-02-26  Tom Tromey  <tom@tromey.com>
12601
12602         * value.h (value_union_variant): Declare.
12603         * valops.c (value_union_variant): New function.
12604         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
12605         (struct discriminant_info): New.
12606         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
12607         enumerator.
12608         (struct main_type) <flag_discriminated_union>: New field.
12609
12610 2018-02-26  Tom Tromey  <tom@tromey.com>
12611
12612         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12613         unittests/unpack-selftests.c.
12614         * unittests/unpack-selftests.c: New file.
12615         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
12616
12617 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12618
12619         * dwarf2read.c (struct partial_die_info) <read>: New method.
12620         (read_partial_die): Remove the declaration.
12621         (load_partial_dies): Update.
12622         (partial_die_info::partial_die_info):
12623         (read_partial_die): Change it to partial_die_info::read.
12624
12625 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12626
12627         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
12628         (fixup_partial_die): Remove declaration.
12629         (scan_partial_symbols): Update.
12630         (partial_die_parent_scope): Likewise.
12631         (partial_die_full_name): Likewise.
12632         (fixup_partial_die): Change it to partial_die_info::fixup.
12633
12634 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12635
12636         * dwarf2read.c (read_partial_die): Update the declaration.
12637         (load_partial_dies): Caller update.
12638         (read_partial_die): Remove one argument abbrev_len.
12639
12640 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12641
12642         * dwarf2read.c (struct partial_die_info): Add ctor, delete
12643         assignment operator.
12644         (load_partial_dies): Use ctor and copy ctor.
12645         (read_partial_die): Update.
12646         (dwarf2_cu::find_partial_die): Use ctor.
12647
12648 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12649
12650         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
12651         (find_partial_die_in_comp_unit): Change it to
12652         dwarf2_cu::find_partial_die.
12653         (find_partial_die): Update.
12654
12655 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12656
12657         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
12658         is NULL.
12659
12660 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12661
12662         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
12663
12664 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
12665
12666         * arch/amd64.h: Use common/tdesc.h.
12667         * arch/i386.c: Likewise.
12668         * arch/i386.h: Likewise.
12669         * arch/tic6x.c: Likewise.
12670         * arch/tdesc.h: Move file from here...
12671         * common/tdesc.h: ...to here.
12672         * features/aarch64-core.c: Regenerate.
12673         * features/aarch64-fpu.c: Regenerate.
12674         * features/i386/32bit-avx.c: Regenerate.
12675         * features/i386/32bit-avx512.c: Regenerate.
12676         * features/i386/32bit-core.c: Regenerate.
12677         * features/i386/32bit-linux.c: Regenerate.
12678         * features/i386/32bit-mpx.c: Regenerate.
12679         * features/i386/32bit-pkeys.c: Regenerate.
12680         * features/i386/32bit-sse.c: Regenerate.
12681         * features/i386/64bit-avx.c: Regenerate.
12682         * features/i386/64bit-avx512.c: Regenerate.
12683         * features/i386/64bit-core.c: Regenerate.
12684         * features/i386/64bit-linux.c: Regenerate.
12685         * features/i386/64bit-mpx.c: Regenerate.
12686         * features/i386/64bit-pkeys.c: Regenerate.
12687         * features/i386/64bit-segments.c: Regenerate.
12688         * features/i386/64bit-sse.c: Regenerate.
12689         * features/i386/x32-core.c: Regenerate.
12690         * features/tic6x-c6xp.c: Regenerate.
12691         * features/tic6x-core.c: Regenerate.
12692         * features/tic6x-gp.c: Regenerate.
12693         * target-descriptions.c: Use common/tdesc.h.
12694         * target-descriptions.h: Likewise.
12695
12696 2018-02-24  Tom Tromey  <tom@tromey.com>
12697
12698         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
12699         (try_thread_db_load_from_dir, thread_db_load_search): Use
12700         std::string.
12701         (info_auto_load_libthread_db_compare): Return bool.  Change
12702         argument types.
12703         (info_auto_load_libthread_db): Use std::vector, std::string.
12704         Remove cleanups.
12705
12706 2018-02-24  Tom Tromey  <tom@tromey.com>
12707
12708         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
12709         std::string.
12710         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
12711         std::string*.
12712         * gdbarch.c: Rebuild.
12713         * gdbarch.h: Rebuild.
12714         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
12715         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
12716         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
12717         std::string*.
12718
12719 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
12720
12721         * gdbtypes.h (sect_offset): Change type to uint64_t.
12722         (sect_offset_str): New function.
12723         * dwarf2read.c (create_addrmap_from_aranges): Use
12724         sect_offset_str.
12725         (error_check_comp_unit_head): Likewise.
12726         (create_debug_type_hash_table): Likewise.
12727         (read_cutu_die_from_dwo): Likewise.
12728         (init_cutu_and_read_dies): Likewise.
12729         (init_cutu_and_read_dies_no_follow): Likewise.
12730         (process_psymtab_comp_unit_reader): Likewise.
12731         (partial_die_parent_scope): Likewise.
12732         (peek_die_abbrev): Likewise.
12733         (process_queue): Likewise.
12734         (dwarf2_physname): Likewise.
12735         (read_namespace_alias): Likewise.
12736         (read_import_statement): Likewise.
12737         (create_dwo_cu_reader): Likewise.
12738         (create_cus_hash_table): Likewise.
12739         (lookup_dwo_cutu): Likewise.
12740         (inherit_abstract_dies): Likewise.
12741         (read_func_scope): Likewise.
12742         (read_call_site_scope): Likewise.
12743         (dwarf2_add_member_fn): Likewise.
12744         (read_common_block): Likewise.
12745         (read_module_type): Likewise.
12746         (read_typedef): Likewise.
12747         (read_subrange_type): Likewise.
12748         (load_partial_dies): Likewise.
12749         (read_partial_die): Likewise.
12750         (find_partial_die): Likewise.
12751         (read_str_index): Likewise.
12752         (dwarf2_string_attr): Likewise.
12753         (build_error_marker_type): Likewise.
12754         (lookup_die_type): Likewise.
12755         (dump_die_shallow): Likewise.
12756         (follow_die_ref): Likewise.
12757         (dwarf2_fetch_die_loc_sect_off): Likewise.
12758         (dwarf2_fetch_constant_bytes): Likewise.
12759         (follow_die_sig): Likewise.
12760         (get_signatured_type): Likewise.
12761         (get_DW_AT_signature_type): Likewise.
12762         (dwarf2_find_containing_comp_unit): Likewise.
12763         (set_die_type): Likewise.
12764
12765 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
12766
12767         * arch/aarch64.c: Include "common-defs.h".
12768         * arch/amd64.c: Likewise.
12769         * arch/i386.c: Likewise.
12770
12771 2018-02-21  Tom Tromey  <tom@tromey.com>
12772
12773         * value.h: (extract_field_op): Update.
12774         * eval.c (extract_field_op): Return a const char *.
12775         * expression.h (parse_expression_for_completion): Update.
12776         * completer.c (complete_expression): Update.
12777         (add_struct_fields): Make fieldname const.
12778         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
12779         (mark_completion_tag, parse_exp_in_context_1): Update.
12780         (parse_expression_for_completion): Change "name" to
12781         unique_xmalloc_ptr*.
12782
12783 2018-02-21  Tom Tromey  <tom@tromey.com>
12784
12785         * infcall.c (call_function_by_hand_dummy): Use std::vector.
12786
12787 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12788
12789         * avr-tdep.c (avr_read_pc): Change parameter type to
12790         readable_regcache.
12791         * gdbarch.sh (read_pc): Likewise.
12792         * gdbarch.c: Re-generated.
12793         * gdbarch.h: Re-generated.
12794         * hppa-tdep.c (hppa_read_pc): Change parameter type to
12795         readable_regcache.
12796         * ia64-tdep.c (ia64_read_pc): Likewise.
12797         * mips-tdep.c (mips_read_pc): Likewise.
12798         * spu-tdep.c (spu_read_pc): Likewise.
12799
12800 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12801
12802         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
12803         * regcache-dump.c: New file.
12804         * regcache.c: Move register_dump to regcache-dump.c.
12805         (maintenance_print_registers): Likewise.
12806         (maintenance_print_raw_registers): Likewise.
12807         (maintenance_print_cooked_registers): Likewise.
12808         (maintenance_print_register_groups): Likewise.
12809         (maintenance_print_remote_registers): Likewise.
12810         (_initialize_regcache): Likewise.
12811         * regcache.h (register_dump): Moved from regcache.c.
12812
12813 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12814
12815         * regcache.c (regcache::regcache): Update.
12816         (regcache::invalidate): Move it to detached_regcache::invalidate.
12817         (get_thread_arch_aspace_regcache): Update.
12818         (regcache::raw_update): Update.
12819         (regcache::cooked_read): Remove some code.
12820         (regcache::cooked_read_value): Likewise.
12821         (regcache::raw_write): Remove assert on m_readonly_p.
12822         (regcache::raw_supply_integer): Move it to
12823         detached_regcache::raw_supply_integer.
12824         (regcache::raw_supply_zeroed): Likewise.
12825         * regcache.h (detached_regcache) <raw_supply_integer>: New
12826         declaration.
12827         <raw_supply_zeroed, invalidate>: Likewise.
12828         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
12829         <invalidate>: Likewise.
12830         <m_readonly_p>: Removed.
12831
12832 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12833
12834         * infcmd.c (get_return_value): Let stop_regs point to
12835         get_current_regcache.
12836         * regcache.c (regcache::regcache): Remove.
12837         (register_dump_reg_buffer): New class.
12838         (regcache_print): Adjust.
12839         * regcache.h (regcache): Remove constructors.
12840
12841 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12842
12843         * regcache.c (class register_dump): New class.
12844         (register_dump_regcache, register_dump_none): New class.
12845         (register_dump_remote, register_dump_groups): New class.
12846         (regcache_print): Update.
12847         * regcache.h (regcache_dump_what): Move it to regcache.c.
12848         (regcache) <dump>: Remove.
12849
12850 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12851
12852         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
12853          reg_buffer_rw *.
12854         (jit_unwind_reg_set_impl): Call raw_supply.
12855         (jit_frame_sniffer): Use reg_buffer_rw.
12856         * record-full.c (record_full_core_regbuf): Change its type.
12857         (record_full_core_open_1): Use reg_buffer_rw.
12858         (record_full_close): Likewise.
12859         (record_full_core_fetch_registers): Use regcache->raw_supply.
12860         (record_full_core_store_registers): Likewise.
12861         * regcache.c (regcache::get_register_status): Move it to
12862         reg_buffer.
12863         (regcache_raw_set_cached_value): Remove.
12864         (regcache::raw_set_cached_value): Remove.
12865         (regcache::raw_write): Call raw_supply.
12866         (regcache::raw_supply): Move it to reg_buffer_rw.
12867         * regcache.h (regcache_raw_set_cached_value): Remove.
12868         (reg_buffer_rw): New class.
12869
12870 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12871
12872         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
12873         readonly_detached_regcache.
12874         (dummy_frame_prev_register): Use regcache->cooked_read.
12875         * frame.c (frame_save_as_regcache): Change return type.
12876         (frame_pop): Update.
12877         * frame.h (frame_save_as_regcache): Update declaration.
12878         * inferior.h (get_infcall_suspend_state_regcache): Update
12879         declaration.
12880         * infrun.c (infcall_suspend_state) <registers>: use
12881         readonly_detached_regcache.
12882         (save_infcall_suspend_state): Don't use regcache_dup.
12883         (get_infcall_suspend_state_regcache): Change return type.
12884         * linux-fork.c (struct fork_info) <savedregs>: Change to
12885         readonly_detached_regcache.
12886         <pc>: New field.
12887         (fork_save_infrun_state): Don't use regcache_dup.
12888         (info_checkpoints_command): Adjust.
12889         * mi/mi-main.c (register_changed_p): Update declaration.
12890         (mi_cmd_data_list_changed_registers): Use
12891         readonly_detached_regcache.
12892         (register_changed_p): Change parameter type to
12893         readonly_detached_regcache.
12894         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
12895         readonly_detached_regcache.
12896         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
12897         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
12898         New.
12899         (regcache::save): Move it to reg_buffer.
12900         (regcache::restore): Change parameter type.
12901         (regcache_dup): Remove.
12902         * regcache.h (reg_buffer) <save>: New method.
12903         (readonly_detached_regcache): New class.
12904         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
12905         readonly_detached_regcache.
12906         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
12907
12908 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12909
12910         * frame.c (frame_save_as_regcache): Use regcache method save.
12911         (frame_pop): Use regcache method restore.
12912         * infrun.c (restore_infcall_suspend_state): Likewise.
12913         * linux-fork.c (fork_load_infrun_state): Likewise.
12914         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
12915         save.
12916         * regcache.c (regcache_save): Remove.
12917         (regcache::restore): More asserts.
12918         (regcache_cpy): Remove.
12919         * regcache.h (regcache_save): Remove the declaration.
12920         (regcache::restore): Move from private to public.
12921         Remove the friend declaration of regcache_cpy.
12922         (regcache_cpy): Remove declaration.
12923
12924 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12925
12926         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
12927         parameter type to 'readable_regcache *'.
12928         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
12929         * arm-tdep.c (arm_neon_quad_read): Likewise.
12930         (arm_pseudo_read): Likewise.
12931         * avr-tdep.c (avr_pseudo_register_read): Likewise.
12932         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
12933         * frv-tdep.c (frv_pseudo_register_read): Likewise.
12934         * gdbarch.c: Re-generated.
12935         * gdbarch.h: Re-generated.
12936         * gdbarch.sh (pseudo_register_read): Change parameter type to
12937         'readable_regcache *'.
12938         (pseudo_register_read_value): Likewise.
12939         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
12940         (h8300_pseudo_register_read): Likewise.
12941         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
12942         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
12943         (i386_pseudo_register_read_into_value): Likewise.
12944         (i386_pseudo_register_read_value): Likewise.
12945         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
12946         declaration.
12947         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
12948         * m32c-tdep.c (m32c_raw_read): Likewise.
12949         (m32c_read_flg): Likewise.
12950         (m32c_banked_register): Likewise.
12951         (m32c_banked_read): Likewise.
12952         (m32c_sb_read): Likewise.
12953         (m32c_part_read): Likewise.
12954         (m32c_cat_read): Likewise.
12955         (m32c_r3r2r1r0_read): Likewise.
12956         (m32c_pseudo_register_read): Likewise.
12957         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
12958         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
12959         (mep_pseudo_cr64_read): Likewise.
12960         (mep_pseudo_register_read): Likewise.
12961         * mips-tdep.c (mips_pseudo_register_read): Likewise.
12962         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
12963         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
12964         * regcache.c (regcache::raw_read): Move it to readable_regcache.
12965         (regcache::cooked_read): Likewise.
12966         (regcache::cooked_read_value): Likewise.
12967         (regcache_cooked_read_signed):
12968         (regcache::cooked_read): Likewise.
12969         * regcache.h (readable_regcache): New class.
12970         (regcache): Inherit readable_regcache.  Move some methods to
12971         readable_regcache.
12972         * rl78-tdep.c (rl78_pseudo_register_read): Change
12973         parameter type to 'readable_regcache *'.
12974         * rs6000-tdep.c (do_regcache_raw_read): Remove.
12975         (e500_pseudo_register_read): Change parameter type to
12976         'readable_regcache *'.
12977         (dfp_pseudo_register_read): Likewise.
12978         (vsx_pseudo_register_read): Likewise.
12979         (efpr_pseudo_register_read): Likewise.
12980         * s390-tdep.c (s390_pseudo_register_read): Likewise.
12981         * sh-tdep.c (sh_pseudo_register_read): Likewise.
12982         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
12983         (sh64_pseudo_register_read): Likewise.
12984         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
12985         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
12986         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
12987         (spu_pseudo_register_read): Likewise.
12988         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
12989         (xtensa_pseudo_register_read): Likewise.
12990
12991 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12992
12993         * regcache.c (regcache::regcache): Call reg_buffer ctor.
12994         (regcache::arch): Move it to reg_buffer::arch.
12995         (regcache::register_buffer): Likewise.
12996         (regcache::assert_regnum): Likewise.
12997         (regcache::num_raw_registers): Likewise.
12998         * regcache.h (reg_buffer): New class.
12999         (regcache): Inherit reg_buffer.
13000
13001 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
13002
13003         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
13004         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
13005
13006 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
13007
13008         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
13009
13010 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
13011
13012         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
13013         (SFILES): Remove common/*.c files.
13014         (COMMON_OBS): Remove some *.o files built from common/*.c files.
13015         * common/common.host: Add common reference.
13016         * configure.ac: Likewise.
13017         * configure: Regenerate.
13018
13019 2018-02-16  Yao Qi  <yao.qi@linaro.org>
13020
13021         * block.c (block_namespace_info): Inherit allocate_on_obstack.
13022         (block_initialize_namespace): Use new.
13023         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
13024         (dwarf2_free_objfile): Use delete.
13025         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
13026         (copy_type_recursive): Use new.
13027         * gdb_obstack.h (allocate_on_obstack): New.
13028
13029 2018-02-15  Yao Qi  <yao.qi@linaro.org>
13030
13031         PR gdb/22849
13032         * inferior.c (exit_inferior_1): Reset inf->control.
13033
13034 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
13035
13036         * ada-lang.c (ada_to_fixed_value_create): Delete advance
13037         declaration.
13038
13039 2018-02-14  Pedro Alves  <palves@redhat.com>
13040
13041         * frame-unwind.c (frame_unwind_try_unwinder): Always call
13042         frame_cleanup_after_sniffer on exception.
13043
13044 2018-02-14  Tom Tromey  <tom@tromey.com>
13045
13046         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
13047         const.
13048         (solib_bfd_open): Make pathname const.
13049         * solib.c (solib_bfd_open): Make pathname const.
13050         * solib-spu.c (spu_bfd_fopen): Make name const.
13051         (spu_bfd_open): Make pathname const.
13052         * solib-darwin.c (darwin_bfd_open): Make pathname const.
13053         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
13054
13055 2018-02-14  Tom Tromey  <tom@tromey.com>
13056
13057         * symfile.c (symfile_bfd_open): Update.
13058         * source.h (openp, source_full_path_of, find_and_open_source):
13059         Change argument type to unique_xmalloc_ptr.
13060         * source.c (openp): Take a unique_xmalloc_ptr.
13061         (source_full_path_of, find_and_open_source): Likewise.
13062         (open_source_file, symtab_to_fullname): Update.
13063         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
13064         unique_xmalloc_ptr.
13065         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
13066         (exec_file_find): Update.
13067         * psymtab.c (psymtab_to_fullname): Update.
13068         * nto-tdep.h (nto_find_and_open_solib): Update.
13069         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
13070         unique_xmalloc_ptr.
13071         * exec.c (exec_file_attach): Update.
13072         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
13073         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
13074
13075 2018-02-14  Tom Tromey  <tom@tromey.com>
13076
13077         * solib.c: Include source.h.
13078         * nto-tdep.c: Include source.h.
13079         * mi/mi-cmd-env.c: Include source.h.
13080         * infcmd.c: Include source.h.
13081         * exec.c: Include source.h.
13082         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
13083         (add_path, directory_switch, source_path, init_source_path): Move
13084         declarations...
13085         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
13086         (add_path, directory_switch, source_path, init_source_path):
13087         ...here.
13088
13089 2018-02-14  Tom Tromey  <tom@tromey.com>
13090
13091         * solist.h (exec_file_find, solib_find): Return
13092         unique_xmalloc_ptr.
13093         (solib_bfd_fopen): Take a const char *.
13094         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
13095         (exec_file_find, solib_find): Likewise.
13096         (solib_bfd_fopen): Do not take ownership of "pathname".
13097         (solib_bfd_open): Use unique_xmalloc_ptr.
13098         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
13099         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
13100         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
13101         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
13102
13103 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
13104
13105         * ada-lang.c (name_match_type_from_name): Remove reference to
13106         ada_name_for_lookup in function's documentation.
13107         * ada-lang.h (ada_name_for_lookup): Delete declaration.
13108
13109 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
13110
13111         * defs.h (enum openp_flags): New enum.
13112         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
13113         Move to enum openp_flags.
13114         (openp_flags): New enum flags.
13115         (openp): Change parameter type to openp_flags.
13116         * source.c (openp): Change parameter type to openp_flags.
13117         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
13118         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
13119
13120 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
13121
13122         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
13123         per-command.
13124
13125 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
13126
13127         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
13128         into...
13129         (class dwarf2_queue_guard): ...the destructor of this new class.
13130         (dw2_do_instantiate_symtab): Create instance of the new class
13131         dwarf2_queue_guard, remove cleanup.
13132
13133 2018-02-09  Tom Tromey  <tom@tromey.com>
13134
13135         * source.c (find_source_lines): Don't reference past the end of
13136         the vector.
13137
13138 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13139
13140         * remote.c (remote_btrace_maybe_reopen): Change error message.
13141         * btrace.c (btrace_enable): Likewise.
13142         (parse_xml_btrace): Likewise.
13143         (parse_xml_btrace_conf): Likewise.
13144
13145 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13146
13147         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
13148         (linux_enable_pt, linux_enable_bts): Call
13149         diagnose_perf_event_open_fail.
13150
13151 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13152
13153         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
13154         Remove parameter and change return type.  Update callers.  Move it.
13155         (linux_enable_bts, linux_enable_pt): Improve error message.
13156         (linux_enable_pt): Remove zero buffer size check.
13157         (linux_enable_btrace): Improve error messages.  Remove NULL return
13158         check.
13159
13160 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13161
13162         * btrace.c (btrace_enable): Remove target_supports_btrace call.
13163         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
13164         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
13165         (linux_supports_pt, linux_supports_btrace): Remove.
13166         (linux_enable_bts): Call cpu_supports_bts.
13167         * nat/linux-btrace.h (linux_supports_btrace): Remove.
13168         * remote.c (remote_supports_btrace): Remove.
13169         (init_remote_ops): Remove remote_supports_btrace.
13170         * target-delegates.c: Regenerated.
13171         * target.c (target_supports_btrace): Remove.
13172         * target.h (target_ops) <to_supports_btrace>: Remove
13173         (target_supports_btrace): Remove.
13174         * x86-linux-nat.c (x86_linux_create_target): Remove
13175         linux_supports_btrace.
13176
13177 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13178
13179         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
13180         btrace failed.
13181         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
13182         exception and use message in own exception.
13183
13184 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13185
13186         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
13187         (perf_event_pt_event_type): Use gdb_file_up.
13188         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
13189         scoped_fd, and scoped_mmap.
13190
13191 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13192
13193         * common/scoped_mmap.h: New.
13194         * unittests/scoped_mmap-selftest.c: New.
13195         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13196         unittests/scoped_mmap-selftest.c.
13197
13198 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13199
13200         * common/scoped_fd.h: New.
13201         * unittests/scoped_fd-selftest.c: New.
13202         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13203         unittests/scoped_fd-selftest.c.
13204
13205 2018-02-09  Tom Tromey  <tom@tromey.com>
13206
13207         * auto-load.c (auto_load_section_scripts): Use
13208         gdb::unique_xmalloc_ptr.
13209
13210 2018-02-09  Tom Tromey  <tom@tromey.com>
13211
13212         * auto-load.c (execute_script_contents): Use std::string.
13213
13214 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
13215
13216         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
13217         Python function, rather than a new command.
13218
13219 2018-02-08  Tom Tromey  <tom@tromey.com>
13220
13221         * solib.c (solib_find_1): Use std::string.
13222         (solib_bfd_fopen): Use unique_xmalloc_ptr.
13223
13224 2018-02-08  Tom Tromey  <tom@tromey.com>
13225
13226         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
13227
13228 2018-02-08  Tom Tromey  <tom@tromey.com>
13229
13230         * source.c (find_source_lines): Use gdb::def_vector.
13231
13232 2018-02-08  Tom Tromey  <tom@tromey.com>
13233
13234         * macrocmd.c (struct temporary_macro_definition): New.
13235         (macro_define_command): Use temporary_macro_definition.  Remove
13236         cleanups.
13237         (free_macro_definition_ptr): Remove.
13238
13239 2018-02-08  Tom Tromey  <tom@tromey.com>
13240
13241         * macroexp.c (maybe_expand): Use std::string.
13242
13243 2018-02-08  Tom Tromey  <tom@tromey.com>
13244
13245         * macroexp.c (struct macro_buffer): Add initializers for some
13246         members.
13247         (init_buffer, init_shared_buffer, free_buffer)
13248         (free_buffer_return_text): Remove.
13249         (macro_buffer): New constructors.
13250         (~macro_buffer): New destructor.
13251         (macro_buffer::set_shared): New method.
13252         (macro_buffer::resize_buffer, macro_buffer::appendc)
13253         (macro_buffer::appendmem): Now methods, not free functions.
13254         (set_token, append_tokens_without_splicing, stringify)
13255         (macro_stringify): Update.
13256         (gather_arguments): Change return type.  Remove argc_p argument,
13257         add args_ptr argument.  Use std::vector.
13258         (substitute_args): Remove argc argument.  Accept std::vector.
13259         (expand): Update.  Use std::vector.
13260         (scan, macro_expand, macro_expand_next): Update.
13261
13262 2018-02-08  Tom Tromey  <tom@tromey.com>
13263
13264         * symtab.c (default_collect_symbol_completion_matches_break_on):
13265         Use unique_xmalloc_ptr.
13266         * macroscope.h: (sal_macro_scope, user_macro_scope)
13267         (default_macro_scope): Return unique_xmalloc_ptr.
13268         * macroscope.c (sal_macro_scope, user_macro_scope)
13269         (default_macro_scope): Return unique_xmalloc_ptr.
13270         * macroexp.h (macro_expand, macro_expand_once): Return
13271         unique_xmalloc_ptr.
13272         * macroexp.c (macro_expand, macro_expand_once): Return
13273         unique_xmalloc_ptr.
13274         * macrocmd.c (macro_expand_command, macro_expand_once_command)
13275         (info_macro_command, info_macros_command): Use
13276         unique_xmalloc_ptr.
13277         * compile/compile-c-support.c (write_macro_definitions): Use
13278         unique_xmalloc_ptr.
13279         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
13280
13281 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
13282
13283         * value.c (value_static_field): Assign field type instead of
13284         containing type when returning an optimized out value.
13285
13286 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13287
13288         * ft32-tdep.c (ft32_read_pc): Remove.
13289         (ft32_write_pc): Remove.
13290         (ft32_gdbarch_init): Update.
13291         * m32r-tdep.c (m32r_read_pc): Remove.
13292         (m32r_gdbarch_init): Update.
13293         * mep-tdep.c (mep_read_pc): Remove.
13294         (mep_gdbarch_init): Update.
13295         * microblaze-tdep.c (microblaze_write_pc): Remove.
13296         (microblaze_gdbarch_init): Update.
13297         * mn10300-tdep.c (mn10300_read_pc): Remove.
13298         (mn10300_write_pc): Remove.
13299         (mn10300_gdbarch_init): Update.
13300         * moxie-tdep.c (moxie_read_pc): Remove.
13301         (moxie_write_pc): Remove.
13302         (moxie_gdbarch_init): Update.
13303
13304 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13305
13306         * expprint.c (print_subexp_standard): Handle
13307         OP_F77_UNDETERMINED_ARGLIST.
13308         (dump_subexp_body_standard): Likewise.
13309
13310 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
13311
13312         * target-descriptions.c (tdesc_element_visitor) Add empty
13313         implementations.
13314         (tdesc_type): Move make_gdb_type from here.
13315         (tdesc_type_builtin): Likewise.
13316         (tdesc_type_vector): Likewise.
13317         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
13318         (make_gdb_type_struct): Move from tdesc_type_with_fields.
13319         (make_gdb_type_union): Likewise.
13320         (make_gdb_type_flags): Likewise.
13321         (make_gdb_type_enum): Likewise.
13322         (make_gdb_type): New function.
13323         (tdesc_register_type): Use static make_gdb_type.
13324
13325 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
13326
13327         * infcmd.c (default_print_one_register_info): Align natural-format
13328         column values consistently one under another.
13329         (pad_to_column): New function.
13330
13331 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
13332
13333         * dwarf2read.c (dwarf2_physname): Move commment.
13334
13335 2018-02-01  Leszek Swirski  <leszeks@google.com>
13336
13337         * varobj.c (varobj_formatted_print_options): Allow recursive
13338         pretty printing if pretty printing is enabled.
13339
13340 2018-02-01  Leszek Swirski  <leszeks@google.com>
13341
13342         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
13343         names after a structop as a filename.
13344
13345 2018-02-01  Yao Qi  <yao.qi@linaro.org>
13346
13347         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
13348         (arm_record_coproc_data_proc): Likewise.
13349
13350 2018-02-01  Yao Qi  <yao.qi@linaro.org>
13351
13352         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
13353
13354 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
13355
13356         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
13357         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
13358
13359 2018-01-31  Pedro Alves  <palves@redhat.com>
13360
13361         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
13362         * inflow.c (child_terminal_save_inferior): Wrap reference to
13363         tcgetpgrp in HAVE_TERMIOS_H.
13364         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
13365         _WIN32.
13366         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
13367         always iterate over all inferiors.
13368         (gdbsim_cntrl_c): Adjust.
13369         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
13370
13371 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13372
13373         * gdbtypes.c (lookup_array_range_type): Make sure the array's
13374         index type is objfile-owned if the element type is as well.
13375
13376 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13377
13378         GDB 8.1 released.
13379
13380 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13381
13382         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
13383         "features/s390x-linux64.c".
13384         (_initialize_s390_linux_tdep): Remove initialization of tdescs
13385         s390_linux32 and s390x_linux64.
13386         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
13387         default tdesc.
13388         * s390-tdep.c: Include "features/s390-linux32.c" and
13389         "features/s390x-linux64.c".
13390         (s390_tdesc_valid): Add check for tdesc_has_registers.
13391         (s390_gdbarch_init): Make sure there is always a valid tdesc.
13392         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
13393         tdesc_s390x_linux64.
13394         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
13395         tdesc_s390x_linux64 to...
13396         * s390-tdep.h: ...here.
13397
13398 2018-01-30  Pedro Alves  <palves@redhat.com>
13399
13400         PR gdb/13211
13401         * config.in, configure: Regenerate.
13402         * configure.ac: Check for getpgid.
13403         * go32-nat.c (go32_pass_ctrlc): New.
13404         (go32_target): Install it.
13405         * inf-child.c (inf_child_target): Install
13406         child_terminal_save_inferior, child_pass_ctrlc and
13407         child_interrupt.
13408         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
13409         (inf_ptrace_target): No longer install it.
13410         * infcmd.c (interrupt_target_1): Adjust.
13411         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
13412         (child_interrupt): Declare.
13413         (inferior::terminal_state): New.
13414         * inflow.c (struct terminal_info): Update comments.
13415         (inferior_process_group): Delete.
13416         (terminal_is_ours): Delete.
13417         (gdb_tty_state): New.
13418         (child_terminal_init): Adjust.
13419         (is_gdb_terminal, sharing_input_terminal_1)
13420         (sharing_input_terminal): New functions.
13421         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
13422         Set the process's actual process group in the foreground if
13423         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
13424         mark terminal as the inferior's if not sharing GDB's terminal.
13425         Don't check attach_flag.
13426         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
13427         pass down a target_terminal_state.
13428         (child_terminal_save_inferior): New, factored out from ...
13429         (child_terminal_ours_1): ... this.  Handle
13430         target_terminal_state::is_ours_for_output.
13431         (child_interrupt, child_pass_ctrlc): New.
13432         (inflow_inferior_exit): Clear the inferior's terminal_state.
13433         (copy_terminal_info): Copy the inferior's terminal state.
13434         (_initialize_inflow): Remove reference to terminal_is_ours.
13435         * inflow.h (inferior_process_group): Delete.
13436         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
13437         * procfs.c (procfs_target): Don't install procfs_interrupt.
13438         (procfs_interrupt): Delete.
13439         * remote.c (remote_serial_quit_handler): Adjust.
13440         (remote_interrupt): Remove ptid parameter.  Adjust.
13441         * target-delegates.c: Regenerate.
13442         * target.c: Include "terminal.h".
13443         (target_terminal::terminal_state): Rename to ...
13444         (target_terminal::m_terminal_state): ... this.
13445         (target_terminal::init): Adjust.
13446         (target_terminal::inferior): Adjust to per-inferior
13447         terminal_state.
13448         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
13449         (target_terminal::ours, target_terminal::ours_for_output): Use
13450         target_terminal_is_ours_kind.
13451         (target_interrupt): Remove ptid parameter.  Adjust.
13452         (default_target_pass_ctrlc): Adjust.
13453         * target.h (target_ops::to_terminal_save_inferior): New field.
13454         (target_ops::to_interrupt): Remove ptid_t parameter.
13455         (target_interrupt): Remove ptid_t parameter.  Update comment.
13456         (target_pass_ctrlc): Update comment.
13457         * target/target.h (target_terminal_state): New scoped enum,
13458         factored out of ...
13459         (target_terminal::terminal_state): ... here.
13460         (target_terminal::inferior): Update comments.
13461         (target_terminal::restore_inferior): New.
13462         (target_terminal::is_inferior, target_terminal::is_ours)
13463         (target_terminal::is_ours_for_output): Adjust.
13464         (target_terminal::scoped_restore_terminal_state): Adjust to
13465         rename, and call restore_inferior() instead of inferior().
13466         (target_terminal::scoped_restore_terminal_state::m_state): Change
13467         type.
13468         (target_terminal::terminal_state): Rename to ...
13469         (target_terminal::m_terminal_state): ... this and change type.
13470
13471 2018-01-30  Pedro Alves  <palves@redhat.com>
13472
13473         * linux-nat.c (wait_for_signal): New function.
13474         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
13475         directly.
13476         (async_terminal_is_ours)
13477         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
13478         (linux_nat_add_target): Don't override
13479         to_terminal_inferior/to_terminal_ours.
13480
13481 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
13482
13483         * remote.c (remote_follow_fork): Don't call "detach_inferior".
13484
13485 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
13486
13487         * dwarf2read.c (free_dwo_files): Add forward-declaration.
13488         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
13489         dwarf2_per_objfile_free here.
13490         (dwarf2_per_objfile_free): Remove.
13491         (_initialize_dwarf2_read): Don't register
13492         dwarf2_per_objfile_free as a registry cleanup.
13493
13494 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
13495
13496         Avoid compilation errors in MinGW native builds
13497
13498         The error is triggered by including python-internal.h, and the
13499         error message is:
13500
13501              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
13502                       from build-gnulib/import/math.h:27,
13503                       from d:/usr/Python26/include/pyport.h:235,
13504                       from d:/usr/Python26/include/Python.h:58,
13505                       from python/python-internal.h:94,
13506                       from python/py-arch.c:24:
13507              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
13508         using ::hypot;
13509                 ^~~~~
13510
13511         This happens because Python headers define 'hypot' to expand t
13512         '_hypot' in the Windows builds.
13513         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
13514         'hypoth'.  This avoids a compilation error.
13515
13516 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
13517
13518         * MAINTAINERS (Write After Approval): Fix ordering.
13519
13520 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
13521
13522         * MAINTAINERS (Write After Approval): Add Alan Hayward.
13523
13524 2018-01-26  Alan Modra  <amodra@gmail.com>
13525
13526         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
13527         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
13528         Remove nop.  Make const.  Comment.
13529         (powerpc32_plt_stub_so_2): New.
13530         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
13531         Correct count.  Update uses.
13532         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
13533         Move common code reading PLT entry word.  Correct
13534         powerpc32_plt_stub PLT address calculation.
13535         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
13536         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
13537         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
13538         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
13539         (ppc64_standard_linkage8): Likewise.
13540         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
13541         Correct insns description.
13542         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
13543
13544 2018-01-24  Pedro Alves  <palves@redhat.com>
13545
13546         GCC PR libstdc++/83906
13547         * gdbtypes.c (operator==(const dynamic_prop &,
13548         const dynamic_prop &)): New.
13549         (operator==(const range_bounds &, const range_bounds &)): New.
13550         (check_types_equal): Use them instead of memcmp.
13551         * gdbtypes.h (operator==(const dynamic_prop &,
13552         const dynamic_prop &)): Declare.
13553         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
13554         (operator==(const range_bounds &, const range_bounds &)): Declare.
13555         (operator!=(const range_bounds &, const range_bounds &)): Declare.
13556
13557 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13558
13559         * s390-linux-tdep.c (s390_record_address_mask)
13560         (s390_record_calc_disp_common, s390_record_calc_disp)
13561         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
13562         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
13563         (s390_process_record): Move to s390-tdep.c.
13564         (s390_linux_init_abi_any): Adjust.
13565         * s390-tdep.c (s390_record_address_mask)
13566         (s390_record_calc_disp_common, s390_record_calc_disp)
13567         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
13568         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
13569         (s390_process_record): Moved from s390-linux-tdep.c
13570         (s390_gdbarch_init): Adjust.
13571
13572 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13573
13574         * s390-linux-nat.c (s390-tdep.h): New include.
13575         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
13576         (HFILES_NO_SRCDIR): Add s390-tdep.h.
13577         (ALLDEPFILES): Add s390-tdep.c.
13578         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
13579         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
13580         * s390-tdep.h: ...this.  New file.
13581         * s390-linux-tdep.c (s390-tdep.h): New include.
13582         (_initialize_s390_tdep): Rename to...
13583         (_initialize_s390_linux_tdep): ...this and adjust.
13584         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
13585         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
13586         s390-tdep.h.
13587         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
13588         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
13589         (s390_is_partial_instruction, s390_software_single_step)
13590         (is_non_branch_ril, s390_displaced_step_copy_insn)
13591         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
13592         (s390_prologue_data, s390_addr, s390_store, s390_load)
13593         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
13594         (s390_register_call_saved, s390_guess_tracepoint_registers)
13595         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
13596         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
13597         (s390_pseudo_register_name, s390_pseudo_register_type)
13598         (s390_pseudo_register_read, s390_pseudo_register_write)
13599         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
13600         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
13601         (s390_addr_bits_remove, s390_address_class_type_flags)
13602         (s390_address_class_type_flags_to_name)
13603         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
13604         (s390_function_arg_float, s390_function_arg_vector)
13605         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
13606         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
13607         (s390_frame_align, s390_register_return_value, s390_return_value)
13608         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
13609         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
13610         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
13611         (s390_trad_frame_prev_register, s390_unwind_cache)
13612         (s390_prologue_frame_unwind_cache)
13613         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
13614         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
13615         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
13616         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
13617         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
13618         (s390_frame_base_address, s390_local_base_address)
13619         (s390_frame_base, s390_gcc_target_options)
13620         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
13621         (s390_validate_reg_range, s390_tdesc_valid)
13622         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
13623         * s390-tdep.c: ...this.  New file.
13624
13625 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13626
13627         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
13628         (s390_process_record, s390_gdbarch_tdep_alloc)
13629         (s390_linux_init_abi_any): Use/set new hook.
13630
13631 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13632
13633         * s390-linux-tdep.c (osabi.h): New include.
13634         (s390_linux_init_abi_31, s390_linux_init_abi_64)
13635         (s390_linux_init_abi_any): New functions.
13636         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
13637
13638 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13639
13640         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
13641         tdesc_has_registers check
13642
13643 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13644
13645         * s390-linux-tdep.c (s390_tdesc_valid): New function.
13646         (s390_validate_reg_range): New macro.
13647         (s390_gdbarch_init): Adjust.
13648
13649 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13650
13651         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
13652         (s390_gdbarch_tdep_alloc): Adjust.
13653         (s390_gdbarch_init): Adjust.
13654
13655 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13656
13657         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
13658         <have_tdb>: Change type to bool.
13659         (s390_gdbarch_tdep_alloc): Adjust.
13660         (s390_gdbarch_init): Adjust.
13661
13662 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13663
13664         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
13665         (gdbarch_tdep) <have_upper, have_vx>: New fields.
13666         (s390_gdbarch_tdep_alloc): New function.
13667         (s390_gdbarch_init): Allocate tdep at start and use its fields
13668         instead of separate variables.
13669
13670 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13671
13672         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
13673         when looking for cached gdbarch and add comment for remaining.
13674
13675 2018-01-22  Pedro Alves  <palves@redhat.com>
13676             Sergio Durigan Junior  <sergiodj@redhat.com>
13677
13678         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
13679         case.
13680
13681 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
13682
13683         * MAINTAINERS: Update my company e-mail address.
13684
13685 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13686
13687         * regcache.c (cooked_write_test): New function.
13688         (_initialize_regcache): Register the test.
13689
13690 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13691
13692         * ia64-tdep.c (ia64_pseudo_register_read): Call
13693         regcache->cooked_read instead of regcache_cooked_read_unsigned.
13694         * m32c-tdep.c (m32c_cat_read): Likewise.
13695         (m32c_r3r2r1r0_read): Likewise.
13696         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
13697         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
13698
13699 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13700
13701         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
13702         method raw_read instead of regcache_raw_read.
13703         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
13704         * arm-tdep.c (arm_neon_quad_read): Likewise.
13705         * avr-tdep.c (avr_pseudo_register_read): Likewise.
13706         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
13707         * frv-tdep.c (frv_pseudo_register_read): Likewise.
13708         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
13709         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
13710         (i386_pseudo_register_read_into_value): Likewise.
13711         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
13712         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
13713         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
13714         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
13715         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
13716         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
13717         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
13718         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
13719         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
13720
13721 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13722
13723         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
13724         * configure.tgt: Remove target mt.
13725         * mt-tdep.c: Remove.
13726         * regcache.c (cooked_read_test): Remove the check for mt.
13727
13728 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13729
13730         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
13731         instead of gdbarch_pseudo_register_read_value.
13732
13733 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
13734
13735         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
13736         language is Ada.
13737
13738 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
13739
13740         * linespec.c (create_sals_line_offset): Remove code that preserved
13741         the symtab_and_line's line number.
13742
13743 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13744
13745         * varobj.c (varobj_create): Don't set valid_block when creating a
13746         floating varobj.
13747
13748 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13749
13750         * varobj.c (varobj_create): Remove out of date comment.
13751
13752 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13753
13754         PR mi/20395
13755         * ada-exp.y (write_var_from_sym): Pass extra parameter when
13756         updating innermost block.
13757         * parse.c (innermost_block_tracker::update): Take extra type
13758         parameter, and check types match before updating innermost block.
13759         (write_dollar_variable): Update innermost block for registers.
13760         * parser-defs.h (enum innermost_block_tracker_type): New enum.
13761         (innermost_block_tracker::innermost_block_tracker): Initialise
13762         m_types member.
13763         (innermost_block_tracker::reset): Take type parameter.
13764         (innermost_block_tracker::update): Take type parameter, and pass
13765         type through as needed.
13766         (innermost_block_tracker::m_types): New member.
13767         * varobj.c (varobj_create): Pass type when reseting innermost
13768         block.
13769
13770 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13771
13772         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
13773         * ada-lang.c (resolve_subexp): Likewise.
13774         * breakpoint.c (set_breakpoint_condition) Likewise.
13775         (watch_command_1) Likewise.
13776         * c-exp.y (variable): Likewise.
13777         * d-exp.y (PrimaryExpression): Likewise.
13778         * f-exp.y (variable): Likewise.
13779         * go-exp.y (variable): Likewise.
13780         * m2-exp.y (variable): Likewise.
13781         * objfiles.c (objfile::~objfile): Likewise.
13782         * p-exp.y (variable): Likewise.
13783         * parse.c (innermost_block): Change type.
13784         * parser-defs.h (class innermost_block_tracker): New.
13785         (innermost_block): Change to innermost_block_tracker.
13786         * printcmd.c (display_command): Switch to innermost_block API.
13787         (do_one_display): Likewise.
13788         * rust-exp.y (do_one_display): Likewise.
13789         * symfile.c (clear_symtab_users): Likewise.
13790         * varobj.c (varobj_create): Switch to innermost_block API, replace
13791         use of innermost_block with block stored on varobj object.
13792
13793 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13794
13795         * expression.h (innermost_block): Remove declaration.
13796         * varobj.c: Add 'parser-defs.h' include.
13797
13798 2018-01-19  Tom Tromey  <tom@tromey.com>
13799
13800         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
13801         symbols in the static and global blocks.
13802
13803 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
13804
13805         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
13806         gdb_ptrace.h, and move including gdb_wait.h ...
13807         * nat/linux-ptrace.h: ... to here.
13808
13809 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13810
13811         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
13812         inf_ptrace_detach_success.
13813         (inf_ptrace_detach_success): Add inferior parameter, use it
13814         instead of inferior_ptid, pass it to detach_inferior.
13815         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
13816         parameter.
13817         * inferior.c (detach_inferior): Add overload that takes an
13818         inferior object.
13819         * inferior.h (detach_inferior): Likewise.
13820         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
13821         use inferior_ptid, adjust call to inf_ptrace_detach_success.
13822         * linux-thread-db.c (thread_db_detach): Use inf parameter.
13823
13824 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13825
13826         * target.h (struct target_ops) <to_detach>: Add inferior
13827         parameter.
13828         (target_detach): Likewise.
13829         * target.c (dispose_inferior): Pass inferior down.
13830         (target_detach): Pass inferior down.  Assert that it is equal to
13831         the current inferior.
13832         * aix-thread.c (aix_thread_detach): Pass inferior down.
13833         * corefile.c (core_file_command): Pass current_inferior() down.
13834         * corelow.c (core_detach): Add inferior parameter.
13835         * darwin-nat.c (darwin_detach): Likewise.
13836         * gnu-nat.c (gnu_detach): Likewise.
13837         * inf-ptrace.c (inf_ptrace_detach): Likewise.
13838         * infcmd.c (detach_command): Pass current_inferior() down to
13839         target_detach.
13840         * infrun.c (follow_fork_inferior): Pass parent_inf to
13841         target_detach.
13842         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
13843         target_detach.
13844         * linux-nat.c (linux_nat_detach): Add inferior parameter.
13845         * linux-thread-db.c (thread_db_detach): Likewise.
13846         * nto-procfs.c (procfs_detach): Likewise.
13847         * procfs.c (procfs_detach): Likewise.
13848         * record.c (record_detach): Likewise.
13849         * record.h (struct inferior): Forward-declare.
13850         (record_detach): Add inferior parameter.
13851         * remote-sim.c (gdbsim_detach): Likewise.
13852         * remote.c (remote_detach_1): Likewise.
13853         (remote_detach): Likewise.
13854         (extended_remote_detach): Likewise.
13855         * sol-thread.c (sol_thread_detach): Likewise.
13856         * target-debug.h (target_debug_print_inferior_p): New macro.
13857         * target-delegates.c: Re-generate.
13858         * top.c (kill_or_detach): Pass inferior down to target_detach.
13859         * windows-nat.c (windows_detach): Add inferior parameter.
13860
13861 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13862
13863         * target.h (struct target_ops) <to_detach>: Remove args
13864         parameter.
13865         (target_detach): Likewise.
13866         * target.c (dispose_inferior): Adjust.
13867         (target_detach): Remove args parameter, adjust.
13868         * aix-thread.c (aix_thread_detach): Adjust.
13869         * corefile.c (core_file_command): Adjust.
13870         * corelow.c (core_detach): Adjust.
13871         * darwin-nat.c (darwin_detach): Adjust.
13872         * gnu-nat.c (gnu_detach): Adjust.
13873         * inf-ptrace.c (inf_ptrace_detach): Adjust.
13874         * infcmd.c (detach_command): Adjust
13875         * infrun.c (follow_fork_inferior): Adjust.
13876         (handle_vfork_child_exec_or_exit): Adjust.
13877         * linux-fork.c (linux_fork_detach): Remove args parameter.
13878         * linux-fork.h (linux_fork_detach): Likewise.
13879         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
13880         * linux-thread-db.c (thread_db_detach): Likewise.
13881         * nto-procfs.c (procfs_detach): Likewise.
13882         * procfs.c (procfs_detach): Likewise.
13883         (do_detach): Remove signo parameter.
13884         * record.c (record_detach): Remove args parameter.
13885         * record.h (record_detach): Likewise.
13886         * remote-sim.c (gdbsim_detach): Likewise.
13887         * remote.c (remote_detach_1): Likewise.
13888         (remote_detach): Likewise.
13889         (extended_remote_detach): Likewise.
13890         * sol-thread.c (sol_thread_detach): Likewise.
13891         * target-delegates.c: Re-generate.
13892         * top.c (struct qt_args) <args>: Remove field.
13893         (kill_or_detach): Don't pass args.
13894         (quit_force): Don't set args.
13895         * windows-nat.c (windows_detach): Remove args parameter.
13896
13897 2018-01-19  Yao Qi  <yao.qi@linaro.org>
13898
13899         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
13900         (arm_linux_init_abi): Install it.
13901
13902 2018-01-19  Yao Qi  <yao.qi@linaro.org>
13903
13904         * osabi.c (gdb_osabi_names): Extend the regexp for
13905         arm-linux-gnueabihf.
13906
13907 2018-01-18  Yao Qi  <yao.qi@linaro.org>
13908
13909         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
13910         m_abbrevs.
13911         (abbrev_table::add_abbrev): Update.
13912         (abbrev_table::lookup_abbrev): Update.
13913
13914 2018-01-18  Yao Qi  <yao.qi@linaro.org>
13915
13916         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
13917
13918 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
13919
13920         * compile/compile.c (compile_to_object): Convert "triplet_rx"
13921         to "std::string".
13922
13923 2018-01-17  Tom Tromey  <tom@tromey.com>
13924
13925         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
13926
13927 2018-01-17  Tom Tromey  <tom@tromey.com>
13928
13929         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
13930         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
13931         (create_array_type_with_stride): Update.
13932         * dwarf2read.c (set_die_type): Update.
13933
13934 2018-01-17  Tom Tromey  <tom@tromey.com>
13935
13936         * dwarf2read.c (delayed_method_info): Remove typedef.
13937         (dwarf2_cu::method_info): Now a std::vector.
13938         (add_to_method_list): Update.
13939         (free_delayed_list): Remove.
13940         (compute_delayed_physnames): Update.
13941         (process_full_comp_unit, process_full_type_unit): Clear the method
13942         list.  Remove cleanups.
13943         (psymtab_include_file_name): Add name_holder parameter.  Use
13944         unique_xmalloc_ptr.
13945         (dwarf_decode_lines): Update.
13946
13947 2018-01-17  Tom Tromey  <tom@tromey.com>
13948             Simon Marchi  <simon.marchi@ericsson.com>
13949
13950         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
13951         (dwarf2_per_objfile::free_cached_comp_units)
13952         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
13953         (init_cutu_and_read_dies_no_follow): Update.
13954         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
13955         (dwarf2_cu::~dwarf2_cu): New.
13956         (free_heap_comp_unit, free_stack_comp_unit): Remove.
13957         (age_cached_comp_units, free_one_cached_comp_unit): Update.
13958
13959 2018-01-17  Tom Tromey  <tom@tromey.com>
13960             Simon Marchi  <simon.marchi@ericsson.com>
13961
13962         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
13963         (struct die_reader_specs) <abbrev_table>: New member.
13964         (struct abbrev_table): Add constructor.
13965         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
13966         <abbrev_obstack>: Now an auto_obstack.
13967         (abbrev_table_up): New typedef.
13968         (init_cu_die_reader): Add abbrev_table parameter.
13969         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
13970         Add result_dwo_abbrev_table.
13971         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
13972         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
13973         Update.
13974         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
13975         parameter.
13976         (skip_children): Update.
13977         (abbrev_table::alloc_abbrev): Rename from
13978         abbrev_table_alloc_abbrev.
13979         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
13980         (abbrev_table::lookup_abbrev): Rename from
13981         abbrev_table_lookup_abbrev.
13982         (abbrev_table_read_table): Return abbrev_table_up.
13983         (abbrev_table_free, abbrev_table_free_cleanup)
13984         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
13985         (load_partial_dies): Update.
13986
13987 2018-01-17  Tom Tromey  <tom@tromey.com>
13988
13989         * dwarf2read.c (dwarf2_compute_name): Update comment.
13990         (read_func_scope, read_variable): Update.
13991         (new_symbol): Remove.
13992         (new_symbol_full): Rename to new_symbol.
13993
13994 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
13995
13996         PR gdb/16577
13997         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
13998         a warning instead of throwing an error, set section size to 0 and return
13999         NULL.
14000         * gdb_bfd.h (gdb_bfd_map_section): Update description.
14001
14002 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14003
14004         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
14005         std::string.
14006         (linux_ptrace_attach_fail_reason_string): Likewise.
14007         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
14008         Likewise.
14009         (linux_ptrace_attach_fail_reason_string): Likewise.
14010         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
14011
14012 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14013
14014         * linux-nat.c (linux_nat_attach): Remove xstrdup.
14015
14016 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
14017
14018         PR gdb/21559
14019         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
14020         checking for fs_base/gs_base fields in struct user_regs_struct.
14021         * configure: Regenerate.
14022
14023 2018-01-17  Yao Qi  <yao.qi@linaro.org>
14024
14025         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
14026         function.
14027         (aarch64_linux_init_abi): Install it to gdbarch hook
14028         gcc_target_options.
14029
14030 2018-01-15  Pedro Alves  <palves@redhat.com>
14031
14032         * common/signals-state-save-restore.c
14033         (save_original_signals_state): Fix typos.
14034
14035 2017-01-12  Tom Tromey  <tom@tromey.com>
14036             Sergio Durigan Junior  <sergiodj@redhat.com>
14037
14038         * Makefile.in (install-only): Install gdb-add-index.
14039
14040 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
14041
14042         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
14043
14044 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
14045
14046         * infrun.c (keep_going_pass_signal): Clear step-over info when
14047         insert_breakpoints fails.
14048
14049 2018-01-11  Pedro Alves  <palves@redhat.com>
14050
14051         PR gdb/22583
14052         * infrun.c (resume): Rename to ...
14053         (resume_1): ... this.
14054         (resume): Reimplement as wrapper around resume_1.
14055
14056 2018-01-11  Pedro Alves  <palves@redhat.com>
14057
14058         PR remote/22597
14059         * remote.c (remote_parse_stop_reply): Default to the last-set
14060         general thread instead of to 'magic_null_ptid'.
14061
14062 2018-01-10  Pedro Alves  <palves@redhat.com>
14063
14064         * language.h (language_get_symbol_name_matcher): Rename ...
14065         (get_symbol_name_matcher): ... this.
14066         * language.c (language_get_symbol_name_matcher): Ditto.
14067         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
14068         callers adjusted.
14069
14070 2018-01-10  Pedro Alves  <palves@redhat.com>
14071
14072         PR gdb/22670
14073         * dwarf2read.c
14074         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
14075         Adjust to use language_get_symbol_name_matcher instead of
14076         language_defn::la_get_symbol_name_matcher.
14077         * language.c (language_get_symbol_name_matcher): If in Ada mode
14078         and the lookup name is a verbatim match, return Ada's matcher.
14079         * language.h (language_get_symbol_name_matcher): Adjust comment.
14080         (ada_lookup_name_info::verbatim_p):: New method.
14081
14082 2018-01-10  Pedro Alves  <palves@redhat.com>
14083
14084         PR gdb/22670
14085         * ada-lang.c (ada_collect_symbol_completion_matches): If the
14086         minsym's language is language_auto or language_cplus, pass down
14087         language_ada instead.
14088         * symtab.c (compare_symbol_name): Don't frob symbol language here.
14089
14090 2018-01-10  Pedro Alves  <palves@redhat.com>
14091
14092         PR gdb/22670
14093         * minsyms.c (linkage_name_str): New function.
14094         (iterate_over_minimal_symbols): Use it.
14095
14096 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14097
14098         * NEWS: Document that 'info proc' now works on FreeBSD.
14099
14100 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14101
14102         * configure.ac: Check for kinfo_getfile in libutil.
14103         * configure: Regenerate.
14104         * config.in: Regenerate.
14105         * fbsd-nat.c: Include "fbsd-tdep.h".
14106         (fbsd_fetch_cmdline): New.
14107         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
14108         rather than calling error.
14109         (fbsd_info_proc): New.
14110         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
14111         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
14112         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
14113
14114 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14115
14116         * fbsd-nat.c (struct free_deleter): Remove.
14117         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
14118
14119 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14120
14121         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
14122         NULL for an empty pathname.
14123
14124 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14125
14126         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
14127         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
14128         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
14129         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
14130         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
14131         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
14132         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
14133         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
14134         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
14135         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
14136         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
14137         (fbsd_core_fetch_timeval, fbsd_print_sigset)
14138         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
14139         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
14140         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
14141
14142 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
14143
14144         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
14145         (gnu_xfer_auxv): New function.
14146         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
14147         TARGET_OBJECT_AUXV.
14148
14149 2018-01-08  Yao Qi  <yao.qi@linaro.org>
14150             Simon Marchi  <simon.marchi@ericsson.com>
14151
14152         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
14153         common/selftest.c.
14154         (COMMON_OBS): Remove selftest.o.
14155         * configure.ac: Append selftest-arch.c and common/selftest.c to
14156         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
14157         * configure: Re-generated.
14158         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
14159         GDB_SELF_TEST.
14160         (maintenance_info_selftests): Likewise.
14161
14162 2018-01-08  Xavier Roirand  <roirand@adacore.com>
14163
14164         * ada-valprint.c (val_print_packed_array_elements): Use
14165         proper number of elements when printing an array indexed
14166         by an enumeration type.
14167
14168 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14169
14170         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
14171         (dw2_get_file_names_reader): Adjust.
14172         (lookup_dwo_signatured_type): Adjust.
14173         (lookup_dwp_signatured_type): Adjust.
14174         (lookup_signatured_type): Adjust.
14175         (create_type_unit_group): Adjust.
14176         (get_type_unit_group): Adjust.
14177         (process_psymtab_comp_unit_reader): Adjust.
14178         (build_type_psymtabs_reader): Adjust.
14179         (scan_partial_symbols): Adjust.
14180         (add_partial_symbol): Adjust.
14181         (add_partial_subprogram): Adjust.
14182         (peek_die_abbrev): Adjust.
14183         (fixup_go_packaging): Adjust.
14184         (process_imported_unit_die): Adjust.
14185         (dwarf2_compute_name): Adjust.
14186         (dwarf2_physname): Adjust.
14187         (read_import_statement): Adjust.
14188         (handle_DW_AT_stmt_list): Adjust.
14189         (read_file_scope): Adjust.
14190         (read_func_scope): Adjust.
14191         (read_lexical_block_scope): Adjust.
14192         (read_call_site_scope): Adjust.
14193         (read_variable): Adjust.
14194         (dwarf2_rnglists_process): Adjust.
14195         (dwarf2_ranges_process): Adjust.
14196         (dwarf2_ranges_read): Adjust.
14197         (dwarf2_get_pc_bounds): Adjust.
14198         (dwarf2_record_block_ranges): Adjust.
14199         (dwarf2_add_field): Adjust.
14200         (dwarf2_add_member_fn): Adjust.
14201         (read_structure_type): Adjust.
14202         (process_structure_scope): Adjust.
14203         (read_enumeration_type): Adjust.
14204         (read_array_type): Adjust.
14205         (mark_common_block_symbol_computed): Adjust.
14206         (read_common_block): Adjust.
14207         (read_namespace_type): Adjust.
14208         (read_namespace): Adjust.
14209         (read_module_type): Adjust.
14210         (read_tag_pointer_type): Adjust.
14211         (read_tag_ptr_to_member_type): Adjust.
14212         (read_tag_string_type): Adjust.
14213         (read_subroutine_type): Adjust.
14214         (read_typedef): Adjust.
14215         (read_base_type): Adjust.
14216         (attr_to_dynamic_prop): Adjust.
14217         (read_subrange_type): Adjust.
14218         (read_unspecified_type): Adjust.
14219         (dwarf2_read_abbrevs): Adjust.
14220         (load_partial_dies): Adjust.
14221         (read_partial_die): Adjust.
14222         (find_partial_die): Adjust.
14223         (guess_partial_die_structure_name): Adjust.
14224         (fixup_partial_die): Adjust.
14225         (read_attribute_value): Adjust.
14226         (read_addr_index): Adjust.
14227         (read_addr_index_from_leb128): Adjust.
14228         (read_str_index): Adjust.
14229         (dwarf2_string_attr): Adjust.
14230         (get_debug_line_section): Adjust.
14231         (dwarf_decode_line_header): Adjust.
14232         (lnp_state_machine::check_line_address): Adjust.
14233         (dwarf_decode_lines_1): Adjust.
14234         (dwarf_decode_lines): Adjust.
14235         (dwarf2_start_symtab): Adjust.
14236         (var_decode_location): Adjust.
14237         (new_symbol_full): Adjust.
14238         (dwarf2_const_value_data): Adjust.
14239         (dwarf2_const_value_attr): Adjust.
14240         (dwarf2_const_value): Adjust.
14241         (die_type): Adjust.
14242         (die_containing_type): Adjust.
14243         (build_error_marker_type): Adjust.
14244         (lookup_die_type): Adjust.
14245         (guess_full_die_structure_name): Adjust.
14246         (anonymous_struct_prefix): Adjust.
14247         (determine_prefix): Adjust.
14248         (dwarf2_name): Adjust.
14249         (follow_die_ref_or_sig): Adjust.
14250         (follow_die_offset): Adjust.
14251         (follow_die_ref): Adjust.
14252         (follow_die_sig_1): Adjust.
14253         (follow_die_sig): Adjust.
14254         (get_signatured_type): Adjust.
14255         (get_DW_AT_signature_type): Adjust.
14256         (decode_locdesc): Adjust.
14257         (dwarf_decode_macros): Adjust.
14258         (cu_debug_loc_section): Adjust.
14259         (fill_in_loclist_baton): Adjust.
14260         (dwarf2_symbol_mark_computed): Adjust.
14261         (init_one_comp_unit): Don't assign
14262         dwarf2_cu::dwarf2_per_objfile.
14263         (set_die_type): Adjust.
14264
14265 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14266
14267         * dwarf2read.c (struct mapped_debug_names): Add constructor.
14268         <dwarf2_per_objfile>: New field.
14269         (dwarf2_per_objfile): Remove global.
14270         (get_dwarf2_per_objfile): New function.
14271         (set_dwarf2_per_objfile): New function.
14272         (dwarf2_build_psymtabs_hard): Change objfile parameter to
14273         dwarf2_per_objfile.
14274         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14275         (read_abbrev_offset): Likewise.
14276         (read_indirect_string): Likewise.
14277         (read_indirect_line_string): Likewise.
14278         (read_indirect_string_at_offset): Likewise.
14279         (read_indirect_string_from_dwz): Likewise.
14280         (dwarf2_find_containing_comp_unit): Change objfile parameter to
14281         dwarf2_per_objfile.
14282         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
14283         (create_all_comp_units): Change objfile parameter to
14284         dwarf2_per_objfile.
14285         (create_all_type_units): Likewise.
14286         (process_queue): Add dwarf2_per_objfile parameter.
14287         (read_and_check_comp_unit_head): Likewise.
14288         (lookup_dwo_unit_in_dwp): Likewise.
14289         (get_dwp_file): Likewise.
14290         (process_cu_includes): Likewise.
14291         (struct free_dwo_file_cleanup_data): New struct.
14292         (dwarf2_has_info): Use get_dwarf2_per_objfile and
14293         set_dwarf2_per_objfile.
14294         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
14295         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
14296         context, adjust calls.
14297         (dw2_instantiate_symtab): Likewise.
14298         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
14299         (dw2_get_cu): Likewise.
14300         (create_cu_from_index_list): Change objfile parameter to
14301         dwarf2_per_objfile.
14302         (create_cus_from_index_list): Get dwarf2_per_objfile from
14303         context, adjust calls.
14304         (create_cus_from_index): Likewise.
14305         (create_signatured_type_table_from_index): Change objfile
14306         parameter to dwarf2_per_objfile.
14307         (create_signatured_type_table_from_debug_names): Change objfile
14308         parameter to dwarf2_per_objfile.
14309         (create_addrmap_from_index): Likewise.
14310         (create_addrmap_from_aranges): Likewise.
14311         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
14312         (dw2_setup): Remove.
14313         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
14314         context.
14315         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
14316         get_dwarf2_per_objfile.
14317         (dw2_forget_cached_source_info): Likewise.
14318         (dw2_map_symtabs_matching_filename): Likewise.
14319         (struct dw2_symtab_iterator) <index>: Remove.
14320         <dwarf2_per_objfile>: New field.
14321         (dw2_symtab_iter_init): Replace index parameter with
14322         dwarf2_per_objfile.
14323         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
14324         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
14325         (dw2_print_stats): Likewise.
14326         (dw2_dump): Likewise.
14327         (dw2_expand_symtabs_for_function): Likewise.
14328         (dw2_expand_all_symtabs): Likewise.
14329         (dw2_expand_symtabs_with_fullname): Likewise.
14330         (dw2_expand_marked_cus): Replace index and objfile parameters
14331         with dwarf2_per_objfile.
14332         (dw_expand_symtabs_matching_file_matcher): Add
14333         dwarf2_per_objfile parameter and adjust calls.
14334         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
14335         adjust calls.
14336         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
14337         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
14338         adjust calls.
14339         (create_cus_from_debug_names_list): Replace objfile parameter
14340         with dwarf2_per_objfile and adjust calls.
14341         (create_cus_from_debug_names): Likewise.
14342         (dwarf2_read_debug_names): Likewise.
14343         (mapped_debug_names::namei_to_name): Adjust call.
14344         (dw2_debug_names_iterator::next): Likewise.
14345         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
14346         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
14347         (dw2_debug_names_dump): Likewise.
14348         (dw2_debug_names_expand_symtabs_for_function): Likewise.
14349         (dw2_debug_names_expand_symtabs_matching): Likewise.
14350         (dwarf2_initialize_objfile): Likewise.
14351         (dwarf2_build_psymtabs): Likewise.
14352         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
14353         this_cu.
14354         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
14355         (read_and_check_comp_unit_head): Likewise.
14356         (read_abbrev_offset): Likewise.
14357         (create_debug_type_hash_table): Likewise.
14358         (create_debug_types_hash_table): Likewise.
14359         (create_all_type_units): Replace objfile parameter with
14360         dwarf2_per_objfile.
14361         (add_type_unit): Add dwarf2_per_objfile parameter.
14362         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
14363         with dwarf2_per_objfile.
14364         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
14365         (lookup_dwp_signatured_type): Likewise.
14366         (lookup_signatured_type): Likewise.
14367         (read_cutu_die_from_dwo): Likewise.
14368         (init_tu_and_read_dwo_dies): Likewise.
14369         (init_cutu_and_read_dies): Likewise.
14370         (init_cutu_and_read_dies_no_follow): Likewise.
14371         (allocate_type_unit_groups_table): Add objfile parameter.
14372         (create_type_unit_group): Use dwarf2_per_objfile from cu.
14373         (get_type_unit_group): Likewise.
14374         (process_psymtab_comp_unit): Update call.
14375         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
14376         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
14377         (print_tu_stats): Likewise.
14378         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
14379         in void* parameter.
14380         (build_type_psymtabs): Change objfile parameter to
14381         dwarf2_per_objfile.
14382         (process_skeletonless_type_unit): Use dwarf2_per_objfile
14383         passed in void* parameter.
14384         (process_skeletonless_type_units): Change objfile parameter to
14385         dwarf2_per_objfile.
14386         (set_partial_user): Likewise.
14387         (dwarf2_build_psymtabs_hard): Likewise.
14388         (read_comp_units_from_section): Likewise.
14389         (create_all_comp_units): Likewise.
14390         (scan_partial_symbols): Update calls.
14391         (add_partial_symbol): Likewise.
14392         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
14393         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
14394         (process_queue): Add dwarf2_per_objfile parameter.
14395         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
14396         (compute_compunit_symtab_includes): Likewise.
14397         (process_cu_includes): Add dwarf2_per_objfile parameter.
14398         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
14399         (process_full_type_unit): Likewise.
14400         (process_imported_unit_die): Update call.
14401         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
14402         (read_file_scope): Likewise.
14403         (allocate_dwo_file_hash_table): Add objfile parameter.
14404         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
14405         (create_cus_hash_table): Likewise.
14406         (create_dwp_hash_table): Likewise.
14407         (create_dwo_unit_in_dwp_v1): Likewise.
14408         (create_dwp_v2_section): Likewise.
14409         (create_dwo_unit_in_dwp_v2): Likewise.
14410         (lookup_dwo_unit_in_dwp): Likewise.
14411         (try_open_dwop_file): Likewise.
14412         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
14413         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
14414         cleanup to include a reference to dwarf2_per_objfile.
14415         (open_dwp_file): Add dwarf2_per_objfile parameter.
14416         (open_and_init_dwp_file): Likewise.
14417         (get_dwp_file): Likewise.
14418         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
14419         (queue_and_load_all_dwo_tus): Update call.
14420         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
14421         data.
14422         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
14423         (dwarf2_ranges_process): Likewise.
14424         (dwarf2_get_pc_bounds): Likewise.
14425         (mark_common_block_symbol_computed): Likewise.
14426         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14427         (dwarf2_read_abbrevs): Update call.
14428         (read_partial_die): Use dwarf2_per_objfile from cu.
14429         (find_partial_die): Likewise.
14430         (fixup_partial_die): Likewise.
14431         (read_attribute_value): Likewise.
14432         (read_indirect_string_at_offset_from): Add objfile parameter.
14433         (read_indirect_string_at_offset): Add dwarf2_per_objfile
14434         parameter.
14435         (read_indirect_string_from_dwz): Add objfile parameter.
14436         (read_indirect_string): Add objfile parameter.
14437         (read_addr_index_1): Add dwarf2_per_objfile parameter.
14438         (read_addr_index): Use dwarf2_per_objfile from cu.
14439         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
14440         call dw2_setup.
14441         (read_str_index): Use dwarf2_per_objfile from cu.
14442         (get_debug_line_section): Likewise.
14443         (read_formatted_entries): Add dwarf2_per_objfile parameter.
14444         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
14445         (new_symbol_full): Use dwarf2_per_objfile from cu.
14446         (build_error_marker_type): Likewise.
14447         (lookup_die_type): Likewise.
14448         (determine_prefix): Likewise.
14449         (follow_die_offset): Likewise.
14450         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
14451         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
14452         (dwarf2_fetch_die_type_sect_off): Likewise.
14453         (dwarf2_get_die_type): Likewise.
14454         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
14455         (get_signatured_type): Likewise.
14456         (get_DW_AT_signature_type): Likewise.
14457         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
14458         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
14459         (cu_debug_loc_section): Likewise.
14460         (fill_in_loclist_baton): Likewise.
14461         (dwarf2_symbol_mark_computed): Likewise.
14462         (dwarf2_find_containing_comp_unit): Change objfile parameter to
14463         dwarf2_per_objfile.
14464         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
14465         parameter.
14466         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
14467         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
14468         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
14469         (set_die_type): Use dwarf2_free_objfile from cu.
14470         (get_die_type_at_offset): Likewise.
14471         (dwarf2_per_objfile_free): Don't assign global variable.
14472         (debug_names) <constructor>: Add dwarf2_per_objfile
14473         parameter, update m_debugstrlookup construction.
14474         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
14475         parameter.
14476         <m_dwarf2_per_objfile>: New field.
14477         <lookup>: Use m_dwarf2_per_objfile.
14478         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
14479         (psyms_seen_size): Likewise.
14480         (write_gdbindex): Replace objfile parameter with
14481         dwarf2_per_objfile.
14482         (write_debug_names): Likewise.
14483         (write_psymtabs_to_index): Likewise.
14484         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
14485         calls.
14486
14487 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14488
14489         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
14490         <dwarf2_per_objfile>: New field.
14491         (struct dwarf2_per_cu_data) <objfile>: Remove.
14492         <dwarf2_per_objfile>: New field.
14493         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
14494         of objfile.
14495         (create_signatured_type_table_from_index): Likewise.
14496         (create_debug_type_hash_table): Likewise.
14497         (fill_in_sig_entry_from_dwo_entry): Likewise.
14498         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
14499         (create_type_unit_group): Assign dwarf2_per_objfile instead of
14500         objfile.
14501         (create_partial_symtab): Access objfile through
14502         dwarf2_per_objfile.
14503         (process_psymtab_comp_unit_reader): Likewise.
14504         (read_comp_units_from_section): Likewise.
14505         (scan_partial_symbols): Likewise.
14506         (add_partial_symbol): Likewise.
14507         (add_partial_subprogram): Likewise.
14508         (peek_die_abbrev): Likewise.
14509         (fixup_go_packaging): Likewise.
14510         (process_full_comp_unit): Likewise.
14511         (process_full_type_unit): Likewise.
14512         (process_imported_unit_die): Likewise.
14513         (dwarf2_compute_name): Likewise.
14514         (dwarf2_physname): Likewise.
14515         (read_import_statement): Likewise.
14516         (create_cus_hash_table): Assign dwarf2_physname instead of
14517         objfile.
14518         (read_func_scope): Access objfile through dwarf2_per_objfile.
14519         (read_lexical_block_scope): Likewise.
14520         (read_call_site_scope): Likewise.
14521         (read_variable): Likewise.
14522         (dwarf2_rnglists_process): Likewise.
14523         (dwarf2_ranges_process): Likewise.
14524         (dwarf2_ranges_read): Likewise.
14525         (dwarf2_record_block_ranges): Likewise.
14526         (dwarf2_add_field): Likewise.
14527         (dwarf2_add_member_fn): Likewise.
14528         (read_structure_type): Likewise.
14529         (process_structure_scope): Likewise.
14530         (read_enumeration_type): Likewise.
14531         (read_array_type): Likewise.
14532         (read_common_block): Likewise.
14533         (read_namespace_type): Likewise.
14534         (read_namespace): Likewise.
14535         (read_module_type): Likewise.
14536         (read_tag_pointer_type): Likewise.
14537         (read_tag_ptr_to_member_type): Likewise.
14538         (read_tag_string_type): Likewise.
14539         (read_subroutine_type): Likewise.
14540         (read_typedef): Likewise.
14541         (read_base_type): Likewise.
14542         (attr_to_dynamic_prop): Likewise.
14543         (read_subrange_type): Likewise.
14544         (read_unspecified_type): Likewise.
14545         (load_partial_dies): Likewise.
14546         (read_partial_die): Likewise.
14547         (find_partial_die): Likewise.
14548         (guess_partial_die_structure_name): Likewise.
14549         (fixup_partial_die): Likewise.
14550         (read_attribute_value): Likewise.
14551         (read_addr_index_from_leb128): Likewise.
14552         (dwarf2_read_addr_index): Likewise.
14553         (dwarf2_string_attr): Likewise.
14554         (lnp_state_machine::check_line_address): Likewise.
14555         (dwarf_decode_lines_1): Likewise.
14556         (dwarf_decode_lines): Likewise.
14557         (dwarf2_start_symtab): Likewise.
14558         (var_decode_location): Likewise.
14559         (new_symbol_full): Likewise.
14560         (dwarf2_const_value_data): Likewise.
14561         (dwarf2_const_value_attr): Likewise.
14562         (dwarf2_const_value): Likewise.
14563         (die_type): Likewise.
14564         (die_containing_type): Likewise.
14565         (lookup_die_type): Likewise.
14566         (guess_full_die_structure_name): Likewise.
14567         (anonymous_struct_prefix): Likewise.
14568         (dwarf2_name): Likewise.
14569         (follow_die_ref_or_sig): Likewise.
14570         (follow_die_offset): Likewise.
14571         (follow_die_ref): Likewise.
14572         (dwarf2_fetch_die_loc_sect_off): Likewise.
14573         (dwarf2_fetch_constant_bytes): Likewise.
14574         (dwarf2_fetch_die_type_sect_off): Likewise.
14575         (dwarf2_get_die_type): Likewise.
14576         (follow_die_sig): Likewise.
14577         (decode_locdesc): Likewise.
14578         (dwarf2_per_cu_objfile): Likewise.
14579         (dwarf2_per_cu_text_offset): Likewise.
14580         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
14581         objfile.
14582         (set_die_type): Access objfile through
14583         dwarf2_per_objfile.
14584
14585 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14586
14587         * valprint.c (converted_character_d): Remove typedef.
14588         (DEF_VEC_O (converted_character_d)): Remove.
14589         (count_next_character): Use std::vector.
14590         (print_converted_chars_to_obstack): Likewise.
14591         (generic_printstr): Likewise.
14592
14593 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14594
14595         * xml-support.h (struct gdb_xml_value): Add constructor.
14596         <value>: Change type to unique_xmalloc_ptr.
14597         (gdb_xml_value_s): Remove typedef.
14598         (DEF_VEC_O (gdb_xml_value_s)): Remove.
14599         (gdb_xml_element_start_handler): Change parameter type to
14600         std::vector.
14601         (xml_find_attribute): Likewise.
14602         * xml-support.c (xml_find_attribute): Change parameter type to
14603         std::vector and adjust.
14604         (gdb_xml_values_cleanup): Remove.
14605         (gdb_xml_parser::start_element): Adjust to std::vector.
14606         (xinclude_start_include): Change paraeter type to std::vector
14607         and adjust.
14608         * btrace.c (check_xml_btrace_version): Likewise.
14609         (parse_xml_btrace_block): Likewise.
14610         (parse_xml_btrace_pt_config_cpu): Likewise.
14611         (parse_xml_btrace_pt): Likewise.
14612         (parse_xml_btrace_conf_bts): Likewise.
14613         (parse_xml_btrace_conf_pt): Likewise.
14614         * memory-map.c (memory_map_start_memory): Likewise.
14615         (memory_map_start_property): Likewise.
14616         * osdata.c (osdata_start_osdata): Likewise.
14617         (osdata_start_item): Likewise.
14618         (osdata_start_column): Likewise.
14619         * remote.c (start_thread): Likewise.
14620         * solib-aix.c (library_list_start_library): Likewise.
14621         (library_list_start_list): Likewise.
14622         * solib-svr4.c (library_list_start_library): Likewise.
14623         (svr4_library_list_start_list): Likewise.
14624         * solib-target.c (library_list_start_segment): Likewise.
14625         (library_list_start_section): Likewise.
14626         (library_list_start_library): Likewise.
14627         (library_list_start_list): Likewise.
14628         * tracepoint.c (traceframe_info_start_memory): Likewise.
14629         (traceframe_info_start_tvar): Likewise.
14630         * xml-syscall.c (syscall_start_syscall): Likewise.
14631         * xml-tdesc.c (tdesc_start_target): Likewise.
14632         (tdesc_start_feature): Likewise.
14633         (tdesc_start_reg): Likewise.
14634         (tdesc_start_union): Likewise.
14635         (tdesc_start_struct): Likewise.
14636         (tdesc_start_flags): Likewise.
14637         (tdesc_start_enum): Likewise.
14638         (tdesc_start_field): Likewise.
14639         (tdesc_start_enum_value): Likewise.
14640         (tdesc_start_vector): Likewise.
14641
14642 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14643
14644         * extension.h (struct xmethod_worker) <clone>: Remove.
14645         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
14646         Remove.
14647         (python_xmethod_worker::clone): Remove.
14648         * valops.c (find_overload_match): Use std::move instead of
14649         clone.
14650
14651 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14652
14653         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
14654         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
14655         <free_xmethod_worker_data>: Remove.
14656         <get_matching_xmethod_workers>: Chance VEC to std::vector.
14657         <get_xmethod_arg_types>: Remove.
14658         <get_xmethod_result_type>: Remove.
14659         <invoke_xmethod>: Remove.
14660         * extension.c (new_xmethod_worker): Remove.
14661         (clone_xmethod_worker): Remove.
14662         (get_matching_xmethod_workers): Return void, pass std::vector by
14663         pointer.
14664         (get_xmethod_arg_types): Rename to...
14665         (xmethod_worker::get_arg_types): ... this, and adjust.
14666         (get_xmethod_result_type): Rename to...
14667         (xmethod_worker::get_result_type): ... this, and adjust.
14668         (invoke_xmethod): Remove.
14669         (free_xmethod_worker): Remove.
14670         (free_xmethod_worker_vec): Remove.
14671         * extension.h (enum ext_lang_rc): Move here from
14672         extension-priv.h.
14673         (struct xmethod_worker): Add constructor and destructor.
14674         <data>: Remove.
14675         <value>: Remove.
14676         <invoke, clone, do_get_result_type, do_get_arg_types>: New
14677         virtual pure methods.
14678         <get_arg_types, get_result_type>: New methods.
14679         (xmethod_worker_ptr): Remove typedef.
14680         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
14681         (xmethod_worker_vec): Remove typedef.
14682         (xmethod_worker_up): New typedef.
14683         (invoke_xmethod): Remove.
14684         (clone_xmethod_worker): Remove.
14685         (free_xmethod_worker): Remove.
14686         (free_xmethod_worker_vec): Remove.
14687         (get_xmethod_arg_types): Remove.
14688         (get_xmethod_result_type): Remove.
14689         * valops.c (find_method_list): Use std::vector, don't use
14690         intermediate vector.
14691         (value_find_oload_method_list): Use std::vector.
14692         (find_overload_match): Use std::vector.
14693         (find_oload_champ): Use std::vector.
14694         * value.c (value_free): Use operator delete.
14695         (value_of_xmethod): Rename to...
14696         (value_from_xmethod): ... this.  Don't assign
14697         xmethod_worker::value, take rvalue-reference.
14698         (result_type_of_xmethod): Adjust.
14699         (call_xmethod): Adjust.
14700         * value.h: Include extension.h.
14701         (struct xmethod_worker): Don't forward-declare.
14702         (value_of_xmethod): Rename to...
14703         (value_from_xmethod): ... this, take rvalue-reference.
14704         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
14705         (struct python_xmethod_worker): ... this, add constructor and
14706         destructor.
14707         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
14708         (gdbpy_free_xmethod_worker_data): Rename to...
14709         (python_xmethod_worker::~python_xmethod_worker): ... this and
14710         adjust.
14711         (gdbpy_clone_xmethod_worker_data): Rename to...
14712         (python_xmethod_worker::clone): ... this and adjust.
14713         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
14714         temporary vector.
14715         (gdbpy_get_xmethod_arg_types): Rename to...
14716         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
14717         (gdbpy_get_xmethod_result_type): Rename to...
14718         (python_xmethod_worker::do_get_result_type): ... this and
14719         adjust.
14720         (gdbpy_invoke_xmethod): Rename to...
14721         (python_xmethod_worker::invoke): ... this and adjust.
14722         (new_python_xmethod_worker): Rename to...
14723         (python_xmethod_worker::python_xmethod_worker): ... this and
14724         adjust.
14725         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
14726         Remove.
14727         (gdbpy_free_xmethod_worker_data): Remove.
14728         (gdbpy_get_matching_xmethod_workers): Use std::vector.
14729         (gdbpy_get_xmethod_arg_types): Remove.
14730         (gdbpy_get_xmethod_result_type): Remove.
14731         (gdbpy_invoke_xmethod): Remove.
14732         * python/python.c (python_extension_ops): Remove obsolete
14733         callbacks.
14734
14735 2018-01-05  Pedro Alves  <palves@redhat.com>
14736
14737         PR gdb/18653
14738         * common/signals-state-save-restore.c
14739         (save_original_signals_state): New parameter 'quiet'.  Warn if we
14740         find a custom handler preinstalled, instead of internal erroring.
14741         But only warn if !quiet.
14742         * common/signals-state-save-restore.h
14743         (save_original_signals_state): New parameter 'quiet'.
14744         * main.c (captured_main_1): Move save_original_signals_state call
14745         after option handling, and pass QUIET.
14746
14747 2018-01-05  Pedro Alves  <palves@redhat.com>
14748
14749         * spu-tdep.c (spu_catch_start): Pass
14750         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
14751
14752 2018-01-05  Pedro Alves  <palves@redhat.com>
14753
14754         PR gdb/22670
14755         * ada-lang.c (literal_symbol_name_matcher): New function.
14756         (ada_get_symbol_name_matcher): Use it for
14757         symbol_name_match_type::SEARCH_NAME.
14758         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
14759         it down instead of assuming symbol_name_match_type::FULL.
14760         * block.h (block_lookup_symbol): New parameter 'match_type'.
14761         * c-valprint.c (print_unpacked_pointer): Use
14762         lookup_symbol_search_name instead of lookup_symbol.
14763         * compile/compile-object-load.c (get_out_value_type): Pass down
14764         symbol_name_match_type::SEARCH_NAME.
14765         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
14766         symbol_name_match_type::FULL.
14767         * cp-support.c (cp_get_symbol_name_matcher): Handle
14768         symbol_name_match_type::SEARCH_NAME.
14769         * infrun.c (insert_exception_resume_breakpoint): Use
14770         lookup_symbol_search_name.
14771         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
14772         * psymtab.c (maintenance_check_psymtabs): Use
14773         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
14774         * stack.c (print_frame_args): Use lookup_symbol_search_name and
14775         SYMBOL_SEARCH_NAME.
14776         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
14777         if symbol_name_match_type::SEARCH_NAME.
14778         (lookup_symbol_in_language): Pass down
14779         symbol_name_match_type::FULL.
14780         (lookup_symbol_search_name): New.
14781         (lookup_language_this): Pass down
14782         symbol_name_match_type::SEARCH_NAME.
14783         (lookup_symbol_aux, lookup_local_symbol): New parameter
14784         'match_type'.  Pass it down.
14785         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
14786         (lookup_symbol_search_name): New declaration.
14787         (lookup_symbol_in_block): New 'match_type' parameter.
14788
14789 2018-01-05  Pedro Alves  <palves@redhat.com>
14790
14791         PR gdb/22670
14792         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
14793         ada_lookup_symbol.
14794         (ada_lookup_symbol): Reimplement in terms of
14795         ada_lookup_symbol_list, bits factored out from
14796         ada_lookup_encoded_symbol.
14797
14798 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14799
14800         * ada-exp.y (write_object_renaming): When subscripting an array
14801         using a symbol as the index, pass the block in call to
14802         ada_lookup_encoded_symbol when looking that symbol up.
14803
14804 2018-01-05  Jerome Guitton  <guitton@adacore.com>
14805
14806         * ada-lang.c (ada_array_length): Use ada_index_type instead of
14807         TYPE_INDEX_TYPE.
14808
14809 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14810
14811         * ada-lang.c (ada_to_fixed_value_create): Add handling of
14812         the case where VALUE_LVAL (val0) is not lval_memory.
14813
14814 2018-01-05  Xavier Roirand  <roirand@adacore.com>
14815
14816         * ada-valprint.c (print_optional_low_bound): Handle
14817         character-indexed array printing like boolean-indexed array
14818         printing.
14819
14820 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14821
14822         * NEWS: Create a new section for the next release branch.
14823         Rename the section of the current branch, now that it has
14824         been cut.
14825
14826 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14827
14828         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
14829         * version.in: Bump version to 8.1.50.DATE-git.
14830
14831 2018-01-03  Xavier Roirand  <roirand@adacore.com>
14832
14833         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
14834         Add field.
14835         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
14836         Add field.
14837         (default_exception_support_info) <catch_handlers_sym>: Add field.
14838         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
14839         (ada_exception_name_addr_1): Add "catch handlers" handling.
14840         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
14841         Update all callers.
14842         (create_excep_cond_exprs) <ex>: Add parameter.
14843         (re_set_exception): Update create_excep_cond_exprs call.
14844         (print_it_exception, print_one_exception, print_mention_exception)
14845         (print_recreate_exception): Add "catch handler" handling.
14846         (allocate_location_catch_handlers, re_set_catch_handlers)
14847         (check_status_catch_handlers, print_it_catch_handlers)
14848         (print_one_catch_handlers, print_mention_catch_handlers)
14849         (print_recreate_catch_handlers): New function.
14850         (catch_handlers_breakpoint_ops): New variable.
14851         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
14852         Add parameter.  Add "catch handler" handling.
14853         (ada_exception_sym_name, ada_exception_breakpoint_ops):
14854         Add "catch handler" handling.
14855         (ada_exception_catchpoint_cond_string): Add "catch handler"
14856         handling.
14857         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
14858         call.
14859         (catch_ada_handlers_command): New function.
14860         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
14861         operations structure.
14862         (_initialize_ada_language): Add "catch handlers" command entry.
14863         * NEWS: Document "catch handlers" feature.
14864
14865 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14866
14867         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
14868         account when creating the array type of the slice.
14869         (ada_value_slice): Likewise.
14870
14871 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14872
14873         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
14874         New enum value.
14875         (create_array_type_with_stride): Add byte_stride_prop parameter.
14876         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
14877         New parameter.  Update all callers in this file.
14878         (array_type_has_dynamic_stride): New function.
14879         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
14880         of arrays with dynamic byte strides.
14881         * dwarf2read.c (read_array_type): Add support for dynamic
14882         DW_AT_byte_stride attributes.
14883
14884 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14885
14886         * dwarf2read.c (read_unspecified_type): Treat
14887         DW_TAG_enumeration_type DIEs from Ada units as stubs.
14888
14889 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14890
14891         Update copyright year range in all GDB files.
14892
14893 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
14894
14895         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
14896         and gdb/testsuite/gdb.base/step-line.c.
14897
14898 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14899
14900         * copyright.py (main): Dump the contents of
14901         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
14902         even if BY_HAND is empty.
14903
14904 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14905
14906         * top.c (print_gdb_version): Update Copyright year in version
14907         message.
14908
14909 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14910
14911         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
14912
14913 For older changes see ChangeLog-2017.
14914 \f
14915 Local Variables:
14916 mode: change-log
14917 left-margin: 8
14918 fill-column: 74
14919 version-control: never
14920 coding: utf-8
14921 End: