436446c9f0b2684b837a62798443630d25c1b59a
[external/binutils.git] / gdb / ChangeLog
1 2018-11-19  Simon Marchi  <simon.marchi@ericsson.com>
2
3         * infrun.c (displaced_step_inferior_states): Change type to
4         std::forward_list.
5         (get_displaced_stepping_state): Adjust.
6         (displaced_step_in_progress_any_inferior): Adjust.
7         (add_displaced_stepping_state): Adjust.
8         (remove_displaced_stepping_state): Adjust.
9
10 2018-11-18  Tom Tromey  <tom@tromey.com>
11
12         PR build/23814:
13         * target-delegates.c: Rebuild.
14         * ia64-linux-nat.c (class ia64_linux_nat_target)
15         <have_steppable_watchpoint>: Use override.  Return true, not 1.
16         (ia64_linux_nat_target::can_use_hw_breakpoint): Rename.  Remove
17         "self" argument.
18         (ia64_linux_nat_target::low_new_thread): Rename.
19         (class ia64_linux_nat_target) <read_description>: Don't declare.
20         * target.h (struct target_ops) <have_steppable_watchpoint>: Return
21         bool.
22
23 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
24
25         PR gdb/22736:
26         * aarch64-tdep.c (aarch64_push_dummy_call): Remove
27         lang_struct_return code.
28
29 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
30
31         * aarch64-tdep.c (aarch64_push_dummy_call): Replace arg with
32         return_method.
33         * alpha-tdep.c (alpha_push_dummy_call): Likewise.
34         * amd64-tdep.c (amd64_push_arguments): Likewise.
35         (amd64_push_dummy_call): Likewise.
36         * amd64-windows-tdep.c (amd64_windows_push_arguments): Likewise.
37         * arc-tdep.c (arc_push_dummy_call): Likewise.
38         * arm-tdep.c (arm_push_dummy_call): Likewise.
39         * avr-tdep.c (avr_push_dummy_call): Likewise.
40         * bfin-tdep.c (bfin_push_dummy_call): Likewise.
41         * cris-tdep.c (cris_push_dummy_call): Likewise.
42         * csky-tdep.c (csky_push_dummy_call): Likewise.
43         * frv-tdep.c (frv_push_dummy_call): Likewise.
44         * gdbarch.c: Regenerate.
45         * gdbarch.h: Regenerate.
46         * gdbarch.sh (gdbarch_push_dummy_call): Replace arg with
47         return_method.
48         * h8300-tdep.c (h8300_push_dummy_call): Likewise.
49         * hppa-tdep.c (hppa32_push_dummy_call): Likewise.
50         (hppa64_push_dummy_call): Likewise.
51         * i386-darwin-tdep.c (i386_darwin_push_dummy_call): Likewise.
52         * i386-tdep.c (i386_push_dummy_call): Likewise.
53         * ia64-tdep.c (ia64_push_dummy_call): Likewise.
54         * infcall.c (call_function_by_hand_dummy): Likewise.
55         * iq2000-tdep.c (iq2000_push_dummy_call): Likewise.
56         * lm32-tdep.c (lm32_push_dummy_call): Likewise.
57         * m32c-tdep.c (m32c_push_dummy_call): Likewise.
58         * m32r-tdep.c (m32r_push_dummy_call): Likewise.
59         * m68hc11-tdep.c (m68hc11_push_dummy_call): Likewise.
60         * m68k-tdep.c (m68k_push_dummy_call): Likewise.
61         * mep-tdep.c (mep_push_dummy_call): Likewise.
62         * mips-tdep.c (mips_eabi_push_dummy_call): Likewise.
63         (mips_n32n64_push_dummy_call): Likewise.
64         (mips_o32_push_dummy_call): Likewise.
65         (mips_o64_push_dummy_call): Likewise.
66         * mn10300-tdep.c (mn10300_push_dummy_call): Likewise.
67         * msp430-tdep.c (msp430_push_dummy_call): Likewise.
68         * nds32-tdep.c (nds32_push_dummy_call): Likewise.
69         * nios2-tdep.c (nios2_push_dummy_call): Likewise.
70         * or1k-tdep.c (or1k_push_dummy_call): Likewise.
71         * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Likewise.
72         (ppc64_sysv_abi_push_dummy_call): Likewise.
73         * ppc-tdep.h (ppc_sysv_abi_push_dummy_call): Likewise.
74         (ppc64_sysv_abi_push_dummy_call): Likewise.
75         * riscv-tdep.c (riscv_push_dummy_call): Likewise.
76         * rl78-tdep.c (rl78_push_dummy_call): Likewise.
77         * rs6000-aix-tdep.c (rs6000_push_dummy_call): Likewise.
78         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Likewise.
79         * rx-tdep.c (rx_push_dummy_call): Likewise.
80         * s390-tdep.c (s390_push_dummy_call): Likewise.
81         * score-tdep.c (score_push_dummy_call): Likewise.
82         * sh-tdep.c (sh_push_dummy_call_fpu): Likewise.
83         (sh_push_dummy_call_nofpu): Likewise.
84         * sparc-tdep.c (sparc32_store_arguments): Likewise.
85         (sparc32_push_dummy_call): Likewise.
86         * sparc64-tdep.c (sparc64_store_arguments): Likewise.
87         (sparc64_push_dummy_call): Likewise.
88         * spu-tdep.c (spu_push_dummy_call): Likewise.
89         * tic6x-tdep.c (tic6x_push_dummy_call): Likewise.
90         * tilegx-tdep.c (tilegx_push_dummy_call): Likewise.
91         * v850-tdep.c (v850_push_dummy_call): Likewise.
92         * vax-tdep.c (vax_push_dummy_call): Likewise.
93         * xstormy16-tdep.c (xstormy16_push_dummy_call): Likewise.
94         * xtensa-tdep.c (xtensa_push_dummy_call): Likewise.
95
96 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
97
98         * gdbarch.sh (enum function_call_return_method): Add enum.
99         * gdbarch.h: Regenerate.
100         * infcall.c (call_function_by_hand_dummy): Replace vars with enum.
101
102 2018-11-15  Joel Brobecker  <brobecker@adacore.com>
103
104         * unittests/copy_bitwise-selftests.c: New file.
105         * utils.c (selftests::bits_to_str, selftests::check_copy_bitwise)
106         (selftests::copy_bitwise_tests): Delete, moving this code to
107         unittests/copy_bitwise-selftests.c instead.
108         (_initialize_utils): Do not register copy_bitwise tests.
109         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
110         unittests/copy_bitwise-selftests.c.
111
112 2018-11-14  Joel Brobecker  <brobecker@adacore.com>
113
114         * ada-lang.c (move_bits): Delete. Update all callers to use
115         copy_bitwise instead.
116         * dwarf2loc.c (copy_bitwise, bits_to_str::bits_to_str)
117         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
118         Move from here to utils.c.
119         (_initialize_dwarf2loc): Remove call to register copy_bitwise
120         selftests.
121         * utils.h (copy_bitwise): Add declaration.
122         * utils.c (copy_bitwise, bits_to_str::bits_to_str)
123         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
124         Moved here from dwarf2loc.c.
125         (_initialize_utils): Register copy_bitwise selftests.
126
127 2018-11-14  Jim Wilson  <jimw@sifive.com>
128
129         * riscv-tdep.c (struct riscv_arg_info): New field is_unnamed.
130         (riscv_call_arg_scalar_int): If unnamed arg with twice xlen alignment,
131         then increment next_regnum if odd.
132         (riscv_arg_location): New arg is_unnamed.  Set ainfo->is_unnamed.
133         (riscv_push_dummy_call): New local ftype.  Call check_typedef to set
134         function type.  Pass new arg to riscv_arg_location based on function
135         type.
136         (riscv_return_value): Pass new arg to riscv_arg_location.
137
138         * riscv-tdep.c (BIGGEST_ALIGNMENT): New.
139         (riscv_type_alignment) <TYPE_CODE_ARRAY>: If TYPE_VECTOR, return min
140         of TYPE_LENGTH and BIGGEST_ALIGNMENT.
141
142         * riscv-tdep.c (riscv_call_arg_scalar_int): Use std::min when
143         setting len.  New local align, set to max of arg align and xlen,
144         and pass to first riscv_assign_stack_location call.
145
146 2018-11-12  Simon Marchi  <simon.marchi@polymtl.ca>
147
148         * skip.c (complete_skip_number): New function.
149         (_initialize_step_skip): Add completers to some skip commands.
150
151 2018-11-09  Tom Tromey  <tom@tromey.com>
152
153         * remote.c (remote_g_packet_guess_s): Remove typedef and DEF_VEC.
154         (struct remote_g_packet_data): Derive from allocate_on_obstack.
155         <guesses>: Now a std::vector.
156         (remote_g_packet_data_init, register_remote_g_packet_guess):
157         Update.
158         (remote_read_description_p): Update.  Return bool.
159         (remote_target::read_description): Update.
160         (struct remote_g_packet_guess): Add constructor.
161
162 2018-11-09  Tom Tromey  <tom@tromey.com>
163
164         * common/scoped_fd.h (class scoped_fd): Add move constructor and
165         move assignment operator.
166         * psymtab.c (psymtab_to_fullname): Update.
167         * source.h (open_source_file): Return scoped_fd.
168         (find_and_open_source): Likewise.
169         * source.c (open_source_file): Return scoped_fd.
170         (get_filename_and_charpos): Update.
171         (print_source_lines_base): Update.  Use scoped_fd::to_file.
172         (forward_search_command): Likewise.
173         (reverse_search_command): Likewise.
174         (find_and_open_source): Return scoped_fd.
175         * tui/tui-source.c (tui_set_source_content): Update.  Use
176         gdb_file_up.
177
178 2018-11-09  John Baldwin  <jhb@FreeBSD.org>
179
180         * minsyms.c (minimal_symbol_reader::install): Fix unsigned
181         overflow.
182
183 2018-11-09  Hafiz Abid Qadeer  <abidh@codesourcery.com>
184
185         * configure: Regenerate.
186
187 2018-11-09  Tom de Vries  <tdevries@suse.de>
188
189         * symtab.c (symbol_set_names): Call symbol_find_demangled_name
190         unconditionally, to set the language of the symbol.  Manage freeing
191         returned pointer using gdb::unique_xmalloc_ptr.
192
193 2018-11-08  Tom Tromey  <tom@tromey.com>
194
195         * record.c (require_record_target): Upper-case "<TAB>".
196
197 2018-11-08  Tom Tromey  <tom@tromey.com>
198
199         * python/lib/gdb/command/pretty_printers.py
200         (InfoPrettyPrinter.invoke): Don't indent "objfile" heading.
201
202 2018-11-08  Tom Tromey  <tom@tromey.com>
203
204         PR gdb/23555:
205         PR gdb/23838:
206         * target.h (target_supports_terminal_ours): Return bool.
207         * target.c (target_supports_terminal_ours): Handle case where
208         current_top_target returns nullptr.  Return bool.
209
210 2018-11-08  Joel Brobecker  <brobecker@adacore.com>
211
212         * aarch64-tdep.c (aapcs_is_vfp_call_or_return_candidate_1):
213         return the correct count for potential HFAs.
214
215 2018-11-08  Jan Beulich  <jbeulich@suse.com>
216
217         * i387-tdep.c (i387_supply_xsave): Split handling of
218         X86_XSTATE_ZMM_H and X86_XSTATE_ZMM.
219         (i387_collect_xsave): Likewise.
220
221 2018-11-08  Andrew Burgess  <andrew.burgess@embecosm.com>
222
223         * riscv-tdep.c (riscv_insn::decode): Update header comment.
224         (riscv_frame_this_id): Catch errors thrown while building the
225         frame cache, leave the frame id as the default, which is the outer
226         frame id.
227
228 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
229
230         * ada-lang.c (read_atcb): Only set task_info->called_task if
231         task_info->state == Entry_Caller_Sleep.
232         (print_ada_task_info): Do not check task_info->state before
233         checking task_info->called_task.
234         (info_task): Likewise.
235
236 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
237
238         * ada-tasks.c (read_atcb): Clear task_info before computing
239         the value of each of its fields.
240
241 2018-11-07  Andrew Burgess  <andrew.burgess@embecosm.com>
242
243         * dwarf2read.c (dwarf2_init_integer_type): Check for name being
244         NULL before dereferencing it.
245
246 2018-11-06  Tom de Vries  <tdevries@suse.de>
247
248         * linux-tdep.c (linux_vsyscall_range_raw): Use xmalloc to allocate
249         program headers.
250
251 2018-11-06  Max Filippov  <jcmvbkbc@gmail.com>
252
253         * configure.tgt (xtensa*-*-linux*): Change to xtensa*-*-*linux*
254         so that it applies to uclinux as well.
255
256 2018-11-06  Marius Muench  <marius.muench@eurecom.fr>
257
258         * arm-tdep.c (arm_scan_prologue): Don't dereference FP reg
259         when on AAPCS.
260
261 2018-11-06  John Baldwin  <jhb@FreeBSD.org>
262
263         * riscv-fbsd-nat.c (getregs_supplies): Return true for
264         RISCV_CSR_SSTATUS_REGNUM.
265
266 2018-11-04  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
267
268         * source.c (open_source_file): Fix leak by transferring the
269         current s->fullname to the unique_xmalloc_ptr fullname given
270         to find_and_open_source.
271
272 2018-11-04  Tom Tromey  <tom@tromey.com>
273
274         * varobj.c (install_default_visualizer): Update.
275         * python/python-internal.h (gdbpy_get_varobj_pretty_printer):
276         Return gdbpy_ref.
277         * python/py-prettyprint.c (search_pp_list): Return gdbpy_ref.
278         (find_pretty_printer_from_progspace)
279         (find_pretty_printer_from_gdb, find_pretty_printer)
280         (gdbpy_get_varobj_pretty_printer): Return gdbpy_ref.
281         (gdbpy_get_varobj_pretty_printer, gdbpy_default_visualizer):
282         Update.
283
284 2018-11-04  Tom Tromey  <tom@tromey.com>
285
286         * python/python.c (gdbpy_parameter_value): Update.
287         * python/python-internal.h (python_string_to_unicode)
288         (python_string_to_target_python_string)
289         (host_string_to_python_string): Return gdbpy_ref.
290         * python/py-utils.c (python_string_to_unicode)
291         (unicode_to_encoded_python_string)
292         (unicode_to_target_python_string)
293         (python_string_to_target_string)
294         (python_string_to_target_python_string): Return gdbpy_ref.
295         (python_string_to_host_string): Update.
296         (host_string_to_python_string): Return gdbpy_ref.
297         * python/py-symtab.c (stpy_get_filename, stpy_get_producer)
298         (stpy_fullname): Update.
299         * python/py-progspace.c (pspy_get_filename, pspy_solib_name):
300         Update.
301         * python/py-prettyprint.c (print_string_repr): Update.
302         * python/py-objfile.c (objfpy_get_filename, objfpy_get_username)
303         (objfpy_get_build_id): Update.
304         * python/py-breakpoint.c (bppy_get_location)
305         (bppy_get_expression, bppy_get_condition, bppy_get_commands):
306         Update.
307
308 2018-11-04  Tom Tromey  <tom@tromey.com>
309
310         * python/python-internal.h (gdb_py_object_from_longest)
311         (gdb_py_object_from_ulongest): Return gdbpy_ref.
312         * python/py-value.c (valpy_int): Update.
313         * python/py-utils.c (gdb_py_object_from_longest): Return
314         gdbpy_ref.
315         (gdb_py_object_from_ulongest): Likewise.
316         * python/py-type.c (typy_get_alignof): Update.
317         * python/py-linetable.c (ltpy_get_all_source_lines)
318         (ltpy_entry_get_line, ltpy_entry_get_pc): Update.
319         * python/py-block.c (blpy_get_start, blpy_get_end): Update.
320
321 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
322
323         * ada-lang.c (_initialize_ada_language): Fix typo.
324
325 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
326
327         * language.c (type): Remove.
328         (_initialize_language): Remove assignment to type.
329
330 2018-11-02  Joel Brobecker  <brobecker@adacore.com>
331
332         * aarch64-ravenscar-thread.h, aarch64-ravenscar-thread.c: New files.
333         * aarch64-tdep.c: #include "aarch64-ravenscar-thread.h".
334         (aarch64_gdbarch_init): Add call to register_aarch64_ravenscar_ops.
335         * Makefile.in (ALL_64_TARGET_OBS): Add aarch64-ravenscar-thread.o.
336         (HFILES_NO_SRCDIR): Add aarch64-ravenscar-thread.h.
337         (ALLDEPFILES): Add aarch64-ravenscar-thread.c.
338         * configure.tgt (cpu_obs) [aarch64*-*-*]: Add ravenscar-thread.o
339         and aarch64-ravenscar-thread.o.
340         * NEWS: Add entry documenting Ravenscar tasking support
341         on AArch64 ELF.
342
343 2018-11-02  Matthew Malcomson  <matthew.malcomson@arm.com>
344
345         * symtab.c (info_functions_command): Initialize quiet flag.
346         * stack.c (info_args_command): Likewise.
347
348 2018-11-01  Jim Wilson  <jimw@sifive.com>
349
350         * riscv-tdep.c (riscv_breakpoint_kind_from_pc): New local unaligned_p.
351         Set if pcptr if unaligned.  Return 2 if unaligned_p true.  Update
352         debugging messages.
353
354 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
355
356         * ada-lang.c (ada_watch_location_expression): New function.
357         (ada_language_defn): Set la_watch_location_expression to
358         ada_watch_location_expression.
359
360 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
361
362         * print-utils.c (int_string): Remove unnecessary trailing spaces.
363
364 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
365
366         * rs6000-tdep.c (skip_prologue): Fix potential negative left
367         shifting.
368
369 2018-11-01  Jerome Guitton  <guitton@adacore.com>
370             Joel Brobecker  <brobecker@adacore.com>
371
372         * defs.h (enum gdb_osabi): Add GDB_OSABI_PIKEOS.
373         * osabi.c (gdb_osabi_names): Add name for GDB_OSABI_PIKEOS.
374         * arm-pikeos-tdep.c: New file.
375         * configure.tgt: Add arm-pikeos-tdep.o to the case of ARM
376         embedded system.
377         * Makefile.in (ALL_TARGET_OBS): Add arm-pikeos-tdep.o.
378
379 2018-11-01  Simon Marchi  <simon.marchi@ericsson.com>
380
381         * common/pathstuff.c (get_standard_temp_dir): New.
382         * common/pathstuff.h (get_standard_temp_dir): New.
383         * config.in: Re-generate.
384         * configure: Re-generate.
385         * configure.ac: Don't check for mkdtemp.
386         * gnulib/aclocal-m4-deps.mk: Re-generate.
387         * gnulib/aclocal.m4: Re-generate.
388         * gnulib/config.in: Re-generate.
389         * gnulib/configure: Re-generate.
390         * gnulib/import/Makefile.am: Re-generate.
391         * gnulib/import/Makefile.in: Re-generate.
392         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
393         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
394         * gnulib/import/m4/mkdtemp.m4: New file.
395         * gnulib/import/mkdtemp.c: New file.
396         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES):
397         Add mkdtemp module.
398         * unittests/mkdir-recursive-selftests.c (test): Use
399         get_standard_temp_dir.
400         (_initialize_mkdir_recursive_selftests): Remove HAVE_MKDTEMP
401         ifdef.
402         * compile/compile.c (get_compile_file_tempdir): Likewise.
403
404 2018-11-01  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
405
406         * rs6000-aix-tdep.c: Include "trad-frame.h" and "frame-unwind.h".
407         (SIG_FRAME_LR_OFFSET64): New define.
408         (SIG_FRAME_FP_OFFSET64): New define.
409         (aix_sighandle_frame_cache): New Function.
410         (aix_sighandle_frame_this_id): New Function.
411         (aix_sighandle_frame_prev_register): New Function.
412         (aix_sighandle_frame_sniffer): New Function.
413         (aix_sighandle_frame_unwind): New global variable.
414         (rs6000_aix_init_osabi): Install new frame unwinder.
415
416 2018-10-31  Sergio Durigan Junior  <sergiodj@redhat.com>
417
418         PR gdb/23835
419         * common/common-defs.h: Don't redefine _FORTIFY_SOURCE if it's
420         already defined.
421
422 2018-10-31  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
423
424         * ppc-linux-nat.c: Include nat/linux-ptrace.h.
425
426 2018-10-31  Andrew Burgess  <andrew.burgess@embecosm.com>
427
428         * dwarf2read.c (struct dwarf2_cu): Add producer_is_icc field.
429         (producer_is_icc): New function.
430         (check_producer): Set producer_is_icc field on dwarf2_cu.
431         (dwarf2_init_integer_type): New function.
432         (read_base_type): Call dwarf2_init_integer_type instead of
433         init_integer_type in all cases.
434         (dwarf2_cu::dwarf2_cu): Initialise producer_is_icc field.
435         * valprint.c (maybe_negate_by_bytes): Add an assertion that the
436         LEN is greater than 0.
437
438 2018-10-30  Tom Tromey  <tom@tromey.com>
439
440         * main.c (captured_main_1): Check return value of bfd_init.
441
442 2018-10-29  Sergio Durigan Junior  <sergiodj@redhat.com>
443
444         * common/offset-type.h (DEFINE_OFFSET_REL_OP): Delete.
445         Adjust comments.
446
447 2018-10-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
448
449         * procfs.c: Include common/pathstuff.h.
450
451 2018-10-28  Andrew Burgess  <andrew.burgess@embecosm.com>
452
453         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
454         Add missing braces.  No functional change.
455
456 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
457
458         * macrocmd.c (info_macro_command): Use report_unrecognized_option_error
459         to report a bad option and fix indentation.
460         * demangle.c (demangle_command): Use report_unrecognized_option_error
461         to report a bad option and correctly report the bad option.
462
463 2018-10-27  Tom Tromey  <tom@tromey.com>
464
465         PR cli/23364:
466         * darwin-nat.c (copied_shell): New global.
467         (may_have_sip): Rename from should_disable_startup_with_shell.
468         (copy_shell_to_cache, maybe_cache_shell): New functions.
469         (darwin_nat_target::create_inferior): Update.  Use
470         copied_shell.
471
472 2018-10-27  Tom Tromey  <tom@tromey.com>
473
474         * unittests/scoped_fd-selftests.c (test_to_file): New function.
475         (run_tests): Call test_to_file.
476         * dwarf-index-write.c (write_psymtabs_to_index): Do not reopen
477         temporary files.
478         * common/scoped_fd.h (scoped_fd::to_file): New method.
479
480 2018-10-27  Tom Tromey  <tom@tromey.com>
481
482         * unittests/scoped_mmap-selftests.c (test_normal): Use
483         gdb_mkostemp_cloexec.
484         * unittests/scoped_fd-selftests.c (test_destroy, test_release):
485         Use gdb_mkostemp_cloexec.
486         * gnulib/aclocal-m4-deps.mk, gnulib/aclocal.m4,
487         gnulib/config.in, gnulib/configure,
488         gnulib/import/Makefile.am, gnulib/import/Makefile.in,
489         gnulib/import/m4/gnulib-cache.m4,
490         gnulib/import/m4/gnulib-comp.m4: Update.
491         * gnulib/import/m4/mkostemp.m4: New file.
492         * gnulib/import/m4/mkstemp.m4: Remove.
493         * gnulib/import/mkostemp.c: New file.
494         * gnulib/import/mkstemp.m4: Remove.
495         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Remove
496         mkstemp, add mkostemp.  Apply new patch.
497         * gnulib/import/stdlib.in.h: Apply patch.
498         * gnulib/patches/0002-mkostemp-mkostemps-Fix-compilation-error-in-C-mode-o.patch:
499         New file.
500         * dwarf-index-write.c (write_psymtabs_to_index): Use
501         gdb_mkostemp_cloexec.
502         * common/filestuff.h (gdb_mkostemp_cloexec): New function.
503
504 2018-10-27  Tom Tromey  <tom@tromey.com>
505
506         * unittests/mkdir-recursive-selftests.c: New file.
507         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
508         unittests/mkdir-recursive-selftests.c.
509         * dwarf-index-cache.c (mkdir_recursive): Move to
510         common/filestuff.c.
511         (index_cache::store): Check return value of mkdir_recursive.
512         (create_dir_and_check, test_mkdir_recursive): Move to new file.
513         (_initialize_index_cache): Don't register test.
514         * common/filestuff.h (mkdir_recursive): Declare.
515         * common/filestuff.c (mkdir_recursive): Move from
516         dwarf-index-cache.c.  Return bool.
517
518 2018-10-27  Tom Tromey  <tom@tromey.com>
519
520         * dwarf-index-write.c (write_psymtabs_to_index): Move
521         make_temp_filename to common/pathstuff.c.
522         * common/pathstuff.h (make_temp_filename): Declare.
523         * common/pathstuff.c (make_temp_filename): New function, moved
524         from dwarf-index-write.c.
525
526 2018-10-27  Tom Tromey  <tom@tromey.com>
527
528         * procfs.c (procfs_target::create_inferior): Use get_shell.
529         * cli/cli-cmds.c (shell_escape): Use get_shell.
530         * windows-nat.c (windows_nat_target::create_inferior): Use
531         get_shell.
532         * common/pathstuff.c (get_shell): New function.
533         * nat/fork-inferior.c (SHELL_FILE, get_startup_shell): Remove.
534         (fork_inferior): Use get_shell.
535         * common/pathstuff.h (get_shell): Declare.
536
537 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
538
539         * NEWS: Mention changes to 'info [args|functions|locals|variables]'
540
541 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
542
543         * stack.c (print_variable_and_value_data): Add preg and treg.
544         (print_frame_local_vars): Add quiet, regexp and t_regexp arguments,
545         and update callers.
546         (print_frame_arg_vars): Likewise.
547         (prepare_reg): New function.
548         (info_locals_command): Extract info print args and use them.
549         (info_args_command): Likewise.
550         (_initialize_stack): Modify on-line help.
551         * symtab.c (treg_matches_sym_type_name): New function.
552         (search_symbols): New arg t_regexp.
553         (symtab_symbol_info): New args quiet, regexp, t_regexp.
554         (info_variables_command): Extract info print args and use them.
555         (info_functions_command): Likewise.
556         (info_types_command): Update call to symtab_symbol_info.
557         (_initialize_symtab): Modify on-line help.
558         * symtab.h (treg_matches_sym_type_name): New function.
559         (search_symbols): New t_regexp arg.
560
561 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
562
563         * cli-utils.c (extract_arg_maybe_quoted): New function.
564         (extract_info_print_args): New function.
565         (info_print_args_help): New function.
566         (report_unrecognized_option_error): New function.
567         * cli-utils.h (extract_arg_maybe_quoted): New function.
568         (extract_info_print_args): New function.
569         (info_print_args_help): New function.
570         (report_unrecognized_option_error): New function.
571
572 2018-10-26  Tom Tromey  <tom@tromey.com>
573
574         * dwarf2read.c (recursively_compute_inclusions): Use std::vector.
575         (compute_compunit_symtab_includes): Update.
576         * symtab.h: (symtab_ptr): Remove typedef.  Don't define a VEC.
577         (compunit_symtab_ptr): Likewise.
578
579 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
580
581         * fbsd-tdep.c (fbsd_print_auxv_entry): Only use
582         default_print_auxv_entry for specific tag values.
583
584 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
585
586         * fbsd-tdep.c (fbsd_print_auxv_entry): Handle AT_FREEBSD_HWCAP2.
587
588 2018-10-26  Jim Wilson  <jimw@sifive.com>
589
590         * riscv-linux-tdep.c: Include tramp-frame.h and trad-frame.h.
591         (riscv_linux_sigframe_init): Declare.
592         (RISCV_INST_LI_A7_SIGRETURN, RISCV_INT_ECALL): New.
593         (riscv_linux_sigframe): New.
594         (SIGFRAME_SIGINFO_SIZE, UCONTEXT_MCONTEXT_OFFSET): New.
595         (riscv_linux_sigframe_init): Define.
596         (riscv_linux_init_abi): Call tramp_frame_prepend_unwinder.
597
598         * riscv-tdep.c (riscv_isa_xlen): Refer to riscv-tdep.h comment.
599         (riscv_isa_flen): Likewise.  Drop static.
600         * riscv-tdep.h (riscv_isa_xlen): Move riscv-tdep.c comment to here.
601         (riscv_isa_flen): Likewise.  Declare.
602
603 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
604             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
605
606         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_htm_vsx32l)
607         (tdesc_powerpc_isa207_htm_vsx64l): Declare.
608         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TM_SPRREGSET)
609         (PPC32_LINUX_SIZEOF_CGPRREGSET, PPC64_LINUX_SIZEOF_CGPRREGSET)
610         (PPC_LINUX_SIZEOF_CFPRREGSET, PPC_LINUX_SIZEOF_CVMXREGSET)
611         (PPC_LINUX_SIZEOF_CVSXREGSET, PPC_LINUX_SIZEOF_CPPRREGSET)
612         (PPC_LINUX_SIZEOF_CDSCRREGSET, PPC_LINUX_SIZEOF_CTARREGSET):
613         Define.
614         (struct ppc_linux_features) <htm>: New field.
615         (ppc_linux_no_features): Add initializer for htm field.
616         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
617         new tdescs.
618         * nat/ppc-linux.h (PPC_FEATURE2_HTM, NT_PPC_TM_CGPR)
619         (NT_PPC_TM_CFPR, NT_PPC_TM_CVMX, NT_PPC_TM_CVSX)
620         (NT_PPC_TM_SPR, NT_PPC_TM_CTAR, NT_PPC_TM_CPPR, NT_PPC_TM_CDSCR):
621         Define if not already defined.
622         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-htm-vsx32l
623         and rs6000/powerpc-isa207-htm-vsx64l.
624         (XMLTOC): Add rs6000/powerpc-isa207-htm-vsx32l.xml and
625         rs6000/powerpc-isa207-htm-vsx64l.xml.
626         * features/rs6000/power-htm-spr.xml: New file.
627         * features/rs6000/power-htm-core.xml: New file.
628         * features/rs6000/power64-htm-core.xml: New file.
629         * features/rs6000/power-htm-fpu.xml: New file.
630         * features/rs6000/power-htm-altivec.xml: New file.
631         * features/rs6000/power-htm-vsx.xml: New file.
632         * features/rs6000/power-htm-ppr.xml: New file.
633         * features/rs6000/power-htm-dscr.xml: New file.
634         * features/rs6000/power-htm-tar.xml: New file.
635         * features/rs6000/powerpc-isa207-htm-vsx32l.xml: New file.
636         * features/rs6000/powerpc-isa207-htm-vsx64l.xml: New file.
637         * features/rs6000/powerpc-isa207-htm-vsx32l.c: Generate.
638         * features/rs6000/powerpc-isa207-htm-vsx64l.c: Generate.
639         * regformats/rs6000/powerpc-isa207-htm-vsx32l.dat: Generate.
640         * regformats/rs6000/powerpc-isa207-htm-vsx64l.dat: Generate.
641         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
642         fetch_regset with HTM regsets.
643         (store_register, store_ppc_registers): Call store_regset with HTM
644         regsets.
645         (ppc_linux_nat_target::read_description): Set htm field in the
646         features struct if needed.
647         * ppc-linux-tdep.c: Include
648         features/rs6000/powerpc-isa207-htm-vsx32l.c and
649         features/rs6000/powerpc-isa207-htm-vsx64l.c.
650         (ppc32_regmap_tm_spr, ppc32_regmap_cgpr, ppc64_le_regmap_cgpr)
651         (ppc64_be_regmap_cgpr, ppc32_regmap_cfpr, ppc32_le_regmap_cvmx)
652         (ppc32_be_regmap_cvmx, ppc32_regmap_cvsx, ppc32_regmap_cppr)
653         (ppc32_regmap_cdscr, ppc32_regmap_ctar): New globals.
654         (ppc32_linux_tm_sprregset, ppc32_linux_cgprregset)
655         (ppc64_be_linux_cgprregset, ppc64_le_linux_cgprregset)
656         (ppc32_linux_cfprregset, ppc32_le_linux_cvmxregset)
657         (ppc32_be_linux_cvmxregset, ppc32_linux_cvsxregset)
658         (ppc32_linux_cpprregset, ppc32_linux_cdscrregset)
659         (ppc32_linux_ctarregset): New globals.
660         (ppc_linux_cgprregset, ppc_linux_cvmxregset): New functions.
661         (ppc_linux_collect_core_cpgrregset): New function.
662         (ppc_linux_iterate_over_regset_sections): Call back with the htm
663         regsets.
664         (ppc_linux_core_read_description): Check if the tm spr section is
665         present and set htm in the features struct.
666         (_initialize_ppc_linux_tdep): Call
667         initialize_tdesc_powerpc_isa207_htm_vsx32l and
668         initialize_tdesc_powerpc_isa207_htm_vsx64l.
669         * ppc-linux-tdep.h (ppc_linux_cgprregset, ppc_linux_cvmxregset):
670         Declare.
671         (ppc32_linux_tm_sprregset, ppc32_linux_cfprregset)
672         (ppc32_linux_cvsxregset, ppc32_linux_cpprregset)
673         (ppc32_linux_cdscrregset, ppc32_linux_ctarregset): Declare.
674         * ppc-tdep.h (struct gdbarch_tdep) <have_htm_spr, have_htm_core>:
675         New fields.
676         <have_htm_fpu, have_htm_altivec, have_htm_vsx>:
677         Likewise.
678         <ppc_cppr_regnum, ppc_cdscr_regnum, ppc_ctar_regnum>: Likewise.
679         <ppc_cdl0_regnum, ppc_cvsr0_regnum, ppc_cefpr0_regnum>: Likewise.
680         (enum) <PPC_TFHAR_REGNUM, PPC_TEXASR_REGNUM, PPC_TFIAR_REGNUM>:
681         New enum fields.
682         <PPC_CR0_REGNUM, PPC_CCR_REGNUM, PPC_CXER_REGNUM>: Likewise.
683         <PPC_CLR_REGNUM, PPC_CCTR_REGNUM, PPC_CF0_REGNUM>: Likewise.
684         <PPC_CFPSCR_REGNUM, PPC_CVR0_REGNUM, PPC_CVSCR_REGNUM>: Likewise.
685         <PPC_CVRSAVE_REGNUM, PPC_CVSR0_UPPER_REGNUM>: Likewise.
686         <PPC_CPPR_REGNUM, PPC_CDSCR_REGNUM>: Likewise.
687         <PPC_CTAR_REGNUM>: Likewise.
688         (PPC_IS_TMSPR_REGNUM, PPC_IS_CKPTGP_REGNUM, PPC_IS_CKPTFP_REGNUM)
689         (PPC_IS_CKPTVMX_REGNUM, PPC_IS_CKPTVSX_REGNUM): Define.
690         * rs6000-tdep.c (IS_CDFP_PSEUDOREG, IS_CVSX_PSEUDOREG)
691         (IS_CEFP_PSEUDOREG): Define.
692         (rs6000_register_name): Hide the upper halves of checkpointed VSX
693         registers.  Return names for the checkpointed DFP, VSX, and EFP
694         pseudo registers.
695         (rs6000_pseudo_register_type): Remove initial assert and raise an
696         internal error in the else clause instead.  Return types for the
697         checkpointed DFP, VSX, and EFP pseudo registers.
698         (dfp_pseudo_register_read, dfp_pseudo_register_write): Handle
699         checkpointed DFP pseudo registers.
700         (vsx_pseudo_register_read, vsx_pseudo_register_write): Handle
701         checkpointed VSX pseudo registers.
702         (efp_pseudo_register_read, efp_pseudo_register_write): Rename
703         from efpr_pseudo_register_read and
704         efpr_pseudo_register_write.  Handle checkpointed EFP pseudo
705         registers.
706         (rs6000_pseudo_register_read, rs6000_pseudo_register_write):
707         Handle checkpointed DFP, VSX, and EFP registers.
708         (dfp_ax_pseudo_register_collect, vsx_ax_pseudo_register_collect)
709         (efp_ax_pseudo_register_collect): New functions.
710         (rs6000_ax_pseudo_register_collect): Move DFP, VSX and EFP pseudo
711         register logic to new functions.  Handle checkpointed DFP, VSX,
712         and EFP pseudo registers.
713         (rs6000_gdbarch_init): Look for and validate the htm features.
714         Include checkpointed DFP, VSX and EFP pseudo-registers.
715         * NEWS: Mention access to PPR, DSCR, TAR, EBB/PMU registers and
716         HTM registers.
717
718 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
719
720         * rs6000-tdep.c (rs6000_gdbarch_init): Reject tdescs with vsx but
721         without altivec or fpu.
722
723 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
724             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
725
726         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_EBBREGSET)
727         (PPC_LINUX_SIZEOF_PMUREGSET): Declare.
728         * nat/ppc-linux.h (PPC_FEATURE2_EBB, NT_PPC_EBB, NT_PPC_PMU):
729         Define if not already defined.
730         * features/rs6000/power-ebb.xml: New file.
731         * features/rs6000/power-linux-pmu.xml: New file.
732         * features/rs6000/powerpc-isa207-vsx32l.xml: Include ebb and pmu
733         features.
734         * features/rs6000/powerpc-isa207-vsx64l.xml: Likewise.
735         * features/rs6000/powerpc-isa207-vsx32l.c: Re-generate.
736         * features/rs6000/powerpc-isa207-vsx64l.c: Re-generate.
737         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Re-generate.
738         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Re-generate.
739         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
740         fetch_regset with ebb and pmu regsets.
741         (store_register, store_ppc_registers): Call store_regset with ebb
742         and pmu regsets.
743         (ppc_linux_nat_target::read_description): Set isa207 field in the
744         features struct if ebb and pmu are avaiable.
745         * ppc-linux-tdep.c (ppc32_regmap_ebb, ppc32_regmap_pmu)
746         (ppc32_linux_ebbregset, ppc32_linux_pmuregset): New globals.
747         (ppc_linux_iterate_over_regset_sections): Call back with the ebb
748         and pmu regsets.
749         (ppc_linux_core_read_description): Check if the pmu section is
750         present and set isa207 in the features struct.
751         * ppc-linux-tdep.h (ppc32_linux_ebbregset)
752         (ppc32_linux_pmuregset): Declare.
753         * ppc-tdep.h (struct gdbarch_tdep) <ppc_mmcr0_regnum>: New field.
754         <ppc_mmcr2_regnum, ppc_siar_regnum, ppc_sdar_regnum>: New fields.
755         <ppc_sier_regnum>: New field.
756         (enum): <PPC_BESCR_REGNUM, PPC_EBBHR_REGNUM, PPC_EBBRR_REGNUM>:
757         New enum values.
758         <PPC_MMCR0_REGNUM, PPC_MMCR2_REGNUM, PPC_SIAR_REGNUM>: New enum
759         values.
760         <PPC_SDAR_REGNUM, PPC_SIER_REGNUM>: New enum values.
761         (PPC_IS_EBB_REGNUM, PPC_IS_PMU_REGNUM): Define.
762         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate the
763         ebb and pmu features.
764
765 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
766             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
767
768         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_vsx32l)
769         (tdesc_powerpc_isa207_vsx64l): Declare.
770         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TARREGSET): Define.
771         (struct ppc_linux_features) <isa207>: New field.
772         (ppc_linux_no_features): Add initializer for isa207 field.
773         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
774         new tdescs.
775         * nat/ppc-linux.h (PPC_FEATURE2_ARCH_2_07, PPC_FEATURE2_TAR)
776         (NT_PPC_TAR): Define if not already defined.
777         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-vsx32l and
778         rs6000/powerpc-isa207-vsx64l.
779         (XMLTOC): Add rs6000/powerpc-isa207-vsx32l.xml and
780         rs6000/powerpc-isa207-vsx64l.xml.
781         * features/rs6000/power-tar.xml: New file.
782         * features/rs6000/powerpc-isa207-vsx32l.xml: New file.
783         * features/rs6000/powerpc-isa207-vsx64l.xml: New file.
784         * features/rs6000/powerpc-isa207-vsx32l.c: Generate.
785         * features/rs6000/powerpc-isa207-vsx64l.c: Generate.
786         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Generate.
787         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Generate.
788         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
789         fetch_regset with the TAR regset.
790         (store_register, store_ppc_registers): Call store_regset with the
791         TAR regset.
792         (ppc_linux_nat_target::read_description): Set isa207 field in the
793         features struct if needed.
794         * ppc-linux-tdep.c: Include
795         features/rs6000/powerpc-isa207-vsx32l.c and
796         features/rs6000/powerpc-isa207-vsx64l.c.
797         (ppc32_regmap_tar, ppc32_linux_tarregset): New globals.
798         (ppc_linux_iterate_over_regset_sections): Call back with the tar
799         regset.
800         (ppc_linux_core_read_description): Check if the tar section is
801         present and set isa207 in the features struct.
802         (_initialize_ppc_linux_tdep): Call
803         initialize_tdesc_powerpc_isa207_vsx32l and
804         initialize_tdesc_powerpc_isa207_vsx64l.
805         * ppc-linux-tdep.h (ppc32_linux_tarregset): Declare.
806         * ppc-tdep.h (gdbarch_tdep) <ppc_tar_regnum>: New field.
807         (enum) <PPC_TAR_REGNUM>: New enum value.
808         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate tar
809         feature.
810         (ppc_process_record_op31): Record changes to TAR.
811
812 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
813             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
814
815         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa205_ppr_dscr_vsx32l)
816         (tdesc_powerpc_isa205_ppr_dscr_vsx64l): Declare.
817         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_PPRREGSET)
818         (PPC_LINUX_SIZEOF_DSCRREGSET): Define.
819         (struct ppc_linux_features) <ppr_dscr>: New field.
820         (ppc_linux_no_features): Add initializer for ppr_dscr field.
821         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
822         new tdescs.
823         * nat/ppc-linux.h (PPC_FEATURE2_DSCR, NT_PPC_PPR, NT_PPC_DSCR):
824         Define if not already defined.
825         * features/Makefile (WHICH): Add
826         rs6000/powerpc-isa205-ppr-dscr-vsx32l and
827         rs6000/powerpc-isa205-ppr-dscr-vsx64l.
828         (XMLTOC): Add rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml and
829         rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml.
830         * features/rs6000/power-dscr.xml: New file.
831         * features/rs6000/power-ppr.xml: New file.
832         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml: New file.
833         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml: New file.
834         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c: Generate.
835         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c: Generate.
836         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx32l.dat: Generate.
837         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx64l.dat: Generate.
838         * ppc-linux-nat.c: Include <sys/uio.h>.
839         (fetch_regset, store_regset, check_regset): New functions.
840         (fetch_register, fetch_ppc_registers): Call fetch_regset with
841         DSCR and PPR regsets.
842         (store_register, store_ppc_registers): Call store_regset with
843         DSCR and PPR regsets.
844         (ppc_linux_get_hwcap2): New function.
845         (ppc_linux_nat_target::read_description): Call
846         ppc_linux_get_hwcap2 and check_regset, set ppr_dscr field in the
847         features struct if needed.
848         * ppc-linux-tdep.c: Include
849         features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c and
850         features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c.
851         (ppc32_regmap_ppr, ppc32_regmap_dscr, ppc32_linux_pprregset)
852         (ppc32_linux_dscrregset): New globals.
853         (ppc_linux_iterate_over_regset_sections): Call back with the ppr
854         and dscr regsets.
855         (ppc_linux_core_read_description): Check if the ppr and dscr
856         sections are present and set ppr_dscr in the features struct.
857         (_initialize_ppc_linux_tdep): Call
858         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx32l and
859         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx64l.
860         * ppc-linux-tdep.h (ppc32_linux_pprregset)
861         (ppc32_linux_dscrregset): Declare.
862         * ppc-tdep.h (struct gdbarch_tdep) <ppc_ppr_regnum>: New field.
863         <ppc_dscr_regnum>: New field.
864         (enum) <PPC_PPR_REGNUM, PPC_DSCR_REGNUM>: New enum values.
865         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate ppr
866         and dscr features.
867         (ppc_process_record_op31): Record changes to PPR and DSCR.
868
869 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
870
871         * rs6000-tdep.c (rs6000_gdbarch_init): Replace line wrapping by a
872         second initializer line for the have_* variables.  Initialize
873         have_fpu to 0 instead of 1.
874
875 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
876
877         * arch/ppc-linux-common.c (ppc_linux_match_description):
878         Parenthesize tdesc assignements and indent them properly.
879
880 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
881
882         * ppc-linux-nat.c (fetch_register): Change if statement to else
883         if.
884         (store_register): Likewise.
885
886 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
887
888         * rs6000-tdep.c: Remove reggroups.h include.
889         (rs6000_pseudo_register_reggroup_p): Remove.
890         (rs6000_gdbarch_init): Remove call to
891         set_tdesc_pseudo_register_reggroup_p.
892
893 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
894
895         * reggroups.c (default_register_reggroup_p): Return true for
896         decfloat registers and float_reggroup.
897
898 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
899
900         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
901         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
902         ppc_linux_collect_vrregset by regcache_collect_regset.
903
904 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
905
906         * linux-tdep.c (linux_collect_regset_section_cb): Use
907         std::vector<gdb_byte> instead of char * and malloc for buf.
908         Remove xfree.
909
910 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
911
912         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
913         symtab_start instead of always using language_unknown.
914
915 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
916
917         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
918         READ_P parameter, catch and ignore register access errors from
919         either the old or new MISA location.
920         (riscv_has_feature): Update call to riscv_read_misa_reg.
921
922 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
923
924         * python/py-function.c (convert_values_to_python): Return
925         gdbpy_ref<>.  Add header comment.
926         (fnpy_call): Adjust.
927
928 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
929
930         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
931         (cmdpy_completer_handle_brkchars): Adjust.
932         (cmdpy_completer): Adjust.
933
934 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
935
936         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
937         Pass correct regnum to raw_supply_zeroed.
938
939 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
940
941         * regcache.c (cooked_read_test): Add CSKY to the list of
942         architectures with a save_reggroup
943
944 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
945
946         PR gdb/23368
947         * infrun.c (follow_exec): In the follow_exec_mode_new case,
948         transfer terminal state from old new new inferior.
949         * terminal.h (swap_terminal_info): New function.
950         * inflow.c (swap_terminal_info): New function.
951
952 2018-10-23  Tom Tromey  <tom@tromey.com>
953
954         * record-btrace.c (get_thread_current_frame_id): Rename from
955         get_thread_current_frame.  Return a frame_id.
956         (record_btrace_start_replaying): Update.
957
958 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
959
960         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
961         for CSRs.
962
963 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
964
965         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
966         have_nonsteppable_watchpoint attribute to 1.
967
968 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
969
970         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
971         register names.
972         (struct register_alias): Rename to...
973         (struct riscv_register_alias): ...this, and update comment.
974         (riscv_register_aliases): Update type, and alias names.  Remove
975         CSR names from this list.
976         (riscv_register_name): Use riscv_gdb_reg_names for int and float
977         register names.  Add an extra assertion.
978         (riscv_is_regnum_a_named_csr): New function.
979         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
980
981 2018-10-23  John Darrington  <john@darrington.wattle.id.au>
982
983         * configure.tgt: Add configuration for s12z.
984         * s12z-tdep.c:  New file.
985         * NEWS: Mention new target.
986
987 2018-10-22  Jim Wilson  <jimw@sifive.com>
988
989         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
990         FP reg smaller than FP reg size, and fill with -1 instead of 0.
991
992         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
993         (riscv_register_type): Use them.
994         (riscv_print_one_register_info): Handle union of floats same as float.
995         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
996         riscv_fpreg_q_type fields.
997
998 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
999
1000         * gdbarch.sh (gdbarch_num_cooked_regs): New.
1001         * gdbarch.h: Re-generate.
1002         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
1003         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
1004         * eval.c (evaluate_subexp_standard): Likewise.
1005         * findvar.c (value_of_register): Likewise.
1006         (value_of_register_lazy): Likewise.
1007         (address_from_register): Likewise.
1008         * frame.c (get_frame_register_bytes): Likewise.
1009         * gdbarch-selftests.c (register_to_value_test): Likewise.
1010         * h8300-tdep.c (h8300_register_type): Likewise.
1011         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
1012         (i386_svr4_reg_to_regnum): Likewise.
1013         * infcmd.c (default_print_registers_info): Likewise.
1014         (registers_info): Likewise.
1015         (print_vector_info): Likewise.
1016         (default_print_float_info): Likewise.
1017         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
1018         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
1019         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
1020         (mi_cmd_data_list_changed_registers): Likewise.
1021         (mi_cmd_data_list_register_values): Likewise.
1022         (mi_cmd_data_write_register_values): Likewise.
1023         (mi_cmd_trace_frame_collected): Likewise.
1024         * mips-tdep.c (print_gp_register_row): Likewise.
1025         (mips_print_registers_info): Likewise.
1026         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
1027         * regcache.c (init_regcache_descr): Likewise.
1028         (register_size): Likewise.
1029         (register_dump::dump): Likewise.
1030         (cooked_read_test): Likewise.
1031         (cooked_write_test): Likewise.
1032         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
1033         (rs6000_gdbarch_init): Likewise.
1034         * stabsread.c (stab_reg_to_regnum): Likewise.
1035         * stack.c (info_frame_command): Likewise.
1036         * target-descriptions.c (tdesc_register_name): Likewise.
1037         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
1038         * tui/tui-regs.c (tui_show_register_group): Likewise.
1039         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
1040         (user_reg_map_regnum_to_name): Likewise.
1041         (value_of_user_reg): Likewise.
1042         (maintenance_print_user_registers): Likewise.
1043         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
1044         (xtensa_register_name): Likewise.
1045         (xtensa_register_type): Likewise.
1046         (xtensa_reg_to_regnum): Likewise.
1047         (xtensa_pseudo_register_read): Likewise.
1048         (xtensa_pseudo_register_write): Likewise.
1049
1050 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
1051
1052         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
1053         correctly-sized buffer with raw_read.
1054         (amd64_pseudo_register_write): Use correctly-sized buffer for
1055         raw_read/raw_write.
1056
1057 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1058
1059         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
1060         in add_prefix_cmd of set print type.
1061
1062 2018-10-19  Tom Tromey  <tom@tromey.com>
1063
1064         PR tui/18388:
1065         * NEWS: Mention tabset deprecation.
1066         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
1067         (update_tab_width): New function.
1068         (tui_set_tab_width, tui_show_tab_width): New functions.
1069         (tui_set_tab_width_command): Use update_tab_width.
1070         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
1071         Add new "set tui tab-width" command.
1072         * tui/tui-source.c (tui_set_source_content): Update.
1073         * tui/tui-disasm.c (tui_set_disassem_content): Update.
1074         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
1075         Don't declare.
1076         (tui_tab_width): Declare.
1077         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
1078         (tui_set_default_tab_len): Remove.
1079
1080 2018-10-19  Tom Tromey  <tom@tromey.com>
1081
1082         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
1083         (key_is_backspace, tui_getc): Don't declare.
1084         * tui/tui-io.c (key_is_start_sequence): Now static.
1085         (key_is_end_sequence, key_is_backspace): Remove.
1086         (tui_getc): Now static.
1087
1088 2018-10-19  Tom Tromey  <tom@tromey.com>
1089
1090         * symfile.c (reread_symbols): Clear "static_links".
1091
1092 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
1093
1094         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
1095         define.
1096         (aarch64_linux_sigframe_init): Extra boundary checks.
1097
1098 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
1099
1100         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
1101         the possibly non-existent tdesc type 'vec128', but the type of raw
1102         register v16 instead.
1103
1104 2018-10-19  Gary Benson <gbenson@redhat.com>
1105
1106         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
1107
1108 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
1109
1110         PR cli/23785
1111         * cli/cli-dump.c (restore_binary_file): Check if "file" is
1112         NULL.
1113
1114 2018-10-17  Paul Koning  <paul_koning@dell.com>
1115
1116         * charset.c (convert_between_encodings): Fix unsigned overflow.
1117
1118 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
1119
1120         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
1121         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
1122         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
1123         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
1124         New functions.
1125         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
1126         and fbsd_info_proc_mappings_header.
1127         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
1128         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
1129         New.
1130
1131 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
1132
1133         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
1134         Solaris Maintainer.
1135
1136 2018-10-15  Tom Tromey  <tom@tromey.com>
1137
1138         * tui/tui.c (strcat_to_buf): Remove casts.
1139         * tui/tui-winsource.c (tui_show_source_line)
1140         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
1141         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
1142         * tui/tui-windata.c (tui_first_data_item_displayed)
1143         (tui_delete_data_content_windows, tui_erase_data_content)
1144         (tui_display_all_data, tui_display_data_from)
1145         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
1146         * tui/tui-win.c (tui_set_win_height)
1147         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
1148         casts.
1149         * tui/tui-win.c (tui_resize_all): Remove casts.
1150         (tui_scroll_backward_command, tui_set_focus)
1151         (tui_set_tab_width_command): Likewise.
1152         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
1153         * tui/tui-regs.c (tui_show_register_group): Remove cast.
1154         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
1155         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
1156         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
1157         Remove casts.
1158
1159 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
1160
1161         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
1162         AArch64/ARM maintainer.
1163
1164 2018-10-11  Gary Benson <gbenson@redhat.com>
1165
1166         * interps.h (interp::m_name): Make private and mutable.
1167         * interps.c (interp::~interp): Free m_name.
1168
1169 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
1170             Simon Marchi <simark@simark.ca>
1171
1172         * README (`configure' options): Add documentation for new
1173         "--enable-unit-tests" option.
1174         * acinclude.m4: Include "selftest.m4".
1175         * configure: Regenerate.
1176         * configure.ac: Use "GDB_AC_SELFTEST".
1177         * maint.c (maintenance_selftest): Update message informing
1178         that selftests have been disabled.
1179         (maintenance_info_selftests): Likewise.
1180         * selftest.m4: New file.
1181
1182 2018-10-10  Gary Benson <gbenson@redhat.com>
1183
1184         * remote.c (remote_target::remote_send_printf): Add
1185         missing va_end found by Coverity.
1186
1187 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
1188
1189         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
1190
1191 2018-10-09  Tom Tromey  <tom@tromey.com>
1192
1193         * configure: Rebuild.
1194         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
1195         * NEWS: Update --enable-ubsan documentation.
1196
1197 2018-10-09  Gary Benson <gbenson@redhat.com>
1198
1199         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
1200         found by Coverity.
1201
1202 2018-10-08  Tom Tromey  <tom@tromey.com>
1203
1204         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
1205         variable.
1206         (riscv_fbsd_init_abi): Likewise.
1207
1208 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
1209         * valops.c (value_struct_elt_for_reference): Rename local variable
1210         to work around the shadowing a previous local warning.
1211
1212 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1213
1214         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
1215         * NEWS: Mention new FreeBSD/riscv native configuration.
1216         * configure.host: Add riscv*-*-freebsd*.
1217         * configure.nat: Likewise.
1218         * riscv-fbsd-nat.c: New file.
1219
1220 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1221
1222         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
1223         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
1224         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
1225         * NEWS: Mention new FreeBSD/riscv target.
1226         * configure.tgt: Add riscv*-*-freebsd*.
1227         * riscv-fbsd-tdep.c: New file.
1228         * riscv-fbsd-tdep.h: New file.
1229
1230 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1231
1232         * regcache.h (struct regcache_map_entry): Note that this type can
1233         be used with traditional frame caches.
1234         * trad-frame.c (trad_frame_set_reg_regmap): New.
1235         * trad-frame.h (trad_frame_set_reg_regmap): New.
1236
1237 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
1238
1239         PR c++/16841
1240         * valops.c (get_virtual_base_offset): New function.
1241         (value_struct_elt_for_reference): Use it to get virtual base offset
1242         and add it in calculating class member address.
1243
1244 2018-10-08   John Darrington <john@darrington.wattle.id.au>
1245
1246     * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
1247       (check_producer): Check if the producer is codewarrior.
1248       (producer_is_codewarrior): New function.
1249       (lnp_state_machine::record_line): Ignore is_stmt flag for records
1250        produced by codewarrior.
1251       (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
1252
1253 2018-10-06  Tom Tromey  <tom@tromey.com>
1254
1255         PR python/19399:
1256         * python/py-inferior.c: Add "architecture" entry.
1257         (infpy_architecture): New function.
1258
1259 2018-10-06  Tom Tromey  <tom@tromey.com>
1260
1261         PR python/21765:
1262         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
1263         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
1264         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
1265         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
1266
1267 2018-10-06  Tom Tromey  <tom@tromey.com>
1268
1269         PR build/17077:
1270         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
1271         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
1272         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
1273         #include.
1274
1275 2018-10-06  Tom Tromey  <tom@tromey.com>
1276
1277         * python/py-breakpoint.c (bppy_get_location): Handle a
1278         bp_breakpoint without a location.
1279
1280 2018-10-06  Tom Tromey  <tom@tromey.com>
1281
1282         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
1283         (_RegEx): Reformat help text.
1284         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
1285         (AnyCallerIs, AnyCallerMatches): Reformat help text.
1286         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
1287         text.
1288         * python/lib/gdb/command/xmethods.py (InfoXMethod)
1289         (EnableXMethod, DisableXMethod): Remove help indentation.
1290         Capitalize meta-syntactic variables.
1291         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
1292         (EnableUnwinder, DisableUnwinder): Remove help indentation.
1293         Capitalize meta-syntactic variables.
1294         * python/lib/gdb/command/explore.py (ExploreCommand)
1295         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
1296         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
1297         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
1298         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
1299         Remove help indentation.
1300         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
1301         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
1302         (DisableFrameFilter, SetFrameFilterPriority)
1303         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
1304
1305 2018-10-06  Tom Tromey  <tom@tromey.com>
1306
1307         PR tui/28819:
1308         * tui/tui-io.c (gdb_wgetch): New function.
1309         (tui_mld_getc, tui_getc): Use it.
1310
1311 2018-10-05  Tom Tromey  <tom@tromey.com>
1312
1313         * sol-thread.c (sol_thread_target::wait): Rename inner
1314         "save_ptid".
1315
1316 2018-10-04  Tom Tromey  <tom@tromey.com>
1317
1318         * configure: Rebuild.
1319         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
1320
1321 2018-10-04  Tom Tromey  <tom@tromey.com>
1322
1323         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
1324         declaration of "block".
1325
1326 2018-10-04  Tom Tromey  <tom@tromey.com>
1327
1328         * common/filestuff.c (fdwalk): Remove inner declaration of
1329         "result".
1330
1331 2018-10-04  Tom Tromey  <tom@tromey.com>
1332
1333         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
1334         "structs_addr" and hoist declaration.
1335
1336 2018-10-04  Tom Tromey  <tom@tromey.com>
1337
1338         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
1339         variable "size".
1340
1341 2018-10-04  Tom Tromey  <tom@tromey.com>
1342
1343         * mdebugread.c (parse_partial_symbols): Use std::string.
1344
1345 2018-10-04  Tom Tromey  <tom@tromey.com>
1346
1347         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
1348         * p-valprint.c (pascal_val_print): Split inner "i" variable.
1349         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
1350         header.
1351         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
1352         more inner scope.
1353         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
1354         * varobj.c (varobj_update): Rename inner "newobj",
1355         "type_changed".
1356         * valprint.c (generic_emit_char): Rename inner "buf".
1357         * valops.c (find_overload_match): Rename inner "temp".
1358         (value_struct_elt_for_reference): Declare "v" in more inner
1359         scope.
1360         * v850-tdep.c (v850_push_dummy_call): Rename "len".
1361         * unittests/array-view-selftests.c (run_tests): Rename inner
1362         "vec".
1363         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
1364         header.
1365         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
1366         "tsv" in more inner scope.
1367         (print_one_static_tracepoint_marker): Rename inner
1368         "tuple_emitter".
1369         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
1370         (tic6x_push_dummy_call): Don't redeclare "addr".
1371         * target-float.c: Declare "dto" lower.
1372         * symtab.c (lookup_local_symbol): Rename inner "sym".
1373         (find_pc_sect_line): Rename inner "pc".
1374         * stack.c (print_frame): Don't redeclare "gdbarch".
1375         (return_command): Rename inner "gdbarch".
1376         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
1377         "sp".
1378         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
1379         header.
1380         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
1381         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
1382         scope.
1383         * remote.c (remote_target::update_thread_list): Don't redeclare
1384         "tp".
1385         (remote_target::process_initial_stop_replies): Rename inner
1386         "thread".
1387         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
1388         (remote_target::wait_as): Don't redeclare "stop_reply".
1389         (remote_target::get_thread_local_address): Rename inner
1390         "result".
1391         (remote_target::get_tib_address): Likewise.
1392
1393         * regcache.c (cooked_read_test): Rename "regnum".
1394         * record-btrace.c (cmd_record_btrace_start): Rename inner
1395         "exception".
1396         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
1397         loop header.
1398         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
1399         header.
1400         (ppu2spu_sniffer): Rename inner "buf".
1401         * parse.c (operator_check_standard): Rename inner "type",
1402         "objfile".
1403         * p-valprint.c (pascal_val_print): Introduce new scope for
1404         "low_bound", "high_bound".
1405         * p-exp.y (yylex): Declare "i" in loop header.
1406         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
1407         Lower declaration of "s".
1408         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
1409         header.
1410         (nios2_push_dummy_call): Rename "len".
1411         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
1412         "buf".
1413         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
1414         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
1415         (linux_xfer_osdata_modules): Likewise.
1416         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
1417         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
1418         (mips_o64_push_dummy_call): Likewise.
1419         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
1420         "op".
1421         * mi/mi-main.c (list_available_thread_groups): Rename inner
1422         "tuple_emitter".
1423         (mi_cmd_data_read_memory): Rename inner "opts".
1424         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
1425         "tuple_emitter".
1426         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
1427         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
1428         more inner scope.
1429         (parse_partial_symbols): Rename inner "pst", "p", "name"
1430         * main.c (captured_main_1): Rename inner "i"s.
1431         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
1432         "oso2".
1433         * linux-tdep.c (linux_info_proc): Rename inner "filename".
1434         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
1435         * infrun.c (handle_no_resumed): Don't redeclare "thread".
1436         (handle_signal_stop): Rename inner "gdbarch".
1437         (handle_command): Declare "signum" in loop header.
1438         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
1439         "status".
1440         (examine_prologue): Rename inner "sol" and "sof".
1441         (ia64_extract_return_value): Rename inner "val".  Declare another
1442         "val" in a more inner scope.
1443         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
1444         inner scope.
1445         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
1446         "except".
1447         * findvar.c (default_read_var_value): Don't redeclare "addr".
1448         * f-exp.y (yylex): Declare "i" in loop header.
1449         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
1450         Rename inner "type", "expect_type".
1451         (evaluate_subexp_for_sizeof): Rename inner "pc".
1452         * elfread.c (elf_symfile_read): Rename inner "abfd".
1453         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
1454         "bytes_read".
1455         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
1456         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
1457         (dwarf_decode_line_header): Rename inner "lh".
1458         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
1459         "offset".  Declare "i" in loop header.
1460         (disassemble_dwarf_expression): Rename inner "addr_size".
1461         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
1462         inner "result".
1463         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
1464         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
1465         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
1466         "inner_list_emitter".
1467         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
1468         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
1469         declaration in a block.
1470         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
1471         * cp-valprint.c (cp_print_value_fields): Don't redeclare
1472         "obstack_final_size".
1473         * cp-support.c (inspect_type): Declare "i" in loop header.
1474         * compile/compile.c (compile_instance::insert_symbol_error):
1475         Rename inner "e".
1476         * common/agent.c (agent_run_command): Remove inner "ret"
1477         declaration.
1478         * coffread.c (coff_symfile_read): Rename inner "name".
1479         (coff_symfile_read): Rename inner "abfd".
1480         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
1481         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
1482         "high".
1483         * c-exp.y (lex_one_token): Move "len" declaration lower.
1484         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
1485         "gdbarch".
1486         (create_exception_master_breakpoint): Likewise.  Don't redeclare
1487         "b".
1488         (watch_command_1): Declare "mark" later.
1489         (clear_command): Don't shadow "a" or "b".
1490         (delete_command): Rename inner "b".
1491         (delete_trace_command): Likewise.
1492         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
1493         "op".
1494         (arm_gdbarch_init): Remove inner "e_flags".
1495         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
1496         "offset" in inner blocks.
1497
1498 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
1499
1500         * dwarf-index-write.c (file_write): Don't write if the vector is
1501         empty.
1502
1503 2018-10-05  Tom de Vries  <tdevries@suse.de>
1504
1505         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
1506         PyArg_ParseTuple call.
1507
1508 2018-10-05  Tom de Vries  <tdevries@suse.de>
1509
1510         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
1511         PyArg_ParseTuple call.
1512
1513 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
1514
1515         * psymtab.c (recursively_search_psymtabs): Reformat parameters
1516         to avoid exceeding 80 characters per line limit.
1517
1518 2018-10-04  Tom Tromey  <tom@tromey.com>
1519
1520         * symfile.c (syms_from_objfile_1, finish_new_objfile)
1521         (reread_symbols): Update.
1522         * complaints.h (clear_complaints): Remove argument.
1523         * complaints.c (enum complaint_series): Remove.
1524         (series): Remove global.
1525         (complaint_internal): Update.
1526         (clear_complaints): Remove argument.
1527
1528 2018-10-04  Tom Tromey  <tom@tromey.com>
1529
1530         * symfile.c (symbol_file_add_with_addrs): Do not print "no
1531         debugging symbols" message if there is a separate debug objfile.
1532
1533 2018-10-04  Tom Tromey  <tom@tromey.com>
1534
1535         PR cli/19551:
1536         * symfile.c (symbol_file_add_with_addrs): Update output.
1537         * psymtab.c (require_partial_symbols): Update output.
1538
1539 2018-10-04  Tom Tromey  <tom@tromey.com>
1540
1541         PR cli/22234:
1542         * complaints.c: Emit \n.
1543
1544 2018-10-04  Tom Tromey  <tom@tromey.com>
1545
1546         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
1547         (separate_debug_file_exists, find_separate_debug_file)
1548         (add_symbol_file_command, reread_symbols, allocate_symtab)
1549         (allocate_compunit_symtab): Use filtered printing, not
1550         unfiltered.
1551         * psymtab.c (require_partial_symbols, dump_psymtab)
1552         (allocate_psymtab): Use filtered printing, not unfiltered.
1553
1554 2018-10-04  Tom Tromey  <tom@tromey.com>
1555
1556         * complaints.c (complaint_internal): Correctly check complaint
1557         count.
1558
1559 2018-10-04  Tom Tromey  <tom@tromey.com>
1560
1561         * complaints.h (struct complaints): Remove declaration.
1562         * complaints.c (clear_complaints): Remove an unused variable.
1563
1564 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1565
1566         * MAINTAINERS (Write After Approval): Add self.
1567
1568 2018-10-03  Tom Tromey  <tom@tromey.com>
1569
1570         * guile/scm-value.c (gdbscm_value_to_string): Initialize
1571         "buffer_contents".
1572         * coffread.c (coff_symtab_read): Initialize "newobj".
1573
1574 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
1575
1576         * dwarf2read.c (read_func_scope): Remove struct keyword in
1577         range-based for.
1578
1579 2018-10-03  Tom Tromey  <tom@tromey.com>
1580
1581         * README: Mention --enable-ubsan.
1582         * NEWS: Mention --enable-ubsan.
1583         * acinclude.m4: Include sanitize.m4.
1584         * configure: Rebuild.
1585         * configure.ac: Call AM_GDB_UBSAN.
1586         * sanitize.m4: New file.
1587
1588 2018-10-03  Tom Tromey  <tom@tromey.com>
1589
1590         * expression.h (enum exp_opcode): Use uint8_t as base type.
1591         * expprint.c (op_name): Handle invalid opcodes.
1592
1593 2018-10-03  Tom Tromey  <tom@tromey.com>
1594
1595         * parse.c (prefixify_expression): Add assert.
1596         (parse_exp_in_context_1): Throw exception if the expression is
1597         empty.
1598
1599 2018-10-03  Tom Tromey  <tom@tromey.com>
1600
1601         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
1602
1603 2018-10-03  Tom Tromey  <tom@tromey.com>
1604
1605         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
1606
1607 2018-10-03  Tom Tromey  <tom@tromey.com>
1608
1609         * dwarf2read.c (read_subrange_type): Make "negative_mask"
1610         unsigned.
1611
1612 2018-10-03  Tom Tromey  <tom@tromey.com>
1613
1614         * findvar.c (extract_integer): Do work in an unsigned type.
1615
1616 2018-10-03  Tom Tromey  <tom@tromey.com>
1617
1618         * common/enum-flags.h (enum_flags::operator~): Add static assert.
1619         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
1620         base type.
1621         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
1622         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
1623         type.
1624         * c-lang.h (enum c_string_type_values): Use unsigned as base
1625         type.
1626         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
1627
1628 2018-10-03  Tom Tromey  <tom@tromey.com>
1629
1630         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
1631         <~dwarf2_frame_state_reg_info>: Update.
1632         <dwarf2_frame_state_reg_info>: Update.
1633         <alloc_regs>: Add assertion.  Update.
1634         <reg>: Now a std::vector.
1635         <num_regs>: Remove.
1636         <swap>: Update.
1637         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
1638         (execute_cfa_program_test, dwarf2_frame_cache): Update.
1639
1640 2018-10-03  Tom Tromey  <tom@tromey.com>
1641
1642         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
1643
1644 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1645
1646         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
1647
1648 2018-10-02  Tom Tromey  <tom@tromey.com>
1649
1650         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
1651
1652 2018-10-02  John Darrington <john@darrington.wattle.id.au>
1653
1654         * NEWS: Mention changed commands.
1655         * ser-uds.c: New file.
1656         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
1657         * configure: Regenerate.
1658         * Makefile.in: Add new file.
1659         * serial.c (serial_open): Check if filename is a socket
1660           and lookup the appropriate interface accordingly.
1661
1662 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1663
1664         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
1665         define.
1666         (AARCH64_EXTRA_MAGIC): Likewise.
1667         (AARCH64_FPSIMD_MAGIC): Likewise.
1668         (AARCH64_SVE_MAGIC): Likewise.
1669         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
1670         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
1671         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
1672         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
1673         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
1674         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
1675         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
1676         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
1677         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
1678         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
1679         (read_aarch64_ctx): Add function.
1680         (aarch64_linux_sigframe_init): Detect FP registers.
1681
1682 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1683
1684         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
1685         (AARCH64_D0_REGNUM): Likewise.
1686         (AARCH64_S0_REGNUM): Likewise.
1687         (AARCH64_H0_REGNUM): Likewise.
1688         (AARCH64_B0_REGNUM): Likewise.
1689         (AARCH64_SVE_V0_REGNUM): Likewise.
1690         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
1691         (AARCH64_D0_REGNUM): Likewise.
1692         (AARCH64_S0_REGNUM): Likewise.
1693         (AARCH64_H0_REGNUM): Likewise.
1694         (AARCH64_B0_REGNUM): Likewise.
1695         (AARCH64_SVE_V0_REGNUM): Likewise.
1696
1697 2018-10-01  Gary Benson <gbenson@redhat.com>
1698
1699         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
1700         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
1701         prfpregset_t instead of gdb_prfpregset_t.
1702         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
1703         * configure, config.in: Rebuild.
1704
1705 2018-10-01  Gary Benson <gbenson@redhat.com>
1706
1707         * common/gdb_proc_service.h: New file, factored out from...
1708         * gdb_proc_service.h: Moved common code to the above file.
1709         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
1710
1711 2018-10-01  Gary Benson <gbenson@redhat.com>
1712
1713         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
1714         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
1715
1716 2018-10-01  Gary Benson <gbenson@redhat.com>
1717
1718         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
1719         (AC_CHECK_HEADERS): Check for linux/elf.h.
1720         * configure, config.in: Rebuild.
1721         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
1722         doesn't define elf_fpregset_t.
1723
1724 2018-10-01  Gary Benson <gbenson@redhat.com>
1725
1726         * gdb_proc_service.h: Whitespace change.
1727
1728 2018-10-01  Tom Tromey  <tom@tromey.com>
1729
1730         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
1731         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
1732         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
1733
1734 2018-10-01  Tom Tromey  <tom@tromey.com>
1735
1736         * README: Minor change.
1737
1738 2018-09-30  Pedro Alves  <palves@redhat.com>
1739
1740         * darwin-nat-info.c (darwin_debug_regions_recurse)
1741         (info_mach_exceptions_command): Remove unused local variables.
1742         * darwin-nat.c (darwin_decode_notify_message)
1743         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
1744         (darwin_stop_inferior, darwin_setup_exceptions)
1745         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
1746         (darwin_nat_target::attach, darwin_nat_target::detach)
1747         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
1748         local variables.
1749         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
1750         variables.
1751
1752 2018-09-29  Tom Tromey  <tom@tromey.com>
1753
1754         * README: Remove some leftover text.
1755
1756 2018-09-29  Tom Tromey  <tom@tromey.com>
1757
1758         * PROBLEMS: Rewrite.
1759         * README: Update.
1760
1761 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
1762
1763         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
1764         case with explicit breakpoint kind.
1765         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
1766         'additional_info' and related logic.
1767         (riscv_debug_breakpoints): New variable.
1768         (riscv_breakpoint_kind_from_pc): Use the length of the existing
1769         instruction to determine the breakpoint kind.
1770         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
1771         flag.  Update description of 'set/show riscv
1772         use-compressed-breakpoints' flag.
1773
1774 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
1775
1776         (NEWS): Mention changes to frame related commands.
1777         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
1778         (add_prefix_cmd_suppress_notification): New function.
1779         (add_com_suppress_notification): Call
1780         add_cmd_suppress_notification.
1781         * command.h (add_cmd_suppress_notification): Declare.
1782         (add_prefix_cmd_suppress_notification): Declare.
1783         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
1784         (parse_frame_specification): Moved from stack.c, with
1785         simplification to handle a single argument.
1786         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
1787         switch to the selected frame.  Add a header comment.
1788         * stack.c: Remove 'safe-ctype.h' include.
1789         (find_frame_for_function): Add declaration.
1790         (find_frame_for_address): New function.
1791         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
1792         (frame_selection_by_function_completer): New function.
1793         (info_frame_command): Rename to...
1794         (info_frame_command_core): ...this, and update parameter types.
1795         (select_frame_command): Rename to...
1796         (select_frame_command_core): ...this, and update parameter types.
1797         (frame_command): Rename to...
1798         (frame_command_core): ...this, and update parameter types.
1799         (class frame_command_helper): New class to wrap implementations of
1800         frame related sub-commands.
1801         (frame_apply_cmd_list): New static global.
1802         (frame_cmd_list): Make static.
1803         (select_frame_cmd_list): New global for sub-commands.
1804         (info_frame_cmd_list): New global for sub-commands.
1805         (_initialize_stack): Register sub-commands for 'frame',
1806         'select-frame', and 'info frame'.  Update 'frame apply' commands
1807         to use frame_apply_cmd_list.  Move function local static
1808         frame_apply_list to file static frame_apply_cmd_list for
1809         consistency.
1810         * stack.h (select_frame_command): Delete declarationn.
1811         (select_frame_for_mi): Declare new function.
1812
1813 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
1814
1815         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
1816         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
1817         and NOP.
1818
1819 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
1820
1821         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
1822
1823 2018-09-26  Tom Tromey  <tom@tromey.com>
1824
1825         * valops.c (auto_abandon): Remove dead code.
1826
1827 2018-09-26  Tom Tromey  <tom@tromey.com>
1828
1829         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
1830
1831 2018-09-24  Tom Tromey  <tom@tromey.com>
1832
1833         * common/pathstuff.c (get_standard_cache_dir): Make
1834         "xdg_cache_home" and "home" const.
1835         * top.c (init_history): Make "tmpenv" const.
1836         * main.c (get_init_files): Make "homedir" const.
1837
1838 2018-09-23  Tom Tromey  <tom@tromey.com>
1839
1840         PR python/18852:
1841         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
1842
1843 2018-09-23  Tom Tromey  <tom@tromey.com>
1844
1845         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
1846         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
1847         * python/python-internal.h (gdbpy_handle_exception): Declare.
1848         * python/py-utils.c (gdbpy_handle_exception): New function.
1849
1850 2018-09-23  Tom Tromey  <tom@tromey.com>
1851
1852         PR python/17284:
1853         * python/py-type.c (typy_template_argument): Check for negative
1854         argument number.
1855
1856 2018-09-23  Tom Tromey  <tom@tromey.com>
1857
1858         PR python/14062:
1859         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
1860
1861 2018-09-23  Tom Tromey  <tom@tromey.com>
1862
1863         PR python/18170:
1864         * python/py-value.c (valpy_int): Allow conversion from pointer
1865         type.
1866
1867 2018-09-23  Tom Tromey  <tom@tromey.com>
1868
1869         PR python/20126:
1870         * python/py-value.c (valpy_int): Respect type sign.
1871
1872 2018-09-23  Tom Tromey  <tom@tromey.com>
1873
1874         PR python/18352;
1875         * python/py-value.c (valpy_float): Allow conversions from int or
1876         char.
1877         (valpy_int, valpy_long): Allow conversions from float.
1878
1879 2018-09-23  Tom Tromey  <tom@tromey.com>
1880
1881         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
1882         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
1883
1884 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1885
1886         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
1887         __sighndlr.
1888         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
1889
1890 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
1891
1892         * windows-nat.c (windows_nat_target::wait): Remove a spurious
1893         target_terminal::ours().
1894
1895 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
1896
1897         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
1898         of vl to ULONGEST.
1899
1900 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
1901
1902         * breakpoint.c (update_inserted_breakpoint_locations): Remove
1903         redundant condition.
1904
1905 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1906
1907         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
1908
1909         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
1910         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
1911         * sol-thread.c (ps_pdmodel): Don't guard definition.
1912
1913         * procfs.c: Fix formatting.
1914
1915         * procfs.c (sysset_t_alloc): Remove.
1916         (create_procinfo): Use XNEW instead of sysset_t_alloc.
1917         (procfs_debug_inferior): Likewise.
1918         (procfs_set_exec_trap): Likewise.
1919         (proc_set_traced_sysentry): Don't allocate argp dynamically.
1920         (proc_set_traced_sysexit): Likewise.
1921
1922         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
1923         (dead_procinfo): Likewise.
1924         (proc_warn): Likewise.
1925         (proc_error): Likewise.
1926         (proc_get_LDT_entry): Likewise.
1927         (do_attach): Likewise.
1928         (procfs_target::pid_to_str): Likewise.
1929         (iterate_over_mappings): Likewise.
1930
1931         * procfs.c (create_procinfo): Fix ARI warning.
1932         (proc_get_status): Likewise.
1933         (proc_stop_process): Likewise.
1934         (proc_run_process): Likewise.
1935         (proc_kill): Likewise.
1936         (proc_get_LDT_entry): Likewise.
1937         (procfs_find_LDT_entry): Likewise.
1938         (proc_update_threads): Likewise.
1939         (proc_iterate_over_threads): Likewise.
1940         (do_attach): Likewise.
1941         (procfs_xfer_memory): Likewise.
1942         (invalidate_cache): Likewise.
1943         (procfs_target::resume): Likewise.
1944         (procfs_init_inferior): Likewise.
1945         (procfs_set_exec_trap): Likewise.
1946         (procfs_target::thread_alive): Likewise.
1947         (procfs_target::pid_to_exec_file): Likewise.
1948         (iterate_over_mappings): Likewise.
1949         (procfs_target::make_corefile_notes): Likewise.
1950         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
1951
1952         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
1953         (procfs_find_LDT_entry): Likewise.
1954         * sol-thread.c (ps_lgetLDT): Likewise.
1955
1956 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1957
1958         PR tdep/17903
1959         * procfs.c (procfs_target): Declare pid_to_exec_file.
1960         (procfs_target::pid_to_exec_file): New.
1961
1962 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1963
1964         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
1965         renaming.
1966         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
1967         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
1968
1969 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1970
1971         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
1972         (supply_fpregset, fill_fpregset): Move ...
1973         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
1974         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
1975         Remove references to ioctl-based procfs.
1976         Include <sys/reg.h>.
1977         Remove PR_MODEL_NATIVE guards.
1978         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
1979         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
1980
1981 2018-09-19  Xavier Roirand  <roirand@adacore.com>
1982
1983         PR gdb/20981:
1984         * solib-darwin.c (darwin_get_dyld_bfd): New function.
1985         (darwin_solib_get_all_image_info_addr_at_init): Update call.
1986         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
1987
1988 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
1989
1990         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
1991         (fbsd_print_sockaddr_in6): Likewise.
1992
1993 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
1994             Chris January  <chris.january@arm.com>
1995
1996         * eval.c (skip_undetermined_arglist): Skip argument list helper.
1997         (evaluate_subexp_standard): Return a dummy type when
1998         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
1999         OP_F77_UNDETERMINED_ARGLIST case.
2000         * expression.h (enum noside): Update comment.
2001
2002 2018-09-19  George Vasick <george.vasick@oracle.com>
2003
2004         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
2005
2006 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
2007             April Chin <april.chin@oracle.com>
2008             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2009
2010         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
2011         uint_t lwpid_t.
2012         (create_procinfo): Print pids in /proc without leading zeros.
2013
2014 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
2015
2016         * nios2-tdep.c (nios2_gcc_target_options): New.
2017         (nios2_gdb_arch_init): Install new hook.
2018
2019 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
2020
2021         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
2022         New file.
2023         * update-gnulib.sh: Apply patch.
2024         * configure: Re-generate.
2025
2026 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2027
2028         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
2029         description.  Make "info proc" command descriptions more
2030         consistent.
2031
2032 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2033
2034         * NEWS: Mention 'info proc files' command.
2035
2036 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2037
2038         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
2039         descriptors for IP_FILES and IP_ALL.
2040
2041 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2042
2043         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
2044         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
2045         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
2046         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
2047         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
2048         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
2049         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
2050         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
2051         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
2052         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
2053         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
2054         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
2055         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
2056         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
2057         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
2058         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
2059         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
2060         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
2061         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
2062         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
2063         (struct fbsd_sockaddr_un): New types.
2064         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
2065         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
2066         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
2067         (fbsd_core_info_proc_files): New functions.
2068         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
2069         IP_ALL.
2070         * fbsd-tdep.h (fbsd_info_proc_files_header)
2071         (fbsd_info_proc_files_entry): New.
2072
2073 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2074
2075         * defs.h (enum info_proc_what) [IP_FILES]: New value.
2076         * infcmd.c (info_proc_cmd_files): New function.
2077         (_initialize_infcmd): Register 'info proc files' command.
2078
2079 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2080
2081         * gnulib/aclocal-m4-deps.mk: Re-generate.
2082         * gnulib/aclocal.m4: Re-generate.
2083         * gnulib/config.in: Re-generate.
2084         * gnulib/configure: Re-generate.
2085         * gnulib/import/Makefile.am: Re-generate.
2086         * gnulib/import/Makefile.in: Re-generate.
2087         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
2088         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
2089         * gnulib/import/arpa_inet.in.h: New file.
2090         * gnulib/import/inet_ntop.c: New file.
2091         * gnulib/import/m4/arpa_inet_h.m4: New file.
2092         * gnulib/import/m4/inet_ntop.m4: New file.
2093         * gnulib/import/m4/netinet_in_h.m4: New file.
2094         * gnulib/import/m4/socklen.m4: New file.
2095         * gnulib/import/m4/sockpfaf.m4: New file.
2096         * gnulib/import/m4/stdalign.m4: New file.
2097         * gnulib/import/m4/sys_uio_h.m4: New file.
2098         * gnulib/import/netinet_in.in.h: New file.
2099         * gnulib/import/stdalign.in.h: New file.
2100         * gnulib/import/sys_socket.c: New file.
2101         * gnulib/import/sys_socket.in.h: New file.
2102         * gnulib/import/sys_uio.in.h: New file.
2103         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
2104         module.
2105
2106 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2107
2108         * gnulib/aclocal-m4-deps.mk: New file.
2109         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
2110         deterministically.
2111
2112 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2113
2114         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
2115         KVE_PATH.
2116
2117 2018-09-18  Tom Tromey  <tom@tromey.com>
2118
2119         * compile/compile-object-load.c (struct
2120         link_hash_table_cleanup_data): Add constructor and destructor.
2121         Use DISABLE_COPY_AND_ASSIGN.
2122         (~link_hash_table_cleanup_data): Rename from
2123         link_hash_table_free.  Now a destructor.
2124         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
2125
2126 2018-09-18  Tom Tromey  <tom@tromey.com>
2127
2128         * compile/compile-object-run.c (do_module_cleanup): Use delete.
2129         * compile/compile-object-load.c (struct munmap_list): Move to
2130         header file.
2131         (munmap_list::add): Rename from munmap_list_add; rewrite.
2132         (munmap_list::~munmap_list): Rename from munmap_list_free.
2133         (munmap_listp_free_cleanup): Remove.
2134         (compile_object_load): Update.
2135         * compile/compile-object-load.h (struct munmap_list): Move from
2136         compile-object-load.c.  Rewrite.
2137
2138 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
2139
2140         * aarch64-tdep.c (pass_in_v): Use register size.
2141         (aarch64_extract_return_value): Likewise.
2142         (aarch64_store_return_value): Likewise.
2143
2144 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2145
2146         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
2147         rlim_t.
2148
2149 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2150
2151         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
2152         Fix short help line.
2153
2154 2018-09-17  Tom Tromey  <tom@tromey.com>
2155
2156         PR python/20445:
2157         * configure: Rebuild.
2158         * configure.ac: Conditionally use -DNDEBUG for Python.
2159
2160 2018-09-17  Tom Tromey  <tom@tromey.com>
2161
2162         * configure: Rebuild.
2163         * configure.ac: Use gmp as a library dependency when checking for
2164         mpfr.
2165
2166 2018-09-17  Pedro Alves  <palves@redhat.com>
2167
2168         * python/py-inferior.c (find_inferior_object): Delete.
2169
2170 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
2171
2172         * compile/compile-cplus-types.c
2173         (compile_cplus_instance::enter_scope): Don't use new_scope after
2174         std::move.
2175
2176 2018-09-17  Tom Tromey  <tom@tromey.com>
2177
2178         * common/pathstuff.c (get_standard_cache_dir): Use
2179         ~/Library/Caches on macOS.
2180         * common/pathstuff.h (get_standard_cache_dir): Update comment.
2181
2182 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
2183
2184         PR python/23669
2185         * breakpoint.c (commands_cmd_element): New.
2186         (_initialize_breakpoint): Assign commands_cmd_element.
2187         * breakpoint.h (commands_cmd_element): New.
2188         * cli/cli-script.c (while_cmd_element, if_command,
2189         define_cmd_element): New.
2190         (command_name_equals): Remove.
2191         (process_next_line): Compare commands by pointer, not by name.
2192         (_initialize_cli_script): Assign the various cmd_list_element
2193         variables.
2194         * compile/compile.c (compile_cmd_element): New.
2195         (_initialize_compile): Assign compile_cmd_element.
2196         * compile/compile.h (compile_cmd_element): New.
2197         * guile/guile.c (guile_cmd_element): New.
2198         (install_gdb_commands): Assign guile_cmd_element.
2199         * guile/guile.h (guile_cmd_element): New.
2200         * python/python.c (python_cmd_element): New.
2201         (_initialize_python): Assign python_cmd_element.
2202         * python/python.h (python_cmd_element): New.
2203         * tracepoint.c (while_stepping_cmd_element): New.
2204         (_initialize_tracepoint): Assign while_stepping_cmd_element.
2205         * tracepoint.h (while_stepping_cmd_element): New.
2206
2207 2018-09-17  Tom Tromey  <tom@tromey.com>
2208
2209         * infrun.c (save_infcall_suspend_state): Return
2210         infcall_suspend_state_up.
2211         (save_infcall_control_state): Return infcall_control_state_up.
2212         * inferior.h (save_infcall_suspend_state)
2213         (save_infcall_control_state): Declare later.  Return unique
2214         pointers.
2215
2216 2018-09-17  Tom Tromey  <tom@tromey.com>
2217
2218         * infrun.c (struct stop_context): Declare constructor,
2219         destructor, "changed" method.
2220         (stop_context::stop_context): Rename from save_stop_context.
2221         (stop_context::~stop_context): Rename from
2222         release_stop_context_cleanup.
2223         (normal_stop): Update.
2224         (stop_context::changed): Rename from stop_context_changed.  Return
2225         bool.
2226
2227 2018-09-17  Tom Tromey  <tom@tromey.com>
2228
2229         * inferior.h (struct infcall_suspend_state_deleter): New.
2230         (infcall_suspend_state_up): New typedef.
2231         (struct infcall_control_state_deleter): New.
2232         (infcall_control_state_up): New typedef.
2233         (make_cleanup_restore_infcall_suspend_state)
2234         (make_cleanup_restore_infcall_control_state): Don't declare.
2235         * infcall.c (call_function_by_hand_dummy): Update.
2236         * infrun.c (do_restore_infcall_suspend_state_cleanup)
2237         (make_cleanup_restore_infcall_suspend_state): Remove.
2238         (do_restore_infcall_control_state_cleanup)
2239         (make_cleanup_restore_infcall_control_state): Remove.
2240
2241 2018-09-17  Tom Tromey  <tom@tromey.com>
2242
2243         * gdbthread.h (struct thread_control_state): Add initializer.
2244         (class thread_info) <control>: Remove initializer.
2245         * inferior.h (struct inferior_control_state): Add initializer.
2246         (class inferior) <control>: Remove initializer.
2247         (exit_inferior_1): Update.
2248         * infrun.c (struct infcall_control_state): Add constructors.
2249         (save_infcall_control_state): Use new.
2250         (restore_infcall_control_state, discard_infcall_control_state):
2251         Use delete.
2252
2253 2018-09-17  Tom Tromey  <tom@tromey.com>
2254
2255         * infrun.c (struct infcall_suspend_state) <registers>: Now a
2256         unique_ptr.
2257         <siginfo_data>: Now a unique_xmalloc_ptr.
2258         (save_infcall_suspend_state, restore_infcall_suspend_state)
2259         (discard_infcall_suspend_state)
2260         (get_infcall_suspend_state_regcache): Update.
2261
2262 2018-09-17  Tom Tromey  <tom@tromey.com>
2263
2264         * gdbthread.h (struct thread_suspend_state): Add initializers.
2265         (class thread_info) <suspend>: Remove initializer.
2266         * infrun.c (struct infcall_suspend_state): Add initializers.
2267         (save_infcall_suspend_state): Use new.
2268         (discard_infcall_suspend_state): Use delete.
2269
2270 2018-09-16  Tom Tromey  <tom@tromey.com>
2271
2272         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
2273         Remove.
2274         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
2275         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
2276         (py_varobj_iter_new): Likewise.
2277         (py_varobj_get_iterator): Use gdbpy_ref.
2278
2279 2018-09-16  Tom Tromey  <tom@tromey.com>
2280
2281         * python/py-threadevent.c (py_get_event_thread): Simplify.
2282         * python/py-inferior.c (infpy_thread_from_thread_handle):
2283         Return immediately after calling thread_to_thread_object.  Use
2284         Py_RETURN_NONE.
2285         (thread_to_thread_object): Set the exception on a NULL return.
2286
2287 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
2288
2289         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
2290
2291 2018-09-16  Tom Tromey  <tom@tromey.com>
2292
2293         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
2294         Remove.
2295
2296 2018-09-16  Tom Tromey  <tom@tromey.com>
2297
2298         * python/python-internal.h (thread_to_thread_object): Change
2299         return type.
2300         * python/py-inferior.c (thread_to_thread_object): Return a new
2301         reference.
2302         (infpy_thread_from_thread_handle): Update.
2303         * python/py-infthread.c (gdbpy_selected_thread): Update.
2304         * python/py-stopevent.c (create_stop_event_object): Update.
2305         * python/py-threadevent.c (py_get_event_thread): Return a new
2306         reference.
2307         (py_get_event_thread): Update.
2308         * python/py-event.h (py_get_event_thread): Change return type.
2309         * python/py-continueevent.c (create_continue_event_object):
2310         Update.
2311
2312 2018-09-16  Tom Tromey  <tom@tromey.com>
2313
2314         * python/py-progspace.c (pspy_get_objfiles): Update.
2315         * python/python-internal.h (objfile_to_objfile_object): Change
2316         return type.
2317         * python/py-newobjfileevent.c (create_new_objfile_event_object):
2318         Update.
2319         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
2320         Update.
2321         * python/python.c (gdbpy_get_current_objfile): Update.
2322         (gdbpy_objfiles): Update.
2323         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
2324         Update.
2325         (objfile_to_objfile_object): Return a new reference.
2326         * python/py-symtab.c (stpy_get_objfile): Update.
2327         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
2328         Update.
2329
2330 2018-09-16  Tom Tromey  <tom@tromey.com>
2331
2332         * python/py-inferior.c (infpy_get_progspace): Update.
2333         * python/python-internal.h (pspace_to_pspace_object): Change
2334         return type.
2335         * python/py-newobjfileevent.c
2336         (create_clear_objfiles_event_object): Update.
2337         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
2338         Update.
2339         * python/python.c (gdbpy_get_current_progspace): Update.
2340         (gdbpy_progspaces): Update.
2341         * python/py-progspace.c (pspace_to_pspace_object): Return a new
2342         reference.
2343         * python/py-objfile.c (objfpy_get_progspace): Update.
2344         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
2345         Update.
2346
2347 2018-09-16  Tom Tromey  <tom@tromey.com>
2348
2349         * python/lib/gdb/__init__.py (current_progspace, objfiles)
2350         (solib_name, block_for_pc, find_pc_line): New functions.
2351         (execute_unwinders): Update.
2352         * python/py-block.c (gdbpy_block_for_pc): Remove.
2353         * python/py-inferior.c (infpy_get_progspace): New function.
2354         (inferior_object_getset) <progspace>: Add.
2355         * python/py-progspace.c (pspy_objfiles): Rewrite.
2356         (pspy_solib_name, pspy_block_for_pc)
2357         (pspy_find_pc_line, pspy_is_valid): New functions.
2358         (progspace_object_methods): Add entries for solib_name,
2359         block_for_pc, find_pc_line, is_valid.
2360         * python/python-internal.h (gdbpy_block_for_pc)
2361         (build_objfiles_list): Don't declare.
2362         * python/python.c: Don't include solib.h.
2363         (gdbpy_solib_name, gdbpy_find_pc_line)
2364         (gdbpy_get_current_progspace, build_objfiles_list)
2365         (gdbpy_objfiles): Remove.
2366         (GdbMethods) <current_progspace, objfiles, block_for_pc,
2367         solib_name, find_pc_line>: Remove entries.
2368
2369 2018-09-16  Tom Tromey  <tom@tromey.com>
2370
2371         * top.c (new_ui_command): Use GNU style for metasyntactic
2372         variables.
2373         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
2374         variables.
2375         * maint.c (maintenance_translate_address): Remove "<>" around
2376         text.
2377         * interps.c (interpreter_exec_cmd): Use GNU style for
2378         metasyntactic variables.
2379         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
2380         metasyntactic variables.
2381         * tracepoint.c (tfind_range_command): Use GNU style for
2382         metasyntactic variables.
2383         (tfind_outside_command): Likewise.
2384         (_initialize_tracepoint): Likewise.
2385         * remote.c (extended_remote_target::create_inferior): Use GNU
2386         style for metasyntactic variables.
2387         * sparc64-tdep.c (adi_examine_command): Use GNU style for
2388         metasyntactic variables.
2389         (adi_assign_command): Likewise.
2390
2391 2018-09-16  Tom Tromey  <tom@tromey.com>
2392
2393         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
2394         metasyntactic variables.  Print message if no disassembler options
2395         are available.
2396
2397 2018-09-15  Tom Tromey  <tom@tromey.com>
2398
2399         * infcmd.c (get_inferior_args): Return const char *.
2400         * inferior.h (get_inferior_args): Return type now const.
2401         * linux-tdep.c (linux_fill_prpsinfo): Update.
2402         * procfs.c (procfs_target::make_corefile_notes): Update.
2403
2404 2018-09-07  Tom Tromey  <tom@tromey.com>
2405
2406         * python/python.c (execute_gdb_command): Call bpstat_do_actions
2407         inside the TRY.
2408
2409 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
2410
2411         * nios2-tdep.c (nios2_type_align): New.
2412         (nios2_gdb_arch_init): Install type_align hook.
2413
2414 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
2415
2416         * eval.c (fake_method::fake_method): Call xzalloc directly for a
2417         type that is neither object file owned, nor gdbarch owned.
2418         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
2419         gdbarch is non-NULL.
2420         (alloc_type_instance): Allocate non-objfile owned types on the
2421         gdbarch obstack.
2422         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
2423         using TYPE_ALLOC to ensure memory is allocated on the correct
2424         obstack.
2425         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
2426         obstack, or the gdbarch obstack.
2427         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
2428
2429 2018-09-14  Tom Tromey  <tom@tromey.com>
2430
2431         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
2432         block.
2433
2434 2018-09-14  Tom Tromey  <tom@tromey.com>
2435
2436         * nat/fork-inferior.c (get_startup_shell): Remove "static".
2437
2438 2018-09-13  Tom Tromey  <tom@tromey.com>
2439
2440         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
2441         static.
2442
2443 2018-09-13  Tom Tromey  <tom@tromey.com>
2444
2445         * exec.c (try_open_exec_file): Use std::string.
2446
2447 2018-09-13  Tom Tromey  <tom@tromey.com>
2448
2449         * utils.h (gdb_bfd_errmsg): Return std::string.
2450         * exec.c (exec_file_attach): Update.
2451         * compile/compile-object-load.c (compile_object_load): Update.
2452         * utils.c (gdb_bfd_errmsg): Return std::string.
2453
2454 2018-09-13  Tom Tromey  <tom@tromey.com>
2455
2456         * procfs.c (struct procinfo_deleter): New.
2457         (procinfo_up): New typedef.
2458         (do_destroy_procinfo_cleanup): Remove.
2459         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
2460
2461 2018-09-13  Tom Tromey  <tom@tromey.com>
2462
2463         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
2464
2465 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2466 2018-09-13  Tom Tromey  <tom@tromey.com>
2467
2468         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
2469         (pspy_get_objfiles): New function.
2470         (progspace_object_methods): New.
2471         (pspace_object_type): Add tp_methods callback.
2472         * python/python-internal.h (build_objfiles_list): New
2473         declaration.
2474         * python/python.c (build_objfiles_list): New function.
2475         (gdbpy_objfiles): Implement using build_objfiles_list.
2476         * NEWS: Mention the Progspace.objfiles method.
2477
2478 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2479
2480         * python/py-inferior.c (infpy_get_progspace): New function.
2481         (inferior_object_getset): Add progspace property.
2482         * NEWS: Mention the new property.
2483
2484 2018-09-13  Tom Tromey  <tom@tromey.com>
2485
2486         PR rust/23650:
2487         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
2488
2489 2018-09-13  Tom Tromey  <tom@tromey.com>
2490
2491         PR rust/23626:
2492         * rust-lang.c (rust_enum_variant): Now static.
2493         (rust_empty_enum_p): New function.
2494         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
2495         Handle empty enum.
2496
2497 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2498
2499         * python/py-inferior.c (infpy_repr): New.
2500         (inferior_object_type): Register infpy_repr.
2501         * python/py-objfile.c (objfpy_repr): New.
2502         (objfile_object_type): Register objfpy_repr.
2503
2504 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
2505
2506         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
2507
2508 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
2509
2510         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
2511         typo.
2512
2513 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
2514
2515         * common/common-utils.c: Don't include '<sys/stat.h>'.
2516         (is_regular_file): Move to...
2517         * common/filestuff.c (is_regular_file): ... here.
2518         * common/common-utils.h (is_regular_file): Move to...
2519         * common/filestuff.h (is_regular_file): ... here.
2520
2521 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
2522
2523         * skip.c (debug_skip): New variable.
2524         (skiplist_entry::do_skip_file_p): Add debug output.
2525         (skiplist_entry::do_skip_gfile_p): Likewise.
2526         (skiplist_entry::skip_function_p): Likewise.
2527         (_initialize_step_skip): Create debug command.
2528         * NEWS: Mention set/show debug skip.
2529
2530 2018-09-11  Xavier Roirand  <roirand@adacore.com>
2531
2532         * darwin-nat.c (should_disable_startup_with_shell):
2533         New function.
2534         (darwin_nat_target::create_inferior): Add call.
2535
2536 2018-09-11  Xavier Roirand  <roirand@adacore.com>
2537
2538         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
2539         inf_port, msg_state>: Initialize.
2540         (struct darwin_thread_info) <signaled, single_step>: Change
2541         type and initialize.
2542         (struct darwin_thread_info) <event>: Initialize.
2543
2544 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2545
2546         PR gdb/23555
2547         PR gdb/23558
2548         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
2549         guesses.
2550
2551 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2552
2553         Revert:
2554         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
2555
2556         PR gdb/23555
2557         PR gdb/23558
2558         * gnulib/aclocal.m4: Regenerate.
2559         * gnulib/config.in: Regenerate.
2560         * gnulib/configure: Regenerate.
2561         * gnulib/import/Makefile.am: Update.
2562         * gnulib/import/Makefile.in: Update.
2563         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
2564         * gnulib/import/_Noreturn.h: ... this.
2565         * gnulib/import/alloca.in.h: Update.
2566         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
2567         * gnulib/import/arg-nonnull.h: ... this.
2568         * gnulib/import/assure.h: Update.
2569         * gnulib/import/at-func.c: Update.
2570         * gnulib/import/basename-lgpl.c: Update.
2571         * gnulib/import/extra/snippet/c++defs.h: Rename to...
2572         * gnulib/import/c++defs.h: ... this.
2573         * gnulib/import/canonicalize-lgpl.c: Update.
2574         * gnulib/import/cdefs.h: Update.
2575         * gnulib/import/chdir-long.c: Update.
2576         * gnulib/import/chdir-long.h: Update.
2577         * gnulib/import/cloexec.c: Update.
2578         * gnulib/import/cloexec.h: Update.
2579         * gnulib/import/close.c: Update.
2580         * gnulib/import/closedir.c: Update.
2581         * gnulib/import/config.charset: Update.
2582         * gnulib/import/dirent-private.h: Update.
2583         * gnulib/import/dirent.in.h: Update.
2584         * gnulib/import/dirfd.c: Update.
2585         * gnulib/import/dirname-lgpl.c: Update.
2586         * gnulib/import/dirname.h: Update.
2587         * gnulib/import/dosname.h: Update.
2588         * gnulib/import/dup-safer-flag.c: Update.
2589         * gnulib/import/dup-safer.c: Update.
2590         * gnulib/import/dup.c: Update.
2591         * gnulib/import/dup2.c: Update.
2592         * gnulib/import/errno.in.h: Update.
2593         * gnulib/import/error.c: Update.
2594         * gnulib/import/error.h: Update.
2595         * gnulib/import/exitfail.c: Update.
2596         * gnulib/import/exitfail.h: Update.
2597         * gnulib/import/extra/update-copyright: Update.
2598         * gnulib/import/fchdir.c: Update.
2599         * gnulib/import/fcntl.c: Update.
2600         * gnulib/import/fcntl.in.h: Update.
2601         * gnulib/import/fd-hook.c: Update.
2602         * gnulib/import/fd-hook.h: Update.
2603         * gnulib/import/fd-safer-flag.c: Update.
2604         * gnulib/import/fd-safer.c: Update.
2605         * gnulib/import/fdopendir.c: Update.
2606         * gnulib/import/filename.h: Update.
2607         * gnulib/import/filenamecat-lgpl.c: Update.
2608         * gnulib/import/filenamecat.h: Update.
2609         * gnulib/import/flexmember.h: Update.
2610         * gnulib/import/float+.h: Update.
2611         * gnulib/import/float.c: Update.
2612         * gnulib/import/float.in.h: Update.
2613         * gnulib/import/fnmatch.c: Update.
2614         * gnulib/import/fnmatch.in.h: Update.
2615         * gnulib/import/fnmatch_loop.c: Update.
2616         * gnulib/import/fpucw.h: Update.
2617         * gnulib/import/frexp.c: Update.
2618         * gnulib/import/frexpl.c: Update.
2619         * gnulib/import/fstat.c: Update.
2620         * gnulib/import/fstatat.c: Update.
2621         * gnulib/import/getcwd-lgpl.c: Update.
2622         * gnulib/import/getcwd.c: Update.
2623         * gnulib/import/getdtablesize.c: Update.
2624         * gnulib/import/getlogin_r.c: Update.
2625         * gnulib/import/getprogname.c: Update.
2626         * gnulib/import/getprogname.h: Update.
2627         * gnulib/import/gettext.h: Update.
2628         * gnulib/import/gettimeofday.c: Update.
2629         * gnulib/import/glob-libc.h: Update.
2630         * gnulib/import/glob.c: Update.
2631         * gnulib/import/glob.in.h: Update.
2632         * gnulib/import/glob_internal.h: Update.
2633         * gnulib/import/glob_pattern_p.c: Update.
2634         * gnulib/import/globfree.c: Update.
2635         * gnulib/import/hard-locale.c: Update.
2636         * gnulib/import/hard-locale.h: Update.
2637         * gnulib/import/intprops.h: Update.
2638         * gnulib/import/inttypes.in.h: Update.
2639         * gnulib/import/isnan.c: Update.
2640         * gnulib/import/isnand-nolibm.h: Update.
2641         * gnulib/import/isnand.c: Update.
2642         * gnulib/import/isnanl-nolibm.h: Update.
2643         * gnulib/import/isnanl.c: Update.
2644         * gnulib/import/itold.c: Update.
2645         * gnulib/import/libc-config.h: Update.
2646         * gnulib/import/limits.in.h: Update.
2647         * gnulib/import/localcharset.c: Update.
2648         * gnulib/import/localcharset.h: Update.
2649         * gnulib/import/localtime-buffer.c: Update.
2650         * gnulib/import/localtime-buffer.h: Update.
2651         * gnulib/import/lstat.c: Update.
2652         * gnulib/import/m4/00gnulib.m4: Update.
2653         * gnulib/import/m4/__inline.m4: Update.
2654         * gnulib/import/m4/absolute-header.m4: Update.
2655         * gnulib/import/m4/alloca.m4: Update.
2656         * gnulib/import/m4/builtin-expect.m4: Update.
2657         * gnulib/import/m4/canonicalize.m4: Update.
2658         * gnulib/import/m4/chdir-long.m4: Update.
2659         * gnulib/import/m4/close.m4: Update.
2660         * gnulib/import/m4/closedir.m4: Update.
2661         * gnulib/import/m4/configmake.m4: Update.
2662         * gnulib/import/m4/d-ino.m4: Update.
2663         * gnulib/import/m4/d-type.m4: Update.
2664         * gnulib/import/m4/dirent_h.m4: Update.
2665         * gnulib/import/m4/dirfd.m4: Update.
2666         * gnulib/import/m4/dirname.m4: Update.
2667         * gnulib/import/m4/double-slash-root.m4: Update.
2668         * gnulib/import/m4/dup.m4: Update.
2669         * gnulib/import/m4/dup2.m4: Update.
2670         * gnulib/import/m4/eealloc.m4: Update.
2671         * gnulib/import/m4/environ.m4: Update.
2672         * gnulib/import/m4/errno_h.m4: Update.
2673         * gnulib/import/m4/error.m4: Update.
2674         * gnulib/import/m4/exponentd.m4: Update.
2675         * gnulib/import/m4/exponentl.m4: Update.
2676         * gnulib/import/m4/extensions.m4: Update.
2677         * gnulib/import/m4/extern-inline.m4: Update.
2678         * gnulib/import/m4/fchdir.m4: Update.
2679         * gnulib/import/m4/fcntl-o.m4: Update.
2680         * gnulib/import/m4/fcntl.m4: Update.
2681         * gnulib/import/m4/fcntl_h.m4: Update.
2682         * gnulib/import/m4/fdopendir.m4: Update.
2683         * gnulib/import/m4/filenamecat.m4: Update.
2684         * gnulib/import/m4/flexmember.m4: Update.
2685         * gnulib/import/m4/float_h.m4: Update.
2686         * gnulib/import/m4/fnmatch.m4: Update.
2687         * gnulib/import/m4/fnmatch_h.m4: Update.
2688         * gnulib/import/m4/fpieee.m4: Update.
2689         * gnulib/import/m4/frexp.m4: Update.
2690         * gnulib/import/m4/frexpl.m4: Update.
2691         * gnulib/import/m4/fstat.m4: Update.
2692         * gnulib/import/m4/fstatat.m4: Update.
2693         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
2694         * gnulib/import/m4/getcwd-path-max.m4: Update.
2695         * gnulib/import/m4/getcwd.m4: Update.
2696         * gnulib/import/m4/getdtablesize.m4: Update.
2697         * gnulib/import/m4/getlogin.m4: Update.
2698         * gnulib/import/m4/getlogin_r.m4: Update.
2699         * gnulib/import/m4/getpagesize.m4: Update.
2700         * gnulib/import/m4/getprogname.m4: Update.
2701         * gnulib/import/m4/gettimeofday.m4: Update.
2702         * gnulib/import/m4/glibc21.m4: Update.
2703         * gnulib/import/m4/glob.m4: Update.
2704         * gnulib/import/m4/glob_h.m4: Update.
2705         * gnulib/import/m4/gnulib-cache.m4: Update.
2706         * gnulib/import/m4/gnulib-common.m4: Update.
2707         * gnulib/import/m4/gnulib-comp.m4: Update.
2708         * gnulib/import/m4/gnulib-tool.m4: Update.
2709         * gnulib/import/m4/hard-locale.m4: Update.
2710         * gnulib/import/m4/include_next.m4: Update.
2711         * gnulib/import/m4/inttypes-pri.m4: Update.
2712         * gnulib/import/m4/inttypes.m4: Update.
2713         * gnulib/import/m4/isnand.m4: Update.
2714         * gnulib/import/m4/isnanl.m4: Update.
2715         * gnulib/import/m4/largefile.m4: Update.
2716         * gnulib/import/m4/limits-h.m4: Update.
2717         * gnulib/import/m4/localcharset.m4: Update.
2718         * gnulib/import/m4/locale-fr.m4: Update.
2719         * gnulib/import/m4/locale-ja.m4: Update.
2720         * gnulib/import/m4/locale-zh.m4: Update.
2721         * gnulib/import/m4/localtime-buffer.m4: Update.
2722         * gnulib/import/m4/longlong.m4: Update.
2723         * gnulib/import/m4/lstat.m4: Update.
2724         * gnulib/import/m4/malloc.m4: Update.
2725         * gnulib/import/m4/malloca.m4: Update.
2726         * gnulib/import/m4/math_h.m4: Update.
2727         * gnulib/import/m4/mbrtowc.m4: Update.
2728         * gnulib/import/m4/mbsinit.m4: Update.
2729         * gnulib/import/m4/mbsrtowcs.m4: Update.
2730         * gnulib/import/m4/mbstate_t.m4: Update.
2731         * gnulib/import/m4/memchr.m4: Update.
2732         * gnulib/import/m4/memmem.m4: Update.
2733         * gnulib/import/m4/mempcpy.m4: Update.
2734         * gnulib/import/m4/memrchr.m4: Update.
2735         * gnulib/import/m4/mkdir.m4: Update.
2736         * gnulib/import/m4/mkstemp.m4: Update.
2737         * gnulib/import/m4/mmap-anon.m4: Update.
2738         * gnulib/import/m4/mode_t.m4: Update.
2739         * gnulib/import/m4/msvc-inval.m4: Update.
2740         * gnulib/import/m4/msvc-nothrow.m4: Update.
2741         * gnulib/import/m4/multiarch.m4: Update.
2742         * gnulib/import/m4/nocrash.m4: Update.
2743         * gnulib/import/m4/off_t.m4: Update.
2744         * gnulib/import/m4/onceonly.m4: Update.
2745         * gnulib/import/m4/open-cloexec.m4: Update.
2746         * gnulib/import/m4/open.m4: Update.
2747         * gnulib/import/m4/openat.m4: Update.
2748         * gnulib/import/m4/opendir.m4: Update.
2749         * gnulib/import/m4/pathmax.m4: Update.
2750         * gnulib/import/m4/rawmemchr.m4: Update.
2751         * gnulib/import/m4/readdir.m4: Update.
2752         * gnulib/import/m4/readlink.m4: Update.
2753         * gnulib/import/m4/realloc.m4: Update.
2754         * gnulib/import/m4/rename.m4: Update.
2755         * gnulib/import/m4/rewinddir.m4: Update.
2756         * gnulib/import/m4/rmdir.m4: Update.
2757         * gnulib/import/m4/save-cwd.m4: Update.
2758         * gnulib/import/m4/secure_getenv.m4: Update.
2759         * gnulib/import/m4/setenv.m4: Update.
2760         * gnulib/import/m4/signal_h.m4: Update.
2761         * gnulib/import/m4/ssize_t.m4: Update.
2762         * gnulib/import/m4/stat-time.m4: Update.
2763         * gnulib/import/m4/stat.m4: Update.
2764         * gnulib/import/m4/std-gnu11.m4: Update.
2765         * gnulib/import/m4/stdbool.m4: Update.
2766         * gnulib/import/m4/stddef_h.m4: Update.
2767         * gnulib/import/m4/stdint.m4: Update.
2768         * gnulib/import/m4/stdio_h.m4: Update.
2769         * gnulib/import/m4/stdlib_h.m4: Update.
2770         * gnulib/import/m4/strchrnul.m4: Update.
2771         * gnulib/import/m4/strdup.m4: Update.
2772         * gnulib/import/m4/strerror.m4: Update.
2773         * gnulib/import/m4/string_h.m4: Update.
2774         * gnulib/import/m4/strstr.m4: Update.
2775         * gnulib/import/m4/strtok_r.m4: Update.
2776         * gnulib/import/m4/sys_socket_h.m4: Update.
2777         * gnulib/import/m4/sys_stat_h.m4: Update.
2778         * gnulib/import/m4/sys_time_h.m4: Update.
2779         * gnulib/import/m4/sys_types_h.m4: Update.
2780         * gnulib/import/m4/tempname.m4: Update.
2781         * gnulib/import/m4/time_h.m4: Update.
2782         * gnulib/import/m4/unistd-safer.m4: Update.
2783         * gnulib/import/m4/unistd_h.m4: Update.
2784         * gnulib/import/m4/warn-on-use.m4: Update.
2785         * gnulib/import/m4/wchar_h.m4: Update.
2786         * gnulib/import/m4/wchar_t.m4: Update.
2787         * gnulib/import/m4/wctype_h.m4: Update.
2788         * gnulib/import/m4/wint_t.m4: Update.
2789         * gnulib/import/malloc.c: Update.
2790         * gnulib/import/malloc/scratch_buffer.h: Update.
2791         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
2792         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
2793         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
2794         * gnulib/import/malloca.c: Update.
2795         * gnulib/import/malloca.h: Update.
2796         * gnulib/import/malloca.valgrind: Update.
2797         * gnulib/import/math.in.h: Update.
2798         * gnulib/import/mbrtowc.c: Update.
2799         * gnulib/import/mbsinit.c: Update.
2800         * gnulib/import/mbsrtowcs-impl.h: Update.
2801         * gnulib/import/mbsrtowcs-state.c: Update.
2802         * gnulib/import/mbsrtowcs.c: Update.
2803         * gnulib/import/memchr.c: Update.
2804         * gnulib/import/memmem.c: Update.
2805         * gnulib/import/mempcpy.c: Update.
2806         * gnulib/import/memrchr.c: Update.
2807         * gnulib/import/mkdir.c: Update.
2808         * gnulib/import/mkstemp.c: Update.
2809         * gnulib/import/msvc-inval.c: Update.
2810         * gnulib/import/msvc-inval.h: Update.
2811         * gnulib/import/msvc-nothrow.c: Update.
2812         * gnulib/import/msvc-nothrow.h: Update.
2813         * gnulib/import/open.c: Update.
2814         * gnulib/import/openat-die.c: Update.
2815         * gnulib/import/openat-priv.h: Update.
2816         * gnulib/import/openat-proc.c: Update.
2817         * gnulib/import/openat.c: Update.
2818         * gnulib/import/openat.h: Update.
2819         * gnulib/import/opendir.c: Update.
2820         * gnulib/import/pathmax.h: Update.
2821         * gnulib/import/pipe-safer.c: Update.
2822         * gnulib/import/rawmemchr.c: Update.
2823         * gnulib/import/readdir.c: Update.
2824         * gnulib/import/readlink.c: Update.
2825         * gnulib/import/realloc.c: Update.
2826         * gnulib/import/ref-add.sin: Update.
2827         * gnulib/import/ref-del.sin: Update.
2828         * gnulib/import/rename.c: Update.
2829         * gnulib/import/rewinddir.c: Update.
2830         * gnulib/import/rmdir.c: Update.
2831         * gnulib/import/same-inode.h: Update.
2832         * gnulib/import/save-cwd.c: Update.
2833         * gnulib/import/save-cwd.h: Update.
2834         * gnulib/import/scratch_buffer.h: Update.
2835         * gnulib/import/secure_getenv.c: Update.
2836         * gnulib/import/setenv.c: Update.
2837         * gnulib/import/signal.in.h: Update.
2838         * gnulib/import/stat-time.c: Update.
2839         * gnulib/import/stat-time.h: Update.
2840         * gnulib/import/stat-w32.c: Update.
2841         * gnulib/import/stat-w32.h: Update.
2842         * gnulib/import/stat.c: Update.
2843         * gnulib/import/stdbool.in.h: Update.
2844         * gnulib/import/stddef.in.h: Update.
2845         * gnulib/import/stdint.in.h: Update.
2846         * gnulib/import/stdio.in.h: Update.
2847         * gnulib/import/stdlib.in.h: Update.
2848         * gnulib/import/str-two-way.h: Update.
2849         * gnulib/import/strchrnul.c: Update.
2850         * gnulib/import/strdup.c: Update.
2851         * gnulib/import/streq.h: Update.
2852         * gnulib/import/strerror-override.c: Update.
2853         * gnulib/import/strerror-override.h: Update.
2854         * gnulib/import/strerror.c: Update.
2855         * gnulib/import/string.in.h: Update.
2856         * gnulib/import/stripslash.c: Update.
2857         * gnulib/import/strnlen1.c: Update.
2858         * gnulib/import/strnlen1.h: Update.
2859         * gnulib/import/strstr.c: Update.
2860         * gnulib/import/strtok_r.c: Update.
2861         * gnulib/import/sys_stat.in.h: Update.
2862         * gnulib/import/sys_time.in.h: Update.
2863         * gnulib/import/sys_types.in.h: Update.
2864         * gnulib/import/tempname.c: Update.
2865         * gnulib/import/tempname.h: Update.
2866         * gnulib/import/time.in.h: Update.
2867         * gnulib/import/unistd--.h: Update.
2868         * gnulib/import/unistd-safer.h: Update.
2869         * gnulib/import/unistd.in.h: Update.
2870         * gnulib/import/unsetenv.c: Update.
2871         * gnulib/import/verify.h: Update.
2872         * gnulib/import/extra/snippet/warn-on-use.h: Update.
2873         * gnulib/import/wchar.in.h: Update.
2874         * gnulib/import/wctype.in.h: Update.
2875         * gnulib/import/xalloc-oversized.h: Update.
2876         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
2877         "53e2c179f26a890fa6685af4b6c1397ee370433b".
2878
2879 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
2880
2881         * record-btrace.c (get_thread_current_frame): Remove
2882         old_inferior_ptid.
2883
2884 2018-09-10  Jerome Guitton  <guitton@adacore.com>
2885
2886         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
2887         with check_tag to 1 if and only if the type is tagged and the
2888         component being searched cannot been found in the current
2889         view. Otherwise, always call ada_to_fixed_type with
2890         check_tag to 0.
2891
2892 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2893
2894         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
2895         declaration.
2896         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
2897         * ada-varobj.c (ada_varobj_get_number_of_children,
2898         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
2899
2900 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2901
2902         * ada-valprint.c (ada_value_print): Use type instead of
2903         enclosing type.
2904
2905 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2906
2907         * ada-lang.c (ada_value_subscript): Handle case when parameter is
2908         an array of access to unconstrained array.
2909
2910 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2911
2912         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
2913         (ada_check_typedef): Use it.
2914
2915 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2916
2917         * ada-varobj.c (ada_varobj_describe_struct_child)
2918         (ada_varobj_describe_child): Handle union case like struct one.
2919
2920 2018-09-10  Tom Tromey  <tom@tromey.com>
2921
2922         PR python/18380:
2923         * python/python.c (_initialize_python): Make example in "python"
2924         help work in Python 3.
2925
2926 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
2927
2928         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
2929         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
2930         $(EXEEXT) to the script, as it is not a program.
2931
2932 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
2933
2934         * python/py-prettyprint.c (pretty_print_one_value): Return
2935         gdbpy_ref<>.
2936         (print_string_repr): Adjust.
2937         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
2938         * python/python-internal.h (apply_varobj_pretty_printer): Return
2939         gdbpy_ref<>.
2940         * varobj.c (varobj_value_get_print_value): Adjust.
2941
2942 2018-09-08  Tom Tromey  <tom@tromey.com>
2943
2944         PR python/16047:
2945         * python/py-prettyprint.c (pretty_print_one_value): Check for
2946         to_string method.
2947
2948 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2949
2950         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
2951         replace_operator_with_call.
2952
2953 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2954
2955         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
2956
2957 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2958
2959         * ada-typeprint.c (print_range): Print the bounds using TYPE
2960         rather than its TYPE_TARGET_TYPE.
2961
2962 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2963
2964         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
2965         call to ada_to_fixed_value_create.
2966
2967 2018-09-08  Jerome Guitton  <guitton@adacore.com>
2968
2969         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
2970
2971 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2972
2973         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
2974         by calls to error.
2975
2976 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2977
2978         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
2979         Move update of loop variable "fi".
2980
2981 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2982
2983         * ada-lang.c (value_assign_to_component): In the case of
2984         big-endian targets, extract the bits of the given VAL
2985         using an src_offset of zero if container is not a scalar.
2986
2987 2018-09-06  Simon Ser  <contact@emersion.fr>
2988
2989         PR gdb/23105
2990         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
2991         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2992         * fbsd-tdep.c (fbsd_make_note_desc): New.
2993         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
2994         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
2995         * target.h (enum target_object) Add FreeBSD-specific
2996         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2997
2998 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2999
3000         * compile/compile-c.h (generate_c_for_variable_locations):
3001         Change reference to pointer.
3002         * compile/compile-c-support.c (compile_program) <compute>:
3003         Likewise.
3004         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
3005         (generate_c_for_for_one_variable): Likewise
3006         (generate_c_for_variable_locations): Likewise
3007         * compile/compile-c-types.c (compile_c_instance::convert_type):
3008         Likewise
3009         * compile/compile-cplus-symbols.c (convert_one_symbol):
3010         std::move the scope passed to enter_scope.
3011         * compile/compile-cplus-types.c
3012         (compile_cplus_instance::enter_scope): Make parameter
3013         rvalue-reference.
3014         (compile_cplus_instance::new_scope): Change reference to
3015         pointer.
3016         (compile_cplus_instance::convert_type): Likewise
3017         (compile_cplus_convert_typedef): std::move the scope passed to
3018         enter_scope.
3019         (compile_cplus_convert_struct_or_union): Likewise.
3020         (compile_cplus_convert_enum): Likewise.
3021         (compile_cplus_convert_namespace): Likewise.
3022         * compile/compile-cplus.h (compile_cplus_instance)
3023         <enter_scope>: Make parameter rvalue-reference.
3024         * compile/compile-internal.h (compile_instance)
3025         <get_cached_type>: Likewise
3026         * compile/compile-loc2c.c (push): Likewise
3027         (pushf): Likewise
3028         (unary): Likewise
3029         (binary): Likewise
3030         (print_label): Likewise
3031         (pushf_register_address): Likewise
3032         (pushf_register): Likewise
3033         (do_compile_dwarf_expr_to_c): Likewise
3034         (compile_dwarf_expr_to_c): Likewise
3035         (compile_dwarf_bounds_to_c): Likewise
3036         * compile/compile.c (compile_instance::get_cached_type):
3037         Likewise
3038         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
3039         (compile_dwarf_bounds_to_c): Likewise
3040         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
3041         (dwarf2_compile_property_to_c): Likewise
3042         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
3043         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
3044         Likewise
3045
3046 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3047
3048         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
3049         * tui/tui-data.c (init_content_element): Don't initialize it.
3050
3051 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3052
3053         * tui/tui-data.h (struct tui_win_info)
3054         <detail::opaque>: Remove.
3055         * tui/tui-data.c (init_win_info): Remove assignment.
3056
3057 2018-09-05  Tom Tromey  <tom@tromey.com>
3058
3059         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
3060         -Wformat-nonliteral.
3061         * target-float.c (host_float_ops<T>::to_string)
3062         (host_float_ops<T>::from_string): Use
3063         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
3064         * configure: Rebuild.
3065
3066 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
3067
3068         * printcmd.c (printf_c_string): Use
3069         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
3070         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
3071
3072 2018-09-05  Tom Tromey  <tom@tromey.com>
3073
3074         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
3075
3076 2018-09-05  Tom de Vries  <tdevries@suse.de>
3077
3078         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
3079         with resolve_abstract_p == true.
3080         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
3081         defaulting to false. Propagate resolve_abstract_p to
3082         dwarf2_fetch_die_loc_sect_off.
3083         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
3084         parameter, defaulting to false.
3085         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
3086         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
3087         parameter.
3088         * dwarf2read.h (struct die_info): Forward-declare.
3089         (die_info_ptr): New typedef.
3090         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
3091
3092 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
3093
3094         GDB 8.2 released.
3095
3096 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
3097             Pedro Alves  <palves@redhat.com>
3098
3099         * gnulib/Makefile.in (aclocal_m4_deps): Move to
3100         "aclocal-m4-deps.mk".  Include file here.
3101         $(srcdir)/aclocal.m4: Add "configure.ac".
3102         * gnulib/aclocal-m4-deps.mk: New file.
3103         * gnulib/update-gnulib.sh: Automatically update
3104         "aclocal-m4-deps.mk".
3105
3106 2018-09-04  Tom Tromey  <tom@tromey.com>
3107
3108         * configure: Rebuild.
3109         * configure.ac: Remove multi-ice code.
3110
3111 2018-09-04  Tom Tromey  <tom@tromey.com>
3112
3113         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
3114         (ada-exp.o): Update.
3115
3116 2018-09-04  Tom Tromey  <tom@tromey.com>
3117
3118         * Makefile.in (printcmd.o, target-float.o): Remove.
3119         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
3120
3121 2018-09-04  Tom Tromey  <tom@tromey.com>
3122
3123         * gnulib/Makefile.in: Remove obsolete comment.
3124         * Makefile.in: Remove obsolete comment.
3125
3126 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
3127
3128         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
3129         line with '+'.
3130
3131 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
3132
3133         * riscv-tdep.c: Add 'prologue-value.h' include.
3134         (struct riscv_unwind_cache): New struct.
3135         (riscv_debug_unwinder): New global.
3136         (riscv_scan_prologue): Update arguments, capture register details
3137         from prologue scan.
3138         (riscv_skip_prologue): Reformat arguments line, move end of
3139         prologue calculation into riscv_scan_prologue.
3140         (riscv_frame_cache): Update return type, create
3141         riscv_unwind_cache, scan the prologue, and fill in remaining cache
3142         details.
3143         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
3144         (riscv_frame_prev_register): Use the trad_frame within the
3145         riscv_unwind_cache.
3146         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
3147         flag.
3148
3149 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
3150
3151         * trad-frame.h (trad_frame_set_realreg): Declare.
3152         (trad_frame_set_addr): Declare.
3153         * trad-frame.c (trad_frame_set_realreg): Define new function.
3154         (trad_frame_set_addr): Define new function.
3155         (trad_frame_set_reg_realreg): Use new function.
3156         (trad_frame_set_reg_addr): Use new function.
3157
3158 2018-09-01  Keith Seitz  <keiths@redhat.com>
3159
3160         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
3161         pulongest instead of "%lld".
3162         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
3163         ATTRIBUTE_UNUSED.
3164
3165 2018-08-31  Tom Tromey  <tom@tromey.com>
3166
3167         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
3168         variant part type.
3169
3170 2018-08-31  Pedro Alves  <palves@redhat.com>
3171
3172         * gdbarch.h: Regenerate.
3173
3174 2018-08-31  Pedro Alves  <palves@redhat.com>
3175
3176         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
3177         * target.h (Hardware watchpoint interfaces): Describe
3178         continuable/steppable/non-steppable watchpoints.
3179         * gdbarch.h, gdbarch.c: Regenerate.
3180
3181 2018-08-31  Pedro Alves  <palves@redhat.com>
3182
3183         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
3184         Delete.
3185         * s390-linux-nat.c
3186         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
3187         * target.h (target_ops::have_continuable_watchpoint): Delete.
3188         (target_have_continuable_watchpoint): Delete.
3189         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
3190         * target-delegates.c: Regenerate.
3191
3192 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
3193
3194         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
3195         the files present in "gnulib/import/m4/".
3196
3197 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
3198
3199         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
3200         c.sw, c.swsp, and c.sdsp.
3201
3202 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
3203
3204         * riscv-tdep.c (struct riscv_inferior_data): Delete.
3205         (riscv_read_misa_reg): Don't cache value read into inferior data.
3206         (riscv_new_inferior_data): Delete.
3207         (riscv_inferior_data_cleanup): Delete.
3208         (riscv_inferior_data): Delete.
3209         (riscv_invalidate_inferior_data): Delete.
3210         (_initialize_riscv_tdep): Remove initialisation of inferior data.
3211
3212 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
3213
3214         * compile/compile-cplus-types.c
3215         (compile_cplus_instance::leave_scope): Take the address of scope
3216         object.
3217         (compile_cplus_instance::convert_qualified_base): Compare quals
3218         to 0.
3219
3220 2018-08-30  Keith Seitz  <keiths@redhat.com>
3221
3222         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
3223         Use "%s" and host_address_to_string instead of "%p" in printf.
3224
3225 2018-08-29  Keith Seitz  <keiths@redhat.com>
3226
3227         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
3228         and compile-cplus-types.c.
3229         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
3230         * c-lang.c (cplus_language_defn): Set C++ compile functions.
3231         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
3232         Declare.
3233         * compile/compile-c-support.c: Include compile-cplus.h.
3234         (load_libcompile): Templatize.
3235         (get_compile_context): "New" function.
3236         (c_get_compile_context): Use get_compile_context.
3237         (cplus_get_compile_context): New function.
3238         (cplus_push_user_expression, cplus_pop_user_expression)
3239         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
3240         (cplus_compute_program): Define new structs/functions.
3241         * compile/compile-cplus-symmbols.c: New file.
3242         * compile/compile-cplus-types.c: New file.
3243         * compile/compile-cplus.h: New file.
3244         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
3245         Declare.
3246         * compile/compile-object-load.c (get_out_value_type): Use
3247         strncmp_iw when comparing symbol names.
3248         (compile_object_load): Add mst_bss and mst_data.
3249         * compile/compile.c (_initialize_compile): Remove
3250         -Wno-implicit-function-declaration from `compile_args'.
3251         * compile/gcc-cp-plugin.h: New file.
3252         * NEWS: Mention C++ compile support and new debug options.
3253
3254 2018-08-29  Keith Seitz  <keiths@redhat.com>
3255
3256         * linespec.c (collect_info::add_symbol): Make virtual.
3257         (struct symbol_searcher_collect_info): New struct.
3258         (symbol_searcher::find_all_symbols): New method.
3259         * symtab.h (class symbol_searcher): New class.
3260
3261 2018-08-29  Keith Seitz  <keiths@redhat.com>
3262
3263         * linespec.c (struct linespec) <function_symbols, label_symbols>:
3264         Change to vector of block_symbol.  Update all users.
3265         (struct collect_info) <symbols>: Likewise.
3266         (collect_info::add_symbol): Take block_symbol as argument.
3267         Update all callers.
3268         (decode_compound_collector) <m_symbols>: Change type to vector
3269         of block_symbol.  Update all users.
3270         (decode_compound_collector::operator ()): Change parameter type
3271         to block_symbol.
3272         (find_method, find_function_symbols, find_linespec_symbols)
3273         (find_label_symbols_in_block, find_label_symbols): Change symbol
3274         vectors to block_symbol vectors.
3275         * symtab.h (symbol_found_callback_ftype): Change parameter type to
3276         block_symbol.
3277
3278 2018-08-29  Keith Seitz  <keiths@redhat.com>
3279
3280         * linespec.c (symbolp): Remove typedef and VEC definitions.
3281         (bound_minimal_symbol_d): Likewise.
3282
3283 2018-08-29  Keith Seitz  <keiths@redhat.com>
3284
3285         * linespec.c (decode_compound_collector::decode_compound_collector):
3286         Remove initialization for `m_symtabs'.
3287         (decode_compound_collector::release_symbols): Change return type
3288         to std::vector.  Update all callers.
3289         (class decode_compound_collector) <m_symbols>: Change type to
3290         std::vector.
3291         (lookup_prefix_sym): Change return type to std::vector.  Update all
3292         callers.
3293         (compare_symbols): Remove.
3294         (std_compare_symbols): Rename to `compare_symbols'.
3295         (find_method): Change `sym_classes' parameter to std::vector.
3296         Update all callers.  Use std::sort to sort sym_classes.
3297         (find_linespec_symbols): Remove cleanup.
3298
3299 2018-08-29  Keith Seitz  <keiths@redhat.com>
3300
3301         * linespec.c (struct linespec) <minimal_symbols>: Change type to
3302         std::vector.  Update all users.
3303         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
3304         (struct collect_info) <minimal_symbols>: Likewise.
3305         (compare_msymbols): Return bool.  Change parameters to const
3306         bound_minimal_symbol references.
3307         (find_method, find_function_symbols, find_linespec_symbols): Change
3308         `minsyms' parameter to std::vector.  Update all callers.
3309
3310 2018-08-29  Keith Seitz  <keiths@redhat.com>
3311
3312         * linespec.c (struct linespec) <label_symbols>: Change type to
3313         std::vector.  Update all users.
3314         (find_label_symbols_in_block): Change `result' parameter to
3315         std::vector.  Update all callers.
3316         (find_label_symbols): Return std::vector.  Update all callers.
3317
3318 2018-08-29  Keith Seitz  <keiths@redhat.com>
3319
3320         * linespec.c (struct linespec) <function_symbols>: Change type to
3321         std::vector.  Update all users.
3322         (struct collect_info) <function_symbols>: Likewise.
3323         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
3324         (std_compare_symbols): New function.
3325         (find_method, find_function_symbols, find_linespec_symbols)
3326         (find_label_symbols_in_block): Change `symbols' parameter to
3327         std::vector.  Update all callers.
3328         (find_label_symbols): Likewise for `function_symbols' and
3329         `label_funcs_ret'.
3330
3331 2018-08-29  Keith Seitz  <keiths@redhat.com>
3332
3333         * linespec.c (symtab_vector_up): Define.
3334         (struct linespec) <file_symtabs>: Change type to std::vector *.
3335         Update all uses.
3336         (struct collect_info) <file_symtabs>: Likewise.
3337         (collect_symtabs_from_filename): Return symtab_vector_up.
3338         Update all callers.
3339         (decode_objc): Remove cleanup.
3340         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
3341         (symtab_collector::release_symtabs): Return symtab_vector_up.
3342         Update all callers.
3343         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
3344         Update all users.
3345         (collect_symtabs_from_filename, symtabs_from_filename): Return
3346         symtab_vector_up.  Update all callers.
3347
3348 2018-08-29  Tom Tromey  <tom@tromey.com>
3349
3350         * csky-tdep.c (csky_analyze_prologue): Use
3351         core_addr_to_string_nz.
3352
3353 2018-08-29  Tom Tromey  <tom@tromey.com>
3354
3355         * windows-nat.c (struct xlate_exception) <them>: Change type to
3356         DWORD.
3357         (xlate): Fix formatting.  Remove last entry.
3358         (struct xlate_exception, xlate): Comment out.
3359         (windows_nat_target::resume): Use ranged for.
3360
3361 2018-08-29  Jim Wilson  <jimw@sifive.com>
3362
3363         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
3364         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
3365         of NT_PRFPREG.
3366         (riscv_linux_nat_target::store_registers): Likewise.
3367
3368 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
3369
3370         PR gdb/23555
3371         PR gdb/23558
3372         * gnulib/aclocal.m4: Regenerate.
3373         * gnulib/config.in: Regenerate.
3374         * gnulib/configure: Regenerate.
3375         * gnulib/import/Makefile.am: Update.
3376         * gnulib/import/Makefile.in: Update.
3377         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
3378         * gnulib/import/_Noreturn.h: ... this.
3379         * gnulib/import/alloca.in.h: Update.
3380         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
3381         * gnulib/import/arg-nonnull.h: ... this.
3382         * gnulib/import/assure.h: Update.
3383         * gnulib/import/at-func.c: Update.
3384         * gnulib/import/basename-lgpl.c: Update.
3385         * gnulib/import/extra/snippet/c++defs.h: Rename to...
3386         * gnulib/import/c++defs.h: ... this.
3387         * gnulib/import/canonicalize-lgpl.c: Update.
3388         * gnulib/import/cdefs.h: Update.
3389         * gnulib/import/chdir-long.c: Update.
3390         * gnulib/import/chdir-long.h: Update.
3391         * gnulib/import/cloexec.c: Update.
3392         * gnulib/import/cloexec.h: Update.
3393         * gnulib/import/close.c: Update.
3394         * gnulib/import/closedir.c: Update.
3395         * gnulib/import/config.charset: Update.
3396         * gnulib/import/dirent-private.h: Update.
3397         * gnulib/import/dirent.in.h: Update.
3398         * gnulib/import/dirfd.c: Update.
3399         * gnulib/import/dirname-lgpl.c: Update.
3400         * gnulib/import/dirname.h: Update.
3401         * gnulib/import/dosname.h: Update.
3402         * gnulib/import/dup-safer-flag.c: Update.
3403         * gnulib/import/dup-safer.c: Update.
3404         * gnulib/import/dup.c: Update.
3405         * gnulib/import/dup2.c: Update.
3406         * gnulib/import/errno.in.h: Update.
3407         * gnulib/import/error.c: Update.
3408         * gnulib/import/error.h: Update.
3409         * gnulib/import/exitfail.c: Update.
3410         * gnulib/import/exitfail.h: Update.
3411         * gnulib/import/extra/update-copyright: Update.
3412         * gnulib/import/fchdir.c: Update.
3413         * gnulib/import/fcntl.c: Update.
3414         * gnulib/import/fcntl.in.h: Update.
3415         * gnulib/import/fd-hook.c: Update.
3416         * gnulib/import/fd-hook.h: Update.
3417         * gnulib/import/fd-safer-flag.c: Update.
3418         * gnulib/import/fd-safer.c: Update.
3419         * gnulib/import/fdopendir.c: Update.
3420         * gnulib/import/filename.h: Update.
3421         * gnulib/import/filenamecat-lgpl.c: Update.
3422         * gnulib/import/filenamecat.h: Update.
3423         * gnulib/import/flexmember.h: Update.
3424         * gnulib/import/float+.h: Update.
3425         * gnulib/import/float.c: Update.
3426         * gnulib/import/float.in.h: Update.
3427         * gnulib/import/fnmatch.c: Update.
3428         * gnulib/import/fnmatch.in.h: Update.
3429         * gnulib/import/fnmatch_loop.c: Update.
3430         * gnulib/import/fpucw.h: Update.
3431         * gnulib/import/frexp.c: Update.
3432         * gnulib/import/frexpl.c: Update.
3433         * gnulib/import/fstat.c: Update.
3434         * gnulib/import/fstatat.c: Update.
3435         * gnulib/import/getcwd-lgpl.c: Update.
3436         * gnulib/import/getcwd.c: Update.
3437         * gnulib/import/getdtablesize.c: Update.
3438         * gnulib/import/getlogin_r.c: Update.
3439         * gnulib/import/getprogname.c: Update.
3440         * gnulib/import/getprogname.h: Update.
3441         * gnulib/import/gettext.h: Update.
3442         * gnulib/import/gettimeofday.c: Update.
3443         * gnulib/import/glob-libc.h: Update.
3444         * gnulib/import/glob.c: Update.
3445         * gnulib/import/glob.in.h: Update.
3446         * gnulib/import/glob_internal.h: Update.
3447         * gnulib/import/glob_pattern_p.c: Update.
3448         * gnulib/import/globfree.c: Update.
3449         * gnulib/import/hard-locale.c: Update.
3450         * gnulib/import/hard-locale.h: Update.
3451         * gnulib/import/intprops.h: Update.
3452         * gnulib/import/inttypes.in.h: Update.
3453         * gnulib/import/isnan.c: Update.
3454         * gnulib/import/isnand-nolibm.h: Update.
3455         * gnulib/import/isnand.c: Update.
3456         * gnulib/import/isnanl-nolibm.h: Update.
3457         * gnulib/import/isnanl.c: Update.
3458         * gnulib/import/itold.c: Update.
3459         * gnulib/import/libc-config.h: Update.
3460         * gnulib/import/limits.in.h: Update.
3461         * gnulib/import/localcharset.c: Update.
3462         * gnulib/import/localcharset.h: Update.
3463         * gnulib/import/localtime-buffer.c: Update.
3464         * gnulib/import/localtime-buffer.h: Update.
3465         * gnulib/import/lstat.c: Update.
3466         * gnulib/import/m4/00gnulib.m4: Update.
3467         * gnulib/import/m4/__inline.m4: Update.
3468         * gnulib/import/m4/absolute-header.m4: Update.
3469         * gnulib/import/m4/alloca.m4: Update.
3470         * gnulib/import/m4/builtin-expect.m4: Update.
3471         * gnulib/import/m4/canonicalize.m4: Update.
3472         * gnulib/import/m4/chdir-long.m4: Update.
3473         * gnulib/import/m4/close.m4: Update.
3474         * gnulib/import/m4/closedir.m4: Update.
3475         * gnulib/import/m4/configmake.m4: Update.
3476         * gnulib/import/m4/d-ino.m4: Update.
3477         * gnulib/import/m4/d-type.m4: Update.
3478         * gnulib/import/m4/dirent_h.m4: Update.
3479         * gnulib/import/m4/dirfd.m4: Update.
3480         * gnulib/import/m4/dirname.m4: Update.
3481         * gnulib/import/m4/double-slash-root.m4: Update.
3482         * gnulib/import/m4/dup.m4: Update.
3483         * gnulib/import/m4/dup2.m4: Update.
3484         * gnulib/import/m4/eealloc.m4: Update.
3485         * gnulib/import/m4/environ.m4: Update.
3486         * gnulib/import/m4/errno_h.m4: Update.
3487         * gnulib/import/m4/error.m4: Update.
3488         * gnulib/import/m4/exponentd.m4: Update.
3489         * gnulib/import/m4/exponentl.m4: Update.
3490         * gnulib/import/m4/extensions.m4: Update.
3491         * gnulib/import/m4/extern-inline.m4: Update.
3492         * gnulib/import/m4/fchdir.m4: Update.
3493         * gnulib/import/m4/fcntl-o.m4: Update.
3494         * gnulib/import/m4/fcntl.m4: Update.
3495         * gnulib/import/m4/fcntl_h.m4: Update.
3496         * gnulib/import/m4/fdopendir.m4: Update.
3497         * gnulib/import/m4/filenamecat.m4: Update.
3498         * gnulib/import/m4/flexmember.m4: Update.
3499         * gnulib/import/m4/float_h.m4: Update.
3500         * gnulib/import/m4/fnmatch.m4: Update.
3501         * gnulib/import/m4/fnmatch_h.m4: Update.
3502         * gnulib/import/m4/fpieee.m4: Update.
3503         * gnulib/import/m4/frexp.m4: Update.
3504         * gnulib/import/m4/frexpl.m4: Update.
3505         * gnulib/import/m4/fstat.m4: Update.
3506         * gnulib/import/m4/fstatat.m4: Update.
3507         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
3508         * gnulib/import/m4/getcwd-path-max.m4: Update.
3509         * gnulib/import/m4/getcwd.m4: Update.
3510         * gnulib/import/m4/getdtablesize.m4: Update.
3511         * gnulib/import/m4/getlogin.m4: Update.
3512         * gnulib/import/m4/getlogin_r.m4: Update.
3513         * gnulib/import/m4/getpagesize.m4: Update.
3514         * gnulib/import/m4/getprogname.m4: Update.
3515         * gnulib/import/m4/gettimeofday.m4: Update.
3516         * gnulib/import/m4/glibc21.m4: Update.
3517         * gnulib/import/m4/glob.m4: Update.
3518         * gnulib/import/m4/glob_h.m4: Update.
3519         * gnulib/import/m4/gnulib-cache.m4: Update.
3520         * gnulib/import/m4/gnulib-common.m4: Update.
3521         * gnulib/import/m4/gnulib-comp.m4: Update.
3522         * gnulib/import/m4/gnulib-tool.m4: Update.
3523         * gnulib/import/m4/hard-locale.m4: Update.
3524         * gnulib/import/m4/include_next.m4: Update.
3525         * gnulib/import/m4/inttypes-pri.m4: Update.
3526         * gnulib/import/m4/inttypes.m4: Update.
3527         * gnulib/import/m4/isnand.m4: Update.
3528         * gnulib/import/m4/isnanl.m4: Update.
3529         * gnulib/import/m4/largefile.m4: Update.
3530         * gnulib/import/m4/limits-h.m4: Update.
3531         * gnulib/import/m4/localcharset.m4: Update.
3532         * gnulib/import/m4/locale-fr.m4: Update.
3533         * gnulib/import/m4/locale-ja.m4: Update.
3534         * gnulib/import/m4/locale-zh.m4: Update.
3535         * gnulib/import/m4/localtime-buffer.m4: Update.
3536         * gnulib/import/m4/longlong.m4: Update.
3537         * gnulib/import/m4/lstat.m4: Update.
3538         * gnulib/import/m4/malloc.m4: Update.
3539         * gnulib/import/m4/malloca.m4: Update.
3540         * gnulib/import/m4/math_h.m4: Update.
3541         * gnulib/import/m4/mbrtowc.m4: Update.
3542         * gnulib/import/m4/mbsinit.m4: Update.
3543         * gnulib/import/m4/mbsrtowcs.m4: Update.
3544         * gnulib/import/m4/mbstate_t.m4: Update.
3545         * gnulib/import/m4/memchr.m4: Update.
3546         * gnulib/import/m4/memmem.m4: Update.
3547         * gnulib/import/m4/mempcpy.m4: Update.
3548         * gnulib/import/m4/memrchr.m4: Update.
3549         * gnulib/import/m4/mkdir.m4: Update.
3550         * gnulib/import/m4/mkstemp.m4: Update.
3551         * gnulib/import/m4/mmap-anon.m4: Update.
3552         * gnulib/import/m4/mode_t.m4: Update.
3553         * gnulib/import/m4/msvc-inval.m4: Update.
3554         * gnulib/import/m4/msvc-nothrow.m4: Update.
3555         * gnulib/import/m4/multiarch.m4: Update.
3556         * gnulib/import/m4/nocrash.m4: Update.
3557         * gnulib/import/m4/off_t.m4: Update.
3558         * gnulib/import/m4/onceonly.m4: Update.
3559         * gnulib/import/m4/open-cloexec.m4: Update.
3560         * gnulib/import/m4/open.m4: Update.
3561         * gnulib/import/m4/openat.m4: Update.
3562         * gnulib/import/m4/opendir.m4: Update.
3563         * gnulib/import/m4/pathmax.m4: Update.
3564         * gnulib/import/m4/rawmemchr.m4: Update.
3565         * gnulib/import/m4/readdir.m4: Update.
3566         * gnulib/import/m4/readlink.m4: Update.
3567         * gnulib/import/m4/realloc.m4: Update.
3568         * gnulib/import/m4/rename.m4: Update.
3569         * gnulib/import/m4/rewinddir.m4: Update.
3570         * gnulib/import/m4/rmdir.m4: Update.
3571         * gnulib/import/m4/save-cwd.m4: Update.
3572         * gnulib/import/m4/secure_getenv.m4: Update.
3573         * gnulib/import/m4/setenv.m4: Update.
3574         * gnulib/import/m4/signal_h.m4: Update.
3575         * gnulib/import/m4/ssize_t.m4: Update.
3576         * gnulib/import/m4/stat-time.m4: Update.
3577         * gnulib/import/m4/stat.m4: Update.
3578         * gnulib/import/m4/std-gnu11.m4: Update.
3579         * gnulib/import/m4/stdbool.m4: Update.
3580         * gnulib/import/m4/stddef_h.m4: Update.
3581         * gnulib/import/m4/stdint.m4: Update.
3582         * gnulib/import/m4/stdio_h.m4: Update.
3583         * gnulib/import/m4/stdlib_h.m4: Update.
3584         * gnulib/import/m4/strchrnul.m4: Update.
3585         * gnulib/import/m4/strdup.m4: Update.
3586         * gnulib/import/m4/strerror.m4: Update.
3587         * gnulib/import/m4/string_h.m4: Update.
3588         * gnulib/import/m4/strstr.m4: Update.
3589         * gnulib/import/m4/strtok_r.m4: Update.
3590         * gnulib/import/m4/sys_socket_h.m4: Update.
3591         * gnulib/import/m4/sys_stat_h.m4: Update.
3592         * gnulib/import/m4/sys_time_h.m4: Update.
3593         * gnulib/import/m4/sys_types_h.m4: Update.
3594         * gnulib/import/m4/tempname.m4: Update.
3595         * gnulib/import/m4/time_h.m4: Update.
3596         * gnulib/import/m4/unistd-safer.m4: Update.
3597         * gnulib/import/m4/unistd_h.m4: Update.
3598         * gnulib/import/m4/warn-on-use.m4: Update.
3599         * gnulib/import/m4/wchar_h.m4: Update.
3600         * gnulib/import/m4/wchar_t.m4: Update.
3601         * gnulib/import/m4/wctype_h.m4: Update.
3602         * gnulib/import/m4/wint_t.m4: Update.
3603         * gnulib/import/malloc.c: Update.
3604         * gnulib/import/malloc/scratch_buffer.h: Update.
3605         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
3606         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
3607         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
3608         * gnulib/import/malloca.c: Update.
3609         * gnulib/import/malloca.h: Update.
3610         * gnulib/import/malloca.valgrind: Update.
3611         * gnulib/import/math.in.h: Update.
3612         * gnulib/import/mbrtowc.c: Update.
3613         * gnulib/import/mbsinit.c: Update.
3614         * gnulib/import/mbsrtowcs-impl.h: Update.
3615         * gnulib/import/mbsrtowcs-state.c: Update.
3616         * gnulib/import/mbsrtowcs.c: Update.
3617         * gnulib/import/memchr.c: Update.
3618         * gnulib/import/memmem.c: Update.
3619         * gnulib/import/mempcpy.c: Update.
3620         * gnulib/import/memrchr.c: Update.
3621         * gnulib/import/mkdir.c: Update.
3622         * gnulib/import/mkstemp.c: Update.
3623         * gnulib/import/msvc-inval.c: Update.
3624         * gnulib/import/msvc-inval.h: Update.
3625         * gnulib/import/msvc-nothrow.c: Update.
3626         * gnulib/import/msvc-nothrow.h: Update.
3627         * gnulib/import/open.c: Update.
3628         * gnulib/import/openat-die.c: Update.
3629         * gnulib/import/openat-priv.h: Update.
3630         * gnulib/import/openat-proc.c: Update.
3631         * gnulib/import/openat.c: Update.
3632         * gnulib/import/openat.h: Update.
3633         * gnulib/import/opendir.c: Update.
3634         * gnulib/import/pathmax.h: Update.
3635         * gnulib/import/pipe-safer.c: Update.
3636         * gnulib/import/rawmemchr.c: Update.
3637         * gnulib/import/readdir.c: Update.
3638         * gnulib/import/readlink.c: Update.
3639         * gnulib/import/realloc.c: Update.
3640         * gnulib/import/ref-add.sin: Update.
3641         * gnulib/import/ref-del.sin: Update.
3642         * gnulib/import/rename.c: Update.
3643         * gnulib/import/rewinddir.c: Update.
3644         * gnulib/import/rmdir.c: Update.
3645         * gnulib/import/same-inode.h: Update.
3646         * gnulib/import/save-cwd.c: Update.
3647         * gnulib/import/save-cwd.h: Update.
3648         * gnulib/import/scratch_buffer.h: Update.
3649         * gnulib/import/secure_getenv.c: Update.
3650         * gnulib/import/setenv.c: Update.
3651         * gnulib/import/signal.in.h: Update.
3652         * gnulib/import/stat-time.c: Update.
3653         * gnulib/import/stat-time.h: Update.
3654         * gnulib/import/stat-w32.c: Update.
3655         * gnulib/import/stat-w32.h: Update.
3656         * gnulib/import/stat.c: Update.
3657         * gnulib/import/stdbool.in.h: Update.
3658         * gnulib/import/stddef.in.h: Update.
3659         * gnulib/import/stdint.in.h: Update.
3660         * gnulib/import/stdio.in.h: Update.
3661         * gnulib/import/stdlib.in.h: Update.
3662         * gnulib/import/str-two-way.h: Update.
3663         * gnulib/import/strchrnul.c: Update.
3664         * gnulib/import/strdup.c: Update.
3665         * gnulib/import/streq.h: Update.
3666         * gnulib/import/strerror-override.c: Update.
3667         * gnulib/import/strerror-override.h: Update.
3668         * gnulib/import/strerror.c: Update.
3669         * gnulib/import/string.in.h: Update.
3670         * gnulib/import/stripslash.c: Update.
3671         * gnulib/import/strnlen1.c: Update.
3672         * gnulib/import/strnlen1.h: Update.
3673         * gnulib/import/strstr.c: Update.
3674         * gnulib/import/strtok_r.c: Update.
3675         * gnulib/import/sys_stat.in.h: Update.
3676         * gnulib/import/sys_time.in.h: Update.
3677         * gnulib/import/sys_types.in.h: Update.
3678         * gnulib/import/tempname.c: Update.
3679         * gnulib/import/tempname.h: Update.
3680         * gnulib/import/time.in.h: Update.
3681         * gnulib/import/unistd--.h: Update.
3682         * gnulib/import/unistd-safer.h: Update.
3683         * gnulib/import/unistd.in.h: Update.
3684         * gnulib/import/unsetenv.c: Update.
3685         * gnulib/import/verify.h: Update.
3686         * gnulib/import/extra/snippet/warn-on-use.h: Update.
3687         * gnulib/import/wchar.in.h: Update.
3688         * gnulib/import/wctype.in.h: Update.
3689         * gnulib/import/xalloc-oversized.h: Update.
3690         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
3691         "53e2c179f26a890fa6685af4b6c1397ee370433b".
3692
3693 2018-08-16  Gary Benson <gbenson@redhat.com>
3694
3695         PR gdb/13000:
3696         * gdb/main.c (captured_main_1): Exit with nonzero status
3697         in batch mode if the last command to be executed failed.
3698         * NEWS: Mention the above.
3699
3700 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
3701
3702         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
3703         end of warning message.
3704
3705 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3706
3707         PR gdb/22943:
3708         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
3709         (aarch64_extract_return_value): Use
3710         aapcs_is_vfp_call_or_return_candidate.
3711         (aarch64_return_in_memory): Likewise.
3712         (aarch64_store_return_value): Likewise.
3713
3714 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3715
3716         * aarch64-tdep.c
3717         (aapcs_is_vfp_call_or_return_candidate): Make static
3718         (pass_in_v_or_stack): Remove function.
3719         (pass_in_v_vfp_candidate): New function.
3720         (aarch64_push_dummy_call): Check for float register candidates.
3721
3722 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3723
3724         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
3725         (aapcs_is_vfp_call_or_return_candidate_1): New function.
3726         (aapcs_is_vfp_call_or_return_candidate): Likewise.
3727
3728 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
3729
3730         PR build/23399
3731         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
3732         (struct ipa_sym_addresses): Rename to...
3733         (struct ipa_sym_addresses_common): ... this.
3734         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
3735
3736 2018-08-28  Tom Tromey  <tom@tromey.com>
3737
3738         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3739         (token_fifo): Now a std::vector.
3740         (yylex, c_parse): Update.
3741         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3742         (token_fifo): Now a std::vector.
3743         (yylex, d_parse): Update.
3744         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3745         (token_fifo): Now a std::vector.
3746         (yylex, go_parse): Update.
3747
3748 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
3749
3750         * parser-defs.h (struct type_stack) <elements>: Change type to
3751         std::vector<union type_stack_elt>.
3752         <depth, size>: Remove.
3753         * parse.c (parse_exp_in_context_1): Adjust.
3754         (type_stack_reserve): Remove.
3755         (check_type_stack_depth): Remove.
3756         (insert_into_type_stack): Adjust to std::vector.
3757         (insert_type): Likewise.
3758         (push_type): Likewise.
3759         (push_type_int): Likewise.
3760         (insert_type_address_space): Likewise.
3761         (pop_type): Likewise.
3762         (pop_type_int): Likewise.
3763         (pop_typelist): Likewise.
3764         (pop_type_stack): Likewise.
3765         (append_type_stack): Likewise.
3766         (push_type_stack): Likewise.
3767         (get_type_stack): Likewise.
3768         (type_stack_cleanup): Likewise.
3769         (push_typelist): Likewise.
3770         (follow_types): Likewise.
3771         (_initialize_parse): Likewise.
3772
3773 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
3774
3775         * NEWS: Mention csky target.
3776
3777 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
3778             Hafiz Abid Qadeer  <abidh@codesourcery.com>
3779             Don Breazeal  <donb@codesourcery.com>
3780
3781         * csky-linux-tdep.c: New file.
3782         * csky-tdep.c: Likewise.
3783         * csky-tdep.h: Likewise.
3784         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
3785         csky-tdep.o.
3786         (HFILES_NO_SRCDIR): Add csky-tdep.h.
3787         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
3788         * configure.tgt: Add csky support.
3789
3790 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
3791
3792         * python/py-framefilter.c (py_print_frame): Print frame architecture
3793         when printing on an MI output.
3794
3795 2018-08-27  Tom Tromey  <tom@tromey.com>
3796
3797         PR build/23087:
3798         * configure: Rebuild.
3799         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
3800
3801 2018-08-27  Tom Tromey  <tom@tromey.com>
3802
3803         * aarch64-linux-tdep.c
3804         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
3805         casts to int.
3806
3807 2018-08-27  Tom Tromey  <tom@tromey.com>
3808
3809         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
3810         unsigned.
3811         (ppc64_standard_linkage1, ppc64_standard_linkage2)
3812         (ppc64_standard_linkage3, ppc64_standard_linkage4)
3813         (ppc64_standard_linkage5, ppc64_standard_linkage6)
3814         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
3815         unsigned.
3816
3817 2018-08-27  Tom Tromey  <tom@tromey.com>
3818
3819         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
3820         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
3821
3822 2018-08-27  Tom Tromey  <tom@tromey.com>
3823
3824         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
3825         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
3826         ULONGEST_MAX.
3827         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
3828         ULONGEST_MAX.
3829         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
3830         ULONGEST_MAX.
3831         * sparc-linux-tdep.c (sparc32_linux_sigframe)
3832         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
3833         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
3834         ULONGEST_MAX.
3835         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
3836         (ppc64_linux_sigaction_tramp_frame)
3837         (ppc32_linux_sighandler_tramp_frame)
3838         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
3839         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
3840         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
3841         * mn10300-linux-tdep.c (am33_linux_sigframe)
3842         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
3843         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
3844         * mips-linux-tdep.c (mips_linux_o32_sigframe)
3845         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
3846         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
3847         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
3848         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
3849         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
3850         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
3851         * microblaze-linux-tdep.c
3852         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
3853         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
3854         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
3855         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
3856         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
3857         * common/common-types.h (ULONGEST_MAX): New define.
3858         (CORE_ADDR_MAX): Fix formatting.
3859         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
3860         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
3861         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
3862         (arm_linux_rt_sigreturn_tramp_frame)
3863         (arm_eabi_linux_sigreturn_tramp_frame)
3864         (arm_eabi_linux_rt_sigreturn_tramp_frame)
3865         (thumb2_eabi_linux_sigreturn_tramp_frame)
3866         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
3867         (arm_linux_restart_syscall_tramp_frame)
3868         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
3869         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
3870         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
3871         ULONGEST_MAX.
3872         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
3873
3874 2018-08-27  Tom Tromey  <tom@tromey.com>
3875
3876         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
3877         CORE_ADDR_MAX.
3878         * mips-tdep.c (mips_deal_with_atomic_sequence)
3879         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
3880         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
3881         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
3882         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
3883         CORE_ADDR_MAX.
3884         * aarch64-tdep.c (aarch64_software_single_step): Use
3885         CORE_ADDR_MAX.
3886
3887 2018-08-27  Tom Tromey  <tom@tromey.com>
3888
3889         * linespec.c (complete_linespec_component): Add cast to "char".
3890         * completer.c (completion_tracker::build_completion_result): Add
3891         cast to "char".
3892
3893 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3894
3895         * solist.h (struct solist, struct target_so_ops): Fix
3896         indentation.
3897
3898 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3899
3900         * ada-tasks.c (ada_task_info_s): Remove typedef.
3901         (DEF_VEC_O(ada_task_info_s)): Remove.
3902         (struct ada_tasks_inferior_data): Initialize fields.
3903         <task_list>: Make an std::vector.
3904         (get_ada_tasks_inferior_data): Allocate with new.
3905         (ada_get_task_number): Adjust.
3906         (get_task_number_from_id): Likewise.
3907         (valid_task_id): Likewise.
3908         (ada_get_task_info_from_ptid): Likewise.
3909         (iterate_over_live_ada_tasks): Likewise.
3910         (add_ada_task): Likewise.
3911         (read_known_tasks): Likewise.
3912         (ada_build_task_list): Likewise.
3913         (print_ada_task_info): Likewise.
3914         (info_task): Likewise.
3915         (task_command_1): Likewise.
3916
3917 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3918
3919         * ada-lang.c (add_angle_brackets): Return std::string.
3920
3921 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
3922
3923         * python/py-threadevent.c (py_get_event_thread): Initialize
3924         pythread.
3925
3926 2018-08-24  Pedro Alves  <palves@redhat.com>
3927
3928         * python/py-bpevent.c (create_breakpoint_event_object): Use
3929         copy-initialization.
3930         * python/py-continueevent.c (emit_continue_event): Use
3931         copy-initialization.
3932         * python/py-exitedevent.c (create_exited_event_object): Return a
3933         gdbpy_ref<>.
3934         (emit_exited_event): Use copy-initialization.
3935         * python/py-inferior.c (python_new_inferior)
3936         (python_inferior_deleted, add_thread_object): Use
3937         copy-initialization.
3938         * python/py-infevents.c (create_inferior_call_event_object)
3939         (create_register_changed_event_object)
3940         (create_memory_changed_event_object): Return a gdbpy_ref<>.
3941         (emit_inferior_call_event, emit_memory_changed_event)
3942         (emit_register_changed_event): Use copy-initialization.
3943         * python/py-newobjfileevent.c (create_new_objfile_event_object):
3944         Return a gdbpy_ref<>.
3945         (emit_new_objfile_event): Use copy-initialization.
3946         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
3947         (emit_clear_objfiles_event): Use copy-initialization.
3948         * python/py-signalevent.c (create_signal_event_object): Use
3949         copy-initialization.
3950         * python/py-threadevent.c (create_thread_event_object): Use
3951         copy-initialization.
3952
3953 2018-08-24  Pedro Alves  <palves@redhat.com>
3954             Simon Marchi  <simon.marchi@ericsson.com>
3955
3956         PR gdb/23379
3957         * python/py-continueevent.c: Include "gdbthread.h".
3958         (create_continue_event_object): Add intro comment.  Add 'ptid'
3959         parameter.  Use it to find thread to pass to
3960         create_thread_event_object.
3961         (emit_continue_event): Pass PTID down to
3962         create_continue_event_object.
3963         * python/py-event.h (py_get_event_thread): Declare.
3964         (create_thread_event_object): Remove default from 'thread'
3965         parameter.
3966         * python/py-stopevent.c (create_stop_event_object): Use
3967         py_get_event_thread.
3968         * python/py-threadevent.c (get_event_thread): Rename to ...
3969         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
3970         and use it to find the thread.
3971         (create_thread_event_object): Assert that THREAD isn't null.
3972         Don't find the event thread here.
3973
3974 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
3975
3976         * block.h (blockrange, blockranges): New struct declarations.
3977         (struct block): Add new field named `ranges'.
3978         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
3979         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
3980         macros for accessing ranges in struct block.
3981         (make_blockranges): New declaration.
3982         block.c (make_blockranges): New function.
3983         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
3984         for block.
3985         * symtab.h (find_pc_partial_function): Add new parameter `block'.
3986         * blockframe.c (cache_pc_function_block): New static global.
3987         (clear_pc_function_cache): Clear cache_pc_function_block.
3988         (find_pc_partial_function): Move comment to symtab.h.  Add
3989         support for non-contiguous blocks.
3990         * cli/cli-cmds.c (block.h): Include.
3991         (print_disassembly): Handle printing of non-contiguous blocks.
3992         (disassemble_current_function): Likewise.
3993         (disassemble_command): Likewise.
3994
3995         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
3996         BLOCK_START.
3997         * blockframe.c (get_pc_function_start): Likewise.
3998         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
3999         (gcc_symbol_address): Likewise.
4000         * compile/compile-object-run.c (compile_object_run): Likewise.
4001         * compile/compile.c (get_expr_block_and_pc): Likewise.
4002         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
4003         (func_addr_to_tail_call_list): Likewise.
4004         * findvar.c (default_read_var_value): Likewise.
4005         * inline-frame.c (inline_frame_this_id): Likewise.
4006         (skip-inline_frames): Likewise.
4007         * infcmd.c (until_next_command): Likewise.
4008         * linespec.c (convert_linespec_to_sals): Likewise.
4009         * parse.c (parse_exp_in_context_1): Likewise.
4010         * printcmd.c (build_address_symbolic): likewise.
4011         (info_address_command): Likewise.
4012         symtab.c (find_function_start_sal): Likewise.
4013         (skip_prologue_sal): Likewise.
4014         (find_function_alias_target): Likewise.
4015         (find_gnu_ifunc): Likewise.
4016         * stack.c (find_frame_funname): Likewise.
4017         * symtab.c (fixup_symbol_section): Likewise.
4018         (find_function_start_sal): Likewise.
4019         (skip_prologue_sal): Likewsie.
4020         (find_function_alias_target): Likewise.
4021         (find_gnu_ifunc): Likewise.
4022         * tracepoint.c (info_scope_command): Likewise.
4023         * value.c (value_fn_field): Likewise.
4024
4025         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
4026         in place of find_pc_partial_function.
4027         * blockframe.c (find_function_entry_range_from_pc): New function.
4028         * symtab.h (find_function_entry_range_from_pc): Declare and document.
4029         * objfiles.c (objfile_relocate1): Relocate start and end addresses
4030         for each range in a block.
4031
4032
4033 2018-08-23  Xavier Roirand  <roirand@adacore.com>
4034
4035         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
4036         incrementation.
4037
4038 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4039
4040         * solib-svr4.c (read_program_headers_from_bfd): Return
4041         gdb::optional<gdb::byte_vector>.
4042         (svr4_exec_displacement): Adjust.
4043
4044 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4045
4046         * solib-svr4.c (read_program_header): Return
4047         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
4048         (find_program_interpreter): Return
4049         gdb::optional<gdb::byte_vector>.
4050         (scan_dyntag_auxv): Adjust.
4051         (enable_break): Adjust.
4052         (svr4_exec_displacement): Adjust.
4053
4054 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4055
4056         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
4057         * inf-child.c (inf_child_target::terminal_save_inferior): New.
4058
4059 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4060
4061         * guile/scm-string.c (gdbscm_scm_from_printf): Use
4062         string_vprintf.
4063         * guile/scm-utils.c (gdbscm_printf): Likewise.
4064         * serial.c (serial_printf): Likewise.
4065         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
4066
4067 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
4068
4069         * stack.c (print_frame): Print frame architecture when printing on
4070         an MI output.
4071         * NEWS: Mention new "arch" attribute in frame output.
4072
4073 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
4074
4075         * arch/aarch64.h (aarch64_regnum): Update comment.
4076
4077 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
4078
4079         * NEWS: Add SVE to 8.2 section.
4080
4081 2018-08-21  Pedro Alves  <palves@redhat.com>
4082
4083         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
4084         out from gdbscm_parse_function_args.
4085         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
4086         gdbscm_parse_function_args_1.
4087
4088 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
4089
4090         PR gdb/17816
4091         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
4092         operator.
4093
4094 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
4095
4096         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
4097
4098 2018-08-19  Michael Spang  <spang@google.com>
4099
4100         PR gdb/11786
4101         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
4102         for PT_TLS segments.
4103
4104 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
4105
4106         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
4107         dwarf_variable_value.
4108         * dwarf2-frame.c (class dwarf_expr_executor):
4109         Add override for dwarf_variable_value.
4110         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
4111         (class symbol_needs_eval_context): Likewise.
4112         (indirect_synthetic_pointer): Add forward declaration.
4113         (sect_variable_value): New function.
4114         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
4115         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
4116         for DW_OP_GNU_variable_value.
4117
4118 2018-08-16  Tom Tromey  <tom@tromey.com>
4119
4120         * top.c (read_command_file): Update.
4121         (command_line_input): Remove "repeat" argument.
4122         * ada-lang.c (get_selections): Update.
4123         * linespec.c (decode_line_2): Update.
4124         * defs.h (command_line_input): Remove argument.
4125         * cli/cli-script.c (read_next_line): Update.
4126         * python/py-gdb-readline.c: Update.
4127
4128 2018-08-17  Tom Tromey  <tom@tromey.com>
4129
4130         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
4131         command_line_input.
4132
4133 2018-08-15  Tom Tromey  <tom@tromey.com>
4134
4135         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
4136
4137 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
4138
4139         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
4140         If used, use find_pc_partial_function to find address range
4141         to disassemble.
4142         * mi/mi-main.c (mi_cmd_list_features): Report
4143         "data-disassemble-a-option" feature.
4144         * NEWS: Mention new -data-disassemble option -a.
4145
4146 2018-08-13  Tom Tromey  <tom@tromey.com>
4147
4148         * common/common-defs.h (_FORTIFY_SOURCE): Define.
4149
4150 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
4151
4152         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
4153         (aarch64_linux_collect_sve_regset): Likewise.
4154         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
4155         * regcache.h (regcache_map_entry_size): New function.
4156
4157 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
4158
4159         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
4160         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
4161         (SVE_HEADER_VL_LENGTH): Likewise.
4162         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
4163         (SVE_HEADER_FLAGS_LENGTH): Likewise.
4164         (SVE_HEADER_RESERVED_LENGTH): Likewise.
4165         (SVE_HEADER_SIZE_OFFSET): Likewise.
4166         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
4167         (SVE_HEADER_VL_OFFSET): Likewise.
4168         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
4169         (SVE_HEADER_FLAGS_OFFSET): Likewise.
4170         (SVE_HEADER_RESERVED_OFFSET): Likewise.
4171         (SVE_HEADER_SIZE): Likewise.
4172         (aarch64_linux_core_read_vq): Add function.
4173         (aarch64_linux_core_read_description): Check for SVE section.
4174
4175 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
4176
4177         * aarch64-fbsd-tdep.c
4178         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
4179         collect_size.
4180         * aarch64-linux-tdep.c
4181         (aarch64_linux_iterate_over_regset_sections): Likewise.
4182         * alpha-linux-tdep.c
4183         (alpha_linux_iterate_over_regset_sections):
4184         * alpha-nbsd-tdep.c
4185         (alphanbsd_iterate_over_regset_sections): Likewise.
4186         * amd64-fbsd-tdep.c
4187         (amd64fbsd_iterate_over_regset_sections): Likewise.
4188         * amd64-linux-tdep.c
4189         (amd64_linux_iterate_over_regset_sections): Likewise.
4190         * arm-bsd-tdep.c
4191         (armbsd_iterate_over_regset_sections): Likewise.
4192         * arm-fbsd-tdep.c
4193         (arm_fbsd_iterate_over_regset_sections): Likewise.
4194         * arm-linux-tdep.c
4195         (arm_linux_iterate_over_regset_sections): Likewise.
4196         * corelow.c (get_core_registers_cb): Likewise.
4197         (core_target::fetch_registers): Likewise.
4198         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
4199         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
4200         * gdbarch.h (void): Regenerate.
4201         * gdbarch.sh: Add supply_size and collect_size.
4202         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
4203         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
4204         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
4205         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
4206         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
4207         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
4208         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
4209         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
4210         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
4211         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
4212         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
4213         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
4214         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
4215         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
4216         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections): Likewise.
4217         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
4218         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
4219         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
4220         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
4221         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
4222         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
4223         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections): Likewise.
4224         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
4225         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
4226         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
4227         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
4228         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
4229         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
4230         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
4231         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
4232
4233 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
4234
4235         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
4236         with string_printf.
4237
4238 2018-08-10  Keith Seitz  <keiths@redhat.com>
4239
4240         * compile/compile-c-support.c (add_code_header, add_code_footer):
4241         Move into policy class.
4242         (c_push_user_expression, pop_user_expression_nop)
4243         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
4244         (compile_program): New host class.
4245         (c_compile_program): New typedef.
4246         (c_compute_porgram): Use c_compile_program.
4247
4248 2018-08-10  Keith Seitz  <keiths@redhat.com>
4249
4250         * compile/compile-internal.h (compile_instance::~compile_instance):
4251         Remove calls to htab_delete.
4252         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
4253         * compile.c (compile_instance::compile_instance): Initialize
4254         htab unique pointers.
4255         (compile_instance::get_cached_type, compile_instance::insert_type)
4256         (compile_instance::error_symbol_once): Update for unique_ptr.
4257
4258 2018-08-10  Keith Seitz  <keiths@redhat.com>
4259
4260         * compile/compile-c-symbols.c (struct symbol_error)
4261         (hash_symbol_error, eq_symbol_error, del_symbol_error)
4262         (compile_instance::insert_symbol_error)
4263         (compile_instance::error_symbol_once): Move to ...
4264         * compile/compile.c: ... here.
4265
4266 2018-08-10  Keith Seitz  <keiths@redhat.com>
4267
4268         * compile/compile-c-support.c (c_get_compile_context): Use `new'
4269         instead of `new_compile_instance'.
4270         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
4271         Update description.
4272         If the symbol error map is not initialized, create it.
4273         (generate_c_for_for_one_symbol): Do not check/initialize
4274         the symbol error map.
4275         * compile/compile-c-types.c (compile_c_instance): Make a class.
4276         Update all callers.
4277         (compile_instance::compile_instance): Initialize the type cache.
4278         (get_cached_type): New function.
4279         (insert_type): Update description.
4280         (compile_c_instance::m_default_cflags): Define.
4281         (convert_type): Update description.  Use get_cached_type.
4282         (delete_instance): Moved to destructor.
4283         (new_compile_instance): Moved to constructor.
4284         * compile/compile-c.h (compile_c_instance): Make class inheriting
4285         from compile_instance.
4286         <base>: Remove field.
4287         <type_map, symbol_err_map>: Move to base class.
4288         <c_plugin>: Rename to `m_plugin' and remove pointer type.
4289         * compile/compile-internal.h (compile_instance): Make class.
4290         <type_map_t, symbol_err_map_t>: Define.
4291         <fe>: Rename to `m_gcc_fe'.
4292         <scope, block, gcc_target_options>: Add `m_' prefix.
4293         <m_type_map, m_symbol_err_map>: New fields, moved from
4294         compile_c_instance.
4295         <destroy>: Remove.
4296         (convert_type, new_compile_instance): Remove.
4297         * compile/compile.c (cleanup_compile_instance): Remove.
4298         (compile_to_object): Use unique_ptr to eliminate cleanups.
4299         (compile_instance::set_print_callback, compile_instance::version)
4300         (compile_instance::set_verbose)
4301         (compile_instance::set_driver_filename)
4302         (compile_instance::set_triplet_regexp)
4303         (compile_instance::set_arguments)
4304         (compile_instance::set_source_file)
4305         (compile_instance::compile): Define.
4306
4307 2018-08-10  Keith Seitz  <keiths@redhat.com>
4308
4309         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
4310         * compile/compile-c-types.c: Define GCC_METHODN macros and include
4311         gcc-c-fe.def to define C plugin.
4312         (delete_instance): Delete `c_plugin'.
4313         (new_compile_instance): Initialize `c_plugin'.
4314         * compile/compile-c.h: Include gcc_c_plugin.h.
4315         (struct compile_c_instance) <c_plugin>: New member.
4316         * gcc-c-plugin.h: New file.
4317         Update all callers with API change.
4318
4319 2018-08-10  Keith Seitz  <keiths@redhat.com>
4320
4321         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
4322         (HFILES_NO_SRCDIR): ... to here.
4323         Add compile-internal.h and compile-c.h.
4324         * compile/compile-c-support.c: Include compile-c.h.
4325         * compile/compile-c-symbols.c: Include compile-c.h.
4326         (generate_c_for_variable_locations): Update comment.
4327         * compile/compile-c-types.c: Include compile-c.h.
4328         * compile/compile-c.h: New file -- moved C language declarations
4329         from other files here.
4330         * compile/compile-internal.h: Do not include hashtab.h or
4331         common/enum-flags.h.
4332         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
4333         (gcc_convert_symbol, gcc_symbol_address)
4334         (generate_c_for_variable_locations, c_get_mode_for_size)
4335         (c_get_range_decl_name): Definitions moved to compile-c.h.
4336         * compile/compile-loc2c.c: Include compile-c.h.
4337
4338 2018-08-10  Keith Seitz  <keiths@redhat.com>
4339
4340         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
4341         (c_symbol_substitution_name): ... this.
4342         Update all callers.
4343
4344 2018-08-10  Keith Seitz  <keiths@redhat.com>
4345
4346         * compile/compile-c-support.c (c_compute_program): Use
4347         unique_xmalloc_ptr to eliminate cleanup.
4348         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
4349         Return a unique_xmalloc_ptr and eliminate cleanup.
4350         * compile/compile-internal.h (generate_c_for_variable_locations):
4351         Return unique_xmalloc_ptr and update description.
4352
4353 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
4354
4355         * corelow.c (core_target::get_core_register_section): Rename
4356         min_size to section_min_size.
4357
4358 2018-08-09  Jim Wilson  <jimw@sifive.com>
4359
4360         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
4361         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
4362         * NEWS: Mention new GNU/Linux RISC-V target.
4363         * configure.host: Add riscv*-*-linux*.
4364         * configure.nat: Add riscv*.
4365         * configure.tgt: Add riscv*-*-linux*.
4366         * riscv-linux-nat.c: New file.
4367         * riscv-linux-tdep.c: New file.
4368
4369 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4370
4371         * infrun.c (resume): Make static, add forward declaration.
4372         (proceed): Update header comment.
4373         * infrun.h (resume): Delete declaration.
4374
4375 2018-08-09  Tom Tromey  <tom@tromey.com>
4376
4377         * riscv-tdep.h: Minor formatting fixes.
4378
4379 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
4380
4381         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
4382         * dwarf-index-cache.c (create_dir_and_check): Likewise.
4383         (test_mkdir_recursive): Likewise.
4384         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
4385
4386 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4387
4388         * valarith.c (value_subscripted_rvalue): If an array is not in
4389         memory, and we don't know the upper bound, then we can't know that
4390         the requested element exists or not.
4391
4392 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
4393
4394         * target.c (str_comma_list_concat_elem): Fix typo in comment.
4395         (target_options_to_string): Add comment.
4396
4397 2018-08-08  Tom Tromey  <tom@tromey.com>
4398
4399         * unittests/scoped_mmap-selftests.c: Check result of "write".
4400
4401 2018-08-08  Jim Wilson  <jimw@sifive.com>
4402
4403         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
4404         (decode_register_index_short): New.
4405         (decode_j_type_insn, decode_cj_type_insn): New.
4406         (decode_b_type_insn, decode_cb_type_insn): New.
4407         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
4408         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
4409         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
4410         is_c_sw_insn instead of is_sw_insn.
4411         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
4412         (riscv_software_single_step): New.
4413         * riscv-tdep.h (riscv_software_single_step): Declare.
4414
4415         * riscv-tdep.c (riscv_isa_xlen): Drop static.
4416         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
4417
4418 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
4419
4420         PR gdb/18050:
4421         * target.c (dispose_inferior): Don't dispose of inferiors that are
4422         already killed.
4423
4424 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
4425
4426         * remote.c (remote_target::download_tracepoint): Change char* to
4427         const char*.
4428
4429 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
4430
4431         * target.h (target_options_to_string): Return an std::string.
4432         * target.c (str_comma_list_concat_elem): Return void, use
4433         std::string.
4434         (do_option): Likewise.
4435         (target_options_to_string): Return an std::string.
4436         * linux-nat.c (linux_nat_target::wait): Adjust.
4437         * target-debug.h (target_debug_print_options): Adjust.
4438
4439 2018-08-07  Tom Tromey  <tom@tromey.com>
4440
4441         * Makefile.in (CPPFLAGS): New variable.
4442         (INTERNAL_CPPFLAGS): Use it.
4443
4444 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4445
4446         * NEWS: Mention the index cache.
4447
4448 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4449
4450         * common/pathstuff.h (get_standard_cache_dir): New.
4451         * common/pathstuff.c (get_standard_cache_dir): New.
4452         * build-id.h (build_id_to_string): New.
4453         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
4454         DEBUG_STR_SUFFIX): Move to here.
4455         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
4456         DEBUG_STR_SUFFIX): Move from there.
4457         (write_psymtabs_to_index): Make non-static, add basename
4458         parameter.  Write to temporary files, rename when done.
4459         (save_gdb_index_command): Adjust call to
4460         write_psymtabs_to_index.
4461         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
4462         field.
4463         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
4464         (get_gdb_index_contents_from_cache): New.
4465         (get_gdb_index_contents_from_cache_dwz): New.
4466         (dwarf2_initialize_objfile): Read index from cache.
4467         (dwarf2_build_psymtabs): Save to index.
4468         * dwarf-index-cache.h: New file.
4469         * dwarf-index-cache.c: New file.
4470         * dwarf-index-write.h: New file.
4471
4472 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4473
4474         * gnulib/aclocal.m4: Re-generate.
4475         * gnulib/config.in: Re-generate.
4476         * gnulib/configure: Re-generate.
4477         * gnulib/import/Makefile.am: Re-generate.
4478         * gnulib/import/Makefile.in: Re-generate.
4479         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
4480         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
4481         * gnulib/import/m4/mkdir.m4: New file.
4482         * gnulib/import/mkdir.c: New file.
4483         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
4484         module.
4485
4486 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4487
4488         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
4489         * common/scoped_mmap.c: New file.
4490         * common/scoped_mmap.h (destroy): New method.
4491         (~scoped_mmap, reset): Use destroy.
4492         (scoped_mmap): New move constructor.
4493         (mmap_file): New declaration.
4494         * unittests/scoped_mmap-selftests.c (test_normal,
4495         test_invalid_filename, run_tests): New functions.
4496         (_initialize_scoped_mmap_selftests): Register selftest.
4497
4498 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4499
4500         * dwarf2read.c (read_gdb_index_from_section): Rename to...
4501         (read_gdb_index_from_buffer): ... this.  Remove section
4502         parameter, add buffer parameter.
4503         (get_gdb_index_contents_ftype,
4504         get_gdb_index_contents_dwz_ftype): New typedefs.
4505         (dwarf2_read_gdb_index): Add callback parameters to get the
4506         index contents.
4507         (get_gdb_index_contents_from_section): New.
4508         (dwarf2_initialize_objfile): Update call to
4509         dwarf2_read_gdb_index.
4510
4511 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4512
4513         * common/filestuff.h (gdb_fopen_cloexec): New overload.
4514         (gdb_open_cloexec): Likewise.
4515         * nat/linux-osdata.c (command_from_pid): Use string_printf.
4516         (commandline_from_pid): Likewise.
4517         (linux_xfer_osdata_threads): Likewise.
4518         (linux_xfer_osdata_fds): Likewise.
4519         * ada-lang.c (is_package_name): Likewise.
4520         * auxv.c (procfs_xfer_auxv): Likewise.
4521         * breakpoint.c (print_one_breakpoint_location): Use
4522         uiout::field_fmt.
4523         (print_one_catch_solib): Use string_printf.
4524         * coff-pe-read.c (add_pe_exported_sym): Likewise.
4525         (add_pe_forwarded_sym): Likewise.
4526         * dwarf2read.c (create_type_unit_group): Likewise.
4527         (build_error_marker_type): Likewise.
4528         * infcall.c (get_function_name): Likewise.
4529         * valprint.c (print_converted_chars_to_obstack): Likewise.
4530         * xtensa-tdep.c (xtensa_register_type): Likewise.
4531
4532 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
4533
4534         * remote.c (remote_target::download_tracepoint): Fix format
4535         string errors.
4536
4537 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4538
4539         * tracefile.c: Include common/byte-vector.h.
4540         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
4541         with trace_regblock_size if needed.  Update uses of buf.
4542
4543 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4544
4545         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
4546         std::vector<unsigned char>.
4547         * tracepoint.c (collection_list::collection_list): Remove
4548         m_regs_mask initializer from initializer list.  Resize
4549         m_regs_mask using the largest remote register number.
4550         (collection_list::add_remote_register): Remove size check on
4551         m_regs_mask.  Use at to access element.
4552         (collection_list::stringify): Change type of temp_buf to
4553         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
4554         stringify the register mask.  Use pack_hex_byte for the register
4555         mask.
4556
4557 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4558
4559         * tracepoint.h (class collection_list) <add_register>: Remove.
4560         <add_remote_register, add_ax_registers, add_local_register>:
4561         Declare.
4562         <add_memrange>: Add scope parameter.
4563         * tracepoint.c (encode_actions_1): Likewise.
4564         (collection_list::add_register): Rename to ...
4565         (collection_list::add_remote_register): ... this.  Update
4566         comment.
4567         (collection_list::add_ax_registers, add_local_register): New
4568         methods.
4569         (collection_list::add_memrange): Add scope parameter.  Call
4570         add_local_register instead of add_register.
4571         (finalize_tracepoint_aexpr): New function.
4572         (collection_list::collect_symbol): Update calls to add_memrange.
4573         Call add_local_register instead of add_register.  Call
4574         add_ax_registers.  Call finalize_tracepoint_aexpr.
4575         (encode_actions_1): Get remote regnos for $reg action.  Call
4576         add_remote_register, add_ax_registers, and add_local_register.
4577         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
4578         (validate_actionline): Call finalize_tracepoint_aexpr.
4579
4580 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4581
4582         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
4583         Replace array buf with gdb::char_vector buf, of size
4584         get_remote_packet_size ().  Replace references to buf and
4585         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
4586         and xsnprintf with snprintf.  Raise errors if the buffer is too
4587         small.
4588
4589 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4590
4591         * remote.c (remote_target::download_tracepoint): Fix the has_more
4592         predicate in the QTDP action list iteration.
4593
4594 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4595
4596         * remote.c (remote_target::download_tracepoint): Fix indentation
4597         in for block.
4598
4599 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4600
4601         * proc-api.c (_initialize_proc_api): Remove c, unused.
4602         * procfs.c (procfs_init_inferior): Remove signals, unused.
4603         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
4604         unused.
4605
4606 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
4607             Andrew Burgess  <andrew.burgess@embecosm.com>
4608
4609         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
4610         'W_STOPCODE (0)' as this could be ambiguous.
4611
4612 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
4613
4614         * ser-tcp.c (net_open): Fix thinko when deciding whether to
4615         disable TCP's Nagle algorithm (use "ai_protocol" instead of
4616         "ai_socktype").
4617
4618 2018-08-02  Tom Tromey  <tom@tromey.com>
4619
4620         PR symtab/16842.
4621         * dwarf2read.c (read_func_scope): Set symtab on template parameter
4622         symbols.
4623         (process_structure_scope): Likewise.
4624
4625 2018-08-02  Xavier Roirand  <roirand@adacore.com>
4626
4627         PR gdb/22629:
4628         * darwin-nat.c (darwin_kill_inferior): Fix handling of
4629         kill inferior.
4630
4631 2018-08-02  Tom Tromey  <tom@tromey.com>
4632
4633         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
4634         (darwin_suspend_inferior, darwin_resume_inferior)
4635         (darwin_decode_notify_message, darwin_resume_inferior_threads)
4636         (darwin_check_new_threads): Check result of get_darwin_inferior.
4637
4638 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
4639
4640         GDB 8.1.1 released.
4641
4642 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
4643
4644         * varobj.c (varobj_get_path_expr_parent): Report an error if
4645         parent is a dynamic varobj.
4646
4647 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4648
4649         * gnulib/aclocal.m4: Re-generate.
4650         * gnulib/config.in: Re-generate.
4651         * gnulib/configure: Re-generate.
4652         * gnulib/import/Makefile.in: Re-generate.
4653         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
4654         * gnulib/import/m4/onceonly.m4: Re-generate.
4655
4656 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4657
4658         * target-descriptions.c (struct xml_test_tdesc): New.
4659         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
4660         (record_xml_tdesc): Update.
4661         (maintenance_check_xml_descriptions): Update.
4662         * target-descriptions.h (record_xml_tdesc): Update comment.
4663
4664 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4665
4666         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
4667         checking array bounds are defined.
4668
4669 2018-07-30  Tom Tromey  <tom@tromey.com>
4670
4671         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
4672         irreflexivity violation.
4673
4674 2018-07-30  Tom Tromey  <tom@tromey.com>
4675
4676         * cli/cli-decode.c (lookup_cmd): Remove lint code.
4677         * value.c (unpack_long): Remove lint code.
4678         * valops.c (value_ind): Remove lint code.
4679         * valarith.c (value_x_binop, value_x_unop, value_equal)
4680         (value_pos): Remove lint code.
4681
4682 2018-07-28  Tom de Vries  <tdevries@suse.de>
4683
4684         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
4685         with undefined upper bound as <optimized out>.
4686
4687 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
4688
4689         * gcore.in: Rename variable "name" to "prefix".  Expand
4690         "usage" text.
4691
4692 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
4693
4694         * windows-nat.c (windows_nat_target::create_inferior): Update to
4695         call close() in global namespace.
4696
4697 2018-07-26  Tom Tromey  <tom@tromey.com>
4698
4699         * dwarf-index-write.c (add_address_entry): Don't add objfile
4700         offsets.
4701         * dbxread.c (find_stab_function): Rename from
4702         find_stab_function_addr.  Return a bound_minimal_symbol.
4703         (read_dbx_symtab): Use raw_text_low, raw_text_high.
4704         Don't add objfile offsets.
4705         (end_psymtab): Use raw_text_low, raw_text_high,
4706         MSYMBOL_VALUE_RAW_ADDRESS.
4707         (read_ofile_symtab): Update.
4708         (process_one_symbol): Update.
4709         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
4710         offsets.
4711         (dw2_relocate): Remove.
4712         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
4713         searching addrmap.
4714         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
4715         Update.
4716         (process_psymtab_comp_unit_reader, add_partial_symbol)
4717         (add_partial_subprogram, dwarf2_ranges_read): Update.
4718         (load_partial_dies): Update.
4719         (add_address_entry): Don't add objfile offsets.
4720         (dwarf2_build_include_psymtabs): Update.
4721         (create_addrmap_from_aranges): Don't add objfile offsets.
4722         (dw2_find_pc_sect_compunit_symtab): Update.
4723         * mdebugread.c (parse_symbol): Don't add objfile offsets.
4724         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
4725         Update.
4726         (parse_partial_symbols): Don't add objfile offsets.  Use
4727         raw_text_low, raw_text_high.  Update.
4728         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
4729         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
4730         or call 'relocate' quick function.  Clear psymbol_map.
4731         * psympriv.h (struct partial_symbol) <address>: Add section
4732         offset.
4733         <set_unrelocated_address>: Rename from set_address.
4734         <raw_text_low, raw_text_high>: New methods.
4735         <text_low, text_high>: Add objfile parameter.
4736         (add_psymbol_to_bcache): Add 'section' parameter.  Call
4737         set_unrelocated_address.
4738         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4739         (find_pc_psymbol): Update.
4740         (fixup_psymbol_section, relocate_psymtabs): Remove.
4741         (dump_psymtab, psym_functions): Update.
4742         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
4743         parameter.
4744         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
4745         (start_psymtab_common): Update.
4746         * symfile-debug.c (debug_qf_relocate): Remove.
4747         (debug_sym_quick_functions): Update.
4748         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
4749         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
4750         Update.
4751
4752 2018-07-26  Tom Tromey  <tromey@redhat.com>
4753
4754         * dbxread.c (end_psymtab): Use text_high_valid and
4755         text_low_valid.
4756         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
4757         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
4758         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4759         Update comment.
4760         <text_low_valid, text_high_valid>: New fields.
4761         <set_text_low, set_text_high>: Update.
4762         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
4763
4764 2018-07-26  Tom Tromey  <tom@tromey.com>
4765
4766         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
4767         Update.
4768         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
4769         textlow and texthigh fields.
4770         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
4771         Update.
4772         * mdebugread.c (parse_lines, parse_partial_symbols)
4773         (psymtab_to_symtab_1): Update.
4774         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4775         Rename fields.  Update comment.  Now private.
4776         <text_low, text_high, set_text_low, set_text_high>: New methods.
4777         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4778         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
4779         (start_psymtab_common, maintenance_info_psymtabs)
4780         (maintenance_check_psymtabs): Update.
4781         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
4782         texthigh fields.
4783         (scan_xcoff_symtab): Update.
4784
4785 2018-07-26  Tom Tromey  <tromey@redhat.com>
4786
4787         * psympriv.h (struct partial_symbol) <unrelocated_address,
4788         address, set_address>: New methods.
4789         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
4790         (fixup_psymbol_section, relocate_psymtabs): Update.
4791         (print_partial_symbols): Add 'objfile' parameter.  Update.
4792         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
4793         Update.
4794
4795 2018-07-26  Tom Tromey  <tom@tromey.com>
4796
4797         * dwarf-index-write.c (write_psymbols, debug_names::insert)
4798         (debug_names::write_psymbols): Update.
4799         * psympriv.h (struct partial_symbol): Derive from
4800         general_symbol_info.
4801         <obj_section>: New method.
4802         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
4803         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4804         (find_pc_sect_psymbol, fixup_psymbol_section)
4805         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
4806         (print_partial_symbols, recursively_search_psymtabs)
4807         (compare_psymbols, psymbol_hash, psymbol_compare)
4808         (add_psymbol_to_bcache, maintenance_check_psymtabs)
4809         (psymbol_name_matches, psym_fill_psymbol_map): Update.
4810
4811 2018-07-26  Tom Tromey  <tromey@redhat.com>
4812
4813         * dbxread.c (end_psymtab): Remove dead code.
4814
4815 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
4816
4817         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
4818         DWARF unwinders are disabled.
4819         * dwarf2-frame.c: Add dwarf2read.h include.
4820         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
4821         disabled.
4822         (dwarf2_frame_unwinders_enabled_p): Define.
4823         (show_dwarf_unwinders_enabled_p): New function.
4824         (_initialize_dwarf2_frame): Register switch to control DWARF
4825         unwinder use.
4826         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
4827         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
4828         (show_dwarf_cmdlist): Remove static keyword.
4829         * dwarf2read.h (set_dwarf_cmdlist): Declare.
4830         (show_dwarf_cmdlist): Declare.
4831         * NEWS: Document new feature.
4832
4833 2018-07-26  Tom de Vries  <tdevries@suse.de>
4834
4835         PR breakpoints/23366
4836         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
4837
4838 2018-07-26  Tom de Vries  <tdevries@suse.de>
4839
4840         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
4841         DW_AT_count can't be translated to a dynamic prop.
4842
4843 2018-07-25  Tom de Vries  <tdevries@suse.de>
4844
4845         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
4846         try/catch.
4847
4848 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
4849
4850         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
4851
4852 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
4853
4854         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
4855
4856 2018-07-24  Keith Seitz  <keiths@redhat.comt
4857
4858         PR symtab/23010
4859         * dwarf2read.c (dw2_add_symbol_to_list): New function.
4860         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
4861         instead of add_symbol_to_list.
4862         (read_file_scope): Call prepare_one_comp_unit before reading
4863         any other DIEs.
4864
4865 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
4866
4867         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
4868
4869 2018-07-24  Tom Tromey  <tom@tromey.com>
4870
4871         * utils.c (malloc, realloc, free): Don't declare.
4872         * configure, config.in: Rebuild.
4873         * configure.ac: Don't check for declarations of free, malloc, or
4874         realloc.
4875
4876 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4877
4878         * aarch64-linux-nat.c
4879         (aarch64_linux_nat_target::stopped_data_address): Remove unused
4880         variable.
4881         * arm-linux-nat.c (fetch_regs): Likewise.
4882         (store_regs): Likewise.
4883         (fetch_vfp_regs): Likewise.
4884         (store_vfp_regs): Likewise.
4885         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
4886         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
4887         (arm_linux_nat_target::insert_watchpoint): Likewise.
4888         (arm_linux_nat_target::remove_watchpoint): Likewise.
4889         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
4890         Likewise.
4891         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
4892         Likewise.
4893         * ppc-linux-nat.c (fetch_register): Likewise.
4894         (fetch_all_gp_regs): Likewise.
4895         (fetch_ppc_registers): Likewise.
4896         (store_all_gp_regs): Likewise.
4897         (store_ppc_registers): Likewise.
4898         (hwdebug_insert_point): Likewise.
4899         (can_use_watchpoint_cond_accel): Likewise.
4900         * remote-sim.c (gdb_os_write_stdout): Likewise.
4901
4902 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4903             Tom Tromey  <tom@tromey.com>
4904
4905         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
4906         test for it.
4907         * configure: Rebuild.
4908
4909 2018-07-22  Tom Tromey  <tom@tromey.com>
4910
4911         * regformats/regdat.sh: Define xmltarget_${name} inside
4912         #ifndef IN_PROCESS_AGENT.
4913
4914 2018-07-22  Tom Tromey  <tom@tromey.com>
4915
4916         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
4917
4918 2018-07-22  Tom Tromey  <tom@tromey.com>
4919
4920         * symfile.c (reread_symbols): Notify iter, not objfile.
4921
4922 2018-07-22  Tom Tromey  <tom@tromey.com>
4923
4924         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
4925         Use arch_ops.
4926         (ravenscar_thread_target::prepare_to_store): Likewise.
4927
4928 2018-07-22  Tom Tromey  <tom@tromey.com>
4929
4930         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
4931         unused variable.  Call value_fetch_lazy when needed.
4932         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
4933         Remove unused variable.  Call value_fetch_lazy when needed.
4934
4935 2018-07-22  Tom Tromey  <tom@tromey.com>
4936
4937         * m32c-tdep.c (mark_dma): Return void.
4938         (make_regs): Remove unused declarations.
4939
4940 2018-07-22  Tom Tromey  <tom@tromey.com>
4941
4942         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
4943         cmdscm_get_valid_command_smob_arg_unsafe for effect.
4944         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
4945         bkscm_get_valid_block_smob_arg_unsafe for effect.
4946
4947 2018-07-22  Tom Tromey  <tom@tromey.com>
4948
4949         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
4950         value_type.
4951
4952 2018-07-22  Tom Tromey  <tom@tromey.com>
4953
4954         * windows-nat.c (saved_context): Conditionally define.
4955         * remote.c (remote_target::remote_btrace_maybe_reopen):
4956         Conditionally declare "warned".
4957         * inflow.c (sigquit_ours): Conditionally define.
4958         (new_tty): Move "tty" declaration inside #if.
4959         * guile/guile.c (guile_datadir): Conditionally define.
4960         * charset.c (set_be_le_names): Move some declarations inside #if.
4961         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
4962         #if.
4963         (parse_xml_btrace_conf): Likewise.
4964
4965 2018-07-22  Tom Tromey  <tom@tromey.com>
4966
4967         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
4968
4969 2018-07-22  Tom Tromey  <tom@tromey.com>
4970
4971         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
4972         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
4973         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
4974         * buildsym-legacy.c (get_macro_table): Remove unused variable.
4975         * stack.c (frame_apply_level_command): Remove unused variable.
4976         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
4977         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
4978         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
4979         unused variable.
4980         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
4981         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
4982         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
4983         variable.
4984         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
4985         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
4986         variable.
4987         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
4988         Remove unused variable.
4989         * cli/cli-script.c (recurse_read_control_structure): Remove unused
4990         variable.
4991         * common/tdesc.c (print_xml_feature::visit): Remove unused
4992         variable.
4993         * compile/compile-object-load.c (store_regs): Remove unused
4994         variables.
4995         * complaints.c (clear_complaints): Remove unused variable.
4996         * corelow.c (core_target_open): Remove unused variable.
4997         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
4998         variable.
4999         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
5000         variable.
5001         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
5002         variable.
5003         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
5004         variable.
5005         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
5006         variable.
5007         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
5008         variable.
5009         * ia64-tdep.c (examine_prologue): Remove unused variable.
5010         * infcall.c (run_inferior_call): Remove unused variable.
5011         * inferior.c (exit_inferior): Remove unused variable.
5012         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
5013         * linespec.c (decode_line_2): Remove unused variable.
5014         * linux-nat.c (super_close): Remove.
5015         * linux-tdep.c (linux_info_proc): Remove unused variable.
5016         * mi/mi-main.c (mi_execute_command): Remove unused variable.
5017         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
5018         Remove unused variable.
5019         * parse.c (find_minsym_type_and_address): Remove unused variable.
5020         * printcmd.c (info_symbol_command, printf_floating): Remove unused
5021         variable.
5022         * python/py-breakpoint.c (bppy_set_commands): Remove unused
5023         variable.
5024         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
5025         variables.
5026         * record-btrace.c (record_btrace_target::store_registers): Remove
5027         unused variable.
5028         (cmd_show_record_btrace_cpu): Remove unused variable.
5029         * riscv-tdep.c (riscv_register_reggroup_p)
5030         (riscv_push_dummy_call, riscv_return_value): Remove unused
5031         variable.
5032         * rust-exp.y (literal): Remove unused variable.
5033         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
5034         unused variable.
5035         <STRUCTOP_ANONYMOUS>: Likewise.
5036         * s390-linux-tdep.c (s390_linux_init_abi_31)
5037         (s390_linux_init_abi_64): Remove unused variable.
5038         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
5039         (file_select_thread, net_windows_open, _initialize_ser_windows):
5040         Remove unused variables.
5041         * symtab.c (find_pc_sect_line): Remove unused variable.
5042         * target-memory.c (compute_garbled_blocks): Remove unused
5043         variable.
5044         (target_write_memory_blocks): Remove unused variable.
5045         * target.c (target_stack::unpush): Remove unused variables.
5046         * tracepoint.c (start_tracing, all_tracepoint_actions)
5047         (merge_uploaded_trace_state_variables)
5048         (print_one_static_tracepoint_marker): Remove unused variable.
5049         * unittests/basic_string_view/element_access/char/1.cc (test01):
5050         Remove unused variable.
5051         * windows-nat.c (windows_continue, windows_add_all_dlls)
5052         (do_initial_windows_stuff, windows_nat_target::create_inferior):
5053         Remove unused variables.
5054
5055 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
5056
5057         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
5058         attr_profile in HAVE_ELF.
5059         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
5060         HAVE_ELF.
5061
5062 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
5063
5064         * frame.c (frame_register_unwind): Change parameter name.
5065         (frame_unwind_register): Likewise.
5066         (frame_unwind_register_value): Likewise.
5067         (frame_unwind_register_signed): Likewise.
5068         (frame_unwind_register_unsigned): Likewise.
5069         * frame.h (frame_register_unwind): Likewise.
5070         (frame_unwind_register): Likewise.
5071         (frame_unwind_register_value): Likewise.
5072         (frame_unwind_register_signed): Likewise.
5073         (frame_unwind_register_unsigned): Likewise.
5074         (frame_unwind_arch): Likewise.
5075
5076 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
5077
5078         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
5079         ISA maintenance.
5080
5081 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
5082
5083         * mips-linux-nat.c (mips_linux_nat_target::read_description):
5084         Call `get_ptrace_pid' rather than extracting the ptrace PID by
5085         hand.
5086
5087 2018-07-20  Keith Seitz  <keiths@redhat.com>
5088
5089         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
5090         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
5091         m_compunit_symtab, m_language>: Add "m_" prefix.
5092         Update all uses.
5093         * buildsym.c: Update all uses.
5094
5095 2018-07-20  Tom Tromey  <tom@tromey.com>
5096
5097         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
5098         * buildsym.h (record_line_ftype): Remove typedef.
5099
5100 2018-07-20  Tom Tromey  <tom@tromey.com>
5101
5102         * buildsym-legacy.h (augment_type_symtab): Don't declare.
5103         (end_expandable_symtab): Likewise.
5104         (end_symtab_get_static_block): Likewise.
5105         (end_symtab_from_static_block): Likewise.
5106         * buildsym-legacy.c (augment_type_symtab): Remove.
5107         (end_expandable_symtab): Remove.
5108         (end_symtab_get_static_block): Remove.
5109         (end_symtab_from_static_block): Remove.
5110
5111 2018-07-20  Tom Tromey  <tom@tromey.com>
5112
5113         * dwarf2read.c: Include buildsym.h.
5114         (struct dwarf2_cu) <builder>: New method.
5115         (fixup_go_packaging): Update.
5116         (process_full_comp_unit, process_full_type_unit): Update.  Don't
5117         use scoped_free_pendings.
5118         (using_directives): Add "cu" parameter, remove "language".
5119         (read_import_statement, setup_type_unit_groups, )
5120         (read_func_scope, read_lexical_block_scope)
5121         (dwarf2_record_block_ranges, read_namespace): Update.
5122         (lnp_state_machine::lnp_state_machine): Add cu parameter.
5123         (lnp_state_machine::handle_end_sequence): Update.
5124         (class lnp_state_machine) <m_cu>: New member.
5125         <m_record_line_callback>: Remove.
5126         <m_currently_recording_lines>: New member.
5127         (lnp_state_machine::handle_set_file): Update.
5128         (noop_record_line): Remove.
5129         (dwarf_record_line_p): Add cu parameter.
5130         (dwarf_record_line_1, dwarf_finish_line): Likewise.
5131         (lnp_state_machine::record_line)
5132         (lnp_state_machine::lnp_state_machine)
5133         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
5134         (dwarf_decode_lines): Update.
5135         (dwarf2_start_subfile): Add cu parameter.
5136         (dwarf2_start_symtab, new_symbol): Update.
5137         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
5138         Remove dwarf2_per_objfile parameter.
5139         (dwarf_decode_macros): Update.
5140
5141 2018-07-20  Tom Tromey  <tom@tromey.com>
5142
5143         * stabsread.c (define_symbol): Update.
5144         * buildsym-legacy.h (get_buildsym_compunit): Declare.
5145         * dwarf2read.c (new_symbol): Update.
5146         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
5147         * cp-namespace.c: Include buildsym.h.
5148         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
5149         * buildsym-legacy.c (get_buildsym_compunit): New function.
5150
5151 2018-07-20  Tom Tromey  <tom@tromey.com>
5152
5153         * xcoffread.c: Include buildsym-legacy.h.
5154         * windows-nat.c: Include buildsym-legacy.h.
5155         * stabsread.c: Include buildsym-legacy.h.
5156         * mdebugread.c: Include buildsym-legacy.h.
5157         * buildsym-legacy.h: New file.
5158         * buildsym-legacy.c: New file, from buildsym.c.
5159         * go32-nat.c: Include buildsym-legacy.h.
5160         * dwarf2read.c: Include buildsym-legacy.h.
5161         * dbxread.c: Include buildsym-legacy.h.
5162         * cp-namespace.c: Include buildsym-legacy.h.
5163         * coffread.c: Include buildsym-legacy.h.
5164         * buildsym.h: Move some contents to buildsym-legacy.h.
5165         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
5166         buildsym-legacy.c.
5167         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
5168
5169 2018-07-20  Tom Tromey  <tom@tromey.com>
5170
5171         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
5172         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
5173         (buildsym_compunit::buildsym_compunit)
5174         (buildsym_compunit::~buildsym_compunit)
5175         (buildsym_compunit::get_macro_table): Define.
5176
5177 2018-07-20  Tom Tromey  <tom@tromey.com>
5178
5179         * buildsym.c (reset_symtab_globals): Remove.
5180         (buildsym_compunit::end_symtab_from_static_block): Update.
5181         (buildsym_compunit::augment_type_symtab): Update.
5182         (end_symtab_from_static_block): Call free_buildsym_compunit.
5183         (augment_type_symtab, end_symtab, end_expandable_symtab):
5184         Likewise.
5185
5186 2018-07-20  Tom Tromey  <tom@tromey.com>
5187
5188         * arch-utils.c: Do not include buildsym.h.
5189         * mipsread.c: Do not include buildsym.h.
5190         * machoread.c: Do not include buildsym.h.
5191         * elfread.c: Do not include buildsym.h.
5192
5193 2018-07-20  Tom Tromey  <tom@tromey.com>
5194
5195         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
5196         initialization.
5197         (buildsym_compunit): Add new constructor.
5198         (struct buildsym_compunit) <get_last_source_file, finish_block,
5199         record_block_range, start_subfile, patch_subfile_names,
5200         push_subfile, pop_subfile, record_line, get_compunit_symtab,
5201         set_last_source_start_addr, get_last_source_start_addr,
5202         get_local_using_directives, set_local_using_directives,
5203         get_global_using_directives, outermost_context_p,
5204         get_current_context_stack, get_context_stack_depth,
5205         get_current_subfile, get_local_symbols, get_file_symbols,
5206         get_global_symbols, record_debugformat, record_producer,
5207         push_context, pop_context, end_symtab_get_static_block,
5208         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
5209         New public methods.
5210         <record_pending_block, finish_block_internal, make_blockvector,
5211         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
5212         private methods.
5213         Update all users.
5214
5215 2018-05-22  Tom Tromey  <tom@tromey.com>
5216
5217         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
5218         parameter.
5219         (finish_block_internal): Update.
5220
5221 2018-07-20  Tom Tromey  <tom@tromey.com>
5222
5223         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
5224         parameter.
5225         (finish_block_internal): Update.
5226
5227 2018-07-20  Tom Tromey  <tom@tromey.com>
5228
5229         * buildsym.h (EXTERN): Don't define or undef.
5230         * buildsym.c (EXTERN): Don't define.
5231
5232 2018-07-20  Tom Tromey  <tom@tromey.com>
5233
5234         * buildsym.c: Remove TODO comment.
5235
5236 2018-07-20  Tom Tromey  <tom@tromey.com>
5237
5238         * coffread.c (coff_symtab_read): Update.
5239         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
5240         (xcoff_new_init): Update.
5241         * mipsread.c (mipscoff_new_init): Update.
5242         * mdebugread.c (mdebug_build_psymtabs): Update.
5243         * elfread.c (elf_new_init): Update.
5244         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
5245         Update.
5246         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
5247         (coffstab_build_psymtabs, elfstab_build_psymtabs)
5248         (stabsect_build_psymtabs): Update.
5249         * buildsym.h (buildsym_init): Don't declare.
5250         * buildsym.c: Update comment.
5251         (prepare_for_building): Remove.
5252         (start_symtab, restart_symtab): Update.
5253         (reset_symtab_globals): Update comment.
5254         (buildsym_init): Remove.
5255
5256 2018-07-20  Tom Tromey  <tom@tromey.com>
5257
5258         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
5259         * stabsread.c (patch_block_stabs, define_symbol, read_type)
5260         (read_enum_type, common_block_start, common_block_end)
5261         (cleanup_undefined_types_1, finish_global_stabs): Update.
5262         * mdebugread.c (psymtab_to_symtab_1): Update.
5263         * dwarf2read.c (fixup_go_packaging, read_func_scope)
5264         (read_lexical_block_scope, new_symbol): Update.
5265         * dbxread.c (process_one_symbol): Update.
5266         * coffread.c (coff_symtab_read, process_coff_symbol)
5267         (coff_read_enum_type): Update.
5268         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
5269         declare.
5270         (get_local_symbols, get_file_symbols, get_global_symbols): New
5271         functions.
5272         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
5273         m_global_symbols.
5274         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
5275         (~scoped_free_pendings): Update.
5276         (finish_block, prepare_for_building, reset_symtab_globals)
5277         (end_symtab_get_static_block, end_symtab_with_blockvector)
5278         (augment_type_symtab, push_context): Update.
5279         (get_local_symbols, get_file_symbols, get_global_symbols): New
5280         functions.
5281         (buildsym_init): Update.
5282
5283 2018-07-20  Tom Tromey  <tom@tromey.com>
5284
5285         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
5286         (process_full_type_unit): Likewise.
5287         (dwarf2_start_symtab): Set list_in_scope.
5288
5289 2018-07-20  Tom Tromey  <tom@tromey.com>
5290
5291         * dwarf2read.c (process_psymtab_comp_unit_reader)
5292         (build_type_psymtabs_reader): Do not set list_in_scope.
5293
5294 2018-07-20  Tom Tromey  <tom@tromey.com>
5295
5296         * buildsym.c (free_pendings): Remove.
5297         (add_symbol_to_list, scoped_free_pendings)
5298         (finish_block_internal, buildsym_init): Update.
5299
5300 2018-07-20  Tom Tromey  <tom@tromey.com>
5301
5302         * xcoffread.c (read_xcoff_symtab): Update.
5303         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
5304         Update.
5305         * dbxread.c (process_one_symbol): Update.
5306         * coffread.c (coff_symtab_read): Update.
5307         * buildsym.h (finish_block): Update.
5308         * buildsym.c (finish_block): Remove "listhead" argument.
5309         (end_symtab_get_static_block): Update.
5310
5311 2018-07-20  Tom Tromey  <tom@tromey.com>
5312
5313         * buildsym.h (class scoped_free_pendings): Remove constructor.
5314         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
5315         method.
5316         <m_pending_block_obstack, m_pending_blocks>: New members.
5317         (pending_block_obstack, pending_blocks): Remove.
5318         (scoped_free_pendings::scoped_free_pendings): Default.
5319         (~scoped_free_pendings): Update.
5320         (free_pending_blocks): Remove.
5321         (finish_block_internal, record_pending_block, make_blockvector)
5322         (end_symtab_get_static_block, augment_type_symtab, push_context)
5323         (buildsym_init): Update.
5324
5325 2018-07-20  Tom Tromey  <tom@tromey.com>
5326
5327         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
5328         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
5329         members.
5330         (pending_addrmap, pending_addrmap_obstack)
5331         (pending_addrmap_interesting): Remove.
5332         (scoped_free_pendings, record_block_range, make_blockvector)
5333         (prepare_for_building, reset_symtab_globals, buildsym_init):
5334         Update.
5335
5336 2018-07-20  Tom Tromey  <tom@tromey.com>
5337
5338         * xcoffread.c (process_linenos): Update.
5339         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
5340         * mdebugread.c (psymtab_to_symtab_1): Update.
5341         * dwarf2read.c (setup_type_unit_groups)
5342         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
5343         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
5344         * dbxread.c (process_one_symbol): Update.
5345         * coffread.c (coff_symtab_read, enter_linenos)
5346         (process_coff_symbol): Update.
5347         * buildsym.h (current_subfile): Don't declare.
5348         (get_current_subfile): Declare.
5349         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
5350         member.
5351         (start_subfile, free_buildsym_compunit, push_subfile)
5352         (prepare_for_building, start_symtab): Update.
5353         (get_current_subfile): New function.
5354
5355 2018-07-20  Tom Tromey  <tom@tromey.com>
5356
5357         * coffread.c (coff_symtab_read): Update.
5358         * xcoffread.c (read_xcoff_symtab): Update.
5359         * dwarf2read.c (new_symbol): Update.
5360         (read_func_scope, read_lexical_block_scope): Update.
5361         * dbxread.c (process_one_symbol): Update.
5362         * buildsym.h (context_stack, context_stack_depth): Don't declare.
5363         (outermost_context_p): Remove macro.
5364         (outermost_context_p, get_current_context_stack)
5365         (get_context_stack_depth): Declare.
5366         (pop_context): Return struct context_stack.
5367         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
5368         member.
5369         (context_stack_size): Remove.
5370         (INITIAL_CONTEXT_STACK_SIZE): Remove.
5371         (prepare_for_building, end_symtab_get_static_block)
5372         (augment_type_symtab, push_context): Update.
5373         (pop_context): Return struct context_stack.
5374         (outermost_context_p, get_current_context_stack)
5375         (get_context_stack_depth): New functions.
5376         (buildsym_init): Update.
5377
5378 2018-07-20  Tom Tromey  <tom@tromey.com>
5379
5380         * rust-exp.y: Now a pure parser.  Update all rules.
5381         (%union): Move earlier.
5382         (current_parser, work_obstack): Remove globals.
5383         (rust_parser, ~rust_parser): Update.
5384         (class rust_parser) <copy_name, concat3, crate_name, super_name,
5385         lex_character, lex_number, lex_string, lex_identifier,
5386         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
5387         convert_name, convert_params_to_expression,
5388         convert_ast_to_expression, ast_basic_type, ast_operation,
5389         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
5390         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
5391         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
5392         ast_array_type, ast_slice_type, ast_reference_type,
5393         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
5394         (rust_parse): Update.
5395         (rustyyerror, rustyylex): Add parser parameter.
5396         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
5397         (rust_lex_stringish_test, rust_lex_test_sequence)
5398         (rust_lex_test_trailing_dot, rust_lex_test_completion)
5399         (rust_lex_test_push_back, rust_lex_tests): Update.
5400
5401 2018-07-19  Pedro Alves  <palves@redhat.com>
5402
5403         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
5404         gdb::unique_xmalloc_ptr.
5405         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
5406         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
5407         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
5408         copy-initialization.
5409         * guile/scm-pretty-print.c (ppscm_print_children): Use
5410         gdb::unique_xmalloc_ptr instead of cleanups.
5411         (gdbscm_apply_val_pretty_printer): Remove cleanups.
5412         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
5413         gdb::unique_xmalloc_ptr.
5414         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
5415         Adjust to use gdb::unique_xmalloc_ptr.
5416         * guile/scm-utils.c (extract_arg): Adjust.
5417         * guile/scm-value.c (gdbscm_value_field): Adjust to use
5418         gdb::unique_xmalloc_ptr instead of a cleanup.
5419
5420 2018-07-19  Tom Tromey  <tom@tromey.com>
5421
5422         * utils.c (do_value_free_to_mark)
5423         (make_cleanup_value_free_to_mark): Remove.
5424         * utils.h (make_cleanup_value_free_to_mark): Remove.
5425
5426 2018-07-19  Pedro Alves  <palves@redhat.com>
5427
5428         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
5429         forwarding reference.
5430
5431 2018-07-18  Pedro Alves  <palves@redhat.com>
5432
5433         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
5434         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
5435         cleanup.
5436
5437 2018-07-18  Pedro Alves  <palves@redhat.com>
5438
5439         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
5440         exceptions.
5441         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
5442         (gdbscm_wrap): New.
5443         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
5444         directly instead of a cleanup.
5445         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
5446         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
5447         (vlscm_binop_gdbthrow): New, factored out from ...
5448         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
5449         (vlscm_rich_compare): Use gdbscm_wrap.
5450         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
5451         instead of a cleanup.
5452         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
5453         cleanup.
5454         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
5455         Use xfree directly instead of a cleanup.
5456         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
5457         Adjust to use gdbscm_wrap and scoped_value_mark.
5458         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
5459         (gdbscm_value_address, gdbscm_value_dereference)
5460         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
5461         scoped_value_mark.
5462         (gdbscm_value_dynamic_type): Use scoped_value_mark.
5463         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
5464         scoped_value_mark.
5465         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
5466         gdbscm_wrap and scoped_value_mark.
5467         (gdbscm_value_to_string): Use xfree directly instead of a
5468         cleanup.  Move 'buffer' unique_ptr to TRY scope.
5469         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
5470         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
5471         scoped_value_mark.
5472         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
5473         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
5474         scoped_value_mark.
5475         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
5476         gdbscm_wrap.
5477
5478 2018-07-18  Tom de Vries  <tdevries@suse.de>
5479
5480         * findvar.c (default_read_var_value): Also resolve dynamic type for
5481         LOC_OPTIMIZED_OUT vars.
5482
5483 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
5484
5485         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
5486         decoding.
5487
5488 2018-07-17  Tom Tromey  <tom@tromey.com>
5489
5490         * guile/scm-param.c (pascm_set_func, pascm_show_func)
5491         (compute_enum_list, pascm_set_param_value_x)
5492         (gdbscm_parameter_value): Update.
5493         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
5494         (gdbscm_scm_to_host_string): Update.
5495         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
5496         Update.
5497         * guile/scm-cmd.c (cmdscm_add_completion): Update.
5498         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
5499         * guile/scm-string.c (gdbscm_scm_to_string): Return
5500         unique_xmalloc_ptr.
5501         (gdbscm_scm_to_host_string): Likewise.
5502
5503 2018-07-17  Tom Tromey  <tom@tromey.com>
5504
5505         * guile/guile.c (gdbscm_eval_from_control_command): Update.
5506         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
5507         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
5508         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
5509         unique_xmalloc_ptr.
5510
5511 2018-07-17  Tom Tromey  <tom@tromey.com>
5512
5513         * guile/scm-param.c (pascm_signal_setshow_error): Update.
5514         * guile/guile-internal.h (gdbscm_exception_message_to_string):
5515         Update.
5516         * guile/scm-cmd.c (cmdscm_function): Update.
5517         * guile/scm-pretty-print.c
5518         (ppscm_print_exception_unless_memory_error): Update.
5519         * guile/scm-exception.c (gdbscm_exception_message_to_string):
5520         Return unique_xmalloc_ptr.
5521
5522 2018-07-17  Tom Tromey  <tom@tromey.com>
5523
5524         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
5525         Use string_printf.
5526
5527 2018-07-17  Jim Wilson  <jimw@sifive.com>
5528
5529         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
5530         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
5531         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
5532         unecessary braces after EF_RISCV_RVC test.  Delete call to
5533         set_gdbarch_decr_pc_after_break.
5534
5535         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
5536         RISCV_LAST_FP_REGNUM + 1.
5537         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
5538
5539 2018-07-17  Tom Tromey  <tom@tromey.com>
5540
5541         * configure.ac: Remove --disable-gdbcli.
5542         * configure: Rebuild.
5543         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
5544         (SUBDIR_CLI_CFLAGS): Remove.
5545         (SFILES): Use SUBDIR_CLI_SRCS.
5546         (COMMON_OBS): Use SUBDIR_CLI_OBS.
5547
5548 2018-07-17  Tom Tromey  <tom@tromey.com>
5549
5550         PR gdb/18624:
5551         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
5552
5553 2018-07-16  Jim Wilson  <jimw@sifive.com>
5554
5555         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
5556
5557 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5558
5559         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
5560         variable.
5561         (libunwind_frame_sniffer): Likewise.
5562         (libunwind_frame_prev_register): Likewise.
5563         (libunwind_sigtramp_frame_sniffer): Likewise.
5564         * ia64-tdep.c (ia64_access_reg): Likewise.
5565         (ia64_access_rse_reg): Likewise.
5566         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
5567         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
5568
5569 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5570
5571         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
5572
5573 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5574
5575         * remote-sim.c (gdbsim_target::close,
5576         gdbsim_target::mourn_inferior): Remove unused variables.
5577
5578 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
5579
5580         * ia64-tdep.c (ktab_buf): New global.
5581         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
5582         (get_kernel_table): Adjust.
5583
5584 2018-07-16  Tom Tromey  <tom@tromey.com>
5585
5586         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
5587         * dwarf2read.c (using_directives, new_symbol): Use
5588         outermost_context_p.
5589         * dbxread.c (process_one_symbol): Use outermost_context_p.
5590         * coffread.c (coff_symtab_read): Use outermost_context_p.
5591
5592 2018-07-16  Tom Tromey  <tom@tromey.com>
5593
5594         * dwarf2read.c (using_directives, read_func_scope)
5595         (read_lexical_block_scope): Update.
5596         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
5597         * buildsym.h (local_using_directives, global_using_directives):
5598         Don't declare.
5599         (get_local_using_directives, set_local_using_directives)
5600         (get_global_using_directives): Declare.
5601         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
5602         m_global_using_directives>: New members.
5603         (finish_block_internal, prepare_for_building)
5604         (reset_symtab_globals, end_symtab_get_static_block)
5605         (push_context): Update.
5606         (get_local_using_directives, set_local_using_directives)
5607         (get_global_using_directives): New functions.
5608         (buildsym_init): Update.
5609
5610 2018-07-16  Tom Tromey  <tom@tromey.com>
5611
5612         * xcoffread.c (xcoff_initial_scan): Don't call
5613         free_pending_blocks.
5614         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
5615         * buildsym.h (class scoped_free_pendings): Add constructor.
5616         (free_pending_blocks): Don't declare.
5617         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
5618         (free_pending_blocks): Now static.
5619
5620 2018-07-16  Tom Tromey  <tom@tromey.com>
5621
5622         * buildsym.h (push_subfile, pop_subfile): Update declarations.
5623         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
5624         member.
5625         (struct subfile_stack): Remove.
5626         (subfile_stack): Remove.
5627         (push_subfile, pop_subfile, buildsym_init): Update.
5628
5629 2018-07-16  Tom Tromey  <tom@tromey.com>
5630
5631         * buildsym.c (push_subfile): Use gdb_assert.
5632         (pop_subfile): Use gdb_assert.
5633
5634 2018-07-16  Tom Tromey  <tom@tromey.com>
5635
5636         * buildsym.h (merge_symbol_lists): Remove.
5637         * buildsym.c (merge_symbol_lists): Remove.
5638
5639 2018-07-16  Tom Tromey  <tom@tromey.com>
5640
5641         * stabsread.c (scan_file_globals): Update comment.
5642         * stabsread.h (scan_file_globals): Move from buildsym.h.
5643         * buildsym.h (scan_file_globals): Move to stabsread.h.
5644
5645 2018-07-16  Tom Tromey  <tom@tromey.com>
5646
5647         * xcoffread.c (xcoff_new_init): Update.
5648         * mipsread.c (mipscoff_new_init): Update.
5649         * mdebugread.c (mdebug_build_psymtabs): Update.
5650         * elfread.c (elf_new_init): Update.
5651         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
5652         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
5653         * buildsym.h (buildsym_new_init): Don't declare.
5654         * buildsym.c (buildsym_new_init): Remove.
5655
5656 2018-07-16  Tom Tromey  <tom@tromey.com>
5657
5658         * stabsread.h (within_function): Move from buildsym.h.
5659         * stabsread.c (start_stabs): Clear within_function.
5660         * coffread.c (coff_start_symtab): Clear within_function.
5661         * buildsym.h (within_function): Move to stabsread.h.
5662         * buildsym.c (prepare_for_building): Update.
5663
5664 2018-07-16  Tom Tromey  <tom@tromey.com>
5665
5666         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
5667         * dwarf2read.c (dwarf2_start_symtab): Don't set
5668         processing_gcc_compilation.
5669         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
5670
5671 2018-07-16  Tom Tromey  <tom@tromey.com>
5672
5673         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
5674         (next_symbol_text_func): Move from buildsym.h.
5675         * stabsread.c (hashname): Move from buildsym.c.
5676         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
5677         (next_symbol_text_func, hashname): Move to stabsread.h.
5678         * buildsym.c: Don't include bcache.h
5679         (hashname): Move to stasbread.c.
5680
5681 2018-07-16  Tom Tromey  <tom@tromey.com>
5682
5683         * buildsym.h (context_stack_size): Don't declare.
5684         * buildsym.c (context_stack_size): New global.
5685
5686 2018-07-16  Tom Tromey  <tom@tromey.com>
5687
5688         * dbxread.c (processing_acc_compilation): New global.
5689         * buildsym.h (processing_acc_compilation): Don't declare.
5690
5691 2018-07-16  Tom Tromey  <tom@tromey.com>
5692
5693         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
5694         * dbxread.c (read_ofile_symtab): Update.
5695         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
5696         * buildsym.h (last_source_start_addr): Remove.
5697         (set_last_source_start_addr, get_last_source_start_addr):
5698         Declare.
5699         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
5700         parameter.
5701         (struct buildsym_compunit) <m_last_source_start_addr>: New
5702         member.
5703         (prepare_for_building): Remove start_addr parameter.
5704         (start_symtab, restart_symtab, end_symtab_get_static_block)
5705         (end_symtab_with_blockvector): Update.
5706         (set_last_source_start_addr, get_last_source_start_addr): New
5707         functions.
5708
5709 2018-07-16  Tom Tromey  <tom@tromey.com>
5710
5711         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
5712         member.
5713         (have_line_numbers): Remove.
5714         (record_line, prepare_for_building, end_symtab_get_static_block)
5715         (augment_type_symtab): Update.
5716
5717 2018-07-16  Tom Tromey  <tom@tromey.com>
5718
5719         * buildsym.c (~buildsym_compunit): Free the macro table.
5720         (struct buildsym_compunit) <get_macro_table, release_macros>: New
5721         methods.
5722         <m_pending_macros>: New member.
5723         (pending_macros): Remove.
5724         (~scoped_free_pendings, get_macro_table, prepare_for_building)
5725         (reset_symtab_globals, end_symtab_get_static_block)
5726         (end_symtab_with_blockvector, augment_type_symtab)
5727         (buildsym_init): Update.
5728
5729 2018-07-16  Tom Tromey  <tom@tromey.com>
5730
5731         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
5732         parameter.
5733         (buildsym_compunit::set_last_source_file): New method.
5734         <m_last_source_file>: New member.
5735         (prepare_for_building): Remove "name" parameter.
5736         (start_symtab, restart_symtab, reset_symtab_globals): Update.
5737         (last_source_file): Remove.
5738         (set_last_source_file, get_last_source_file): Update.
5739
5740 2018-07-16  Tom Tromey  <tom@tromey.com>
5741
5742         * buildsym.c (prepare_for_building): Add assert.
5743
5744 2018-07-16  Tom Tromey  <tom@tromey.com>
5745
5746         * buildsym.c (~buildsym_compunit): Update.
5747         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
5748         (start_subfile, patch_subfile_names)
5749         (end_symtab_with_blockvector): Update.
5750
5751 2018-07-16  Tom Tromey  <tom@tromey.com>
5752
5753         * buildsym.c (struct buildsym_compunit): Add constructor,
5754         destructor, initializers.
5755         (start_buildsym_compunit): Remove.
5756         (free_buildsym_compunit): Use "delete".
5757         (start_symtab, restart_symtab): Use "new".
5758
5759 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
5760
5761         * symfile.c (set_objfile_default_section_offset): Remove struct
5762         keyword.
5763
5764 2018-07-14  Stafford Horne  <shorne@gmail.com>
5765
5766         * (Responsible Maintainers): Add myself as or1k maintainer.
5767
5768 2018-07-13  Tom Tromey  <tom@tromey.com>
5769
5770         * symfile.c (set_objfile_default_section_offset): Use extra braces
5771         around initializer.
5772
5773 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
5774
5775         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
5776         non-branching basr.
5777
5778 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5779
5780         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5781         unittests/cli-utils-selftests.c
5782         * unittests/cli-utils-selftests.c: New file.
5783
5784 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5785
5786         * NEWS: Mention new commands. Mention change to 'thread apply'.
5787
5788 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5789
5790         * thread.c (thr_try_catch_cmd): New function.
5791         (thread_apply_all_command): Handle qcs flags.
5792         (thread_apply_command): Handle qcs flags.
5793         (taas_command): New function.
5794         (tfaas_command): New function.
5795         (_initialize_thread): Update to setup the new commands 'taas
5796         and 'tfaas'. Change doc string for 'thread apply'.
5797
5798 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5799
5800         * stack.c: (trailing_outermost_frame): New function, mostly
5801         extracted from backtrace_command_1.
5802         (leading_innermost_frame): New function.
5803         (backtrace_command_1): Update to call trailing_outermost_frame.
5804         (frame_apply_command_count): New function.
5805         (frame_apply_level_command): New function.
5806         (frame_apply_all_command): New function.
5807         (frame_apply_command): New function.
5808         (faas_command): New function.
5809         (frame_cmd_list): New variable.
5810         (_initialize_stack): Update to setup the new commands 'frame apply'
5811         and 'faas'.
5812
5813 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5814
5815         * cli-utils.c (number_or_range_parser::get_number): Only handle
5816         numbers or convenience var as numbers.
5817         (parse_flags): New function.
5818         (parse_flags_qcs): New function.
5819         (number_or_range_parser::finished): Ensure parsing end is detected
5820         before end of string.
5821         * cli-utils.h (parse_flags): New function.
5822         (parse_flags_qcs): New function.
5823         (number_or_range_parser): Remove m_finished bool.
5824         (number_or_range_parser::skip_range): Set m_in_range to false.
5825
5826 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
5827
5828         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
5829         on Windows.
5830
5831 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5832             Jan Kratochvil  <jan.kratochvil@redhat.com>
5833             Paul Fertser  <fercerpav@gmail.com>
5834             Tsutomu Seki  <sekiriki@gmail.com>
5835             Pedro Alves  <palves@redhat.com>
5836
5837         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5838         'unittests/parse-connection-spec-selftests.c'.
5839         (COMMON_SFILES): Add 'common/netstuff.c'.
5840         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
5841         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
5842         * common/netstuff.c: New file.
5843         * common/netstuff.h: New file.
5844         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
5845         (wait_for_connect): Update comment.  New parameter
5846         'gdb::optional<int> sock' instead of 'struct serial *scb'.
5847         Use 'sock' directly instead of 'scb->fd'.
5848         (try_connect): New function, with code from 'net_open'.
5849         (net_open): Rewrite main loop to deal with multiple
5850         sockets/addresses.  Handle IPv6-style hostnames; implement
5851         support for IPv6 connections.
5852         * unittests/parse-connection-spec-selftests.c: New file.
5853
5854 2018-07-11  Pedro Alves  <palves@redhat.com>
5855
5856         PR gdb/23377
5857         * remote.c (remote_target::remote_detach_pid): Call
5858         set_current_process.
5859
5860 2018-07-11  Pedro Alves  <palves@redhat.com>
5861
5862         * h8300-tdep.c (h8300_gdbarch_init): Remove
5863         set_gdbarch_ecoff_reg_to_regnum calls.
5864
5865 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5866
5867         PR c++/23373
5868         * c-typeprint.c (c_type_print_base_struct_union): Don't print
5869         offsets/sizes for static members of a class/struct.
5870
5871 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
5872
5873         * target-descriptions.c (tdesc_register_bitsize): Rename.
5874         * target-descriptions.h (tdesc_register_bitsize): Likewise.
5875         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
5876         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
5877
5878 2018-07-10  Tom Tromey  <tom@tromey.com>
5879
5880         * breakpoint.c (moribund_locations): Now static and a
5881         std::vector.
5882         (breakpoint_init_inferior, moribund_breakpoint_here_p)
5883         (build_bpstat_chain, update_global_location_list)
5884         (breakpoint_retire_moribund): Update.
5885         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
5886         VEC.
5887
5888 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5889
5890         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
5891         (riscv_register_reggroup_p): Use new function, remove unneeded
5892         parenthesis.
5893         (riscv_push_dummy_call): Extend assert to compare against xlen or
5894         flen based on register type.
5895
5896 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5897
5898         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
5899
5900 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5901
5902         * remote.c (show_hardware_watchpoint_limit): New function.
5903         (show_hardware_watchpoint_length_limit): New function.
5904         (show_hardware_breakpoint_limit): New function.
5905         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
5906         where appropriate, update help text.
5907
5908 2018-07-09  Tom Tromey  <tom@tromey.com>
5909
5910         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
5911         (CLIBS): Don't mention NAT_CLIBS.
5912
5913 2018-07-09  Tom Tromey  <tom@tromey.com>
5914
5915         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
5916         (LIBGDB_OBS, clean mostlyclean): Update.
5917         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
5918
5919 2018-07-09  Tom Tromey  <tom@tromey.com>
5920
5921         * Makefile.in (%.c: %.y): Use ECHO_YACC.
5922         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
5923         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
5924
5925 2018-07-09  Tom Tromey  <tom@tromey.com>
5926
5927         * Makefile.in (ALLDEPFILES): Remove exec.c.
5928         (COMMON_OBS): Remove exec.o.
5929         (COMMON_SFILES): Add exec.c.
5930
5931 2018-07-09  Tom Tromey  <tom@tromey.com>
5932
5933         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
5934
5935 2018-07-09  Tom Tromey  <tom@tromey.com>
5936
5937         * Makefile.in (clean mostlyclean): Remove stamp-version.
5938         (version.c): Depend on stamp-version.
5939         (stamp-version): New rule, from version.c rule.
5940
5941 2018-07-09  Tom Tromey  <tom@tromey.com>
5942
5943         * Makefile.in (init.c): Depend on stamp-init.
5944         (stamp-init): New rule, from init.c rule.
5945         (clean mostlyclean): Remove stamp-init.
5946
5947 2018-07-09  Tom Tromey  <tom@tromey.com>
5948
5949         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
5950         SUBDIR_GCC_COMPILE_SRCS.
5951
5952 2018-07-09  Tom Tromey  <tom@tromey.com>
5953
5954         * Makefile.in (init.c): Remove some unused sed rules.
5955
5956 2018-07-09  Tom Tromey  <tom@tromey.com>
5957
5958         * Makefile.in (TSOBS): Remove.
5959         (INIT_FILES): Update.
5960         (LIBGDB_OBS): Update.
5961         (COMMON_SFILES): Add inflow.c.
5962         (SFILES): Remove inflow.c.
5963
5964 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
5965
5966         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
5967
5968 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
5969
5970         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
5971         get_saveloc_name, is_signal_frame_name, step_name,
5972         init_remote_name, create_addr_space_name,
5973         destroy_addr_space_name, search_unwind_table_name,
5974         find_dyn_list_name): Constify.
5975
5976 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
5977
5978         * darwin-nat.c (darwin_pthread_kill): New function.
5979         (darwin_resume_thread): Use darwin_pthread_kill.
5980
5981 2018-07-05  Tom de Vries  <tdevries@suse.de>
5982
5983         * macroexp.c (macro_buffer) <operator=>: New member function.
5984
5985 2018-07-04  Tom Tromey  <tom@tromey.com>
5986
5987         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
5988
5989 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
5990
5991         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
5992         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
5993         * maint.c: Likewise.
5994         * top.c: Likewise.
5995
5996 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5997
5998         * NEWS: Create a new section for the next release branch.
5999         Rename the section of the current branch, now that it has
6000         been cut.
6001
6002 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
6003
6004         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
6005         * version.in: Bump version to 8.2.50.DATE-git.
6006
6007 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
6008             Pedro Alves  <palves@redhat.com>
6009
6010         * linux-nat.c (linux_init_ptrace): Rename to ...
6011         (linux_init_ptrace_procfs): ... this.  Call
6012         linux_proc_init_warnings.
6013         (linux_nat_target::post_attach)
6014         (linux_nat_target::post_startup_inferior): Adjust.
6015         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
6016         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
6017
6018 2018-07-04  Tom de Vries  <tdevries@suse.de>
6019
6020         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
6021         check ...
6022         (read_comp_unit_head): ... here.
6023
6024 2018-07-03  Tom Tromey  <tom@tromey.com>
6025
6026         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
6027         (stop_tracing, tstatus_command)
6028         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
6029         (print_one_static_tracepoint_marker): Update.
6030         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
6031         std::vector.
6032         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
6033         VEC.
6034         (all_tracepoints, static_tracepoints_here): Return std::vector.
6035
6036 2018-07-03  Tom Tromey  <tom@tromey.com>
6037
6038         * common/ptid.c (ptid_equal): Remove.
6039         * common/ptid.h (ptid_equal): Don't declare.
6040         * ada-tasks.c: Update.
6041         * breakpoint.c: Update.
6042         * common/agent.c: Update.
6043         * corelow.c: Update.
6044         * darwin-nat-info.c: Update.
6045         * darwin-nat.c: Update.
6046         * dcache.c: Update.
6047         * dtrace-probe.c: Update.
6048         * dummy-frame.c: Update.
6049         * fbsd-nat.c: Update.
6050         * frame.c: Update.
6051         * gdbthread.h: Update.
6052         * gnu-nat.c: Update.
6053         * go32-nat.c: Update.
6054         * inf-loop.c: Update.
6055         * inf-ptrace.c: Update.
6056         * infcall.c: Update.
6057         * infcmd.c: Update.
6058         * inflow.c: Update.
6059         * infrun.c: Update.
6060         * linux-fork.c: Update.
6061         * linux-nat.c: Update.
6062         * linux-thread-db.c: Update.
6063         * mi/mi-cmd-var.c: Update.
6064         * mi/mi-interp.c: Update.
6065         * mi/mi-main.c: Update.
6066         * nto-procfs.c: Update.
6067         * ppc-linux-tdep.c: Update.
6068         * procfs.c: Update.
6069         * python/py-inferior.c: Update.
6070         * python/py-record-btrace.c: Update.
6071         * python/py-record.c: Update.
6072         * ravenscar-thread.c: Update.
6073         * regcache.c: Update.
6074         * remote-sim.c: Update.
6075         * remote.c: Update.
6076         * sol-thread.c: Update.
6077         * solib.c: Update.
6078         * target.c: Update.
6079         * tui/tui-stack.c: Update.
6080         * varobj.c: Update.
6081         * windows-nat.c: Update.
6082         * windows-tdep.c: Update.
6083
6084 2018-07-03  Tom Tromey  <tom@tromey.com>
6085
6086         * common/ptid.c (ptid_match): Remove.
6087         * common/ptid.h (ptid_match): Don't declare.
6088         * fbsd-nat.c: Update.
6089         * infcmd.c: Update.
6090         * infrun.c: Update.
6091         * linux-nat.c: Update.
6092         * record-btrace.c: Update.
6093         * regcache.c: Update.
6094         * remote.c: Update.
6095
6096 2018-07-03  Tom Tromey  <tom@tromey.com>
6097
6098         * common/ptid.c (ptid_tid_p): Remove.
6099         * common/ptid.h (ptid_tid_p): Don't declare.
6100         * sol-thread.c: Update.
6101
6102 2018-07-03  Tom Tromey  <tom@tromey.com>
6103
6104         * common/ptid.c (ptid_lwp_p): Remove.
6105         * common/ptid.h (ptid_lwp_p): Don't declare.
6106         * fbsd-nat.c: Update.
6107         * linux-nat.c: Update.
6108         * nat/linux-procfs.c: Update.
6109         * nat/x86-linux-dregs.c: Update.
6110         * sol-thread.c: Update.
6111
6112 2018-07-03  Tom Tromey  <tom@tromey.com>
6113
6114         * common/ptid.c (ptid_is_pid): Remove.
6115         * common/ptid.h (ptid_is_pid): Don't declare.
6116         * infrun.c: Update.
6117         * linux-nat.c: Update.
6118         * mi/mi-interp.c: Update.
6119         * remote.c: Update.
6120         * thread.c: Update.
6121
6122 2018-07-03  Tom Tromey  <tom@tromey.com>
6123
6124         * common/ptid.c (ptid_get_tid): Remove.
6125         * common/ptid.h (ptid_get_tid): Don't declare.
6126         * ada-tasks.c: Update.
6127         * aix-thread.c: Update.
6128         * bsd-uthread.c: Update.
6129         * darwin-nat.c: Update.
6130         * fbsd-nat.c: Update.
6131         * i386-darwin-nat.c: Update.
6132         * infrun.c: Update.
6133         * linux-tdep.c: Update.
6134         * nto-procfs.c: Update.
6135         * ppc-ravenscar-thread.c: Update.
6136         * python/py-infthread.c: Update.
6137         * ravenscar-thread.c: Update.
6138         * sol-thread.c: Update.
6139         * sparc-ravenscar-thread.c: Update.
6140         * windows-nat.c: Update.
6141
6142 2018-07-03  Tom Tromey  <tom@tromey.com>
6143
6144         * common/ptid.c (ptid_get_lwp): Remove.
6145         * common/ptid.h (ptid_get_lwp): Don't declare.
6146         * aarch64-linux-nat.c: Update.
6147         * ada-tasks.c: Update.
6148         * aix-thread.c: Update.
6149         * amd64-linux-nat.c: Update.
6150         * arm-linux-nat.c: Update.
6151         * corelow.c: Update.
6152         * fbsd-nat.c: Update.
6153         * fbsd-tdep.c: Update.
6154         * gnu-nat.c: Update.
6155         * i386-cygwin-tdep.c: Update.
6156         * i386-gnu-nat.c: Update.
6157         * i386-linux-nat.c: Update.
6158         * ia64-linux-nat.c: Update.
6159         * inf-ptrace.c: Update.
6160         * infrun.c: Update.
6161         * linux-fork.c: Update.
6162         * linux-nat.c: Update.
6163         * linux-tdep.c: Update.
6164         * linux-thread-db.c: Update.
6165         * mips-linux-nat.c: Update.
6166         * nat/aarch64-linux-hw-point.c: Update.
6167         * nat/aarch64-linux.c: Update.
6168         * nat/linux-btrace.c: Update.
6169         * nat/linux-osdata.c: Update.
6170         * nat/linux-procfs.c: Update.
6171         * nat/x86-linux-dregs.c: Update.
6172         * obsd-nat.c: Update.
6173         * ppc-fbsd-nat.c: Update.
6174         * ppc-linux-nat.c: Update.
6175         * procfs.c: Update.
6176         * python/py-infthread.c: Update.
6177         * ravenscar-thread.c: Update.
6178         * remote.c: Update.
6179         * s390-linux-nat.c: Update.
6180         * sol-thread.c: Update.
6181         * sol2-tdep.c: Update.
6182         * spu-linux-nat.c: Update.
6183         * x86-linux-nat.c: Update.
6184         * xtensa-linux-nat.c: Update.
6185
6186 2018-07-03  Tom Tromey  <tom@tromey.com>
6187
6188         * common/ptid.c (ptid_get_pid): Remove.
6189         * common/ptid.h (ptid_get_pid): Don't declare.
6190         * aarch64-linux-nat.c: Update.
6191         * ada-lang.c: Update.
6192         * aix-thread.c: Update.
6193         * alpha-bsd-nat.c: Update.
6194         * amd64-fbsd-nat.c: Update.
6195         * amd64-linux-nat.c: Update.
6196         * arm-linux-nat.c: Update.
6197         * arm-nbsd-nat.c: Update.
6198         * auxv.c: Update.
6199         * break-catch-syscall.c: Update.
6200         * breakpoint.c: Update.
6201         * bsd-uthread.c: Update.
6202         * corelow.c: Update.
6203         * ctf.c: Update.
6204         * darwin-nat.c: Update.
6205         * fbsd-nat.c: Update.
6206         * fbsd-tdep.c: Update.
6207         * gcore.c: Update.
6208         * gnu-nat.c: Update.
6209         * hppa-nbsd-nat.c: Update.
6210         * hppa-obsd-nat.c: Update.
6211         * i386-fbsd-nat.c: Update.
6212         * ia64-linux-nat.c: Update.
6213         * inf-ptrace.c: Update.
6214         * infcmd.c: Update.
6215         * inferior.c: Update.
6216         * inferior.h: Update.
6217         * inflow.c: Update.
6218         * infrun.c: Update.
6219         * linux-fork.c: Update.
6220         * linux-nat.c: Update.
6221         * linux-tdep.c: Update.
6222         * linux-thread-db.c: Update.
6223         * m68k-bsd-nat.c: Update.
6224         * mi/mi-interp.c: Update.
6225         * mi/mi-main.c: Update.
6226         * mips-linux-nat.c: Update.
6227         * mips-nbsd-nat.c: Update.
6228         * mips64-obsd-nat.c: Update.
6229         * nat/aarch64-linux-hw-point.c: Update.
6230         * nat/aarch64-linux.c: Update.
6231         * nat/linux-btrace.c: Update.
6232         * nat/linux-osdata.c: Update.
6233         * nat/linux-procfs.c: Update.
6234         * nat/x86-linux-dregs.c: Update.
6235         * nto-procfs.c: Update.
6236         * obsd-nat.c: Update.
6237         * ppc-linux-nat.c: Update.
6238         * ppc-nbsd-nat.c: Update.
6239         * ppc-obsd-nat.c: Update.
6240         * proc-service.c: Update.
6241         * procfs.c: Update.
6242         * python/py-inferior.c: Update.
6243         * python/py-infthread.c: Update.
6244         * ravenscar-thread.c: Update.
6245         * record.c: Update.
6246         * remote-sim.c: Update.
6247         * remote.c: Update.
6248         * rs6000-nat.c: Update.
6249         * s390-linux-nat.c: Update.
6250         * sh-nbsd-nat.c: Update.
6251         * sol-thread.c: Update.
6252         * sparc-nat.c: Update.
6253         * sparc64-tdep.c: Update.
6254         * spu-linux-nat.c: Update.
6255         * spu-tdep.c: Update.
6256         * target-debug.h: Update.
6257         * target.c: Update.
6258         * thread.c: Update.
6259         * tid-parse.c: Update.
6260         * tracefile-tfile.c: Update.
6261         * vax-bsd-nat.c: Update.
6262         * windows-nat.c: Update.
6263         * x86-linux-nat.c: Update.
6264         * x86-nat.c: Update.
6265
6266 2018-07-03  Tom Tromey  <tom@tromey.com>
6267
6268         * common/ptid.c (pid_to_ptid): Remove.
6269         * common/ptid.h (pid_to_ptid): Don't declare.
6270         * aix-thread.c: Update.
6271         * arm-linux-nat.c: Update.
6272         * common/ptid.c: Update.
6273         * common/ptid.h: Update.
6274         * corelow.c: Update.
6275         * ctf.c: Update.
6276         * darwin-nat.c: Update.
6277         * fbsd-nat.c: Update.
6278         * fork-child.c: Update.
6279         * gnu-nat.c: Update.
6280         * go32-nat.c: Update.
6281         * inf-ptrace.c: Update.
6282         * infcmd.c: Update.
6283         * inferior.c: Update.
6284         * infrun.c: Update.
6285         * linux-fork.c: Update.
6286         * linux-nat.c: Update.
6287         * nat/aarch64-linux-hw-point.c: Update.
6288         * nat/fork-inferior.c: Update.
6289         * nat/x86-linux-dregs.c: Update.
6290         * nto-procfs.c: Update.
6291         * obsd-nat.c: Update.
6292         * procfs.c: Update.
6293         * progspace.c: Update.
6294         * remote.c: Update.
6295         * rs6000-nat.c: Update.
6296         * s390-linux-nat.c: Update.
6297         * sol-thread.c: Update.
6298         * spu-linux-nat.c: Update.
6299         * target.c: Update.
6300         * top.c: Update.
6301         * tracefile-tfile.c: Update.
6302         * windows-nat.c: Update.
6303
6304 2018-07-03  Tom Tromey  <tom@tromey.com>
6305
6306         * common/ptid.h (ptid_build): Don't declare.
6307         * common/ptid.c (ptid_build): Remove.
6308         * aix-thread.c: Update.
6309         * bsd-kvm.c: Update.
6310         * bsd-uthread.c: Update.
6311         * common/agent.c: Update.
6312         * common/ptid.c: Update.
6313         * common/ptid.h: Update.
6314         * corelow.c: Update.
6315         * darwin-nat.c: Update.
6316         * fbsd-nat.c: Update.
6317         * gnu-nat.c: Update.
6318         * linux-fork.c: Update.
6319         * linux-nat.c: Update.
6320         * linux-thread-db.c: Update.
6321         * nat/linux-osdata.c: Update.
6322         * nat/linux-procfs.c: Update.
6323         * nto-procfs.c: Update.
6324         * obsd-nat.c: Update.
6325         * proc-service.c: Update.
6326         * procfs.c: Update.
6327         * ravenscar-thread.c: Update.
6328         * remote-sim.c: Update.
6329         * remote.c: Update.
6330         * sol-thread.c: Update.
6331         * target.c: Update.
6332         * windows-nat.c: Update.
6333
6334 2018-07-03  Tom Tromey  <tom@tromey.com>
6335
6336         * infrun.c (follow_exec): Use exit_inferior_silent.
6337         * inferior.c (exit_inferior_num_silent): Remove.
6338         * inferior.h (exit_inferior_num_silent): Don't declare.
6339
6340 2018-07-03  Tom Tromey  <tom@tromey.com>
6341
6342         PR cli/23340:
6343         * darwin-nat.c (darwin_attach_pid): Reset inferior and
6344         inferior_ptid on error.
6345
6346 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
6347             Simon Marchi  <simon.marchi@polymtl.ca>
6348
6349         PR tdep/8282
6350         * disasm.h (gdb_disassembler): Add
6351         `m_disassembler_options_holder'. member
6352         * disasm.c (get_all_disassembler_options): New function.
6353         (gdb_disassembler::gdb_disassembler): Use it.
6354         (gdb_buffered_insn_length_init_dis): Likewise.
6355         (gdb_buffered_insn_length): Adjust accordingly.
6356         (set_disassembler_options): Handle options with arguments.
6357         (show_disassembler_options_sfunc): Likewise.  Add a leading new
6358         line if showing options with descriptions.
6359         (disassembler_options_completer): Adapt to using the
6360         `disasm_options_and_args_t' structure.
6361         * mips-tdep.c (mips_disassembler_options): New variable.
6362         (mips_disassembler_options_o32): Likewise.
6363         (mips_disassembler_options_n32): Likewise.
6364         (mips_disassembler_options_n64): Likewise.
6365         (gdb_print_insn_mips): Don't set `disassembler_options'.
6366         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
6367         functions.
6368         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
6369         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
6370         `gdbarch_disassembler_options_implicit' and
6371         `gdbarch_valid_disassembler_options'.
6372         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
6373         `disasm_options_and_args_t' structure.
6374         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
6375         method.
6376         (valid_disassembler_options): Switch from `disasm_options_t' to
6377         the `disasm_options_and_args_t' structure.
6378         * NEWS: Document `set disassembler-options' support for the MIPS
6379         target.
6380         * gdbarch.h: Regenerate.
6381         * gdbarch.c: Regenerate.
6382
6383 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
6384
6385         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
6386
6387 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
6388
6389         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
6390         parameter in call to amd64_target_description.
6391         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
6392         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
6393         (amd64fbsd_init_abi): Likewise.
6394         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
6395         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
6396         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
6397         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
6398
6399 2018-06-29  Pedro Alves  <palves@redhat.com>
6400
6401         * gdb/amd64-tdep.h (amd64_create_target_description): Add
6402         "segments" parameter.
6403         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
6404         (_initialize_amd64_tdep): Update call to
6405         amd64_create_target_description.
6406         (amd64_target_description): Add "segments" parameter.  Adjust
6407         the implementation to use it.
6408         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
6409         call to amd64_create_target_description.
6410         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
6411         * gdb/arch/amd64.h (amd64_create_target_description): Add
6412         "segments" register.
6413         * gdb/arch/amd64.c (amd64_create_target_description): Add
6414         "segments" parameter.  Call create_feature_i386_64bit_segments
6415         only if SEGMENTS is true.
6416         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
6417         call to amd64_create_target_description.
6418
6419 2018-06-29  Pedro Alves  <palves@redhat.com>
6420
6421         * thread.c (thread_target_id_str): New, factored out from ...
6422         (print_thread_info_1): ... here.  Use it to compute the max
6423         "Target Id" column width.
6424
6425 2018-06-29  Pedro Alves  <palves@redhat.com>
6426
6427         * remote.c (remote_target::extra_thread_info): Delete
6428         'display_buf' and 'n' locals.  from the cache, regardless of
6429         packet mechanims is in use.  Use cache for qThreadExtra and qP
6430         methods too.
6431
6432 2018-06-29  Pedro Alves  <palves@redhat.com>
6433
6434         * blockframe.c (find_pc_sect_containing_function): New function.
6435         * breakpoint.c (print_breakpoint_location): Don't call
6436         find_pc_sect_function.
6437         * linespec.c (create_sals_line_offset): Record the location's
6438         symbol in the sal.
6439         * linespec.c (convert_address_location_to_sals): Fill in sal's
6440         symbol with find_pc_sect_containing_function.
6441         * symtab.c (find_function_start_sal): Rename to ...
6442         (find_function_start_sal_1): ... this.
6443         (find_function_start_sal): Reimplement as wrapper around
6444         find_function_start_sal_1, and use
6445         find_pc_sect_containing_function to fill in the sal's symbol.
6446         (find_function_start_sal(symbol*, bool)): Adjust.
6447         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
6448         comments.
6449         (find_pc_sect_containing_function): Declare.
6450
6451 2018-06-29  Pedro Alves  <palves@redhat.com>
6452
6453         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
6454         true if the the location has no symbol.
6455
6456 2018-06-28  Tom Tromey  <tom@tromey.com>
6457
6458         * NEWS: Mention --enable-codesign.
6459         * silent-rules.mk (ECHO_SIGN): New variable.
6460         * configure.ac: Add --enable-codesign.
6461         * configure: Rebuild.
6462         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
6463         (gdb$(EXEEXT)): Optionally invoke codesign.
6464
6465 2018-06-28  Pedro Alves  <palves@redhat.com>
6466
6467         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
6468         comments.
6469         (switch_to_thread_no_regs): Adjust comment.
6470         * infcmd.c (stop_pc): Delete.
6471         (post_create_inferior, info_program_command): Replace references
6472         to stop_pc with references to thread_info->suspend.stop_pc.
6473         * inferior.h (stop_pc): Delete declaration.
6474         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
6475         (handle_inferior_event_1, handle_signal_stop)
6476         (process_event_stop_test, keep_going_stepped_thread)
6477         (handle_step_into_function, handle_step_into_function_backward)
6478         (print_stop_location): Replace references to stop_pc with
6479         references to thread_info->suspend.stop_pc.
6480         (struct infcall_suspend_state) <stop_pc>: Delete field.
6481         (save_infcall_suspend_state, restore_infcall_suspend_state):
6482         Remove references to inf_stat->stop_pc.
6483         * linux-fork.c (fork_load_infrun_state): Likewise.
6484         * record-btrace.c (record_btrace_set_replay): Likewise.
6485         * record-full.c (record_full_goto_entry): Likewise.
6486         * remote.c (print_one_stopped_thread): Likewise.
6487         * target.c (target_resume): Extend comment.
6488         * thread.c (set_executing_thread): New.
6489         (set_executing): Use it.
6490         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
6491         Remove references to stop_pc.
6492
6493 2018-06-28  Pedro Alves  <palves@redhat.com>
6494
6495         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
6496         Moving fetching stop_pc until after ecs->event_thread is refreshed.
6497
6498 2018-06-28  Tom Tromey  <tom@tromey.com>
6499
6500         * coffread.c (coff_symfile_finish): Update.
6501         * xcoffread.c (xcoff_symfile_finish): Update.
6502         * elfread.c (elf_symfile_finish): Update.
6503         * symfile.h (dwarf2_free_objfile): Don't declare.
6504         * dwarf2read.c (_initialize_dwarf2_read): Use
6505         register_objfile_data_with_cleanup.
6506         (dwarf2_free_objfile): Now static.  Change signature.
6507
6508 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6509
6510         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
6511         option "-o" to add-symbol-file-load to add an offset to each
6512         section's load address.
6513         * symfile.c (set_objfile_default_section_offset): New function.
6514
6515 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6516
6517         * symfile.c (add_symbol_file_command): Make sure that sections
6518         with the same name are sorted in the same order.
6519
6520 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6521
6522         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
6523         require the second argument.  If omitted, load sections at the
6524         addresses specified in the file.
6525
6526 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6527
6528         * symfile.c (symbol_file_command, symbol_file_add_main_1)
6529         (_initialize_symfile): Add option "-o" to symbol-file to add an
6530         offset to each section of the symbol file.
6531
6532 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6533
6534         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
6535
6536 2018-06-27  Tom Tromey  <tom@tromey.com>
6537
6538         * stack.c (_initialize_stack): Update "func" help text.
6539
6540 2018-06-27  Tom Tromey  <tom@tromey.com>
6541
6542         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
6543         std::vector.
6544         (unwind_infopy_str, pyuw_create_unwind_info)
6545         (unwind_infopy_add_saved_register, pyuw_sniffer)
6546         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
6547         Update.
6548         (struct saved_reg): Add constructor.
6549         <value>: Now a gdbpy_ref<>.
6550
6551 2018-06-27  Tom Tromey  <tom@tromey.com>
6552
6553         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
6554
6555 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6556
6557         * gdb-gdb.py.in: Format using autopep8.
6558
6559 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6560
6561         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
6562         (type_lookup_function): Recognize CORE_ADDR values.
6563
6564 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6565
6566         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
6567         print tag_name.
6568
6569 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6570
6571         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
6572         <__lt__>: Add.
6573
6574 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6575
6576         * gdb-gdb.py: Move to...
6577         * gdb-gdb.py.in: ... here.
6578         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
6579         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
6580         dependencies.
6581         (distclean): Remove gdb-gdb.py when cleaning.
6582         (gdb-gdb.py, gdb-gdb.gdb): New rules.
6583         * configure: Re-generate.
6584
6585 2018-06-27  Pedro Alves  <palves@redhat.com>
6586
6587         * proc-service.c (get_ps_regcache): New.
6588         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
6589         (ps_lsetfpregs): Use it.
6590
6591 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
6592
6593         PR gdb/21695
6594         * dwarf2read.c (lnp_state_machine::check_line_address): Update declaration.
6595         (dwarf_decode_lines_1): Adjust.
6596
6597 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6598
6599         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
6600         override.
6601         <info_proc>: Likewise.
6602
6603 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
6604
6605         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
6606         to windows_fetch_one_register, and only handle the case of
6607         fetching one register.  Move the code that reloads the context
6608         and iterates over all registers if R is negative to...
6609         (windows_nat_target::fetch_registers): ... here.
6610         (do_windows_store_inferior_registers): Rename to
6611         windows_store_one_register, and only handle the case of storing
6612         one register.  Move the code that handles the case where r is
6613         negative to...
6614         (windows_nat_target::store_registers) ... here.
6615
6616 2018-06-26  Tom Tromey  <tom@tromey.com>
6617
6618         PR rust/22574:
6619         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
6620         * rust-lang.c (rust_print_struct_def): Add podata parameter.
6621         Update.
6622         (rust_internal_print_type): Add podata parameter.
6623         (rust_print_type): Update.
6624
6625 2018-06-26  Tom Tromey  <tom@tromey.com>
6626
6627         * typeprint.h (struct print_offset_data) <update, finish,
6628         maybe_print_hole>: New methods.
6629         <indentation>: New constant.
6630         * typeprint.c (print_offset_data::indentation): Define.
6631         (print_offset_data::maybe_print_hole, print_offset_data::update)
6632         (print_offset_data::finish): Move from c-typeprint.c and rename.
6633         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
6634         (print_spaces_filtered_with_print_options): Update.
6635         (c_print_type_union_field_offset, maybe_print_hole)
6636         (c_print_type_struct_field_offset): Move to typeprint.c and
6637         rename.
6638         (c_type_print_base_struct_union): Update.
6639
6640 2018-06-25  Pedro Alves  <palves@redhat.com>
6641
6642         * gdbthread.h (thread_info_ref, delete_thread)
6643         (delete_thread_silent, first_thread_of_inferior)
6644         (any_thread_of_inferior, switch_to_thread)
6645         (enable_thread_stack_temporaries)
6646         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6647         (get_last_thread_stack_temporary)
6648         (value_in_thread_stack_temporaries, can_access_registers_thread):
6649         Spell out "struct thread_info" instead of just "thread_info".
6650         * inferior.h (notice_new_inferior): Likewise.
6651
6652 2018-06-25  Pedro Alves  <palves@redhat.com>
6653
6654         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6655         pass thread_info pointer to delete_thread.
6656         (windows_nat_target::detach): Pass inferior pointer to
6657         detach_inferior.
6658         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
6659         delete_thread.
6660         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
6661         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
6662         and pass a thread_info pointer to delete_thread.
6663         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
6664         pass thread_info pointer to delete_thread.
6665         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
6666         delete_thread_silent call.
6667         * procfs.c (procfs_target::detach): Pass inferior pointer to
6668         detach_inferior.
6669         (procfs_target::wait): Pass thread_info pointer to delete_thread.
6670         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
6671         delete_thread_silent call.
6672         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6673         pass thread_info pointer to delete_thread.
6674         (windows_nat_target::detach): Pass inferior pointer to
6675         delete_inferior.
6676
6677 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6678
6679         * regcache.c (readable_regcache::read_part): Fix asserts.
6680         (reg_buffer::raw_collect_part): New function.
6681         (regcache::write_part): Fix asserts.
6682         (reg_buffer::raw_supply_part): New function.
6683         (regcache::transfer_regset_register): New helper function.
6684         (regcache::transfer_regset): Call new functions.
6685         (regcache_supply_regset): Use gdb_byte*.
6686         (regcache::supply_regset): Likewise.
6687         (regcache_collect_regset): Likewise.
6688         (regcache::collect_regset): Likewise.
6689         * regcache.h (reg_buffer::raw_collect_part): New declaration.
6690         (reg_buffer::raw_supply_part): Likewise.
6691         (regcache::transfer_regset_register): Likewise.
6692         (regcache::transfer_regset): Use gdb_byte*.
6693
6694 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6695
6696         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
6697
6698 2018-06-21  Pedro Alves  <palves@redhat.com>
6699
6700         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
6701         instead of a ptid_t.  All callers adjusted.
6702         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
6703         adjusted.
6704         (print_ada_task_info, display_current_task_id, task_command_1):
6705         Adjust.
6706         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
6707         inferior_thread.
6708         (breakpoint_kind): Adjust.
6709         (remove_breakpoints_pid): Rename to ...
6710         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
6711         pointer.  All callers adjusted.
6712         (bpstat_clear_actions): Use inferior_thread.
6713         (get_bpstat_thread): New.
6714         (bpstat_do_actions): Use it.
6715         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
6716         to take a thread_info pointer.  All callers adjusted.
6717         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
6718         (breakpoint_re_set_thread): Use inferior_thread.
6719         * breakpoint.h (struct inferior): Forward declare.
6720         (bpstat_stop_status): Update.
6721         (remove_breakpoints_pid): Delete.
6722         (remove_breakpoints_inf): New.
6723         * bsd-uthread.c (bsd_uthread_target::wait)
6724         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
6725         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
6726         (maint_btrace_packet_history_cmd)
6727         (maint_btrace_clear_packet_history_cmd): Adjust.
6728         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
6729         inferior_thread.
6730         * cli/cli-interp.c: Include "inferior.h".
6731         * common/refcounted-object.h (struct
6732         refcounted_object_ref_policy): New.
6733         * compile/compile-object-load.c: Include gdbthread.h.
6734         (store_regs): Use inferior_thread.
6735         * corelow.c (core_target::close): Use current_inferior.
6736         (core_target_open): Adjust to use first_thread_of_inferior and use
6737         the current inferior.
6738         * ctf.c (ctf_target::close): Adjust to use current_inferior.
6739         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
6740         <thread>: ... this new field.  All references adjusted.
6741         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
6742         Take a thread_info pointer instead of a ptid_t.
6743         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
6744         (dummy_frame_discard, register_dummy_frame_dtor): Take a
6745         thread_info pointer instead of a ptid_t.
6746         * elfread.c: Include "inferior.h".
6747         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
6748         Use inferior_thread.
6749         * eval.c (evaluate_subexp): Likewise.
6750         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
6751         inferior_thread.
6752         * gdb_proc_service.h (struct thread_info): Forward declare.
6753         (struct ps_prochandle) <ptid>: Delete, replaced by ...
6754         <thread>: ... this new field.  All references adjusted.
6755         * gdbarch.h, gdbarch.c: Regenerate.
6756         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
6757         'thread' parameter.  All implementations and callers adjusted.
6758         * gdbthread.h (thread_info) <set_running>: New method.
6759         (delete_thread, delete_thread_silent): Take a thread_info pointer
6760         instead of a ptid.
6761         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
6762         (first_thread_of_process): Delete, replaced by ...
6763         (first_thread_of_inferior): ... this new function.  All callers
6764         adjusted.
6765         (any_live_thread_of_process): Delete, replaced by ...
6766         (any_live_thread_of_inferior): ... this new function.  All callers
6767         adjusted.
6768         (switch_to_thread, switch_to_no_thread): Declare.
6769         (is_executing): Delete.
6770         (enable_thread_stack_temporaries): Update comment.
6771         <enable_thread_stack_temporaries>: Take a thread_info pointer
6772         instead of a ptid_t.  Incref the thread.
6773         <~enable_thread_stack_temporaries>: Decref the thread.
6774         <m_ptid>: Delete
6775         <m_thr>: New.
6776         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6777         (get_last_thread_stack_temporary)
6778         (value_in_thread_stack_temporaries, can_access_registers_thread):
6779         Take a thread_info pointer instead of a ptid_t.  All callers
6780         adjusted.
6781         * infcall.c (get_call_return_value): Use inferior_thread.
6782         (run_inferior_call): Work with thread pointers instead of ptid_t.
6783         (call_function_by_hand_dummy): Work with thread pointers instead
6784         of ptid_t.  Use thread_info_ref.
6785         * infcmd.c (proceed_thread_callback): Access thread's state
6786         directly.
6787         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
6788         access thread's state directly.
6789         (continue_command): Use inferior_thread.
6790         (info_program_command): Use find_thread_ptid and access thread
6791         state directly.
6792         (proceed_after_attach_callback): Use thread state directly.
6793         (notice_new_inferior): Take a thread_info pointer instead of a
6794         ptid_t.  All callers adjusted.
6795         (exit_inferior): Take an inferior pointer instead of a pid.  All
6796         callers adjusted.
6797         (exit_inferior_silent): New.
6798         (detach_inferior): Delete.
6799         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
6800         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
6801         (detach_inferior_command, kill_inferior_command): Use
6802         find_inferior_id instead of valid_gdb_inferior_id and
6803         gdb_inferior_id_to_pid.
6804         (inferior_command): Use inferior and thread pointers.
6805         * inferior.h (struct thread_info): Forward declare.
6806         (notice_new_inferior): Take a thread_info pointer instead of a
6807         ptid_t.  All callers adjusted.
6808         (detach_inferior): Delete declaration.
6809         (exit_inferior, exit_inferior_silent): Take an inferior pointer
6810         instead of a pid.  All callers adjusted.
6811         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
6812         (valid_gdb_inferior_id): Delete.
6813         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
6814         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
6815         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
6816         ...
6817         <inf>: ... this new field.
6818         <step_ptid>: Delete, replaced by ...
6819         <step_thread>: ... this new field.
6820         (get_displaced_stepping_state): Take an inferior pointer instead
6821         of a pid.  All callers adjusted.
6822         (displaced_step_in_progress_any_inferior): Adjust.
6823         (displaced_step_in_progress_thread): Take a thread pointer instead
6824         of a ptid_t.  All callers adjusted.
6825         (displaced_step_in_progress, add_displaced_stepping_state): Take
6826         an inferior pointer instead of a pid.  All callers adjusted.
6827         (get_displaced_step_closure_by_addr): Adjust.
6828         (remove_displaced_stepping_state): Take an inferior pointer
6829         instead of a pid.  All callers adjusted.
6830         (displaced_step_prepare_throw, displaced_step_prepare)
6831         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
6832         All callers adjusted.
6833         (start_step_over): Adjust.
6834         (infrun_thread_ptid_changed): Remove bit updating ptids in the
6835         displaced step queue.
6836         (do_target_resume): Adjust.
6837         (fetch_inferior_event): Use inferior_thread.
6838         (context_switch, get_inferior_stop_soon): Take an
6839         execution_control_state pointer instead of a ptid_t.  All callers
6840         adjusted.
6841         (switch_to_thread_cleanup): Delete.
6842         (stop_all_threads): Use scoped_restore_current_thread.
6843         * inline-frame.c: Include "gdbthread.h".
6844         (inline_state) <inline_state>: Take a thread pointer instead of a
6845         ptid_t.  All callers adjusted.
6846         <ptid>: Delete, replaced by ...
6847         <thread>: ... this new field.
6848         (find_inline_frame_state): Take a thread pointer instead of a
6849         ptid_t.  All callers adjusted.
6850         (skip_inline_frames, step_into_inline_frame)
6851         (inline_skipped_frames, inline_skipped_symbol): Take a thread
6852         pointer instead of a ptid_t.  All callers adjusted.
6853         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
6854         (inline_skipped_frames, inline_skipped_symbol): Likewise.
6855         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
6856         pointers directly.
6857         * linux-nat.c (get_detach_signal): Likewise.
6858         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
6859         (thread_db_notice_clone): Adjust.
6860         (thread_db_find_new_threads_silently)
6861         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
6862         a thread pointer instead of a ptid_t.  All callers adjusted.
6863         * mi/mi-cmd-var.c: Include "inferior.h".
6864         (mi_cmd_var_update_iter): Update to use thread pointers.
6865         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
6866         inferior directly.
6867         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
6868         out to ...
6869         (mi_output_running): ... this new function.
6870         (mi_on_resume_1): Adjust to use it.
6871         (mi_user_selected_context_changed): Adjust to use inferior_thread.
6872         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
6873         directly.
6874         (interrupt_thread_callback): : Adjust to use thread and inferior
6875         pointers.
6876         * proc-service.c: Include "gdbthread.h".
6877         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
6878         * progspace-and-thread.c: Include "inferior.h".
6879         * progspace.c: Include "inferior.h".
6880         * python/py-exitedevent.c (create_exited_event_object): Adjust to
6881         hold a reference to an inferior_object.
6882         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
6883         inferior_thread.
6884         * python/py-inferior.c (struct inferior_object): Give the type a
6885         tag name instead of a typedef.
6886         (python_on_normal_stop): No need to check if the current thread is
6887         listed.
6888         (inferior_to_inferior_object): Change return type to
6889         inferior_object.  All callers adjusted.
6890         (find_thread_object): Delete, bits factored out to ...
6891         (thread_to_thread_object): ... this new function.
6892         * python/py-infthread.c (create_thread_object): Use
6893         inferior_to_inferior_object.
6894         (thpy_is_stopped): Use thread pointer directly.
6895         (gdbpy_selected_thread): Use inferior_thread.
6896         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
6897         field, replaced with ...
6898         <thread>: ... this new field.  All users adjusted.
6899         (btpy_insn_or_gap_new): Drop const.
6900         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
6901         callers adjusted.
6902         * python/py-record.c: Include "gdbthread.h".
6903         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6904         a ptid_t.  All callers adjusted.
6905         (gdbpy_current_recording): Use inferior_thread.
6906         * python/py-record.h (recpy_record_object) <ptid>: Delete
6907         field, replaced with ...
6908         <thread>: ... this new field.  All users adjusted.
6909         (recpy_element_object) <ptid>: Delete
6910         field, replaced with ...
6911         <thread>: ... this new field.  All users adjusted.
6912         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6913         a ptid_t.  All callers adjusted.
6914         * python/py-threadevent.c: Include "gdbthread.h".
6915         (get_event_thread): Use thread_to_thread_object.
6916         * python/python-internal.h (struct inferior_object): Forward
6917         declare.
6918         (find_thread_object, find_inferior_object): Delete declarations.
6919         (thread_to_thread_object, inferior_to_inferior_object): New
6920         declarations.
6921         * record-btrace.c: Include "inferior.h".
6922         (require_btrace_thread): Use inferior_thread.
6923         (record_btrace_frame_sniffer)
6924         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
6925         (get_thread_current_frame): Use scoped_restore_current_thread and
6926         switch_to_thread.
6927         (get_thread_current_frame): Use thread pointer directly.
6928         (record_btrace_replay_at_breakpoint): Use thread's inferior
6929         pointer directly.
6930         * record-full.c: Include "inferior.h".
6931         * regcache.c: Include "gdbthread.h".
6932         (get_thread_arch_regcache): Use the inferior's address space
6933         directly.
6934         (get_thread_regcache, registers_changed_thread): New.
6935         * regcache.h (get_thread_regcache(thread_info *thread)): New
6936         overload.
6937         (registers_changed_thread): New.
6938         (remote_target) <remote_detach_1>: Swap order of parameters.
6939         (remote_add_thread): <remote_add_thread>: Return the new thread.
6940         (get_remote_thread_info(ptid_t)): New overload.
6941         (remote_target::remote_notice_new_inferior): Use thread pointers
6942         directly.
6943         (remote_target::process_initial_stop_replies): Use
6944         thread_info::set_running.
6945         (remote_target::remote_detach_1, remote_target::detach)
6946         (extended_remote_target::detach): Adjust.
6947         * stack.c (frame_show_address): Use inferior_thread.
6948         * target-debug.h (target_debug_print_thread_info_pp): New.
6949         * target-delegates.c: Regenerate.
6950         * target.c (default_thread_address_space): Delete.
6951         (memory_xfer_partial_1): Use current_inferior.
6952         (target_detach): Use current_inferior.
6953         (target_thread_address_space): Delete.
6954         (generic_mourn_inferior): Use current_inferior.
6955         * target.h (struct target_ops) <thread_address_space>: Delete.
6956         (target_thread_address_space): Delete.
6957         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
6958         pointers directly.
6959         (delete_thread_1, delete_thread, delete_thread_silent): Take a
6960         thread pointer instead of a ptid_t.  Adjust all callers.
6961         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
6962         (first_thread_of_process): Delete, replaced by ...
6963         (first_thread_of_inferior): ... this new function.  All callers
6964         adjusted.
6965         (any_thread_of_process): Rename to ...
6966         (any_thread_of_inferior): ... this, and take an inferior pointer.
6967         (any_live_thread_of_process): Rename to ...
6968         (any_live_thread_of_inferior): ... this, and take an inferior
6969         pointer.
6970         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6971         (value_in_thread_stack_temporaries)
6972         (get_last_thread_stack_temporary): Take a thread pointer instead
6973         of a ptid_t.  Adjust all callers.
6974         (thread_info::set_running): New.
6975         (validate_registers_access): Use inferior_thread.
6976         (can_access_registers_ptid): Rename to ...
6977         (can_access_registers_thread): ... this, and take a thread
6978         pointer.
6979         (print_thread_info_1): Adjust to compare thread pointers instead
6980         of ptids.
6981         (switch_to_no_thread, switch_to_thread): Make extern.
6982         (scoped_restore_current_thread::~scoped_restore_current_thread):
6983         Use m_thread pointer directly.
6984         (scoped_restore_current_thread::scoped_restore_current_thread):
6985         Use inferior_thread.
6986         (thread_command): Use thread pointer directly.
6987         (thread_num_make_value_helper): Use inferior_thread.
6988         * top.c (execute_command): Use inferior_thread.
6989         * tui/tui-interp.c: Include "inferior.h".
6990         * varobj.c (varobj_create): Use inferior_thread.
6991         (value_of_root_1): Use find_thread_global_id instead of
6992         global_thread_id_to_ptid.
6993
6994 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
6995
6996         * regcache.c (readable_regcache::read_part): Avoid memcpy when
6997         possible.
6998         (regcache::write_part): Likewise.
6999         (readable_regcache::cooked_read_part): Update comment.
7000         (readable_regcache::cooked_write_part): Likewise.
7001         * regcache.h: (readable_regcache::read_part): Likewise.
7002         (regcache::write_part): Likewise.
7003
7004 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
7005             Dirk Schubert  <dirk.schubert@arm.com>
7006
7007         * aarch64-linux-nat.c (post_attach): New.
7008         (aarch64_linux_nat_target::post_attach): Override post_attach to
7009         record the number of hardware debug registers.
7010
7011 2018-06-20  Tom Tromey  <tom@tromey.com>
7012
7013         * python/py-param.c (add_setshow_generic): Make parameters const.
7014         (parmpy_init): Update.
7015
7016 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
7017
7018         * regcache.h (regcache_cooked_read_ftype): Rename to...
7019         (register_read_ftype): ...this, change type to function_view.
7020         (class reg_buffer) <save>: Remove src parameter.
7021         (readonly_detached_regcache) <readonly_detached_regcache>: Make
7022         parameter non-const in first overload.  Remove src parameter in
7023         second overload.
7024         * regcache.c (do_cooked_read): Remove.
7025         (readonly_detached_regcache::readonly_detached_regcache): Make
7026         parameter non-const, adjust call to other constructor.
7027         (reg_buffer::save): Remove src parameter.
7028         * frame.c (do_frame_register_read): Remove.
7029         (frame_save_as_regcache): Use lambda function.
7030         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
7031         parameter to ppu2spu_data *.
7032         (ppu2spu_sniffer): Use lambda function.
7033
7034 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
7035
7036         * record-full.c (record_full_target::insert_breakpoint): Remove
7037         "struct" keyword, add const.
7038
7039 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
7040
7041         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
7042         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
7043         * configure.ac: Remove AC_PREREQ, add missing quoting.
7044         * gnulib/configure.ac: Modernize usage of
7045         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
7046         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
7047         (AUTOMAKE_VERSION): Bump to 1.15.1.
7048         * configure: Re-generate.
7049         * config.in: Re-generate.
7050         * aclocal.m4: Re-generate.
7051         * gnulib/aclocal.m4: Re-generate.
7052         * gnulib/config.in: Re-generate.
7053         * gnulib/configure: Re-generate.
7054         * gnulib/import/Makefile.in: Re-generate.
7055
7056 2018-06-19  Pedro Alves  <palves@redhat.com>
7057
7058         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
7059         (lookup_minimal_symbol_by_pc_section): ... here with
7060         gdb_assert_not_reached added.
7061
7062 2018-06-19  Pedro Alves  <palves@redhat.com>
7063
7064         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
7065         parameter with a block parameter.  Compare location's block symbol
7066         with the frame's block instead of addresses.
7067         (skip_inline_frames): Pass the current block instead of the
7068         frame's address.  Break out as soon as we determine the frame
7069         should not be skipped.
7070
7071 2018-06-18  Tom Tromey  <tom@tromey.com>
7072
7073         * solib-aix.c (solib_aix_get_section_offsets): Return
7074         unique_xmalloc_ptr.
7075         (solib_aix_solib_create_inferior_hook): Update.
7076
7077 2018-06-18  Tom Tromey  <tom@tromey.com>
7078
7079         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
7080
7081 2018-06-18  Tom Tromey  <tom@tromey.com>
7082
7083         * solib-frv.c (frv_relocate_main_executable): Use
7084         unique_xmalloc_ptr.
7085         * solib-dsbt.c (dsbt_relocate_main_executable): Use
7086         unique_xmalloc_ptr.
7087
7088 2018-06-18  Tom Tromey  <tom@tromey.com>
7089
7090         * objfiles.h (inhibit_section_map_updates): Update.
7091         (resume_section_map_updates, resume_section_map_updates_cleanup):
7092         Remove.
7093         * solib-svr4.c (svr4_handle_solib_event): Update.
7094         * objfiles.c (inhibit_section_map_updates): Return
7095         scoped_restore_tmpl<int>.
7096         (resume_section_map_updates, resume_section_map_updates_cleanup):
7097         Remove.
7098
7099 2018-06-18  Tom Tromey  <tom@tromey.com>
7100
7101         * valprint.h (read_string): Update.
7102         * valprint.c (read_string): Change type of "buffer".
7103         (val_print_string): Update.
7104         * python/py-value.c (valpy_string): Update.
7105         * language.h (struct language_defn) <la_get_string>: Change
7106         type of "buffer".
7107         (default_get_string, c_get_string): Update.
7108         * language.c (default_get_string): Change type of "buffer".
7109         * guile/scm-value.c (gdbscm_value_to_string): Update.
7110         * c-lang.c (c_get_string): Change type of "buffer".
7111
7112 2018-06-18  Tom Tromey  <tom@tromey.com>
7113
7114         * ser-mingw.c (struct pipe_state_destroyer): New.
7115         (pipe_state_up): New typedef.
7116         (cleanup_pipe_state): Remove.
7117         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
7118
7119 2018-06-18  Tom Tromey  <tom@tromey.com>
7120
7121         * rust-lang.h (rust_yyerror): Don't declare.
7122         * rust-lang.c (rust_language_defn): Update.
7123         * rust-exp.y (yyerror): Now static.
7124         * parse.c (parse_exp_in_context_1): Update.
7125         * p-lang.h (p_yyerror): Don't declare.
7126         * p-lang.c (p_language_defn): Update.
7127         * p-exp.y (yyerror): Now static.
7128         * opencl-lang.c (opencl_language_defn): Update.
7129         * objc-lang.c (objc_language_defn): Update.
7130         * m2-lang.h (m2_yyerror): Don't declare.
7131         * m2-lang.c (m2_language_defn): Update.
7132         * m2-exp.y (yyerror): Now static.
7133         * language.h (struct language_defn) <la_error>: Remove.
7134         * language.c (unk_lang_error): Remove.
7135         (unknown_language_defn, auto_language_defn): Remove.
7136         * go-lang.h (go_yyerror): Don't declare.
7137         * go-lang.c (go_language_defn): Update.
7138         * go-exp.y (yyerror): Now static.
7139         * f-lang.h (f_yyerror): Don't declare.
7140         * f-lang.c (f_language_defn): Update.
7141         * f-exp.y (yyerror): Now static.
7142         * d-lang.h (d_yyerror): Don't declare.
7143         * d-lang.c (d_language_defn): Update.
7144         * d-exp.y (yyerror): Now static.
7145         * c-lang.h (c_yyerror): Don't declare.
7146         * c-lang.c (c_language_defn, cplus_language_defn)
7147         (asm_language_defn, minimal_language_defn): Update.
7148         * c-exp.y (yyerror): Now static.
7149         * ada-lang.h (ada_yyerror): Don't declare.
7150         * ada-lang.c (ada_language_defn): Update.
7151         * ada-exp.y (yyerror): Now static.
7152
7153 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
7154
7155         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
7156         (store_sveregs_to_thread): Likewise.
7157         (aarch64_linux_fetch_inferior_registers): Check for SVE.
7158         (aarch64_linux_store_inferior_registers): Likewise.
7159         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
7160         function.
7161         (aarch64_sve_regs_copy_to_regcache): Likewise.
7162         (aarch64_sve_regs_copy_from_regcache): Likewise.
7163         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
7164         declaration.
7165         (aarch64_sve_regs_copy_to_regcache): Likewise.
7166         (aarch64_sve_regs_copy_from_regcache): Likewise.
7167         (sve_context): Structure from Linux headers.
7168         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
7169         (SVE_SIG_ZREG_SIZE): Likewise.
7170         (SVE_SIG_PREG_SIZE): Likewise.
7171         (SVE_SIG_FFR_SIZE): Likewise.
7172         (SVE_SIG_REGS_OFFSET): Likewise.
7173         (SVE_SIG_ZREGS_OFFSET): Likewise.
7174         (SVE_SIG_ZREG_OFFSET): Likewise.
7175         (SVE_SIG_ZREGS_SIZE): Likewise.
7176         (SVE_SIG_PREGS_OFFSET): Likewise.
7177         (SVE_SIG_PREG_OFFSET): Likewise.
7178         (SVE_SIG_PREGS_SIZE): Likewise.
7179         (SVE_SIG_FFR_OFFSET): Likewise.
7180         (SVE_SIG_REGS_SIZE): Likewise.
7181         (SVE_SIG_CONTEXT_SIZE): Likewise.
7182         (SVE_PT_REGS_MASK): Likewise.
7183         (SVE_PT_REGS_FPSIMD): Likewise.
7184         (SVE_PT_REGS_SVE): Likewise.
7185         (SVE_PT_VL_INHERIT): Likewise.
7186         (SVE_PT_VL_ONEXEC): Likewise.
7187         (SVE_PT_REGS_OFFSET): Likewise.
7188         (SVE_PT_FPSIMD_OFFSET): Likewise.
7189         (SVE_PT_FPSIMD_SIZE): Likewise.
7190         (SVE_PT_SVE_ZREG_SIZE): Likewise.
7191         (SVE_PT_SVE_PREG_SIZE): Likewise.
7192         (SVE_PT_SVE_FFR_SIZE): Likewise.
7193         (SVE_PT_SVE_FPSR_SIZE): Likewise.
7194         (SVE_PT_SVE_FPCR_SIZE): Likewise.
7195         (__SVE_SIG_TO_PT): Likewise.
7196         (SVE_PT_SVE_OFFSET): Likewise.
7197         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
7198         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
7199         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
7200         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
7201         (SVE_PT_SVE_PREG_OFFSET): Likewise.
7202         (SVE_PT_SVE_PREGS_SIZE): Likewise.
7203         (SVE_PT_SVE_FFR_OFFSET): Likewise.
7204         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
7205         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
7206         (SVE_PT_SVE_SIZE): Likewise.
7207         (SVE_PT_SIZE): Likewise.
7208         (HAS_SVE_STATE): New define.
7209
7210 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
7211
7212         * nat/aarch64-sve-linux-sigcontext.h: New file.
7213         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
7214         new files.
7215         (SVE_VQ_MIN): Likewise.
7216         (SVE_VQ_MAX): Likewise.
7217         (SVE_VL_MIN): Likewise.
7218         (SVE_VL_MAX): Likewise.
7219         (SVE_NUM_ZREGS): Likewise.
7220         (SVE_NUM_PREGS): Likewise.
7221         (sve_vl_valid): Likewise.
7222         (struct user_sve_header): Likewise.
7223
7224 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
7225             Richard Bunt <Richard.Bunt@arm.com>
7226
7227         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
7228         was requested by GDB.
7229
7230 2018-06-15  Tom de Vries  <tdevries@suse.de>
7231
7232         * MAINTAINERS (Write After Approval): Add Tom de Vries.
7233
7234 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
7235
7236         * gnulib/update-gnulib.sh: Print expected versions of
7237         autoconf/aclocal.
7238
7239 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
7240
7241         * arch-utils.c (default_type_align): Use type_length_units.
7242         * gdbtypes.c (type_align): Use type_length_units.
7243
7244 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7245
7246         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
7247         of 'define' command.
7248
7249 2018-06-14  Tom de Vries  <tdevries@suse.de>
7250
7251         PR cli/22573
7252         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
7253         get_no_prettyformat_print_options.
7254
7255 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
7256
7257         * sparc-nat.h: Include target.h.
7258         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
7259         <fetch_registers>: Remove this argument in function call.
7260         <store_registers>: Remove this argument in function call, remove
7261         extra semicolon.
7262         <low_forget_process>: Call sparc64_forget_process instead of
7263         sparc_forget_process.
7264
7265 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
7266
7267         * procfs.c (_initialize_procfs): Use add_inf_child_target.
7268         (procfs_target::make_corefile_notes): Adjust to new
7269         target_read_alloc return type.
7270
7271 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7272             Stephen Roberts  <stephen.roberts@arm.com>
7273
7274         PR gdb/22882
7275         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
7276         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
7277         Move should_notify_stop local into more inner scope.
7278
7279 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7280             Stephen Roberts  <stephen.roberts@arm.com>
7281
7282         PR gdb/22882
7283         * infrun.c (resume_1): Add call to mark_async_event_handler.
7284
7285 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7286
7287         * infrun.c (do_target_wait): Change old version of $pc printed.
7288
7289 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
7290
7291         * dwarf2read.c (read_index_from_section): Rename to...
7292         (read_gdb_index_from_section): ... this, update all callers.
7293         (dwarf2_read_index): Rename to...
7294         (dwarf2_read_gdb_index): ... this, update all callers.
7295
7296 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
7297
7298         * gdb/hppa-linux-nat.c
7299         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
7300         hppa_linux_nat_target::fetch_registers.
7301
7302 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7303
7304         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
7305         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
7306         (AARCH64_DWARF_SVE_FFR): Likewise.
7307         (AARCH64_DWARF_SVE_P0): Likewise.
7308         (AARCH64_DWARF_SVE_Z0): Likewise.
7309
7310 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7311
7312         * common/common-regcache.h (raw_compare): New function.
7313         * regcache.c (regcache::raw_compare): Likewise.
7314         * regcache.h (regcache::raw_compare): New declaration.
7315
7316 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7317
7318         * common/common-regcache.h (reg_buffer_common): New structure.
7319         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
7320         (reg_buffer::raw_supply): Likewise.
7321         (reg_buffer::raw_supply_integer): Likewise.
7322         (reg_buffer::raw_supply_zeroed): Likewise.
7323         (reg_buffer::raw_collect): Likewise.
7324         (reg_buffer::raw_collect_integer): Likewise.
7325         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
7326         (reg_buffer::raw_supply): Likewise.
7327         (reg_buffer::raw_supply_integer): Likewise.
7328         (reg_buffer::raw_supply_zeroed): Likewise.
7329         (reg_buffer::raw_collect): Likewise.
7330         (reg_buffer::raw_collect_integer): Likewise.
7331
7332 2018-06-10  Tom Tromey  <tom@tromey.com>
7333
7334         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
7335         (class remote_state) <stop_reply_queue>: Now std::vector.
7336         (remote_state::~remote_state)
7337         (remote_target::stop_reply_queue_length): Update.
7338         (struct queue_iter_param, remove_child_of_pending_fork)
7339         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
7340         (check_pending_event_prevents_wildcard_vcont_callback)
7341         (remove_stop_reply_for_inferior)
7342         (remove_stop_reply_of_remote_state)
7343         (remote_notif_remove_once_on_match)
7344         (stop_reply_match_ptid_and_ws)
7345         (remote_kill_child_of_pending_fork): Remove.
7346         (remote_target::remove_new_fork_children)
7347         (remote_target::check_pending_events_prevent_wildcard_vcont)
7348         (remote_target::discard_pending_stop_replies)
7349         (remote_target::discard_pending_stop_replies_in_queue)
7350         (remote_target::remote_notif_remove_queued_reply)
7351         (remote_target::queued_stop_reply)
7352         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
7353         (remote_target::wait, remote_target::kill_new_fork_children)
7354         (remote_target::async): Update.
7355
7356 2018-06-10  Tom Tromey  <tom@tromey.com>
7357
7358         * record-full.c (record_full_arch_list_cleanups): Remove.
7359         (record_full_message): Use try/catch.
7360         (record_full_wait_cleanups): Remove.
7361         (record_full_wait_1): Use try/catch.
7362         (record_full_restore): Likewise.
7363
7364 2018-06-10  Tom Tromey  <tom@tromey.com>
7365
7366         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
7367         declare VEC.  Add constructor.
7368         <in_target_beneath>: Now bool.
7369         (record_full_breakpoints): Now a std::vector, static.
7370         (record_full_sync_record_breakpoints)
7371         (record_full_init_record_breakpoints)
7372         (record_full_target::insert_breakpoint)
7373         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
7374
7375 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
7376
7377         * dwarf2read.c (process_cu_includes): Remove struct keyword.
7378         * serial.c (serial_interface_lookup): Remove struct keyword.
7379
7380 2018-06-10  Tom Tromey  <tom@tromey.com>
7381
7382         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
7383         method.
7384         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
7385         a method.
7386         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
7387         method.
7388         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
7389         "beneath" as a method.
7390         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
7391         Use "beneath" as a method.
7392
7393 2018-06-10  Tom Tromey  <tom@tromey.com>
7394
7395         * tracefile.c (struct trace_file_writer_deleter): New.
7396         <operator()>: Rename from trace_file_writer_xfree.
7397         (trace_file_writer_up): New typedef.
7398         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
7399
7400 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
7401
7402         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
7403         <m_registers, m_register_status>: Change type to
7404         std::unique_ptr.
7405         * regcache.c (reg_buffer::reg_buffer): Use new instead of
7406         XCNEWVEC.
7407
7408 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
7409
7410         * common/common-regcache.h (enum register_status): Add
7411         underlying type "signed char".
7412         * regcache.h (reg_buffer) <m_register_status>: Change type to
7413         register_status *.
7414         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
7415         register_status instead of signed char.
7416         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
7417         (reg_buffer::get_register_status): Remove cast.
7418         (readable_regcache::raw_read): Remove cast.
7419         (readable_regcache::cooked_read): Remove cast.
7420
7421 2018-06-09  Tom Tromey  <tom@tromey.com>
7422
7423         * source.c (reverse_search_command, forward_search_command): Use
7424         scoped_fd.
7425
7426 2018-06-09  Tom Tromey  <tom@tromey.com>
7427
7428         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
7429         (serial_ops_list): Now static, std::vector.
7430         (serial_interface_lookup, serial_add_interface): Update.
7431
7432 2018-06-09  Tom Tromey  <tom@tromey.com>
7433
7434         * dwarf2read.c (process_cu_includes): Update.
7435         (process_full_comp_unit): Update.
7436         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
7437         std::vector.
7438
7439 2018-06-08  Paul Koning  <paul_koning@dell.com>
7440
7441         PR gdb/23252
7442
7443         * python/python.c (do_start_initialization):
7444         Avoid call to internal Python API.
7445         (init__gdb_module): New function.
7446
7447 2018-06-08  Gary Benson <gbenson@redhat.com>
7448
7449         * linux-thread-db.c (valprint.h): New include.
7450         (struct check_thread_db_info): New structure.
7451         (check_thread_db_on_load, tdb_testinfo): New static globals.
7452         (check_thread_db, check_thread_db_callback): New functions.
7453         (try_thread_db_load_1): Run integrity checks if requested.
7454         (maintenance_check_libthread_db): New function.
7455         (_initialize_thread_db): Register "maint check libthread-db"
7456         and "maint set/show check-libthread-db".
7457         * NEWS: Mention the above new commands.
7458
7459 2018-06-08  Tom Tromey  <tom@tromey.com>
7460
7461         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
7462         now a method.
7463
7464 2018-06-08  Tom Tromey  <tom@tromey.com>
7465
7466         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
7467
7468 2018-06-08  Tom Tromey  <tom@tromey.com>
7469
7470         * common/btrace-common.h (struct btrace_data): Add constructor,
7471         destructor, move assignment operator.
7472         <empty, clear, fini>: New methods.
7473         <format>: Initialize.
7474         (btrace_data_init, btrace_data_fini, btrace_data_clear)
7475         (btrace_data_empty): Don't declare.
7476         * common/btrace-common.c (btrace_data_init): Remove.
7477         (btrace_data::fini): Rename from btrace_data_fini.
7478         (btrace_data::empty): Rename from btrace_data_empty.
7479         (btrace_data::clear): Rename from btrace_data_clear.  Return
7480         bool.
7481         * btrace.h (make_cleanup_btrace_data): Don't declare.
7482         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
7483         (parse_xml_btrace): Update.
7484         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
7485         (maint_btrace_clear_packet_history_cmd): Update.
7486
7487 2018-06-07  Pedro Alves  <palves@redhat.com>
7488
7489         * target.h (target_ops) <beneath>: Now a method.  All references
7490         updated.
7491         (class target_stack): New.
7492         * target.c (g_target_stack): New.
7493         (g_current_top_target): Delete.
7494         (current_top_target): Get the top target out of g_target_stack.
7495         (target_stack::push, target_stack::unpush): New.
7496         (push_target, unpush_target): Reimplement.
7497         (target_is_pushed): Reimplement in terms of g_target_stack.
7498         (target_ops::beneath, target_stack::find_beneath): New.
7499
7500 2018-06-07  Pedro Alves  <palves@redhat.com>
7501
7502         * target.h (find_target_beneath): Delete declaration.
7503         * target.c (find_target_beneath): Delete definition.
7504         * aix-thread.c: All callers of find_target_beneath adjusted to
7505         call target_ops::beneath instead.
7506         * bsd-uthread.c: Likewise.
7507         * linux-thread-db.c: Likewise.
7508         * ravenscar-thread.c: Likewise.
7509         * sol-thread.c: Likewise.
7510         * spu-multiarch.c: Likewise.
7511
7512 2018-06-07  Pedro Alves  <palves@redhat.com>
7513
7514         * target.h (target_ops) <beneath>: Now a method.  All references
7515         updated.
7516         (target_ops) <m_beneath>: New.
7517         * target.c (target_ops::beneath): New.
7518         * corelow.c: Adjust all references to target_ops::beneath.
7519         * linux-thread-db.c: Likewise.
7520         * make-target-delegates: Likewise.
7521         * record-btrace.c: Likewise.
7522         * record-full.c: Likewise.
7523         * remote.c: Likewise.
7524         * target.c: Likewise.
7525         * target-delegates.c: Regenerate.
7526
7527 2018-06-07  Pedro Alves  <palves@redhat.com>
7528
7529         * target.h (target_stack): Delete.
7530         (current_top_target): Declare function.
7531         * target.c (target_stack): Delete.
7532         (g_current_top_target): New.
7533         (current_top_target): New function.
7534         * auxv.c: Use current_top_target instead of target_stack
7535         throughout.
7536         * avr-tdep.c: Likewise.
7537         * breakpoint.c: Likewise.
7538         * corefile.c: Likewise.
7539         * elfread.c: Likewise.
7540         * eval.c: Likewise.
7541         * exceptions.c: Likewise.
7542         * frame.c: Likewise.
7543         * gdbarch-selftests.c: Likewise.
7544         * gnu-v3-abi.c: Likewise.
7545         * ia64-tdep.c: Likewise.
7546         * ia64-vms-tdep.c: Likewise.
7547         * infcall.c: Likewise.
7548         * infcmd.c: Likewise.
7549         * infrun.c: Likewise.
7550         * linespec.c: Likewise.
7551         * linux-tdep.c: Likewise.
7552         * minsyms.c: Likewise.
7553         * ppc-linux-nat.c: Likewise.
7554         * ppc-linux-tdep.c: Likewise.
7555         * procfs.c: Likewise.
7556         * regcache.c: Likewise.
7557         * remote.c: Likewise.
7558         * rs6000-tdep.c: Likewise.
7559         * s390-linux-nat.c: Likewise.
7560         * s390-tdep.c: Likewise.
7561         * solib-aix.c: Likewise.
7562         * solib-darwin.c: Likewise.
7563         * solib-dsbt.c: Likewise.
7564         * solib-spu.c: Likewise.
7565         * solib-svr4.c: Likewise.
7566         * solib-target.c: Likewise.
7567         * sparc-tdep.c: Likewise.
7568         * sparc64-tdep.c: Likewise.
7569         * spu-tdep.c: Likewise.
7570         * symfile.c: Likewise.
7571         * symtab.c: Likewise.
7572         * target-descriptions.c: Likewise.
7573         * target-memory.c: Likewise.
7574         * target.c: Likewise.
7575         * target.h: Likewise.
7576         * tracefile-tfile.c: Likewise.
7577         * tracepoint.c: Likewise.
7578         * valops.c: Likewise.
7579         * valprint.c: Likewise.
7580         * value.c: Likewise.
7581         * windows-tdep.c: Likewise.
7582         * mi/mi-main.c: Likewise.
7583
7584 2018-06-07  Tom Tromey  <tom@tromey.com>
7585
7586         * valprint.h (build_address_symbolic): Declare.
7587         * printcmd.c (print_address_symbolic): Update.
7588         (build_address_symbolic): Change "name" and "filename" to
7589         std::string.
7590         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
7591         Update.
7592         * defs.h (build_address_symbolic): Remove declaration.
7593
7594 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
7595
7596         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
7597         (aarch64_vnv_type): Add function.
7598         (aarch64_pseudo_register_name): Add V regs for SVE.
7599         (aarch64_pseudo_register_type): Likewise.
7600         (aarch64_pseudo_register_reggroup_p): Likewise.
7601         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
7602         (aarch64_pseudo_read_value): Add V regs for SVE.
7603         (aarch64_pseudo_write_2): Use V0 offset for SVE
7604         (aarch64_pseudo_write): Add V regs for SVE.
7605         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
7606
7607 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
7608
7609         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
7610         (sve_vl_from_vq): Likewise.
7611
7612 2018-06-05  Tom Tromey  <tom@tromey.com>
7613
7614         * cli/cli-cmds.c (show_version): Update.
7615         * top.c (print_gdb_version): Add "interactive" parameter.
7616         Update.
7617         * main.c (captured_main_1): Update.
7618         * top.h (print_gdb_version): Add "interactive" parameter and a
7619         comment.
7620
7621 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
7622
7623         * common/enum-flags.h: Add trailing semicolon to example in
7624         comment.
7625
7626 2018-06-05  Tom Tromey  <tom@tromey.com>
7627
7628         PR cli/12326:
7629         * NEWS: Add entry about pager.
7630         * utils.c (pagination_disabled_for_command): New global.
7631         (prompt_for_continue): Allow "c" response to prompt.
7632         (reinitialize_more_filter): Clear
7633         pagination_disabled_for_command.
7634         (fputs_maybe_filtered): Check pagination_disabled_for_command.
7635
7636 2018-06-04  Tom Tromey  <tom@tromey.com>
7637
7638         * ada-lang.h (ada_lookup_symbol_list): Update.
7639         * ada-lang.c (resolve_subexp): Update.
7640         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
7641         parameter.
7642         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
7643         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
7644         results parameter to std::vector.
7645         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
7646         Update.
7647         * ada-exp.y (block_lookup): Update.
7648         (select_possible_type_sym): Change type of syms.  Remove nsyms
7649         parameter.
7650         (write_var_or_type, write_name_assoc): Update.
7651
7652 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
7653
7654         * windows-nat.c (windows_nat_target::xfer_partial): Return
7655         TARGET_XFER_E_IO if we need to delegate to the target beneath
7656         but BENEATH is NULL.
7657
7658 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
7659
7660         * Makefile.in (config.status): Add configure.nat as a
7661         dependency.
7662
7663 2018-06-04  Tom Tromey  <tom@tromey.com>
7664
7665         * cp-name-parser.y (cpname_state): Add method declarations.
7666         (HANDLE_QUAL): Update.
7667         (cpname_state::d_grab, cpname_state::fill_comp)
7668         (cpname_state::make_operator, cpname_state::make_dtor)
7669         (cpname_state::make_builtin_type, cpname_state::make_name)
7670         (cpname_state::d_qualify, cpname_state::d_int_type)
7671         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
7672         (%union): Move earlier.
7673
7674 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7675
7676         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
7677
7678 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7679
7680         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
7681         (aarch64_pseudo_write_1): Likewise.
7682         (aarch64_pseudo_read_value): Use helper.
7683         (aarch64_pseudo_write): Likewise.
7684
7685 2018-06-04  Pedro Alves  <palves@redhat.com>
7686
7687         * darwin-nat.c (darwin_ops): Delete.
7688         (darwin_attach_pid): Use get_native_target.
7689
7690 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7691
7692         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
7693         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
7694
7695 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7696
7697         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
7698         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
7699         (aarch64_gdbarch_init): Check for SVE.
7700         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
7701
7702 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7703
7704         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
7705         * aarch64-tdep.h (aarch64_read_description): Likewise.
7706         * arch/aarch64.c (aarch64_create_target_description): Likewise.
7707         * arch/aarch64.h (aarch64_create_target_description): Likewise.
7708         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
7709         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
7710         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
7711
7712 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
7713
7714         * value.c (value_fetch_lazy_bitfield): New.
7715         (value_fetch_lazy_memory): New.
7716         (value_fetch_lazy_register): New.
7717         (value_fetch_lazy): Factor out to smaller functions.
7718
7719 2018-06-01  Tom Tromey  <tom@tromey.com>
7720
7721         * cp-name-parser.y (backslashable, represented): Now const.
7722
7723 2018-06-01  Tom Tromey  <tom@tromey.com>
7724
7725         * cp-name-parser.y: Include parser-defs.h.
7726         (parser_fprintf): Remove declaration.
7727
7728 2018-06-01  Tom Tromey  <tom@tromey.com>
7729
7730         * cp-name-parser.y: Use %pure-parser, %lex-param, and
7731         %parse-param.
7732         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
7733         (global_result): Remove globals.
7734         (struct cpname_state): New.
7735         (yyparse): Don't declare.
7736         (yylex, yyerror): Move declarations after %union.
7737         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
7738         (make_name): Add state parameter.
7739         Update all callers.
7740         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
7741         parameter.
7742         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
7743         Update.
7744         (yylex): Add lvalp, state parameters.
7745         (yyerror): Add state parameter.
7746         (cp_demangled_name_to_comp): Update.
7747
7748 2018-06-01  Tom Tromey  <tom@tromey.com>
7749
7750         * cp-name-parser.y (parser_fprintf): Declare.
7751         (GDB_YY_REMAP_PREFIX): Define.
7752         Include yy-remap.h.  Don't redefine yy* identifiers.
7753
7754 2018-06-01  Tom Tromey  <tom@tromey.com>
7755
7756         * python/py-type.c (typy_legacy_template_argument): Update.
7757         * cp-support.h (cp_demangled_name_to_comp): Update.
7758         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
7759         parameter to be a "std::string *".
7760         (main): Update.
7761
7762 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
7763
7764         * ada-lex.l: Include "diagnostics.h" instead of
7765         "common/diagnostics.h".
7766         * unittests/environ-selftests.c: Likewise.
7767         * common/diagnostics.h: Moved to ../include.
7768
7769 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
7770
7771         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
7772         to language_mode_manual while calling breakpoint_re_set_one.
7773
7774 2018-06-01  Tom Tromey  <tom@tromey.com>
7775
7776         * valops.c (value_cast_structs, destructor_name_p): Update.
7777         * symtab.c (gdb_mangle_name): Update.
7778         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
7779         Update.
7780         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
7781         (pascal_object_print_value_fields, pascal_object_print_value):
7782         Update.
7783         * p-typeprint.c (pascal_type_print_derivation_info): Update.
7784         * linespec.c (find_methods): Update.
7785         * gdbtypes.h (type_name_no_tag): Remove.
7786         (type_name_or_error): Rename from type_name_no_tag_or_error.
7787         * gdbtypes.c (type_name_no_tag): Remove.
7788         (type_name_or_error): Rename from type_name_no_tag_or_error.
7789         (lookup_struct_elt_type, check_typedef): Update.
7790         * expprint.c (print_subexp_standard): Update.
7791         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
7792         * d-namespace.c (d_lookup_nested_symbol): Update.
7793         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
7794         (cp_print_class_member): Update.
7795         * cp-namespace.c (cp_lookup_nested_symbol): Update.
7796         * completer.c (add_struct_fields): Update.
7797         * c-typeprint.c (cp_type_print_derivation_info)
7798         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
7799         Update.
7800         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
7801         (ada_prefer_type, ada_is_exception_sym): Update.
7802
7803 2018-06-01  Tom Tromey  <tom@tromey.com>
7804
7805         * valops.c (enum_constant_from_type, value_namespace_elt)
7806         (value_maybe_namespace_elt): Update.
7807         * valarith.c (find_size_for_pointer_math): Update.
7808         * target-descriptions.c (make_gdb_type): Update.
7809         * symmisc.c (print_symbol): Update.
7810         * stabsread.c (define_symbol, read_type)
7811         (complain_about_struct_wipeout, add_undefined_type)
7812         (cleanup_undefined_types_1): Update.
7813         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
7814         (rust_range_type_p, val_print_struct, rust_print_struct_def)
7815         (rust_internal_print_type, rust_composite_type)
7816         (rust_evaluate_funcall, rust_evaluate_subexp)
7817         (rust_inclusive_range_type_p): Update.
7818         * python/py-type.c (typy_get_tag): Update.
7819         * p-typeprint.c (pascal_type_print_base): Update.
7820         * mdebugread.c (parse_symbol, parse_type): Update.
7821         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
7822         Update.
7823         * guile/scm-type.c (gdbscm_type_tag): Update.
7824         * go-lang.c (sixg_string_p): Update.
7825         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
7826         Update.
7827         * gdbtypes.h (struct main_type) <tag_name>: Remove.
7828         (TYPE_TAG_NAME): Remove.
7829         * gdbtypes.c (type_name_no_tag): Simplify.
7830         (check_typedef, check_types_equal, recursive_dump_type)
7831         (copy_type_recursive, arch_composite_type): Update.
7832         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
7833         in summary mode when needed.
7834         * eval.c (evaluate_funcall): Update.
7835         * dwarf2read.c (fixup_go_packaging, read_structure_type)
7836         (process_structure_scope, read_enumeration_type)
7837         (read_namespace_type, read_module_type, determine_prefix): Update.
7838         * cp-support.c (inspect_type): Update.
7839         * coffread.c (process_coff_symbol, decode_base_type): Update.
7840         * c-varobj.c (c_is_path_expr_parent): Update.
7841         * c-typeprint.c (c_type_print_base_struct_union): Update.
7842         (c_type_print_base_1): Update.  Print struct/class/union/enum in
7843         summary when using C language.
7844         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
7845         (gen_maybe_namespace_elt): Update.
7846         * ada-lang.c (ada_type_name): Simplify.
7847         (empty_record, ada_template_to_fixed_record_type_1)
7848         (template_to_static_fixed_type)
7849         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
7850
7851 2018-06-01  Tom Tromey  <tom@tromey.com>
7852
7853         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
7854         c_print_type.
7855         * c-typeprint.c (c_print_type_1): Add "language" parameter.
7856         (c_print_type): Update.
7857         (c_print_type): New overload.
7858         (c_type_print_varspec_prefix, c_type_print_args)
7859         (c_type_print_varspec_suffix, c_print_type_no_offsets)
7860         (c_type_print_base_struct_union, c_type_print_base_1)
7861         (cp_type_print_method_args): Add "language" parameter.
7862         (c_type_print_base): Update.
7863         * c-lang.h (c_print_type): Add new overload.
7864
7865 2018-06-01  Tom Tromey  <tom@tromey.com>
7866
7867         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
7868         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
7869
7870 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
7871
7872         * aarch64-tdep.c (aarch64_sve_register_names): New const
7873         var.
7874         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
7875         (AARCH64_SVE_Z_REGS_NUM): New define.
7876         (AARCH64_SVE_P_REGS_NUM): Likewise.
7877         (AARCH64_SVE_NUM_REGS): Likewise.
7878
7879 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
7880
7881         * nat/linux-ptrace.h [__alpha__]
7882         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
7883         definitions.
7884
7885 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
7886
7887         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
7888         the endianness selected.
7889         * NEWS: Document `set endian auto' mode operation update.
7890
7891 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7892
7893         * Makefile.in: Add new header.
7894         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
7895         (sve_vl_from_vg): Likewise.
7896         (sve_vq_from_vl): Likewise.
7897         (sve_vl_from_vq): Likewise.
7898         (sve_vq_from_vg): Likewise.
7899         (sve_vg_from_vq): Likewise.
7900         * configure.nat: Add new c file.
7901         * nat/aarch64-sve-linux-ptrace.c: New file.
7902         * nat/aarch64-sve-linux-ptrace.h: New file.
7903
7904 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7905
7906         * aarch64-linux-nat.c (aarch64_linux_read_description):
7907         Add parmeter zero.
7908         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
7909         Likewise.
7910         * aarch64-tdep.c (tdesc_aarch64_list): Add.
7911         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
7912         (aarch64_gdbarch_init): Add parmeter zero.
7913         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
7914         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
7915         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
7916         parmeter.
7917         * doc/gdb.texinfo: Describe SVE feature
7918         * features/aarch64-sve.c: New file.
7919
7920 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
7921
7922         PR gdb/23210
7923         * gdbarch.sh (significant_addr_bit): Default to zero when
7924         not set by target architecture.
7925         * gdbarch.c: Re-generated.
7926         * utils.c (address_significant): Update.
7927
7928 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
7929
7930         * stack.c (func_command): Remove trailing newline in call to error.
7931
7932 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7933
7934         * regcache.h (regcache_raw_collect): Remove, update callers to
7935         use regcache::raw_collect.
7936         * regcache.c (regcache_raw_collect): Remove.
7937
7938 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7939
7940         * regcache.h (regcache_raw_supply): Remove, update callers to
7941         use detached_regcache::raw_supply.
7942         * regcache.c (regcache_raw_supply): Remove.
7943
7944 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7945
7946         * regcache.h (regcache_cooked_write_part): Remove, update
7947         callers to use regcache::cooked_write_part.
7948         * regcache.c (regcache_cooked_write_part): Remove.
7949
7950 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7951
7952         * regcache.h (regcache_cooked_read_part): Remove, update callers
7953         to use readable_regcache::cooked_read_part.
7954         * regcache.c (regcache_cooked_read_part): Remove.
7955
7956 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7957
7958         * regcache.h (regcache_cooked_read_value): Remove, update
7959         callers to use readable_regcache::cooked_read_value.
7960         * regcache.c (regcache_cooked_read_value): Remove.
7961
7962 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7963
7964         * regcache.h (regcache_cooked_write): Remove, update callers to
7965         use regcache::cooked_write.
7966         * regcache.c (regcache_cooked_write): Remove.
7967
7968 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7969
7970         * regcache.h (regcache_invalidate): Remove, update callers to
7971         use detached_regcache::invalidate instead.
7972         * regcache.c (regcache_invalidate): Remove.
7973
7974 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7975
7976         * regcache.h (regcache_raw_write_part): Remove, update callers
7977         to use regcache::raw_write_part instead.
7978         * regcache.c (regcache_raw_write_part): Remove.
7979
7980 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7981
7982         * regcache.h (regcache_raw_read_part): Remove, update callers to
7983         use readable_regcache::raw_read_part instead.
7984         * regcache.c (regcache_raw_read_part): Remove.
7985
7986 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7987
7988         * regcache.h (regcache_cooked_read): Remove, update callers to
7989         use readable_regcache::cooked_read instead.
7990         * regcache.c (regcache_cooked_read): Remove.
7991
7992 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7993
7994         * regcache.h (regcache_raw_write): Remove, update callers to use
7995         regcache::raw_write instead.
7996         * regcache.c (regcache_raw_write): Remove.
7997
7998 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7999
8000         * regcache.h (regcache_raw_read): Remove, update callers to use
8001         readable_regcache::raw_read instead.
8002         * regcache.c (regcache_raw_read): Remove.
8003
8004 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8005
8006         * regcache.h (regcache_raw_update): Remove, update callers to
8007         use readable_regcache::raw_update instead.
8008         * regcache.c (regcache_raw_update): Remove.
8009
8010 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8011
8012         * regcache.h (regcache_register_status): Remove, update callers
8013         to use reg_buffer::get_register_status directly instead.
8014         * regcache.c (regcache_register_status): Remove.
8015
8016 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8017
8018         * regcache.h (regcache_get_ptid): Remove, update all callers to
8019         call regcache::ptid instead.
8020         * regcache.c (regcache_get_ptid): Remove.
8021
8022 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8023
8024         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
8025
8026 2018-05-30  Pedro Alves  <palves@redhat.com>
8027
8028         * common/common-exceptions.h (exception_rethrow): Use
8029         ATTRIBUTE_NORETURN.
8030
8031 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
8032
8033         * breakpoint.c (print_solib_event, check_status_catch_solib):
8034         Remove struct keyword in range-based for loops.
8035         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
8036         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
8037         Likewise.
8038         * linespec.c (find_superclass_methods, search_minsyms_for_name):
8039         Likewise.
8040         * symfile.c (addr_info_make_relative): Likewise.
8041         * thread.c (value_in_thread_stack_temporaries): Likewise.
8042
8043 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
8044
8045         PR gdb/16841
8046         * valops.c (value_struct_elt_for_reference): Call check_typedef on
8047         aggregate type to get its real type before accessing it.
8048
8049 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
8050
8051         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
8052         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
8053         * coff-pe-read.c (add_pe_forwarded_sym): Replace
8054         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
8055         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
8056         * jit.c (jit_breakpoint_re_set_internal): Likewise.
8057         * printcmd.c (info_address_command): Likewise.
8058
8059 2018-05-29  Tom Tromey  <tom@tromey.com>
8060
8061         * windows-nat.c (handle_exception): Update fall-through comment.
8062
8063 2018-05-29  Tom Tromey  <tom@tromey.com>
8064
8065         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
8066         (struct program_space) <added_solibs>: Now a std::vector.
8067         * breakpoint.c (print_solib_event): Update.
8068         (check_status_catch_solib): Update.
8069         * progspace.c (clear_program_space_solib_cache): Update.
8070         * solib.c (update_solib_list): Update.
8071
8072 2018-05-29  Tom Tromey  <tom@tromey.com>
8073
8074         * python/py-type.c (typy_richcompare): Update.
8075         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
8076         * gdbtypes.h (types_deeply_equal): Return bool.
8077         (types_equal): Likewise.
8078         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
8079         declare VEC.
8080         (check_types_equal): Change worklist to std::vector.  Return
8081         bool.
8082         (struct type_equality_entry): Add constructor.
8083         (compare_maybe_null_strings): Return bool.
8084         (check_types_worklist): Return bool.  Change worklist to
8085         std::vector.
8086         (types_deeply_equal): Use std::vector.
8087         (types_equal): Return bool.
8088         (compare_maybe_null_strings): Simplify.
8089
8090 2018-05-29  Tom Tromey  <tom@tromey.com>
8091
8092         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
8093
8094 2018-05-29  Tom Tromey  <tom@tromey.com>
8095
8096         * objc-lang.h: Don't include cp-support.h.
8097         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
8098         declare VEC.
8099
8100 2018-05-27  Tom Tromey  <tom@tromey.com>
8101
8102         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
8103
8104 2018-05-25  Tom Tromey  <tom@tromey.com>
8105
8106         * value.c (value::location): Initialize.
8107
8108 2018-05-25  Tom Tromey  <tom@tromey.com>
8109
8110         * dbxread.c (init_bincl_list): Remove.
8111         (bincl_list): Now a std::vector.
8112         (bincls_allocated, next_bincl): Remove.
8113         (free_bincl_list, do_free_bincl_list_cleanup)
8114         (make_cleanup_free_bincl_list): Remove.
8115         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
8116         unique_xmalloc_ptr.
8117         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
8118         (struct header_file_location): Add constructor.
8119         (add_bincl_to_list): Remove.
8120
8121 2018-05-25  Tom Tromey  <tom@tromey.com>
8122
8123         * tui/tui.c (tui_enable): Update.
8124         * mi/mi-interp.c (mi_interp::init): Update.
8125         * interps.h (class interp) <name>: New method.
8126         <m_name>: Rename from name.
8127         (~scoped_restore_interp): Update.
8128         * interps.c (interp::interp): Update.
8129         (interp_add, interp_set, interp_lookup_existing)
8130         (current_interp_named_p): Update.
8131
8132 2018-05-25  Tom Tromey  <tom@tromey.com>
8133
8134         * interps.c (interp_name): Remove.
8135         * mi/mi-interp.c (mi_interp::init): Update.
8136         * interps.h (interp_name): Remove.
8137         (~scoped_restore_interp): Update.
8138         * tui/tui.c (tui_enable): Update.
8139
8140 2018-05-25  Tom Tromey  <tom@tromey.com>
8141
8142         * utils.c (fputs_maybe_filtered): Update.
8143         * linespec.c (decode_line_full): Update.
8144         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
8145         (mi_print_breakpoint_for_event, mi_solib_loaded)
8146         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
8147         (mi_user_selected_context_changed): Update.
8148         * mi/mi-main.c (mi_execute_command): Update.
8149         * cli/cli-script.c (execute_control_command): Update.
8150         * python/python.c (execute_gdb_command): Update.
8151         * solib.c (info_sharedlibrary_command): Update.
8152         * interps.c (interp_ui_out): Remove.
8153         * interps.h (interp_ui_out): Remove.
8154
8155 2018-05-25  Tom Tromey  <tom@tromey.com>
8156
8157         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
8158         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
8159         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
8160
8161 2018-05-25  Tom Tromey  <tom@tromey.com>
8162
8163         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
8164         * interps.c (interp_exec): Use scoped_restore.
8165
8166 2018-05-25  Tom Tromey  <tom@tromey.com>
8167
8168         * remote.c (remote_target::remote_file_get): Use
8169         gdb::byte_vector.
8170         (remote_target::remote_file_put): Likewise.
8171
8172 2018-05-25  Tom Tromey  <tom@tromey.com>
8173
8174         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
8175         a std::string.
8176         (get_pe_section_index, add_pe_exported_sym): Update.
8177         (read_pe_exported_syms): Use gdb::def_vector.
8178
8179 2018-05-25  Tom Tromey  <tom@tromey.com>
8180
8181         * frame.c (remove_prev_frame): Remove.
8182         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
8183
8184 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
8185
8186         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
8187         Remove prototypes.
8188         * mips-linux-nat.c (supply_fpregset): Always call
8189         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
8190         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
8191         `mips_fill_fpregset'.
8192         * mips-linux-tdep.c (mips_supply_fpregset)
8193         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
8194         (mips_fill_fpregset_wrapper): Remove functions.
8195         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
8196         (mips_linux_fpregset): Remove variable.
8197         (mips_linux_iterate_over_regset_sections): Use
8198         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
8199         (mips_linux_o32_sigframe_init): Remove comment.
8200
8201 2018-05-25  Pedro Alves  <palves@redhat.com>
8202
8203         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
8204         (struct readahead_cache, struct packet_reg, struct
8205         remote_arch_state, class remote_state): Move higher up in the
8206         file.
8207         (remote_target::m_remote_state): Now an object instead of a pointer.
8208         (remote_target::get_remote_state): Adjust.
8209
8210 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
8211
8212         * stack.c (select_and_print_frame): Delete.
8213         (struct function_bounds): Move struct within function.
8214         (func_command): Most content moved into new function
8215         find_frame_for_function, use new function, print result, add
8216         function comment.
8217         (find_frame_for_function): New function, now returns a result.
8218
8219 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8220
8221         * stack.c (iterate_over_block_arg_vars): Fix comment.
8222         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
8223
8224 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
8225
8226         PR gdb/23203
8227         * frame.c
8228         (scoped_restore_selected_frame::scoped_restore_selected_frame):
8229         Define.
8230         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
8231         Define.
8232         * frame.h (class scoped_restore_selected_frame): New class.
8233         * stack.c (print_frame_local_vars): Remove catching and rethrowing
8234         of any exception, use scoped_restore_selected_frame to restore the
8235         frame instead.
8236
8237 2018-05-24  Pedro Alves  <palves@redhat.com>
8238
8239         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
8240         override.
8241
8242 2018-05-23  Tom Tromey  <tom@tromey.com>
8243
8244         * complaints.c (struct complaints): Remove.
8245         (symfile_complaint_book): Remove.
8246         (series): New global.
8247         (complaint_internal): Update.
8248         (clear_complaints): Update.
8249
8250 2018-05-23  Tom Tromey  <tom@tromey.com>
8251
8252         * complaints.c (counters): New global.
8253         (struct complain): Remove.
8254         (struct complaints) <root>: Remove.
8255         (complaint_sentinel): Remove.
8256         (symfile_complaint_book): Update.
8257         (find_complaint) Remove.
8258         (complaint_internal, clear_complaints): Update.
8259
8260 2018-05-23  Tom Tromey  <tom@tromey.com>
8261
8262         * complaints.c (struct complain) <file, line>: Remove.
8263         (find_complaint): Remove file, line parameters.
8264         (complaint_internal): Update.
8265
8266 2018-05-23  Tom Tromey  <tom@tromey.com>
8267
8268         * complaints.c (vcomplaint): Remove.
8269         (complaint_internal) Merge in contents of vcomplaint.
8270
8271 2018-05-23  Tom Tromey  <tom@tromey.com>
8272
8273         * complaints.c (struct complaints) <explanation>: Remove.
8274         (symfile_explanations): Remove.
8275         (symfile_complaint_book): Update.
8276         (vcomplaint): Update.
8277         (struct explanation): Remove.
8278
8279 2018-05-23  Tom Tromey  <tom@tromey.com>
8280
8281         * complaints.c (symfile_complaints): Remove.
8282         (complaint_internal): Remove "complaints" parameter.
8283         (clear_complaints, vcomplaint): Remove "c" parameter.
8284         (get_complaints): Remove.
8285         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
8286         (dwarf2_debug_line_missing_file_complaint)
8287         (dwarf2_debug_line_missing_end_sequence_complaint)
8288         (dwarf2_complex_location_expr_complaint)
8289         (dwarf2_const_value_length_mismatch_complaint)
8290         (dwarf2_section_buffer_overflow_complaint)
8291         (dwarf2_macro_malformed_definition_complaint)
8292         (dwarf2_invalid_attrib_class_complaint)
8293         (create_addrmap_from_index, dw2_symtab_iter_next)
8294         (dw2_expand_marked_cus)
8295         (dw2_debug_names_iterator::find_vec_in_debug_names)
8296         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
8297         (create_debug_type_hash_table, init_cutu_and_read_dies)
8298         (partial_die_parent_scope, add_partial_enumeration)
8299         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
8300         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
8301         (read_import_statement, read_file_scope, create_dwo_cu_reader)
8302         (create_cus_hash_table, create_dwp_hash_table)
8303         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
8304         (dwarf2_rnglists_process, dwarf2_ranges_process)
8305         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
8306         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
8307         (handle_struct_member_die, process_structure_scope)
8308         (read_array_type, read_common_block, read_module_type)
8309         (read_tag_pointer_type, read_typedef, read_base_type)
8310         (read_subrange_type, load_partial_dies, partial_die_info::read)
8311         (partial_die_info::read, partial_die_info::read)
8312         (partial_die_info::read, read_checked_initial_length_and_offset)
8313         (dwarf2_string_attr, read_formatted_entries)
8314         (dwarf_decode_line_header)
8315         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
8316         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
8317         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
8318         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
8319         (get_signatured_type, get_DW_AT_signature_type)
8320         (decode_locdesc, file_file_name, consume_improper_spaces)
8321         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
8322         (dwarf_decode_macro_bytes, dwarf_decode_macros)
8323         (dwarf2_symbol_mark_computed, set_die_type)
8324         (read_attribute_value): Update.
8325         * stap-probe.c (handle_stap_probe, get_stap_base_address):
8326         Update.
8327         * dbxread.c (unknown_symtype_complaint)
8328         (lbrac_mismatch_complaint, repeated_header_complaint)
8329         (set_namestring, function_outside_compilation_unit_complaint)
8330         (read_dbx_symtab, process_one_symbol): Update.
8331         * gdbtypes.c (stub_noname_complaint): Update.
8332         * windows-nat.c (handle_unload_dll): Update.
8333         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
8334         (decode_base_type): Update.
8335         * xcoffread.c (bf_notfound_complaint, ef_complaint)
8336         (eb_complaint, record_include_begin, record_include_end)
8337         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
8338         (process_xcoff_symbol, read_symbol)
8339         (function_outside_compilation_unit_complaint)
8340         (scan_xcoff_symtab): Update.
8341         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
8342         * buildsym.c (finish_block_internal, make_blockvector)
8343         (end_symtab_get_static_block, augment_type_symtab): Update.
8344         * dtrace-probe.c (dtrace_process_dof)
8345         (dtrace_static_probe_ops::get_probes): Update.
8346         * complaints.h (struct complaint): Don't declare.
8347         (symfile_complaints): Remove.
8348         (complaint_internal): Remove "complaints" parameter.
8349         (complaint): Likewise.
8350         (clear_complaints): Likewise.
8351         * symfile.c (syms_from_objfile_1, finish_new_objfile)
8352         (reread_symbols): Update.
8353         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
8354         (dwarf2_frame_cache, decode_frame_entry): Update.
8355         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
8356         * objc-lang.c (lookup_objc_class, lookup_child_selector)
8357         (info_selectors_command): Update.
8358         * macrotab.c (macro_include, check_for_redefinition)
8359         (macro_undef): Update.
8360         * objfiles.c (filter_overlapping_sections): Update.
8361         * stabsread.c (invalid_cpp_abbrev_complaint)
8362         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
8363         (define_symbol, error_type, read_type, rs6000_builtin_type)
8364         (stabs_method_name_from_physname, read_member_functions)
8365         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
8366         (attach_fields_to_type, complain_about_struct_wipeout)
8367         (read_range_type, read_args, common_block_start)
8368         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
8369         Update.
8370         * mdebugread.c (index_complaint, unknown_ext_complaint)
8371         (basic_type_complaint, bad_tag_guess_complaint)
8372         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
8373         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
8374         (parse_procedure, parse_lines)
8375         (function_outside_compilation_unit_complaint)
8376         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
8377         (bad_tag_guess_complaint, reg_value_complaint): Update.
8378         * cp-support.c (demangled_name_complaint): Update.
8379         * macroscope.c (sal_macro_scope): Update.
8380         * dwarf-index-write.c (class debug_names): Update.
8381
8382 2018-05-23  Tom Tromey  <tom@tromey.com>
8383
8384         * complaints.c (clear_complaints): Remove "noisy" parameter.
8385         * complaints.h (clear_complaints): Update.
8386         * symfile.c (syms_from_objfile_1, finish_new_objfile)
8387         (reread_symbols): Update.
8388
8389 2018-05-23  Tom Tromey  <tom@tromey.com>
8390
8391         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
8392         SUBSEQUENT_MESSAGE.
8393         (vcomplaint, clear_complaints): Update.
8394         (symfile_explanations): Remove some messages.
8395
8396 2018-05-23  Tom Tromey  <tom@tromey.com>
8397
8398         * complaints.c (internal_complaint): Remove.
8399         * complaints.h (internal_complaint): Remove.
8400
8401 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
8402
8403         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
8404
8405 2018-05-22  Pedro Alves  <palves@redhat.com>
8406
8407         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
8408         (remote_fileio_badfd, remote_fileio_return_errno)
8409         (remote_fileio_return_success, remote_fileio_func_open)
8410         (remote_fileio_func_open, remote_fileio_func_close)
8411         (remote_fileio_func_read, remote_fileio_func_write)
8412         (remote_fileio_func_lseek, remote_fileio_func_rename)
8413         (remote_fileio_func_unlink, remote_fileio_func_stat)
8414         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
8415         (remote_fileio_func_isatty, remote_fileio_func_system): Add
8416         remote_target parameter.
8417         (remote_fio_func_map) <func>: Add remote_target parameter.
8418         (do_remote_fileio_request, remote_fileio_request):
8419         * remote-fileio.h (remote_fileio_request):
8420         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
8421         remote_target parameter.
8422         (remote_notif_process, handle_notification): Adjust to pass down
8423         the remote.
8424         (remote_notif_state_allocate): Add remote_target parameter.  Save
8425         it.
8426         * remote-notif.h (struct remote_target): Forward declare.
8427         (struct notif_client) <parse, ack, can_get_pending_events>: Add
8428         remote_target parameter.
8429         (struct remote_notif_state) <remote>: New field.
8430         (remote_notif_ack, remote_notif_parse): Add remote_target
8431         parameter.
8432         (remote_notif_state_allocate, remote_notif_state_allocate): Add
8433         remote_target parameter.
8434         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
8435         (threads_listing_context, rmt_thread_action, protocol_feature)
8436         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
8437         (packet_result, struct threads_listing_context, remote_state):
8438         Move definitions and declarations higher up.
8439         (remote_target) <~remote_target>: Declare.
8440         (remote_download_command_source, remote_file_put, remote_file_get)
8441         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
8442         (remote_hostio_pread_vFile, remote_hostio_send_command)
8443         (remote_hostio_set_filesystem, remote_hostio_open)
8444         (remote_hostio_close, remote_hostio_unlink, remote_state)
8445         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
8446         (get_memory_write_packet_size, get_memory_read_packet_size)
8447         (append_pending_thread_resumptions, remote_detach_1)
8448         (append_resumption, remote_resume_with_vcont)
8449         (add_current_inferior_and_thread, wait_ns, wait_as)
8450         (process_stop_reply, remote_notice_new_inferior)
8451         (process_initial_stop_replies, remote_add_thread)
8452         (btrace_sync_conf, remote_btrace_maybe_reopen)
8453         (remove_new_fork_children, kill_new_fork_children)
8454         (discard_pending_stop_replies, stop_reply_queue_length)
8455         (check_pending_events_prevent_wildcard_vcont)
8456         (discard_pending_stop_replies_in_queue, stop_reply)
8457         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
8458         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
8459         (remote_interrupt_as, remote_interrupt_ns)
8460         (remote_get_noisy_reply, remote_query_attached)
8461         (remote_add_inferior, remote_current_thread, get_current_thread)
8462         (set_thread, set_general_thread, set_continue_thread)
8463         (set_general_process, write_ptid)
8464         (remote_unpack_thread_info_response, remote_get_threadinfo)
8465         (parse_threadlist_response, remote_get_threadlist)
8466         (remote_threadlist_iterator, remote_get_threads_with_ql)
8467         (remote_get_threads_with_qxfer)
8468         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
8469         (get_offsets, remote_check_symbols, remote_supported_packet)
8470         (remote_query_supported, remote_packet_size)
8471         (remote_serial_quit_handler, remote_detach_pid)
8472         (remote_vcont_probe, remote_resume_with_hc)
8473         (send_interrupt_sequence, interrupt_query)
8474         (remote_notif_get_pending_events, fetch_register_using_p)
8475         (send_g_packet, process_g_packet, fetch_registers_using_g)
8476         (store_register_using_P, store_registers_using_G)
8477         (set_remote_traceframe, check_binary_download)
8478         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
8479         (remote_xfer_live_readonly_partial, remote_read_bytes)
8480         (remote_send_printf, remote_flash_write, readchar)
8481         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
8482         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
8483         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
8484         (extended_remote_disable_randomization, extended_remote_run)
8485         (send_environment_packet, extended_remote_environment_support)
8486         (extended_remote_set_inferior_cwd, remote_write_qxfer)
8487         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
8488         (packet_command): Now methods of ...
8489         (remote_target): ... this class.
8490         (m_remote_state) <remote_target>: New field.
8491         (struct remote_state) <stop_reply_queue,
8492         remote_async_inferior_event_token, wait_forever_enabled_p>: New
8493         fields.
8494         (remote_state::remote_state): Allocate stop_reply_queue.
8495         (remote_state): Delete global.
8496         (get_remote_state_raw): Delete.
8497         (remote_target::get_remote_state): Allocate m_remote_state on
8498         demand.
8499         (get_current_remote_target): New.
8500         (remote_ops, extended_remote_ops): Delete.
8501         (wait_forever_enabled_p, remote_async_inferior_event_token):
8502         Delete, moved to struct remote_state.
8503         (remote_target::close): Delete self.  Destruction bits split to
8504         ...
8505         (remote_target::~remote_target): ... this.
8506         (show_memory_packet_size): Adjust to use
8507         get_current_remote_target.
8508         (struct protocol_feature) <func>: Add remote_target parameter.
8509         All callers adjusted.
8510         (curr_quit_handler_target): New.
8511         (remote_serial_quit_handler): Reimplement.
8512         (remote_target::open_1): Adjust to use get_current_remote_target.
8513         Heap-allocate remote_target/extended_remote_target instances.
8514         (vcont_builder::vcont_builder): Add remote_target parameter, and
8515         save it in m_remote.  All callers adjusted.
8516         (vcont_builder::m_remote): New field.
8517         (vcont_builder::restart, vcont_builder::flush)
8518         (vcont_builder::push_action): Use it.
8519         (remote_target::commit_resume): Use it.
8520         (struct queue_iter_param) <remote>: New field.
8521         (remote_target::remove_new_fork_children): Fill in 'remote' field.
8522         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
8523         (check_pending_event_prevents_wildcard_vcont_callback)
8524         (remote_target::check_pending_events_prevent_wildcard_vcont)
8525         (remote_target::discard_pending_stop_replies)
8526         (remote_target::discard_pending_stop_replies_in_queue)
8527         (remote_target::remote_notif_remove_queued_reply): Fill in
8528         'remote' field.
8529         (remote_notif_get_pending_events): New.
8530         (remote_target::readchar, remote_target::remote_serial_write):
8531         Save/restore curr_quit_handler_target.
8532         (putpkt): New.
8533         (kill_new_fork_children): Fill in 'remote' field.
8534         (packet_command): Use get_current_remote_target, defer to
8535         remote_target method of same name.
8536         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
8537         parameter, and save it in m_remote.  All callers adjusted.
8538         (scoped_remote_fd::release): Use m_remote.
8539         (scoped_remote_fd::m_remote): New field.
8540         (remote_file_put, remote_file_get, remote_file_delete): Use
8541         get_current_remote_target, defer to remote_target method of same
8542         name.
8543         (remote_btrace_reset): Add remote_state paremeter.  Update all
8544         callers.
8545         (remote_async_inferior_event_handler). Pass down 'data'.
8546         (remote_new_objfile): Use get_current_remote_target.
8547         (remote_target::vcont_r_supported): New.
8548         (set_range_stepping): Use get_current_remote_target and
8549         remote_target::vcont_r_supported.
8550         (_initialize_remote): Don't allocate 'remote_state' and
8551         'stop_reply_queue' globals.
8552         * remote.h (struct remote_target): Forward declare.
8553         (getpkt, putpkt, remote_notif_get_pending_events): Add
8554         'remote_target' parameter.
8555
8556 2018-05-22  Pedro Alves  <palves@redhat.com>
8557
8558         * remote.c (vcont_builder): Now a class.  Make all data members
8559         private.
8560         (vcont_builder) <vcont_builder, restart, flush, push_action>:
8561         Declare methods.
8562         (vcont_builder_restart): Rename to ...
8563         (vcont_builder::restart): ... this.
8564         (vcont_builder_flush): Rename to ...
8565         (vcont_builder::flush): ... this.
8566         (vcont_builder_push_action): Rename to ...
8567         (vcont_builder::push_action): ... this.
8568         (remote_target::commit_resume): Adjust.
8569
8570 2018-05-22  Pedro Alves  <palves@redhat.com>
8571
8572         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
8573         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
8574         (get_fixed_memory_packet_size): New.
8575         (get_memory_packet_size): Use it.
8576         (set_memory_packet_size): Don't override the config size with
8577         DEFAULT_MAX_MEMORY_PACKET_SIZE.
8578         (show_memory_packet_size): Use get_fixed_memory_packet_size.
8579         Don't refer to get_memory_packet_size if not connected to a remote
8580         target.  Show "(default)" if configured size is 0.
8581
8582 2018-05-22  Pedro Alves  <palves@redhat.com>
8583
8584         * remote.c (remote_target::mourn_inferior): Move
8585         discard_pending_stop_replies call here from ...
8586         (_initialize_remote): ... here.
8587
8588 2018-05-22  Pedro Alves  <palves@redhat.com>
8589
8590         * remote.c (compare_section_command): Remove set_general_process
8591         call.
8592
8593 2018-05-22  Pedro Alves  <palves@redhat.com>
8594
8595         * remote.c (struct packet_reg, struct remote_arch_state):
8596         Move higher up in the file.
8597         (remote_state) <m_arch_states>: Store remote_arch_state values
8598         instead of remote_arch_state pointers.
8599         (remote_state::get_remote_arch_state): Adjust.
8600
8601 2018-05-22  Pedro Alves  <palves@redhat.com>
8602
8603         * remote.c: Include <unordered_map>.
8604         (remote_state): Now a class.
8605         (remote_state) <get_remote_arch_state>: Declare method.
8606         <get_remote_arch_state>: New field.
8607         (remote_arch_state) <remote_arch_state>: Declare ctor.
8608         <regs>: Now a unique_ptr.
8609         (remote_gdbarch_data_handle): Delete.
8610         (get_remote_arch_state): Delete.
8611         (remote_state::get_remote_arch_state): New.
8612         (get_remote_state): Adjust to call remote_state's
8613         get_remote_arch_state method.
8614         (init_remote_state): Delete, bits factored out to ...
8615         (remote_arch_state::remote_arch_state): ... this new method.
8616         (get_remote_packet_size, get_memory_packet_size)
8617         (process_g_packet, remote_target::fetch_registers)
8618         (remote_target::prepare_to_store, store_registers_using_G)
8619         (remote_target::store_registers, remote_target::get_trace_status):
8620         Adjust to call remote_state's method.
8621         (_initialize_remote): Remove reference to
8622         remote_gdbarch_data_handle.
8623
8624 2018-05-22  Pedro Alves  <palves@redhat.com>
8625
8626         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
8627         pread>: New method declarations.
8628         (remote_target::open_1): Adjust.
8629         (readahead_cache_invalidate): Rename to ...
8630         (readahead_cache::invalidate): ... this, and adjust to be a class
8631         method.
8632         (readahead_cache_invalidate_fd): Rename to ...
8633         (readahead_cache::invalidate_fd): ... this, and adjust to be a
8634         class method.
8635         (remote_hostio_pwrite): Adjust.
8636         (remote_hostio_pread_from_cache): Rename to ...
8637         (readahead_cache::pread): ... this, and adjust to be a class
8638         method.
8639         (remote_hostio_close): Adjust.
8640
8641 2018-05-22  Pedro Alves  <palves@redhat.com>
8642
8643         * remote.c (remote_hostio_close_cleanup): Delete.
8644         (class scoped_remote_fd): New.
8645         (remote_file_put, remote_file_get): Use it.
8646
8647 2018-05-22  Pedro Alves  <palves@redhat.com>
8648
8649         (struct vCont_action_support): Use bool and initialize all fields.
8650         (struct readahead_cache): Initialize all fields.
8651         (remote_state): Use bool and initialize all fields.
8652         (remote_state::remote_state, remote_state::~remote_state): New.
8653         (new_remote_state): Delete.
8654         (_initialize_remote): Use new to allocate remote_state.
8655
8656 2018-05-22  Pedro Alves  <palves@redhat.com>
8657             張俊芝  <zjz@zjz.name>
8658
8659         PR gdb/22973
8660         * c-exp.y: Include "c-support.h".
8661         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
8662         of tolower.  Use c_ident_is_alpha to scan names.
8663         * c-lang.c: Include "c-support.h".
8664         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
8665         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
8666         * c-support.h: New file, with bits factored out from ...
8667         * cp-name-parser.y: ... this file.
8668         Include "c-support.h".
8669         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
8670         c-support.h and renamed.
8671         (symbol_end, yylex): Adjust.
8672
8673 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8674
8675         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
8676         parameter type to CORE_ADDR.
8677         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
8678         parameter type in declaration to CORE_ADDR.
8679         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
8680         target_auxv_search to get AT_HWCAP and use the result to get the
8681         target description.
8682         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
8683         to CORE_ADDR. Remove the cast of the return value to unsigned
8684         long. Fix error predicate of target_auxv_search.
8685         (ppc_linux_nat_target::read_description): Change the type of the
8686         hwcap variable to CORE_ADDR.
8687
8688 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8689
8690         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
8691         if the size of fpscr is larger than 32 bits.
8692
8693 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8694
8695         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
8696         (ppc32_linux_vsxregmap): New global.
8697         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
8698         regcache_supply_regset, and regcache_collect_regset.
8699         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
8700         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
8701         (fetch_vsx_register, store_vsx_register): Remove.
8702         (fetch_vsx_registers): Add regno parameter. Get regset using
8703         ppc_linux_vsxregset. Use regset to supply registers.
8704         (store_vsx_registers): Add regno parameter. Get regset using
8705         ppc_linux_vsxregset. Use regset to collect registers.
8706         (fetch_register): Call fetch_vsx_registers instead of
8707         fetch_vsx_register.
8708         (store_register): Call store_vsx_registers instead of
8709         store_vsx_register.
8710         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
8711         new regno parameter.
8712         (store_ppc_registers): Call store_vsx_registers with -1 for the
8713         new regno parameter.
8714         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
8715         (ppc_collect_vsxregset): Remove.
8716
8717 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8718
8719         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
8720         offset fields.
8721         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
8722         for vector register offset fields.
8723         (ppc64_fbsd_reg_offsets): Likewise.
8724         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8725         to vector register offset fields.
8726         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8727         to vector register offset fields.
8728         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
8729         vector register offset fields.
8730         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
8731         initializers for vector register offset fields.
8732         (rs6000_aix64_reg_offsets): Likewise.
8733         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
8734         (ppc_supply_vrregset): Remove.
8735         (ppc_collect_vrregset): Remove.
8736         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
8737         (ppc_linux_vrregset) : New function.
8738         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
8739         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
8740         (ppc32_linux_vrregset): Remove.
8741         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
8742         and use result instead of ppc32_linux_vrregset.
8743         (ppc32_linux_reg_offsets): Remove initializers for vector register
8744         offset fields.
8745         (ppc64_linux_reg_offsets): Likewise.
8746         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
8747         * ppc-linux-nat.c: Include regset.h.
8748         (gdb_vrregset_t): Adjust comment to account for little-endian
8749         mode.
8750         (supply_vrregset, fill_vrregset): Remove.
8751         (fetch_altivec_register, store_altivec_register): Remove.
8752         (fetch_altivec_registers): Add regno parameter. Get regset using
8753         ppc_linux_vrregset. Use regset to supply registers.
8754         (store_altivec_registers): Add regno parameter. Get regset using
8755         ppc_linux_vrregset. Use regset to collect registers.
8756         (fetch_register): Call fetch_altivec_registers instead of
8757         fetch_altivec_register.
8758         (store_register): Call store_altivec_registers instead of
8759         store_altivec_register.
8760         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
8761         the new regno parameter.
8762         (store_ppc_registers): Call store_altivec_registers with -1 for
8763         the new regno parameter.
8764
8765 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8766
8767         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
8768         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
8769         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
8770         (gdb_vrregset_t): Change array type size to
8771         PPC_LINUX_SIZEOF_VRREGSET.
8772         (gdb_vsxregset_t): Change array type size to
8773         PPC_LINUX_SIZEOF_VSXREGSET.
8774         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
8775         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
8776         PPC_LINUX_SIZEOF_VSXREGSET.
8777
8778 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8779
8780         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
8781         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
8782         nat/ppc-linux.c.
8783         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
8784         ppc_linux_target_wordsize with tid.
8785         (ppc_linux_nat_target::read_description): Call ppc_linux_target
8786         wordsize with tid.
8787         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
8788         (ppc64_64bit_inferior_p): Add static and inline specifiers.
8789         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
8790         tid parameter. Remove static specifier.
8791         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
8792         (ppc_linux_target_wordsize): New declaration.
8793
8794 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8795
8796         * arch/ppc-linux-common.c: New file.
8797         * arch/ppc-linux-common.h: New file.
8798         * arch/ppc-linux-tdesc.h: New file.
8799         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
8800         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
8801         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
8802         arch/ppc-linux-tdesc.h.
8803         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
8804         arch/ppc-linux-tdesc.h.
8805         (ppc_linux_nat_target::read_description): Remove target
8806         description matching code. Fill a ppc_linux_features struct and
8807         call ppc_linux_match_description with it. Move comment about ISA
8808         2.05 to ppc-linux-common.c.
8809         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
8810         arch/ppc-linux-tdesc.h.
8811         (ppc_linux_core_read_description): Remove target description
8812         matching code. Fill a ppc_linux_features struct and call
8813         ppc_linux_match_description with it.
8814         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
8815         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
8816         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
8817         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
8818         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
8819         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
8820         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
8821         (tdesc_powerpc_e500l): Remove.
8822
8823 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
8824
8825         * ada-lang.c (catch_assert_command): Pass empty string instead
8826         of NULL for excep_string argument.
8827
8828 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
8829
8830         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
8831         the width of the requested register exceeds the width of the
8832         `ptrace' data type.
8833
8834 2018-05-21  Tom Tromey  <tom@tromey.com>
8835
8836         * printcmd.c (output_command): Remove.
8837         (output_command_const): Rename to output_command.
8838         * valprint.h (output_command): Rename from output_command_const.
8839         * tracepoint.c (trace_dump_actions): Call output_command.
8840
8841 2018-05-21  Tom Tromey  <tom@tromey.com>
8842
8843         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
8844         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
8845         * ada-lang.h (create_ada_exception_catchpoint): Update.
8846         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
8847         std::string.
8848         (create_excep_cond_exprs, ~ada_catchpoint)
8849         (should_stop_exception, print_one_exception)
8850         (print_mention_exception, print_recreate_exception): Update.
8851         (ada_get_next_arg): Remove.
8852         (catch_ada_exception_command_split): Use std::string.  Change type
8853         of "excep_string", "cond_string".
8854         (catch_ada_exception_command): Update.
8855         (create_ada_exception_catchpoint): Change type of excep_string.
8856         (ada_exception_sal): Remove excep_string parameter.
8857         (~ada_catchpoint): Remove.
8858
8859 2018-05-21  Tom Tromey  <tom@tromey.com>
8860
8861         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
8862         cleanup.
8863
8864 2018-05-21  Tom Tromey  <tom@tromey.com>
8865
8866         * ada-lang.c (ada_exception_message_1, ada_exception_message):
8867         Return unique_xmalloc_ptr.
8868         (print_it_exception): Update.
8869
8870 2018-05-21  Tom Tromey  <tom@tromey.com>
8871
8872         * tracepoint.c (trace_dump_actions): Use std::string.
8873
8874 2018-05-21  Tom Tromey  <tom@tromey.com>
8875
8876         * symfile.c (reread_symbols): Use std::string for original_name.
8877
8878 2018-05-21  Tom Tromey  <tom@tromey.com>
8879
8880         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
8881         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
8882         constructor.
8883
8884 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
8885
8886         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
8887         instance to...
8888         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
8889         * objfiles.c (get_objfile_bfd_data): Allocate
8890         objfile_per_bfd_storage with obstack_new when allocating on
8891         obstack.
8892
8893 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8894
8895         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
8896         OBSTACK_ZALLOC.
8897         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
8898         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
8899         * mdebugread.c (mdebug_build_psymtabs): Likewise.
8900         (add_pending): Likewise.
8901         (parse_symbol): Likewise.
8902         (parse_partial_symbols): Likewise.
8903         (psymtab_to_symtab_1): Likewise.
8904         (new_psymtab): Likewise.
8905         (elfmdebug_build_psymtabs): Likewise.
8906         * minsyms.c (terminate_minimal_symbol_table): Likewise.
8907         * objfiles.c (get_objfile_bfd_data): Likewise.
8908         (objfile_register_static_link): Likewise.
8909         * psymtab.c (allocate_psymtab): Likewise.
8910         * stabsread.c (read_member_functions): Likewise.
8911         * xcoffread.c (xcoff_end_psymtab): Likewise.
8912
8913 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8914
8915         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
8916         compiler supports std::is_trivially_constructible.
8917         * common/poison.h: Include obstack.h.
8918         (IsMallocable): Define to is_trivially_constructible if the
8919         compiler supports it, define to true_type otherwise.
8920         (xobnew): New.
8921         (XOBNEW): Redefine.
8922         (xobnewvec): New.
8923         (XOBNEWVEC): Redefine.
8924         * gdb_obstack.h (obstack_zalloc): New.
8925         (OBSTACK_ZALLOC): Redefine.
8926         (obstack_calloc): New.
8927         (OBSTACK_CALLOC): Redefine.
8928         (obstack_new): New.
8929         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
8930         (gdbarch_obstack): New declaration in gdbarch.h, definition in
8931         gdbarch.c.
8932         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
8933         obstack_calloc/obstack_zalloc.
8934         (gdbarch_obstack_zalloc): Remove.
8935         * target-descriptions.c (tdesc_data_init): Use obstack_new.
8936
8937 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8938
8939         * stack.c (backtrace_command_1): Remove useless variable int i.
8940
8941 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8942
8943         * stack.c (print_frame_info): Fix comment.
8944
8945 2018-05-18  Tom Tromey  <tom@tromey.com>
8946
8947         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
8948         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
8949         (~dwarf2_per_objfile): Update
8950         (dwarf2_get_dwz_file): Use new.
8951         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
8952         unique_ptr.
8953
8954 2018-05-18  Tom Tromey  <tom@tromey.com>
8955
8956         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
8957         unique_ptr.
8958         * dwarf2read.c (struct dwp_file): Add constructor and
8959         initializers.
8960         (open_and_init_dwp_file): Return a unique_ptr.
8961         (dwarf2_per_objfile, create_dwp_hash_table)
8962         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
8963         (lookup_dwo_unit_in_dwp): Update.
8964         (open_and_init_dwp_file, get_dwp_file): Update.
8965
8966 2018-05-18  Tom Tromey  <tom@tromey.com>
8967
8968         * dwarf2read.c (dwarf2_per_objfile): Update.
8969         (struct mapped_index): Add initializers.
8970         (dwarf2_read_index): Use new.
8971         (dw2_symtab_iter_init): Update.
8972         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
8973         unique_ptr.
8974
8975 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8976
8977         * dwarf2read.c (mapped_index) <total_size>: Remove.
8978
8979 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8980
8981         * unittests/format_pieces-selftests.c (test_format_specifier):
8982         Add ARI comments.
8983
8984 2018-05-18  Tom Tromey  <tom@tromey.com>
8985
8986         * c-typeprint.c (maybe_print_hole): New function.
8987         (c_print_type_struct_field_offset): Update.
8988         (c_type_print_base_struct_union): Call maybe_print_hole.
8989
8990 2018-05-17  Keith Seitz  <keiths@redhat.com>
8991
8992         * breakpoint.c (build_bpstat_chain): New function, moved from
8993         bpstat_stop_status.
8994         (bpstat_stop_status): Add optional parameter, `stop_chain'.
8995         If no stop chain is passed, call build_bpstat_chain to build it.
8996         * breakpoint.h (build_bpstat_chain): Declare.
8997         (bpstat_stop_status): Move documentation here from breakpoint.c.
8998         * infrun.c (handle_signal_stop): Before eliding inlined frames,
8999         build the stop chain and pass it to skip_inline_frames.
9000         Pass this stop chain to bpstat_stop_status.
9001         * inline-frame.c: Include breakpoint.h.
9002         (stopped_by_user_bp_inline_frame): New function.
9003         (skip_inline_frames): Add parameter `stop_chain'.
9004         Move documention to inline-frame.h.
9005         If non-NULL, use stopped_by_user_bp_inline_frame to determine
9006         whether the frame should be elided.
9007         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
9008         Add moved documentation and update for new parameter.
9009
9010 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
9011
9012         PR cli/14975
9013         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
9014         unittests/format_pieces-selftests.c.
9015         * common/format.h (format_piece) <operator==>: New.
9016         (format_pieces) <operator[]>: Remove.
9017         * common/format.c (format_pieces::format_pieces): Handle \e.
9018         * unittests/format_pieces-selftests.c: New.
9019
9020 2018-05-17  Tom Tromey  <tom@tromey.com>
9021
9022         PR symtab/23010:
9023         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
9024         (dw2_instantiate_symtab): Add skip_partial parameter.
9025         (dw2_find_last_source_symtab, dw2_map_expand_apply)
9026         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
9027         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
9028         (dw2_expand_symtabs_matching_one)
9029         (dw2_find_pc_sect_compunit_symtab)
9030         (dw2_debug_names_lookup_symbol)
9031         (dw2_debug_names_expand_symtabs_for_function): Update.
9032         (init_cutu_and_read_dies): Add skip_partial parameter.
9033         (process_psymtab_comp_unit, build_type_psymtabs_1)
9034         (process_skeletonless_type_unit, load_partial_comp_unit)
9035         (psymtab_to_symtab_1): Update.
9036         (load_full_comp_unit): Add skip_partial parameter.
9037         (process_imported_unit_die, dwarf2_read_addr_index)
9038         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
9039         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
9040         (read_signatured_type): Update.
9041
9042 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
9043
9044         * value.c (release_value): Remove unused variable.
9045         (record_latest_value): Likewise.
9046         (access_value_history): Likewise.
9047         (preserve_values): Likewise.
9048
9049 2018-05-17  Tom Tromey  <tom@tromey.com>
9050
9051         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
9052         Initialize.
9053
9054 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
9055
9056         PR gdb/22286
9057         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
9058         Also handle registers whose width is not a multiple of
9059         PTRACE_TYPE_RET.
9060         (linux_nat_trad_target::store_register): Likewise.
9061
9062 2018-05-16  Tom Tromey  <tom@tromey.com>
9063
9064         * gdbcore.h (core_bfd): Redefine.
9065         * corelow.c (core_target::close): Update.
9066         (core_target_open): Update.
9067         * progspace.h (struct program_space) <cbfd>: Now a
9068         gdb_bfd_ref_ptr.
9069
9070 2018-05-16  Tom Tromey  <tom@tromey.com>
9071
9072         PR cli/19551:
9073         * symfile-add-flags.h (enum symfile_add_flags)
9074         <SYMFILE_NOT_FILENAME>: New constant.
9075         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
9076         objfile name from BFD.
9077         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
9078         * minidebug.c (find_separate_debug_file_in_section): Put
9079         ".gnu_debugdata" into BFD's file name.
9080
9081 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
9082
9083         * regcache.c (regcache_read_ftype, regcache_write_ftype):
9084         Remove.
9085
9086 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
9087
9088         PR binutils/21446
9089         * aarch64-tdep.c (aarch64_analyze_prologue,
9090         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
9091         Indicate not interested in errors.
9092
9093 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
9094
9095         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
9096         Supply the MIPS_ZERO_REGNUM register.
9097
9098 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
9099
9100         * mips-tdep.c (mask_address_var): Make variable static.
9101
9102 2018-05-14  Tom Tromey  <tom@tromey.com>
9103
9104         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
9105
9106 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
9107
9108         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
9109         FXSAVE_ADDR for the mxcsr register.
9110
9111 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
9112
9113         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
9114
9115 2018-05-11  Pedro Alves  <palves@redhat.com>
9116
9117         * corelow.c (core_target) <core_target>: No longer inline.
9118         Initialize m_core_gdbarch, m_core_vec and build the section table
9119         here.
9120         <~core_target>: New.
9121         <core_gdbarch, get_core_register_section>: New methods.
9122         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
9123         factored out from ...
9124         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
9125         (core_ops): Delete.
9126         (sniff_core_bfd): Add gdbarch parameter.
9127         (core_close): Delete, merged into ...
9128         (core_target::close): ... here.  Delete self.
9129         (core_close_cleanup): Delete.
9130         (core_target_open): Allocate a core_target on the heap.  Use a
9131         unique_ptr instead of a cleanup.  Bits moved into the core_target
9132         ctor.  Adjust to use core_target methods instead of globals.
9133         (get_core_register_section): Rename to ...
9134         (core_target::get_core_register_section): ... this and adjust.
9135         (struct get_core_registers_cb_data): New.
9136         (get_core_registers_cb): Use it.  Use bool.
9137         (core_target::fetch_registers, core_target::files_info)
9138         (core_target::xfer_partial, core_target::read_description)
9139         (core_target::pid_to, core_target::thread_name): Adjust to
9140         reference class fields instead of globals.
9141         * target.h (struct target_ops_deleter, target_ops_up): New.
9142
9143 2018-05-11  Pedro Alves  <palves@redhat.com>
9144
9145         * corefile.c (core_file_command): Move to corelow.c.
9146         * corelow.c (the_core_target): Delete.
9147         (core_file_command): Moved from corefile.c.  Check exec_bfd
9148         instead of the_core_target.  Use target_detach instead of calling
9149         into the_core_target directly.
9150         (maybe_say_no_core_file_now): New.
9151         (core_target::detach): Use it.
9152         (_initialize_corelow): Remove references to the_core_target.
9153         * gdbcore.h (the_core_target): Delete.
9154
9155 2018-05-11  Tom Tromey  <tromey@redhat.com>
9156             Pedro Alves  <palves@redhat.com>
9157
9158         * corefile.c (core_bfd): Remove.
9159         * gdbcore.h (core_bfd): Now a macro.
9160         * progspace.h (struct program_space) <cbfd>: New field.
9161
9162 2018-05-11  Tom Tromey  <tom@tromey.com>
9163
9164         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
9165         gdb::def_vector.
9166
9167 2018-05-10  Tom Tromey  <tom@tromey.com>
9168
9169         * configure: Rebuild.
9170         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
9171
9172 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
9173
9174         PR server/23158:
9175         * regformats/regdat.sh: Adjust script, following the addition
9176         of the new expedite_regs parameter to init_target_desc.
9177
9178 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
9179     
9180         PR gdb/23127
9181         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
9182         set_gdbarch_significant_addr_bit.
9183         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
9184         set_gdbarch_significant_addr_bit.
9185         * utils.c (address_significant): Update to sign extend addr.
9186
9187 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
9188
9189         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
9190         (xtensa_linux_init_abi): Limit tdep->num_regs by
9191         tdep->num_nopriv_regs.
9192         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
9193         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
9194         not initialized.
9195
9196 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
9197
9198         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
9199
9200 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
9201
9202         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
9203         (I387_MXCSR_INIT_VAL): New constant.
9204         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
9205         buffer if it was supplied by the inferior.
9206         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
9207         (i387_xsave_get_clear_bv): New function.
9208         (i387_supply_xsave): Only read x87 control registers from the
9209         xsave buffer if the feature is enabled, and the state will have
9210         been written, otherwise, provide a suitable default.
9211         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
9212         including x87 control registers.  Update control registers if they
9213         have changed from the default value, and mark features as enabled
9214         as required.
9215         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
9216
9217 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
9218
9219         * spu-tdep.c (info_spu_event_command): Fix output formatting.
9220
9221 2018-05-07  Tom Tromey  <tom@tromey.com>
9222
9223         * configure: Rebuild.
9224         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
9225
9226 2018-05-07  Tom Tromey  <tom@tromey.com>
9227
9228         PR tdep/20362:
9229         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
9230         bit.  Use correct value for VDIV.
9231
9232 2018-05-04  Tom Tromey  <tom@tromey.com>
9233
9234         * configure: Rebuild.
9235         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
9236
9237 2018-05-04  Tom Tromey  <tom@tromey.com>
9238
9239         * linux-record.c (record_linux_system_call) <case
9240         RECORD_SYS_RECVFROM>: Add "break".
9241
9242 2018-05-04  Tom Tromey  <tom@tromey.com>
9243
9244         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
9245         Add missing "break".
9246         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
9247         Add missing "break".
9248
9249 2018-05-04  Tom Tromey  <tom@tromey.com>
9250
9251         * rs6000-tdep.c (ppc_process_record_op4)
9252         (ppc_process_record_op63): Add fall-through comment.
9253
9254 2018-05-04  Tom Tromey  <tom@tromey.com>
9255
9256         * i386-tdep.c (i386_process_record): Add fall-through comment.
9257
9258 2018-05-04  Tom Tromey  <tom@tromey.com>
9259
9260         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
9261         comment.
9262
9263 2018-05-04  Tom Tromey  <tom@tromey.com>
9264
9265         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
9266         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
9267         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
9268         comment.
9269         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
9270         comment.
9271         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
9272         comment.
9273
9274 2018-05-04  Tom Tromey  <tom@tromey.com>
9275
9276         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
9277
9278 2018-05-04  Tom Tromey  <tom@tromey.com>
9279
9280         * s390-tdep.c (s390_process_record): Fix fall-through comments.
9281         * xcoffread.c (scan_xcoff_symtab): Move comment later.
9282         * symfile.c (section_is_mapped): Fix fall-through comment.
9283         * stabsread.c (define_symbol, read_member_functions): Fix
9284         fall-through comment.
9285         * s390-linux-tdep.c (s390_process_record): Fix fall-through
9286         comment.
9287         * remote.c (remote_wait_as): Fix fall-through comment.
9288         * p-exp.y (yylex): Fix fall-through comment.
9289         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
9290         comment.
9291         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
9292         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
9293         * jv-exp.y (yylex): Fix fall-through comment.
9294         * go-exp.y (lex_one_token): Fix fall-through comment.
9295         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
9296         fall-through comment.
9297         * f-exp.y (yylex): Fix fall-through comment.
9298         * dwarf2read.c (process_die): Fix fall-through comments.
9299         * dbxread.c (process_one_symbol): Fix fall-through comment.
9300         * d-exp.y (lex_one_token): Fix fall-through comment.
9301         * cp-name-parser.y (yylex): Fix fall-through comment.
9302         * coffread.c (coff_symtab_read): Fix fall-through comment.
9303         * c-exp.y (lex_one_token): Fix fall-through comment.
9304         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
9305         comment.
9306         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
9307         comment.
9308
9309 2018-05-04  Tom Tromey  <tom@tromey.com>
9310
9311         PR python/22730:
9312         * NEWS: Mention gdb.execute change.
9313         * gdbcmd.h (execute_control_command): Don't declare.
9314         * python/python.c (execute_gdb_command): Use read_command_lines_1,
9315         execute_control_commands, execute_control_commands_to_string.
9316         * cli/cli-script.h (execute_control_commands)
9317         (execute_control_commands_to_string): Declare.
9318         (execute_control_command): Add from_tty parameter.
9319         * cli/cli-script.c (execute_control_commands)
9320         (execute_control_commands_to_string): New functions.
9321         (execute_user_command): Use execute_control_commands.
9322         (execute_control_command_1): Add "from_tty" parameter.  Update.
9323         (execute_control_command): Likewise.
9324
9325 2018-05-04  Tom Tromey  <tom@tromey.com>
9326
9327         PR python/22731:
9328         * NEWS: Mention that breakpoint commands are writable.
9329         * python/py-breakpoint.c (bppy_set_commands): New function.
9330         (breakpoint_object_getset) <"commands">: Use it.
9331
9332 2018-05-04  Tom Tromey  <tom@tromey.com>
9333
9334         * tracepoint.c (actions_command): Update.
9335         * mi/mi-cmd-break.c (mi_command_line_array)
9336         (mi_command_line_array_cnt, mi_command_line_array_ptr)
9337         (mi_read_next_line): Remove.
9338         (mi_cmd_break_commands): Update.
9339         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
9340         function_view.
9341         * cli/cli-script.c (get_command_line): Update.
9342         (process_next_line): Use function_view.  Constify.
9343         (recurse_read_control_structure, read_command_lines)
9344         (read_command_lines_1): Change argument types to function_view.
9345         (do_define_command, document_command): Update.
9346         * breakpoint.h (check_tracepoint_command): Don't declare.
9347         * breakpoint.c (check_tracepoint_command): Remove.
9348         (commands_command_1, create_tracepoint_from_upload): Update.
9349
9350 2018-05-04  Tom Tromey  <tom@tromey.com>
9351
9352         PR gdb/11750:
9353         * cli/cli-script.h (enum command_control_type) <define_control>:
9354         New constant.
9355         * cli/cli-script.c (multi_line_command_p): Handle define_control.
9356         (build_command_line, execute_control_command_1)
9357         (process_next_line): Likewise.
9358         (do_define_command): New function, extracted from define_command.
9359         (define_command): Use it.
9360
9361 2018-05-04  Tom Tromey  <tom@tromey.com>
9362
9363         * tracepoint.c (actions_command): Update.
9364         * cli/cli-script.h (read_command_lines): Update.
9365         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
9366         (MAX_TMPBUF): Remove define.
9367         (define_command): Use string_printf.
9368         (document_command): Likewise.
9369         * breakpoint.c (commands_command_1): Update.
9370
9371 2018-05-04  Tom Tromey  <tom@tromey.com>
9372
9373         * top.c (execute_command): Update.
9374         * cli/cli-script.h (print_command_lines): Now varargs.
9375         * cli/cli-script.c (print_command_lines): Now varargs.
9376         (execute_control_command_1) <case while_control, case if_control>:
9377         Update.
9378
9379 2018-05-04  Tom Tromey  <tom@tromey.com>
9380
9381         * tracepoint.c (all_tracepoint_actions): Rename from
9382         all_tracepoint_actions_and_cleanup.  Change return type.
9383         (actions_command, encode_actions_1, encode_actions)
9384         (trace_dump_actions, tdump_command): Update.
9385         * remote.c (remote_download_command_source): Update.
9386         * python/python.c (gdbpy_eval_from_control_command)
9387         (python_command, python_interactive_command): Update.
9388         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
9389         * guile/guile.c (guile_command)
9390         (gdbscm_eval_from_control_command, guile_command): Update.
9391         * compile/compile.c (compile_code_command)
9392         (compile_print_command, compile_to_object): Update.
9393         * cli/cli-script.h (struct command_lines_deleter): New.
9394         (counted_command_line): New typedef.
9395         (struct command_line): Add constructor, destructor.
9396         <body_list>: Remove.
9397         <body_list_0, body_list_1>: New members.
9398         (command_line_up): Remove typedef.
9399         (read_command_lines, read_command_lines_1, get_command_line):
9400         Update.
9401         (copy_command_lines): Don't declare.
9402         * cli/cli-script.c (build_command_line): Use "new".
9403         (get_command_line): Return counted_command_line.
9404         (print_command_lines, execute_user_command)
9405         (execute_control_command_1, while_command, if_command): Update.
9406         (realloc_body_list): Remove.
9407         (process_next_line, recurse_read_control_structure): Update.
9408         (read_command_lines, read_command_lines_1): Return counted_command_line.
9409         (free_command_lines): Use "delete".
9410         (copy_command_lines): Remove.
9411         (define_command, document_command, show_user_1): Update.
9412         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
9413         a counted_command_line.
9414         * breakpoint.h (counted_command_line): Remove typedef.
9415         (breakpoint_set_commands): Update.
9416         * breakpoint.c (check_no_tracepoint_commands)
9417         (validate_commands_for_breakpoint): Update.
9418         (breakpoint_set_commands): Change commands to be a
9419         counted_command_line.
9420         (commands_command_1, update_dprintf_command_list)
9421         (create_tracepoint_from_upload): Update.
9422
9423 2018-05-04  Tom Tromey  <tom@tromey.com>
9424
9425         * cli/cli-decode.h (cmd_list_element): New constructor.
9426         (~cmd_list_element): New destructor.
9427         (struct cmd_list_element): Add initializers.
9428         * cli/cli-decode.c (do_add_cmd): Use "new".
9429         (delete_cmd): Use "delete".
9430
9431 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
9432             Pedro Alves <palves@redhat.com>
9433
9434         PR breakpoints/19806 and support for PR external/20207.
9435         * NEWS: Mention Aarch64 watchpoint improvements.
9436         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
9437         watchpoints and PR external/20207 watchpoints.
9438         * nat/aarch64-linux-hw-point.c
9439         (kernel_supports_any_contiguous_range): New.
9440         (aarch64_watchpoint_offset): New.
9441         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
9442         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
9443         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
9444         (aarch64_align_watchpoint): New parameters aligned_offset_p and
9445         next_addr_orig_p.  Support PR external/20207 watchpoints.
9446         (aarch64_downgrade_regs): New.
9447         (aarch64_dr_state_insert_one_point): New parameters offset and
9448         addr_orig.
9449         (aarch64_dr_state_remove_one_point): Likewise.
9450         (aarch64_handle_breakpoint): Update caller.
9451         (aarch64_handle_aligned_watchpoint): Likewise.
9452         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
9453         aligned_offset.
9454         (aarch64_linux_set_debug_regs): Remove const from state.  Call
9455         aarch64_downgrade_regs.
9456         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
9457         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
9458         (DR_CONTROL_MASK): ... this.
9459         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
9460         (unsigned int aarch64_watchpoint_offset): New prototype.
9461         (aarch64_linux_set_debug_regs): Remove const from state.
9462         * utils.c (align_up, align_down): Move to ...
9463         * common/common-utils.c (align_up, align_down): ... here.
9464         * utils.h (align_up, align_down): Move to ...
9465         * common/common-utils.h (align_up, align_down): ... here.
9466
9467 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
9468
9469         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
9470         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
9471         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
9472         Re-implement to match the ABI as summarized in GCC's
9473         gcc/config/sparc/sparc.c.  All callers updated.
9474         (sparc32_store_arguments): Remove assertion.
9475
9476 2018-05-04  Tom Tromey  <tom@tromey.com>
9477
9478         * printcmd.c: Don't include tui.h.
9479         (decode_format): Use skip_spaces.
9480
9481 2018-05-04  Tom Tromey  <tom@tromey.com>
9482
9483         PR gdb/22619:
9484         * printcmd.c (last_count): New global.
9485         (x_command): Use saved count when repeating.
9486
9487 2018-05-04  Tom Tromey  <tom@tromey.com>
9488
9489         * nto-procfs.c (do_closedir_cleanup): Remove.
9490         (procfs_pidlist): Use gdb_dir_up.
9491         * procfs.c (do_closedir_cleanup): Remove.
9492         (proc_update_threads): Use gdb_dir_up.
9493         * common/filestuff.h (struct gdb_dir_deleter): New.
9494         (gdb_dir_up): New typedef.
9495
9496 2018-05-04  Tom Tromey  <tom@tromey.com>
9497
9498         * ada-lang.c (print_mention_exception): Use std::string.
9499
9500 2018-05-04  Tom Tromey  <tom@tromey.com>
9501
9502         * ada-lang.c (create_excep_cond_exprs): Update.
9503         (ada_exception_catchpoint_cond_string): Use std::string.
9504
9505 2018-05-04  Tom Tromey  <tom@tromey.com>
9506
9507         * ada-lang.c (xget_renaming_scope): Return std::string.
9508         (old_renaming_is_invisible): Update.
9509
9510 2018-05-04  Tom Tromey  <tom@tromey.com>
9511
9512         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
9513         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
9514
9515 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
9516
9517         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
9518
9519 2018-05-04  Tom Tromey  <tom@tromey.com>
9520
9521         * remote.c (remote_query_supported_append): Change type.
9522         (remote_check_symbols): Update.
9523
9524 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
9525
9526         PR gdb/11420
9527         * configure.ac: Prepend libpython.
9528         * python/python-config.py: Likewise.
9529         * configure: Regenerate.
9530
9531 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
9532
9533         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
9534
9535 2018-05-03  Pedro Alves  <palves@redhat.com>
9536
9537         * s390-linux-nat.c
9538         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
9539         override.  Write 'true' instead of '1'.
9540         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
9541         declaration.
9542
9543 2018-05-02  Pedro Alves  <palves@redhat.com>
9544
9545         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
9546         add_inf_child_target.
9547         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
9548         add_inf_child_target.
9549         * aix-thread.c (aix_thread_target_info): New.
9550         (aix_thread_target) <shortname, longname, doc>: Delete.
9551         <info>: New.
9552         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
9553         add_inf_child_target.
9554         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
9555         add_inf_child_target.
9556         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
9557         add_inf_child_target.
9558         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
9559         add_inf_child_target.
9560         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
9561         add_inf_child_target.
9562         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
9563         add_inf_child_target.
9564         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
9565         add_inf_child_target.
9566         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
9567         add_inf_child_target.
9568         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
9569         add_inf_child_target.
9570         * bfd-target.c (target_bfd_target_info): New.
9571         (target_bfd) <shortname, longname, doc>: Delete.
9572         <info>: New.
9573         * bsd-kvm.c (bsd_kvm_target_info): New.
9574         (bsd_kvm_target) <shortname, longname, doc>: Delete.
9575         <info>: New.
9576         (bsd_kvm_target::open): Rename to ...
9577         (bsd_kvm_target_open): ... this.  Adjust.
9578         * bsd-uthread.c (bsd_uthread_target_info): New.
9579         (bsd_uthread_target) <shortname, longname, doc>: Delete.
9580         <info>: New.
9581         * corefile.c (core_file_command): Adjust.
9582         * corelow.c (core_target_info): New.
9583         (core_target) <shortname, longname, doc>: Delete.
9584         <info>: New.
9585         (core_target::open): Rename to ...
9586         (core_target_open): ... this.  Adjust.
9587         * ctf.c (ctf_target_info): New.
9588         (ctf_target) <shortname, longname, doc>: Delete.
9589         <info>: New.
9590         (ctf_target::open): Rename to ...
9591         (ctf_target_open): ... this.
9592         (_initialize_ctf): Adjust.
9593         * exec.c (exec_target_info): New.
9594         (exec_target) <shortname, longname, doc>: Delete.
9595         <info>: New.
9596         (exec_target::open): Rename to ...
9597         (exec_target_open): ... this.
9598         * gdbcore.h (core_target_open): Declare.
9599         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
9600         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
9601         add_inf_child_target.
9602         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
9603         add_inf_child_target.
9604         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
9605         add_inf_child_target.
9606         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
9607         add_inf_child_target.
9608         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
9609         add_inf_child_target.
9610         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
9611         add_inf_child_target.
9612         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
9613         add_inf_child_target.
9614         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
9615         add_inf_child_target.
9616         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
9617         add_inf_child_target.
9618         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
9619         add_inf_child_target.
9620         * inf-child.c (inf_child_target_info): New.
9621         (inf_child_target::info): New.
9622         (inf_child_open_target): Remove 'target' parameter.  Use
9623         get_native_target instead.
9624         (inf_child_target::open): Delete.
9625         (add_inf_child_target): New.
9626         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
9627         Delete.
9628         <info>: New.
9629         (add_inf_child_target): Declare.
9630         (inf_child_open_target): Declare.
9631         * linux-thread-db.c (thread_db_target_info): New.
9632         (thread_db_target) <shortname, longname, doc>: Delete.
9633         <info>: New.
9634         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
9635         add_inf_child_target.
9636         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
9637         add_inf_child_target.
9638         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
9639         add_inf_child_target.
9640         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
9641         add_inf_child_target.
9642         * make-target-delegates (print_class): Adjust.
9643         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
9644         add_inf_child_target.
9645         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
9646         add_inf_child_target.
9647         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
9648         add_inf_child_target.
9649         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
9650         add_inf_child_target.
9651         * nto-procfs.c (nto_native_target_info): New.
9652         (nto_procfs_target_native) <shortname, longname, doc>:
9653         Delete.
9654         <info>: New.
9655         (nto_procfs_target_info): New.
9656         (nto_procfs_target_procfs) <shortname, longname, doc>:
9657         Delete.
9658         <info>: New.
9659         (init_procfs_targets): Adjust.
9660         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
9661         add_inf_child_target.
9662         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
9663         add_inf_child_target.
9664         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
9665         add_inf_child_target.
9666         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
9667         add_inf_child_target.
9668         * ravenscar-thread.c (ravenscar_target_info): New.
9669         (ravenscar_thread_target) <shortname, longname, doc>:
9670         Delete.
9671         <info>: New.
9672         * record-btrace.c (record_btrace_target_info):
9673         (record_btrace_target) <shortname, longname, doc>: Delete.
9674         <info>: New.
9675         (record_btrace_target::open): Rename to ...
9676         (record_btrace_target_open): ... this.  Adjust.
9677         * record-full.c (record_longname, record_doc): New.
9678         (record_full_base_target) <shortname, longname, doc>: Delete.
9679         <info>: New.
9680         (record_full_target_info): New.
9681         (record_full_target): <shortname>: Delete.
9682         <info>: New.
9683         (record_full_core_open_1, record_full_open_1): Update comments.
9684         (record_full_base_target::open): Rename to ...
9685         (record_full_open): ... this.
9686         (cmd_record_full_restore): Update.
9687         (_initialize_record_full): Update.
9688         * remote-sim.c (remote_sim_target_info): New.
9689         (gdbsim_target) <shortname, longname, doc>: Delete.
9690         <info>: New.
9691         (gdbsim_target::open): Rename to ...
9692         (gdbsim_target_open): ... this.
9693         (_initialize_remote_sim): Adjust.
9694         * remote.c (remote_doc): New.
9695         (remote_target_info): New.
9696         (remote_target) <shortname, longname, doc>: Delete.
9697         <info>: New.
9698         (extended_remote_target_info): New.
9699         (extended_remote_target) <shortname, longname, doc>: Delete.
9700         <info>: New.
9701         (remote_target::open_1): Make static.  Adjust.
9702         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
9703         * s390-linux-nat.c (_initialize_s390_nat): Use
9704         add_inf_child_target.
9705         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
9706         add_inf_child_target.
9707         * sol-thread.c (thread_db_target_info): New.
9708         (sol_thread_target) <shortname, longname, doc>: Delete.
9709         <info>: New.
9710         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
9711         add_inf_child_target.
9712         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
9713         add_inf_child_target.
9714         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
9715         add_inf_child_target.
9716         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
9717         add_inf_child_target.
9718         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
9719         add_inf_child_target.
9720         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
9721         add_inf_child_target.
9722         * spu-linux-nat.c (_initialize_spu_nat): Use
9723         add_inf_child_target.
9724         * spu-multiarch.c (spu_multiarch_target_info): New.
9725         (spu_multiarch_target) <shortname, longname, doc>: Delete.
9726         <info>: New.
9727         * target-delegates.c: Regenerate.
9728         * target.c: Include <unordered_map>.
9729         (target_ops_p): Delete.
9730         (DEF_VEC_P(target_ops_p)): Delete.
9731         (target_factories): New.
9732         (test_target_info): New.
9733         (test_target_ops::info): New.
9734         (open_target): Adjust to use target_factories.
9735         (add_target_with_completer): Rename to ...
9736         (add_target): ... this.  Change prototype.  Register target_info
9737         and open callback in target_factories.  Register target_info in
9738         command context instead of target_ops.
9739         (add_target): Delete old implementation.
9740         (add_deprecated_target_alias): Change prototype.  Adjust.
9741         (the_native_target): New.
9742         (set_native_target, get_native_target): New.
9743         (find_default_run_target): Use the_native_target.
9744         (find_attach_target, find_run_target): Simplify.
9745         (target_ops::open): Delete.
9746         (dummy_target_info): New.
9747         (dummy_target::shortname, dummy_target::longname)
9748         (dummy_target::doc): Delete.
9749         (dummy_target::info): New.
9750         (debug_target::shortname, debug_target::longname)
9751         (debug_target::doc): Delete.
9752         (debug_target::info): New.
9753         * target.h (struct target_info): New.
9754         (target_ops::~target_ops): Add comment.
9755         (target_ops::info): New.
9756         (target_ops::shortname, target_ops::longname, target_ops::doc): No
9757         longer virtual.  Implement in terms of target_info.
9758         (set_native_target, get_native_target): Declare.
9759         (target_open_ftype): New.
9760         (add_target, add_target_with_completer)
9761         (add_deprecated_target_alias): Change prototype.
9762         (test_target) <shortname, longname, doc>: Delete.
9763         <info>: New.
9764         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
9765         add_inf_child_target.
9766         * tracefile-tfile.c (tfile_target_info): New.
9767         (tfile_target) <shortname, longname, doc>: Delete.
9768         <info>: New.
9769         (tfile_target::open): Rename to ...
9770         (tfile_target_open): ... this.
9771         (_initialize_tracefile_tfile): Adjust.
9772         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
9773         add_inf_child_target.
9774         * windows-nat.c (_initialize_windows_nat): Use
9775         add_inf_child_target.
9776         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
9777         add_inf_child_target.
9778
9779 2018-05-02  Pedro Alves  <palves@redhat.com>
9780
9781         * linux-nat.h (linux_nat_target) <low_new_thread,
9782         low_delete_thread, low_new_fork, low_forget_process,
9783         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
9784         New virtual methods.
9785         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9786         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
9787         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
9788         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9789         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
9790         Delete.
9791         * linux-fork.c (delete_fork): Adjust to call low method.
9792         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
9793         (linux_nat_new_fork, linux_nat_forget_process_hook)
9794         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
9795         (linux_nat_status_is_event):
9796         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
9797         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
9798         to call low method.
9799         (sigtrap_is_event): Rename to ...
9800         (linux_nat_target::low_status_is_event): ... this.
9801         (linux_nat_set_status_is_event): Delete.
9802         (save_stop_reason, linux_nat_wait_1)
9803         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
9804         low methods.
9805         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9806         (linux_nat_set_new_fork, linux_nat_set_forget_process)
9807         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9808         (linux_nat_set_prepare_to_resume): Delete.
9809         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
9810         low virtual methods.
9811         * amd64-linux-nat.c: Likewise.
9812         * arm-linux-nat.c: Likewise.
9813         * i386-linux-nat.c: Likewise.
9814         * ia64-linux-nat.c: Likewise.
9815         * mips-linux-nat.c: Likewise.
9816         * ppc-linux-nat.c: Likewise.
9817         * s390-linux-nat.c: Likewise.
9818         * sparc64-linux-nat.c: Likewise.
9819         * x86-linux-nat.c: Likewise.
9820         * x86-linux-nat.h: Include "nat/x86-linux.h".
9821         (x86_linux_nat_target) <low_new_fork, low_forget_process,
9822         low_prepare_to_resume, low_new_thread, low_delete_thread>:
9823         Override methods.
9824
9825 2018-05-02  Pedro Alves  <palves@redhat.com>
9826
9827         * target.h (target_ops)
9828         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
9829         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
9830         stopped_by_watchpoint, have_continuable_watchpoint,
9831         stopped_data_address, watchpoint_addr_within_range,
9832         can_accel_watchpoint_condition, can_run, thread_alive,
9833         has_all_memory, has_memory, has_stack, has_registers,
9834         has_execution, can_async_p, is_async_p, supports_non_stop,
9835         always_non_stop_p, can_execute_reverse, supports_multi_process,
9836         supports_enable_disable_tracepoint,
9837         supports_disable_randomization, supports_string_tracing,
9838         supports_evaluation_of_breakpoint_conditions,
9839         can_run_breakpoint_commands, filesystem_is_local,
9840         can_download_tracepoint, get_trace_state_variable_value,
9841         set_trace_notes, get_tib_address, use_agent, can_use_agent,
9842         record_is_replaying, record_will_replay,
9843         augmented_libraries_svr4_read>: Adjust to return bool.
9844         * aarch64-linux-nat.c: All implementations adjusted.
9845         * aix-thread.c: All implementations adjusted.
9846         * arm-linux-nat.c: All implementations adjusted.
9847         * breakpoint.c: All implementations adjusted.
9848         * bsd-kvm.c: All implementations adjusted.
9849         * bsd-uthread.c: All implementations adjusted.
9850         * corelow.c: All implementations adjusted.
9851         * ctf.c: All implementations adjusted.
9852         * darwin-nat.c: All implementations adjusted.
9853         * darwin-nat.h: All implementations adjusted.
9854         * exec.c: All implementations adjusted.
9855         * fbsd-nat.c: All implementations adjusted.
9856         * fbsd-nat.h: All implementations adjusted.
9857         * gnu-nat.c: All implementations adjusted.
9858         * gnu-nat.h: All implementations adjusted.
9859         * go32-nat.c: All implementations adjusted.
9860         * ia64-linux-nat.c: All implementations adjusted.
9861         * inf-child.c: All implementations adjusted.
9862         * inf-child.h: All implementations adjusted.
9863         * inf-ptrace.c: All implementations adjusted.
9864         * inf-ptrace.h: All implementations adjusted.
9865         * linux-nat.c: All implementations adjusted.
9866         * linux-nat.h: All implementations adjusted.
9867         * mips-linux-nat.c: All implementations adjusted.
9868         * nto-procfs.c: All implementations adjusted.
9869         * ppc-linux-nat.c: All implementations adjusted.
9870         * procfs.c: All implementations adjusted.
9871         * ravenscar-thread.c: All implementations adjusted.
9872         * record-btrace.c: All implementations adjusted.
9873         * record-full.c: All implementations adjusted.
9874         * remote-sim.c: All implementations adjusted.
9875         * remote.c: All implementations adjusted.
9876         * s390-linux-nat.c: All implementations adjusted.
9877         * sol-thread.c: All implementations adjusted.
9878         * spu-multiarch.c: All implementations adjusted.
9879         * target-delegates.c: All implementations adjusted.
9880         * target.c: All implementations adjusted.
9881         * target.h: All implementations adjusted.
9882         * tracefile-tfile.c: All implementations adjusted.
9883         * tracefile.c: All implementations adjusted.
9884         * tracefile.h: All implementations adjusted.
9885         * windows-nat.c: All implementations adjusted.
9886         * x86-linux-nat.h: All implementations adjusted.
9887         * x86-nat.h: All implementations adjusted.
9888
9889 2018-05-02  Pedro Alves  <palves@redhat.com>
9890
9891         * make-target-delegates (scan_target_h): Don't trim lines here.
9892         Replace sequences of tabs and/or whitespace with a single
9893         whitespace.
9894         (top level, parsing methods): Trim each line before processing it
9895         here.
9896
9897 2018-05-02  Pedro Alves  <palves@redhat.com>
9898             John Baldwin  <jhb@freebsd.org>
9899
9900         * target.h (enum strata) <debug_stratum>: New.
9901         (struct target_ops) <all delegation methods>: Replace by C++
9902         virtual methods, and drop "to_" prefix.  All references updated
9903         throughout.
9904         <to_shortname, to_longname, to_doc, to_data,
9905         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
9906         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
9907         virtual methods.  All references updated throughout.
9908         <can_attach, supports_terminal_ours, can_create_inferior,
9909         get_thread_control_capabilities, attach_no_wait>: New
9910         virtual methods.
9911         <insert_breakpoint, remove_breakpoint>: Now
9912         TARGET_DEFAULT_NORETURN methods.
9913         <info_proc>: Now returns bool.
9914         <to_magic>: Delete.
9915         (OPS_MAGIC): Delete.
9916         (current_target): Delete.  All references replaced by references
9917         to ...
9918         (target_stack): ... this.  New.
9919         (target_shortname, target_longname): Adjust.
9920         (target_can_run): Now a function declaration.
9921         (default_child_has_all_memory, default_child_has_memory)
9922         (default_child_has_stack, default_child_has_registers)
9923         (default_child_has_execution): Remove target_ops parameter.
9924         (complete_target_initialization): Delete.
9925         (memory_breakpoint_target): New template class.
9926         (test_target_ops): Refactor as a C++ class with virtual methods.
9927         * make-target-delegates (NAME_PART): Tighten.
9928         (POINTER_PART, CP_SYMBOL): New.
9929         (SIMPLE_RETURN_PART): Reimplement.
9930         (VEC_RETURN_PART): Expect less.
9931         (RETURN_PART, VIRTUAL_PART): New.
9932         (METHOD): Adjust to C++ virtual methods.
9933         (scan_target_h): Remove reference to C99.
9934         (dname): Output "target_ops::" prefix.
9935         (write_function_header): Adjust to output a C++ class method.
9936         (write_declaration): New.
9937         (write_delegator): Adjust to output a C++ class method.
9938         (tdname): Output "dummy_target::" prefix.
9939         (write_tdefault, write_debugmethod): Adjust to output a C++ class
9940         method.
9941         (tdefault_names, debug_names): Delete.
9942         (return_types, tdefaults, styles, argtypes_array): New.
9943         (top level): All methods are delegators.
9944         (print_class): New.
9945         (top level): Print dummy_target and debug_target classes.
9946         * target-delegates.c: Regenerate.
9947         * target-debug.h (target_debug_print_enum_info_proc_what)
9948         (target_debug_print_thread_control_capabilities)
9949         (target_debug_print_thread_info_p): New.
9950         * target.c (dummy_target): Delete.
9951         (the_dummy_target, the_debug_target): New.
9952         (target_stack): Now extern.
9953         (set_targetdebug): Push/unpush debug target.
9954         (default_child_has_all_memory, default_child_has_memory)
9955         (default_child_has_stack, default_child_has_registers)
9956         (default_child_has_execution): Remove target_ops parameter.
9957         (complete_target_initialization): Delete.
9958         (add_target_with_completer): No longer call
9959         complete_target_initialization.
9960         (target_supports_terminal_ours): Use regular delegation.
9961         (update_current_target): Delete.
9962         (push_target): No longer check magic number.  Don't call
9963         update_current_target.
9964         (unpush_target): Don't call update_current_target.
9965         (target_is_pushed): No longer check magic number.
9966         (target_require_runnable): Skip for all stratums over
9967         process_stratum.
9968         (target_ops::info_proc): New.
9969         (target_info_proc): Use find_target_at and
9970         find_default_run_target.
9971         (target_supports_disable_randomization): Use regular delegation.
9972         (target_get_osdata): Use find_target_at.
9973         (target_ops::open, target_ops::close, target_ops::can_attach)
9974         (target_ops::attach, target_ops::can_create_inferior)
9975         (target_ops::create_inferior, target_ops::can_run)
9976         (target_can_run): New.
9977         (default_fileio_target): Use regular delegation.
9978         (target_ops::fileio_open, target_ops::fileio_pwrite)
9979         (target_ops::fileio_pread, target_ops::fileio_fstat)
9980         (target_ops::fileio_close, target_ops::fileio_unlink)
9981         (target_ops::fileio_readlink): New.
9982         (target_fileio_open_1, target_fileio_unlink)
9983         (target_fileio_readlink): Always call the target method.  Handle
9984         FILEIO_ENOSYS.
9985         (return_zero, return_zero_has_execution): Delete.
9986         (init_dummy_target): Delete.
9987         (dummy_target::dummy_target, dummy_target::shortname)
9988         (dummy_target::longname, dummy_target::doc)
9989         (debug_target::debug_target, debug_target::shortname)
9990         (debug_target::longname, debug_target::doc): New.
9991         (target_supports_delete_record): Use regular delegation.
9992         (setup_target_debug): Delete.
9993         (maintenance_print_target_stack): Skip debug_stratum.
9994         (initialize_targets): Instantiate the_dummy_target and
9995         the_debug_target.
9996         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
9997         use target_stack.
9998         (target_auxv_search, fprint_target_auxv): Adjust.
9999         (info_auxv_command): Adjust to use target_stack.
10000         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
10001         * exceptions.c (print_flush): Handle a NULL target_stack.
10002         * regcache.c (target_ops_no_register): Refactor as class with
10003         virtual methods.
10004
10005         * exec.c (exec_target): New class.
10006         (exec_ops): Now an exec_target.
10007         (exec_open, exec_close_1, exec_get_section_table)
10008         (exec_xfer_partial, exec_files_info, exec_has_memory)
10009         (exec_make_note_section): Refactor as exec_target methods.
10010         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
10011         Delete.
10012         (exec_target::find_memory_regions): New.
10013         (_initialize_exec): Don't call init_exec_ops.
10014         * gdbcore.h (exec_file_clear): Delete.
10015
10016         * corefile.c (core_target): Delete.
10017         (core_file_command): Adjust.
10018         * corelow.c (core_target): New class.
10019         (the_core_target): New.
10020         (core_close): Remove target_ops parameter.
10021         (core_close_cleanup): Adjust.
10022         (core_target::close): New.
10023         (core_open, core_detach, get_core_registers, core_files_info)
10024         (core_xfer_partial, core_thread_alive, core_read_description)
10025         (core_pid_to_str, core_thread_name, core_has_memory)
10026         (core_has_stack, core_has_registers, core_info_proc): Rework as
10027         core_target methods.
10028         (ignore, core_remove_breakpoint, init_core_ops): Delete.
10029         (_initialize_corelow): Initialize the_core_target.
10030         * gdbcore.h (core_target): Delete.
10031         (the_core_target): New.
10032
10033         * ctf.c: (ctf_target): New class.
10034         (ctf_ops): Now a ctf_target.
10035         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
10036         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
10037         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
10038         methods.
10039         (init_ctf_ops): Delete.
10040         (_initialize_ctf): Don't call it.
10041         * tracefile-tfile.c (tfile_target): New class.
10042         (tfile_ops): Now a tfile_target.
10043         (tfile_open, tfile_close, tfile_files_info)
10044         (tfile_get_tracepoint_status, tfile_trace_find)
10045         (tfile_fetch_registers, tfile_xfer_partial)
10046         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
10047         Refactor as tfile_target methods.
10048         (tfile_xfer_partial_features): Remove target_ops parameter.
10049         (init_tfile_ops): Delete.
10050         (_initialize_tracefile_tfile): Don't call it.
10051         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
10052         (tracefile_has_stack, tracefile_has_registers)
10053         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
10054         tracefile_target methods.
10055         (init_tracefile_ops): Delete.
10056         (tracefile_target::tracefile_target): New.
10057         * tracefile.h: Include "target.h".
10058         (tracefile_target): New class.
10059         (init_tracefile_ops): Delete.
10060
10061         * spu-multiarch.c (spu_multiarch_target): New class.
10062         (spu_ops): Now a spu_multiarch_target.
10063         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
10064         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
10065         (spu_search_memory, spu_mourn_inferior): Refactor as
10066         spu_multiarch_target methods.
10067         (init_spu_ops): Delete.
10068         (_initialize_spu_multiarch): Remove references to init_spu_ops,
10069         complete_target_initialization.
10070
10071         * ravenscar-thread.c (ravenscar_thread_target): New class.
10072         (ravenscar_ops): Now a ravenscar_thread_target.
10073         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
10074         (ravenscar_thread_alive, ravenscar_pid_to_str)
10075         (ravenscar_fetch_registers, ravenscar_store_registers)
10076         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
10077         (ravenscar_stopped_by_hw_breakpoint)
10078         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
10079         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
10080         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
10081         methods.
10082         (init_ravenscar_thread_ops): Delete.
10083         (_initialize_ravenscar): Remove references to
10084         init_ravenscar_thread_ops and complete_target_initialization.
10085
10086         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
10087         (bsd_uthread_target): New class.
10088         (bsd_uthread_ops): Now a bsd_uthread_target.
10089         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
10090         (bsd_uthread_close, bsd_uthread_mourn_inferior)
10091         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
10092         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
10093         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
10094         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
10095         (bsd_uthread_target): Delete function.
10096         (_initialize_bsd_uthread): Remove reference to
10097         complete_target_initialization.
10098
10099         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
10100         (target_bfd): ... this new class.
10101         (target_bfd_xfer_partial, target_bfd_get_section_table)
10102         (target_bfd_close): Refactor as target_bfd methods.
10103         (target_bfd::~target_bfd): New.
10104         (target_bfd_reopen): Adjust.
10105         (target_bfd::close): New.
10106
10107         * record-btrace.c (record_btrace_target): New class.
10108         (record_btrace_ops): Now a record_btrace_target.
10109         (record_btrace_open, record_btrace_stop_recording)
10110         (record_btrace_disconnect, record_btrace_close)
10111         (record_btrace_async, record_btrace_info)
10112         (record_btrace_insn_history, record_btrace_insn_history_range)
10113         (record_btrace_insn_history_from, record_btrace_call_history)
10114         (record_btrace_call_history_range)
10115         (record_btrace_call_history_from, record_btrace_record_method)
10116         (record_btrace_is_replaying, record_btrace_will_replay)
10117         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
10118         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
10119         (record_btrace_store_registers, record_btrace_prepare_to_store)
10120         (record_btrace_to_get_unwinder)
10121         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
10122         (record_btrace_commit_resume, record_btrace_wait)
10123         (record_btrace_stop, record_btrace_can_execute_reverse)
10124         (record_btrace_stopped_by_sw_breakpoint)
10125         (record_btrace_supports_stopped_by_sw_breakpoint)
10126         (record_btrace_stopped_by_hw_breakpoint)
10127         (record_btrace_supports_stopped_by_hw_breakpoint)
10128         (record_btrace_update_thread_list, record_btrace_thread_alive)
10129         (record_btrace_goto_begin, record_btrace_goto_end)
10130         (record_btrace_goto, record_btrace_stop_replaying_all)
10131         (record_btrace_execution_direction)
10132         (record_btrace_prepare_to_generate_core)
10133         (record_btrace_done_generating_core): Refactor as
10134         record_btrace_target methods.
10135         (init_record_btrace_ops): Delete.
10136         (_initialize_record_btrace): Remove reference to
10137         init_record_btrace_ops.
10138         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
10139         the execution_direction global.
10140         (record_full_base_target, record_full_target)
10141         (record_full_core_target): New classes.
10142         (record_full_ops): Now a record_full_target.
10143         (record_full_core_ops): Now a record_full_core_target.
10144         (record_full_target::detach, record_full_target::disconnect)
10145         (record_full_core_target::disconnect)
10146         (record_full_target::mourn_inferior, record_full_target::kill):
10147         New.
10148         (record_full_open, record_full_close, record_full_async): Refactor
10149         as methods of the record_full_base_target class.
10150         (record_full_resume, record_full_commit_resume): Refactor
10151         as methods of the record_full_target class.
10152         (record_full_wait, record_full_stopped_by_watchpoint)
10153         (record_full_stopped_data_address)
10154         (record_full_stopped_by_sw_breakpoint)
10155         (record_full_supports_stopped_by_sw_breakpoint)
10156         (record_full_stopped_by_hw_breakpoint)
10157         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
10158         methods of the record_full_base_target class.
10159         (record_full_store_registers, record_full_xfer_partial)
10160         (record_full_insert_breakpoint, record_full_remove_breakpoint):
10161         Refactor as methods of the record_full_target class.
10162         (record_full_can_execute_reverse, record_full_get_bookmark)
10163         (record_full_goto_bookmark, record_full_execution_direction)
10164         (record_full_record_method, record_full_info, record_full_delete)
10165         (record_full_is_replaying, record_full_will_replay)
10166         (record_full_goto_begin, record_full_goto_end, record_full_goto)
10167         (record_full_stop_replaying): Refactor as methods of the
10168         record_full_base_target class.
10169         (record_full_core_resume, record_full_core_kill)
10170         (record_full_core_fetch_registers)
10171         (record_full_core_prepare_to_store)
10172         (record_full_core_store_registers, record_full_core_xfer_partial)
10173         (record_full_core_insert_breakpoint)
10174         (record_full_core_remove_breakpoint)
10175         (record_full_core_has_execution): Refactor
10176         as methods of the record_full_core_target class.
10177         (record_full_base_target::supports_delete_record): New.
10178         (init_record_full_ops): Delete.
10179         (init_record_full_core_ops): Delete.
10180         (record_full_save): Refactor as method of the
10181         record_full_base_target class.
10182         (_initialize_record_full): Remove references to
10183         init_record_full_ops and init_record_full_core_ops.
10184
10185         * remote.c (remote_target, extended_remote_target): New classes.
10186         (remote_ops): Now a remote_target.
10187         (extended_remote_ops): Now an extended_remote_target.
10188         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
10189         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
10190         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
10191         (remote_pass_signals, remote_set_syscall_catchpoint)
10192         (remote_program_signals, )
10193         (remote_thread_always_alive): Remove target_ops parameter.
10194         (remote_thread_alive, remote_thread_name)
10195         (remote_update_thread_list, remote_threads_extra_info)
10196         (remote_static_tracepoint_marker_at)
10197         (remote_static_tracepoint_markers_by_strid)
10198         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
10199         (remote_open): Refactor as methods of remote_target.
10200         (extended_remote_open, extended_remote_detach)
10201         (extended_remote_attach, extended_remote_post_attach):
10202         (extended_remote_supports_disable_randomization)
10203         (extended_remote_create_inferior): : Refactor as method of
10204         extended_remote_target.
10205         (remote_set_permissions, remote_open_1, remote_detach)
10206         (remote_follow_fork, remote_follow_exec, remote_disconnect)
10207         (remote_resume, remote_commit_resume, remote_stop)
10208         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
10209         (remote_terminal_ours, remote_wait, remote_fetch_registers)
10210         (remote_prepare_to_store, remote_store_registers)
10211         (remote_flash_erase, remote_flash_done, remote_files_info)
10212         (remote_kill, remote_mourn, remote_insert_breakpoint)
10213         (remote_remove_breakpoint, remote_insert_watchpoint)
10214         (remote_watchpoint_addr_within_range)
10215         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
10216         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
10217         (remote_supports_stopped_by_sw_breakpoint)
10218         (remote_stopped_by_hw_breakpoint)
10219         (remote_supports_stopped_by_hw_breakpoint)
10220         (remote_stopped_by_watchpoint, remote_stopped_data_address)
10221         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
10222         (remote_verify_memory): Refactor as methods of remote_target.
10223         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
10224         parameter.
10225         (remote_xfer_partial, remote_get_memory_xfer_limit)
10226         (remote_search_memory, remote_rcmd, remote_memory_map)
10227         (remote_pid_to_str, remote_get_thread_local_address)
10228         (remote_get_tib_address, remote_read_description): Refactor as
10229         methods of remote_target.
10230         (remote_target::fileio_open, remote_target::fileio_pwrite)
10231         (remote_target::fileio_pread, remote_target::fileio_close): New.
10232         (remote_hostio_readlink, remote_hostio_fstat)
10233         (remote_filesystem_is_local, remote_can_execute_reverse)
10234         (remote_supports_non_stop, remote_supports_disable_randomization)
10235         (remote_supports_multi_process, remote_supports_cond_breakpoints)
10236         (remote_supports_enable_disable_tracepoint)
10237         (remote_supports_string_tracing)
10238         (remote_can_run_breakpoint_commands, remote_trace_init)
10239         (remote_download_tracepoint, remote_can_download_tracepoint)
10240         (remote_download_trace_state_variable, remote_enable_tracepoint)
10241         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
10242         (remote_trace_start, remote_get_trace_status)
10243         (remote_get_tracepoint_status, remote_trace_stop)
10244         (remote_trace_find, remote_get_trace_state_variable_value)
10245         (remote_save_trace_data, remote_get_raw_trace_data)
10246         (remote_set_disconnected_tracing, remote_core_of_thread)
10247         (remote_set_circular_trace_buffer, remote_traceframe_info)
10248         (remote_get_min_fast_tracepoint_insn_len)
10249         (remote_set_trace_buffer_size, remote_set_trace_notes)
10250         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
10251         (remote_disable_btrace, remote_teardown_btrace)
10252         (remote_read_btrace, remote_btrace_conf)
10253         (remote_augmented_libraries_svr4_read, remote_load)
10254         (remote_pid_to_exec_file, remote_can_do_single_step)
10255         (remote_execution_direction, remote_thread_handle_to_thread_info):
10256         Refactor as methods of remote_target.
10257         (init_remote_ops, init_extended_remote_ops): Delete.
10258         (remote_can_async_p, remote_is_async_p, remote_async)
10259         (remote_thread_events, remote_upload_tracepoints)
10260         (remote_upload_trace_state_variables): Refactor as methods of
10261         remote_target.
10262         (_initialize_remote): Remove references to init_remote_ops and
10263         init_extended_remote_ops.
10264
10265         * remote-sim.c (gdbsim_target): New class.
10266         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
10267         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
10268         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
10269         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
10270         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
10271         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
10272         Refactor as methods of gdbsim_target.
10273         (gdbsim_ops): Now a gdbsim_target.
10274         (init_gdbsim_ops): Delete.
10275         (gdbsim_cntrl_c): Adjust.
10276         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
10277
10278         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
10279         (the_amd64_linux_nat_target): New.
10280         (amd64_linux_fetch_inferior_registers)
10281         (amd64_linux_store_inferior_registers): Refactor as methods of
10282         amd64_linux_nat_target.
10283         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
10284         * i386-linux-nat.c: Don't include "linux-nat.h".
10285         (i386_linux_nat_target): New class.
10286         (the_i386_linux_nat_target): New.
10287         (i386_linux_fetch_inferior_registers)
10288         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
10289         as methods of i386_linux_nat_target.
10290         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
10291         * inf-child.c (inf_child_ops): Delete.
10292         (inf_child_fetch_inferior_registers)
10293         (inf_child_store_inferior_registers): Delete.
10294         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
10295         methods of inf_child_target.
10296         (inf_child_target::supports_terminal_ours)
10297         (inf_child_target::terminal_init)
10298         (inf_child_target::terminal_inferior)
10299         (inf_child_target::terminal_ours_for_output)
10300         (inf_child_target::terminal_ours, inf_child_target::interrupt)
10301         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
10302         New.
10303         (inf_child_open, inf_child_disconnect, inf_child_close)
10304         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
10305         (inf_child_post_startup_inferior, inf_child_can_run)
10306         (inf_child_pid_to_exec_file): Refactor as methods of
10307         inf_child_target.
10308         (inf_child_follow_fork): Delete.
10309         (inf_child_target::can_create_inferior)
10310         (inf_child_target::can_attach): New.
10311         (inf_child_target::has_all_memory, inf_child_target::has_memory)
10312         (inf_child_target::has_stack, inf_child_target::has_registers)
10313         (inf_child_target::has_execution): New.
10314         (inf_child_fileio_open, inf_child_fileio_pwrite)
10315         (inf_child_fileio_pread, inf_child_fileio_fstat)
10316         (inf_child_fileio_close, inf_child_fileio_unlink)
10317         (inf_child_fileio_readlink, inf_child_use_agent)
10318         (inf_child_can_use_agent): Refactor as methods of
10319         inf_child_target.
10320         (return_zero, inf_child_target): Delete.
10321         (inf_child_target::inf_child_target): New.
10322         * inf-child.h: Include "target.h".
10323         (inf_child_target): Delete function prototype.
10324         (inf_child_target): New class.
10325         (inf_child_open_target, inf_child_mourn_inferior)
10326         (inf_child_maybe_unpush_target): Delete.
10327         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
10328         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
10329         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
10330         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
10331         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
10332         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
10333         (inf_ptrace_wait, inf_ptrace_xfer_partial)
10334         (inf_ptrace_thread_alive, inf_ptrace_files_info)
10335         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
10336         methods of inf_ptrace_target.
10337         (inf_ptrace_target): Delete function.
10338         * inf-ptrace.h: Include "inf-child.h".
10339         (inf_ptrace_target): Delete function declaration.
10340         (inf_ptrace_target): New class.
10341         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
10342         * linux-nat.c (linux_target): New.
10343         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
10344         (linux_nat_target::~linux_nat_target): New.
10345         (linux_child_post_attach, linux_child_post_startup_inferior)
10346         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
10347         (linux_child_remove_fork_catchpoint)
10348         (linux_child_insert_vfork_catchpoint)
10349         (linux_child_remove_vfork_catchpoint)
10350         (linux_child_insert_exec_catchpoint)
10351         (linux_child_remove_exec_catchpoint)
10352         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
10353         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
10354         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
10355         (linux_nat_stopped_data_address)
10356         (linux_nat_stopped_by_sw_breakpoint)
10357         (linux_nat_supports_stopped_by_sw_breakpoint)
10358         (linux_nat_stopped_by_hw_breakpoint)
10359         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
10360         (linux_nat_kill, linux_nat_mourn_inferior)
10361         (linux_nat_xfer_partial, linux_nat_thread_alive)
10362         (linux_nat_update_thread_list, linux_nat_pid_to_str)
10363         (linux_nat_thread_name, linux_child_pid_to_exec_file)
10364         (linux_child_static_tracepoint_markers_by_strid)
10365         (linux_nat_is_async_p, linux_nat_can_async_p)
10366         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
10367         (linux_nat_supports_multi_process)
10368         (linux_nat_supports_disable_randomization, linux_nat_async)
10369         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
10370         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
10371         (linux_nat_fileio_open, linux_nat_fileio_readlink)
10372         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
10373         methods of linux_nat_target.
10374         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
10375         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
10376         parameter.
10377         (check_stopped_by_watchpoint): Adjust.
10378         (linux_xfer_partial): Delete.
10379         (linux_target_install_ops, linux_target, linux_nat_add_target):
10380         Delete.
10381         (linux_nat_target::linux_nat_target): New.
10382         * linux-nat.h: Include "inf-ptrace.h".
10383         (linux_nat_target): New.
10384         (linux_target, linux_target_install_ops, linux_nat_add_target):
10385         Delete function declarations.
10386         (linux_target): Declare global.
10387         * linux-thread-db.c (thread_db_target): New.
10388         (thread_db_target::thread_db_target): New.
10389         (thread_db_ops): Delete.
10390         (the_thread_db_target): New.
10391         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
10392         (thread_db_update_thread_list, thread_db_pid_to_str)
10393         (thread_db_extra_thread_info)
10394         (thread_db_thread_handle_to_thread_info)
10395         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
10396         (thread_db_resume): Refactor as methods of thread_db_target.
10397         (init_thread_db_ops): Delete.
10398         (_initialize_thread_db): Remove reference to init_thread_db_ops.
10399         * x86-linux-nat.c: Don't include "linux-nat.h".
10400         (super_post_startup_inferior): Delete.
10401         (x86_linux_nat_target::~x86_linux_nat_target): New.
10402         (x86_linux_child_post_startup_inferior)
10403         (x86_linux_read_description, x86_linux_enable_btrace)
10404         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
10405         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
10406         methods of x86_linux_nat_target.
10407         (x86_linux_create_target): Delete.  Bits folded ...
10408         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
10409         pointer.
10410         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
10411         (x86_linux_nat_target): New class.
10412         (x86_linux_create_target): Delete.
10413         (x86_linux_add_target): Now takes a linux_nat_target pointer.
10414         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
10415         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
10416         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
10417         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
10418         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
10419         make extern.
10420         (x86_use_watchpoints): Delete.
10421         * x86-nat.h: Include "breakpoint.h" and "target.h".
10422         (x86_use_watchpoints): Delete.
10423         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
10424         (x86_stopped_by_watchpoint, x86_stopped_data_address)
10425         (x86_insert_watchpoint, x86_remove_watchpoint)
10426         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
10427         (x86_stopped_by_hw_breakpoint): New declarations.
10428         (x86_nat_target): New template class.
10429
10430         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
10431         (the_ppc_linux_nat_target): New.
10432         (ppc_linux_fetch_inferior_registers)
10433         (ppc_linux_can_use_hw_breakpoint)
10434         (ppc_linux_region_ok_for_hw_watchpoint)
10435         (ppc_linux_ranged_break_num_registers)
10436         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
10437         (ppc_linux_insert_mask_watchpoint)
10438         (ppc_linux_remove_mask_watchpoint)
10439         (ppc_linux_can_accel_watchpoint_condition)
10440         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
10441         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
10442         (ppc_linux_watchpoint_addr_within_range)
10443         (ppc_linux_masked_watch_num_registers)
10444         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
10445         (ppc_linux_read_description): Refactor as methods of
10446         ppc_linux_nat_target.
10447         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
10448
10449         * procfs.c (procfs_xfer_partial): Delete forward declaration.
10450         (procfs_target): New class.
10451         (the_procfs_target): New.
10452         (procfs_target): Delete function.
10453         (procfs_auxv_parse, procfs_attach, procfs_detach)
10454         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
10455         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
10456         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
10457         (procfs_create_inferior, procfs_update_thread_list)
10458         (procfs_thread_alive, procfs_pid_to_str)
10459         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
10460         (procfs_stopped_data_address, procfs_insert_watchpoint)
10461         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
10462         (proc_find_memory_regions, procfs_info_proc)
10463         (procfs_make_note_section): Refactor as methods of procfs_target.
10464         (_initialize_procfs): Adjust.
10465         * sol-thread.c (sol_thread_target): New class.
10466         (sol_thread_ops): Now a sol_thread_target.
10467         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
10468         (sol_thread_fetch_registers, sol_thread_store_registers)
10469         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
10470         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
10471         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
10472         (init_sol_thread_ops): Delete.
10473         (_initialize_sol_thread): Adjust.  Remove references to
10474         init_sol_thread_ops and complete_target_initialization.
10475
10476         * windows-nat.c (windows_nat_target): New class.
10477         (windows_fetch_inferior_registers)
10478         (windows_store_inferior_registers, windows_resume, windows_wait)
10479         (windows_attach, windows_detach, windows_pid_to_exec_file)
10480         (windows_files_info, windows_create_inferior)
10481         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
10482         (windows_close, windows_pid_to_str, windows_xfer_partial)
10483         (windows_get_tib_address, windows_get_ada_task_ptid)
10484         (windows_thread_name, windows_thread_alive): Refactor as
10485         windows_nat_target methods.
10486         (do_initial_windows_stuff): Adjust.
10487         (windows_target): Delete function.
10488         (_initialize_windows_nat): Adjust.
10489
10490         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
10491         (darwin_mourn_inferior, darwin_kill_inferior)
10492         (darwin_create_inferior, darwin_attach, darwin_detach)
10493         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
10494         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
10495         (darwin_supports_multi_process): Refactor as darwin_nat_target
10496         methods.
10497         (darwin_resume_to, darwin_files_info): Delete.
10498         (_initialize_darwin_inferior): Rename to ...
10499         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
10500         * darwin-nat.h: Include "inf-child.h".
10501         (darwin_nat_target): New class.
10502         (darwin_complete_target): Delete.
10503         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
10504         (darwin_target): New.
10505         (i386_darwin_fetch_inferior_registers)
10506         (i386_darwin_store_inferior_registers): Refactor as methods of
10507         darwin_nat_target.
10508         (darwin_complete_target): Delete, with ...
10509         (_initialize_i386_darwin_nat): ... bits factored out here.
10510
10511         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
10512         (the_alpha_linux_nat_target): New.
10513         (alpha_linux_register_u_offset): Refactor as
10514         alpha_linux_nat_target method.
10515         (_initialize_alpha_linux_nat): Adjust.
10516         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
10517         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10518         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
10519         methods of linux_nat_trad_target.
10520         (linux_trad_target): Delete.
10521         * linux-nat-trad.h (linux_trad_target): Delete function.
10522         (linux_nat_trad_target): New class.
10523         * mips-linux-nat.c (mips_linux_nat_target): New class.
10524         (super_fetch_registers, super_store_registers, super_close):
10525         Delete.
10526         (the_mips_linux_nat_target): New.
10527         (mips64_linux_regsets_fetch_registers)
10528         (mips64_linux_regsets_store_registers)
10529         (mips64_linux_fetch_registers, mips64_linux_store_registers)
10530         (mips_linux_register_u_offset, mips_linux_read_description)
10531         (mips_linux_can_use_hw_breakpoint)
10532         (mips_linux_stopped_by_watchpoint)
10533         (mips_linux_stopped_data_address)
10534         (mips_linux_region_ok_for_hw_watchpoint)
10535         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
10536         (mips_linux_close): Refactor as methods of mips_linux_nat.
10537         (_initialize_mips_linux_nat): Adjust to C++ification.
10538
10539         * aix-thread.c (aix_thread_target): New class.
10540         (aix_thread_ops): Now an aix_thread_target.
10541         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
10542         (aix_thread_fetch_registers, aix_thread_store_registers)
10543         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
10544         (aix_thread_thread_alive, aix_thread_pid_to_str)
10545         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
10546         Refactor as methods of aix_thread_target.
10547         (init_aix_thread_ops): Delete.
10548         (_initialize_aix_thread): Remove references to init_aix_thread_ops
10549         and complete_target_initialization.
10550         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
10551         (rs6000_nat_target): New class.
10552         (the_rs6000_nat_target): New.
10553         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
10554         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
10555         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
10556         (super_create_inferior): Delete.
10557         (_initialize_rs6000_nat): Adjust to C++ification.
10558
10559         * arm-linux-nat.c (arm_linux_nat_target): New class.
10560         (the_arm_linux_nat_target): New.
10561         (arm_linux_fetch_inferior_registers)
10562         (arm_linux_store_inferior_registers, arm_linux_read_description)
10563         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
10564         (arm_linux_remove_hw_breakpoint)
10565         (arm_linux_region_ok_for_hw_watchpoint)
10566         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
10567         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
10568         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
10569         arm_linux_nat_target.
10570         (_initialize_arm_linux_nat): Adjust to C++ification.
10571
10572         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
10573         (the_aarch64_linux_nat_target): New.
10574         (aarch64_linux_fetch_inferior_registers)
10575         (aarch64_linux_store_inferior_registers)
10576         (aarch64_linux_child_post_startup_inferior)
10577         (aarch64_linux_read_description)
10578         (aarch64_linux_can_use_hw_breakpoint)
10579         (aarch64_linux_insert_hw_breakpoint)
10580         (aarch64_linux_remove_hw_breakpoint)
10581         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
10582         (aarch64_linux_region_ok_for_hw_watchpoint)
10583         (aarch64_linux_stopped_data_address)
10584         (aarch64_linux_stopped_by_watchpoint)
10585         (aarch64_linux_watchpoint_addr_within_range)
10586         (aarch64_linux_can_do_single_step): Refactor as methods of
10587         aarch64_linux_nat_target.
10588         (super_post_startup_inferior): Delete.
10589         (_initialize_aarch64_linux_nat): Adjust to C++ification.
10590
10591         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
10592         (the_hppa_linux_nat_target): New.
10593         (hppa_linux_fetch_inferior_registers)
10594         (hppa_linux_store_inferior_registers): Refactor as methods of
10595         hppa_linux_nat_target.
10596         (_initialize_hppa_linux_nat): Adjust to C++ification.
10597
10598         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
10599         (the_ia64_linux_nat_target): New.
10600         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
10601         (ia64_linux_stopped_data_address)
10602         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
10603         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
10604         ia64_linux_nat_target methods.
10605         (super_xfer_partial): Delete.
10606         (_initialize_ia64_linux_nat): Adjust to C++ification.
10607
10608         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
10609         (the_m32r_linux_nat_target): New.
10610         (m32r_linux_fetch_inferior_registers)
10611         (m32r_linux_store_inferior_registers): Refactor as
10612         m32r_linux_nat_target methods.
10613         (_initialize_m32r_linux_nat): Adjust to C++ification.
10614
10615         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
10616         (the_m68k_linux_nat_target): New.
10617         (m68k_linux_fetch_inferior_registers)
10618         (m68k_linux_store_inferior_registers): Refactor as
10619         m68k_linux_nat_target methods.
10620         (_initialize_m68k_linux_nat): Adjust to C++ification.
10621
10622         * s390-linux-nat.c (s390_linux_nat_target): New class.
10623         (the_s390_linux_nat_target): New.
10624         (s390_linux_fetch_inferior_registers)
10625         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
10626         (s390_insert_watchpoint, s390_remove_watchpoint)
10627         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
10628         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
10629         (s390_auxv_parse, s390_read_description): Refactor as methods of
10630         s390_linux_nat_target.
10631         (_initialize_s390_nat): Adjust to C++ification.
10632
10633         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
10634         (the_sparc_linux_nat_target): New.
10635         (_initialize_sparc_linux_nat): Adjust to C++ification.
10636         * sparc-nat.c (sparc_fetch_inferior_registers)
10637         (sparc_store_inferior_registers): Remove target_ops parameter.
10638         * sparc-nat.h (sparc_fetch_inferior_registers)
10639         (sparc_store_inferior_registers): Remove target_ops parameter.
10640         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
10641         (the_sparc64_linux_nat_target): New.
10642         (_initialize_sparc64_linux_nat): Adjust to C++ification.
10643
10644         * spu-linux-nat.c (spu_linux_nat_target): New class.
10645         (the_spu_linux_nat_target): New.
10646         (spu_child_post_startup_inferior, spu_child_post_attach)
10647         (spu_child_wait, spu_fetch_inferior_registers)
10648         (spu_store_inferior_registers, spu_xfer_partial)
10649         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
10650         methods.
10651         (_initialize_spu_nat): Adjust to C++ification.
10652
10653         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
10654         (the_tilegx_linux_nat_target): New.
10655         (fetch_inferior_registers, store_inferior_registers):
10656         Refactor as methods.
10657         (_initialize_tile_linux_nat): Adjust to C++ification.
10658
10659         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
10660         (the_xtensa_linux_nat_target): New.
10661         (xtensa_linux_fetch_inferior_registers)
10662         (xtensa_linux_store_inferior_registers): Refactor as
10663         xtensa_linux_nat_target methods.
10664         (_initialize_xtensa_linux_nat): Adjust to C++ification.
10665
10666         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
10667         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
10668         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
10669         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
10670         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
10671         (fbsd_stopped_by_sw_breakpoint)
10672         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
10673         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
10674         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
10675         (fbsd_post_startup_inferior, fbsd_post_attach)
10676         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
10677         (fbsd_set_syscall_catchpoint)
10678         (super_xfer_partial, super_resume, super_wait)
10679         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
10680         (fbsd_handle_debug_trap): Remove target_ops parameter.
10681         (fbsd_nat_add_target): Delete.
10682         * fbsd-nat.h: Include "inf-ptrace.h".
10683         (fbsd_nat_add_target): Delete.
10684         (USE_SIGTRAP_SIGINFO): Define.
10685         (fbsd_nat_target): New class.
10686
10687         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
10688         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
10689         (amd64bsd_target): Delete.
10690         * amd64-bsd-nat.h: New file.
10691         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
10692         "x86-bsd-nat.h".
10693         (amd64_fbsd_nat_target): New class.
10694         (the_amd64_fbsd_nat_target): New.
10695         (amd64fbsd_read_description): Refactor as method of
10696         amd64_fbsd_nat_target.
10697         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10698         (_initialize_amd64fbsd_nat): Adjust to C++ification.
10699         * amd64-nat.h (amd64bsd_target): Delete function declaration.
10700         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
10701         (i386bsd_store_inferior_registers): Remove target_ops parameter.
10702         (i386bsd_target): Delete.
10703         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
10704         (i386bsd_fetch_inferior_registers)
10705         (i386bsd_store_inferior_registers): Declare.
10706         (i386_bsd_nat_target): New class.
10707         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
10708         (the_i386_fbsd_nat_target): New.
10709         (i386fbsd_resume, i386fbsd_read_description): Refactor as
10710         i386_fbsd_nat_target methods.
10711         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10712         (_initialize_i386fbsd_nat): Adjust to C++ification.
10713         * x86-bsd-nat.c (super_mourn_inferior): Delete.
10714         (x86bsd_mourn_inferior, x86bsd_target): Delete.
10715         (_initialize_x86_bsd_nat): Adjust to C++ification.
10716         * x86-bsd-nat.h: Include "x86-nat.h".
10717         (x86bsd_target): Delete declaration.
10718         (x86bsd_nat_target): New class.
10719
10720         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
10721         (the_aarch64_fbsd_nat_target): New.
10722         (aarch64_fbsd_fetch_inferior_registers)
10723         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
10724         aarch64_fbsd_nat_target.
10725         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
10726         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
10727         (the_alpha_bsd_nat_target): New.
10728         (alphabsd_fetch_inferior_registers)
10729         (alphabsd_store_inferior_registers): Refactor as
10730         alpha_bsd_nat_target methods.
10731         (_initialize_alphabsd_nat): Refactor as methods of
10732         alpha_bsd_nat_target.
10733         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
10734         (the_amd64_nbsd_nat_target): New.
10735         (_initialize_amd64nbsd_nat): Adjust to C++ification.
10736         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
10737         (the_amd64_obsd_nat_target): New.
10738         (_initialize_amd64obsd_nat): Adjust to C++ification.
10739         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
10740         (the_arm_fbsd_nat_target): New.
10741         (arm_fbsd_fetch_inferior_registers)
10742         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
10743         (_initialize_arm_fbsd_nat): Refactor as methods of
10744         arm_fbsd_nat_target.
10745         (_initialize_arm_fbsd_nat): Adjust to C++ification.
10746         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
10747         (the_arm_netbsd_nat_target): New.
10748         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
10749         arm_netbsd_nat_target.
10750         (_initialize_arm_netbsd_nat): Adjust to C++ification.
10751         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
10752         (the_hppa_nbsd_nat_target): New.
10753         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
10754         hppa_nbsd_nat_target methods.
10755         (_initialize_hppanbsd_nat): Adjust to C++ification.
10756         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
10757         (the_hppa_obsd_nat_target): New.
10758         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
10759         methods of hppa_obsd_nat_target.
10760         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
10761         add_target.
10762         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
10763         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
10764         add_target.
10765         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
10766         (_initialize_i386obsd_nat): Use add_target.
10767         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
10768         (the_m68k_bsd_nat_target): New.
10769         (m68kbsd_fetch_inferior_registers)
10770         (m68kbsd_store_inferior_registers): Refactor as methods of
10771         m68k_bsd_nat_target.
10772         (_initialize_m68kbsd_nat): Adjust to C++ification.
10773         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
10774         (the_mips_fbsd_nat_target): New.
10775         (mips_fbsd_fetch_inferior_registers)
10776         (mips_fbsd_store_inferior_registers): Refactor as methods of
10777         mips_fbsd_nat_target.
10778         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
10779         add_target.
10780         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
10781         (the_mips_nbsd_nat_target): New.
10782         (mipsnbsd_fetch_inferior_registers)
10783         (mipsnbsd_store_inferior_registers): Refactor as methods of
10784         mips_nbsd_nat_target.
10785         (_initialize_mipsnbsd_nat): Adjust to C++ification.
10786         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
10787         (the_mips64_obsd_nat_target): New.
10788         (mips64obsd_fetch_inferior_registers)
10789         (mips64obsd_store_inferior_registers): Refactor as methods of
10790         mips64_obsd_nat_target.
10791         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
10792         add_target.
10793         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
10794         nbsd_nat_target.
10795         * nbsd-nat.h: Include "inf-ptrace.h".
10796         (nbsd_nat_target): New class.
10797         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
10798         (obsd_wait): Refactor as methods of obsd_nat_target.
10799         (obsd_add_target): Delete.
10800         * obsd-nat.h: Include "inf-ptrace.h".
10801         (obsd_nat_target): New class.
10802         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
10803         (the_ppc_fbsd_nat_target): New.
10804         (ppcfbsd_fetch_inferior_registers)
10805         (ppcfbsd_store_inferior_registers): Refactor as methods of
10806         ppc_fbsd_nat_target.
10807         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
10808         add_target.
10809         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
10810         (the_ppc_nbsd_nat_target): New.
10811         (ppcnbsd_fetch_inferior_registers)
10812         (ppcnbsd_store_inferior_registers): Refactor as methods of
10813         ppc_nbsd_nat_target.
10814         (_initialize_ppcnbsd_nat): Adjust to C++ification.
10815         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
10816         (the_ppc_obsd_nat_target): New.
10817         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
10818         methods of ppc_obsd_nat_target.
10819         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
10820         add_target.
10821         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
10822         (the_sh_nbsd_nat_target): New.
10823         (shnbsd_fetch_inferior_registers)
10824         (shnbsd_store_inferior_registers): Refactor as methods of
10825         sh_nbsd_nat_target.
10826         (_initialize_shnbsd_nat): Adjust to C++ification.
10827         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
10828         (inf_ptrace_xfer_partial): Delete.
10829         (sparc_xfer_partial, sparc_target): Delete.
10830         * sparc-nat.h (sparc_fetch_inferior_registers)
10831         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
10832         (sparc_target): Delete function declaration.
10833         (sparc_target): New template class.
10834         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
10835         (_initialize_sparcnbsd_nat): Adjust to C++ification.
10836         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
10837         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
10838         add_target.
10839         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
10840         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
10841         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
10842         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
10843         add_target.
10844         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
10845         (the_vax_bsd_nat_target): New.
10846         (vaxbsd_fetch_inferior_registers)
10847         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
10848         methods.
10849         (_initialize_vaxbsd_nat): Adjust to C++ification.
10850
10851         * bsd-kvm.c (bsd_kvm_target): New class.
10852         (bsd_kvm_ops): Now a bsd_kvm_target.
10853         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
10854         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
10855         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
10856         bsd_kvm_target.
10857         (bsd_kvm_return_one): Delete.
10858         (bsd_kvm_add_target): Adjust to C++ification.
10859
10860         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
10861         (nto_procfs_target_procfs): New classes.
10862         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
10863         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
10864         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
10865         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
10866         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
10867         (procfs_remove_hw_breakpoint, procfs_resume)
10868         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
10869         (procfs_kill_inferior, procfs_store_registers)
10870         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
10871         as methods of nto_procfs_target.
10872         (nto_procfs_ops): Now an nto_procfs_target_procfs.
10873         (nto_native_ops): Delete.
10874         (procfs_open, procfs_native_open): Delete.
10875         (nto_native_ops): Now an nto_procfs_target_native.
10876         (init_procfs_targets): Adjust to C++ification.
10877         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
10878         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
10879         Refactor as methods of nto_procfs_target.
10880
10881         * go32-nat.c (go32_nat_target): New class.
10882         (the_go32_nat_target): New.
10883         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
10884         (go32_store_registers, go32_xfer_partial, go32_files_info)
10885         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
10886         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
10887         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
10888         (go32_pid_to_str): Refactor as methods of go32_nat_target.
10889         (go32_target): Delete.
10890         (_initialize_go32_nat): Adjust to C++ification.
10891
10892         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
10893         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
10894         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
10895         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
10896         gnu_nat_target.
10897         (gnu_target): Delete.
10898         * gnu-nat.h (gnu_target): Delete.
10899         (gnu_nat_target): New class.
10900         * i386-gnu-nat.c (gnu_base_target): New.
10901         (i386_gnu_nat_target): New class.
10902         (the_i386_gnu_nat_target): New.
10903         (_initialize_i386gnu_nat): Adjust to C++ification.
10904
10905 2018-05-02  Pedro Alves  <palves@redhat.com>
10906
10907         * bfd-target.c (target_bfd_xclose): Rename to ...
10908         (target_bfd_close): ... this.
10909         (target_bfd_reopen): Adjust.
10910         * target.c (target_close): Remove references to to_xclose.
10911         * target.h (target_ops::to_xclose): Delete.
10912         (target_ops::to_close): Update comments.
10913
10914 2018-05-02  Pedro Alves  <palves@redhat.com>
10915
10916         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
10917         "linux-nat.h".
10918         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
10919         * inf-ptrace.c (inf_ptrace_register_u_offset)
10920         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10921         (inf_ptrace_store_register, inf_ptrace_store_registers)
10922         (inf_ptrace_trad_target): Move to ...
10923         * linux-nat-trad.c: ... this new file.
10924         * linux-nat-trad.h: New file.
10925         * linux-nat.c (linux_target_install_ops): Make extern.
10926         (linux_trad_target): Delete.
10927         * linux-nat.h (linux_trad_target): Delete declaration.
10928         (linux_target_install_ops): Declare.
10929         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
10930         "linux-nat.h".
10931
10932 2018-05-02  Pedro Alves  <palves@redhat.com>
10933
10934         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10935         procfs_target/add_target here.
10936         * procfs.c (procfs_target): Make static.
10937         (_initialize_procfs): Call add_target here.
10938         * procfs.h (struct target_ops): Remove forward declaration.
10939         (procfs_target): Remove declaration.
10940         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
10941
10942 2018-05-02  Pedro Alves  <palves@redhat.com>
10943
10944         * procfs.c (procfs_stopped_by_watchpoint)
10945         (procfs_insert_watchpoint, procfs_remove_watchpoint)
10946         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
10947         Forward declare.
10948         (procfs_use_watchpoints): Delete, move contents...
10949         (procfs_target): ... here.
10950         * procfs.h (procfs_use_watchpoints): Delete declaration.
10951         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10952         procfs_use_watchpoints.
10953         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
10954         procfs_use_watchpoints.
10955
10956 2018-05-02  Tom Tromey  <tom@tromey.com>
10957
10958         PR python/20084:
10959         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
10960         and var_zuinteger_unlimited.
10961         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
10962         and PARAM_ZUINTEGER_UNLIMITED.
10963         (set_parameter_value): Handle var_zuinteger and
10964         var_zuinteger_unlimited.
10965         (add_setshow_generic): Likewise.
10966         (parmpy_init): Likewise.
10967
10968 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
10969
10970         PR rust/23124
10971         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
10972         pointer is not null before dereferencing it.
10973
10974 2018-04-30  Tom Tromey  <tom@tromey.com>
10975
10976         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
10977         is_mi_like_p.
10978
10979 2018-04-30  Tom Tromey  <tom@tromey.com>
10980
10981         * breakpoint.c (mention): Remove use of is_mi_like_p.
10982         (print_mention_ranged_breakpoint): Likewise.
10983         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
10984         of is_mi_like_p.
10985
10986 2018-04-30  Tom Tromey  <tom@tromey.com>
10987
10988         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
10989
10990 2018-04-30  Tom Tromey  <tom@tromey.com>
10991
10992         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
10993         (info_spu_event_command): Remove some uses of is_mi_like_p.
10994
10995 2018-04-30  Tom Tromey  <tom@tromey.com>
10996
10997         * python/py-framefilter.c (py_print_single_arg)
10998         (enumerate_locals, py_print_args, py_print_frame): Remove some
10999         uses of is_mi_like_p.
11000
11001 2018-04-30  Tom Tromey  <tom@tromey.com>
11002
11003         * ui-out.c: Update.
11004         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
11005         * ui-out.h (ui_out::is_mi_like_p): Now const.
11006         (ui_out::do_is_mi_like_p): Now const.
11007         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
11008
11009 2018-04-30  Tom Tromey  <tom@tromey.com>
11010
11011         * varobj.c (varobj_set_visualizer): Use new_reference.
11012         * python/python.c (gdbpy_decode_line): Use new_reference.
11013         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
11014         new_reference.
11015
11016 2018-04-30  Tom Tromey  <tom@tromey.com>
11017
11018         * varobj.c (install_new_value): Use new_reference.
11019         * value.h (value_incref): Return void.  Swap intro comment with
11020         value_decref.
11021         * value.c (set_value_parent): Use new_reference.
11022         (value_incref): Return void.  Update intro comment.
11023         (release_value): Use new_reference.
11024         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
11025
11026 2018-04-30  Tom Tromey  <tom@tromey.com>
11027
11028         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
11029         * gdb_bfd.h (new_bfd_ref): Remove.
11030         (gdb_bfd_open): Update comment.
11031         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
11032         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
11033         (gdb_bfd_fdopenr): Use new_reference.
11034         * exec.c (exec_file_attach): Use new_reference.
11035
11036 2018-04-30  Tom Tromey  <tom@tromey.com>
11037
11038         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
11039         method.
11040
11041 2018-04-30  Tom Tromey  <tom@tromey.com>
11042
11043         * jit.c (jit_read_code_entry): Use type_align.
11044         * i386-tdep.c (i386_gdbarch_init): Don't call
11045         set_gdbarch_long_long_align_bit.
11046         * gdbarch.sh: Remove long_long_align_bit.
11047         * gdbarch.c, gdbarch.h: Rebuild.
11048         * arc-tdep.c (arc_type_align): New function.
11049         (arc_gdbarch_init): Use arc_type_align.  Don't call
11050         set_gdbarch_long_long_align_bit.
11051
11052 2018-04-30  Tom Tromey  <tom@tromey.com>
11053
11054         * rust-lang.c (rust_type_alignment): Remove.
11055         (rust_composite_type): Use type_align.
11056
11057 2018-04-30  Tom Tromey  <tom@tromey.com>
11058
11059         * NEWS: Mention Type.align.
11060         * python/py-type.c (typy_get_alignof): New function.
11061         (type_object_getset): Add "alignof".
11062
11063 2018-04-30  Tom Tromey  <tom@tromey.com>
11064
11065         PR exp/17095:
11066         * NEWS: Update.
11067         * std-operator.def (UNOP_ALIGNOF): New operator.
11068         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
11069         New.
11070         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
11071         * c-lang.c (c_op_print_tab): Add alignof.
11072         * c-exp.y (ALIGNOF): New token.
11073         (exp): Add "ALIGNOF" production.
11074         (ident_tokens): Add _Alignof and alignof.
11075
11076 2018-04-30  Tom Tromey  <tom@tromey.com>
11077
11078         * i386-tdep.c (i386_type_align): New function.
11079         (i386_gdbarch_init): Update.
11080         * gdbarch.sh (type_align): New method.
11081         * gdbarch.c, gdbarch.h: Rebuild.
11082         * arch-utils.h (default_type_align): Declare.
11083         * arch-utils.c (default_type_align): New function.
11084         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
11085         (struct type) <align_log2>: New field.
11086         <instance_flags>: Now a bitfield.
11087         (TYPE_RAW_ALIGN): New macro.
11088         (type_align, type_raw_align, set_type_align): Declare.
11089         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
11090         functions.
11091         * dwarf2read.c (quirk_rust_enum): Set type alignment.
11092         (get_alignment, maybe_set_alignment): New functions.
11093         (read_structure_type, read_enumeration_type, read_array_type)
11094         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
11095         (read_subrange_type, read_base_type): Set type alignment.
11096
11097 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
11098
11099         * dwarf2read.c (read_index_from_section): Use bool.
11100
11101 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
11102
11103         PR gdb/22950
11104         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
11105         with #ifdef.
11106
11107 2018-04-29  John Reiser  <jreiser@BitWagon.com>
11108
11109         PR build/22873
11110         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
11111         last step, and do it atomically.
11112
11113 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
11114
11115         * compile/compile-c-types.c (convert_int, convert_float):
11116         Update for C FE v1.
11117
11118 2018-04-27  Tom Tromey  <tom@tromey.com>
11119
11120         PR rust/22545:
11121         * rust-lang.c (rust_inclusive_range_type_p): New function.
11122         (rust_range): Handle inclusive ranges.
11123         (rust_compute_range): Likewise.
11124         * rust-exp.y (struct rust_op) <inclusive>: New field.
11125         (DOTDOTEQ): New constant.
11126         (range_expr): Add "..=" productions.
11127         (operator_tokens): Add "..=" token.
11128         (ast_range): Add "inclusive" parameter.
11129         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
11130         ranges.
11131         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
11132         bounds values.
11133         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
11134         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
11135         Update comments.
11136         * expprint.c (print_subexp_standard): Handle new bounds values.
11137         (dump_subexp_body_standard): Likewise.
11138
11139 2018-04-27  Tom Tromey  <tom@tromey.com>
11140
11141         * configure: Rebuild.
11142         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
11143         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
11144         "OVERRIDE".
11145         (class symbol_needs_eval_context): Likewise.
11146         * dwarf2read.c (mock_mapped_index::symbol_name_count)
11147         (mock_mapped_index::symbol_name_at): Use "override".  Remove
11148         "virtual".
11149         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
11150         "override".
11151         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
11152         * aarch64-tdep.c (instruction_reader::read): Use "override".
11153         (instruction_reader_test::read): Likewise.
11154         * arm-tdep.c (instruction_reader::read): Use "override".
11155         (instruction_reader_thumb::read): Likewise.
11156
11157 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
11158
11159         PR remote/9665
11160         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
11161         instead of remote_send.
11162         (remote_send): Remove.
11163
11164 2018-04-26  Pedro Alves  <palves@redhat.com>
11165
11166         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
11167         find_function_start_sal instead of find_pc_line.
11168
11169 2018-04-26  Pedro Alves  <palves@redhat.com>
11170
11171         * breakpoint.c (set_breakpoint_location_function): Handle
11172         mst_data_gnu_ifunc.
11173         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
11174         * elfread.c (elf_symtab_read): Give data symbols with
11175         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
11176         (elf_rel_plt_read): Update comment.
11177         * linespec.c (convert_linespec_to_sals): Handle
11178         mst_data_gnu_ifunc.
11179         (minsym_found): Handle mst_data_gnu_ifunc.
11180         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
11181         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
11182         * parse.c (find_minsym_type_and_address): Handle
11183         mst_data_gnu_ifunc.
11184         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
11185         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
11186         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
11187         comment.
11188         <mst_data_gnu_ifunc>: New enumerator.
11189
11190 2018-04-26  Pedro Alves  <palves@redhat.com>
11191
11192         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
11193         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
11194         'want_trampoline' parameter by a lookup_msym_prefer parameter.
11195         Handle it.
11196         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
11197         (lookup_minimal_symbol_by_pc): Adjust.
11198         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
11199         (lookup_solib_trampoline_symbol_by_pc): Adjust.
11200         * minsyms.h (lookup_msym_prefer): New enum.
11201         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
11202         parameter by a lookup_msym_prefer parameter.
11203
11204 2018-04-26  Pedro Alves  <palves@redhat.com>
11205
11206         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
11207         ends in "@plt" instead of looking at the symbol's section.
11208
11209 2018-04-26  Pedro Alves  <palves@redhat.com>
11210
11211         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
11212         all references.
11213         (find_pc_partial_function_gnu_ifunc): Rename to ...
11214         (find_pc_partial_function): ... this, and remove references to
11215         'is_gnu_ifunc_p'.
11216         (find_pc_partial_function): Delete old implementation.
11217         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
11218
11219 2018-04-26  Pedro Alves  <palves@redhat.com>
11220
11221         * linespec.c (struct bound_minimal_symbol_search_key): New.
11222         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
11223         skip first line if we found a GNU ifunc minimal symbol by name.
11224         (compare_msymbols): Change parameters to work with a destructured
11225         lhs minsym.
11226         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
11227         functions.
11228
11229 2018-04-26  Pedro Alves  <palves@redhat.com>
11230
11231         * breakpoint.c (set_breakpoint_location_function): Don't resolve
11232         ifunc targets here.  Instead, if we have an ifunc minsym, use its
11233         address/name.
11234         (add_location_to_breakpoint): Store the minsym and the objfile in
11235         the breakpoint location.
11236         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
11237         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
11238         Record the minsym in the sal.
11239         * symtab.h (symtab_and_line) <msymbol>: New field.
11240
11241 2018-04-26  Pedro Alves  <palves@redhat.com>
11242
11243         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
11244         unless we actually resolved the ifunc.
11245
11246 2018-04-26  Pedro Alves  <palves@redhat.com>
11247
11248         * c-exp.y (variable production): Prefer ifunc minsyms over
11249         regular function symbols.
11250         * symtab.c (find_gnu_ifunc): New function.
11251         * minsyms.h (lookup_msym_prefer): New enum.
11252         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
11253         parameter by a lookup_msym_prefer parameter.
11254         * symtab.h (find_gnu_ifunc): New declaration.
11255
11256 2018-04-26  Pedro Alves  <palves@redhat.com>
11257
11258         * blockframe.c (find_gnu_ifunc_target_type): New function.
11259         (find_function_type): New.
11260         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
11261         return a value with a memory address.
11262         (eval_call): For calls to GNU ifunc functions, try to find the
11263         type of the target function from the type that the resolver
11264         returns.
11265         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
11266         symbols.
11267         * infcall.c (find_function_return_type): Delete.
11268         (find_function_addr): Add 'function_type' parameter.  For calls to
11269         GNU ifunc functions, try to find the type of the target function
11270         from the type that the resolver returns, and return it via
11271         FUNCTION_TYPE.
11272         (call_function_by_hand_dummy): Adjust to use the function type
11273         returned by find_function_addr.
11274         (find_function_addr): Add 'function_type' parameter and move
11275         description here.
11276         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
11277         declarations.
11278
11279 2018-04-26  Pedro Alves  <palves@redhat.com>
11280
11281         * c-exp.y (variable production): Skip finding an alias for ifunc
11282         symbols.
11283
11284 2018-04-26  Pedro Alves  <palves@redhat.com>
11285
11286         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
11287
11288 2018-04-25  Pedro Alves  <palves@redhat.com>
11289
11290         * infcmd.c (kill_command): Print the pid as string, not the whole
11291         thread's ptid.  Add comment.  s/has been killed/killed/ in output
11292         message.
11293         * remote.c (remote_detach_1): Print the pid as string, not the
11294         whole thread's ptid.
11295
11296 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
11297             Sergio Durigan Junior  <sergiodj@redhat.com>
11298             Pedro Alves  <palves@redhat.com>
11299
11300         * infcmd.c (kill_command): Print message when inferior has
11301         been killed.
11302         * inferior.c (print_inferior_events): Remove 'static'.  Set as
11303         '1'.
11304         (add_inferior): Improve message printed when
11305         'print_inferior_events' is on.
11306         (exit_inferior): Remove message printed when
11307         'print_inferior_events' is on.
11308         (detach_inferior): Improve message printed when
11309         'print_inferior_events' is on.
11310         (initialize_inferiors): Use 'add_inferior_silent' to set
11311         'current_inferior_'.
11312         * inferior.h (print_inferior_events): Declare here as
11313         'extern'.
11314         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
11315         '[Detaching...]' messages when 'print_inferior_events' is on.
11316         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
11317         as prefix/suffix for messages.  Remove periods.  Fix erroneous
11318         'Detaching after fork from child...', replace it by '... from
11319         parent...'.
11320         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
11321         prefix/suffix when printing 'Detaching...' messages.  Print
11322         them when 'print_inferior_events' is on.
11323         * remote.c (remote_detach_1): Print message when detaching
11324         from inferior and '!is_fork_parent'.
11325
11326 2018-04-24  Tom Tromey  <tom@tromey.com>
11327
11328         * cli-out.h: Reindent.
11329
11330 2018-04-24  Tom Tromey  <tom@tromey.com>
11331
11332         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
11333         (cli_ui_out::do_field_string): Use fputs_filtered.
11334         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
11335
11336 2018-04-23  Tom Tromey  <tom@tromey.com>
11337
11338         * guile/scm-frame.c (gdbscm_frame_read_var): Use
11339         gdb::unique_xmalloc_ptr.
11340
11341 2018-04-23  Tom Tromey  <tom@tromey.com>
11342
11343         * configure: Rebuild.
11344
11345 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
11346
11347         PR gdb/23095
11348         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
11349         prepare_for_testing.  Set normal_bp to r_debug_state if target
11350         is bsd.
11351
11352 2018-04-21  Pedro Alves  <palves@redhat.com>
11353             Rajendra SY  <rajendra.sy@gmail.com>
11354
11355         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
11356         * remote.c (extended_remote_attach): In all-stop mode, mark the
11357         thread as executing.
11358
11359 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
11360
11361         * thread.c (thread_apply_all_command): Fix comment.
11362         (thread_command): Fix comment.
11363
11364 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
11365
11366         * common/tdesc.h (tdesc_create_feature): Remove xml filename
11367         parameter.
11368         * features/aarch64-core.c (create_feature_aarch64_core):
11369         Regenerate.
11370         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
11371         Likewise.
11372         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
11373         Likewise.
11374         * features/i386/32bit-avx512.c
11375         (create_feature_i386_32bit_avx512): Likewise.
11376         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
11377         Likewise.
11378         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
11379         Likewise.
11380         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
11381         Likewise.
11382         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
11383         Likewise.
11384         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
11385         Likewise.
11386         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
11387         Likewise.
11388         * features/i386/64bit-avx512.c
11389         (create_feature_i386_64bit_avx512): Likewise.
11390         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
11391         Likewise.
11392         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
11393         Likewise.
11394         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
11395         Likewise.
11396         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
11397         Likewise.
11398         * features/i386/64bit-segments.c
11399         (create_feature_i386_64bit_segments): Likewise.
11400         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
11401         Likewise.
11402         * features/i386/x32-core.c
11403         (create_feature_i386_x32_core): Likewise.
11404         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
11405         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
11406         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
11407         * target-descriptions.c: In generated code, don't pass xml
11408         filename.
11409
11410 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11411
11412         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
11413         (print_xml_feature::visit_post): Likewise.
11414         (print_xml_feature::visit): Likewise.
11415         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
11416         (print_xml_feature): Add new class.
11417         * regformats/regdat.sh: Null xmltarget on feature targets.
11418         * target-descriptions.c (struct target_desc): Add xmltarget.
11419         (maintenance_check_tdesc_xml_convert): Add unittest function.
11420         (tdesc_get_features_xml): Add function to get xml.
11421         (maintenance_check_xml_descriptions): Test xml generation.
11422         * xml-tdesc.c (string_read_description_xml): Add function.
11423         * xml-tdesc.h (string_read_description_xml): Add declaration.
11424
11425 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11426
11427         * features/Makefile: Add feature marker to targets with new style
11428         target descriptions.
11429         * regformats/aarch64.dat: Regenerate.
11430         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
11431         * regformats/i386/amd64-avx-linux.dat: Likewise.
11432         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
11433         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
11434         * regformats/i386/amd64-linux.dat: Likewise.
11435         * regformats/i386/amd64-mpx-linux.dat: Likewise.
11436         * regformats/i386/amd64.dat: Likewise.
11437         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
11438         * regformats/i386/i386-avx-linux.dat: Likewise.
11439         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
11440         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
11441         * regformats/i386/i386-linux.dat: Likewise.
11442         * regformats/i386/i386-mmx-linux.dat: Likewise.
11443         * regformats/i386/i386-mpx-linux.dat: Likewise.
11444         * regformats/i386/i386.dat: Likewise.
11445         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
11446         * regformats/i386/x32-avx-linux.dat: Likewise.
11447         * regformats/i386/x32-linux.dat: Likewise.
11448         * regformats/tic6x-c62x-linux.dat: Likewise.
11449         * regformats/tic6x-c64x-linux.dat: Likewise.
11450         * regformats/tic6x-c64xp-linux.dat: Likewise.
11451         * regformats/regdat.sh: Parse feature marker.
11452
11453 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11454
11455         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
11456         (tdesc_osabi_name): Likewise.
11457         * target-descriptions.c (tdesc_architecture_name): Add new
11458         function.
11459         (tdesc_osabi_name): Likewise.
11460
11461 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11462
11463         * common/tdesc.c (tdesc_predefined_type): Move to here.
11464         (tdesc_named_type): Likewise.
11465         (tdesc_create_vector): Likewise.
11466         (tdesc_create_struct): Likewise.
11467         (tdesc_set_struct_size): Likewise.
11468         (tdesc_create_union): Likewise.
11469         (tdesc_create_flags): Likewise.
11470         (tdesc_create_enum): Likewise.
11471         (tdesc_add_field): Likewise.
11472         (tdesc_add_typed_bitfield): Likewise.
11473         (tdesc_add_bitfield): Likewise.
11474         (tdesc_add_flag): Likewise.
11475         (tdesc_add_enum_value): Likewise.
11476         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
11477         (struct tdesc_type_vector): Likewise.
11478         (struct tdesc_type_field): Likewise.
11479         (struct tdesc_type_with_fields): Likewise.
11480         (tdesc_create_enum): Add declaration.
11481         (tdesc_add_typed_bitfield): Likewise.
11482         (tdesc_add_enum_value): Likewise.
11483         * target-descriptions.c (tdesc_type_field): Move from here.
11484         (tdesc_type_builtin): Likewise.
11485         (tdesc_type_vector): Likewise.
11486         (tdesc_type_with_fields): Likewise.
11487         (tdesc_predefined_types): Likewise.
11488         (tdesc_named_type): Likewise.
11489         (tdesc_create_vector): Likewise.
11490         (tdesc_create_struct): Likewise.
11491         (tdesc_set_struct_size): Likewise.
11492         (tdesc_create_union): Likewise.
11493         (tdesc_create_flags): Likewise.
11494         (tdesc_create_enum): Likewise.
11495         (tdesc_add_field): Likewise.
11496         (tdesc_add_typed_bitfield): Likewise.
11497         (tdesc_add_bitfield): Likewise.
11498         (tdesc_add_flag): Likewise.
11499         (tdesc_add_enum_value): Likewise.
11500         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
11501         (tdesc_add_typed_bitfield): Likewise.
11502         (tdesc_add_enum_value): Likewise.
11503
11504 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11505
11506         * common/tdesc.c (tdesc_feature::accept): Move to here.
11507         (tdesc_feature::operator==): Likewise.
11508         (tdesc_create_reg): Likewise.
11509         * common/tdesc.h (tdesc_type_kind): Likewise.
11510         (struct tdesc_type): Likewise.
11511         (struct tdesc_feature): Likewise.
11512         * regformats/regdat.sh: Create a feature.
11513         * target-descriptions.c (tdesc_type_kind): Move from here.
11514         (tdesc_type): Likewise.
11515         (tdesc_type_up): Likewise.
11516         (tdesc_feature): Likewise.
11517         (tdesc_create_reg): Likewise.
11518
11519 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11520
11521         * Makefile.in: Add arch/tdesc.c
11522         * common/tdesc.c: New file.
11523         * common/tdesc.h (tdesc_element_visitor): Move to here.
11524         (tdesc_element): Likewise.
11525         (tdesc_reg): Likewise.
11526         (tdesc_reg_up): Likewise.
11527         * regformats/regdef.h (reg): Add offset to constructors.
11528         * target-descriptions.c (tdesc_element_visitor): Move from here.
11529         (tdesc_element): Likewise.
11530         (tdesc_reg): Likewise.
11531         (tdesc_reg_up): Likewise.
11532
11533 2018-04-17  Tom Tromey  <tom@tromey.com>
11534
11535         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
11536         discriminant field.
11537
11538 2018-04-17  Tom Tromey  <tom@tromey.com>
11539
11540         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
11541
11542 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11543
11544         * symtab.c (print_symbol_info): Skip printing filename and line
11545         number when `last' is NULL.
11546         (symtab_symbol_info): Use empty string instead of NULL for first
11547         invocation of print_symbol_info.
11548         (rbreak_command): Pass NULL to `last' parameter of
11549         print_symbol_info.
11550
11551 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
11552
11553         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
11554         instead of nullptr.
11555
11556 2018-04-16  Pedro Alves  <palves@redhat.com>
11557
11558         * MAINTAINERS (sh): Remove.
11559         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
11560         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
11561         (ALLDEPFILES): Remove sh64-tdep.c.
11562         * NEWS: Mentions that support for SH-5/SH64 is removed.
11563         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
11564         (sh*-*-openbsd*): Ditto.
11565         (sh64-*-elf*): Remove.
11566         (sh*): Remove.
11567         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
11568         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
11569         * sh-tdep.c: No longer include "sh64-tdep.h".
11570         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
11571         * sh64-tdep.c, sh64-tdep.h: Remove files.
11572
11573 2018-04-16  Pedro Alves  <palves@redhat.com>
11574
11575         * MAINTAINERS: Remove m88k.
11576         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
11577         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
11578         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
11579         * NEWS: Mention that support for m88k was removed.
11580         * configure.host (m88*-*-*): Remove support.
11581         * configure.nat (m88k-*-*): Remove support.
11582         * configure.tgt (m88*-*-openbsd*): Remove.
11583         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
11584
11585 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
11586
11587         * configure.tgt (x86_tobjs): New variable.
11588         (amd64_tobjs, i386_tobjs): Use it.
11589
11590 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11591
11592         * symtab.c (print_symbol_info): Precede the symbol definition by
11593         the line number when available.
11594         * NEWS: Advertise this enhancement.
11595
11596 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11597
11598         * NEWS (New options): announce set/show record btrace cpu.
11599         * btrace.c: Include record-btrace.h.
11600         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
11601         the vendor is unknown.
11602         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
11603         Maybe overwrite the btrace configuration's cpu.
11604         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
11605         (btrace_fetch): Add cpu parameter.  Update callers.
11606         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
11607         Maybe overwrite the btrace configuration's cpu.  Skip enabling
11608         errata workarounds if the vendor is unknown.
11609         * python/py-record-btrace.c: Include record-btrace.h.
11610         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
11611         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
11612         * record-btrace.c (record_btrace_cpu_state_kind): New.
11613         (record_btrace_cpu): New.
11614         (set_record_btrace_cpu_cmdlist): New.
11615         (record_btrace_get_cpu): New.
11616         (require_btrace_thread, record_btrace_info)
11617         (record_btrace_resume_thread): Call record_btrace_get_cpu.
11618         (cmd_set_record_btrace_cpu_none): New.
11619         (cmd_set_record_btrace_cpu_auto): New.
11620         (cmd_set_record_btrace_cpu): New.
11621         (cmd_show_record_btrace_cpu): New.
11622         (_initialize_record_btrace): Initialize set/show record btrace cpu
11623         commands.
11624         * record-btrace.h (record_btrace_get_cpu): New.
11625
11626 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11627
11628         * record.c (set_record_command): Fix typo in message.
11629
11630 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11631
11632         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
11633
11634 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11635
11636         * infrun.c (process_event_stop_test): Call
11637         gdbarch_in_indirect_branch_thunk.
11638         * gdbarch.sh (in_indirect_branch_thunk): New.
11639         * gdbarch.c: Regenerated.
11640         * gdbarch.h: Regenerated.
11641         * x86-tdep.h: New.
11642         * x86-tdep.c: New.
11643         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
11644         (HFILES_NO_SRCDIR): Add x86-tdep.h.
11645         (ALLDEPFILES): Add x86-tdep.c.
11646         * arch-utils.h (default_in_indirect_branch_thunk): New.
11647         * arch-utils.c (default_in_indirect_branch_thunk): New.
11648         * i386-tdep: Include x86-tdep.h.
11649         (i386_in_indirect_branch_thunk): New.
11650         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
11651         function.
11652         * amd64-tdep: Include x86-tdep.h.
11653         (amd64_in_indirect_branch_thunk): New.
11654         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
11655
11656 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
11657
11658         PR gdb/23053
11659         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
11660         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
11661         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
11662         regression.
11663
11664 2018-04-12  Tom Tromey  <tom@tromey.com>
11665
11666         * rust-lang.c (rust_print_struct_def): Remove univariant code.
11667         (rust_evaluate_subexp): Likewise.
11668
11669 2018-04-12  Pedro Alves  <palves@redhat.com>
11670
11671         * procfs.c (procfs_detach): Make forward declaration's prototype
11672         match definition's protototype.
11673         (proc_get_LDT_entry): Remove stale do_cleanups call.
11674
11675 2018-04-12  Pedro Alves  <palves@redhat.com>
11676
11677         * target.h (target_ops::to_has_exited): Delete.
11678         (target_has_exited): Delete.
11679         * target-delegates.c: Regenerate.
11680
11681 2018-04-11  Pedro Alves  <palves@redhat.com>
11682
11683         * target.c (fileio_fh_t::t): Add comment.
11684         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11685         (target_fileio_close): Handle a NULL target.
11686         (invalidate_fileio_fh): New.
11687         (target_close): Call it.
11688         * remote.c (remote_hostio_send_command): No longer check whether
11689         remote_desc is open.
11690
11691 2018-04-11  Pedro Alves  <palves@redhat.com>
11692
11693         * target.c (fileio_fh_t): Make it a named struct instead of a
11694         typedef.
11695         (fileio_fh_t::is_closed): New method.
11696         (DEF_VEC_O (fileio_fh_t)): Remove.
11697         (fileio_fhandles): Now a std::vector.
11698         (is_closed_fileio_fh): Delete.
11699         (acquire_fileio_fd): Adjust.  Rename parameters.
11700         (release_fileio_fd): Adjust.
11701         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
11702         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11703         (target_fileio_close): Adjust.
11704
11705 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
11706
11707         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
11708         index.
11709
11710 2018-04-10  Pedro Alves  <palves@redhat.com>
11711
11712         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
11713         (scoped_finish_thread_state): New class.
11714         * infcmd.c (run_command_1): Use it instead of finish_thread_state
11715         cleanup.
11716         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
11717         (fetch_inferior_event, normal_stop): Likewise.
11718         * thread.c (finish_thread_state_cleanup): Delete.
11719
11720 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11721             Pedro Alves  <palves@redhat.com>
11722
11723         * value.c: Include "selftest.h" and "common/array-view.h".
11724         (struct range) <operator ==>: New.
11725         (test_ranges_contain): New.
11726         (check_ranges_vector): New.
11727         (test_insert_into_bit_range_vector): New.
11728         (_initialize_values): Register selftests.
11729         * common/array-view.h (operator==, operator!=): New.
11730
11731 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11732
11733         * common/gdb_vecs.h (unordered_remove): Add overload that takes
11734         an iterator.
11735         * inline-frame.c: Include <algorithm>.
11736         (struct inline_state): Add constructor.
11737         (inline_state_s): Remove.
11738         (DEF_VEC_O(inline_state_s)): Remove.
11739         (inline_states): Change type to std::vector.
11740         (find_inline_frame_state): Adjust to std::vector.
11741         (allocate_inline_frame_state): Remove.
11742         (clear_inline_frame_state): Adjust to std::vector.
11743         (skip_inline_frames): Adjust to std::vector.
11744
11745 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11746
11747         * tracepoint.h (struct trace_state_variable): Add constructor.
11748         <name>: Change type to std::string.
11749         * tracepoint.c (tsv_s): Remove.
11750         (DEF_VEC_O(tsv_s)): Remove.
11751         (tvariables): Change to std::vector.
11752         (create_trace_state_variable): Adjust to std::vector.
11753         (find_trace_state_variable): Likewise.
11754         (find_trace_state_variable_by_number): Likewise.
11755         (delete_trace_state_variable): Likewise.
11756         (trace_variable_command): Adjust to std::string.
11757         (delete_trace_variable_command): Likewise.
11758         (tvariables_info_1): Adjust to std::vector.
11759         (save_trace_state_variables): Likewise.
11760         (start_tracing): Likewise.
11761         (merge_uploaded_trace_state_variables): Adjust to std::vector
11762         and std::string.
11763         * target.h (struct target_ops)
11764         <to_download_trace_state_variable>: Pass reference to
11765         trace_state_variable.
11766         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
11767         * target-delegates.c: Re-generate.
11768         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
11769         (mi_tsv_deleted): Likewise.
11770         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
11771         * remote.c (remote_download_trace_state_variable): Change
11772         pointer to reference and adjust.
11773         * make-target-delegates (parse_argtypes): Handle references.
11774         (write_function_header): Likewise.
11775         (munge_type): Likewise.
11776
11777 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11778
11779         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11780         string_view-selftests.c.
11781         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
11782         testsuite.
11783         * unittests/basic_string_view/cons/char/1.cc: Likewise.
11784         * unittests/basic_string_view/cons/char/2.cc: Likewise.
11785         * unittests/basic_string_view/cons/char/3.cc: Likewise.
11786         * unittests/basic_string_view/element_access/char/1.cc:
11787         Likewise.
11788         * unittests/basic_string_view/element_access/char/empty.cc:
11789         Likewise.
11790         * unittests/basic_string_view/element_access/char/front_back.cc:
11791         Likewise.
11792         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
11793         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
11794         Likewise.
11795         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
11796         Likewise.
11797         * unittests/basic_string_view/modifiers/swap/char/1.cc:
11798         Likewise.
11799         * unittests/basic_string_view/operations/compare/char/1.cc:
11800         Likewise.
11801         * unittests/basic_string_view/operations/compare/char/13650.cc:
11802         Likewise.
11803         * unittests/basic_string_view/operations/copy/char/1.cc:
11804         Likewise.
11805         * unittests/basic_string_view/operations/data/char/1.cc:
11806         Likewise.
11807         * unittests/basic_string_view/operations/find/char/1.cc:
11808         Likewise.
11809         * unittests/basic_string_view/operations/find/char/2.cc:
11810         Likewise.
11811         * unittests/basic_string_view/operations/find/char/3.cc:
11812         Likewise.
11813         * unittests/basic_string_view/operations/find/char/4.cc:
11814         Likewise.
11815         * unittests/basic_string_view/operations/rfind/char/1.cc:
11816         Likewise.
11817         * unittests/basic_string_view/operations/rfind/char/2.cc:
11818         Likewise.
11819         * unittests/basic_string_view/operations/rfind/char/3.cc:
11820         Likewise.
11821         * unittests/basic_string_view/operations/substr/char/1.cc:
11822         Likewise.
11823         * unittests/basic_string_view/operators/char/2.cc: Likewise.
11824         * unittests/string_view-selftests.c: New file.
11825
11826 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11827
11828         * unittests/basic_string_view/capacity/1.cc: New file.
11829         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
11830         * unittests/basic_string_view/cons/char/1.cc: New file.
11831         * unittests/basic_string_view/cons/char/2.cc: New file.
11832         * unittests/basic_string_view/cons/char/3.cc: New file.
11833         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
11834         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
11835         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
11836         * unittests/basic_string_view/element_access/char/1.cc: New file.
11837         * unittests/basic_string_view/element_access/char/2.cc: New file.
11838         * unittests/basic_string_view/element_access/char/empty.cc: New file.
11839         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
11840         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
11841         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
11842         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
11843         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
11844         * unittests/basic_string_view/include.cc: New file.
11845         * unittests/basic_string_view/inserters/char/1.cc: New file.
11846         * unittests/basic_string_view/inserters/char/2.cc: New file.
11847         * unittests/basic_string_view/inserters/char/3.cc: New file.
11848         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
11849         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
11850         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
11851         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
11852         * unittests/basic_string_view/literals/types.cc: New file.
11853         * unittests/basic_string_view/literals/values.cc: New file.
11854         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
11855         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
11856         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
11857         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
11858         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
11859         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
11860         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
11861         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
11862         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
11863         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
11864         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
11865         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
11866         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
11867         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
11868         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
11869         * unittests/basic_string_view/operations/data/char/1.cc: New file.
11870         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
11871         * unittests/basic_string_view/operations/find/char/1.cc: New file.
11872         * unittests/basic_string_view/operations/find/char/2.cc: New file.
11873         * unittests/basic_string_view/operations/find/char/3.cc: New file.
11874         * unittests/basic_string_view/operations/find/char/4.cc: New file.
11875         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
11876         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
11877         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
11878         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
11879         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
11880         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
11881         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
11882         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
11883         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
11884         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
11885         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
11886         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
11887         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
11888         * unittests/basic_string_view/operators/char/2.cc: New file.
11889         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
11890         * unittests/basic_string_view/range_access/char/1.cc: New file.
11891         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
11892         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
11893         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
11894         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
11895         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
11896         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
11897         * unittests/basic_string_view/requirements/typedefs.cc: New file.
11898         * unittests/basic_string_view/typedefs.cc: New file.
11899         * unittests/basic_string_view/types/1.cc: New file.
11900
11901 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11902
11903         * common/gdb_string_view.h: Remove libstdc++ implementation
11904         details, adjust to gdb reality.
11905         * common/gdb_string_view.tcc: Likewise.
11906         * cli/cli-script.c (struct string_view): Remove.
11907         (user_args) <m_args>: Change element type to gdb::string_view.
11908         (user_args::insert_args): Adjust.
11909
11910 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11911
11912         * common/gdb_string_view.h: New file.
11913         * common/gdb_string_view.tcc: New file.
11914
11915 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11916
11917         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
11918         * configure: Re-generate.
11919
11920 2018-04-09  Pedro Alves  <palves@redhat.com>
11921
11922         * gdbarch.sh: Include "observable.h" instead of "observer.h".
11923         (set_target_gdbarch): Call
11924         gdb::observers::architecture_changed.notify instead of
11925         observer_notify_architecture_changed.
11926
11927 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11928
11929         * tracepoint.c (struct current_traceframe_cleanup): Remove.
11930         (do_restore_current_traceframe_cleanup): Remove.
11931         (restore_current_traceframe_cleanup_dtor): Remove.
11932         (make_cleanup_restore_current_traceframe): Remove.
11933         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
11934         New.
11935         * tracepoint.h (struct scoped_restore_current_traceframe): New.
11936         * infrun.c (fetch_inferior_event): Use
11937         scoped_restore_current_traceframe.
11938
11939 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11940
11941         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
11942         Remove.
11943         <n_allocated_type_units>: Remove.
11944         <all_type_units>: Change to std::vector.
11945         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11946         to std::vector change.
11947         (dwarf2_per_objfile::get_cutu): Likewise.
11948         (dwarf2_per_objfile::get_tu): Likewise.
11949         (create_signatured_type_table_from_index): Likewise.
11950         (create_signatured_type_table_from_debug_names): Likewise.
11951         (dw2_symtab_iter_next): Likewise.
11952         (dw2_print_stats): Likewise.
11953         (dw2_expand_all_symtabs): Likewise.
11954         (dw2_expand_marked_cus): Likewise.
11955         (dw2_debug_names_iterator::next): Likewise.
11956         (dwarf2_initialize_objfile): Likewise.
11957         (add_signatured_type_cu_to_table): Likewise.
11958         (create_all_type_units): Likewise.
11959         (add_type_unit): Likewise.
11960         (struct tu_abbrev_offset): Add constructor.
11961         (build_type_psymtabs_1): Adjust to std::vector change.
11962         (print_tu_stats): Likewise.
11963         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11964         (write_debug_names): Likewise.
11965
11966 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11967
11968         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
11969         Make an std::vector.
11970         <n_comp_units>: Remove.
11971         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11972         to std::vector change.
11973         (dwarf2_per_objfile::get_cutu): Likewise.
11974         (dwarf2_per_objfile::get_cu): Likewise.
11975         (create_cus_from_index): Likewise.
11976         (create_addrmap_from_index): Likewise.
11977         (create_addrmap_from_aranges): Likewise.
11978         (dwarf2_read_index): Likewise.
11979         (dw2_find_last_source_symtab): Likewise.
11980         (dw2_map_symtabs_matching_filename): Likewise.
11981         (dw2_symtab_iter_next): Likewise.
11982         (dw2_print_stats): Likewise.
11983         (dw2_expand_all_symtabs): Likewise.
11984         (dw2_expand_symtabs_with_fullname): Likewise.
11985         (dw2_expand_marked_cus): Likewise.
11986         (dw2_map_symbol_filenames): Likewise.
11987         (create_cus_from_debug_names): Likewise.
11988         (dwarf2_read_debug_names): Likewise.
11989         (dw2_debug_names_iterator::next): Likewise.
11990         (dwarf2_initialize_objfile): Likewise.
11991         (set_partial_user): Likewise.
11992         (dwarf2_build_psymtabs_hard): Likewise.
11993         (read_comp_units_from_section): Remove arguments, adjust to
11994         std::vector change.
11995         (create_all_comp_units): Adjust to std::vector and
11996         read_comp_units_from_section changes.
11997         (dwarf2_find_containing_comp_unit): Adjust to std::vector
11998         change.
11999         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
12000         (psyms_seen_size): Likewise.
12001         (write_gdbindex): Likewise.
12002         (write_debug_names): Likewise.
12003
12004 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12005
12006         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
12007         with dwarf2_per_objfile.
12008         (create_cus_from_index): Likewise.
12009         (create_signatured_type_table_from_index): Likewise.
12010         (dwarf2_read_index): Likewise.
12011         (dwarf2_initialize_objfile): Likewise.
12012         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
12013         per_cu rather than get_dwarf2_per_objfile.
12014
12015 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12016
12017         * dwarf2read.h (struct signatured_type): Forward declare.
12018         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
12019         New methods.
12020         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
12021         (dw2_get_cutu): ...this.
12022         (dwarf2_per_objfile::get_cu): Rename from...
12023         (dw2_get_cu): ...this.
12024         (dwarf2_per_objfile::get_tu): New.
12025         (create_addrmap_from_index): Adjust.
12026         (create_addrmap_from_aranges): Adjust.
12027         (dw2_find_last_source_symtab): Adjust.
12028         (dw2_map_symtabs_matching_filename): Adjust.
12029         (dw2_symtab_iter_next): Adjust.
12030         (dw2_print_stats): Adjust.
12031         (dw2_expand_all_symtabs): Adjust.
12032         (dw2_expand_symtabs_with_fullname): Adjust.
12033         (dw2_expand_marked_cus): Adjust.
12034         (dw_expand_symtabs_matching_file_matcher): Adjust.
12035         (dw2_map_symbol_filenames): Adjust.
12036         (dw2_debug_names_iterator::next): Adjust.
12037         (dwarf2_initialize_objfile): Adjust.
12038         (set_partial_user): Adjust.
12039         (dwarf2_build_psymtabs_hard): Adjust.
12040
12041 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12042
12043         * dwarf2read.c (create_signatured_type_table_from_debug_names):
12044         Remove unused variables.
12045         (dw2_map_symtabs_matching_filename): Likewise.
12046         (dwarf2_record_block_ranges): Likewise.
12047         (dwarf2_read_addr_index): Likewise.
12048         (follow_die_offset): Likewise.
12049
12050 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12051
12052         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
12053         to symbol_file_add_main.
12054
12055 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12056
12057         PR mi/22299
12058         * mi/mi-console.c (do_fputc_async_safe): New.
12059         (mi_console_file::write_async_safe): New.
12060         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
12061         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
12062         New.
12063         * ui-file.c (ui_file::putstrn): Adjust call to
12064         fputstrn_unfiltered.
12065         * utils.c (printchar): Replace do_fputs and do_fprintf
12066         parameters by do_fputc.
12067         (fputstr_filtered): Adjust call to printchar.
12068         (fputstr_unfiltered): Likewise.
12069         (fputstrn_filtered): Likewise.
12070         (fputstrn_unfiltered): Add do_fputc parameter, pass to
12071         printchar.
12072         * utils.h (do_fputc_ftype): New typedef.
12073         (fputstrn_unfiltered): Add do_fputc parameter.
12074
12075 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12076
12077         * regformats/i386/i386-avx.dat: Remove.
12078
12079 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12080
12081         PR gdb/22979
12082         * amd64-tdep.c (amd64_none_init_abi): New function.
12083         (amd64_x32_none_init_abi): New function.
12084         (_initialize_amd64_tdep): Register handlers for x86-64 and
12085         x64_32 with GDB_OSABI_NONE.
12086         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
12087         GDB_OSABI_NONE osabi.
12088
12089 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12090
12091         PR gdb/22980
12092         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
12093         GDB_OSABI_NONE.
12094         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
12095         * osabi.c (gdb_osabi_names): Add "unknown" entry.
12096
12097 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12098
12099         * common/byte-vector.h (char_vector): New type.
12100         * target.h (target_read_alloc): Return
12101         gdb::optional<byte_vector>.
12102         (target_read_stralloc): Return gdb::optional<char_vector>.
12103         (target_get_osdata): Return gdb::optional<char_vector>.
12104         * target.c (target_read_alloc_1): Templatize.  Replacement
12105         manual memory management with vector.
12106         (target_read_alloc): Change return type, adjust.
12107         (target_read_stralloc): Change return type, adjust.
12108         (target_get_osdata): Change return type, adjust.
12109         * auxv.c (struct auxv_info) <length>: Remove.
12110         <data>: Change type to gdb::optional<byte_vector>.
12111         (auxv_inferior_data_cleanup): Free auxv_info with delete.
12112         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
12113         (target_auxv_search): Adjust.
12114         (fprint_target_auxv): Adjust.
12115         * avr-tdep.c (avr_io_reg_read_command): Adjust.
12116         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
12117         (linux_make_corefile_notes): Adjust.
12118         * osdata.c (get_osdata): Adjust.
12119         * remote.c (remote_get_threads_with_qxfer): Adjust.
12120         (remote_memory_map): Adjust.
12121         (remote_traceframe_info): Adjust.
12122         (btrace_read_config): Adjust.
12123         (remote_read_btrace): Adjust.
12124         (remote_pid_to_exec_file): Adjust.
12125         * solib-aix.c (solib_aix_get_library_list): Adjust.
12126         * solib-dsbt.c (decode_loadmap): Don't free buf.
12127         (dsbt_get_initial_loadmaps): Adjust.
12128         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
12129         * solib-target.c (solib_target_current_sos): Adjust.
12130         * tracepoint.c (sdata_make_value): Adjust.
12131         * xml-support.c (xinclude_start_include): Adjust.
12132         (xml_fetch_content_from_file): Adjust.
12133         * xml-support.h (xml_fetch_another): Change return type.
12134         (xml_fetch_content_from_file): Change return type.
12135         * xml-syscall.c (xml_init_syscalls_info): Adjust.
12136         * xml-tdesc.c (file_read_description_xml): Adjust.
12137         (fetch_available_features_from_target): Change return type.
12138         (target_fetch_description_xml): Adjust.
12139         (target_read_description_xml): Adjust.
12140
12141 2018-04-06  Tom Tromey  <tom@tromey.com>
12142
12143         * value.c (~value): Update.
12144         (struct value) <contents>: Now unique_xmalloc_ptr.
12145         (value_contents_bits_eq, allocate_value_contents)
12146         (value_contents_raw, value_contents_all_raw)
12147         (value_contents_for_printing, value_contents_for_printing_const)
12148         (set_value_enclosing_type): Update.
12149
12150 2018-04-06  Tom Tromey  <tom@tromey.com>
12151
12152         * value.c (range_s): Remove typedef, VEC.
12153         (struct range): Add operator<.
12154         (range_lessthan): Remove.
12155         (ranges_contain): Change type.
12156         (~value): Update.
12157         (struct value) <unavailable, optimized_out>: Now std::vector.
12158         (value_entirely_available)
12159         (value_entirely_covered_by_range_vector)
12160         (value_entirely_unavailable, value_entirely_optimized_out):
12161         Update.
12162         (insert_into_bit_range_vector): Change argument type.
12163         (find_first_range_overlap): Likewise.
12164         (struct ranges_and_idx, value_contents_bits_eq)
12165         (require_not_optimized_out, require_available): Update.
12166         (ranges_copy_adjusted): Change argument types.
12167         (value_optimized_out, value_copy, value_fetch_lazy): Update.
12168
12169 2018-04-06  Tom Tromey  <tom@tromey.com>
12170
12171         * value.c (~value): Update.
12172         (struct value) <parent>: Now a value_ref_ptr.
12173         (value_parent, set_value_parent, value_address, value_copy):
12174         Update.
12175
12176 2018-04-06  Tom Tromey  <tom@tromey.com>
12177
12178         * value.c (struct value): Add constructor, destructor, and member
12179         initializers.
12180         (allocate_value_lazy, value_decref): Update.
12181
12182 2018-04-06  Tom Tromey  <tom@tromey.com>
12183
12184         * value.c (struct value) <released, next>: Remove.
12185         (all_values): Now a std::vector.
12186         (allocate_value_lazy): Update.
12187         (value_next): Remove.
12188         (value_mark, value_free_to_mark, release_value)
12189         (value_release_to_mark): Update.
12190
12191 2018-04-06  Tom Tromey  <tom@tromey.com>
12192
12193         * value.h (fetch_subexp_value, value_release_to_mark): Update.
12194         (free_value_chain): Remove.
12195         * value.c (free_value_chain): Remove.
12196         (value_release_to_mark): Return a std::vector.
12197         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
12198         std::vector.
12199         (check_condition): Update.
12200         * eval.c (fetch_subexp_value): Change "val_chain" to a
12201         std::vector.
12202         * breakpoint.c (update_watchpoint): Update.
12203         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
12204
12205 2018-04-06  Tom Tromey  <tom@tromey.com>
12206
12207         * value.h (free_all_values): Remove.
12208         * value.c (free_all_values): Remove.
12209
12210 2018-04-06  Tom Tromey  <tom@tromey.com>
12211
12212         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
12213         (value_history_chain, value_history_count): Remove.
12214         (value_history): New global.
12215         (record_latest_value, access_value_history, show_values)
12216         (preserve_values): Update.
12217
12218 2018-04-06  Tom Tromey  <tom@tromey.com>
12219
12220         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
12221         * varobj.c (varobj_set_display_format, varobj_set_value)
12222         (install_default_visualizer, construct_visualizer)
12223         (install_new_value, ~varobj, varobj_get_value_type)
12224         (my_value_of_variable, varobj_editable_p): Update.
12225         * c-varobj.c (c_describe_child, c_value_of_variable)
12226         (cplus_number_of_children, cplus_describe_child): Update.
12227         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
12228         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
12229         (ada_value_of_variable, ada_value_is_changeable_p): Update.
12230
12231 2018-04-06  Tom Tromey  <tom@tromey.com>
12232
12233         * printcmd.c (last_examine_address): Change type to
12234         value_ref_ptr.
12235         (do_examine, x_command): Update.
12236
12237 2018-04-06  Tom Tromey  <tom@tromey.com>
12238
12239         * value.c (release_value): Update.
12240         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
12241         (struct bpstats) <val>: Now a value_ref_ptr.
12242         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
12243         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
12244         (~watchpoint, print_it_watchpoint, watch_command_1)
12245         (invalidate_bp_value_on_memory_change): Update.
12246
12247 2018-04-06  Tom Tromey  <tom@tromey.com>
12248
12249         * varobj.c (varobj_clear_saved_item)
12250         (update_dynamic_varobj_children, install_new_value, ~varobj):
12251         Update.
12252         * value.h (value_incref): Move declaration earlier.
12253         (value_decref): Rename from value_free.
12254         (struct value_ref_policy): New.
12255         (value_ref_ptr): New typedef.
12256         (struct value_deleter): Remove.
12257         (gdb_value_up): Remove typedef.
12258         (release_value): Change return type.
12259         (release_value_or_incref): Remove.
12260         * value.c (set_value_parent): Update.
12261         (value_incref): Change return type.
12262         (value_decref): Rename from value_free.
12263         (value_free_to_mark, free_all_values, free_value_chain): Update.
12264         (release_value): Return value_ref_ptr.
12265         (release_value_or_incref): Remove.
12266         (record_latest_value, set_internalvar, clear_internalvar):
12267         Update.
12268         * stack.c (info_frame_command): Don't call value_free.
12269         * python/py-value.c (valpy_dealloc, valpy_new)
12270         (value_to_value_object): Update.
12271         * printcmd.c (do_examine): Update.
12272         * opencl-lang.c (lval_func_free_closure): Update.
12273         * mi/mi-main.c (register_changed_p): Don't call value_free.
12274         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
12275         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
12276         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
12277         value_free.
12278         * guile/scm-value.c (vlscm_free_value_smob)
12279         (vlscm_scm_from_value): Update.
12280         * frame.c (frame_register_unwind, frame_unwind_register_signed)
12281         (frame_unwind_register_unsigned, get_frame_register_bytes)
12282         (put_frame_register_bytes): Don't call value_free.
12283         * findvar.c (address_from_register): Don't call value_free.
12284         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
12285         * dwarf2loc.c (entry_data_value_free_closure)
12286         (value_of_dwarf_reg_entry, free_pieced_value_closure)
12287         (dwarf2_evaluate_loc_desc_full): Update.
12288         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
12289         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
12290         (~watchpoint, watch_command_1)
12291         (invalidate_bp_value_on_memory_change): Update.
12292         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
12293
12294 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
12295
12296         PR gdb/23022
12297         * warning.m4: Add -Wno-error=deprecated-register.
12298         * configure: Re-generate.
12299
12300 2018-04-05  Tom Tromey  <tom@tromey.com>
12301
12302         * linespec.h: Remove include of "vec.h".
12303
12304 2018-04-05  Tom Tromey  <tom@tromey.com>
12305
12306         * linespec.c (typep): Remove typedef.
12307         (find_methods, find_superclass_methods): Take a std::vector.
12308         (find_method): Use std::vector.
12309
12310 2018-04-05  Tom Tromey  <tom@tromey.com>
12311
12312         * utils.c (compare_strings): Remove.
12313         * utils.h (compare_strings): Remove.
12314         * objc-lang.h (find_imps): Update.
12315         * objc-lang.c (find_methods): Take a std::vector.
12316         (uniquify_strings, find_imps): Likewise.
12317         * linespec.c (find_methods): Take a std::vector.
12318         (decode_objc): Use std::vector.
12319         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
12320         a std::vector.
12321         (find_method, find_function_symbols): Use std::vector.
12322
12323 2018-04-05  Tom Tromey  <tom@tromey.com>
12324
12325         * completer.c (completion_tracker::completion_tracker): Remove
12326         cast.
12327         (completion_tracker::discard_completions): Likewise.
12328         * breakpoint.c (ambiguous_names_p): Remove cast.
12329         * ada-lang.c (_initialize_ada_language): Remove cast.
12330         * utils.h (streq): Update.
12331         (streq_hash): Add new declaration.
12332         * utils.c (streq): Return bool.
12333         (streq_hash): New function.
12334
12335 2018-04-05  Tom Tromey  <tom@tromey.com>
12336
12337         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
12338         Remove a string copy.
12339
12340 2018-04-05  Tom Tromey  <tom@tromey.com>
12341
12342         * linespec.c (filter_results): Use std::vector.
12343         (decode_line_2, decode_line_full): Update.
12344
12345 2018-04-05  Tom Tromey  <tom@tromey.com>
12346
12347         * linespec.c (canonical_to_fullform): Return std::string.
12348         (filter_results): Update.
12349         (struct decode_line_2_item): Add constructor.
12350         <fullform, displayform>: Now std::string.
12351         (decode_line_2_compare_items): Now a std::sort comparator.
12352         (decode_line_2): Update.
12353
12354 2018-04-05  Tom Tromey  <tom@tromey.com>
12355
12356         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
12357         (unexpected_linespec_error): Update.
12358         (linespec_parse_basic, parse_linespec): Update.
12359
12360 2018-04-05  Tom Tromey  <tom@tromey.com>
12361
12362         * linespec.c (linespec_parse_basic): Reindent.
12363
12364 2018-04-05  Tom Tromey  <tom@tromey.com>
12365
12366         * minsyms.h (iterate_over_minimal_symbols): Update.
12367         * minsyms.c (iterate_over_minimal_symbols): Take a
12368         gdb::function_view.
12369         * linespec.c (struct collect_minsyms): Remove.
12370         (compare_msyms): Now a std::sort comparator.
12371         (add_minsym): Add parameters.
12372         (search_minsyms_for_name): Update.  Use std::vector.
12373
12374 2018-04-03  Tom Tromey  <tom@tromey.com>
12375
12376         * mipsread.c (read_alphacoff_dynamic_symtab): Use
12377         gdb::byte_vector.
12378
12379 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
12380
12381         * MAINTAINERS (Write After Approval): Add Weimin Pan.
12382
12383 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
12384
12385         PR gdb/16959
12386         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
12387         printing static type.
12388
12389 2018-04-01  Tom Tromey  <tom@tromey.com>
12390
12391         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
12392         (rs6000_xfer_shared_libraries): Update.
12393
12394 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
12395
12396         * common/gdb_vecs.h (char_ptr): Remove.
12397         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
12398
12399 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
12400
12401         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
12402         with std::vector.
12403         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
12404
12405 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
12406
12407         * tracepoint.h (struct uploaded_tp): Initialize fields.
12408         <actions, step_actions, cmd_strings>: Change type to
12409         std::vector<char *>.
12410         * tracepoint.c (get_uploaded_tp): Allocate with new.
12411         (free_uploaded_tps): Free with delete.
12412         (parse_tracepoint_definition): Adjust to std::vector change.
12413         * breakpoint.c (read_uploaded_action): Likewise.
12414         (create_tracepoint_from_upload): Likewise.
12415         * ctf.c (ctf_write_uploaded_tp): Likewise.
12416         (SET_ARRAY_FIELD): Likewise.
12417         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
12418
12419 2018-03-30  Tom Tromey  <tom@tromey.com>
12420
12421         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
12422         std::unique_ptr.
12423         (svr4_keep_data_in_core): Update.
12424         (svr4_read_so_list): Update.
12425
12426 2018-03-30  Tom Tromey  <tom@tromey.com>
12427
12428         * windows-nat.c (handle_output_debug_string, handle_exception):
12429         Update.
12430         * target.h (target_read_string): Update.
12431         * target.c (target_read_string): Change "string" to
12432         unique_xmalloc_ptr.
12433         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
12434         Update.
12435         * solib-frv.c (frv_current_sos): Update.
12436         * solib-dsbt.c (dsbt_current_sos): Update.
12437         * solib-darwin.c (darwin_current_sos): Update.
12438         * linux-thread-db.c (inferior_has_bug): Update.
12439         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
12440         Update.  Remove alloca.
12441         * ada-lang.c (ada_main_name): Update.
12442
12443 2018-03-30  Tom Tromey  <tom@tromey.com>
12444
12445         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
12446         (struct dwo_file_deleter): New.
12447         (dwo_file_up): New typedef.
12448         (open_and_init_dwo_file): Use dwo_file_up.
12449         (free_dwo_file_cleanup): Remove.
12450
12451 2018-03-30  Tom Tromey  <tom@tromey.com>
12452
12453         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
12454         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
12455
12456 2018-03-30  Tom Tromey  <tom@tromey.com>
12457
12458         * dwarf2read.c (class free_cached_comp_units): New class.
12459         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
12460         (free_cached_comp_units): Remove function.
12461
12462 2018-03-30  Tom Tromey  <tom@tromey.com>
12463
12464         * utils.h (make_cleanup_unpush_target): Remove.
12465         * inf-ptrace.c (struct target_unpusher): New.
12466         (target_unpush_up) New typedef.
12467         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
12468         target_unpush_up.
12469         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
12470
12471 2018-03-27  Tom Tromey  <tom@tromey.com>
12472
12473         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
12474
12475 2018-03-27  Pedro Alves  <palves@redhat.com>
12476             Tom Tromey  <tom@tromey.com>
12477
12478         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
12479         destructor.  Now a class.
12480         (gdb_readline_wrapper_cleanup): Remove function.
12481         (gdb_readline_wrapper): Remove cleanups.
12482
12483 2018-03-27  Tom Tromey  <tom@tromey.com>
12484
12485         * typeprint.h (struct type_print_options) <local_typedefs,
12486         global_typedefs>: Remove "struct" keyword.
12487         (class typedef_hash_table): New class.
12488         (recursively_update_typedef_hash, add_template_parameters)
12489         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
12490         (find_typedef_in_hash): Don't declare.
12491         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
12492         (typedef_hash_table::recursively_update): Rename from
12493         recursively_update_typedef_hash.  Now a member.
12494         (typedef_hash_table::add_template_parameters): Rename from
12495         add_template_parameters.  Now a member.
12496         (typedef_hash_table::typedef_hash_table): Now a constructor;
12497         rename from create_typedef_hash.
12498         (typedef_hash_table::~typedef_hash_table): Now a destructor;
12499         rename from free_typedef_hash.
12500         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
12501         (do_free_global_table): Remove.
12502         (typedef_hash_table::typedef_hash_table): New constructor; renamed
12503         from copy_type_recursive.
12504         (create_global_typedef_table): Remove.
12505         (typedef_hash_table::find_global_typedef): Now a member of
12506         typedef_hash_table.
12507         (typedef_hash_table::find_typedef): Rename from
12508         find_typedef_in_hash; now a member.
12509         (whatis_exp): Update.
12510         * extension.h (struct ext_lang_type_printers): Add constructor and
12511         destructor.
12512         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
12513         declare.
12514         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
12515         Now a constructor; rename from start_ext_lang_type_printers.
12516         (ext_lang_type_printers): Now a destructor; rename from
12517         free_ext_lang_type_printers.
12518         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
12519         Update.
12520         (c_type_print_base_struct_union): Update.  Remove cleanups.
12521
12522 2018-03-27  Tom Tromey  <tom@tromey.com>
12523
12524         * dwarf-index-write.c: Include <cmath>.
12525
12526 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
12527
12528         * NEWS: Add entry describing new "set|show varsize-limit" command.
12529         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
12530         command.
12531         * printcmd.c (_initialize_printcmd): Add "set var" alias of
12532         "set variable".
12533
12534 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
12535
12536         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
12537         dwarf-index-write.c
12538         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
12539         * dwarf-index-common.c: New file.
12540         * dwarf-index-common.h: New file.
12541         * dwarf-index-write.c: New file.
12542         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
12543         (struct dwarf2_section_info): Move from here.
12544         (dwarf2_section_info_def): Likewise.
12545         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
12546         (offset_type): Likewise.
12547         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
12548         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
12549         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
12550         (byte_swap): Likewise.
12551         (MAYBE_SWAP): Likewise.
12552         (dwarf2_per_cu_ptr): Likewise.
12553         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
12554         (struct tu_stats): Likewise.
12555         (struct dwarf2_per_objfile): Likewise.
12556         (struct dwarf2_per_cu_data): Likewise.
12557         (struct signatured_type): Likewise.
12558         (sig_type_ptr): Likewise.
12559         (DEF_VEC_P (sig_type_ptr)): Likewise.
12560         (INDEX4_SUFFIX): Likewise.
12561         (INDEX5_SUFFIX): Likewise.
12562         (DEBUG_STR_SUFFIX): Likewise.
12563         (dwarf2_read_section): Make non-static.
12564         (mapped_index_string_hash): Move from here.
12565         (dwarf5_djb_hash): Likewise.
12566         (file_write): Likewise.
12567         (class data_buf): Likewise.
12568         (struct symtab_index_entry): Likewise.
12569         (struct mapped_symtab): Likewise.
12570         (find_slot): Likewise.
12571         (hash_expand): Likewise.
12572         (add_index_entry): Likewise.
12573         (uniquify_cu_indices): Likewise.
12574         (class c_str_view): Likewise.
12575         (class c_str_view_hasher): Likewise.
12576         (class vector_hasher): Likewise.
12577         (write_hash_table): Likewise.
12578         (psym_index_map): Likewise.
12579         (struct addrmap_index_data): Likewise.
12580         (add_address_entry): Likewise.
12581         (add_address_entry_worker): Likewise.
12582         (write_address_map): Likewise.
12583         (symbol_kind): Likewise.
12584         (write_psymbols): Likewise.
12585         (struct signatured_type_index_data): Likewise.
12586         (write_one_signatured_type): Likewise.
12587         (recursively_count_psymbols): Likewise.
12588         (recursively_write_psymbols): Likewise.
12589         (class debug_names): Likewise.
12590         (check_dwarf64_offsets): Likewise.
12591         (psyms_seen_size): Likewise.
12592         (write_gdbindex): Likewise.
12593         (write_debug_names): Likewise.
12594         (assert_file_size): Likewise.
12595         (write_psymtabs_to_index): Likewise.
12596         (save_gdb_index_command): Likewise.
12597         (_initialize_dwarf2_read): Don't register the "save gdb-index"
12598         command.
12599         * dwarf2read.h: New file.
12600
12601 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
12602
12603         PR gdb/22670
12604         * dwarf2read.c (dwarf2_physname): Do not return the demangled
12605         symbol name if the CU's language stores symbol names in linkage
12606         format.
12607         * language.h (struct language_defn)
12608         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
12609         all instances of this struct.
12610
12611 2018-03-26  Tom Tromey  <tom@tromey.com>
12612
12613         * stack.c (backtrace_command_1): Remove verbose code.
12614
12615 2018-03-26  Tom Tromey  <tom@tromey.com>
12616
12617         * python/py-framefilter.c (py_print_type): Don't catch
12618         exceptions.  Return void.
12619         (py_print_value): Likewise.
12620         (py_print_single_arg): Likewise.
12621         (enumerate_args): Don't catch exceptions.
12622         (py_print_args): Likewise.
12623         (py_print_frame): Likewise.
12624         (gdbpy_apply_frame_filter): Catch exceptions here.
12625
12626 2018-03-26  Tom Tromey  <tom@tromey.com>
12627
12628         * stack.c (_initialize_stack): Remove trailing newlines from help
12629         text.  Add "Usage" line to "backtrace" help.
12630
12631 2018-03-26  Tom Tromey  <tom@tromey.com>
12632
12633         PR python/16486:
12634         * python/py-framefilter.c (py_print_args): Call wrap_hint.
12635
12636 2018-03-26  Tom Tromey  <tom@tromey.com>
12637
12638         * python/py-framefilter.c (py_print_single_arg): Return
12639         EXT_LANG_BT_ERROR from catch.
12640
12641 2018-03-26  Tom Tromey  <tom@tromey.com>
12642
12643         PR backtrace/15584:
12644         * stack.c (backtrace_command_1): Move some code into no-filters
12645         "if".
12646
12647 2018-03-26  Tom Tromey  <tom@tromey.com>
12648
12649         * python/py-framefilter.c (throw_quit_or_print_exception): New
12650         function.
12651         (gdbpy_apply_frame_filter): Use it.
12652
12653 2018-03-26  Tom Tromey  <tom@tromey.com>
12654
12655         PR cli/17716:
12656         * python/py-framefilter.c (py_print_type, py_print_value)
12657         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
12658         RETURN_MASK_ERROR.
12659
12660 2018-03-26  Tom Tromey  <tom@tromey.com>
12661
12662         * python/py-framefilter.c (enumerate_args): Use
12663         gdb::unique_xmalloc_ptr.
12664
12665 2018-03-26  Tom Tromey  <tom@tromey.com>
12666
12667         * python/py-framefilter.c (py_print_frame): Return
12668         EXT_LANG_BT_OK.
12669         (gdbpy_apply_frame_filter): Update comment.
12670         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
12671         Remove.
12672         <EXT_LANG_BT_NO_FILTERS>: Change value.
12673
12674 2018-03-26  Tom Tromey  <tom@tromey.com>
12675
12676         PR backtrace/15582:
12677         * stack.c (backtrace_command): Parse "hide" argument.
12678         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
12679         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
12680         constant.
12681
12682 2018-03-26  Tom Tromey  <tom@tromey.com>
12683
12684         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
12685         add "flags".
12686         (backtrace_command): Remove "fulltrace", add "flags".
12687
12688 2018-03-26  Tom Tromey  <tom@tromey.com>
12689
12690         * stack.c (backtrace_command): Rewrite command line parsing.
12691
12692 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12693
12694         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
12695
12696 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12697
12698         * filename-seen-cache.h: Add include guard.
12699
12700 2018-03-26  Keith Seitz  <keiths@redhat.com>
12701
12702         * symfile.c (place_section): Remove "struct" from section_addr_info
12703         in comment.
12704         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
12705         "struct" keyword from section_addr_info.
12706
12707 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
12708
12709         * regformats/regdef.h (reg): Add constructors.
12710
12711 2018-03-25  Pedro Alves  <palves@redhat.com>
12712
12713         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
12714         if then/else bodies in var_func_name extraction.
12715
12716 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
12717
12718         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
12719         lookup_minimal_symbol() to find symbol entry.
12720         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
12721
12722 2018-03-23  Keith Seitz  <keiths@redhat.com>
12723
12724         PR c++/22968
12725         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
12726         nested type definitions for C++, too.
12727
12728 2018-03-23  Tom Tromey  <tom@tromey.com>
12729
12730         * machoread.c (struct oso_el): Add a constructor.  Don't define as
12731         a typedef.
12732         (macho_register_oso): Remove.
12733         (macho_symtab_read): Take a std::vector.
12734         (oso_el_compare_name): Now a std::sort comparator.
12735         (macho_symfile_read_all_oso): Take a std::vector.
12736         (macho_symfile_read): Use std::vector.  Remove cleanups.
12737
12738 2018-03-22  Tom Tromey  <tom@tromey.com>
12739
12740         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
12741         (record_full_goto_bookmark): Use std::string.
12742
12743 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12744
12745         PR tdep/18295
12746         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
12747         a single mask.
12748
12749 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12750
12751         * rs6000-tdep.c (store_insn_p): New function.
12752         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
12753         and cr_reg to their unshifted values. Use store_insn_p to
12754         match LR saves using either R1 or fdata->alloca_reg. Use
12755         store_insn_p to match CR saves. Set alloca_reg_offset
12756         when alloca_reg and framep are set. Remove lr_reg shift
12757         when assigning to fdata->lr_register.
12758
12759 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12760
12761         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
12762         command line args instead of emitting a warning.
12763
12764 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12765
12766         * tracepoint.h (struct static_tracepoint_marker): Initialize
12767         fields, define default constructor, move constructor and move
12768         assignment, disable the rest.
12769         <str_id, extra>: Make std::string.
12770         (release_static_tracepoint_marker): Remove.
12771         (free_current_marker): Remove.
12772         * tracepoint.c (free_current_marker): Remove.
12773         (parse_static_tracepoint_marker_definition): Adjust to
12774         std::string, use new hex2str overload.
12775         (release_static_tracepoint_marker): Remove.
12776         (print_one_static_tracepoint_marker): Get marker by reference
12777         and adjust to std::string.
12778         (info_static_tracepoint_markers_command): Adjust to std::vector
12779         changes
12780         * target.h (static_tracepoint_marker_p): Remove typedef.
12781         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
12782         (struct target_ops) <to_static_tracepoint_marker_at>: Return
12783         bool.
12784         <to_static_tracepoint_markers_by_strid>: Return std::vector.
12785         * target-debug.h
12786         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
12787         (target_debug_print_std_vector_static_tracepoint_marker): New.
12788         (target_debug_print_struct_static_tracepoint_marker_p): Rename
12789         to...
12790         (target_debug_print_static_tracepoint_marker_p): ... this.
12791         * target-delegates.c: Re-generate.
12792         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
12793         Make std::string.
12794         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
12795         (decode_static_tracepoint_spec): Adjust to std::vector.
12796         (tracepoint_print_one_detail): Adjust to std::string.
12797         (strace_marker_decode_location): Adjust to std::string.
12798         (update_static_tracepoint): Adjust to std::string, remove call
12799         to release_static_tracepoint_marker.
12800         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
12801         Adjust to std::vector.
12802         * remote.c (remote_static_tracepoint_marker_at): Return bool.
12803         (remote_static_tracepoint_markers_by_strid): Adjust to
12804         std::vector.
12805         * common/rsp-low.h (hex2str): New overload with explicit count
12806         of bytes.
12807         * common/rsp-low.c (hex2str): New overload with explicit count
12808         of bytes.
12809         * unittests/rsp-low-selftests.c (test_hex2str): New function.
12810         (_initialize_rsp_low_selftests): Add test_hex2str test.
12811         * unittests/tracepoint-selftests.c
12812         (test_parse_static_tracepoint_marker_definition): Adjust to
12813         std::string.
12814
12815 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12816
12817         * tracepoint.c (parse_static_tracepoint_marker_definition):
12818         Consider case where the definition is followed by more
12819         definitions.
12820         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12821         tracepoint-selftests.c.
12822         * unittests/tracepoint-selftests.c: New.
12823
12824 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12825
12826         * MAINTAINERS (Write After Approval): Add Pedro Franco de
12827         Carvalho.
12828
12829 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12830
12831         * symtab.c (find_pc_sect_line): fixed indentation.
12832
12833 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12834
12835         * symtab.c (find_pc_sect_line): now uses binary search.
12836
12837 2018-03-19  Tom Tromey  <tom@tromey.com>
12838
12839         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
12840         "IDENT" production.
12841
12842 2018-03-19  Pedro Alves  <palves@redhat.com>
12843             Tom Tromey  <tom@tromey.com>
12844
12845         * unittests/observable-selftests.c: New file.
12846         * common/observable.h: New file.
12847         * observable.h: New file.
12848         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
12849         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
12850         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
12851         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
12852         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
12853         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
12854         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
12855         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
12856         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
12857         python/py-breakpoint.c, python/py-finishbreakpoint.c,
12858         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
12859         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
12860         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
12861         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
12862         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
12863         tui/tui-interp.c, valops.c: Update all users.
12864         * tui/tui-hooks.c (tui_bp_created_observer)
12865         (tui_bp_deleted_observer, tui_bp_modified_observer)
12866         (tui_inferior_exit_observer, tui_before_prompt_observer)
12867         (tui_normal_stop_observer, tui_register_changed_observer):
12868         Remove.
12869         (tui_observers_token): New global.
12870         (attach_or_detach, tui_attach_detach_observers): New functions.
12871         (tui_install_hooks, tui_remove_hooks): Use
12872         tui_attach_detach_observers.
12873         * record-btrace.c (record_btrace_thread_observer): Remove.
12874         (record_btrace_thread_observer_token): New global.
12875         * observer.sh: Remove.
12876         * observer.c: Rename to observable.c.
12877         * observable.c (namespace gdb_observers): Define new objects.
12878         (observer_debug): Move into gdb_observers namespace.
12879         (struct observer, struct observer_list, xalloc_observer_list_node)
12880         (xfree_observer_list_node, generic_observer_attach)
12881         (generic_observer_detach, generic_observer_notify): Remove.
12882         (_initialize_observer): Update.
12883         Don't include observer.inc.
12884         * Makefile.in (generated_files): Remove observer.h, observer.inc.
12885         (clean mostlyclean): Likewise.
12886         (observer.h, observer.inc): Remove targets.
12887         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
12888         (COMMON_SFILES): Use observable.c, not observer.c.
12889         * .gitignore: Remove observer.h.
12890
12891 2018-03-18  Tom Tromey  <tom@tromey.com>
12892
12893         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
12894         gdb::def_vector.
12895         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
12896
12897 2018-03-17  Tom Tromey  <tom@tromey.com>
12898
12899         * auto-load.c (auto_load_objfile_script_1): Use std::string.
12900
12901 2018-03-17  Tom Tromey  <tom@tromey.com>
12902
12903         * target.c (class scoped_target_fd): New.
12904         (target_fileio_close_cleanup): Remove.
12905         (target_fileio_read_alloc_1): Use scoped_target_fd.
12906
12907 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
12908
12909         * silent-rules.mk: New.
12910         * Makefile.in: Include silent-rules.mk
12911         (srcdir, VPATH, top_srcdir): Move up.
12912         (COMPILE): Add ECHO_CXX.
12913         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
12914         (init.c): Add ECHO_INIT_C.
12915         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
12916         (version.c): Add ECHO_GEN.
12917         (printcmd.o): Add ECHO_CXX.
12918         (target-float.o): Add ECHO_CXX.
12919         (ada-exp.o): Add ECHO_CXX.
12920         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
12921         (insight$(EXEEXT)): Add ECHO_CXXLD.
12922         * gnulib/configure.ac: Add AM_SILENT_RULES.
12923         * gnulib/aclocal.m4: Re-generate.
12924         * gnulib/configure: Re-generate.
12925         * gnulib/import/Makefile.in: Re-generate.
12926
12927 2018-03-16  Tom Tromey  <tom@tromey.com>
12928
12929         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
12930         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
12931         * utils.c (do_free_section_addr_info)
12932         (make_cleanup_free_section_addr_info): Remove.
12933         * symfile.h (struct other_sections): Add constructor.
12934         (struct section_addr_info): Remove.
12935         (section_addr_info): New typedef.
12936         (struct sym_fns) <sym_offsets>: Change type of parameter.
12937         (build_section_addr_info_from_objfile)
12938         (relative_addr_info_to_section_offsets, addr_info_make_relative)
12939         (default_symfile_offsets, symbol_file_add)
12940         (symbol_file_add_from_bfd)
12941         (build_section_addr_info_from_section_table): Update.
12942         (alloc_section_addr_info, free_section_addr_info): Don't declare.
12943         * symfile.c (alloc_section_addr_info): Remove.
12944         (build_section_addr_info_from_section_table): Change return type.
12945         Update.
12946         (build_section_addr_info_from_bfd)
12947         (build_section_addr_info_from_objfile): Likewise.
12948         (free_section_addr_info): Remove.
12949         (relative_addr_info_to_section_offsets): Change type of "addrs".
12950         (addrs_section_compar): Now a std::sort comparator.
12951         (addrs_section_sort): Change return type.
12952         (addr_info_make_relative): Change type of "addrs".  Update.
12953         (default_symfile_offsets, syms_from_objfile_1)
12954         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
12955         (symbol_file_add_separate): Update.
12956         (symbol_file_add): Change type of "addrs".  Update.
12957         (add_symbol_file_command): Update.  Remove cleanups.
12958         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
12959         cleanups.
12960         * symfile-debug.c (debug_sym_offsets): Change type of "info".
12961         * solib.c (solib_read_symbols): Update.
12962         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
12963         * machoread.c (macho_symfile_offsets): Update.
12964         * jit.c (jit_bfd_try_read_symtab): Update.
12965
12966 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
12967
12968         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12969         unittests/utils-selftests.c.
12970         * unittests/utils-selftests.c: New file.
12971
12972 2018-03-14  Tom Tromey  <tom@tromey.com>
12973
12974         PR cli/14977:
12975         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
12976         for NULL.
12977
12978 2018-03-14  Tom Tromey  <tom@tromey.com>
12979
12980         PR cli/19918:
12981         * printcmd.c (printf_pointer): Allow "-" in format.
12982
12983 2018-03-14  Tom Tromey  <tom@tromey.com>
12984
12985         * printcmd.c (_initialize_printcmd): Add usage to printf.
12986
12987 2018-03-14  Yao Qi  <qiyao@sourceware.org>
12988
12989         * MAINTAINERS: Update my email address.
12990
12991 2018-03-13  Tom Tromey  <tom@tromey.com>
12992
12993         * machoread.c (macho_check_dsym): Change filenamep to a
12994         std::string*.
12995         (macho_symfile_read): Update.
12996         * symfile.c (load_command): Use std::string.
12997
12998 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
12999
13000         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
13001         to error message string.
13002         (riscv_register_name): Use xsnprintf instead of sprintf.
13003         (riscv_insn::fetch_instruction): Use gdb_assert instead of
13004         internal_error.
13005         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
13006         error.
13007         (riscv_push_dummy_call): Likewise.
13008
13009 2018-03-12  Tom Tromey  <tom@tromey.com>
13010
13011         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
13012         Use gdb::byte_vector.
13013         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
13014
13015 2018-03-12  Yao Qi  <yao.qi@linaro.org>
13016
13017         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
13018         parameter type to readable_regcache.
13019         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
13020         the declaration.
13021
13022 2018-03-11  Tom Tromey  <tom@tromey.com>
13023
13024         * dwarf2read.c (struct nextfield): Add initializers.
13025         (struct nextfnfield): Remove.
13026         (struct fnfieldlist): Add initializers.  Remove "length" and
13027         "head", use std::vector.
13028         (struct decl_field_list): Remove.
13029         (struct field_info): Add initializers.
13030         <fields, baseclasses>: Now std::vector.
13031         <nbaseclasses, nfnfields, typedef_field_list_count,
13032         nested_types_list_count>: Remove.
13033         (dwarf2_add_field, dwarf2_add_type_defn)
13034         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
13035         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
13036         (process_structure_scope): Update.
13037
13038 2018-03-11  Tom Tromey  <tom@tromey.com>
13039
13040         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
13041         for use by std::sort.
13042         (build_type_psymtabs_1): Use std::vector.
13043
13044 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
13045
13046         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
13047         and LIBMPFR in the printed configuration.
13048
13049 2018-03-08  Tom Tromey  <tom@tromey.com>
13050
13051         * source.c (get_filename_and_charpos): Use scoped_fd.
13052         * nto-procfs.c (procfs_open_1): Use scoped_fd.
13053         (procfs_pidlist): Likewise.
13054         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
13055         (iterate_over_mappings): Likewise.
13056
13057 2018-03-08  Tom Tromey  <tom@tromey.com>
13058
13059         * infcall.c (struct call_return_meta_info)
13060         <stack_temporaries_enabled>: Remove.
13061         (get_call_return_value, call_function_by_hand_dummy): Update.
13062         * thread.c (disable_thread_stack_temporaries): Remove.
13063         (enable_thread_stack_temporaries): Remove.
13064         (thread_stack_temporaries_enabled_p): Return bool.
13065         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
13066         (get_last_thread_stack_temporary): Update.
13067         * eval.c (evaluate_subexp): Update.
13068         * gdbthread.h (class enable_thread_stack_temporaries): Now a
13069         class, not a function.
13070         (value_ptr, value_vec): Remove typedefs.
13071         (class thread_info) <stack_temporaries_enabled>: Now bool.
13072         <stack_temporaries>: Now a std::vector.
13073         (thread_stack_temporaries_enabled_p)
13074         (value_in_thread_stack_temporaries): Return bool.
13075
13076 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
13077
13078         * remote.c (putpkt_binary): Fix omitted bytes reporting.
13079         (getpkt_or_notif_sane_1): Likewise.
13080
13081 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13082
13083         * build-id.c (build_id_to_debug_bfd): Use std::string.
13084
13085 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13086
13087         * build-id.c (find_separate_debug_file_by_buildid): Return
13088         std::string.
13089         * build-id.h (find_separate_debug_file_by_buildid): Return
13090         std::string.
13091         * coffread.c (coff_symfile_read): Adjust to std::string.
13092         * elfread.c (elf_symfile_read): Adjust to std::string.
13093         * symfile.c (separate_debug_file_exists): Change parameter to
13094         std::string.
13095         (find_separate_debug_file): Return std::string.
13096         (find_separate_debug_file_by_debuglink): Return std::string.
13097         * symfile.h (find_separate_debug_file_by_debuglink): Return
13098         std::string.
13099
13100 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13101
13102         * common/xml-utils.c (xml_escape_text): Move code to...
13103         (xml_escape_text_append): ... this new function.
13104         * common/xml-utils.h (xml_escape_text_append): New declaration.
13105         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
13106         New function.
13107         (_initialize_xml_utils): register test_xml_escape_text_append as
13108         a selftest.
13109
13110 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
13111
13112         * defs.h: Remove MAX_REGISTER_SIZE.
13113         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
13114         asserts.
13115         * python/py-unwind.c (pyuw_sniffer): Likewise.
13116
13117 2018-03-07  Tom Tromey  <tom@tromey.com>
13118
13119         * linux-tdep.c (linux_info_proc): Update.
13120         * target.h (struct target_ops) <to_fileio_readlink>: Return
13121         optional<string>.
13122         (target_fileio_readlink): Return optional<string>.
13123         * remote.c (remote_hostio_readlink): Return optional<string>.
13124         * inf-child.c (inf_child_fileio_readlink): Return
13125         optional<string>.
13126         * target.c (target_fileio_readlink): Return optional<string>.
13127
13128 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
13129
13130         * regcache.c (cooked_read_test): Add riscv to the list of
13131         architectures that have a save_reggroup.
13132
13133 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
13134
13135         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
13136         value is not a dynamic class object.
13137
13138 2018-03-06  Tom Tromey  <tom@tromey.com>
13139
13140         * rust-exp.y: Formatting fixes.
13141
13142 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13143
13144         * riscv-tdep.c (riscv_register_name): Remove target description
13145         support.
13146         (riscv_gdbarch_init): Remove target description check.
13147
13148 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13149
13150         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
13151         comment.
13152         * riscv-tdep.h: Likewise.
13153
13154 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13155
13156         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
13157         (riscv_pseudo_register_write): Delete.
13158         (riscv_gdbarch_init): Remove all use of pseudo registers.
13159
13160 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
13161
13162         * record-btrace.c (btrace_print_lines): Replace cleanup
13163         parameter with RAII equivalents.
13164         (btrace_insn_history): Replace cleanup with RAII equivalents.
13165         * ui-out.h (make_cleanup_ui_out_list_begin_end,
13166         make_cleanup_ui_out_tuple_begin_end): Remove.
13167         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
13168         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
13169         make_cleanup_ui_out_list_begin_end): Remove.
13170
13171 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
13172
13173         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
13174         parameter types to std::vector.  Use bool.
13175         (record_btrace_wait): Replace VEC(tp_t) with
13176         std::vector<thread_info *>.
13177         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
13178
13179 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
13180
13181         * record-btrace.c (record_btrace_disable_callback): Remove.
13182         (struct scoped_btrace_disable): New.
13183         (record_btrace_open): Use scoped_btrace_disable.
13184
13185 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13186
13187         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
13188         reading values from registers.
13189
13190 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13191
13192         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
13193         where appropriate.
13194
13195 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13196
13197         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
13198         change parameter type.  Use GDB's print functions, and use
13199         core_addr_to_string where appropriate.
13200         (riscv_push_dummy_call): Use core_addr_to_string where
13201         appropriate, update call to riscv_print_arg_location, and reindent
13202         a few lines.
13203         (riscv_return_value): Update call to riscv_print_arg_location.
13204
13205 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13206             Tim Newsome <tim@sifive.com>
13207             Albert Ou <a0u@eecs.berkeley.edu>
13208             Darius Rad <darius@bluespec.com>
13209
13210         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
13211         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
13212         (ALLDEPFILES): Add riscv-tdep.c
13213         * configure.tgt: Add riscv support.
13214         * riscv-tdep.c: New file.
13215         * riscv-tdep.h: New file.
13216         * NEWS: Mention new target.
13217         * MAINTAINERS: Add entry for riscv.
13218
13219 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13220
13221         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
13222         fields within aggregates.
13223
13224 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
13225
13226         * record-btrace.c (btrace_print_lines): Change type of flags to
13227         gdb_disassembly_flags.
13228
13229 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13230
13231         * fbsd-nat.c: Include "inf-ptrace.h".
13232         (USE_SIGTRAP_SIGINFO): Conditionally define.
13233         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
13234         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
13235         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
13236         function.
13237         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
13238         Likewise.
13239         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
13240         Likewise.
13241         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
13242         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
13243         "supports_stopped_by_hw_breakpoint" target methods.
13244
13245 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13246
13247         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
13248         * fbsd-nat.c (debug_fbsd_nat): New variable.
13249         (show_fbsd_nat_debug): New function.
13250         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
13251         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
13252
13253 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13254
13255         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
13256         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
13257         prototype.
13258         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
13259         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
13260         method.
13261
13262 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13263
13264         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
13265         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
13266
13267 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13268
13269         * charset.c (struct charset_vector): New.
13270         (charsets): Change type to charset_vector.
13271         (find_charset_names): Adjust.
13272         (add_one): Adjust.
13273         (_initialize_charset): Adjust.
13274
13275 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13276
13277         * progspace.h (struct program_space) <deleted_solibs>: Change
13278         type to std::vector<std::string>.
13279         * progspace.c (clear_program_space_solib_cache): Adjust.
13280         * breakpoint.c (print_solib_event): Adjust.
13281         (check_status_catch_solib): Adjust.
13282         * solib.c (update_solib_list): Adjust.
13283         * ui-out.h (class ui_out) <field_string>: New overload.
13284         * ui-out.c (ui_out::field_string): New overload.
13285
13286 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13287
13288         * progspace.h (struct program_space): Add constructor and
13289         destructor, initialize fields.
13290         (add_program_space): Remove.
13291         * progspace.c (add_program_space): Rename to...
13292         (program_space::program_space): ... this.
13293         (release_program_space): Rename to...
13294         (program_space::~program_space): ... this.
13295         (delete_program_space): Use delete to delete program_space.
13296         (initialize_progspace): Use new to allocate program_space.
13297         * inferior.c (add_inferior_with_spaces): Likewise.
13298         (clone_inferior_command): Likewise.
13299         * infrun.c (follow_fork_inferior): Likewise.
13300         (handle_vfork_child_exec_or_exit): Likewise.
13301
13302 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13303
13304         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
13305         (delim_string_to_char_ptr_vec): Return std::vector of
13306         gdb::unique_xmalloc_ptr.
13307         (dirnames_to_char_ptr_vec_append): Take std::vector of
13308         gdb::unique_xmalloc_ptr.
13309         (dirnames_to_char_ptr_vec): Return std::vector of
13310         gdb::unique_xmalloc_ptr.
13311         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
13312         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
13313         (delim_string_to_char_ptr_vec): Return an std::vector of
13314         gdb::unique_xmalloc_ptr, adjust the code.
13315         (dirnames_to_char_ptr_vec_append): Take an std::vector of
13316         gdb::unique_xmalloc_ptr, adjust the code.
13317         (dirnames_to_char_ptr_vec): Return an std::vector of
13318         gdb::unique_xmalloc_ptr, adjust the code.
13319         * auto-load.c (auto_load_safe_path_vec): Change type to
13320         std::vector of gdb::unique_xmalloc_ptr.
13321         (auto_load_expand_dir_vars): Return an std::vector of
13322         gdb::unique_xmalloc_ptr, adjust the code.
13323         (auto_load_safe_path_vec_update): Adjust.
13324         (filename_is_in_auto_load_safe_path_vec): Adjust.
13325         (auto_load_objfile_script_1): Adjust.
13326         * build-id.c (build_id_to_debug_bfd): Adjust.
13327         * linux-thread-db.c (thread_db_load_search): Adjust.
13328         * source.c (add_path): Adjust.
13329         (openp): Adjust.
13330         * symfile.c (find_separate_debug_file): Adjust.
13331         * utils.c (do_free_char_ptr_vec): Remove.
13332         (make_cleanup_free_char_ptr_vec): Remove.
13333
13334 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
13335
13336         PR gdb/22907
13337         * common/pathstuff.c: Conditionally include "<windows.h>".
13338
13339 2018-03-01  Georg Sauthoff  <mail@georg.so>
13340
13341         PR gdb/22888
13342         * gcore.in: Quote variables and switch interpreter to bash.
13343
13344 2018-03-01  Tom Tromey  <tom@tromey.com>
13345
13346         * dwarf2read.c (alloc_discriminant_info): Fix default_index
13347         assertion.  Add assertion for discriminant_index.
13348         (quirk_rust_enum): Use correct base type name in univariant case.
13349
13350 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
13351
13352         * record.c (get_call_history_modifiers): Return a
13353         record_print_flags.
13354         (cmd_record_call_history): Adjust.
13355         * record-btrace.c (record_btrace_call_history): Adjust.
13356         (record_btrace_call_history_range): Adjust.
13357         (record_btrace_call_history_from): Adjust.
13358         * target-debug.h (target_debug_print_record_print_flags): New.
13359         * target-delegates.c: Re-generate.
13360         * target.c (target_call_history): Change flags type.
13361         (target_call_history_from): Likewise.
13362         (target_call_history_range): Likewise.
13363         * target.h (struct target_ops) <target_call_history>: Likewise.
13364         (target_call_history_from): Likewise.
13365         (target_call_history_range): Likewise.
13366
13367 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
13368             Simon Marchi  <simon.marchi@polymtl.ca>
13369
13370         * common/common-utils.c: Include "sys/stat.h".
13371         (is_regular_file): Move here from "source.c"; change return
13372         type to "bool".
13373         * common/common-utils.h (is_regular_file): New prototype.
13374         * common/pathstuff.c (contains_dir_separator): New function.
13375         * common/pathstuff.h (contains_dir_separator): New prototype.
13376         * source.c: Don't include "sys/stat.h".
13377         (is_regular_file): Move to "common/common-utils.c".
13378
13379 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
13380
13381         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
13382         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
13383         * auto-load.c: Include "common/pathstuff.h".
13384         * common/common-def.h (current_directory): Move here.
13385         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
13386         function.
13387         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
13388         prototype.
13389         * common/pathstuff.c: New file.
13390         * common/pathstuff.h: New file.
13391         * compile/compile.c: Include "common/pathstuff.h".
13392         * defs.h (current_directory): Move to "common/common-defs.h".
13393         * dwarf2read.c: Include "common/pathstuff.h".
13394         * exec.c: Likewise.
13395         * guile/scm-safe-call.c: Likewise.
13396         * linux-thread-db.c: Likewise.
13397         * main.c: Likewise.
13398         * nto-tdep.c: Likewise.
13399         * objfiles.c: Likewise.
13400         * source.c: Likewise.
13401         * symtab.c: Likewise.
13402         * utils.c: Include "common/pathstuff.h".
13403         (gdb_realpath): Move to "common/pathstuff.c".
13404         (gdb_realpath_keepfile): Likewise.
13405         (gdb_abspath): Likewise.
13406         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
13407         (gdb_realpath_keepfile): Likewise.
13408         (gdb_abspath): Likewise.
13409
13410 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
13411
13412         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
13413         wildcard process pid for super_resume for kernels with a
13414         specific bug.
13415
13416 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
13417
13418         * compile/compile.c (get_args): Add additional comments
13419         explaining function.
13420
13421 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
13422             Tom Tromey  <tom@tromey.com>
13423
13424         * target.h (memory_write_request_s): Remove typedef.  Don't define
13425         VEC.
13426         (target_write_memory_blocks): Change argument to std::vector.
13427         (struct memory_write_request): Add constructor.
13428         * target-memory.c (compare_block_starting_address): Return bool.
13429         Change argument types.
13430         (claim_memory): Change arguments to use std::vector.
13431         (split_regular_and_flash_blocks, blocks_to_erase)
13432         (compute_garbled_blocks): Likewise.
13433         (cleanup_request_data, cleanup_write_requests_vector): Remove.
13434         (target_write_memory_blocks): Change argument to std::vector.
13435         * symfile.c (struct load_section_data): Add constructor and
13436         destructor.  Use std::vector for "requests".
13437         (struct load_progress_data): Add initializers.
13438         (load_section_callback): Update.  Use "new".
13439         (clear_memory_write_data): Remove.
13440         (generic_load): Update.
13441
13442 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
13443
13444         * arch/aarch64.h: Use common/tdesc.h.
13445
13446 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
13447
13448         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
13449         architecture with a 64-bit ABI.
13450
13451 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
13452
13453         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
13454         ahead of target description loading.
13455
13456 2018-02-26  Tom Tromey  <tom@tromey.com>
13457
13458         * stack.c (backtrace_command_1): Update.
13459         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
13460         of "flags".
13461         * python/py-framefilter.c (py_print_frame)
13462         (gdbpy_apply_frame_filter): Change type of "flags".
13463         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
13464         of "flags".
13465         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
13466         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
13467         * extension.h (enum frame_filter_flag): Rename from
13468         frame_filter_flags.
13469         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
13470         (apply_ext_lang_frame_filter): Change type of "flags".
13471         * extension.c (apply_ext_lang_frame_filter): Change type of
13472         "flags".
13473         * extension-priv.h (struct extension_language_ops)
13474         <apply_frame_filter>: Change type of "flags".
13475
13476 2018-02-26  Tom Tromey  <tom@tromey.com>
13477
13478         PR python/16497:
13479         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
13480         off-by-one in py_end computation.
13481         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
13482         PRINT_MORE_FRAMES.
13483         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
13484         constant.
13485
13486 2018-02-26  Tom Tromey  <tom@tromey.com>
13487
13488         * dwarf2read.c (struct variant_field): New.
13489         (struct nextfield) <variant>: New field.
13490         (dwarf2_add_field): Handle DW_TAG_variant_part.
13491         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
13492         discriminated union.
13493         (read_structure_type): Handle DW_TAG_variant_part.
13494         (handle_struct_member_die): New function, extracted from
13495         process_structure_scope.  Handle DW_TAG_variant.
13496         (process_structure_scope): Handle discriminated unions.  Call
13497         handle_struct_member_die.
13498
13499 2018-02-26  Tom Tromey  <tom@tromey.com>
13500
13501         * rust-lang.h (rust_last_path_segment): Declare.
13502         * rust-lang.c (rust_last_path_segment): Now public.  Change
13503         contract.
13504         (struct disr_info): Remove.
13505         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
13506         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
13507         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
13508         (rust_enum_p, rust_enum_variant): New function.
13509         (rust_underscore_fields): Remove "offset" parameter.
13510         (rust_print_enum): New function.
13511         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
13512         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
13513         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
13514         enums.
13515         (rust_internal_print_type): New function, from rust_print_type.
13516         Remove enum code.
13517         (rust_print_type): Call rust_internal_print_type.
13518         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
13519         Update enum handling.
13520         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
13521         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
13522         (rust_union_quirks): New functions.
13523         (process_full_comp_unit, process_full_type_unit): Call
13524         rust_union_quirks.
13525         (process_structure_scope): Update rust_unions if necessary.
13526
13527 2018-02-26  Tom Tromey  <tom@tromey.com>
13528
13529         * value.h (value_union_variant): Declare.
13530         * valops.c (value_union_variant): New function.
13531         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
13532         (struct discriminant_info): New.
13533         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
13534         enumerator.
13535         (struct main_type) <flag_discriminated_union>: New field.
13536
13537 2018-02-26  Tom Tromey  <tom@tromey.com>
13538
13539         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13540         unittests/unpack-selftests.c.
13541         * unittests/unpack-selftests.c: New file.
13542         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
13543
13544 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13545
13546         * dwarf2read.c (struct partial_die_info) <read>: New method.
13547         (read_partial_die): Remove the declaration.
13548         (load_partial_dies): Update.
13549         (partial_die_info::partial_die_info):
13550         (read_partial_die): Change it to partial_die_info::read.
13551
13552 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13553
13554         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
13555         (fixup_partial_die): Remove declaration.
13556         (scan_partial_symbols): Update.
13557         (partial_die_parent_scope): Likewise.
13558         (partial_die_full_name): Likewise.
13559         (fixup_partial_die): Change it to partial_die_info::fixup.
13560
13561 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13562
13563         * dwarf2read.c (read_partial_die): Update the declaration.
13564         (load_partial_dies): Caller update.
13565         (read_partial_die): Remove one argument abbrev_len.
13566
13567 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13568
13569         * dwarf2read.c (struct partial_die_info): Add ctor, delete
13570         assignment operator.
13571         (load_partial_dies): Use ctor and copy ctor.
13572         (read_partial_die): Update.
13573         (dwarf2_cu::find_partial_die): Use ctor.
13574
13575 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13576
13577         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
13578         (find_partial_die_in_comp_unit): Change it to
13579         dwarf2_cu::find_partial_die.
13580         (find_partial_die): Update.
13581
13582 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13583
13584         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
13585         is NULL.
13586
13587 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13588
13589         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
13590
13591 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
13592
13593         * arch/amd64.h: Use common/tdesc.h.
13594         * arch/i386.c: Likewise.
13595         * arch/i386.h: Likewise.
13596         * arch/tic6x.c: Likewise.
13597         * arch/tdesc.h: Move file from here...
13598         * common/tdesc.h: ...to here.
13599         * features/aarch64-core.c: Regenerate.
13600         * features/aarch64-fpu.c: Regenerate.
13601         * features/i386/32bit-avx.c: Regenerate.
13602         * features/i386/32bit-avx512.c: Regenerate.
13603         * features/i386/32bit-core.c: Regenerate.
13604         * features/i386/32bit-linux.c: Regenerate.
13605         * features/i386/32bit-mpx.c: Regenerate.
13606         * features/i386/32bit-pkeys.c: Regenerate.
13607         * features/i386/32bit-sse.c: Regenerate.
13608         * features/i386/64bit-avx.c: Regenerate.
13609         * features/i386/64bit-avx512.c: Regenerate.
13610         * features/i386/64bit-core.c: Regenerate.
13611         * features/i386/64bit-linux.c: Regenerate.
13612         * features/i386/64bit-mpx.c: Regenerate.
13613         * features/i386/64bit-pkeys.c: Regenerate.
13614         * features/i386/64bit-segments.c: Regenerate.
13615         * features/i386/64bit-sse.c: Regenerate.
13616         * features/i386/x32-core.c: Regenerate.
13617         * features/tic6x-c6xp.c: Regenerate.
13618         * features/tic6x-core.c: Regenerate.
13619         * features/tic6x-gp.c: Regenerate.
13620         * target-descriptions.c: Use common/tdesc.h.
13621         * target-descriptions.h: Likewise.
13622
13623 2018-02-24  Tom Tromey  <tom@tromey.com>
13624
13625         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
13626         (try_thread_db_load_from_dir, thread_db_load_search): Use
13627         std::string.
13628         (info_auto_load_libthread_db_compare): Return bool.  Change
13629         argument types.
13630         (info_auto_load_libthread_db): Use std::vector, std::string.
13631         Remove cleanups.
13632
13633 2018-02-24  Tom Tromey  <tom@tromey.com>
13634
13635         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
13636         std::string.
13637         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
13638         std::string*.
13639         * gdbarch.c: Rebuild.
13640         * gdbarch.h: Rebuild.
13641         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
13642         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
13643         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
13644         std::string*.
13645
13646 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
13647
13648         * gdbtypes.h (sect_offset): Change type to uint64_t.
13649         (sect_offset_str): New function.
13650         * dwarf2read.c (create_addrmap_from_aranges): Use
13651         sect_offset_str.
13652         (error_check_comp_unit_head): Likewise.
13653         (create_debug_type_hash_table): Likewise.
13654         (read_cutu_die_from_dwo): Likewise.
13655         (init_cutu_and_read_dies): Likewise.
13656         (init_cutu_and_read_dies_no_follow): Likewise.
13657         (process_psymtab_comp_unit_reader): Likewise.
13658         (partial_die_parent_scope): Likewise.
13659         (peek_die_abbrev): Likewise.
13660         (process_queue): Likewise.
13661         (dwarf2_physname): Likewise.
13662         (read_namespace_alias): Likewise.
13663         (read_import_statement): Likewise.
13664         (create_dwo_cu_reader): Likewise.
13665         (create_cus_hash_table): Likewise.
13666         (lookup_dwo_cutu): Likewise.
13667         (inherit_abstract_dies): Likewise.
13668         (read_func_scope): Likewise.
13669         (read_call_site_scope): Likewise.
13670         (dwarf2_add_member_fn): Likewise.
13671         (read_common_block): Likewise.
13672         (read_module_type): Likewise.
13673         (read_typedef): Likewise.
13674         (read_subrange_type): Likewise.
13675         (load_partial_dies): Likewise.
13676         (read_partial_die): Likewise.
13677         (find_partial_die): Likewise.
13678         (read_str_index): Likewise.
13679         (dwarf2_string_attr): Likewise.
13680         (build_error_marker_type): Likewise.
13681         (lookup_die_type): Likewise.
13682         (dump_die_shallow): Likewise.
13683         (follow_die_ref): Likewise.
13684         (dwarf2_fetch_die_loc_sect_off): Likewise.
13685         (dwarf2_fetch_constant_bytes): Likewise.
13686         (follow_die_sig): Likewise.
13687         (get_signatured_type): Likewise.
13688         (get_DW_AT_signature_type): Likewise.
13689         (dwarf2_find_containing_comp_unit): Likewise.
13690         (set_die_type): Likewise.
13691
13692 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
13693
13694         * arch/aarch64.c: Include "common-defs.h".
13695         * arch/amd64.c: Likewise.
13696         * arch/i386.c: Likewise.
13697
13698 2018-02-21  Tom Tromey  <tom@tromey.com>
13699
13700         * value.h: (extract_field_op): Update.
13701         * eval.c (extract_field_op): Return a const char *.
13702         * expression.h (parse_expression_for_completion): Update.
13703         * completer.c (complete_expression): Update.
13704         (add_struct_fields): Make fieldname const.
13705         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
13706         (mark_completion_tag, parse_exp_in_context_1): Update.
13707         (parse_expression_for_completion): Change "name" to
13708         unique_xmalloc_ptr*.
13709
13710 2018-02-21  Tom Tromey  <tom@tromey.com>
13711
13712         * infcall.c (call_function_by_hand_dummy): Use std::vector.
13713
13714 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13715
13716         * avr-tdep.c (avr_read_pc): Change parameter type to
13717         readable_regcache.
13718         * gdbarch.sh (read_pc): Likewise.
13719         * gdbarch.c: Re-generated.
13720         * gdbarch.h: Re-generated.
13721         * hppa-tdep.c (hppa_read_pc): Change parameter type to
13722         readable_regcache.
13723         * ia64-tdep.c (ia64_read_pc): Likewise.
13724         * mips-tdep.c (mips_read_pc): Likewise.
13725         * spu-tdep.c (spu_read_pc): Likewise.
13726
13727 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13728
13729         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
13730         * regcache-dump.c: New file.
13731         * regcache.c: Move register_dump to regcache-dump.c.
13732         (maintenance_print_registers): Likewise.
13733         (maintenance_print_raw_registers): Likewise.
13734         (maintenance_print_cooked_registers): Likewise.
13735         (maintenance_print_register_groups): Likewise.
13736         (maintenance_print_remote_registers): Likewise.
13737         (_initialize_regcache): Likewise.
13738         * regcache.h (register_dump): Moved from regcache.c.
13739
13740 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13741
13742         * regcache.c (regcache::regcache): Update.
13743         (regcache::invalidate): Move it to detached_regcache::invalidate.
13744         (get_thread_arch_aspace_regcache): Update.
13745         (regcache::raw_update): Update.
13746         (regcache::cooked_read): Remove some code.
13747         (regcache::cooked_read_value): Likewise.
13748         (regcache::raw_write): Remove assert on m_readonly_p.
13749         (regcache::raw_supply_integer): Move it to
13750         detached_regcache::raw_supply_integer.
13751         (regcache::raw_supply_zeroed): Likewise.
13752         * regcache.h (detached_regcache) <raw_supply_integer>: New
13753         declaration.
13754         <raw_supply_zeroed, invalidate>: Likewise.
13755         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
13756         <invalidate>: Likewise.
13757         <m_readonly_p>: Removed.
13758
13759 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13760
13761         * infcmd.c (get_return_value): Let stop_regs point to
13762         get_current_regcache.
13763         * regcache.c (regcache::regcache): Remove.
13764         (register_dump_reg_buffer): New class.
13765         (regcache_print): Adjust.
13766         * regcache.h (regcache): Remove constructors.
13767
13768 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13769
13770         * regcache.c (class register_dump): New class.
13771         (register_dump_regcache, register_dump_none): New class.
13772         (register_dump_remote, register_dump_groups): New class.
13773         (regcache_print): Update.
13774         * regcache.h (regcache_dump_what): Move it to regcache.c.
13775         (regcache) <dump>: Remove.
13776
13777 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13778
13779         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
13780          reg_buffer_rw *.
13781         (jit_unwind_reg_set_impl): Call raw_supply.
13782         (jit_frame_sniffer): Use reg_buffer_rw.
13783         * record-full.c (record_full_core_regbuf): Change its type.
13784         (record_full_core_open_1): Use reg_buffer_rw.
13785         (record_full_close): Likewise.
13786         (record_full_core_fetch_registers): Use regcache->raw_supply.
13787         (record_full_core_store_registers): Likewise.
13788         * regcache.c (regcache::get_register_status): Move it to
13789         reg_buffer.
13790         (regcache_raw_set_cached_value): Remove.
13791         (regcache::raw_set_cached_value): Remove.
13792         (regcache::raw_write): Call raw_supply.
13793         (regcache::raw_supply): Move it to reg_buffer_rw.
13794         * regcache.h (regcache_raw_set_cached_value): Remove.
13795         (reg_buffer_rw): New class.
13796
13797 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13798
13799         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
13800         readonly_detached_regcache.
13801         (dummy_frame_prev_register): Use regcache->cooked_read.
13802         * frame.c (frame_save_as_regcache): Change return type.
13803         (frame_pop): Update.
13804         * frame.h (frame_save_as_regcache): Update declaration.
13805         * inferior.h (get_infcall_suspend_state_regcache): Update
13806         declaration.
13807         * infrun.c (infcall_suspend_state) <registers>: use
13808         readonly_detached_regcache.
13809         (save_infcall_suspend_state): Don't use regcache_dup.
13810         (get_infcall_suspend_state_regcache): Change return type.
13811         * linux-fork.c (struct fork_info) <savedregs>: Change to
13812         readonly_detached_regcache.
13813         <pc>: New field.
13814         (fork_save_infrun_state): Don't use regcache_dup.
13815         (info_checkpoints_command): Adjust.
13816         * mi/mi-main.c (register_changed_p): Update declaration.
13817         (mi_cmd_data_list_changed_registers): Use
13818         readonly_detached_regcache.
13819         (register_changed_p): Change parameter type to
13820         readonly_detached_regcache.
13821         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
13822         readonly_detached_regcache.
13823         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
13824         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
13825         New.
13826         (regcache::save): Move it to reg_buffer.
13827         (regcache::restore): Change parameter type.
13828         (regcache_dup): Remove.
13829         * regcache.h (reg_buffer) <save>: New method.
13830         (readonly_detached_regcache): New class.
13831         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
13832         readonly_detached_regcache.
13833         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
13834
13835 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13836
13837         * frame.c (frame_save_as_regcache): Use regcache method save.
13838         (frame_pop): Use regcache method restore.
13839         * infrun.c (restore_infcall_suspend_state): Likewise.
13840         * linux-fork.c (fork_load_infrun_state): Likewise.
13841         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
13842         save.
13843         * regcache.c (regcache_save): Remove.
13844         (regcache::restore): More asserts.
13845         (regcache_cpy): Remove.
13846         * regcache.h (regcache_save): Remove the declaration.
13847         (regcache::restore): Move from private to public.
13848         Remove the friend declaration of regcache_cpy.
13849         (regcache_cpy): Remove declaration.
13850
13851 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13852
13853         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
13854         parameter type to 'readable_regcache *'.
13855         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
13856         * arm-tdep.c (arm_neon_quad_read): Likewise.
13857         (arm_pseudo_read): Likewise.
13858         * avr-tdep.c (avr_pseudo_register_read): Likewise.
13859         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
13860         * frv-tdep.c (frv_pseudo_register_read): Likewise.
13861         * gdbarch.c: Re-generated.
13862         * gdbarch.h: Re-generated.
13863         * gdbarch.sh (pseudo_register_read): Change parameter type to
13864         'readable_regcache *'.
13865         (pseudo_register_read_value): Likewise.
13866         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
13867         (h8300_pseudo_register_read): Likewise.
13868         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
13869         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
13870         (i386_pseudo_register_read_into_value): Likewise.
13871         (i386_pseudo_register_read_value): Likewise.
13872         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
13873         declaration.
13874         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
13875         * m32c-tdep.c (m32c_raw_read): Likewise.
13876         (m32c_read_flg): Likewise.
13877         (m32c_banked_register): Likewise.
13878         (m32c_banked_read): Likewise.
13879         (m32c_sb_read): Likewise.
13880         (m32c_part_read): Likewise.
13881         (m32c_cat_read): Likewise.
13882         (m32c_r3r2r1r0_read): Likewise.
13883         (m32c_pseudo_register_read): Likewise.
13884         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
13885         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
13886         (mep_pseudo_cr64_read): Likewise.
13887         (mep_pseudo_register_read): Likewise.
13888         * mips-tdep.c (mips_pseudo_register_read): Likewise.
13889         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
13890         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
13891         * regcache.c (regcache::raw_read): Move it to readable_regcache.
13892         (regcache::cooked_read): Likewise.
13893         (regcache::cooked_read_value): Likewise.
13894         (regcache_cooked_read_signed):
13895         (regcache::cooked_read): Likewise.
13896         * regcache.h (readable_regcache): New class.
13897         (regcache): Inherit readable_regcache.  Move some methods to
13898         readable_regcache.
13899         * rl78-tdep.c (rl78_pseudo_register_read): Change
13900         parameter type to 'readable_regcache *'.
13901         * rs6000-tdep.c (do_regcache_raw_read): Remove.
13902         (e500_pseudo_register_read): Change parameter type to
13903         'readable_regcache *'.
13904         (dfp_pseudo_register_read): Likewise.
13905         (vsx_pseudo_register_read): Likewise.
13906         (efpr_pseudo_register_read): Likewise.
13907         * s390-tdep.c (s390_pseudo_register_read): Likewise.
13908         * sh-tdep.c (sh_pseudo_register_read): Likewise.
13909         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
13910         (sh64_pseudo_register_read): Likewise.
13911         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
13912         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
13913         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
13914         (spu_pseudo_register_read): Likewise.
13915         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
13916         (xtensa_pseudo_register_read): Likewise.
13917
13918 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13919
13920         * regcache.c (regcache::regcache): Call reg_buffer ctor.
13921         (regcache::arch): Move it to reg_buffer::arch.
13922         (regcache::register_buffer): Likewise.
13923         (regcache::assert_regnum): Likewise.
13924         (regcache::num_raw_registers): Likewise.
13925         * regcache.h (reg_buffer): New class.
13926         (regcache): Inherit reg_buffer.
13927
13928 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
13929
13930         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
13931         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
13932
13933 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
13934
13935         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
13936
13937 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
13938
13939         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
13940         (SFILES): Remove common/*.c files.
13941         (COMMON_OBS): Remove some *.o files built from common/*.c files.
13942         * common/common.host: Add common reference.
13943         * configure.ac: Likewise.
13944         * configure: Regenerate.
13945
13946 2018-02-16  Yao Qi  <yao.qi@linaro.org>
13947
13948         * block.c (block_namespace_info): Inherit allocate_on_obstack.
13949         (block_initialize_namespace): Use new.
13950         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
13951         (dwarf2_free_objfile): Use delete.
13952         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
13953         (copy_type_recursive): Use new.
13954         * gdb_obstack.h (allocate_on_obstack): New.
13955
13956 2018-02-15  Yao Qi  <yao.qi@linaro.org>
13957
13958         PR gdb/22849
13959         * inferior.c (exit_inferior_1): Reset inf->control.
13960
13961 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
13962
13963         * ada-lang.c (ada_to_fixed_value_create): Delete advance
13964         declaration.
13965
13966 2018-02-14  Pedro Alves  <palves@redhat.com>
13967
13968         * frame-unwind.c (frame_unwind_try_unwinder): Always call
13969         frame_cleanup_after_sniffer on exception.
13970
13971 2018-02-14  Tom Tromey  <tom@tromey.com>
13972
13973         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
13974         const.
13975         (solib_bfd_open): Make pathname const.
13976         * solib.c (solib_bfd_open): Make pathname const.
13977         * solib-spu.c (spu_bfd_fopen): Make name const.
13978         (spu_bfd_open): Make pathname const.
13979         * solib-darwin.c (darwin_bfd_open): Make pathname const.
13980         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
13981
13982 2018-02-14  Tom Tromey  <tom@tromey.com>
13983
13984         * symfile.c (symfile_bfd_open): Update.
13985         * source.h (openp, source_full_path_of, find_and_open_source):
13986         Change argument type to unique_xmalloc_ptr.
13987         * source.c (openp): Take a unique_xmalloc_ptr.
13988         (source_full_path_of, find_and_open_source): Likewise.
13989         (open_source_file, symtab_to_fullname): Update.
13990         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
13991         unique_xmalloc_ptr.
13992         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
13993         (exec_file_find): Update.
13994         * psymtab.c (psymtab_to_fullname): Update.
13995         * nto-tdep.h (nto_find_and_open_solib): Update.
13996         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
13997         unique_xmalloc_ptr.
13998         * exec.c (exec_file_attach): Update.
13999         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
14000         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
14001
14002 2018-02-14  Tom Tromey  <tom@tromey.com>
14003
14004         * solib.c: Include source.h.
14005         * nto-tdep.c: Include source.h.
14006         * mi/mi-cmd-env.c: Include source.h.
14007         * infcmd.c: Include source.h.
14008         * exec.c: Include source.h.
14009         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
14010         (add_path, directory_switch, source_path, init_source_path): Move
14011         declarations...
14012         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
14013         (add_path, directory_switch, source_path, init_source_path):
14014         ...here.
14015
14016 2018-02-14  Tom Tromey  <tom@tromey.com>
14017
14018         * solist.h (exec_file_find, solib_find): Return
14019         unique_xmalloc_ptr.
14020         (solib_bfd_fopen): Take a const char *.
14021         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
14022         (exec_file_find, solib_find): Likewise.
14023         (solib_bfd_fopen): Do not take ownership of "pathname".
14024         (solib_bfd_open): Use unique_xmalloc_ptr.
14025         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
14026         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
14027         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
14028         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
14029
14030 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
14031
14032         * ada-lang.c (name_match_type_from_name): Remove reference to
14033         ada_name_for_lookup in function's documentation.
14034         * ada-lang.h (ada_name_for_lookup): Delete declaration.
14035
14036 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
14037
14038         * defs.h (enum openp_flags): New enum.
14039         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
14040         Move to enum openp_flags.
14041         (openp_flags): New enum flags.
14042         (openp): Change parameter type to openp_flags.
14043         * source.c (openp): Change parameter type to openp_flags.
14044         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
14045         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
14046
14047 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
14048
14049         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
14050         per-command.
14051
14052 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
14053
14054         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
14055         into...
14056         (class dwarf2_queue_guard): ...the destructor of this new class.
14057         (dw2_do_instantiate_symtab): Create instance of the new class
14058         dwarf2_queue_guard, remove cleanup.
14059
14060 2018-02-09  Tom Tromey  <tom@tromey.com>
14061
14062         * source.c (find_source_lines): Don't reference past the end of
14063         the vector.
14064
14065 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14066
14067         * remote.c (remote_btrace_maybe_reopen): Change error message.
14068         * btrace.c (btrace_enable): Likewise.
14069         (parse_xml_btrace): Likewise.
14070         (parse_xml_btrace_conf): Likewise.
14071
14072 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14073
14074         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
14075         (linux_enable_pt, linux_enable_bts): Call
14076         diagnose_perf_event_open_fail.
14077
14078 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14079
14080         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
14081         Remove parameter and change return type.  Update callers.  Move it.
14082         (linux_enable_bts, linux_enable_pt): Improve error message.
14083         (linux_enable_pt): Remove zero buffer size check.
14084         (linux_enable_btrace): Improve error messages.  Remove NULL return
14085         check.
14086
14087 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14088
14089         * btrace.c (btrace_enable): Remove target_supports_btrace call.
14090         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
14091         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
14092         (linux_supports_pt, linux_supports_btrace): Remove.
14093         (linux_enable_bts): Call cpu_supports_bts.
14094         * nat/linux-btrace.h (linux_supports_btrace): Remove.
14095         * remote.c (remote_supports_btrace): Remove.
14096         (init_remote_ops): Remove remote_supports_btrace.
14097         * target-delegates.c: Regenerated.
14098         * target.c (target_supports_btrace): Remove.
14099         * target.h (target_ops) <to_supports_btrace>: Remove
14100         (target_supports_btrace): Remove.
14101         * x86-linux-nat.c (x86_linux_create_target): Remove
14102         linux_supports_btrace.
14103
14104 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14105
14106         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
14107         btrace failed.
14108         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
14109         exception and use message in own exception.
14110
14111 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14112
14113         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
14114         (perf_event_pt_event_type): Use gdb_file_up.
14115         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
14116         scoped_fd, and scoped_mmap.
14117
14118 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14119
14120         * common/scoped_mmap.h: New.
14121         * unittests/scoped_mmap-selftest.c: New.
14122         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14123         unittests/scoped_mmap-selftest.c.
14124
14125 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14126
14127         * common/scoped_fd.h: New.
14128         * unittests/scoped_fd-selftest.c: New.
14129         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14130         unittests/scoped_fd-selftest.c.
14131
14132 2018-02-09  Tom Tromey  <tom@tromey.com>
14133
14134         * auto-load.c (auto_load_section_scripts): Use
14135         gdb::unique_xmalloc_ptr.
14136
14137 2018-02-09  Tom Tromey  <tom@tromey.com>
14138
14139         * auto-load.c (execute_script_contents): Use std::string.
14140
14141 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
14142
14143         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
14144         Python function, rather than a new command.
14145
14146 2018-02-08  Tom Tromey  <tom@tromey.com>
14147
14148         * solib.c (solib_find_1): Use std::string.
14149         (solib_bfd_fopen): Use unique_xmalloc_ptr.
14150
14151 2018-02-08  Tom Tromey  <tom@tromey.com>
14152
14153         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
14154
14155 2018-02-08  Tom Tromey  <tom@tromey.com>
14156
14157         * source.c (find_source_lines): Use gdb::def_vector.
14158
14159 2018-02-08  Tom Tromey  <tom@tromey.com>
14160
14161         * macrocmd.c (struct temporary_macro_definition): New.
14162         (macro_define_command): Use temporary_macro_definition.  Remove
14163         cleanups.
14164         (free_macro_definition_ptr): Remove.
14165
14166 2018-02-08  Tom Tromey  <tom@tromey.com>
14167
14168         * macroexp.c (maybe_expand): Use std::string.
14169
14170 2018-02-08  Tom Tromey  <tom@tromey.com>
14171
14172         * macroexp.c (struct macro_buffer): Add initializers for some
14173         members.
14174         (init_buffer, init_shared_buffer, free_buffer)
14175         (free_buffer_return_text): Remove.
14176         (macro_buffer): New constructors.
14177         (~macro_buffer): New destructor.
14178         (macro_buffer::set_shared): New method.
14179         (macro_buffer::resize_buffer, macro_buffer::appendc)
14180         (macro_buffer::appendmem): Now methods, not free functions.
14181         (set_token, append_tokens_without_splicing, stringify)
14182         (macro_stringify): Update.
14183         (gather_arguments): Change return type.  Remove argc_p argument,
14184         add args_ptr argument.  Use std::vector.
14185         (substitute_args): Remove argc argument.  Accept std::vector.
14186         (expand): Update.  Use std::vector.
14187         (scan, macro_expand, macro_expand_next): Update.
14188
14189 2018-02-08  Tom Tromey  <tom@tromey.com>
14190
14191         * symtab.c (default_collect_symbol_completion_matches_break_on):
14192         Use unique_xmalloc_ptr.
14193         * macroscope.h: (sal_macro_scope, user_macro_scope)
14194         (default_macro_scope): Return unique_xmalloc_ptr.
14195         * macroscope.c (sal_macro_scope, user_macro_scope)
14196         (default_macro_scope): Return unique_xmalloc_ptr.
14197         * macroexp.h (macro_expand, macro_expand_once): Return
14198         unique_xmalloc_ptr.
14199         * macroexp.c (macro_expand, macro_expand_once): Return
14200         unique_xmalloc_ptr.
14201         * macrocmd.c (macro_expand_command, macro_expand_once_command)
14202         (info_macro_command, info_macros_command): Use
14203         unique_xmalloc_ptr.
14204         * compile/compile-c-support.c (write_macro_definitions): Use
14205         unique_xmalloc_ptr.
14206         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
14207
14208 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
14209
14210         * value.c (value_static_field): Assign field type instead of
14211         containing type when returning an optimized out value.
14212
14213 2018-02-06  Yao Qi  <yao.qi@linaro.org>
14214
14215         * ft32-tdep.c (ft32_read_pc): Remove.
14216         (ft32_write_pc): Remove.
14217         (ft32_gdbarch_init): Update.
14218         * m32r-tdep.c (m32r_read_pc): Remove.
14219         (m32r_gdbarch_init): Update.
14220         * mep-tdep.c (mep_read_pc): Remove.
14221         (mep_gdbarch_init): Update.
14222         * microblaze-tdep.c (microblaze_write_pc): Remove.
14223         (microblaze_gdbarch_init): Update.
14224         * mn10300-tdep.c (mn10300_read_pc): Remove.
14225         (mn10300_write_pc): Remove.
14226         (mn10300_gdbarch_init): Update.
14227         * moxie-tdep.c (moxie_read_pc): Remove.
14228         (moxie_write_pc): Remove.
14229         (moxie_gdbarch_init): Update.
14230
14231 2018-02-06  Yao Qi  <yao.qi@linaro.org>
14232
14233         * expprint.c (print_subexp_standard): Handle
14234         OP_F77_UNDETERMINED_ARGLIST.
14235         (dump_subexp_body_standard): Likewise.
14236
14237 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
14238
14239         * target-descriptions.c (tdesc_element_visitor) Add empty
14240         implementations.
14241         (tdesc_type): Move make_gdb_type from here.
14242         (tdesc_type_builtin): Likewise.
14243         (tdesc_type_vector): Likewise.
14244         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
14245         (make_gdb_type_struct): Move from tdesc_type_with_fields.
14246         (make_gdb_type_union): Likewise.
14247         (make_gdb_type_flags): Likewise.
14248         (make_gdb_type_enum): Likewise.
14249         (make_gdb_type): New function.
14250         (tdesc_register_type): Use static make_gdb_type.
14251
14252 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
14253
14254         * infcmd.c (default_print_one_register_info): Align natural-format
14255         column values consistently one under another.
14256         (pad_to_column): New function.
14257
14258 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
14259
14260         * dwarf2read.c (dwarf2_physname): Move commment.
14261
14262 2018-02-01  Leszek Swirski  <leszeks@google.com>
14263
14264         * varobj.c (varobj_formatted_print_options): Allow recursive
14265         pretty printing if pretty printing is enabled.
14266
14267 2018-02-01  Leszek Swirski  <leszeks@google.com>
14268
14269         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
14270         names after a structop as a filename.
14271
14272 2018-02-01  Yao Qi  <yao.qi@linaro.org>
14273
14274         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
14275         (arm_record_coproc_data_proc): Likewise.
14276
14277 2018-02-01  Yao Qi  <yao.qi@linaro.org>
14278
14279         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
14280
14281 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
14282
14283         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
14284         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
14285
14286 2018-01-31  Pedro Alves  <palves@redhat.com>
14287
14288         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
14289         * inflow.c (child_terminal_save_inferior): Wrap reference to
14290         tcgetpgrp in HAVE_TERMIOS_H.
14291         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
14292         _WIN32.
14293         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
14294         always iterate over all inferiors.
14295         (gdbsim_cntrl_c): Adjust.
14296         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
14297
14298 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
14299
14300         * gdbtypes.c (lookup_array_range_type): Make sure the array's
14301         index type is objfile-owned if the element type is as well.
14302
14303 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
14304
14305         GDB 8.1 released.
14306
14307 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14308
14309         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
14310         "features/s390x-linux64.c".
14311         (_initialize_s390_linux_tdep): Remove initialization of tdescs
14312         s390_linux32 and s390x_linux64.
14313         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
14314         default tdesc.
14315         * s390-tdep.c: Include "features/s390-linux32.c" and
14316         "features/s390x-linux64.c".
14317         (s390_tdesc_valid): Add check for tdesc_has_registers.
14318         (s390_gdbarch_init): Make sure there is always a valid tdesc.
14319         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
14320         tdesc_s390x_linux64.
14321         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
14322         tdesc_s390x_linux64 to...
14323         * s390-tdep.h: ...here.
14324
14325 2018-01-30  Pedro Alves  <palves@redhat.com>
14326
14327         PR gdb/13211
14328         * config.in, configure: Regenerate.
14329         * configure.ac: Check for getpgid.
14330         * go32-nat.c (go32_pass_ctrlc): New.
14331         (go32_target): Install it.
14332         * inf-child.c (inf_child_target): Install
14333         child_terminal_save_inferior, child_pass_ctrlc and
14334         child_interrupt.
14335         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
14336         (inf_ptrace_target): No longer install it.
14337         * infcmd.c (interrupt_target_1): Adjust.
14338         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
14339         (child_interrupt): Declare.
14340         (inferior::terminal_state): New.
14341         * inflow.c (struct terminal_info): Update comments.
14342         (inferior_process_group): Delete.
14343         (terminal_is_ours): Delete.
14344         (gdb_tty_state): New.
14345         (child_terminal_init): Adjust.
14346         (is_gdb_terminal, sharing_input_terminal_1)
14347         (sharing_input_terminal): New functions.
14348         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
14349         Set the process's actual process group in the foreground if
14350         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
14351         mark terminal as the inferior's if not sharing GDB's terminal.
14352         Don't check attach_flag.
14353         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
14354         pass down a target_terminal_state.
14355         (child_terminal_save_inferior): New, factored out from ...
14356         (child_terminal_ours_1): ... this.  Handle
14357         target_terminal_state::is_ours_for_output.
14358         (child_interrupt, child_pass_ctrlc): New.
14359         (inflow_inferior_exit): Clear the inferior's terminal_state.
14360         (copy_terminal_info): Copy the inferior's terminal state.
14361         (_initialize_inflow): Remove reference to terminal_is_ours.
14362         * inflow.h (inferior_process_group): Delete.
14363         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
14364         * procfs.c (procfs_target): Don't install procfs_interrupt.
14365         (procfs_interrupt): Delete.
14366         * remote.c (remote_serial_quit_handler): Adjust.
14367         (remote_interrupt): Remove ptid parameter.  Adjust.
14368         * target-delegates.c: Regenerate.
14369         * target.c: Include "terminal.h".
14370         (target_terminal::terminal_state): Rename to ...
14371         (target_terminal::m_terminal_state): ... this.
14372         (target_terminal::init): Adjust.
14373         (target_terminal::inferior): Adjust to per-inferior
14374         terminal_state.
14375         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
14376         (target_terminal::ours, target_terminal::ours_for_output): Use
14377         target_terminal_is_ours_kind.
14378         (target_interrupt): Remove ptid parameter.  Adjust.
14379         (default_target_pass_ctrlc): Adjust.
14380         * target.h (target_ops::to_terminal_save_inferior): New field.
14381         (target_ops::to_interrupt): Remove ptid_t parameter.
14382         (target_interrupt): Remove ptid_t parameter.  Update comment.
14383         (target_pass_ctrlc): Update comment.
14384         * target/target.h (target_terminal_state): New scoped enum,
14385         factored out of ...
14386         (target_terminal::terminal_state): ... here.
14387         (target_terminal::inferior): Update comments.
14388         (target_terminal::restore_inferior): New.
14389         (target_terminal::is_inferior, target_terminal::is_ours)
14390         (target_terminal::is_ours_for_output): Adjust.
14391         (target_terminal::scoped_restore_terminal_state): Adjust to
14392         rename, and call restore_inferior() instead of inferior().
14393         (target_terminal::scoped_restore_terminal_state::m_state): Change
14394         type.
14395         (target_terminal::terminal_state): Rename to ...
14396         (target_terminal::m_terminal_state): ... this and change type.
14397
14398 2018-01-30  Pedro Alves  <palves@redhat.com>
14399
14400         * linux-nat.c (wait_for_signal): New function.
14401         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
14402         directly.
14403         (async_terminal_is_ours)
14404         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
14405         (linux_nat_add_target): Don't override
14406         to_terminal_inferior/to_terminal_ours.
14407
14408 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
14409
14410         * remote.c (remote_follow_fork): Don't call "detach_inferior".
14411
14412 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
14413
14414         * dwarf2read.c (free_dwo_files): Add forward-declaration.
14415         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
14416         dwarf2_per_objfile_free here.
14417         (dwarf2_per_objfile_free): Remove.
14418         (_initialize_dwarf2_read): Don't register
14419         dwarf2_per_objfile_free as a registry cleanup.
14420
14421 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
14422
14423         Avoid compilation errors in MinGW native builds
14424
14425         The error is triggered by including python-internal.h, and the
14426         error message is:
14427
14428              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
14429                       from build-gnulib/import/math.h:27,
14430                       from d:/usr/Python26/include/pyport.h:235,
14431                       from d:/usr/Python26/include/Python.h:58,
14432                       from python/python-internal.h:94,
14433                       from python/py-arch.c:24:
14434              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
14435         using ::hypot;
14436                 ^~~~~
14437
14438         This happens because Python headers define 'hypot' to expand t
14439         '_hypot' in the Windows builds.
14440         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
14441         'hypoth'.  This avoids a compilation error.
14442
14443 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
14444
14445         * MAINTAINERS (Write After Approval): Fix ordering.
14446
14447 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
14448
14449         * MAINTAINERS (Write After Approval): Add Alan Hayward.
14450
14451 2018-01-26  Alan Modra  <amodra@gmail.com>
14452
14453         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
14454         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
14455         Remove nop.  Make const.  Comment.
14456         (powerpc32_plt_stub_so_2): New.
14457         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
14458         Correct count.  Update uses.
14459         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
14460         Move common code reading PLT entry word.  Correct
14461         powerpc32_plt_stub PLT address calculation.
14462         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
14463         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
14464         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
14465         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
14466         (ppc64_standard_linkage8): Likewise.
14467         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
14468         Correct insns description.
14469         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
14470
14471 2018-01-24  Pedro Alves  <palves@redhat.com>
14472
14473         GCC PR libstdc++/83906
14474         * gdbtypes.c (operator==(const dynamic_prop &,
14475         const dynamic_prop &)): New.
14476         (operator==(const range_bounds &, const range_bounds &)): New.
14477         (check_types_equal): Use them instead of memcmp.
14478         * gdbtypes.h (operator==(const dynamic_prop &,
14479         const dynamic_prop &)): Declare.
14480         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
14481         (operator==(const range_bounds &, const range_bounds &)): Declare.
14482         (operator!=(const range_bounds &, const range_bounds &)): Declare.
14483
14484 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14485
14486         * s390-linux-tdep.c (s390_record_address_mask)
14487         (s390_record_calc_disp_common, s390_record_calc_disp)
14488         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
14489         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
14490         (s390_process_record): Move to s390-tdep.c.
14491         (s390_linux_init_abi_any): Adjust.
14492         * s390-tdep.c (s390_record_address_mask)
14493         (s390_record_calc_disp_common, s390_record_calc_disp)
14494         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
14495         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
14496         (s390_process_record): Moved from s390-linux-tdep.c
14497         (s390_gdbarch_init): Adjust.
14498
14499 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14500
14501         * s390-linux-nat.c (s390-tdep.h): New include.
14502         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
14503         (HFILES_NO_SRCDIR): Add s390-tdep.h.
14504         (ALLDEPFILES): Add s390-tdep.c.
14505         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
14506         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
14507         * s390-tdep.h: ...this.  New file.
14508         * s390-linux-tdep.c (s390-tdep.h): New include.
14509         (_initialize_s390_tdep): Rename to...
14510         (_initialize_s390_linux_tdep): ...this and adjust.
14511         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
14512         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
14513         s390-tdep.h.
14514         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
14515         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
14516         (s390_is_partial_instruction, s390_software_single_step)
14517         (is_non_branch_ril, s390_displaced_step_copy_insn)
14518         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
14519         (s390_prologue_data, s390_addr, s390_store, s390_load)
14520         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
14521         (s390_register_call_saved, s390_guess_tracepoint_registers)
14522         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
14523         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
14524         (s390_pseudo_register_name, s390_pseudo_register_type)
14525         (s390_pseudo_register_read, s390_pseudo_register_write)
14526         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
14527         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
14528         (s390_addr_bits_remove, s390_address_class_type_flags)
14529         (s390_address_class_type_flags_to_name)
14530         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
14531         (s390_function_arg_float, s390_function_arg_vector)
14532         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
14533         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
14534         (s390_frame_align, s390_register_return_value, s390_return_value)
14535         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
14536         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
14537         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
14538         (s390_trad_frame_prev_register, s390_unwind_cache)
14539         (s390_prologue_frame_unwind_cache)
14540         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
14541         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
14542         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
14543         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
14544         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
14545         (s390_frame_base_address, s390_local_base_address)
14546         (s390_frame_base, s390_gcc_target_options)
14547         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
14548         (s390_validate_reg_range, s390_tdesc_valid)
14549         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
14550         * s390-tdep.c: ...this.  New file.
14551
14552 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14553
14554         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
14555         (s390_process_record, s390_gdbarch_tdep_alloc)
14556         (s390_linux_init_abi_any): Use/set new hook.
14557
14558 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14559
14560         * s390-linux-tdep.c (osabi.h): New include.
14561         (s390_linux_init_abi_31, s390_linux_init_abi_64)
14562         (s390_linux_init_abi_any): New functions.
14563         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
14564
14565 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14566
14567         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
14568         tdesc_has_registers check
14569
14570 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14571
14572         * s390-linux-tdep.c (s390_tdesc_valid): New function.
14573         (s390_validate_reg_range): New macro.
14574         (s390_gdbarch_init): Adjust.
14575
14576 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14577
14578         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
14579         (s390_gdbarch_tdep_alloc): Adjust.
14580         (s390_gdbarch_init): Adjust.
14581
14582 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14583
14584         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
14585         <have_tdb>: Change type to bool.
14586         (s390_gdbarch_tdep_alloc): Adjust.
14587         (s390_gdbarch_init): Adjust.
14588
14589 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14590
14591         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
14592         (gdbarch_tdep) <have_upper, have_vx>: New fields.
14593         (s390_gdbarch_tdep_alloc): New function.
14594         (s390_gdbarch_init): Allocate tdep at start and use its fields
14595         instead of separate variables.
14596
14597 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14598
14599         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
14600         when looking for cached gdbarch and add comment for remaining.
14601
14602 2018-01-22  Pedro Alves  <palves@redhat.com>
14603             Sergio Durigan Junior  <sergiodj@redhat.com>
14604
14605         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
14606         case.
14607
14608 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
14609
14610         * MAINTAINERS: Update my company e-mail address.
14611
14612 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14613
14614         * regcache.c (cooked_write_test): New function.
14615         (_initialize_regcache): Register the test.
14616
14617 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14618
14619         * ia64-tdep.c (ia64_pseudo_register_read): Call
14620         regcache->cooked_read instead of regcache_cooked_read_unsigned.
14621         * m32c-tdep.c (m32c_cat_read): Likewise.
14622         (m32c_r3r2r1r0_read): Likewise.
14623         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
14624         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
14625
14626 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14627
14628         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
14629         method raw_read instead of regcache_raw_read.
14630         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
14631         * arm-tdep.c (arm_neon_quad_read): Likewise.
14632         * avr-tdep.c (avr_pseudo_register_read): Likewise.
14633         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
14634         * frv-tdep.c (frv_pseudo_register_read): Likewise.
14635         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
14636         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
14637         (i386_pseudo_register_read_into_value): Likewise.
14638         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
14639         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
14640         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
14641         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
14642         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
14643         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
14644         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
14645         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
14646         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
14647
14648 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14649
14650         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
14651         * configure.tgt: Remove target mt.
14652         * mt-tdep.c: Remove.
14653         * regcache.c (cooked_read_test): Remove the check for mt.
14654
14655 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14656
14657         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
14658         instead of gdbarch_pseudo_register_read_value.
14659
14660 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14661
14662         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
14663         language is Ada.
14664
14665 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14666
14667         * linespec.c (create_sals_line_offset): Remove code that preserved
14668         the symtab_and_line's line number.
14669
14670 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14671
14672         * varobj.c (varobj_create): Don't set valid_block when creating a
14673         floating varobj.
14674
14675 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14676
14677         * varobj.c (varobj_create): Remove out of date comment.
14678
14679 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14680
14681         PR mi/20395
14682         * ada-exp.y (write_var_from_sym): Pass extra parameter when
14683         updating innermost block.
14684         * parse.c (innermost_block_tracker::update): Take extra type
14685         parameter, and check types match before updating innermost block.
14686         (write_dollar_variable): Update innermost block for registers.
14687         * parser-defs.h (enum innermost_block_tracker_type): New enum.
14688         (innermost_block_tracker::innermost_block_tracker): Initialise
14689         m_types member.
14690         (innermost_block_tracker::reset): Take type parameter.
14691         (innermost_block_tracker::update): Take type parameter, and pass
14692         type through as needed.
14693         (innermost_block_tracker::m_types): New member.
14694         * varobj.c (varobj_create): Pass type when reseting innermost
14695         block.
14696
14697 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14698
14699         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
14700         * ada-lang.c (resolve_subexp): Likewise.
14701         * breakpoint.c (set_breakpoint_condition) Likewise.
14702         (watch_command_1) Likewise.
14703         * c-exp.y (variable): Likewise.
14704         * d-exp.y (PrimaryExpression): Likewise.
14705         * f-exp.y (variable): Likewise.
14706         * go-exp.y (variable): Likewise.
14707         * m2-exp.y (variable): Likewise.
14708         * objfiles.c (objfile::~objfile): Likewise.
14709         * p-exp.y (variable): Likewise.
14710         * parse.c (innermost_block): Change type.
14711         * parser-defs.h (class innermost_block_tracker): New.
14712         (innermost_block): Change to innermost_block_tracker.
14713         * printcmd.c (display_command): Switch to innermost_block API.
14714         (do_one_display): Likewise.
14715         * rust-exp.y (do_one_display): Likewise.
14716         * symfile.c (clear_symtab_users): Likewise.
14717         * varobj.c (varobj_create): Switch to innermost_block API, replace
14718         use of innermost_block with block stored on varobj object.
14719
14720 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14721
14722         * expression.h (innermost_block): Remove declaration.
14723         * varobj.c: Add 'parser-defs.h' include.
14724
14725 2018-01-19  Tom Tromey  <tom@tromey.com>
14726
14727         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
14728         symbols in the static and global blocks.
14729
14730 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
14731
14732         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
14733         gdb_ptrace.h, and move including gdb_wait.h ...
14734         * nat/linux-ptrace.h: ... to here.
14735
14736 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14737
14738         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
14739         inf_ptrace_detach_success.
14740         (inf_ptrace_detach_success): Add inferior parameter, use it
14741         instead of inferior_ptid, pass it to detach_inferior.
14742         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
14743         parameter.
14744         * inferior.c (detach_inferior): Add overload that takes an
14745         inferior object.
14746         * inferior.h (detach_inferior): Likewise.
14747         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
14748         use inferior_ptid, adjust call to inf_ptrace_detach_success.
14749         * linux-thread-db.c (thread_db_detach): Use inf parameter.
14750
14751 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14752
14753         * target.h (struct target_ops) <to_detach>: Add inferior
14754         parameter.
14755         (target_detach): Likewise.
14756         * target.c (dispose_inferior): Pass inferior down.
14757         (target_detach): Pass inferior down.  Assert that it is equal to
14758         the current inferior.
14759         * aix-thread.c (aix_thread_detach): Pass inferior down.
14760         * corefile.c (core_file_command): Pass current_inferior() down.
14761         * corelow.c (core_detach): Add inferior parameter.
14762         * darwin-nat.c (darwin_detach): Likewise.
14763         * gnu-nat.c (gnu_detach): Likewise.
14764         * inf-ptrace.c (inf_ptrace_detach): Likewise.
14765         * infcmd.c (detach_command): Pass current_inferior() down to
14766         target_detach.
14767         * infrun.c (follow_fork_inferior): Pass parent_inf to
14768         target_detach.
14769         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
14770         target_detach.
14771         * linux-nat.c (linux_nat_detach): Add inferior parameter.
14772         * linux-thread-db.c (thread_db_detach): Likewise.
14773         * nto-procfs.c (procfs_detach): Likewise.
14774         * procfs.c (procfs_detach): Likewise.
14775         * record.c (record_detach): Likewise.
14776         * record.h (struct inferior): Forward-declare.
14777         (record_detach): Add inferior parameter.
14778         * remote-sim.c (gdbsim_detach): Likewise.
14779         * remote.c (remote_detach_1): Likewise.
14780         (remote_detach): Likewise.
14781         (extended_remote_detach): Likewise.
14782         * sol-thread.c (sol_thread_detach): Likewise.
14783         * target-debug.h (target_debug_print_inferior_p): New macro.
14784         * target-delegates.c: Re-generate.
14785         * top.c (kill_or_detach): Pass inferior down to target_detach.
14786         * windows-nat.c (windows_detach): Add inferior parameter.
14787
14788 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14789
14790         * target.h (struct target_ops) <to_detach>: Remove args
14791         parameter.
14792         (target_detach): Likewise.
14793         * target.c (dispose_inferior): Adjust.
14794         (target_detach): Remove args parameter, adjust.
14795         * aix-thread.c (aix_thread_detach): Adjust.
14796         * corefile.c (core_file_command): Adjust.
14797         * corelow.c (core_detach): Adjust.
14798         * darwin-nat.c (darwin_detach): Adjust.
14799         * gnu-nat.c (gnu_detach): Adjust.
14800         * inf-ptrace.c (inf_ptrace_detach): Adjust.
14801         * infcmd.c (detach_command): Adjust
14802         * infrun.c (follow_fork_inferior): Adjust.
14803         (handle_vfork_child_exec_or_exit): Adjust.
14804         * linux-fork.c (linux_fork_detach): Remove args parameter.
14805         * linux-fork.h (linux_fork_detach): Likewise.
14806         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
14807         * linux-thread-db.c (thread_db_detach): Likewise.
14808         * nto-procfs.c (procfs_detach): Likewise.
14809         * procfs.c (procfs_detach): Likewise.
14810         (do_detach): Remove signo parameter.
14811         * record.c (record_detach): Remove args parameter.
14812         * record.h (record_detach): Likewise.
14813         * remote-sim.c (gdbsim_detach): Likewise.
14814         * remote.c (remote_detach_1): Likewise.
14815         (remote_detach): Likewise.
14816         (extended_remote_detach): Likewise.
14817         * sol-thread.c (sol_thread_detach): Likewise.
14818         * target-delegates.c: Re-generate.
14819         * top.c (struct qt_args) <args>: Remove field.
14820         (kill_or_detach): Don't pass args.
14821         (quit_force): Don't set args.
14822         * windows-nat.c (windows_detach): Remove args parameter.
14823
14824 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14825
14826         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
14827         (arm_linux_init_abi): Install it.
14828
14829 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14830
14831         * osabi.c (gdb_osabi_names): Extend the regexp for
14832         arm-linux-gnueabihf.
14833
14834 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14835
14836         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
14837         m_abbrevs.
14838         (abbrev_table::add_abbrev): Update.
14839         (abbrev_table::lookup_abbrev): Update.
14840
14841 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14842
14843         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
14844
14845 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
14846
14847         * compile/compile.c (compile_to_object): Convert "triplet_rx"
14848         to "std::string".
14849
14850 2018-01-17  Tom Tromey  <tom@tromey.com>
14851
14852         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
14853
14854 2018-01-17  Tom Tromey  <tom@tromey.com>
14855
14856         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
14857         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
14858         (create_array_type_with_stride): Update.
14859         * dwarf2read.c (set_die_type): Update.
14860
14861 2018-01-17  Tom Tromey  <tom@tromey.com>
14862
14863         * dwarf2read.c (delayed_method_info): Remove typedef.
14864         (dwarf2_cu::method_info): Now a std::vector.
14865         (add_to_method_list): Update.
14866         (free_delayed_list): Remove.
14867         (compute_delayed_physnames): Update.
14868         (process_full_comp_unit, process_full_type_unit): Clear the method
14869         list.  Remove cleanups.
14870         (psymtab_include_file_name): Add name_holder parameter.  Use
14871         unique_xmalloc_ptr.
14872         (dwarf_decode_lines): Update.
14873
14874 2018-01-17  Tom Tromey  <tom@tromey.com>
14875             Simon Marchi  <simon.marchi@ericsson.com>
14876
14877         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
14878         (dwarf2_per_objfile::free_cached_comp_units)
14879         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14880         (init_cutu_and_read_dies_no_follow): Update.
14881         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
14882         (dwarf2_cu::~dwarf2_cu): New.
14883         (free_heap_comp_unit, free_stack_comp_unit): Remove.
14884         (age_cached_comp_units, free_one_cached_comp_unit): Update.
14885
14886 2018-01-17  Tom Tromey  <tom@tromey.com>
14887             Simon Marchi  <simon.marchi@ericsson.com>
14888
14889         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
14890         (struct die_reader_specs) <abbrev_table>: New member.
14891         (struct abbrev_table): Add constructor.
14892         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
14893         <abbrev_obstack>: Now an auto_obstack.
14894         (abbrev_table_up): New typedef.
14895         (init_cu_die_reader): Add abbrev_table parameter.
14896         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
14897         Add result_dwo_abbrev_table.
14898         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14899         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
14900         Update.
14901         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
14902         parameter.
14903         (skip_children): Update.
14904         (abbrev_table::alloc_abbrev): Rename from
14905         abbrev_table_alloc_abbrev.
14906         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
14907         (abbrev_table::lookup_abbrev): Rename from
14908         abbrev_table_lookup_abbrev.
14909         (abbrev_table_read_table): Return abbrev_table_up.
14910         (abbrev_table_free, abbrev_table_free_cleanup)
14911         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
14912         (load_partial_dies): Update.
14913
14914 2018-01-17  Tom Tromey  <tom@tromey.com>
14915
14916         * dwarf2read.c (dwarf2_compute_name): Update comment.
14917         (read_func_scope, read_variable): Update.
14918         (new_symbol): Remove.
14919         (new_symbol_full): Rename to new_symbol.
14920
14921 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
14922
14923         PR gdb/16577
14924         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
14925         a warning instead of throwing an error, set section size to 0 and return
14926         NULL.
14927         * gdb_bfd.h (gdb_bfd_map_section): Update description.
14928
14929 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14930
14931         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
14932         std::string.
14933         (linux_ptrace_attach_fail_reason_string): Likewise.
14934         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
14935         Likewise.
14936         (linux_ptrace_attach_fail_reason_string): Likewise.
14937         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
14938
14939 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14940
14941         * linux-nat.c (linux_nat_attach): Remove xstrdup.
14942
14943 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
14944
14945         PR gdb/21559
14946         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
14947         checking for fs_base/gs_base fields in struct user_regs_struct.
14948         * configure: Regenerate.
14949
14950 2018-01-17  Yao Qi  <yao.qi@linaro.org>
14951
14952         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
14953         function.
14954         (aarch64_linux_init_abi): Install it to gdbarch hook
14955         gcc_target_options.
14956
14957 2018-01-15  Pedro Alves  <palves@redhat.com>
14958
14959         * common/signals-state-save-restore.c
14960         (save_original_signals_state): Fix typos.
14961
14962 2017-01-12  Tom Tromey  <tom@tromey.com>
14963             Sergio Durigan Junior  <sergiodj@redhat.com>
14964
14965         * Makefile.in (install-only): Install gdb-add-index.
14966
14967 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
14968
14969         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
14970
14971 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
14972
14973         * infrun.c (keep_going_pass_signal): Clear step-over info when
14974         insert_breakpoints fails.
14975
14976 2018-01-11  Pedro Alves  <palves@redhat.com>
14977
14978         PR gdb/22583
14979         * infrun.c (resume): Rename to ...
14980         (resume_1): ... this.
14981         (resume): Reimplement as wrapper around resume_1.
14982
14983 2018-01-11  Pedro Alves  <palves@redhat.com>
14984
14985         PR remote/22597
14986         * remote.c (remote_parse_stop_reply): Default to the last-set
14987         general thread instead of to 'magic_null_ptid'.
14988
14989 2018-01-10  Pedro Alves  <palves@redhat.com>
14990
14991         * language.h (language_get_symbol_name_matcher): Rename ...
14992         (get_symbol_name_matcher): ... this.
14993         * language.c (language_get_symbol_name_matcher): Ditto.
14994         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
14995         callers adjusted.
14996
14997 2018-01-10  Pedro Alves  <palves@redhat.com>
14998
14999         PR gdb/22670
15000         * dwarf2read.c
15001         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
15002         Adjust to use language_get_symbol_name_matcher instead of
15003         language_defn::la_get_symbol_name_matcher.
15004         * language.c (language_get_symbol_name_matcher): If in Ada mode
15005         and the lookup name is a verbatim match, return Ada's matcher.
15006         * language.h (language_get_symbol_name_matcher): Adjust comment.
15007         (ada_lookup_name_info::verbatim_p):: New method.
15008
15009 2018-01-10  Pedro Alves  <palves@redhat.com>
15010
15011         PR gdb/22670
15012         * ada-lang.c (ada_collect_symbol_completion_matches): If the
15013         minsym's language is language_auto or language_cplus, pass down
15014         language_ada instead.
15015         * symtab.c (compare_symbol_name): Don't frob symbol language here.
15016
15017 2018-01-10  Pedro Alves  <palves@redhat.com>
15018
15019         PR gdb/22670
15020         * minsyms.c (linkage_name_str): New function.
15021         (iterate_over_minimal_symbols): Use it.
15022
15023 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15024
15025         * NEWS: Document that 'info proc' now works on FreeBSD.
15026
15027 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15028
15029         * configure.ac: Check for kinfo_getfile in libutil.
15030         * configure: Regenerate.
15031         * config.in: Regenerate.
15032         * fbsd-nat.c: Include "fbsd-tdep.h".
15033         (fbsd_fetch_cmdline): New.
15034         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
15035         rather than calling error.
15036         (fbsd_info_proc): New.
15037         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
15038         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
15039         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
15040
15041 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15042
15043         * fbsd-nat.c (struct free_deleter): Remove.
15044         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
15045
15046 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15047
15048         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
15049         NULL for an empty pathname.
15050
15051 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15052
15053         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
15054         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
15055         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
15056         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
15057         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
15058         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
15059         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
15060         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
15061         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
15062         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
15063         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
15064         (fbsd_core_fetch_timeval, fbsd_print_sigset)
15065         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
15066         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
15067         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
15068
15069 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
15070
15071         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
15072         (gnu_xfer_auxv): New function.
15073         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
15074         TARGET_OBJECT_AUXV.
15075
15076 2018-01-08  Yao Qi  <yao.qi@linaro.org>
15077             Simon Marchi  <simon.marchi@ericsson.com>
15078
15079         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
15080         common/selftest.c.
15081         (COMMON_OBS): Remove selftest.o.
15082         * configure.ac: Append selftest-arch.c and common/selftest.c to
15083         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
15084         * configure: Re-generated.
15085         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
15086         GDB_SELF_TEST.
15087         (maintenance_info_selftests): Likewise.
15088
15089 2018-01-08  Xavier Roirand  <roirand@adacore.com>
15090
15091         * ada-valprint.c (val_print_packed_array_elements): Use
15092         proper number of elements when printing an array indexed
15093         by an enumeration type.
15094
15095 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15096
15097         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
15098         (dw2_get_file_names_reader): Adjust.
15099         (lookup_dwo_signatured_type): Adjust.
15100         (lookup_dwp_signatured_type): Adjust.
15101         (lookup_signatured_type): Adjust.
15102         (create_type_unit_group): Adjust.
15103         (get_type_unit_group): Adjust.
15104         (process_psymtab_comp_unit_reader): Adjust.
15105         (build_type_psymtabs_reader): Adjust.
15106         (scan_partial_symbols): Adjust.
15107         (add_partial_symbol): Adjust.
15108         (add_partial_subprogram): Adjust.
15109         (peek_die_abbrev): Adjust.
15110         (fixup_go_packaging): Adjust.
15111         (process_imported_unit_die): Adjust.
15112         (dwarf2_compute_name): Adjust.
15113         (dwarf2_physname): Adjust.
15114         (read_import_statement): Adjust.
15115         (handle_DW_AT_stmt_list): Adjust.
15116         (read_file_scope): Adjust.
15117         (read_func_scope): Adjust.
15118         (read_lexical_block_scope): Adjust.
15119         (read_call_site_scope): Adjust.
15120         (read_variable): Adjust.
15121         (dwarf2_rnglists_process): Adjust.
15122         (dwarf2_ranges_process): Adjust.
15123         (dwarf2_ranges_read): Adjust.
15124         (dwarf2_get_pc_bounds): Adjust.
15125         (dwarf2_record_block_ranges): Adjust.
15126         (dwarf2_add_field): Adjust.
15127         (dwarf2_add_member_fn): Adjust.
15128         (read_structure_type): Adjust.
15129         (process_structure_scope): Adjust.
15130         (read_enumeration_type): Adjust.
15131         (read_array_type): Adjust.
15132         (mark_common_block_symbol_computed): Adjust.
15133         (read_common_block): Adjust.
15134         (read_namespace_type): Adjust.
15135         (read_namespace): Adjust.
15136         (read_module_type): Adjust.
15137         (read_tag_pointer_type): Adjust.
15138         (read_tag_ptr_to_member_type): Adjust.
15139         (read_tag_string_type): Adjust.
15140         (read_subroutine_type): Adjust.
15141         (read_typedef): Adjust.
15142         (read_base_type): Adjust.
15143         (attr_to_dynamic_prop): Adjust.
15144         (read_subrange_type): Adjust.
15145         (read_unspecified_type): Adjust.
15146         (dwarf2_read_abbrevs): Adjust.
15147         (load_partial_dies): Adjust.
15148         (read_partial_die): Adjust.
15149         (find_partial_die): Adjust.
15150         (guess_partial_die_structure_name): Adjust.
15151         (fixup_partial_die): Adjust.
15152         (read_attribute_value): Adjust.
15153         (read_addr_index): Adjust.
15154         (read_addr_index_from_leb128): Adjust.
15155         (read_str_index): Adjust.
15156         (dwarf2_string_attr): Adjust.
15157         (get_debug_line_section): Adjust.
15158         (dwarf_decode_line_header): Adjust.
15159         (lnp_state_machine::check_line_address): Adjust.
15160         (dwarf_decode_lines_1): Adjust.
15161         (dwarf_decode_lines): Adjust.
15162         (dwarf2_start_symtab): Adjust.
15163         (var_decode_location): Adjust.
15164         (new_symbol_full): Adjust.
15165         (dwarf2_const_value_data): Adjust.
15166         (dwarf2_const_value_attr): Adjust.
15167         (dwarf2_const_value): Adjust.
15168         (die_type): Adjust.
15169         (die_containing_type): Adjust.
15170         (build_error_marker_type): Adjust.
15171         (lookup_die_type): Adjust.
15172         (guess_full_die_structure_name): Adjust.
15173         (anonymous_struct_prefix): Adjust.
15174         (determine_prefix): Adjust.
15175         (dwarf2_name): Adjust.
15176         (follow_die_ref_or_sig): Adjust.
15177         (follow_die_offset): Adjust.
15178         (follow_die_ref): Adjust.
15179         (follow_die_sig_1): Adjust.
15180         (follow_die_sig): Adjust.
15181         (get_signatured_type): Adjust.
15182         (get_DW_AT_signature_type): Adjust.
15183         (decode_locdesc): Adjust.
15184         (dwarf_decode_macros): Adjust.
15185         (cu_debug_loc_section): Adjust.
15186         (fill_in_loclist_baton): Adjust.
15187         (dwarf2_symbol_mark_computed): Adjust.
15188         (init_one_comp_unit): Don't assign
15189         dwarf2_cu::dwarf2_per_objfile.
15190         (set_die_type): Adjust.
15191
15192 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15193
15194         * dwarf2read.c (struct mapped_debug_names): Add constructor.
15195         <dwarf2_per_objfile>: New field.
15196         (dwarf2_per_objfile): Remove global.
15197         (get_dwarf2_per_objfile): New function.
15198         (set_dwarf2_per_objfile): New function.
15199         (dwarf2_build_psymtabs_hard): Change objfile parameter to
15200         dwarf2_per_objfile.
15201         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
15202         (read_abbrev_offset): Likewise.
15203         (read_indirect_string): Likewise.
15204         (read_indirect_line_string): Likewise.
15205         (read_indirect_string_at_offset): Likewise.
15206         (read_indirect_string_from_dwz): Likewise.
15207         (dwarf2_find_containing_comp_unit): Change objfile parameter to
15208         dwarf2_per_objfile.
15209         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
15210         (create_all_comp_units): Change objfile parameter to
15211         dwarf2_per_objfile.
15212         (create_all_type_units): Likewise.
15213         (process_queue): Add dwarf2_per_objfile parameter.
15214         (read_and_check_comp_unit_head): Likewise.
15215         (lookup_dwo_unit_in_dwp): Likewise.
15216         (get_dwp_file): Likewise.
15217         (process_cu_includes): Likewise.
15218         (struct free_dwo_file_cleanup_data): New struct.
15219         (dwarf2_has_info): Use get_dwarf2_per_objfile and
15220         set_dwarf2_per_objfile.
15221         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
15222         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
15223         context, adjust calls.
15224         (dw2_instantiate_symtab): Likewise.
15225         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
15226         (dw2_get_cu): Likewise.
15227         (create_cu_from_index_list): Change objfile parameter to
15228         dwarf2_per_objfile.
15229         (create_cus_from_index_list): Get dwarf2_per_objfile from
15230         context, adjust calls.
15231         (create_cus_from_index): Likewise.
15232         (create_signatured_type_table_from_index): Change objfile
15233         parameter to dwarf2_per_objfile.
15234         (create_signatured_type_table_from_debug_names): Change objfile
15235         parameter to dwarf2_per_objfile.
15236         (create_addrmap_from_index): Likewise.
15237         (create_addrmap_from_aranges): Likewise.
15238         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
15239         (dw2_setup): Remove.
15240         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
15241         context.
15242         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
15243         get_dwarf2_per_objfile.
15244         (dw2_forget_cached_source_info): Likewise.
15245         (dw2_map_symtabs_matching_filename): Likewise.
15246         (struct dw2_symtab_iterator) <index>: Remove.
15247         <dwarf2_per_objfile>: New field.
15248         (dw2_symtab_iter_init): Replace index parameter with
15249         dwarf2_per_objfile.
15250         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
15251         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
15252         (dw2_print_stats): Likewise.
15253         (dw2_dump): Likewise.
15254         (dw2_expand_symtabs_for_function): Likewise.
15255         (dw2_expand_all_symtabs): Likewise.
15256         (dw2_expand_symtabs_with_fullname): Likewise.
15257         (dw2_expand_marked_cus): Replace index and objfile parameters
15258         with dwarf2_per_objfile.
15259         (dw_expand_symtabs_matching_file_matcher): Add
15260         dwarf2_per_objfile parameter and adjust calls.
15261         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
15262         adjust calls.
15263         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
15264         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
15265         adjust calls.
15266         (create_cus_from_debug_names_list): Replace objfile parameter
15267         with dwarf2_per_objfile and adjust calls.
15268         (create_cus_from_debug_names): Likewise.
15269         (dwarf2_read_debug_names): Likewise.
15270         (mapped_debug_names::namei_to_name): Adjust call.
15271         (dw2_debug_names_iterator::next): Likewise.
15272         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
15273         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
15274         (dw2_debug_names_dump): Likewise.
15275         (dw2_debug_names_expand_symtabs_for_function): Likewise.
15276         (dw2_debug_names_expand_symtabs_matching): Likewise.
15277         (dwarf2_initialize_objfile): Likewise.
15278         (dwarf2_build_psymtabs): Likewise.
15279         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
15280         this_cu.
15281         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
15282         (read_and_check_comp_unit_head): Likewise.
15283         (read_abbrev_offset): Likewise.
15284         (create_debug_type_hash_table): Likewise.
15285         (create_debug_types_hash_table): Likewise.
15286         (create_all_type_units): Replace objfile parameter with
15287         dwarf2_per_objfile.
15288         (add_type_unit): Add dwarf2_per_objfile parameter.
15289         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
15290         with dwarf2_per_objfile.
15291         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
15292         (lookup_dwp_signatured_type): Likewise.
15293         (lookup_signatured_type): Likewise.
15294         (read_cutu_die_from_dwo): Likewise.
15295         (init_tu_and_read_dwo_dies): Likewise.
15296         (init_cutu_and_read_dies): Likewise.
15297         (init_cutu_and_read_dies_no_follow): Likewise.
15298         (allocate_type_unit_groups_table): Add objfile parameter.
15299         (create_type_unit_group): Use dwarf2_per_objfile from cu.
15300         (get_type_unit_group): Likewise.
15301         (process_psymtab_comp_unit): Update call.
15302         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
15303         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
15304         (print_tu_stats): Likewise.
15305         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
15306         in void* parameter.
15307         (build_type_psymtabs): Change objfile parameter to
15308         dwarf2_per_objfile.
15309         (process_skeletonless_type_unit): Use dwarf2_per_objfile
15310         passed in void* parameter.
15311         (process_skeletonless_type_units): Change objfile parameter to
15312         dwarf2_per_objfile.
15313         (set_partial_user): Likewise.
15314         (dwarf2_build_psymtabs_hard): Likewise.
15315         (read_comp_units_from_section): Likewise.
15316         (create_all_comp_units): Likewise.
15317         (scan_partial_symbols): Update calls.
15318         (add_partial_symbol): Likewise.
15319         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
15320         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
15321         (process_queue): Add dwarf2_per_objfile parameter.
15322         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
15323         (compute_compunit_symtab_includes): Likewise.
15324         (process_cu_includes): Add dwarf2_per_objfile parameter.
15325         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
15326         (process_full_type_unit): Likewise.
15327         (process_imported_unit_die): Update call.
15328         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
15329         (read_file_scope): Likewise.
15330         (allocate_dwo_file_hash_table): Add objfile parameter.
15331         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
15332         (create_cus_hash_table): Likewise.
15333         (create_dwp_hash_table): Likewise.
15334         (create_dwo_unit_in_dwp_v1): Likewise.
15335         (create_dwp_v2_section): Likewise.
15336         (create_dwo_unit_in_dwp_v2): Likewise.
15337         (lookup_dwo_unit_in_dwp): Likewise.
15338         (try_open_dwop_file): Likewise.
15339         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
15340         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
15341         cleanup to include a reference to dwarf2_per_objfile.
15342         (open_dwp_file): Add dwarf2_per_objfile parameter.
15343         (open_and_init_dwp_file): Likewise.
15344         (get_dwp_file): Likewise.
15345         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
15346         (queue_and_load_all_dwo_tus): Update call.
15347         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
15348         data.
15349         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
15350         (dwarf2_ranges_process): Likewise.
15351         (dwarf2_get_pc_bounds): Likewise.
15352         (mark_common_block_symbol_computed): Likewise.
15353         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
15354         (dwarf2_read_abbrevs): Update call.
15355         (read_partial_die): Use dwarf2_per_objfile from cu.
15356         (find_partial_die): Likewise.
15357         (fixup_partial_die): Likewise.
15358         (read_attribute_value): Likewise.
15359         (read_indirect_string_at_offset_from): Add objfile parameter.
15360         (read_indirect_string_at_offset): Add dwarf2_per_objfile
15361         parameter.
15362         (read_indirect_string_from_dwz): Add objfile parameter.
15363         (read_indirect_string): Add objfile parameter.
15364         (read_addr_index_1): Add dwarf2_per_objfile parameter.
15365         (read_addr_index): Use dwarf2_per_objfile from cu.
15366         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
15367         call dw2_setup.
15368         (read_str_index): Use dwarf2_per_objfile from cu.
15369         (get_debug_line_section): Likewise.
15370         (read_formatted_entries): Add dwarf2_per_objfile parameter.
15371         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
15372         (new_symbol_full): Use dwarf2_per_objfile from cu.
15373         (build_error_marker_type): Likewise.
15374         (lookup_die_type): Likewise.
15375         (determine_prefix): Likewise.
15376         (follow_die_offset): Likewise.
15377         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
15378         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
15379         (dwarf2_fetch_die_type_sect_off): Likewise.
15380         (dwarf2_get_die_type): Likewise.
15381         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
15382         (get_signatured_type): Likewise.
15383         (get_DW_AT_signature_type): Likewise.
15384         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
15385         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
15386         (cu_debug_loc_section): Likewise.
15387         (fill_in_loclist_baton): Likewise.
15388         (dwarf2_symbol_mark_computed): Likewise.
15389         (dwarf2_find_containing_comp_unit): Change objfile parameter to
15390         dwarf2_per_objfile.
15391         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
15392         parameter.
15393         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
15394         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
15395         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
15396         (set_die_type): Use dwarf2_free_objfile from cu.
15397         (get_die_type_at_offset): Likewise.
15398         (dwarf2_per_objfile_free): Don't assign global variable.
15399         (debug_names) <constructor>: Add dwarf2_per_objfile
15400         parameter, update m_debugstrlookup construction.
15401         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
15402         parameter.
15403         <m_dwarf2_per_objfile>: New field.
15404         <lookup>: Use m_dwarf2_per_objfile.
15405         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
15406         (psyms_seen_size): Likewise.
15407         (write_gdbindex): Replace objfile parameter with
15408         dwarf2_per_objfile.
15409         (write_debug_names): Likewise.
15410         (write_psymtabs_to_index): Likewise.
15411         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
15412         calls.
15413
15414 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15415
15416         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
15417         <dwarf2_per_objfile>: New field.
15418         (struct dwarf2_per_cu_data) <objfile>: Remove.
15419         <dwarf2_per_objfile>: New field.
15420         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
15421         of objfile.
15422         (create_signatured_type_table_from_index): Likewise.
15423         (create_debug_type_hash_table): Likewise.
15424         (fill_in_sig_entry_from_dwo_entry): Likewise.
15425         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
15426         (create_type_unit_group): Assign dwarf2_per_objfile instead of
15427         objfile.
15428         (create_partial_symtab): Access objfile through
15429         dwarf2_per_objfile.
15430         (process_psymtab_comp_unit_reader): Likewise.
15431         (read_comp_units_from_section): Likewise.
15432         (scan_partial_symbols): Likewise.
15433         (add_partial_symbol): Likewise.
15434         (add_partial_subprogram): Likewise.
15435         (peek_die_abbrev): Likewise.
15436         (fixup_go_packaging): Likewise.
15437         (process_full_comp_unit): Likewise.
15438         (process_full_type_unit): Likewise.
15439         (process_imported_unit_die): Likewise.
15440         (dwarf2_compute_name): Likewise.
15441         (dwarf2_physname): Likewise.
15442         (read_import_statement): Likewise.
15443         (create_cus_hash_table): Assign dwarf2_physname instead of
15444         objfile.
15445         (read_func_scope): Access objfile through dwarf2_per_objfile.
15446         (read_lexical_block_scope): Likewise.
15447         (read_call_site_scope): Likewise.
15448         (read_variable): Likewise.
15449         (dwarf2_rnglists_process): Likewise.
15450         (dwarf2_ranges_process): Likewise.
15451         (dwarf2_ranges_read): Likewise.
15452         (dwarf2_record_block_ranges): Likewise.
15453         (dwarf2_add_field): Likewise.
15454         (dwarf2_add_member_fn): Likewise.
15455         (read_structure_type): Likewise.
15456         (process_structure_scope): Likewise.
15457         (read_enumeration_type): Likewise.
15458         (read_array_type): Likewise.
15459         (read_common_block): Likewise.
15460         (read_namespace_type): Likewise.
15461         (read_namespace): Likewise.
15462         (read_module_type): Likewise.
15463         (read_tag_pointer_type): Likewise.
15464         (read_tag_ptr_to_member_type): Likewise.
15465         (read_tag_string_type): Likewise.
15466         (read_subroutine_type): Likewise.
15467         (read_typedef): Likewise.
15468         (read_base_type): Likewise.
15469         (attr_to_dynamic_prop): Likewise.
15470         (read_subrange_type): Likewise.
15471         (read_unspecified_type): Likewise.
15472         (load_partial_dies): Likewise.
15473         (read_partial_die): Likewise.
15474         (find_partial_die): Likewise.
15475         (guess_partial_die_structure_name): Likewise.
15476         (fixup_partial_die): Likewise.
15477         (read_attribute_value): Likewise.
15478         (read_addr_index_from_leb128): Likewise.
15479         (dwarf2_read_addr_index): Likewise.
15480         (dwarf2_string_attr): Likewise.
15481         (lnp_state_machine::check_line_address): Likewise.
15482         (dwarf_decode_lines_1): Likewise.
15483         (dwarf_decode_lines): Likewise.
15484         (dwarf2_start_symtab): Likewise.
15485         (var_decode_location): Likewise.
15486         (new_symbol_full): Likewise.
15487         (dwarf2_const_value_data): Likewise.
15488         (dwarf2_const_value_attr): Likewise.
15489         (dwarf2_const_value): Likewise.
15490         (die_type): Likewise.
15491         (die_containing_type): Likewise.
15492         (lookup_die_type): Likewise.
15493         (guess_full_die_structure_name): Likewise.
15494         (anonymous_struct_prefix): Likewise.
15495         (dwarf2_name): Likewise.
15496         (follow_die_ref_or_sig): Likewise.
15497         (follow_die_offset): Likewise.
15498         (follow_die_ref): Likewise.
15499         (dwarf2_fetch_die_loc_sect_off): Likewise.
15500         (dwarf2_fetch_constant_bytes): Likewise.
15501         (dwarf2_fetch_die_type_sect_off): Likewise.
15502         (dwarf2_get_die_type): Likewise.
15503         (follow_die_sig): Likewise.
15504         (decode_locdesc): Likewise.
15505         (dwarf2_per_cu_objfile): Likewise.
15506         (dwarf2_per_cu_text_offset): Likewise.
15507         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
15508         objfile.
15509         (set_die_type): Access objfile through
15510         dwarf2_per_objfile.
15511
15512 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15513
15514         * valprint.c (converted_character_d): Remove typedef.
15515         (DEF_VEC_O (converted_character_d)): Remove.
15516         (count_next_character): Use std::vector.
15517         (print_converted_chars_to_obstack): Likewise.
15518         (generic_printstr): Likewise.
15519
15520 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15521
15522         * xml-support.h (struct gdb_xml_value): Add constructor.
15523         <value>: Change type to unique_xmalloc_ptr.
15524         (gdb_xml_value_s): Remove typedef.
15525         (DEF_VEC_O (gdb_xml_value_s)): Remove.
15526         (gdb_xml_element_start_handler): Change parameter type to
15527         std::vector.
15528         (xml_find_attribute): Likewise.
15529         * xml-support.c (xml_find_attribute): Change parameter type to
15530         std::vector and adjust.
15531         (gdb_xml_values_cleanup): Remove.
15532         (gdb_xml_parser::start_element): Adjust to std::vector.
15533         (xinclude_start_include): Change paraeter type to std::vector
15534         and adjust.
15535         * btrace.c (check_xml_btrace_version): Likewise.
15536         (parse_xml_btrace_block): Likewise.
15537         (parse_xml_btrace_pt_config_cpu): Likewise.
15538         (parse_xml_btrace_pt): Likewise.
15539         (parse_xml_btrace_conf_bts): Likewise.
15540         (parse_xml_btrace_conf_pt): Likewise.
15541         * memory-map.c (memory_map_start_memory): Likewise.
15542         (memory_map_start_property): Likewise.
15543         * osdata.c (osdata_start_osdata): Likewise.
15544         (osdata_start_item): Likewise.
15545         (osdata_start_column): Likewise.
15546         * remote.c (start_thread): Likewise.
15547         * solib-aix.c (library_list_start_library): Likewise.
15548         (library_list_start_list): Likewise.
15549         * solib-svr4.c (library_list_start_library): Likewise.
15550         (svr4_library_list_start_list): Likewise.
15551         * solib-target.c (library_list_start_segment): Likewise.
15552         (library_list_start_section): Likewise.
15553         (library_list_start_library): Likewise.
15554         (library_list_start_list): Likewise.
15555         * tracepoint.c (traceframe_info_start_memory): Likewise.
15556         (traceframe_info_start_tvar): Likewise.
15557         * xml-syscall.c (syscall_start_syscall): Likewise.
15558         * xml-tdesc.c (tdesc_start_target): Likewise.
15559         (tdesc_start_feature): Likewise.
15560         (tdesc_start_reg): Likewise.
15561         (tdesc_start_union): Likewise.
15562         (tdesc_start_struct): Likewise.
15563         (tdesc_start_flags): Likewise.
15564         (tdesc_start_enum): Likewise.
15565         (tdesc_start_field): Likewise.
15566         (tdesc_start_enum_value): Likewise.
15567         (tdesc_start_vector): Likewise.
15568
15569 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15570
15571         * extension.h (struct xmethod_worker) <clone>: Remove.
15572         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
15573         Remove.
15574         (python_xmethod_worker::clone): Remove.
15575         * valops.c (find_overload_match): Use std::move instead of
15576         clone.
15577
15578 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15579
15580         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
15581         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
15582         <free_xmethod_worker_data>: Remove.
15583         <get_matching_xmethod_workers>: Chance VEC to std::vector.
15584         <get_xmethod_arg_types>: Remove.
15585         <get_xmethod_result_type>: Remove.
15586         <invoke_xmethod>: Remove.
15587         * extension.c (new_xmethod_worker): Remove.
15588         (clone_xmethod_worker): Remove.
15589         (get_matching_xmethod_workers): Return void, pass std::vector by
15590         pointer.
15591         (get_xmethod_arg_types): Rename to...
15592         (xmethod_worker::get_arg_types): ... this, and adjust.
15593         (get_xmethod_result_type): Rename to...
15594         (xmethod_worker::get_result_type): ... this, and adjust.
15595         (invoke_xmethod): Remove.
15596         (free_xmethod_worker): Remove.
15597         (free_xmethod_worker_vec): Remove.
15598         * extension.h (enum ext_lang_rc): Move here from
15599         extension-priv.h.
15600         (struct xmethod_worker): Add constructor and destructor.
15601         <data>: Remove.
15602         <value>: Remove.
15603         <invoke, clone, do_get_result_type, do_get_arg_types>: New
15604         virtual pure methods.
15605         <get_arg_types, get_result_type>: New methods.
15606         (xmethod_worker_ptr): Remove typedef.
15607         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
15608         (xmethod_worker_vec): Remove typedef.
15609         (xmethod_worker_up): New typedef.
15610         (invoke_xmethod): Remove.
15611         (clone_xmethod_worker): Remove.
15612         (free_xmethod_worker): Remove.
15613         (free_xmethod_worker_vec): Remove.
15614         (get_xmethod_arg_types): Remove.
15615         (get_xmethod_result_type): Remove.
15616         * valops.c (find_method_list): Use std::vector, don't use
15617         intermediate vector.
15618         (value_find_oload_method_list): Use std::vector.
15619         (find_overload_match): Use std::vector.
15620         (find_oload_champ): Use std::vector.
15621         * value.c (value_free): Use operator delete.
15622         (value_of_xmethod): Rename to...
15623         (value_from_xmethod): ... this.  Don't assign
15624         xmethod_worker::value, take rvalue-reference.
15625         (result_type_of_xmethod): Adjust.
15626         (call_xmethod): Adjust.
15627         * value.h: Include extension.h.
15628         (struct xmethod_worker): Don't forward-declare.
15629         (value_of_xmethod): Rename to...
15630         (value_from_xmethod): ... this, take rvalue-reference.
15631         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
15632         (struct python_xmethod_worker): ... this, add constructor and
15633         destructor.
15634         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
15635         (gdbpy_free_xmethod_worker_data): Rename to...
15636         (python_xmethod_worker::~python_xmethod_worker): ... this and
15637         adjust.
15638         (gdbpy_clone_xmethod_worker_data): Rename to...
15639         (python_xmethod_worker::clone): ... this and adjust.
15640         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
15641         temporary vector.
15642         (gdbpy_get_xmethod_arg_types): Rename to...
15643         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
15644         (gdbpy_get_xmethod_result_type): Rename to...
15645         (python_xmethod_worker::do_get_result_type): ... this and
15646         adjust.
15647         (gdbpy_invoke_xmethod): Rename to...
15648         (python_xmethod_worker::invoke): ... this and adjust.
15649         (new_python_xmethod_worker): Rename to...
15650         (python_xmethod_worker::python_xmethod_worker): ... this and
15651         adjust.
15652         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
15653         Remove.
15654         (gdbpy_free_xmethod_worker_data): Remove.
15655         (gdbpy_get_matching_xmethod_workers): Use std::vector.
15656         (gdbpy_get_xmethod_arg_types): Remove.
15657         (gdbpy_get_xmethod_result_type): Remove.
15658         (gdbpy_invoke_xmethod): Remove.
15659         * python/python.c (python_extension_ops): Remove obsolete
15660         callbacks.
15661
15662 2018-01-05  Pedro Alves  <palves@redhat.com>
15663
15664         PR gdb/18653
15665         * common/signals-state-save-restore.c
15666         (save_original_signals_state): New parameter 'quiet'.  Warn if we
15667         find a custom handler preinstalled, instead of internal erroring.
15668         But only warn if !quiet.
15669         * common/signals-state-save-restore.h
15670         (save_original_signals_state): New parameter 'quiet'.
15671         * main.c (captured_main_1): Move save_original_signals_state call
15672         after option handling, and pass QUIET.
15673
15674 2018-01-05  Pedro Alves  <palves@redhat.com>
15675
15676         * spu-tdep.c (spu_catch_start): Pass
15677         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
15678
15679 2018-01-05  Pedro Alves  <palves@redhat.com>
15680
15681         PR gdb/22670
15682         * ada-lang.c (literal_symbol_name_matcher): New function.
15683         (ada_get_symbol_name_matcher): Use it for
15684         symbol_name_match_type::SEARCH_NAME.
15685         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
15686         it down instead of assuming symbol_name_match_type::FULL.
15687         * block.h (block_lookup_symbol): New parameter 'match_type'.
15688         * c-valprint.c (print_unpacked_pointer): Use
15689         lookup_symbol_search_name instead of lookup_symbol.
15690         * compile/compile-object-load.c (get_out_value_type): Pass down
15691         symbol_name_match_type::SEARCH_NAME.
15692         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
15693         symbol_name_match_type::FULL.
15694         * cp-support.c (cp_get_symbol_name_matcher): Handle
15695         symbol_name_match_type::SEARCH_NAME.
15696         * infrun.c (insert_exception_resume_breakpoint): Use
15697         lookup_symbol_search_name.
15698         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
15699         * psymtab.c (maintenance_check_psymtabs): Use
15700         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
15701         * stack.c (print_frame_args): Use lookup_symbol_search_name and
15702         SYMBOL_SEARCH_NAME.
15703         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
15704         if symbol_name_match_type::SEARCH_NAME.
15705         (lookup_symbol_in_language): Pass down
15706         symbol_name_match_type::FULL.
15707         (lookup_symbol_search_name): New.
15708         (lookup_language_this): Pass down
15709         symbol_name_match_type::SEARCH_NAME.
15710         (lookup_symbol_aux, lookup_local_symbol): New parameter
15711         'match_type'.  Pass it down.
15712         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
15713         (lookup_symbol_search_name): New declaration.
15714         (lookup_symbol_in_block): New 'match_type' parameter.
15715
15716 2018-01-05  Pedro Alves  <palves@redhat.com>
15717
15718         PR gdb/22670
15719         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
15720         ada_lookup_symbol.
15721         (ada_lookup_symbol): Reimplement in terms of
15722         ada_lookup_symbol_list, bits factored out from
15723         ada_lookup_encoded_symbol.
15724
15725 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15726
15727         * ada-exp.y (write_object_renaming): When subscripting an array
15728         using a symbol as the index, pass the block in call to
15729         ada_lookup_encoded_symbol when looking that symbol up.
15730
15731 2018-01-05  Jerome Guitton  <guitton@adacore.com>
15732
15733         * ada-lang.c (ada_array_length): Use ada_index_type instead of
15734         TYPE_INDEX_TYPE.
15735
15736 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15737
15738         * ada-lang.c (ada_to_fixed_value_create): Add handling of
15739         the case where VALUE_LVAL (val0) is not lval_memory.
15740
15741 2018-01-05  Xavier Roirand  <roirand@adacore.com>
15742
15743         * ada-valprint.c (print_optional_low_bound): Handle
15744         character-indexed array printing like boolean-indexed array
15745         printing.
15746
15747 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15748
15749         * NEWS: Create a new section for the next release branch.
15750         Rename the section of the current branch, now that it has
15751         been cut.
15752
15753 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15754
15755         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
15756         * version.in: Bump version to 8.1.50.DATE-git.
15757
15758 2018-01-03  Xavier Roirand  <roirand@adacore.com>
15759
15760         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
15761         Add field.
15762         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
15763         Add field.
15764         (default_exception_support_info) <catch_handlers_sym>: Add field.
15765         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
15766         (ada_exception_name_addr_1): Add "catch handlers" handling.
15767         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
15768         Update all callers.
15769         (create_excep_cond_exprs) <ex>: Add parameter.
15770         (re_set_exception): Update create_excep_cond_exprs call.
15771         (print_it_exception, print_one_exception, print_mention_exception)
15772         (print_recreate_exception): Add "catch handler" handling.
15773         (allocate_location_catch_handlers, re_set_catch_handlers)
15774         (check_status_catch_handlers, print_it_catch_handlers)
15775         (print_one_catch_handlers, print_mention_catch_handlers)
15776         (print_recreate_catch_handlers): New function.
15777         (catch_handlers_breakpoint_ops): New variable.
15778         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
15779         Add parameter.  Add "catch handler" handling.
15780         (ada_exception_sym_name, ada_exception_breakpoint_ops):
15781         Add "catch handler" handling.
15782         (ada_exception_catchpoint_cond_string): Add "catch handler"
15783         handling.
15784         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
15785         call.
15786         (catch_ada_handlers_command): New function.
15787         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
15788         operations structure.
15789         (_initialize_ada_language): Add "catch handlers" command entry.
15790         * NEWS: Document "catch handlers" feature.
15791
15792 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15793
15794         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
15795         account when creating the array type of the slice.
15796         (ada_value_slice): Likewise.
15797
15798 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15799
15800         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
15801         New enum value.
15802         (create_array_type_with_stride): Add byte_stride_prop parameter.
15803         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
15804         New parameter.  Update all callers in this file.
15805         (array_type_has_dynamic_stride): New function.
15806         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
15807         of arrays with dynamic byte strides.
15808         * dwarf2read.c (read_array_type): Add support for dynamic
15809         DW_AT_byte_stride attributes.
15810
15811 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15812
15813         * dwarf2read.c (read_unspecified_type): Treat
15814         DW_TAG_enumeration_type DIEs from Ada units as stubs.
15815
15816 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15817
15818         Update copyright year range in all GDB files.
15819
15820 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
15821
15822         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
15823         and gdb/testsuite/gdb.base/step-line.c.
15824
15825 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15826
15827         * copyright.py (main): Dump the contents of
15828         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
15829         even if BY_HAND is empty.
15830
15831 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15832
15833         * top.c (print_gdb_version): Update Copyright year in version
15834         message.
15835
15836 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15837
15838         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
15839
15840 For older changes see ChangeLog-2017.
15841 \f
15842 Local Variables:
15843 mode: change-log
15844 left-margin: 8
15845 fill-column: 74
15846 version-control: never
15847 coding: utf-8
15848 End: