Change get_filename_and_charpos to return void
[external/binutils.git] / gdb / ChangeLog
1 2018-11-19  Tom Tromey  <tom@tromey.com>
2
3         * source.c (get_filename_and_charpos): Return void.
4
5 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
6
7         * skip.c (_initialize_step_skip): Fix "info skip" help.
8
9 2018-11-16  Tom Tromey  <tom@tromey.com>
10
11         PR rust/23625:
12         * rust-lang.c (rust_internal_print_type): Handle TYPE_CODE_PTR.
13
14 2018-11-19  Simon Marchi  <simon.marchi@ericsson.com>
15
16         * infrun.c (displaced_step_inferior_states): Change type to
17         std::forward_list.
18         (get_displaced_stepping_state): Adjust.
19         (displaced_step_in_progress_any_inferior): Adjust.
20         (add_displaced_stepping_state): Adjust.
21         (remove_displaced_stepping_state): Adjust.
22
23 2018-11-18  Tom Tromey  <tom@tromey.com>
24
25         PR build/23814:
26         * target-delegates.c: Rebuild.
27         * ia64-linux-nat.c (class ia64_linux_nat_target)
28         <have_steppable_watchpoint>: Use override.  Return true, not 1.
29         (ia64_linux_nat_target::can_use_hw_breakpoint): Rename.  Remove
30         "self" argument.
31         (ia64_linux_nat_target::low_new_thread): Rename.
32         (class ia64_linux_nat_target) <read_description>: Don't declare.
33         * target.h (struct target_ops) <have_steppable_watchpoint>: Return
34         bool.
35
36 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
37
38         PR gdb/22736:
39         * aarch64-tdep.c (aarch64_push_dummy_call): Remove
40         lang_struct_return code.
41
42 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
43
44         * aarch64-tdep.c (aarch64_push_dummy_call): Replace arg with
45         return_method.
46         * alpha-tdep.c (alpha_push_dummy_call): Likewise.
47         * amd64-tdep.c (amd64_push_arguments): Likewise.
48         (amd64_push_dummy_call): Likewise.
49         * amd64-windows-tdep.c (amd64_windows_push_arguments): Likewise.
50         * arc-tdep.c (arc_push_dummy_call): Likewise.
51         * arm-tdep.c (arm_push_dummy_call): Likewise.
52         * avr-tdep.c (avr_push_dummy_call): Likewise.
53         * bfin-tdep.c (bfin_push_dummy_call): Likewise.
54         * cris-tdep.c (cris_push_dummy_call): Likewise.
55         * csky-tdep.c (csky_push_dummy_call): Likewise.
56         * frv-tdep.c (frv_push_dummy_call): Likewise.
57         * gdbarch.c: Regenerate.
58         * gdbarch.h: Regenerate.
59         * gdbarch.sh (gdbarch_push_dummy_call): Replace arg with
60         return_method.
61         * h8300-tdep.c (h8300_push_dummy_call): Likewise.
62         * hppa-tdep.c (hppa32_push_dummy_call): Likewise.
63         (hppa64_push_dummy_call): Likewise.
64         * i386-darwin-tdep.c (i386_darwin_push_dummy_call): Likewise.
65         * i386-tdep.c (i386_push_dummy_call): Likewise.
66         * ia64-tdep.c (ia64_push_dummy_call): Likewise.
67         * infcall.c (call_function_by_hand_dummy): Likewise.
68         * iq2000-tdep.c (iq2000_push_dummy_call): Likewise.
69         * lm32-tdep.c (lm32_push_dummy_call): Likewise.
70         * m32c-tdep.c (m32c_push_dummy_call): Likewise.
71         * m32r-tdep.c (m32r_push_dummy_call): Likewise.
72         * m68hc11-tdep.c (m68hc11_push_dummy_call): Likewise.
73         * m68k-tdep.c (m68k_push_dummy_call): Likewise.
74         * mep-tdep.c (mep_push_dummy_call): Likewise.
75         * mips-tdep.c (mips_eabi_push_dummy_call): Likewise.
76         (mips_n32n64_push_dummy_call): Likewise.
77         (mips_o32_push_dummy_call): Likewise.
78         (mips_o64_push_dummy_call): Likewise.
79         * mn10300-tdep.c (mn10300_push_dummy_call): Likewise.
80         * msp430-tdep.c (msp430_push_dummy_call): Likewise.
81         * nds32-tdep.c (nds32_push_dummy_call): Likewise.
82         * nios2-tdep.c (nios2_push_dummy_call): Likewise.
83         * or1k-tdep.c (or1k_push_dummy_call): Likewise.
84         * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Likewise.
85         (ppc64_sysv_abi_push_dummy_call): Likewise.
86         * ppc-tdep.h (ppc_sysv_abi_push_dummy_call): Likewise.
87         (ppc64_sysv_abi_push_dummy_call): Likewise.
88         * riscv-tdep.c (riscv_push_dummy_call): Likewise.
89         * rl78-tdep.c (rl78_push_dummy_call): Likewise.
90         * rs6000-aix-tdep.c (rs6000_push_dummy_call): Likewise.
91         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Likewise.
92         * rx-tdep.c (rx_push_dummy_call): Likewise.
93         * s390-tdep.c (s390_push_dummy_call): Likewise.
94         * score-tdep.c (score_push_dummy_call): Likewise.
95         * sh-tdep.c (sh_push_dummy_call_fpu): Likewise.
96         (sh_push_dummy_call_nofpu): Likewise.
97         * sparc-tdep.c (sparc32_store_arguments): Likewise.
98         (sparc32_push_dummy_call): Likewise.
99         * sparc64-tdep.c (sparc64_store_arguments): Likewise.
100         (sparc64_push_dummy_call): Likewise.
101         * spu-tdep.c (spu_push_dummy_call): Likewise.
102         * tic6x-tdep.c (tic6x_push_dummy_call): Likewise.
103         * tilegx-tdep.c (tilegx_push_dummy_call): Likewise.
104         * v850-tdep.c (v850_push_dummy_call): Likewise.
105         * vax-tdep.c (vax_push_dummy_call): Likewise.
106         * xstormy16-tdep.c (xstormy16_push_dummy_call): Likewise.
107         * xtensa-tdep.c (xtensa_push_dummy_call): Likewise.
108
109 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
110
111         * gdbarch.sh (enum function_call_return_method): Add enum.
112         * gdbarch.h: Regenerate.
113         * infcall.c (call_function_by_hand_dummy): Replace vars with enum.
114
115 2018-11-15  Joel Brobecker  <brobecker@adacore.com>
116
117         * unittests/copy_bitwise-selftests.c: New file.
118         * utils.c (selftests::bits_to_str, selftests::check_copy_bitwise)
119         (selftests::copy_bitwise_tests): Delete, moving this code to
120         unittests/copy_bitwise-selftests.c instead.
121         (_initialize_utils): Do not register copy_bitwise tests.
122         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
123         unittests/copy_bitwise-selftests.c.
124
125 2018-11-14  Joel Brobecker  <brobecker@adacore.com>
126
127         * ada-lang.c (move_bits): Delete. Update all callers to use
128         copy_bitwise instead.
129         * dwarf2loc.c (copy_bitwise, bits_to_str::bits_to_str)
130         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
131         Move from here to utils.c.
132         (_initialize_dwarf2loc): Remove call to register copy_bitwise
133         selftests.
134         * utils.h (copy_bitwise): Add declaration.
135         * utils.c (copy_bitwise, bits_to_str::bits_to_str)
136         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
137         Moved here from dwarf2loc.c.
138         (_initialize_utils): Register copy_bitwise selftests.
139
140 2018-11-14  Jim Wilson  <jimw@sifive.com>
141
142         * riscv-tdep.c (struct riscv_arg_info): New field is_unnamed.
143         (riscv_call_arg_scalar_int): If unnamed arg with twice xlen alignment,
144         then increment next_regnum if odd.
145         (riscv_arg_location): New arg is_unnamed.  Set ainfo->is_unnamed.
146         (riscv_push_dummy_call): New local ftype.  Call check_typedef to set
147         function type.  Pass new arg to riscv_arg_location based on function
148         type.
149         (riscv_return_value): Pass new arg to riscv_arg_location.
150
151         * riscv-tdep.c (BIGGEST_ALIGNMENT): New.
152         (riscv_type_alignment) <TYPE_CODE_ARRAY>: If TYPE_VECTOR, return min
153         of TYPE_LENGTH and BIGGEST_ALIGNMENT.
154
155         * riscv-tdep.c (riscv_call_arg_scalar_int): Use std::min when
156         setting len.  New local align, set to max of arg align and xlen,
157         and pass to first riscv_assign_stack_location call.
158
159 2018-11-12  Simon Marchi  <simon.marchi@polymtl.ca>
160
161         * skip.c (complete_skip_number): New function.
162         (_initialize_step_skip): Add completers to some skip commands.
163
164 2018-11-09  Tom Tromey  <tom@tromey.com>
165
166         * remote.c (remote_g_packet_guess_s): Remove typedef and DEF_VEC.
167         (struct remote_g_packet_data): Derive from allocate_on_obstack.
168         <guesses>: Now a std::vector.
169         (remote_g_packet_data_init, register_remote_g_packet_guess):
170         Update.
171         (remote_read_description_p): Update.  Return bool.
172         (remote_target::read_description): Update.
173         (struct remote_g_packet_guess): Add constructor.
174
175 2018-11-09  Tom Tromey  <tom@tromey.com>
176
177         * common/scoped_fd.h (class scoped_fd): Add move constructor and
178         move assignment operator.
179         * psymtab.c (psymtab_to_fullname): Update.
180         * source.h (open_source_file): Return scoped_fd.
181         (find_and_open_source): Likewise.
182         * source.c (open_source_file): Return scoped_fd.
183         (get_filename_and_charpos): Update.
184         (print_source_lines_base): Update.  Use scoped_fd::to_file.
185         (forward_search_command): Likewise.
186         (reverse_search_command): Likewise.
187         (find_and_open_source): Return scoped_fd.
188         * tui/tui-source.c (tui_set_source_content): Update.  Use
189         gdb_file_up.
190
191 2018-11-09  John Baldwin  <jhb@FreeBSD.org>
192
193         * minsyms.c (minimal_symbol_reader::install): Fix unsigned
194         overflow.
195
196 2018-11-09  Hafiz Abid Qadeer  <abidh@codesourcery.com>
197
198         * configure: Regenerate.
199
200 2018-11-09  Tom de Vries  <tdevries@suse.de>
201
202         * symtab.c (symbol_set_names): Call symbol_find_demangled_name
203         unconditionally, to set the language of the symbol.  Manage freeing
204         returned pointer using gdb::unique_xmalloc_ptr.
205
206 2018-11-08  Tom Tromey  <tom@tromey.com>
207
208         * record.c (require_record_target): Upper-case "<TAB>".
209
210 2018-11-08  Tom Tromey  <tom@tromey.com>
211
212         * python/lib/gdb/command/pretty_printers.py
213         (InfoPrettyPrinter.invoke): Don't indent "objfile" heading.
214
215 2018-11-08  Tom Tromey  <tom@tromey.com>
216
217         PR gdb/23555:
218         PR gdb/23838:
219         * target.h (target_supports_terminal_ours): Return bool.
220         * target.c (target_supports_terminal_ours): Handle case where
221         current_top_target returns nullptr.  Return bool.
222
223 2018-11-08  Joel Brobecker  <brobecker@adacore.com>
224
225         * aarch64-tdep.c (aapcs_is_vfp_call_or_return_candidate_1):
226         return the correct count for potential HFAs.
227
228 2018-11-08  Jan Beulich  <jbeulich@suse.com>
229
230         * i387-tdep.c (i387_supply_xsave): Split handling of
231         X86_XSTATE_ZMM_H and X86_XSTATE_ZMM.
232         (i387_collect_xsave): Likewise.
233
234 2018-11-08  Andrew Burgess  <andrew.burgess@embecosm.com>
235
236         * riscv-tdep.c (riscv_insn::decode): Update header comment.
237         (riscv_frame_this_id): Catch errors thrown while building the
238         frame cache, leave the frame id as the default, which is the outer
239         frame id.
240
241 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
242
243         * ada-lang.c (read_atcb): Only set task_info->called_task if
244         task_info->state == Entry_Caller_Sleep.
245         (print_ada_task_info): Do not check task_info->state before
246         checking task_info->called_task.
247         (info_task): Likewise.
248
249 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
250
251         * ada-tasks.c (read_atcb): Clear task_info before computing
252         the value of each of its fields.
253
254 2018-11-07  Andrew Burgess  <andrew.burgess@embecosm.com>
255
256         * dwarf2read.c (dwarf2_init_integer_type): Check for name being
257         NULL before dereferencing it.
258
259 2018-11-06  Tom de Vries  <tdevries@suse.de>
260
261         * linux-tdep.c (linux_vsyscall_range_raw): Use xmalloc to allocate
262         program headers.
263
264 2018-11-06  Max Filippov  <jcmvbkbc@gmail.com>
265
266         * configure.tgt (xtensa*-*-linux*): Change to xtensa*-*-*linux*
267         so that it applies to uclinux as well.
268
269 2018-11-06  Marius Muench  <marius.muench@eurecom.fr>
270
271         * arm-tdep.c (arm_scan_prologue): Don't dereference FP reg
272         when on AAPCS.
273
274 2018-11-06  John Baldwin  <jhb@FreeBSD.org>
275
276         * riscv-fbsd-nat.c (getregs_supplies): Return true for
277         RISCV_CSR_SSTATUS_REGNUM.
278
279 2018-11-04  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
280
281         * source.c (open_source_file): Fix leak by transferring the
282         current s->fullname to the unique_xmalloc_ptr fullname given
283         to find_and_open_source.
284
285 2018-11-04  Tom Tromey  <tom@tromey.com>
286
287         * varobj.c (install_default_visualizer): Update.
288         * python/python-internal.h (gdbpy_get_varobj_pretty_printer):
289         Return gdbpy_ref.
290         * python/py-prettyprint.c (search_pp_list): Return gdbpy_ref.
291         (find_pretty_printer_from_progspace)
292         (find_pretty_printer_from_gdb, find_pretty_printer)
293         (gdbpy_get_varobj_pretty_printer): Return gdbpy_ref.
294         (gdbpy_get_varobj_pretty_printer, gdbpy_default_visualizer):
295         Update.
296
297 2018-11-04  Tom Tromey  <tom@tromey.com>
298
299         * python/python.c (gdbpy_parameter_value): Update.
300         * python/python-internal.h (python_string_to_unicode)
301         (python_string_to_target_python_string)
302         (host_string_to_python_string): Return gdbpy_ref.
303         * python/py-utils.c (python_string_to_unicode)
304         (unicode_to_encoded_python_string)
305         (unicode_to_target_python_string)
306         (python_string_to_target_string)
307         (python_string_to_target_python_string): Return gdbpy_ref.
308         (python_string_to_host_string): Update.
309         (host_string_to_python_string): Return gdbpy_ref.
310         * python/py-symtab.c (stpy_get_filename, stpy_get_producer)
311         (stpy_fullname): Update.
312         * python/py-progspace.c (pspy_get_filename, pspy_solib_name):
313         Update.
314         * python/py-prettyprint.c (print_string_repr): Update.
315         * python/py-objfile.c (objfpy_get_filename, objfpy_get_username)
316         (objfpy_get_build_id): Update.
317         * python/py-breakpoint.c (bppy_get_location)
318         (bppy_get_expression, bppy_get_condition, bppy_get_commands):
319         Update.
320
321 2018-11-04  Tom Tromey  <tom@tromey.com>
322
323         * python/python-internal.h (gdb_py_object_from_longest)
324         (gdb_py_object_from_ulongest): Return gdbpy_ref.
325         * python/py-value.c (valpy_int): Update.
326         * python/py-utils.c (gdb_py_object_from_longest): Return
327         gdbpy_ref.
328         (gdb_py_object_from_ulongest): Likewise.
329         * python/py-type.c (typy_get_alignof): Update.
330         * python/py-linetable.c (ltpy_get_all_source_lines)
331         (ltpy_entry_get_line, ltpy_entry_get_pc): Update.
332         * python/py-block.c (blpy_get_start, blpy_get_end): Update.
333
334 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
335
336         * ada-lang.c (_initialize_ada_language): Fix typo.
337
338 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
339
340         * language.c (type): Remove.
341         (_initialize_language): Remove assignment to type.
342
343 2018-11-02  Joel Brobecker  <brobecker@adacore.com>
344
345         * aarch64-ravenscar-thread.h, aarch64-ravenscar-thread.c: New files.
346         * aarch64-tdep.c: #include "aarch64-ravenscar-thread.h".
347         (aarch64_gdbarch_init): Add call to register_aarch64_ravenscar_ops.
348         * Makefile.in (ALL_64_TARGET_OBS): Add aarch64-ravenscar-thread.o.
349         (HFILES_NO_SRCDIR): Add aarch64-ravenscar-thread.h.
350         (ALLDEPFILES): Add aarch64-ravenscar-thread.c.
351         * configure.tgt (cpu_obs) [aarch64*-*-*]: Add ravenscar-thread.o
352         and aarch64-ravenscar-thread.o.
353         * NEWS: Add entry documenting Ravenscar tasking support
354         on AArch64 ELF.
355
356 2018-11-02  Matthew Malcomson  <matthew.malcomson@arm.com>
357
358         * symtab.c (info_functions_command): Initialize quiet flag.
359         * stack.c (info_args_command): Likewise.
360
361 2018-11-01  Jim Wilson  <jimw@sifive.com>
362
363         * riscv-tdep.c (riscv_breakpoint_kind_from_pc): New local unaligned_p.
364         Set if pcptr if unaligned.  Return 2 if unaligned_p true.  Update
365         debugging messages.
366
367 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
368
369         * ada-lang.c (ada_watch_location_expression): New function.
370         (ada_language_defn): Set la_watch_location_expression to
371         ada_watch_location_expression.
372
373 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
374
375         * print-utils.c (int_string): Remove unnecessary trailing spaces.
376
377 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
378
379         * rs6000-tdep.c (skip_prologue): Fix potential negative left
380         shifting.
381
382 2018-11-01  Jerome Guitton  <guitton@adacore.com>
383             Joel Brobecker  <brobecker@adacore.com>
384
385         * defs.h (enum gdb_osabi): Add GDB_OSABI_PIKEOS.
386         * osabi.c (gdb_osabi_names): Add name for GDB_OSABI_PIKEOS.
387         * arm-pikeos-tdep.c: New file.
388         * configure.tgt: Add arm-pikeos-tdep.o to the case of ARM
389         embedded system.
390         * Makefile.in (ALL_TARGET_OBS): Add arm-pikeos-tdep.o.
391
392 2018-11-01  Simon Marchi  <simon.marchi@ericsson.com>
393
394         * common/pathstuff.c (get_standard_temp_dir): New.
395         * common/pathstuff.h (get_standard_temp_dir): New.
396         * config.in: Re-generate.
397         * configure: Re-generate.
398         * configure.ac: Don't check for mkdtemp.
399         * gnulib/aclocal-m4-deps.mk: Re-generate.
400         * gnulib/aclocal.m4: Re-generate.
401         * gnulib/config.in: Re-generate.
402         * gnulib/configure: Re-generate.
403         * gnulib/import/Makefile.am: Re-generate.
404         * gnulib/import/Makefile.in: Re-generate.
405         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
406         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
407         * gnulib/import/m4/mkdtemp.m4: New file.
408         * gnulib/import/mkdtemp.c: New file.
409         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES):
410         Add mkdtemp module.
411         * unittests/mkdir-recursive-selftests.c (test): Use
412         get_standard_temp_dir.
413         (_initialize_mkdir_recursive_selftests): Remove HAVE_MKDTEMP
414         ifdef.
415         * compile/compile.c (get_compile_file_tempdir): Likewise.
416
417 2018-11-01  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
418
419         * rs6000-aix-tdep.c: Include "trad-frame.h" and "frame-unwind.h".
420         (SIG_FRAME_LR_OFFSET64): New define.
421         (SIG_FRAME_FP_OFFSET64): New define.
422         (aix_sighandle_frame_cache): New Function.
423         (aix_sighandle_frame_this_id): New Function.
424         (aix_sighandle_frame_prev_register): New Function.
425         (aix_sighandle_frame_sniffer): New Function.
426         (aix_sighandle_frame_unwind): New global variable.
427         (rs6000_aix_init_osabi): Install new frame unwinder.
428
429 2018-10-31  Sergio Durigan Junior  <sergiodj@redhat.com>
430
431         PR gdb/23835
432         * common/common-defs.h: Don't redefine _FORTIFY_SOURCE if it's
433         already defined.
434
435 2018-10-31  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
436
437         * ppc-linux-nat.c: Include nat/linux-ptrace.h.
438
439 2018-10-31  Andrew Burgess  <andrew.burgess@embecosm.com>
440
441         * dwarf2read.c (struct dwarf2_cu): Add producer_is_icc field.
442         (producer_is_icc): New function.
443         (check_producer): Set producer_is_icc field on dwarf2_cu.
444         (dwarf2_init_integer_type): New function.
445         (read_base_type): Call dwarf2_init_integer_type instead of
446         init_integer_type in all cases.
447         (dwarf2_cu::dwarf2_cu): Initialise producer_is_icc field.
448         * valprint.c (maybe_negate_by_bytes): Add an assertion that the
449         LEN is greater than 0.
450
451 2018-10-30  Tom Tromey  <tom@tromey.com>
452
453         * main.c (captured_main_1): Check return value of bfd_init.
454
455 2018-10-29  Sergio Durigan Junior  <sergiodj@redhat.com>
456
457         * common/offset-type.h (DEFINE_OFFSET_REL_OP): Delete.
458         Adjust comments.
459
460 2018-10-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
461
462         * procfs.c: Include common/pathstuff.h.
463
464 2018-10-28  Andrew Burgess  <andrew.burgess@embecosm.com>
465
466         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
467         Add missing braces.  No functional change.
468
469 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
470
471         * macrocmd.c (info_macro_command): Use report_unrecognized_option_error
472         to report a bad option and fix indentation.
473         * demangle.c (demangle_command): Use report_unrecognized_option_error
474         to report a bad option and correctly report the bad option.
475
476 2018-10-27  Tom Tromey  <tom@tromey.com>
477
478         PR cli/23364:
479         * darwin-nat.c (copied_shell): New global.
480         (may_have_sip): Rename from should_disable_startup_with_shell.
481         (copy_shell_to_cache, maybe_cache_shell): New functions.
482         (darwin_nat_target::create_inferior): Update.  Use
483         copied_shell.
484
485 2018-10-27  Tom Tromey  <tom@tromey.com>
486
487         * unittests/scoped_fd-selftests.c (test_to_file): New function.
488         (run_tests): Call test_to_file.
489         * dwarf-index-write.c (write_psymtabs_to_index): Do not reopen
490         temporary files.
491         * common/scoped_fd.h (scoped_fd::to_file): New method.
492
493 2018-10-27  Tom Tromey  <tom@tromey.com>
494
495         * unittests/scoped_mmap-selftests.c (test_normal): Use
496         gdb_mkostemp_cloexec.
497         * unittests/scoped_fd-selftests.c (test_destroy, test_release):
498         Use gdb_mkostemp_cloexec.
499         * gnulib/aclocal-m4-deps.mk, gnulib/aclocal.m4,
500         gnulib/config.in, gnulib/configure,
501         gnulib/import/Makefile.am, gnulib/import/Makefile.in,
502         gnulib/import/m4/gnulib-cache.m4,
503         gnulib/import/m4/gnulib-comp.m4: Update.
504         * gnulib/import/m4/mkostemp.m4: New file.
505         * gnulib/import/m4/mkstemp.m4: Remove.
506         * gnulib/import/mkostemp.c: New file.
507         * gnulib/import/mkstemp.m4: Remove.
508         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Remove
509         mkstemp, add mkostemp.  Apply new patch.
510         * gnulib/import/stdlib.in.h: Apply patch.
511         * gnulib/patches/0002-mkostemp-mkostemps-Fix-compilation-error-in-C-mode-o.patch:
512         New file.
513         * dwarf-index-write.c (write_psymtabs_to_index): Use
514         gdb_mkostemp_cloexec.
515         * common/filestuff.h (gdb_mkostemp_cloexec): New function.
516
517 2018-10-27  Tom Tromey  <tom@tromey.com>
518
519         * unittests/mkdir-recursive-selftests.c: New file.
520         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
521         unittests/mkdir-recursive-selftests.c.
522         * dwarf-index-cache.c (mkdir_recursive): Move to
523         common/filestuff.c.
524         (index_cache::store): Check return value of mkdir_recursive.
525         (create_dir_and_check, test_mkdir_recursive): Move to new file.
526         (_initialize_index_cache): Don't register test.
527         * common/filestuff.h (mkdir_recursive): Declare.
528         * common/filestuff.c (mkdir_recursive): Move from
529         dwarf-index-cache.c.  Return bool.
530
531 2018-10-27  Tom Tromey  <tom@tromey.com>
532
533         * dwarf-index-write.c (write_psymtabs_to_index): Move
534         make_temp_filename to common/pathstuff.c.
535         * common/pathstuff.h (make_temp_filename): Declare.
536         * common/pathstuff.c (make_temp_filename): New function, moved
537         from dwarf-index-write.c.
538
539 2018-10-27  Tom Tromey  <tom@tromey.com>
540
541         * procfs.c (procfs_target::create_inferior): Use get_shell.
542         * cli/cli-cmds.c (shell_escape): Use get_shell.
543         * windows-nat.c (windows_nat_target::create_inferior): Use
544         get_shell.
545         * common/pathstuff.c (get_shell): New function.
546         * nat/fork-inferior.c (SHELL_FILE, get_startup_shell): Remove.
547         (fork_inferior): Use get_shell.
548         * common/pathstuff.h (get_shell): Declare.
549
550 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
551
552         * NEWS: Mention changes to 'info [args|functions|locals|variables]'
553
554 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
555
556         * stack.c (print_variable_and_value_data): Add preg and treg.
557         (print_frame_local_vars): Add quiet, regexp and t_regexp arguments,
558         and update callers.
559         (print_frame_arg_vars): Likewise.
560         (prepare_reg): New function.
561         (info_locals_command): Extract info print args and use them.
562         (info_args_command): Likewise.
563         (_initialize_stack): Modify on-line help.
564         * symtab.c (treg_matches_sym_type_name): New function.
565         (search_symbols): New arg t_regexp.
566         (symtab_symbol_info): New args quiet, regexp, t_regexp.
567         (info_variables_command): Extract info print args and use them.
568         (info_functions_command): Likewise.
569         (info_types_command): Update call to symtab_symbol_info.
570         (_initialize_symtab): Modify on-line help.
571         * symtab.h (treg_matches_sym_type_name): New function.
572         (search_symbols): New t_regexp arg.
573
574 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
575
576         * cli-utils.c (extract_arg_maybe_quoted): New function.
577         (extract_info_print_args): New function.
578         (info_print_args_help): New function.
579         (report_unrecognized_option_error): New function.
580         * cli-utils.h (extract_arg_maybe_quoted): New function.
581         (extract_info_print_args): New function.
582         (info_print_args_help): New function.
583         (report_unrecognized_option_error): New function.
584
585 2018-10-26  Tom Tromey  <tom@tromey.com>
586
587         * dwarf2read.c (recursively_compute_inclusions): Use std::vector.
588         (compute_compunit_symtab_includes): Update.
589         * symtab.h: (symtab_ptr): Remove typedef.  Don't define a VEC.
590         (compunit_symtab_ptr): Likewise.
591
592 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
593
594         * fbsd-tdep.c (fbsd_print_auxv_entry): Only use
595         default_print_auxv_entry for specific tag values.
596
597 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
598
599         * fbsd-tdep.c (fbsd_print_auxv_entry): Handle AT_FREEBSD_HWCAP2.
600
601 2018-10-26  Jim Wilson  <jimw@sifive.com>
602
603         * riscv-linux-tdep.c: Include tramp-frame.h and trad-frame.h.
604         (riscv_linux_sigframe_init): Declare.
605         (RISCV_INST_LI_A7_SIGRETURN, RISCV_INT_ECALL): New.
606         (riscv_linux_sigframe): New.
607         (SIGFRAME_SIGINFO_SIZE, UCONTEXT_MCONTEXT_OFFSET): New.
608         (riscv_linux_sigframe_init): Define.
609         (riscv_linux_init_abi): Call tramp_frame_prepend_unwinder.
610
611         * riscv-tdep.c (riscv_isa_xlen): Refer to riscv-tdep.h comment.
612         (riscv_isa_flen): Likewise.  Drop static.
613         * riscv-tdep.h (riscv_isa_xlen): Move riscv-tdep.c comment to here.
614         (riscv_isa_flen): Likewise.  Declare.
615
616 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
617             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
618
619         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_htm_vsx32l)
620         (tdesc_powerpc_isa207_htm_vsx64l): Declare.
621         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TM_SPRREGSET)
622         (PPC32_LINUX_SIZEOF_CGPRREGSET, PPC64_LINUX_SIZEOF_CGPRREGSET)
623         (PPC_LINUX_SIZEOF_CFPRREGSET, PPC_LINUX_SIZEOF_CVMXREGSET)
624         (PPC_LINUX_SIZEOF_CVSXREGSET, PPC_LINUX_SIZEOF_CPPRREGSET)
625         (PPC_LINUX_SIZEOF_CDSCRREGSET, PPC_LINUX_SIZEOF_CTARREGSET):
626         Define.
627         (struct ppc_linux_features) <htm>: New field.
628         (ppc_linux_no_features): Add initializer for htm field.
629         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
630         new tdescs.
631         * nat/ppc-linux.h (PPC_FEATURE2_HTM, NT_PPC_TM_CGPR)
632         (NT_PPC_TM_CFPR, NT_PPC_TM_CVMX, NT_PPC_TM_CVSX)
633         (NT_PPC_TM_SPR, NT_PPC_TM_CTAR, NT_PPC_TM_CPPR, NT_PPC_TM_CDSCR):
634         Define if not already defined.
635         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-htm-vsx32l
636         and rs6000/powerpc-isa207-htm-vsx64l.
637         (XMLTOC): Add rs6000/powerpc-isa207-htm-vsx32l.xml and
638         rs6000/powerpc-isa207-htm-vsx64l.xml.
639         * features/rs6000/power-htm-spr.xml: New file.
640         * features/rs6000/power-htm-core.xml: New file.
641         * features/rs6000/power64-htm-core.xml: New file.
642         * features/rs6000/power-htm-fpu.xml: New file.
643         * features/rs6000/power-htm-altivec.xml: New file.
644         * features/rs6000/power-htm-vsx.xml: New file.
645         * features/rs6000/power-htm-ppr.xml: New file.
646         * features/rs6000/power-htm-dscr.xml: New file.
647         * features/rs6000/power-htm-tar.xml: New file.
648         * features/rs6000/powerpc-isa207-htm-vsx32l.xml: New file.
649         * features/rs6000/powerpc-isa207-htm-vsx64l.xml: New file.
650         * features/rs6000/powerpc-isa207-htm-vsx32l.c: Generate.
651         * features/rs6000/powerpc-isa207-htm-vsx64l.c: Generate.
652         * regformats/rs6000/powerpc-isa207-htm-vsx32l.dat: Generate.
653         * regformats/rs6000/powerpc-isa207-htm-vsx64l.dat: Generate.
654         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
655         fetch_regset with HTM regsets.
656         (store_register, store_ppc_registers): Call store_regset with HTM
657         regsets.
658         (ppc_linux_nat_target::read_description): Set htm field in the
659         features struct if needed.
660         * ppc-linux-tdep.c: Include
661         features/rs6000/powerpc-isa207-htm-vsx32l.c and
662         features/rs6000/powerpc-isa207-htm-vsx64l.c.
663         (ppc32_regmap_tm_spr, ppc32_regmap_cgpr, ppc64_le_regmap_cgpr)
664         (ppc64_be_regmap_cgpr, ppc32_regmap_cfpr, ppc32_le_regmap_cvmx)
665         (ppc32_be_regmap_cvmx, ppc32_regmap_cvsx, ppc32_regmap_cppr)
666         (ppc32_regmap_cdscr, ppc32_regmap_ctar): New globals.
667         (ppc32_linux_tm_sprregset, ppc32_linux_cgprregset)
668         (ppc64_be_linux_cgprregset, ppc64_le_linux_cgprregset)
669         (ppc32_linux_cfprregset, ppc32_le_linux_cvmxregset)
670         (ppc32_be_linux_cvmxregset, ppc32_linux_cvsxregset)
671         (ppc32_linux_cpprregset, ppc32_linux_cdscrregset)
672         (ppc32_linux_ctarregset): New globals.
673         (ppc_linux_cgprregset, ppc_linux_cvmxregset): New functions.
674         (ppc_linux_collect_core_cpgrregset): New function.
675         (ppc_linux_iterate_over_regset_sections): Call back with the htm
676         regsets.
677         (ppc_linux_core_read_description): Check if the tm spr section is
678         present and set htm in the features struct.
679         (_initialize_ppc_linux_tdep): Call
680         initialize_tdesc_powerpc_isa207_htm_vsx32l and
681         initialize_tdesc_powerpc_isa207_htm_vsx64l.
682         * ppc-linux-tdep.h (ppc_linux_cgprregset, ppc_linux_cvmxregset):
683         Declare.
684         (ppc32_linux_tm_sprregset, ppc32_linux_cfprregset)
685         (ppc32_linux_cvsxregset, ppc32_linux_cpprregset)
686         (ppc32_linux_cdscrregset, ppc32_linux_ctarregset): Declare.
687         * ppc-tdep.h (struct gdbarch_tdep) <have_htm_spr, have_htm_core>:
688         New fields.
689         <have_htm_fpu, have_htm_altivec, have_htm_vsx>:
690         Likewise.
691         <ppc_cppr_regnum, ppc_cdscr_regnum, ppc_ctar_regnum>: Likewise.
692         <ppc_cdl0_regnum, ppc_cvsr0_regnum, ppc_cefpr0_regnum>: Likewise.
693         (enum) <PPC_TFHAR_REGNUM, PPC_TEXASR_REGNUM, PPC_TFIAR_REGNUM>:
694         New enum fields.
695         <PPC_CR0_REGNUM, PPC_CCR_REGNUM, PPC_CXER_REGNUM>: Likewise.
696         <PPC_CLR_REGNUM, PPC_CCTR_REGNUM, PPC_CF0_REGNUM>: Likewise.
697         <PPC_CFPSCR_REGNUM, PPC_CVR0_REGNUM, PPC_CVSCR_REGNUM>: Likewise.
698         <PPC_CVRSAVE_REGNUM, PPC_CVSR0_UPPER_REGNUM>: Likewise.
699         <PPC_CPPR_REGNUM, PPC_CDSCR_REGNUM>: Likewise.
700         <PPC_CTAR_REGNUM>: Likewise.
701         (PPC_IS_TMSPR_REGNUM, PPC_IS_CKPTGP_REGNUM, PPC_IS_CKPTFP_REGNUM)
702         (PPC_IS_CKPTVMX_REGNUM, PPC_IS_CKPTVSX_REGNUM): Define.
703         * rs6000-tdep.c (IS_CDFP_PSEUDOREG, IS_CVSX_PSEUDOREG)
704         (IS_CEFP_PSEUDOREG): Define.
705         (rs6000_register_name): Hide the upper halves of checkpointed VSX
706         registers.  Return names for the checkpointed DFP, VSX, and EFP
707         pseudo registers.
708         (rs6000_pseudo_register_type): Remove initial assert and raise an
709         internal error in the else clause instead.  Return types for the
710         checkpointed DFP, VSX, and EFP pseudo registers.
711         (dfp_pseudo_register_read, dfp_pseudo_register_write): Handle
712         checkpointed DFP pseudo registers.
713         (vsx_pseudo_register_read, vsx_pseudo_register_write): Handle
714         checkpointed VSX pseudo registers.
715         (efp_pseudo_register_read, efp_pseudo_register_write): Rename
716         from efpr_pseudo_register_read and
717         efpr_pseudo_register_write.  Handle checkpointed EFP pseudo
718         registers.
719         (rs6000_pseudo_register_read, rs6000_pseudo_register_write):
720         Handle checkpointed DFP, VSX, and EFP registers.
721         (dfp_ax_pseudo_register_collect, vsx_ax_pseudo_register_collect)
722         (efp_ax_pseudo_register_collect): New functions.
723         (rs6000_ax_pseudo_register_collect): Move DFP, VSX and EFP pseudo
724         register logic to new functions.  Handle checkpointed DFP, VSX,
725         and EFP pseudo registers.
726         (rs6000_gdbarch_init): Look for and validate the htm features.
727         Include checkpointed DFP, VSX and EFP pseudo-registers.
728         * NEWS: Mention access to PPR, DSCR, TAR, EBB/PMU registers and
729         HTM registers.
730
731 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
732
733         * rs6000-tdep.c (rs6000_gdbarch_init): Reject tdescs with vsx but
734         without altivec or fpu.
735
736 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
737             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
738
739         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_EBBREGSET)
740         (PPC_LINUX_SIZEOF_PMUREGSET): Declare.
741         * nat/ppc-linux.h (PPC_FEATURE2_EBB, NT_PPC_EBB, NT_PPC_PMU):
742         Define if not already defined.
743         * features/rs6000/power-ebb.xml: New file.
744         * features/rs6000/power-linux-pmu.xml: New file.
745         * features/rs6000/powerpc-isa207-vsx32l.xml: Include ebb and pmu
746         features.
747         * features/rs6000/powerpc-isa207-vsx64l.xml: Likewise.
748         * features/rs6000/powerpc-isa207-vsx32l.c: Re-generate.
749         * features/rs6000/powerpc-isa207-vsx64l.c: Re-generate.
750         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Re-generate.
751         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Re-generate.
752         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
753         fetch_regset with ebb and pmu regsets.
754         (store_register, store_ppc_registers): Call store_regset with ebb
755         and pmu regsets.
756         (ppc_linux_nat_target::read_description): Set isa207 field in the
757         features struct if ebb and pmu are avaiable.
758         * ppc-linux-tdep.c (ppc32_regmap_ebb, ppc32_regmap_pmu)
759         (ppc32_linux_ebbregset, ppc32_linux_pmuregset): New globals.
760         (ppc_linux_iterate_over_regset_sections): Call back with the ebb
761         and pmu regsets.
762         (ppc_linux_core_read_description): Check if the pmu section is
763         present and set isa207 in the features struct.
764         * ppc-linux-tdep.h (ppc32_linux_ebbregset)
765         (ppc32_linux_pmuregset): Declare.
766         * ppc-tdep.h (struct gdbarch_tdep) <ppc_mmcr0_regnum>: New field.
767         <ppc_mmcr2_regnum, ppc_siar_regnum, ppc_sdar_regnum>: New fields.
768         <ppc_sier_regnum>: New field.
769         (enum): <PPC_BESCR_REGNUM, PPC_EBBHR_REGNUM, PPC_EBBRR_REGNUM>:
770         New enum values.
771         <PPC_MMCR0_REGNUM, PPC_MMCR2_REGNUM, PPC_SIAR_REGNUM>: New enum
772         values.
773         <PPC_SDAR_REGNUM, PPC_SIER_REGNUM>: New enum values.
774         (PPC_IS_EBB_REGNUM, PPC_IS_PMU_REGNUM): Define.
775         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate the
776         ebb and pmu features.
777
778 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
779             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
780
781         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_vsx32l)
782         (tdesc_powerpc_isa207_vsx64l): Declare.
783         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TARREGSET): Define.
784         (struct ppc_linux_features) <isa207>: New field.
785         (ppc_linux_no_features): Add initializer for isa207 field.
786         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
787         new tdescs.
788         * nat/ppc-linux.h (PPC_FEATURE2_ARCH_2_07, PPC_FEATURE2_TAR)
789         (NT_PPC_TAR): Define if not already defined.
790         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-vsx32l and
791         rs6000/powerpc-isa207-vsx64l.
792         (XMLTOC): Add rs6000/powerpc-isa207-vsx32l.xml and
793         rs6000/powerpc-isa207-vsx64l.xml.
794         * features/rs6000/power-tar.xml: New file.
795         * features/rs6000/powerpc-isa207-vsx32l.xml: New file.
796         * features/rs6000/powerpc-isa207-vsx64l.xml: New file.
797         * features/rs6000/powerpc-isa207-vsx32l.c: Generate.
798         * features/rs6000/powerpc-isa207-vsx64l.c: Generate.
799         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Generate.
800         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Generate.
801         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
802         fetch_regset with the TAR regset.
803         (store_register, store_ppc_registers): Call store_regset with the
804         TAR regset.
805         (ppc_linux_nat_target::read_description): Set isa207 field in the
806         features struct if needed.
807         * ppc-linux-tdep.c: Include
808         features/rs6000/powerpc-isa207-vsx32l.c and
809         features/rs6000/powerpc-isa207-vsx64l.c.
810         (ppc32_regmap_tar, ppc32_linux_tarregset): New globals.
811         (ppc_linux_iterate_over_regset_sections): Call back with the tar
812         regset.
813         (ppc_linux_core_read_description): Check if the tar section is
814         present and set isa207 in the features struct.
815         (_initialize_ppc_linux_tdep): Call
816         initialize_tdesc_powerpc_isa207_vsx32l and
817         initialize_tdesc_powerpc_isa207_vsx64l.
818         * ppc-linux-tdep.h (ppc32_linux_tarregset): Declare.
819         * ppc-tdep.h (gdbarch_tdep) <ppc_tar_regnum>: New field.
820         (enum) <PPC_TAR_REGNUM>: New enum value.
821         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate tar
822         feature.
823         (ppc_process_record_op31): Record changes to TAR.
824
825 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
826             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
827
828         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa205_ppr_dscr_vsx32l)
829         (tdesc_powerpc_isa205_ppr_dscr_vsx64l): Declare.
830         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_PPRREGSET)
831         (PPC_LINUX_SIZEOF_DSCRREGSET): Define.
832         (struct ppc_linux_features) <ppr_dscr>: New field.
833         (ppc_linux_no_features): Add initializer for ppr_dscr field.
834         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
835         new tdescs.
836         * nat/ppc-linux.h (PPC_FEATURE2_DSCR, NT_PPC_PPR, NT_PPC_DSCR):
837         Define if not already defined.
838         * features/Makefile (WHICH): Add
839         rs6000/powerpc-isa205-ppr-dscr-vsx32l and
840         rs6000/powerpc-isa205-ppr-dscr-vsx64l.
841         (XMLTOC): Add rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml and
842         rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml.
843         * features/rs6000/power-dscr.xml: New file.
844         * features/rs6000/power-ppr.xml: New file.
845         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml: New file.
846         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml: New file.
847         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c: Generate.
848         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c: Generate.
849         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx32l.dat: Generate.
850         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx64l.dat: Generate.
851         * ppc-linux-nat.c: Include <sys/uio.h>.
852         (fetch_regset, store_regset, check_regset): New functions.
853         (fetch_register, fetch_ppc_registers): Call fetch_regset with
854         DSCR and PPR regsets.
855         (store_register, store_ppc_registers): Call store_regset with
856         DSCR and PPR regsets.
857         (ppc_linux_get_hwcap2): New function.
858         (ppc_linux_nat_target::read_description): Call
859         ppc_linux_get_hwcap2 and check_regset, set ppr_dscr field in the
860         features struct if needed.
861         * ppc-linux-tdep.c: Include
862         features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c and
863         features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c.
864         (ppc32_regmap_ppr, ppc32_regmap_dscr, ppc32_linux_pprregset)
865         (ppc32_linux_dscrregset): New globals.
866         (ppc_linux_iterate_over_regset_sections): Call back with the ppr
867         and dscr regsets.
868         (ppc_linux_core_read_description): Check if the ppr and dscr
869         sections are present and set ppr_dscr in the features struct.
870         (_initialize_ppc_linux_tdep): Call
871         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx32l and
872         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx64l.
873         * ppc-linux-tdep.h (ppc32_linux_pprregset)
874         (ppc32_linux_dscrregset): Declare.
875         * ppc-tdep.h (struct gdbarch_tdep) <ppc_ppr_regnum>: New field.
876         <ppc_dscr_regnum>: New field.
877         (enum) <PPC_PPR_REGNUM, PPC_DSCR_REGNUM>: New enum values.
878         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate ppr
879         and dscr features.
880         (ppc_process_record_op31): Record changes to PPR and DSCR.
881
882 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
883
884         * rs6000-tdep.c (rs6000_gdbarch_init): Replace line wrapping by a
885         second initializer line for the have_* variables.  Initialize
886         have_fpu to 0 instead of 1.
887
888 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
889
890         * arch/ppc-linux-common.c (ppc_linux_match_description):
891         Parenthesize tdesc assignements and indent them properly.
892
893 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
894
895         * ppc-linux-nat.c (fetch_register): Change if statement to else
896         if.
897         (store_register): Likewise.
898
899 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
900
901         * rs6000-tdep.c: Remove reggroups.h include.
902         (rs6000_pseudo_register_reggroup_p): Remove.
903         (rs6000_gdbarch_init): Remove call to
904         set_tdesc_pseudo_register_reggroup_p.
905
906 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
907
908         * reggroups.c (default_register_reggroup_p): Return true for
909         decfloat registers and float_reggroup.
910
911 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
912
913         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
914         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
915         ppc_linux_collect_vrregset by regcache_collect_regset.
916
917 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
918
919         * linux-tdep.c (linux_collect_regset_section_cb): Use
920         std::vector<gdb_byte> instead of char * and malloc for buf.
921         Remove xfree.
922
923 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
924
925         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
926         symtab_start instead of always using language_unknown.
927
928 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
929
930         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
931         READ_P parameter, catch and ignore register access errors from
932         either the old or new MISA location.
933         (riscv_has_feature): Update call to riscv_read_misa_reg.
934
935 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
936
937         * python/py-function.c (convert_values_to_python): Return
938         gdbpy_ref<>.  Add header comment.
939         (fnpy_call): Adjust.
940
941 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
942
943         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
944         (cmdpy_completer_handle_brkchars): Adjust.
945         (cmdpy_completer): Adjust.
946
947 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
948
949         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
950         Pass correct regnum to raw_supply_zeroed.
951
952 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
953
954         * regcache.c (cooked_read_test): Add CSKY to the list of
955         architectures with a save_reggroup
956
957 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
958
959         PR gdb/23368
960         * infrun.c (follow_exec): In the follow_exec_mode_new case,
961         transfer terminal state from old new new inferior.
962         * terminal.h (swap_terminal_info): New function.
963         * inflow.c (swap_terminal_info): New function.
964
965 2018-10-23  Tom Tromey  <tom@tromey.com>
966
967         * record-btrace.c (get_thread_current_frame_id): Rename from
968         get_thread_current_frame.  Return a frame_id.
969         (record_btrace_start_replaying): Update.
970
971 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
972
973         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
974         for CSRs.
975
976 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
977
978         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
979         have_nonsteppable_watchpoint attribute to 1.
980
981 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
982
983         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
984         register names.
985         (struct register_alias): Rename to...
986         (struct riscv_register_alias): ...this, and update comment.
987         (riscv_register_aliases): Update type, and alias names.  Remove
988         CSR names from this list.
989         (riscv_register_name): Use riscv_gdb_reg_names for int and float
990         register names.  Add an extra assertion.
991         (riscv_is_regnum_a_named_csr): New function.
992         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
993
994 2018-10-23  John Darrington  <john@darrington.wattle.id.au>
995
996         * configure.tgt: Add configuration for s12z.
997         * s12z-tdep.c:  New file.
998         * NEWS: Mention new target.
999
1000 2018-10-22  Jim Wilson  <jimw@sifive.com>
1001
1002         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
1003         FP reg smaller than FP reg size, and fill with -1 instead of 0.
1004
1005         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
1006         (riscv_register_type): Use them.
1007         (riscv_print_one_register_info): Handle union of floats same as float.
1008         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
1009         riscv_fpreg_q_type fields.
1010
1011 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
1012
1013         * gdbarch.sh (gdbarch_num_cooked_regs): New.
1014         * gdbarch.h: Re-generate.
1015         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
1016         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
1017         * eval.c (evaluate_subexp_standard): Likewise.
1018         * findvar.c (value_of_register): Likewise.
1019         (value_of_register_lazy): Likewise.
1020         (address_from_register): Likewise.
1021         * frame.c (get_frame_register_bytes): Likewise.
1022         * gdbarch-selftests.c (register_to_value_test): Likewise.
1023         * h8300-tdep.c (h8300_register_type): Likewise.
1024         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
1025         (i386_svr4_reg_to_regnum): Likewise.
1026         * infcmd.c (default_print_registers_info): Likewise.
1027         (registers_info): Likewise.
1028         (print_vector_info): Likewise.
1029         (default_print_float_info): Likewise.
1030         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
1031         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
1032         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
1033         (mi_cmd_data_list_changed_registers): Likewise.
1034         (mi_cmd_data_list_register_values): Likewise.
1035         (mi_cmd_data_write_register_values): Likewise.
1036         (mi_cmd_trace_frame_collected): Likewise.
1037         * mips-tdep.c (print_gp_register_row): Likewise.
1038         (mips_print_registers_info): Likewise.
1039         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
1040         * regcache.c (init_regcache_descr): Likewise.
1041         (register_size): Likewise.
1042         (register_dump::dump): Likewise.
1043         (cooked_read_test): Likewise.
1044         (cooked_write_test): Likewise.
1045         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
1046         (rs6000_gdbarch_init): Likewise.
1047         * stabsread.c (stab_reg_to_regnum): Likewise.
1048         * stack.c (info_frame_command): Likewise.
1049         * target-descriptions.c (tdesc_register_name): Likewise.
1050         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
1051         * tui/tui-regs.c (tui_show_register_group): Likewise.
1052         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
1053         (user_reg_map_regnum_to_name): Likewise.
1054         (value_of_user_reg): Likewise.
1055         (maintenance_print_user_registers): Likewise.
1056         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
1057         (xtensa_register_name): Likewise.
1058         (xtensa_register_type): Likewise.
1059         (xtensa_reg_to_regnum): Likewise.
1060         (xtensa_pseudo_register_read): Likewise.
1061         (xtensa_pseudo_register_write): Likewise.
1062
1063 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
1064
1065         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
1066         correctly-sized buffer with raw_read.
1067         (amd64_pseudo_register_write): Use correctly-sized buffer for
1068         raw_read/raw_write.
1069
1070 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1071
1072         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
1073         in add_prefix_cmd of set print type.
1074
1075 2018-10-19  Tom Tromey  <tom@tromey.com>
1076
1077         PR tui/18388:
1078         * NEWS: Mention tabset deprecation.
1079         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
1080         (update_tab_width): New function.
1081         (tui_set_tab_width, tui_show_tab_width): New functions.
1082         (tui_set_tab_width_command): Use update_tab_width.
1083         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
1084         Add new "set tui tab-width" command.
1085         * tui/tui-source.c (tui_set_source_content): Update.
1086         * tui/tui-disasm.c (tui_set_disassem_content): Update.
1087         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
1088         Don't declare.
1089         (tui_tab_width): Declare.
1090         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
1091         (tui_set_default_tab_len): Remove.
1092
1093 2018-10-19  Tom Tromey  <tom@tromey.com>
1094
1095         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
1096         (key_is_backspace, tui_getc): Don't declare.
1097         * tui/tui-io.c (key_is_start_sequence): Now static.
1098         (key_is_end_sequence, key_is_backspace): Remove.
1099         (tui_getc): Now static.
1100
1101 2018-10-19  Tom Tromey  <tom@tromey.com>
1102
1103         * symfile.c (reread_symbols): Clear "static_links".
1104
1105 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
1106
1107         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
1108         define.
1109         (aarch64_linux_sigframe_init): Extra boundary checks.
1110
1111 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
1112
1113         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
1114         the possibly non-existent tdesc type 'vec128', but the type of raw
1115         register v16 instead.
1116
1117 2018-10-19  Gary Benson <gbenson@redhat.com>
1118
1119         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
1120
1121 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
1122
1123         PR cli/23785
1124         * cli/cli-dump.c (restore_binary_file): Check if "file" is
1125         NULL.
1126
1127 2018-10-17  Paul Koning  <paul_koning@dell.com>
1128
1129         * charset.c (convert_between_encodings): Fix unsigned overflow.
1130
1131 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
1132
1133         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
1134         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
1135         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
1136         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
1137         New functions.
1138         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
1139         and fbsd_info_proc_mappings_header.
1140         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
1141         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
1142         New.
1143
1144 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
1145
1146         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
1147         Solaris Maintainer.
1148
1149 2018-10-15  Tom Tromey  <tom@tromey.com>
1150
1151         * tui/tui.c (strcat_to_buf): Remove casts.
1152         * tui/tui-winsource.c (tui_show_source_line)
1153         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
1154         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
1155         * tui/tui-windata.c (tui_first_data_item_displayed)
1156         (tui_delete_data_content_windows, tui_erase_data_content)
1157         (tui_display_all_data, tui_display_data_from)
1158         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
1159         * tui/tui-win.c (tui_set_win_height)
1160         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
1161         casts.
1162         * tui/tui-win.c (tui_resize_all): Remove casts.
1163         (tui_scroll_backward_command, tui_set_focus)
1164         (tui_set_tab_width_command): Likewise.
1165         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
1166         * tui/tui-regs.c (tui_show_register_group): Remove cast.
1167         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
1168         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
1169         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
1170         Remove casts.
1171
1172 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
1173
1174         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
1175         AArch64/ARM maintainer.
1176
1177 2018-10-11  Gary Benson <gbenson@redhat.com>
1178
1179         * interps.h (interp::m_name): Make private and mutable.
1180         * interps.c (interp::~interp): Free m_name.
1181
1182 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
1183             Simon Marchi <simark@simark.ca>
1184
1185         * README (`configure' options): Add documentation for new
1186         "--enable-unit-tests" option.
1187         * acinclude.m4: Include "selftest.m4".
1188         * configure: Regenerate.
1189         * configure.ac: Use "GDB_AC_SELFTEST".
1190         * maint.c (maintenance_selftest): Update message informing
1191         that selftests have been disabled.
1192         (maintenance_info_selftests): Likewise.
1193         * selftest.m4: New file.
1194
1195 2018-10-10  Gary Benson <gbenson@redhat.com>
1196
1197         * remote.c (remote_target::remote_send_printf): Add
1198         missing va_end found by Coverity.
1199
1200 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
1201
1202         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
1203
1204 2018-10-09  Tom Tromey  <tom@tromey.com>
1205
1206         * configure: Rebuild.
1207         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
1208         * NEWS: Update --enable-ubsan documentation.
1209
1210 2018-10-09  Gary Benson <gbenson@redhat.com>
1211
1212         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
1213         found by Coverity.
1214
1215 2018-10-08  Tom Tromey  <tom@tromey.com>
1216
1217         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
1218         variable.
1219         (riscv_fbsd_init_abi): Likewise.
1220
1221 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
1222         * valops.c (value_struct_elt_for_reference): Rename local variable
1223         to work around the shadowing a previous local warning.
1224
1225 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1226
1227         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
1228         * NEWS: Mention new FreeBSD/riscv native configuration.
1229         * configure.host: Add riscv*-*-freebsd*.
1230         * configure.nat: Likewise.
1231         * riscv-fbsd-nat.c: New file.
1232
1233 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1234
1235         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
1236         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
1237         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
1238         * NEWS: Mention new FreeBSD/riscv target.
1239         * configure.tgt: Add riscv*-*-freebsd*.
1240         * riscv-fbsd-tdep.c: New file.
1241         * riscv-fbsd-tdep.h: New file.
1242
1243 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1244
1245         * regcache.h (struct regcache_map_entry): Note that this type can
1246         be used with traditional frame caches.
1247         * trad-frame.c (trad_frame_set_reg_regmap): New.
1248         * trad-frame.h (trad_frame_set_reg_regmap): New.
1249
1250 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
1251
1252         PR c++/16841
1253         * valops.c (get_virtual_base_offset): New function.
1254         (value_struct_elt_for_reference): Use it to get virtual base offset
1255         and add it in calculating class member address.
1256
1257 2018-10-08   John Darrington <john@darrington.wattle.id.au>
1258
1259     * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
1260       (check_producer): Check if the producer is codewarrior.
1261       (producer_is_codewarrior): New function.
1262       (lnp_state_machine::record_line): Ignore is_stmt flag for records
1263        produced by codewarrior.
1264       (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
1265
1266 2018-10-06  Tom Tromey  <tom@tromey.com>
1267
1268         PR python/19399:
1269         * python/py-inferior.c: Add "architecture" entry.
1270         (infpy_architecture): New function.
1271
1272 2018-10-06  Tom Tromey  <tom@tromey.com>
1273
1274         PR python/21765:
1275         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
1276         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
1277         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
1278         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
1279
1280 2018-10-06  Tom Tromey  <tom@tromey.com>
1281
1282         PR build/17077:
1283         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
1284         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
1285         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
1286         #include.
1287
1288 2018-10-06  Tom Tromey  <tom@tromey.com>
1289
1290         * python/py-breakpoint.c (bppy_get_location): Handle a
1291         bp_breakpoint without a location.
1292
1293 2018-10-06  Tom Tromey  <tom@tromey.com>
1294
1295         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
1296         (_RegEx): Reformat help text.
1297         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
1298         (AnyCallerIs, AnyCallerMatches): Reformat help text.
1299         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
1300         text.
1301         * python/lib/gdb/command/xmethods.py (InfoXMethod)
1302         (EnableXMethod, DisableXMethod): Remove help indentation.
1303         Capitalize meta-syntactic variables.
1304         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
1305         (EnableUnwinder, DisableUnwinder): Remove help indentation.
1306         Capitalize meta-syntactic variables.
1307         * python/lib/gdb/command/explore.py (ExploreCommand)
1308         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
1309         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
1310         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
1311         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
1312         Remove help indentation.
1313         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
1314         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
1315         (DisableFrameFilter, SetFrameFilterPriority)
1316         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
1317
1318 2018-10-06  Tom Tromey  <tom@tromey.com>
1319
1320         PR tui/28819:
1321         * tui/tui-io.c (gdb_wgetch): New function.
1322         (tui_mld_getc, tui_getc): Use it.
1323
1324 2018-10-05  Tom Tromey  <tom@tromey.com>
1325
1326         * sol-thread.c (sol_thread_target::wait): Rename inner
1327         "save_ptid".
1328
1329 2018-10-04  Tom Tromey  <tom@tromey.com>
1330
1331         * configure: Rebuild.
1332         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
1333
1334 2018-10-04  Tom Tromey  <tom@tromey.com>
1335
1336         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
1337         declaration of "block".
1338
1339 2018-10-04  Tom Tromey  <tom@tromey.com>
1340
1341         * common/filestuff.c (fdwalk): Remove inner declaration of
1342         "result".
1343
1344 2018-10-04  Tom Tromey  <tom@tromey.com>
1345
1346         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
1347         "structs_addr" and hoist declaration.
1348
1349 2018-10-04  Tom Tromey  <tom@tromey.com>
1350
1351         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
1352         variable "size".
1353
1354 2018-10-04  Tom Tromey  <tom@tromey.com>
1355
1356         * mdebugread.c (parse_partial_symbols): Use std::string.
1357
1358 2018-10-04  Tom Tromey  <tom@tromey.com>
1359
1360         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
1361         * p-valprint.c (pascal_val_print): Split inner "i" variable.
1362         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
1363         header.
1364         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
1365         more inner scope.
1366         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
1367         * varobj.c (varobj_update): Rename inner "newobj",
1368         "type_changed".
1369         * valprint.c (generic_emit_char): Rename inner "buf".
1370         * valops.c (find_overload_match): Rename inner "temp".
1371         (value_struct_elt_for_reference): Declare "v" in more inner
1372         scope.
1373         * v850-tdep.c (v850_push_dummy_call): Rename "len".
1374         * unittests/array-view-selftests.c (run_tests): Rename inner
1375         "vec".
1376         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
1377         header.
1378         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
1379         "tsv" in more inner scope.
1380         (print_one_static_tracepoint_marker): Rename inner
1381         "tuple_emitter".
1382         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
1383         (tic6x_push_dummy_call): Don't redeclare "addr".
1384         * target-float.c: Declare "dto" lower.
1385         * symtab.c (lookup_local_symbol): Rename inner "sym".
1386         (find_pc_sect_line): Rename inner "pc".
1387         * stack.c (print_frame): Don't redeclare "gdbarch".
1388         (return_command): Rename inner "gdbarch".
1389         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
1390         "sp".
1391         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
1392         header.
1393         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
1394         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
1395         scope.
1396         * remote.c (remote_target::update_thread_list): Don't redeclare
1397         "tp".
1398         (remote_target::process_initial_stop_replies): Rename inner
1399         "thread".
1400         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
1401         (remote_target::wait_as): Don't redeclare "stop_reply".
1402         (remote_target::get_thread_local_address): Rename inner
1403         "result".
1404         (remote_target::get_tib_address): Likewise.
1405
1406         * regcache.c (cooked_read_test): Rename "regnum".
1407         * record-btrace.c (cmd_record_btrace_start): Rename inner
1408         "exception".
1409         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
1410         loop header.
1411         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
1412         header.
1413         (ppu2spu_sniffer): Rename inner "buf".
1414         * parse.c (operator_check_standard): Rename inner "type",
1415         "objfile".
1416         * p-valprint.c (pascal_val_print): Introduce new scope for
1417         "low_bound", "high_bound".
1418         * p-exp.y (yylex): Declare "i" in loop header.
1419         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
1420         Lower declaration of "s".
1421         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
1422         header.
1423         (nios2_push_dummy_call): Rename "len".
1424         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
1425         "buf".
1426         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
1427         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
1428         (linux_xfer_osdata_modules): Likewise.
1429         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
1430         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
1431         (mips_o64_push_dummy_call): Likewise.
1432         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
1433         "op".
1434         * mi/mi-main.c (list_available_thread_groups): Rename inner
1435         "tuple_emitter".
1436         (mi_cmd_data_read_memory): Rename inner "opts".
1437         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
1438         "tuple_emitter".
1439         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
1440         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
1441         more inner scope.
1442         (parse_partial_symbols): Rename inner "pst", "p", "name"
1443         * main.c (captured_main_1): Rename inner "i"s.
1444         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
1445         "oso2".
1446         * linux-tdep.c (linux_info_proc): Rename inner "filename".
1447         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
1448         * infrun.c (handle_no_resumed): Don't redeclare "thread".
1449         (handle_signal_stop): Rename inner "gdbarch".
1450         (handle_command): Declare "signum" in loop header.
1451         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
1452         "status".
1453         (examine_prologue): Rename inner "sol" and "sof".
1454         (ia64_extract_return_value): Rename inner "val".  Declare another
1455         "val" in a more inner scope.
1456         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
1457         inner scope.
1458         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
1459         "except".
1460         * findvar.c (default_read_var_value): Don't redeclare "addr".
1461         * f-exp.y (yylex): Declare "i" in loop header.
1462         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
1463         Rename inner "type", "expect_type".
1464         (evaluate_subexp_for_sizeof): Rename inner "pc".
1465         * elfread.c (elf_symfile_read): Rename inner "abfd".
1466         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
1467         "bytes_read".
1468         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
1469         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
1470         (dwarf_decode_line_header): Rename inner "lh".
1471         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
1472         "offset".  Declare "i" in loop header.
1473         (disassemble_dwarf_expression): Rename inner "addr_size".
1474         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
1475         inner "result".
1476         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
1477         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
1478         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
1479         "inner_list_emitter".
1480         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
1481         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
1482         declaration in a block.
1483         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
1484         * cp-valprint.c (cp_print_value_fields): Don't redeclare
1485         "obstack_final_size".
1486         * cp-support.c (inspect_type): Declare "i" in loop header.
1487         * compile/compile.c (compile_instance::insert_symbol_error):
1488         Rename inner "e".
1489         * common/agent.c (agent_run_command): Remove inner "ret"
1490         declaration.
1491         * coffread.c (coff_symfile_read): Rename inner "name".
1492         (coff_symfile_read): Rename inner "abfd".
1493         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
1494         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
1495         "high".
1496         * c-exp.y (lex_one_token): Move "len" declaration lower.
1497         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
1498         "gdbarch".
1499         (create_exception_master_breakpoint): Likewise.  Don't redeclare
1500         "b".
1501         (watch_command_1): Declare "mark" later.
1502         (clear_command): Don't shadow "a" or "b".
1503         (delete_command): Rename inner "b".
1504         (delete_trace_command): Likewise.
1505         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
1506         "op".
1507         (arm_gdbarch_init): Remove inner "e_flags".
1508         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
1509         "offset" in inner blocks.
1510
1511 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
1512
1513         * dwarf-index-write.c (file_write): Don't write if the vector is
1514         empty.
1515
1516 2018-10-05  Tom de Vries  <tdevries@suse.de>
1517
1518         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
1519         PyArg_ParseTuple call.
1520
1521 2018-10-05  Tom de Vries  <tdevries@suse.de>
1522
1523         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
1524         PyArg_ParseTuple call.
1525
1526 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
1527
1528         * psymtab.c (recursively_search_psymtabs): Reformat parameters
1529         to avoid exceeding 80 characters per line limit.
1530
1531 2018-10-04  Tom Tromey  <tom@tromey.com>
1532
1533         * symfile.c (syms_from_objfile_1, finish_new_objfile)
1534         (reread_symbols): Update.
1535         * complaints.h (clear_complaints): Remove argument.
1536         * complaints.c (enum complaint_series): Remove.
1537         (series): Remove global.
1538         (complaint_internal): Update.
1539         (clear_complaints): Remove argument.
1540
1541 2018-10-04  Tom Tromey  <tom@tromey.com>
1542
1543         * symfile.c (symbol_file_add_with_addrs): Do not print "no
1544         debugging symbols" message if there is a separate debug objfile.
1545
1546 2018-10-04  Tom Tromey  <tom@tromey.com>
1547
1548         PR cli/19551:
1549         * symfile.c (symbol_file_add_with_addrs): Update output.
1550         * psymtab.c (require_partial_symbols): Update output.
1551
1552 2018-10-04  Tom Tromey  <tom@tromey.com>
1553
1554         PR cli/22234:
1555         * complaints.c: Emit \n.
1556
1557 2018-10-04  Tom Tromey  <tom@tromey.com>
1558
1559         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
1560         (separate_debug_file_exists, find_separate_debug_file)
1561         (add_symbol_file_command, reread_symbols, allocate_symtab)
1562         (allocate_compunit_symtab): Use filtered printing, not
1563         unfiltered.
1564         * psymtab.c (require_partial_symbols, dump_psymtab)
1565         (allocate_psymtab): Use filtered printing, not unfiltered.
1566
1567 2018-10-04  Tom Tromey  <tom@tromey.com>
1568
1569         * complaints.c (complaint_internal): Correctly check complaint
1570         count.
1571
1572 2018-10-04  Tom Tromey  <tom@tromey.com>
1573
1574         * complaints.h (struct complaints): Remove declaration.
1575         * complaints.c (clear_complaints): Remove an unused variable.
1576
1577 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1578
1579         * MAINTAINERS (Write After Approval): Add self.
1580
1581 2018-10-03  Tom Tromey  <tom@tromey.com>
1582
1583         * guile/scm-value.c (gdbscm_value_to_string): Initialize
1584         "buffer_contents".
1585         * coffread.c (coff_symtab_read): Initialize "newobj".
1586
1587 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
1588
1589         * dwarf2read.c (read_func_scope): Remove struct keyword in
1590         range-based for.
1591
1592 2018-10-03  Tom Tromey  <tom@tromey.com>
1593
1594         * README: Mention --enable-ubsan.
1595         * NEWS: Mention --enable-ubsan.
1596         * acinclude.m4: Include sanitize.m4.
1597         * configure: Rebuild.
1598         * configure.ac: Call AM_GDB_UBSAN.
1599         * sanitize.m4: New file.
1600
1601 2018-10-03  Tom Tromey  <tom@tromey.com>
1602
1603         * expression.h (enum exp_opcode): Use uint8_t as base type.
1604         * expprint.c (op_name): Handle invalid opcodes.
1605
1606 2018-10-03  Tom Tromey  <tom@tromey.com>
1607
1608         * parse.c (prefixify_expression): Add assert.
1609         (parse_exp_in_context_1): Throw exception if the expression is
1610         empty.
1611
1612 2018-10-03  Tom Tromey  <tom@tromey.com>
1613
1614         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
1615
1616 2018-10-03  Tom Tromey  <tom@tromey.com>
1617
1618         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
1619
1620 2018-10-03  Tom Tromey  <tom@tromey.com>
1621
1622         * dwarf2read.c (read_subrange_type): Make "negative_mask"
1623         unsigned.
1624
1625 2018-10-03  Tom Tromey  <tom@tromey.com>
1626
1627         * findvar.c (extract_integer): Do work in an unsigned type.
1628
1629 2018-10-03  Tom Tromey  <tom@tromey.com>
1630
1631         * common/enum-flags.h (enum_flags::operator~): Add static assert.
1632         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
1633         base type.
1634         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
1635         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
1636         type.
1637         * c-lang.h (enum c_string_type_values): Use unsigned as base
1638         type.
1639         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
1640
1641 2018-10-03  Tom Tromey  <tom@tromey.com>
1642
1643         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
1644         <~dwarf2_frame_state_reg_info>: Update.
1645         <dwarf2_frame_state_reg_info>: Update.
1646         <alloc_regs>: Add assertion.  Update.
1647         <reg>: Now a std::vector.
1648         <num_regs>: Remove.
1649         <swap>: Update.
1650         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
1651         (execute_cfa_program_test, dwarf2_frame_cache): Update.
1652
1653 2018-10-03  Tom Tromey  <tom@tromey.com>
1654
1655         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
1656
1657 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1658
1659         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
1660
1661 2018-10-02  Tom Tromey  <tom@tromey.com>
1662
1663         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
1664
1665 2018-10-02  John Darrington <john@darrington.wattle.id.au>
1666
1667         * NEWS: Mention changed commands.
1668         * ser-uds.c: New file.
1669         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
1670         * configure: Regenerate.
1671         * Makefile.in: Add new file.
1672         * serial.c (serial_open): Check if filename is a socket
1673           and lookup the appropriate interface accordingly.
1674
1675 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1676
1677         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
1678         define.
1679         (AARCH64_EXTRA_MAGIC): Likewise.
1680         (AARCH64_FPSIMD_MAGIC): Likewise.
1681         (AARCH64_SVE_MAGIC): Likewise.
1682         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
1683         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
1684         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
1685         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
1686         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
1687         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
1688         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
1689         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
1690         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
1691         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
1692         (read_aarch64_ctx): Add function.
1693         (aarch64_linux_sigframe_init): Detect FP registers.
1694
1695 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1696
1697         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
1698         (AARCH64_D0_REGNUM): Likewise.
1699         (AARCH64_S0_REGNUM): Likewise.
1700         (AARCH64_H0_REGNUM): Likewise.
1701         (AARCH64_B0_REGNUM): Likewise.
1702         (AARCH64_SVE_V0_REGNUM): Likewise.
1703         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
1704         (AARCH64_D0_REGNUM): Likewise.
1705         (AARCH64_S0_REGNUM): Likewise.
1706         (AARCH64_H0_REGNUM): Likewise.
1707         (AARCH64_B0_REGNUM): Likewise.
1708         (AARCH64_SVE_V0_REGNUM): Likewise.
1709
1710 2018-10-01  Gary Benson <gbenson@redhat.com>
1711
1712         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
1713         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
1714         prfpregset_t instead of gdb_prfpregset_t.
1715         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
1716         * configure, config.in: Rebuild.
1717
1718 2018-10-01  Gary Benson <gbenson@redhat.com>
1719
1720         * common/gdb_proc_service.h: New file, factored out from...
1721         * gdb_proc_service.h: Moved common code to the above file.
1722         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
1723
1724 2018-10-01  Gary Benson <gbenson@redhat.com>
1725
1726         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
1727         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
1728
1729 2018-10-01  Gary Benson <gbenson@redhat.com>
1730
1731         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
1732         (AC_CHECK_HEADERS): Check for linux/elf.h.
1733         * configure, config.in: Rebuild.
1734         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
1735         doesn't define elf_fpregset_t.
1736
1737 2018-10-01  Gary Benson <gbenson@redhat.com>
1738
1739         * gdb_proc_service.h: Whitespace change.
1740
1741 2018-10-01  Tom Tromey  <tom@tromey.com>
1742
1743         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
1744         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
1745         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
1746
1747 2018-10-01  Tom Tromey  <tom@tromey.com>
1748
1749         * README: Minor change.
1750
1751 2018-09-30  Pedro Alves  <palves@redhat.com>
1752
1753         * darwin-nat-info.c (darwin_debug_regions_recurse)
1754         (info_mach_exceptions_command): Remove unused local variables.
1755         * darwin-nat.c (darwin_decode_notify_message)
1756         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
1757         (darwin_stop_inferior, darwin_setup_exceptions)
1758         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
1759         (darwin_nat_target::attach, darwin_nat_target::detach)
1760         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
1761         local variables.
1762         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
1763         variables.
1764
1765 2018-09-29  Tom Tromey  <tom@tromey.com>
1766
1767         * README: Remove some leftover text.
1768
1769 2018-09-29  Tom Tromey  <tom@tromey.com>
1770
1771         * PROBLEMS: Rewrite.
1772         * README: Update.
1773
1774 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
1775
1776         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
1777         case with explicit breakpoint kind.
1778         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
1779         'additional_info' and related logic.
1780         (riscv_debug_breakpoints): New variable.
1781         (riscv_breakpoint_kind_from_pc): Use the length of the existing
1782         instruction to determine the breakpoint kind.
1783         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
1784         flag.  Update description of 'set/show riscv
1785         use-compressed-breakpoints' flag.
1786
1787 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
1788
1789         (NEWS): Mention changes to frame related commands.
1790         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
1791         (add_prefix_cmd_suppress_notification): New function.
1792         (add_com_suppress_notification): Call
1793         add_cmd_suppress_notification.
1794         * command.h (add_cmd_suppress_notification): Declare.
1795         (add_prefix_cmd_suppress_notification): Declare.
1796         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
1797         (parse_frame_specification): Moved from stack.c, with
1798         simplification to handle a single argument.
1799         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
1800         switch to the selected frame.  Add a header comment.
1801         * stack.c: Remove 'safe-ctype.h' include.
1802         (find_frame_for_function): Add declaration.
1803         (find_frame_for_address): New function.
1804         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
1805         (frame_selection_by_function_completer): New function.
1806         (info_frame_command): Rename to...
1807         (info_frame_command_core): ...this, and update parameter types.
1808         (select_frame_command): Rename to...
1809         (select_frame_command_core): ...this, and update parameter types.
1810         (frame_command): Rename to...
1811         (frame_command_core): ...this, and update parameter types.
1812         (class frame_command_helper): New class to wrap implementations of
1813         frame related sub-commands.
1814         (frame_apply_cmd_list): New static global.
1815         (frame_cmd_list): Make static.
1816         (select_frame_cmd_list): New global for sub-commands.
1817         (info_frame_cmd_list): New global for sub-commands.
1818         (_initialize_stack): Register sub-commands for 'frame',
1819         'select-frame', and 'info frame'.  Update 'frame apply' commands
1820         to use frame_apply_cmd_list.  Move function local static
1821         frame_apply_list to file static frame_apply_cmd_list for
1822         consistency.
1823         * stack.h (select_frame_command): Delete declarationn.
1824         (select_frame_for_mi): Declare new function.
1825
1826 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
1827
1828         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
1829         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
1830         and NOP.
1831
1832 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
1833
1834         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
1835
1836 2018-09-26  Tom Tromey  <tom@tromey.com>
1837
1838         * valops.c (auto_abandon): Remove dead code.
1839
1840 2018-09-26  Tom Tromey  <tom@tromey.com>
1841
1842         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
1843
1844 2018-09-24  Tom Tromey  <tom@tromey.com>
1845
1846         * common/pathstuff.c (get_standard_cache_dir): Make
1847         "xdg_cache_home" and "home" const.
1848         * top.c (init_history): Make "tmpenv" const.
1849         * main.c (get_init_files): Make "homedir" const.
1850
1851 2018-09-23  Tom Tromey  <tom@tromey.com>
1852
1853         PR python/18852:
1854         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
1855
1856 2018-09-23  Tom Tromey  <tom@tromey.com>
1857
1858         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
1859         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
1860         * python/python-internal.h (gdbpy_handle_exception): Declare.
1861         * python/py-utils.c (gdbpy_handle_exception): New function.
1862
1863 2018-09-23  Tom Tromey  <tom@tromey.com>
1864
1865         PR python/17284:
1866         * python/py-type.c (typy_template_argument): Check for negative
1867         argument number.
1868
1869 2018-09-23  Tom Tromey  <tom@tromey.com>
1870
1871         PR python/14062:
1872         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
1873
1874 2018-09-23  Tom Tromey  <tom@tromey.com>
1875
1876         PR python/18170:
1877         * python/py-value.c (valpy_int): Allow conversion from pointer
1878         type.
1879
1880 2018-09-23  Tom Tromey  <tom@tromey.com>
1881
1882         PR python/20126:
1883         * python/py-value.c (valpy_int): Respect type sign.
1884
1885 2018-09-23  Tom Tromey  <tom@tromey.com>
1886
1887         PR python/18352;
1888         * python/py-value.c (valpy_float): Allow conversions from int or
1889         char.
1890         (valpy_int, valpy_long): Allow conversions from float.
1891
1892 2018-09-23  Tom Tromey  <tom@tromey.com>
1893
1894         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
1895         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
1896
1897 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1898
1899         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
1900         __sighndlr.
1901         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
1902
1903 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
1904
1905         * windows-nat.c (windows_nat_target::wait): Remove a spurious
1906         target_terminal::ours().
1907
1908 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
1909
1910         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
1911         of vl to ULONGEST.
1912
1913 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
1914
1915         * breakpoint.c (update_inserted_breakpoint_locations): Remove
1916         redundant condition.
1917
1918 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1919
1920         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
1921
1922         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
1923         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
1924         * sol-thread.c (ps_pdmodel): Don't guard definition.
1925
1926         * procfs.c: Fix formatting.
1927
1928         * procfs.c (sysset_t_alloc): Remove.
1929         (create_procinfo): Use XNEW instead of sysset_t_alloc.
1930         (procfs_debug_inferior): Likewise.
1931         (procfs_set_exec_trap): Likewise.
1932         (proc_set_traced_sysentry): Don't allocate argp dynamically.
1933         (proc_set_traced_sysexit): Likewise.
1934
1935         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
1936         (dead_procinfo): Likewise.
1937         (proc_warn): Likewise.
1938         (proc_error): Likewise.
1939         (proc_get_LDT_entry): Likewise.
1940         (do_attach): Likewise.
1941         (procfs_target::pid_to_str): Likewise.
1942         (iterate_over_mappings): Likewise.
1943
1944         * procfs.c (create_procinfo): Fix ARI warning.
1945         (proc_get_status): Likewise.
1946         (proc_stop_process): Likewise.
1947         (proc_run_process): Likewise.
1948         (proc_kill): Likewise.
1949         (proc_get_LDT_entry): Likewise.
1950         (procfs_find_LDT_entry): Likewise.
1951         (proc_update_threads): Likewise.
1952         (proc_iterate_over_threads): Likewise.
1953         (do_attach): Likewise.
1954         (procfs_xfer_memory): Likewise.
1955         (invalidate_cache): Likewise.
1956         (procfs_target::resume): Likewise.
1957         (procfs_init_inferior): Likewise.
1958         (procfs_set_exec_trap): Likewise.
1959         (procfs_target::thread_alive): Likewise.
1960         (procfs_target::pid_to_exec_file): Likewise.
1961         (iterate_over_mappings): Likewise.
1962         (procfs_target::make_corefile_notes): Likewise.
1963         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
1964
1965         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
1966         (procfs_find_LDT_entry): Likewise.
1967         * sol-thread.c (ps_lgetLDT): Likewise.
1968
1969 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1970
1971         PR tdep/17903
1972         * procfs.c (procfs_target): Declare pid_to_exec_file.
1973         (procfs_target::pid_to_exec_file): New.
1974
1975 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1976
1977         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
1978         renaming.
1979         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
1980         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
1981
1982 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1983
1984         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
1985         (supply_fpregset, fill_fpregset): Move ...
1986         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
1987         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
1988         Remove references to ioctl-based procfs.
1989         Include <sys/reg.h>.
1990         Remove PR_MODEL_NATIVE guards.
1991         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
1992         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
1993
1994 2018-09-19  Xavier Roirand  <roirand@adacore.com>
1995
1996         PR gdb/20981:
1997         * solib-darwin.c (darwin_get_dyld_bfd): New function.
1998         (darwin_solib_get_all_image_info_addr_at_init): Update call.
1999         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
2000
2001 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
2002
2003         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
2004         (fbsd_print_sockaddr_in6): Likewise.
2005
2006 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
2007             Chris January  <chris.january@arm.com>
2008
2009         * eval.c (skip_undetermined_arglist): Skip argument list helper.
2010         (evaluate_subexp_standard): Return a dummy type when
2011         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
2012         OP_F77_UNDETERMINED_ARGLIST case.
2013         * expression.h (enum noside): Update comment.
2014
2015 2018-09-19  George Vasick <george.vasick@oracle.com>
2016
2017         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
2018
2019 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
2020             April Chin <april.chin@oracle.com>
2021             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2022
2023         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
2024         uint_t lwpid_t.
2025         (create_procinfo): Print pids in /proc without leading zeros.
2026
2027 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
2028
2029         * nios2-tdep.c (nios2_gcc_target_options): New.
2030         (nios2_gdb_arch_init): Install new hook.
2031
2032 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
2033
2034         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
2035         New file.
2036         * update-gnulib.sh: Apply patch.
2037         * configure: Re-generate.
2038
2039 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2040
2041         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
2042         description.  Make "info proc" command descriptions more
2043         consistent.
2044
2045 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2046
2047         * NEWS: Mention 'info proc files' command.
2048
2049 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2050
2051         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
2052         descriptors for IP_FILES and IP_ALL.
2053
2054 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2055
2056         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
2057         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
2058         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
2059         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
2060         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
2061         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
2062         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
2063         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
2064         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
2065         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
2066         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
2067         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
2068         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
2069         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
2070         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
2071         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
2072         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
2073         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
2074         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
2075         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
2076         (struct fbsd_sockaddr_un): New types.
2077         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
2078         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
2079         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
2080         (fbsd_core_info_proc_files): New functions.
2081         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
2082         IP_ALL.
2083         * fbsd-tdep.h (fbsd_info_proc_files_header)
2084         (fbsd_info_proc_files_entry): New.
2085
2086 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2087
2088         * defs.h (enum info_proc_what) [IP_FILES]: New value.
2089         * infcmd.c (info_proc_cmd_files): New function.
2090         (_initialize_infcmd): Register 'info proc files' command.
2091
2092 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2093
2094         * gnulib/aclocal-m4-deps.mk: Re-generate.
2095         * gnulib/aclocal.m4: Re-generate.
2096         * gnulib/config.in: Re-generate.
2097         * gnulib/configure: Re-generate.
2098         * gnulib/import/Makefile.am: Re-generate.
2099         * gnulib/import/Makefile.in: Re-generate.
2100         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
2101         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
2102         * gnulib/import/arpa_inet.in.h: New file.
2103         * gnulib/import/inet_ntop.c: New file.
2104         * gnulib/import/m4/arpa_inet_h.m4: New file.
2105         * gnulib/import/m4/inet_ntop.m4: New file.
2106         * gnulib/import/m4/netinet_in_h.m4: New file.
2107         * gnulib/import/m4/socklen.m4: New file.
2108         * gnulib/import/m4/sockpfaf.m4: New file.
2109         * gnulib/import/m4/stdalign.m4: New file.
2110         * gnulib/import/m4/sys_uio_h.m4: New file.
2111         * gnulib/import/netinet_in.in.h: New file.
2112         * gnulib/import/stdalign.in.h: New file.
2113         * gnulib/import/sys_socket.c: New file.
2114         * gnulib/import/sys_socket.in.h: New file.
2115         * gnulib/import/sys_uio.in.h: New file.
2116         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
2117         module.
2118
2119 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2120
2121         * gnulib/aclocal-m4-deps.mk: New file.
2122         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
2123         deterministically.
2124
2125 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2126
2127         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
2128         KVE_PATH.
2129
2130 2018-09-18  Tom Tromey  <tom@tromey.com>
2131
2132         * compile/compile-object-load.c (struct
2133         link_hash_table_cleanup_data): Add constructor and destructor.
2134         Use DISABLE_COPY_AND_ASSIGN.
2135         (~link_hash_table_cleanup_data): Rename from
2136         link_hash_table_free.  Now a destructor.
2137         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
2138
2139 2018-09-18  Tom Tromey  <tom@tromey.com>
2140
2141         * compile/compile-object-run.c (do_module_cleanup): Use delete.
2142         * compile/compile-object-load.c (struct munmap_list): Move to
2143         header file.
2144         (munmap_list::add): Rename from munmap_list_add; rewrite.
2145         (munmap_list::~munmap_list): Rename from munmap_list_free.
2146         (munmap_listp_free_cleanup): Remove.
2147         (compile_object_load): Update.
2148         * compile/compile-object-load.h (struct munmap_list): Move from
2149         compile-object-load.c.  Rewrite.
2150
2151 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
2152
2153         * aarch64-tdep.c (pass_in_v): Use register size.
2154         (aarch64_extract_return_value): Likewise.
2155         (aarch64_store_return_value): Likewise.
2156
2157 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2158
2159         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
2160         rlim_t.
2161
2162 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2163
2164         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
2165         Fix short help line.
2166
2167 2018-09-17  Tom Tromey  <tom@tromey.com>
2168
2169         PR python/20445:
2170         * configure: Rebuild.
2171         * configure.ac: Conditionally use -DNDEBUG for Python.
2172
2173 2018-09-17  Tom Tromey  <tom@tromey.com>
2174
2175         * configure: Rebuild.
2176         * configure.ac: Use gmp as a library dependency when checking for
2177         mpfr.
2178
2179 2018-09-17  Pedro Alves  <palves@redhat.com>
2180
2181         * python/py-inferior.c (find_inferior_object): Delete.
2182
2183 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
2184
2185         * compile/compile-cplus-types.c
2186         (compile_cplus_instance::enter_scope): Don't use new_scope after
2187         std::move.
2188
2189 2018-09-17  Tom Tromey  <tom@tromey.com>
2190
2191         * common/pathstuff.c (get_standard_cache_dir): Use
2192         ~/Library/Caches on macOS.
2193         * common/pathstuff.h (get_standard_cache_dir): Update comment.
2194
2195 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
2196
2197         PR python/23669
2198         * breakpoint.c (commands_cmd_element): New.
2199         (_initialize_breakpoint): Assign commands_cmd_element.
2200         * breakpoint.h (commands_cmd_element): New.
2201         * cli/cli-script.c (while_cmd_element, if_command,
2202         define_cmd_element): New.
2203         (command_name_equals): Remove.
2204         (process_next_line): Compare commands by pointer, not by name.
2205         (_initialize_cli_script): Assign the various cmd_list_element
2206         variables.
2207         * compile/compile.c (compile_cmd_element): New.
2208         (_initialize_compile): Assign compile_cmd_element.
2209         * compile/compile.h (compile_cmd_element): New.
2210         * guile/guile.c (guile_cmd_element): New.
2211         (install_gdb_commands): Assign guile_cmd_element.
2212         * guile/guile.h (guile_cmd_element): New.
2213         * python/python.c (python_cmd_element): New.
2214         (_initialize_python): Assign python_cmd_element.
2215         * python/python.h (python_cmd_element): New.
2216         * tracepoint.c (while_stepping_cmd_element): New.
2217         (_initialize_tracepoint): Assign while_stepping_cmd_element.
2218         * tracepoint.h (while_stepping_cmd_element): New.
2219
2220 2018-09-17  Tom Tromey  <tom@tromey.com>
2221
2222         * infrun.c (save_infcall_suspend_state): Return
2223         infcall_suspend_state_up.
2224         (save_infcall_control_state): Return infcall_control_state_up.
2225         * inferior.h (save_infcall_suspend_state)
2226         (save_infcall_control_state): Declare later.  Return unique
2227         pointers.
2228
2229 2018-09-17  Tom Tromey  <tom@tromey.com>
2230
2231         * infrun.c (struct stop_context): Declare constructor,
2232         destructor, "changed" method.
2233         (stop_context::stop_context): Rename from save_stop_context.
2234         (stop_context::~stop_context): Rename from
2235         release_stop_context_cleanup.
2236         (normal_stop): Update.
2237         (stop_context::changed): Rename from stop_context_changed.  Return
2238         bool.
2239
2240 2018-09-17  Tom Tromey  <tom@tromey.com>
2241
2242         * inferior.h (struct infcall_suspend_state_deleter): New.
2243         (infcall_suspend_state_up): New typedef.
2244         (struct infcall_control_state_deleter): New.
2245         (infcall_control_state_up): New typedef.
2246         (make_cleanup_restore_infcall_suspend_state)
2247         (make_cleanup_restore_infcall_control_state): Don't declare.
2248         * infcall.c (call_function_by_hand_dummy): Update.
2249         * infrun.c (do_restore_infcall_suspend_state_cleanup)
2250         (make_cleanup_restore_infcall_suspend_state): Remove.
2251         (do_restore_infcall_control_state_cleanup)
2252         (make_cleanup_restore_infcall_control_state): Remove.
2253
2254 2018-09-17  Tom Tromey  <tom@tromey.com>
2255
2256         * gdbthread.h (struct thread_control_state): Add initializer.
2257         (class thread_info) <control>: Remove initializer.
2258         * inferior.h (struct inferior_control_state): Add initializer.
2259         (class inferior) <control>: Remove initializer.
2260         (exit_inferior_1): Update.
2261         * infrun.c (struct infcall_control_state): Add constructors.
2262         (save_infcall_control_state): Use new.
2263         (restore_infcall_control_state, discard_infcall_control_state):
2264         Use delete.
2265
2266 2018-09-17  Tom Tromey  <tom@tromey.com>
2267
2268         * infrun.c (struct infcall_suspend_state) <registers>: Now a
2269         unique_ptr.
2270         <siginfo_data>: Now a unique_xmalloc_ptr.
2271         (save_infcall_suspend_state, restore_infcall_suspend_state)
2272         (discard_infcall_suspend_state)
2273         (get_infcall_suspend_state_regcache): Update.
2274
2275 2018-09-17  Tom Tromey  <tom@tromey.com>
2276
2277         * gdbthread.h (struct thread_suspend_state): Add initializers.
2278         (class thread_info) <suspend>: Remove initializer.
2279         * infrun.c (struct infcall_suspend_state): Add initializers.
2280         (save_infcall_suspend_state): Use new.
2281         (discard_infcall_suspend_state): Use delete.
2282
2283 2018-09-16  Tom Tromey  <tom@tromey.com>
2284
2285         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
2286         Remove.
2287         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
2288         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
2289         (py_varobj_iter_new): Likewise.
2290         (py_varobj_get_iterator): Use gdbpy_ref.
2291
2292 2018-09-16  Tom Tromey  <tom@tromey.com>
2293
2294         * python/py-threadevent.c (py_get_event_thread): Simplify.
2295         * python/py-inferior.c (infpy_thread_from_thread_handle):
2296         Return immediately after calling thread_to_thread_object.  Use
2297         Py_RETURN_NONE.
2298         (thread_to_thread_object): Set the exception on a NULL return.
2299
2300 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
2301
2302         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
2303
2304 2018-09-16  Tom Tromey  <tom@tromey.com>
2305
2306         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
2307         Remove.
2308
2309 2018-09-16  Tom Tromey  <tom@tromey.com>
2310
2311         * python/python-internal.h (thread_to_thread_object): Change
2312         return type.
2313         * python/py-inferior.c (thread_to_thread_object): Return a new
2314         reference.
2315         (infpy_thread_from_thread_handle): Update.
2316         * python/py-infthread.c (gdbpy_selected_thread): Update.
2317         * python/py-stopevent.c (create_stop_event_object): Update.
2318         * python/py-threadevent.c (py_get_event_thread): Return a new
2319         reference.
2320         (py_get_event_thread): Update.
2321         * python/py-event.h (py_get_event_thread): Change return type.
2322         * python/py-continueevent.c (create_continue_event_object):
2323         Update.
2324
2325 2018-09-16  Tom Tromey  <tom@tromey.com>
2326
2327         * python/py-progspace.c (pspy_get_objfiles): Update.
2328         * python/python-internal.h (objfile_to_objfile_object): Change
2329         return type.
2330         * python/py-newobjfileevent.c (create_new_objfile_event_object):
2331         Update.
2332         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
2333         Update.
2334         * python/python.c (gdbpy_get_current_objfile): Update.
2335         (gdbpy_objfiles): Update.
2336         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
2337         Update.
2338         (objfile_to_objfile_object): Return a new reference.
2339         * python/py-symtab.c (stpy_get_objfile): Update.
2340         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
2341         Update.
2342
2343 2018-09-16  Tom Tromey  <tom@tromey.com>
2344
2345         * python/py-inferior.c (infpy_get_progspace): Update.
2346         * python/python-internal.h (pspace_to_pspace_object): Change
2347         return type.
2348         * python/py-newobjfileevent.c
2349         (create_clear_objfiles_event_object): Update.
2350         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
2351         Update.
2352         * python/python.c (gdbpy_get_current_progspace): Update.
2353         (gdbpy_progspaces): Update.
2354         * python/py-progspace.c (pspace_to_pspace_object): Return a new
2355         reference.
2356         * python/py-objfile.c (objfpy_get_progspace): Update.
2357         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
2358         Update.
2359
2360 2018-09-16  Tom Tromey  <tom@tromey.com>
2361
2362         * python/lib/gdb/__init__.py (current_progspace, objfiles)
2363         (solib_name, block_for_pc, find_pc_line): New functions.
2364         (execute_unwinders): Update.
2365         * python/py-block.c (gdbpy_block_for_pc): Remove.
2366         * python/py-inferior.c (infpy_get_progspace): New function.
2367         (inferior_object_getset) <progspace>: Add.
2368         * python/py-progspace.c (pspy_objfiles): Rewrite.
2369         (pspy_solib_name, pspy_block_for_pc)
2370         (pspy_find_pc_line, pspy_is_valid): New functions.
2371         (progspace_object_methods): Add entries for solib_name,
2372         block_for_pc, find_pc_line, is_valid.
2373         * python/python-internal.h (gdbpy_block_for_pc)
2374         (build_objfiles_list): Don't declare.
2375         * python/python.c: Don't include solib.h.
2376         (gdbpy_solib_name, gdbpy_find_pc_line)
2377         (gdbpy_get_current_progspace, build_objfiles_list)
2378         (gdbpy_objfiles): Remove.
2379         (GdbMethods) <current_progspace, objfiles, block_for_pc,
2380         solib_name, find_pc_line>: Remove entries.
2381
2382 2018-09-16  Tom Tromey  <tom@tromey.com>
2383
2384         * top.c (new_ui_command): Use GNU style for metasyntactic
2385         variables.
2386         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
2387         variables.
2388         * maint.c (maintenance_translate_address): Remove "<>" around
2389         text.
2390         * interps.c (interpreter_exec_cmd): Use GNU style for
2391         metasyntactic variables.
2392         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
2393         metasyntactic variables.
2394         * tracepoint.c (tfind_range_command): Use GNU style for
2395         metasyntactic variables.
2396         (tfind_outside_command): Likewise.
2397         (_initialize_tracepoint): Likewise.
2398         * remote.c (extended_remote_target::create_inferior): Use GNU
2399         style for metasyntactic variables.
2400         * sparc64-tdep.c (adi_examine_command): Use GNU style for
2401         metasyntactic variables.
2402         (adi_assign_command): Likewise.
2403
2404 2018-09-16  Tom Tromey  <tom@tromey.com>
2405
2406         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
2407         metasyntactic variables.  Print message if no disassembler options
2408         are available.
2409
2410 2018-09-15  Tom Tromey  <tom@tromey.com>
2411
2412         * infcmd.c (get_inferior_args): Return const char *.
2413         * inferior.h (get_inferior_args): Return type now const.
2414         * linux-tdep.c (linux_fill_prpsinfo): Update.
2415         * procfs.c (procfs_target::make_corefile_notes): Update.
2416
2417 2018-09-07  Tom Tromey  <tom@tromey.com>
2418
2419         * python/python.c (execute_gdb_command): Call bpstat_do_actions
2420         inside the TRY.
2421
2422 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
2423
2424         * nios2-tdep.c (nios2_type_align): New.
2425         (nios2_gdb_arch_init): Install type_align hook.
2426
2427 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
2428
2429         * eval.c (fake_method::fake_method): Call xzalloc directly for a
2430         type that is neither object file owned, nor gdbarch owned.
2431         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
2432         gdbarch is non-NULL.
2433         (alloc_type_instance): Allocate non-objfile owned types on the
2434         gdbarch obstack.
2435         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
2436         using TYPE_ALLOC to ensure memory is allocated on the correct
2437         obstack.
2438         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
2439         obstack, or the gdbarch obstack.
2440         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
2441
2442 2018-09-14  Tom Tromey  <tom@tromey.com>
2443
2444         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
2445         block.
2446
2447 2018-09-14  Tom Tromey  <tom@tromey.com>
2448
2449         * nat/fork-inferior.c (get_startup_shell): Remove "static".
2450
2451 2018-09-13  Tom Tromey  <tom@tromey.com>
2452
2453         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
2454         static.
2455
2456 2018-09-13  Tom Tromey  <tom@tromey.com>
2457
2458         * exec.c (try_open_exec_file): Use std::string.
2459
2460 2018-09-13  Tom Tromey  <tom@tromey.com>
2461
2462         * utils.h (gdb_bfd_errmsg): Return std::string.
2463         * exec.c (exec_file_attach): Update.
2464         * compile/compile-object-load.c (compile_object_load): Update.
2465         * utils.c (gdb_bfd_errmsg): Return std::string.
2466
2467 2018-09-13  Tom Tromey  <tom@tromey.com>
2468
2469         * procfs.c (struct procinfo_deleter): New.
2470         (procinfo_up): New typedef.
2471         (do_destroy_procinfo_cleanup): Remove.
2472         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
2473
2474 2018-09-13  Tom Tromey  <tom@tromey.com>
2475
2476         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
2477
2478 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2479 2018-09-13  Tom Tromey  <tom@tromey.com>
2480
2481         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
2482         (pspy_get_objfiles): New function.
2483         (progspace_object_methods): New.
2484         (pspace_object_type): Add tp_methods callback.
2485         * python/python-internal.h (build_objfiles_list): New
2486         declaration.
2487         * python/python.c (build_objfiles_list): New function.
2488         (gdbpy_objfiles): Implement using build_objfiles_list.
2489         * NEWS: Mention the Progspace.objfiles method.
2490
2491 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2492
2493         * python/py-inferior.c (infpy_get_progspace): New function.
2494         (inferior_object_getset): Add progspace property.
2495         * NEWS: Mention the new property.
2496
2497 2018-09-13  Tom Tromey  <tom@tromey.com>
2498
2499         PR rust/23650:
2500         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
2501
2502 2018-09-13  Tom Tromey  <tom@tromey.com>
2503
2504         PR rust/23626:
2505         * rust-lang.c (rust_enum_variant): Now static.
2506         (rust_empty_enum_p): New function.
2507         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
2508         Handle empty enum.
2509
2510 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2511
2512         * python/py-inferior.c (infpy_repr): New.
2513         (inferior_object_type): Register infpy_repr.
2514         * python/py-objfile.c (objfpy_repr): New.
2515         (objfile_object_type): Register objfpy_repr.
2516
2517 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
2518
2519         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
2520
2521 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
2522
2523         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
2524         typo.
2525
2526 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
2527
2528         * common/common-utils.c: Don't include '<sys/stat.h>'.
2529         (is_regular_file): Move to...
2530         * common/filestuff.c (is_regular_file): ... here.
2531         * common/common-utils.h (is_regular_file): Move to...
2532         * common/filestuff.h (is_regular_file): ... here.
2533
2534 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
2535
2536         * skip.c (debug_skip): New variable.
2537         (skiplist_entry::do_skip_file_p): Add debug output.
2538         (skiplist_entry::do_skip_gfile_p): Likewise.
2539         (skiplist_entry::skip_function_p): Likewise.
2540         (_initialize_step_skip): Create debug command.
2541         * NEWS: Mention set/show debug skip.
2542
2543 2018-09-11  Xavier Roirand  <roirand@adacore.com>
2544
2545         * darwin-nat.c (should_disable_startup_with_shell):
2546         New function.
2547         (darwin_nat_target::create_inferior): Add call.
2548
2549 2018-09-11  Xavier Roirand  <roirand@adacore.com>
2550
2551         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
2552         inf_port, msg_state>: Initialize.
2553         (struct darwin_thread_info) <signaled, single_step>: Change
2554         type and initialize.
2555         (struct darwin_thread_info) <event>: Initialize.
2556
2557 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2558
2559         PR gdb/23555
2560         PR gdb/23558
2561         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
2562         guesses.
2563
2564 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2565
2566         Revert:
2567         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
2568
2569         PR gdb/23555
2570         PR gdb/23558
2571         * gnulib/aclocal.m4: Regenerate.
2572         * gnulib/config.in: Regenerate.
2573         * gnulib/configure: Regenerate.
2574         * gnulib/import/Makefile.am: Update.
2575         * gnulib/import/Makefile.in: Update.
2576         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
2577         * gnulib/import/_Noreturn.h: ... this.
2578         * gnulib/import/alloca.in.h: Update.
2579         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
2580         * gnulib/import/arg-nonnull.h: ... this.
2581         * gnulib/import/assure.h: Update.
2582         * gnulib/import/at-func.c: Update.
2583         * gnulib/import/basename-lgpl.c: Update.
2584         * gnulib/import/extra/snippet/c++defs.h: Rename to...
2585         * gnulib/import/c++defs.h: ... this.
2586         * gnulib/import/canonicalize-lgpl.c: Update.
2587         * gnulib/import/cdefs.h: Update.
2588         * gnulib/import/chdir-long.c: Update.
2589         * gnulib/import/chdir-long.h: Update.
2590         * gnulib/import/cloexec.c: Update.
2591         * gnulib/import/cloexec.h: Update.
2592         * gnulib/import/close.c: Update.
2593         * gnulib/import/closedir.c: Update.
2594         * gnulib/import/config.charset: Update.
2595         * gnulib/import/dirent-private.h: Update.
2596         * gnulib/import/dirent.in.h: Update.
2597         * gnulib/import/dirfd.c: Update.
2598         * gnulib/import/dirname-lgpl.c: Update.
2599         * gnulib/import/dirname.h: Update.
2600         * gnulib/import/dosname.h: Update.
2601         * gnulib/import/dup-safer-flag.c: Update.
2602         * gnulib/import/dup-safer.c: Update.
2603         * gnulib/import/dup.c: Update.
2604         * gnulib/import/dup2.c: Update.
2605         * gnulib/import/errno.in.h: Update.
2606         * gnulib/import/error.c: Update.
2607         * gnulib/import/error.h: Update.
2608         * gnulib/import/exitfail.c: Update.
2609         * gnulib/import/exitfail.h: Update.
2610         * gnulib/import/extra/update-copyright: Update.
2611         * gnulib/import/fchdir.c: Update.
2612         * gnulib/import/fcntl.c: Update.
2613         * gnulib/import/fcntl.in.h: Update.
2614         * gnulib/import/fd-hook.c: Update.
2615         * gnulib/import/fd-hook.h: Update.
2616         * gnulib/import/fd-safer-flag.c: Update.
2617         * gnulib/import/fd-safer.c: Update.
2618         * gnulib/import/fdopendir.c: Update.
2619         * gnulib/import/filename.h: Update.
2620         * gnulib/import/filenamecat-lgpl.c: Update.
2621         * gnulib/import/filenamecat.h: Update.
2622         * gnulib/import/flexmember.h: Update.
2623         * gnulib/import/float+.h: Update.
2624         * gnulib/import/float.c: Update.
2625         * gnulib/import/float.in.h: Update.
2626         * gnulib/import/fnmatch.c: Update.
2627         * gnulib/import/fnmatch.in.h: Update.
2628         * gnulib/import/fnmatch_loop.c: Update.
2629         * gnulib/import/fpucw.h: Update.
2630         * gnulib/import/frexp.c: Update.
2631         * gnulib/import/frexpl.c: Update.
2632         * gnulib/import/fstat.c: Update.
2633         * gnulib/import/fstatat.c: Update.
2634         * gnulib/import/getcwd-lgpl.c: Update.
2635         * gnulib/import/getcwd.c: Update.
2636         * gnulib/import/getdtablesize.c: Update.
2637         * gnulib/import/getlogin_r.c: Update.
2638         * gnulib/import/getprogname.c: Update.
2639         * gnulib/import/getprogname.h: Update.
2640         * gnulib/import/gettext.h: Update.
2641         * gnulib/import/gettimeofday.c: Update.
2642         * gnulib/import/glob-libc.h: Update.
2643         * gnulib/import/glob.c: Update.
2644         * gnulib/import/glob.in.h: Update.
2645         * gnulib/import/glob_internal.h: Update.
2646         * gnulib/import/glob_pattern_p.c: Update.
2647         * gnulib/import/globfree.c: Update.
2648         * gnulib/import/hard-locale.c: Update.
2649         * gnulib/import/hard-locale.h: Update.
2650         * gnulib/import/intprops.h: Update.
2651         * gnulib/import/inttypes.in.h: Update.
2652         * gnulib/import/isnan.c: Update.
2653         * gnulib/import/isnand-nolibm.h: Update.
2654         * gnulib/import/isnand.c: Update.
2655         * gnulib/import/isnanl-nolibm.h: Update.
2656         * gnulib/import/isnanl.c: Update.
2657         * gnulib/import/itold.c: Update.
2658         * gnulib/import/libc-config.h: Update.
2659         * gnulib/import/limits.in.h: Update.
2660         * gnulib/import/localcharset.c: Update.
2661         * gnulib/import/localcharset.h: Update.
2662         * gnulib/import/localtime-buffer.c: Update.
2663         * gnulib/import/localtime-buffer.h: Update.
2664         * gnulib/import/lstat.c: Update.
2665         * gnulib/import/m4/00gnulib.m4: Update.
2666         * gnulib/import/m4/__inline.m4: Update.
2667         * gnulib/import/m4/absolute-header.m4: Update.
2668         * gnulib/import/m4/alloca.m4: Update.
2669         * gnulib/import/m4/builtin-expect.m4: Update.
2670         * gnulib/import/m4/canonicalize.m4: Update.
2671         * gnulib/import/m4/chdir-long.m4: Update.
2672         * gnulib/import/m4/close.m4: Update.
2673         * gnulib/import/m4/closedir.m4: Update.
2674         * gnulib/import/m4/configmake.m4: Update.
2675         * gnulib/import/m4/d-ino.m4: Update.
2676         * gnulib/import/m4/d-type.m4: Update.
2677         * gnulib/import/m4/dirent_h.m4: Update.
2678         * gnulib/import/m4/dirfd.m4: Update.
2679         * gnulib/import/m4/dirname.m4: Update.
2680         * gnulib/import/m4/double-slash-root.m4: Update.
2681         * gnulib/import/m4/dup.m4: Update.
2682         * gnulib/import/m4/dup2.m4: Update.
2683         * gnulib/import/m4/eealloc.m4: Update.
2684         * gnulib/import/m4/environ.m4: Update.
2685         * gnulib/import/m4/errno_h.m4: Update.
2686         * gnulib/import/m4/error.m4: Update.
2687         * gnulib/import/m4/exponentd.m4: Update.
2688         * gnulib/import/m4/exponentl.m4: Update.
2689         * gnulib/import/m4/extensions.m4: Update.
2690         * gnulib/import/m4/extern-inline.m4: Update.
2691         * gnulib/import/m4/fchdir.m4: Update.
2692         * gnulib/import/m4/fcntl-o.m4: Update.
2693         * gnulib/import/m4/fcntl.m4: Update.
2694         * gnulib/import/m4/fcntl_h.m4: Update.
2695         * gnulib/import/m4/fdopendir.m4: Update.
2696         * gnulib/import/m4/filenamecat.m4: Update.
2697         * gnulib/import/m4/flexmember.m4: Update.
2698         * gnulib/import/m4/float_h.m4: Update.
2699         * gnulib/import/m4/fnmatch.m4: Update.
2700         * gnulib/import/m4/fnmatch_h.m4: Update.
2701         * gnulib/import/m4/fpieee.m4: Update.
2702         * gnulib/import/m4/frexp.m4: Update.
2703         * gnulib/import/m4/frexpl.m4: Update.
2704         * gnulib/import/m4/fstat.m4: Update.
2705         * gnulib/import/m4/fstatat.m4: Update.
2706         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
2707         * gnulib/import/m4/getcwd-path-max.m4: Update.
2708         * gnulib/import/m4/getcwd.m4: Update.
2709         * gnulib/import/m4/getdtablesize.m4: Update.
2710         * gnulib/import/m4/getlogin.m4: Update.
2711         * gnulib/import/m4/getlogin_r.m4: Update.
2712         * gnulib/import/m4/getpagesize.m4: Update.
2713         * gnulib/import/m4/getprogname.m4: Update.
2714         * gnulib/import/m4/gettimeofday.m4: Update.
2715         * gnulib/import/m4/glibc21.m4: Update.
2716         * gnulib/import/m4/glob.m4: Update.
2717         * gnulib/import/m4/glob_h.m4: Update.
2718         * gnulib/import/m4/gnulib-cache.m4: Update.
2719         * gnulib/import/m4/gnulib-common.m4: Update.
2720         * gnulib/import/m4/gnulib-comp.m4: Update.
2721         * gnulib/import/m4/gnulib-tool.m4: Update.
2722         * gnulib/import/m4/hard-locale.m4: Update.
2723         * gnulib/import/m4/include_next.m4: Update.
2724         * gnulib/import/m4/inttypes-pri.m4: Update.
2725         * gnulib/import/m4/inttypes.m4: Update.
2726         * gnulib/import/m4/isnand.m4: Update.
2727         * gnulib/import/m4/isnanl.m4: Update.
2728         * gnulib/import/m4/largefile.m4: Update.
2729         * gnulib/import/m4/limits-h.m4: Update.
2730         * gnulib/import/m4/localcharset.m4: Update.
2731         * gnulib/import/m4/locale-fr.m4: Update.
2732         * gnulib/import/m4/locale-ja.m4: Update.
2733         * gnulib/import/m4/locale-zh.m4: Update.
2734         * gnulib/import/m4/localtime-buffer.m4: Update.
2735         * gnulib/import/m4/longlong.m4: Update.
2736         * gnulib/import/m4/lstat.m4: Update.
2737         * gnulib/import/m4/malloc.m4: Update.
2738         * gnulib/import/m4/malloca.m4: Update.
2739         * gnulib/import/m4/math_h.m4: Update.
2740         * gnulib/import/m4/mbrtowc.m4: Update.
2741         * gnulib/import/m4/mbsinit.m4: Update.
2742         * gnulib/import/m4/mbsrtowcs.m4: Update.
2743         * gnulib/import/m4/mbstate_t.m4: Update.
2744         * gnulib/import/m4/memchr.m4: Update.
2745         * gnulib/import/m4/memmem.m4: Update.
2746         * gnulib/import/m4/mempcpy.m4: Update.
2747         * gnulib/import/m4/memrchr.m4: Update.
2748         * gnulib/import/m4/mkdir.m4: Update.
2749         * gnulib/import/m4/mkstemp.m4: Update.
2750         * gnulib/import/m4/mmap-anon.m4: Update.
2751         * gnulib/import/m4/mode_t.m4: Update.
2752         * gnulib/import/m4/msvc-inval.m4: Update.
2753         * gnulib/import/m4/msvc-nothrow.m4: Update.
2754         * gnulib/import/m4/multiarch.m4: Update.
2755         * gnulib/import/m4/nocrash.m4: Update.
2756         * gnulib/import/m4/off_t.m4: Update.
2757         * gnulib/import/m4/onceonly.m4: Update.
2758         * gnulib/import/m4/open-cloexec.m4: Update.
2759         * gnulib/import/m4/open.m4: Update.
2760         * gnulib/import/m4/openat.m4: Update.
2761         * gnulib/import/m4/opendir.m4: Update.
2762         * gnulib/import/m4/pathmax.m4: Update.
2763         * gnulib/import/m4/rawmemchr.m4: Update.
2764         * gnulib/import/m4/readdir.m4: Update.
2765         * gnulib/import/m4/readlink.m4: Update.
2766         * gnulib/import/m4/realloc.m4: Update.
2767         * gnulib/import/m4/rename.m4: Update.
2768         * gnulib/import/m4/rewinddir.m4: Update.
2769         * gnulib/import/m4/rmdir.m4: Update.
2770         * gnulib/import/m4/save-cwd.m4: Update.
2771         * gnulib/import/m4/secure_getenv.m4: Update.
2772         * gnulib/import/m4/setenv.m4: Update.
2773         * gnulib/import/m4/signal_h.m4: Update.
2774         * gnulib/import/m4/ssize_t.m4: Update.
2775         * gnulib/import/m4/stat-time.m4: Update.
2776         * gnulib/import/m4/stat.m4: Update.
2777         * gnulib/import/m4/std-gnu11.m4: Update.
2778         * gnulib/import/m4/stdbool.m4: Update.
2779         * gnulib/import/m4/stddef_h.m4: Update.
2780         * gnulib/import/m4/stdint.m4: Update.
2781         * gnulib/import/m4/stdio_h.m4: Update.
2782         * gnulib/import/m4/stdlib_h.m4: Update.
2783         * gnulib/import/m4/strchrnul.m4: Update.
2784         * gnulib/import/m4/strdup.m4: Update.
2785         * gnulib/import/m4/strerror.m4: Update.
2786         * gnulib/import/m4/string_h.m4: Update.
2787         * gnulib/import/m4/strstr.m4: Update.
2788         * gnulib/import/m4/strtok_r.m4: Update.
2789         * gnulib/import/m4/sys_socket_h.m4: Update.
2790         * gnulib/import/m4/sys_stat_h.m4: Update.
2791         * gnulib/import/m4/sys_time_h.m4: Update.
2792         * gnulib/import/m4/sys_types_h.m4: Update.
2793         * gnulib/import/m4/tempname.m4: Update.
2794         * gnulib/import/m4/time_h.m4: Update.
2795         * gnulib/import/m4/unistd-safer.m4: Update.
2796         * gnulib/import/m4/unistd_h.m4: Update.
2797         * gnulib/import/m4/warn-on-use.m4: Update.
2798         * gnulib/import/m4/wchar_h.m4: Update.
2799         * gnulib/import/m4/wchar_t.m4: Update.
2800         * gnulib/import/m4/wctype_h.m4: Update.
2801         * gnulib/import/m4/wint_t.m4: Update.
2802         * gnulib/import/malloc.c: Update.
2803         * gnulib/import/malloc/scratch_buffer.h: Update.
2804         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
2805         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
2806         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
2807         * gnulib/import/malloca.c: Update.
2808         * gnulib/import/malloca.h: Update.
2809         * gnulib/import/malloca.valgrind: Update.
2810         * gnulib/import/math.in.h: Update.
2811         * gnulib/import/mbrtowc.c: Update.
2812         * gnulib/import/mbsinit.c: Update.
2813         * gnulib/import/mbsrtowcs-impl.h: Update.
2814         * gnulib/import/mbsrtowcs-state.c: Update.
2815         * gnulib/import/mbsrtowcs.c: Update.
2816         * gnulib/import/memchr.c: Update.
2817         * gnulib/import/memmem.c: Update.
2818         * gnulib/import/mempcpy.c: Update.
2819         * gnulib/import/memrchr.c: Update.
2820         * gnulib/import/mkdir.c: Update.
2821         * gnulib/import/mkstemp.c: Update.
2822         * gnulib/import/msvc-inval.c: Update.
2823         * gnulib/import/msvc-inval.h: Update.
2824         * gnulib/import/msvc-nothrow.c: Update.
2825         * gnulib/import/msvc-nothrow.h: Update.
2826         * gnulib/import/open.c: Update.
2827         * gnulib/import/openat-die.c: Update.
2828         * gnulib/import/openat-priv.h: Update.
2829         * gnulib/import/openat-proc.c: Update.
2830         * gnulib/import/openat.c: Update.
2831         * gnulib/import/openat.h: Update.
2832         * gnulib/import/opendir.c: Update.
2833         * gnulib/import/pathmax.h: Update.
2834         * gnulib/import/pipe-safer.c: Update.
2835         * gnulib/import/rawmemchr.c: Update.
2836         * gnulib/import/readdir.c: Update.
2837         * gnulib/import/readlink.c: Update.
2838         * gnulib/import/realloc.c: Update.
2839         * gnulib/import/ref-add.sin: Update.
2840         * gnulib/import/ref-del.sin: Update.
2841         * gnulib/import/rename.c: Update.
2842         * gnulib/import/rewinddir.c: Update.
2843         * gnulib/import/rmdir.c: Update.
2844         * gnulib/import/same-inode.h: Update.
2845         * gnulib/import/save-cwd.c: Update.
2846         * gnulib/import/save-cwd.h: Update.
2847         * gnulib/import/scratch_buffer.h: Update.
2848         * gnulib/import/secure_getenv.c: Update.
2849         * gnulib/import/setenv.c: Update.
2850         * gnulib/import/signal.in.h: Update.
2851         * gnulib/import/stat-time.c: Update.
2852         * gnulib/import/stat-time.h: Update.
2853         * gnulib/import/stat-w32.c: Update.
2854         * gnulib/import/stat-w32.h: Update.
2855         * gnulib/import/stat.c: Update.
2856         * gnulib/import/stdbool.in.h: Update.
2857         * gnulib/import/stddef.in.h: Update.
2858         * gnulib/import/stdint.in.h: Update.
2859         * gnulib/import/stdio.in.h: Update.
2860         * gnulib/import/stdlib.in.h: Update.
2861         * gnulib/import/str-two-way.h: Update.
2862         * gnulib/import/strchrnul.c: Update.
2863         * gnulib/import/strdup.c: Update.
2864         * gnulib/import/streq.h: Update.
2865         * gnulib/import/strerror-override.c: Update.
2866         * gnulib/import/strerror-override.h: Update.
2867         * gnulib/import/strerror.c: Update.
2868         * gnulib/import/string.in.h: Update.
2869         * gnulib/import/stripslash.c: Update.
2870         * gnulib/import/strnlen1.c: Update.
2871         * gnulib/import/strnlen1.h: Update.
2872         * gnulib/import/strstr.c: Update.
2873         * gnulib/import/strtok_r.c: Update.
2874         * gnulib/import/sys_stat.in.h: Update.
2875         * gnulib/import/sys_time.in.h: Update.
2876         * gnulib/import/sys_types.in.h: Update.
2877         * gnulib/import/tempname.c: Update.
2878         * gnulib/import/tempname.h: Update.
2879         * gnulib/import/time.in.h: Update.
2880         * gnulib/import/unistd--.h: Update.
2881         * gnulib/import/unistd-safer.h: Update.
2882         * gnulib/import/unistd.in.h: Update.
2883         * gnulib/import/unsetenv.c: Update.
2884         * gnulib/import/verify.h: Update.
2885         * gnulib/import/extra/snippet/warn-on-use.h: Update.
2886         * gnulib/import/wchar.in.h: Update.
2887         * gnulib/import/wctype.in.h: Update.
2888         * gnulib/import/xalloc-oversized.h: Update.
2889         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
2890         "53e2c179f26a890fa6685af4b6c1397ee370433b".
2891
2892 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
2893
2894         * record-btrace.c (get_thread_current_frame): Remove
2895         old_inferior_ptid.
2896
2897 2018-09-10  Jerome Guitton  <guitton@adacore.com>
2898
2899         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
2900         with check_tag to 1 if and only if the type is tagged and the
2901         component being searched cannot been found in the current
2902         view. Otherwise, always call ada_to_fixed_type with
2903         check_tag to 0.
2904
2905 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2906
2907         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
2908         declaration.
2909         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
2910         * ada-varobj.c (ada_varobj_get_number_of_children,
2911         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
2912
2913 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2914
2915         * ada-valprint.c (ada_value_print): Use type instead of
2916         enclosing type.
2917
2918 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2919
2920         * ada-lang.c (ada_value_subscript): Handle case when parameter is
2921         an array of access to unconstrained array.
2922
2923 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2924
2925         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
2926         (ada_check_typedef): Use it.
2927
2928 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2929
2930         * ada-varobj.c (ada_varobj_describe_struct_child)
2931         (ada_varobj_describe_child): Handle union case like struct one.
2932
2933 2018-09-10  Tom Tromey  <tom@tromey.com>
2934
2935         PR python/18380:
2936         * python/python.c (_initialize_python): Make example in "python"
2937         help work in Python 3.
2938
2939 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
2940
2941         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
2942         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
2943         $(EXEEXT) to the script, as it is not a program.
2944
2945 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
2946
2947         * python/py-prettyprint.c (pretty_print_one_value): Return
2948         gdbpy_ref<>.
2949         (print_string_repr): Adjust.
2950         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
2951         * python/python-internal.h (apply_varobj_pretty_printer): Return
2952         gdbpy_ref<>.
2953         * varobj.c (varobj_value_get_print_value): Adjust.
2954
2955 2018-09-08  Tom Tromey  <tom@tromey.com>
2956
2957         PR python/16047:
2958         * python/py-prettyprint.c (pretty_print_one_value): Check for
2959         to_string method.
2960
2961 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2962
2963         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
2964         replace_operator_with_call.
2965
2966 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2967
2968         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
2969
2970 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2971
2972         * ada-typeprint.c (print_range): Print the bounds using TYPE
2973         rather than its TYPE_TARGET_TYPE.
2974
2975 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2976
2977         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
2978         call to ada_to_fixed_value_create.
2979
2980 2018-09-08  Jerome Guitton  <guitton@adacore.com>
2981
2982         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
2983
2984 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2985
2986         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
2987         by calls to error.
2988
2989 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2990
2991         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
2992         Move update of loop variable "fi".
2993
2994 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2995
2996         * ada-lang.c (value_assign_to_component): In the case of
2997         big-endian targets, extract the bits of the given VAL
2998         using an src_offset of zero if container is not a scalar.
2999
3000 2018-09-06  Simon Ser  <contact@emersion.fr>
3001
3002         PR gdb/23105
3003         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
3004         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
3005         * fbsd-tdep.c (fbsd_make_note_desc): New.
3006         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
3007         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
3008         * target.h (enum target_object) Add FreeBSD-specific
3009         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
3010
3011 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3012
3013         * compile/compile-c.h (generate_c_for_variable_locations):
3014         Change reference to pointer.
3015         * compile/compile-c-support.c (compile_program) <compute>:
3016         Likewise.
3017         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
3018         (generate_c_for_for_one_variable): Likewise
3019         (generate_c_for_variable_locations): Likewise
3020         * compile/compile-c-types.c (compile_c_instance::convert_type):
3021         Likewise
3022         * compile/compile-cplus-symbols.c (convert_one_symbol):
3023         std::move the scope passed to enter_scope.
3024         * compile/compile-cplus-types.c
3025         (compile_cplus_instance::enter_scope): Make parameter
3026         rvalue-reference.
3027         (compile_cplus_instance::new_scope): Change reference to
3028         pointer.
3029         (compile_cplus_instance::convert_type): Likewise
3030         (compile_cplus_convert_typedef): std::move the scope passed to
3031         enter_scope.
3032         (compile_cplus_convert_struct_or_union): Likewise.
3033         (compile_cplus_convert_enum): Likewise.
3034         (compile_cplus_convert_namespace): Likewise.
3035         * compile/compile-cplus.h (compile_cplus_instance)
3036         <enter_scope>: Make parameter rvalue-reference.
3037         * compile/compile-internal.h (compile_instance)
3038         <get_cached_type>: Likewise
3039         * compile/compile-loc2c.c (push): Likewise
3040         (pushf): Likewise
3041         (unary): Likewise
3042         (binary): Likewise
3043         (print_label): Likewise
3044         (pushf_register_address): Likewise
3045         (pushf_register): Likewise
3046         (do_compile_dwarf_expr_to_c): Likewise
3047         (compile_dwarf_expr_to_c): Likewise
3048         (compile_dwarf_bounds_to_c): Likewise
3049         * compile/compile.c (compile_instance::get_cached_type):
3050         Likewise
3051         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
3052         (compile_dwarf_bounds_to_c): Likewise
3053         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
3054         (dwarf2_compile_property_to_c): Likewise
3055         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
3056         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
3057         Likewise
3058
3059 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3060
3061         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
3062         * tui/tui-data.c (init_content_element): Don't initialize it.
3063
3064 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3065
3066         * tui/tui-data.h (struct tui_win_info)
3067         <detail::opaque>: Remove.
3068         * tui/tui-data.c (init_win_info): Remove assignment.
3069
3070 2018-09-05  Tom Tromey  <tom@tromey.com>
3071
3072         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
3073         -Wformat-nonliteral.
3074         * target-float.c (host_float_ops<T>::to_string)
3075         (host_float_ops<T>::from_string): Use
3076         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
3077         * configure: Rebuild.
3078
3079 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
3080
3081         * printcmd.c (printf_c_string): Use
3082         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
3083         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
3084
3085 2018-09-05  Tom Tromey  <tom@tromey.com>
3086
3087         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
3088
3089 2018-09-05  Tom de Vries  <tdevries@suse.de>
3090
3091         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
3092         with resolve_abstract_p == true.
3093         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
3094         defaulting to false. Propagate resolve_abstract_p to
3095         dwarf2_fetch_die_loc_sect_off.
3096         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
3097         parameter, defaulting to false.
3098         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
3099         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
3100         parameter.
3101         * dwarf2read.h (struct die_info): Forward-declare.
3102         (die_info_ptr): New typedef.
3103         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
3104
3105 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
3106
3107         GDB 8.2 released.
3108
3109 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
3110             Pedro Alves  <palves@redhat.com>
3111
3112         * gnulib/Makefile.in (aclocal_m4_deps): Move to
3113         "aclocal-m4-deps.mk".  Include file here.
3114         $(srcdir)/aclocal.m4: Add "configure.ac".
3115         * gnulib/aclocal-m4-deps.mk: New file.
3116         * gnulib/update-gnulib.sh: Automatically update
3117         "aclocal-m4-deps.mk".
3118
3119 2018-09-04  Tom Tromey  <tom@tromey.com>
3120
3121         * configure: Rebuild.
3122         * configure.ac: Remove multi-ice code.
3123
3124 2018-09-04  Tom Tromey  <tom@tromey.com>
3125
3126         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
3127         (ada-exp.o): Update.
3128
3129 2018-09-04  Tom Tromey  <tom@tromey.com>
3130
3131         * Makefile.in (printcmd.o, target-float.o): Remove.
3132         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
3133
3134 2018-09-04  Tom Tromey  <tom@tromey.com>
3135
3136         * gnulib/Makefile.in: Remove obsolete comment.
3137         * Makefile.in: Remove obsolete comment.
3138
3139 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
3140
3141         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
3142         line with '+'.
3143
3144 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
3145
3146         * riscv-tdep.c: Add 'prologue-value.h' include.
3147         (struct riscv_unwind_cache): New struct.
3148         (riscv_debug_unwinder): New global.
3149         (riscv_scan_prologue): Update arguments, capture register details
3150         from prologue scan.
3151         (riscv_skip_prologue): Reformat arguments line, move end of
3152         prologue calculation into riscv_scan_prologue.
3153         (riscv_frame_cache): Update return type, create
3154         riscv_unwind_cache, scan the prologue, and fill in remaining cache
3155         details.
3156         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
3157         (riscv_frame_prev_register): Use the trad_frame within the
3158         riscv_unwind_cache.
3159         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
3160         flag.
3161
3162 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
3163
3164         * trad-frame.h (trad_frame_set_realreg): Declare.
3165         (trad_frame_set_addr): Declare.
3166         * trad-frame.c (trad_frame_set_realreg): Define new function.
3167         (trad_frame_set_addr): Define new function.
3168         (trad_frame_set_reg_realreg): Use new function.
3169         (trad_frame_set_reg_addr): Use new function.
3170
3171 2018-09-01  Keith Seitz  <keiths@redhat.com>
3172
3173         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
3174         pulongest instead of "%lld".
3175         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
3176         ATTRIBUTE_UNUSED.
3177
3178 2018-08-31  Tom Tromey  <tom@tromey.com>
3179
3180         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
3181         variant part type.
3182
3183 2018-08-31  Pedro Alves  <palves@redhat.com>
3184
3185         * gdbarch.h: Regenerate.
3186
3187 2018-08-31  Pedro Alves  <palves@redhat.com>
3188
3189         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
3190         * target.h (Hardware watchpoint interfaces): Describe
3191         continuable/steppable/non-steppable watchpoints.
3192         * gdbarch.h, gdbarch.c: Regenerate.
3193
3194 2018-08-31  Pedro Alves  <palves@redhat.com>
3195
3196         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
3197         Delete.
3198         * s390-linux-nat.c
3199         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
3200         * target.h (target_ops::have_continuable_watchpoint): Delete.
3201         (target_have_continuable_watchpoint): Delete.
3202         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
3203         * target-delegates.c: Regenerate.
3204
3205 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
3206
3207         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
3208         the files present in "gnulib/import/m4/".
3209
3210 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
3211
3212         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
3213         c.sw, c.swsp, and c.sdsp.
3214
3215 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
3216
3217         * riscv-tdep.c (struct riscv_inferior_data): Delete.
3218         (riscv_read_misa_reg): Don't cache value read into inferior data.
3219         (riscv_new_inferior_data): Delete.
3220         (riscv_inferior_data_cleanup): Delete.
3221         (riscv_inferior_data): Delete.
3222         (riscv_invalidate_inferior_data): Delete.
3223         (_initialize_riscv_tdep): Remove initialisation of inferior data.
3224
3225 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
3226
3227         * compile/compile-cplus-types.c
3228         (compile_cplus_instance::leave_scope): Take the address of scope
3229         object.
3230         (compile_cplus_instance::convert_qualified_base): Compare quals
3231         to 0.
3232
3233 2018-08-30  Keith Seitz  <keiths@redhat.com>
3234
3235         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
3236         Use "%s" and host_address_to_string instead of "%p" in printf.
3237
3238 2018-08-29  Keith Seitz  <keiths@redhat.com>
3239
3240         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
3241         and compile-cplus-types.c.
3242         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
3243         * c-lang.c (cplus_language_defn): Set C++ compile functions.
3244         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
3245         Declare.
3246         * compile/compile-c-support.c: Include compile-cplus.h.
3247         (load_libcompile): Templatize.
3248         (get_compile_context): "New" function.
3249         (c_get_compile_context): Use get_compile_context.
3250         (cplus_get_compile_context): New function.
3251         (cplus_push_user_expression, cplus_pop_user_expression)
3252         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
3253         (cplus_compute_program): Define new structs/functions.
3254         * compile/compile-cplus-symmbols.c: New file.
3255         * compile/compile-cplus-types.c: New file.
3256         * compile/compile-cplus.h: New file.
3257         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
3258         Declare.
3259         * compile/compile-object-load.c (get_out_value_type): Use
3260         strncmp_iw when comparing symbol names.
3261         (compile_object_load): Add mst_bss and mst_data.
3262         * compile/compile.c (_initialize_compile): Remove
3263         -Wno-implicit-function-declaration from `compile_args'.
3264         * compile/gcc-cp-plugin.h: New file.
3265         * NEWS: Mention C++ compile support and new debug options.
3266
3267 2018-08-29  Keith Seitz  <keiths@redhat.com>
3268
3269         * linespec.c (collect_info::add_symbol): Make virtual.
3270         (struct symbol_searcher_collect_info): New struct.
3271         (symbol_searcher::find_all_symbols): New method.
3272         * symtab.h (class symbol_searcher): New class.
3273
3274 2018-08-29  Keith Seitz  <keiths@redhat.com>
3275
3276         * linespec.c (struct linespec) <function_symbols, label_symbols>:
3277         Change to vector of block_symbol.  Update all users.
3278         (struct collect_info) <symbols>: Likewise.
3279         (collect_info::add_symbol): Take block_symbol as argument.
3280         Update all callers.
3281         (decode_compound_collector) <m_symbols>: Change type to vector
3282         of block_symbol.  Update all users.
3283         (decode_compound_collector::operator ()): Change parameter type
3284         to block_symbol.
3285         (find_method, find_function_symbols, find_linespec_symbols)
3286         (find_label_symbols_in_block, find_label_symbols): Change symbol
3287         vectors to block_symbol vectors.
3288         * symtab.h (symbol_found_callback_ftype): Change parameter type to
3289         block_symbol.
3290
3291 2018-08-29  Keith Seitz  <keiths@redhat.com>
3292
3293         * linespec.c (symbolp): Remove typedef and VEC definitions.
3294         (bound_minimal_symbol_d): Likewise.
3295
3296 2018-08-29  Keith Seitz  <keiths@redhat.com>
3297
3298         * linespec.c (decode_compound_collector::decode_compound_collector):
3299         Remove initialization for `m_symtabs'.
3300         (decode_compound_collector::release_symbols): Change return type
3301         to std::vector.  Update all callers.
3302         (class decode_compound_collector) <m_symbols>: Change type to
3303         std::vector.
3304         (lookup_prefix_sym): Change return type to std::vector.  Update all
3305         callers.
3306         (compare_symbols): Remove.
3307         (std_compare_symbols): Rename to `compare_symbols'.
3308         (find_method): Change `sym_classes' parameter to std::vector.
3309         Update all callers.  Use std::sort to sort sym_classes.
3310         (find_linespec_symbols): Remove cleanup.
3311
3312 2018-08-29  Keith Seitz  <keiths@redhat.com>
3313
3314         * linespec.c (struct linespec) <minimal_symbols>: Change type to
3315         std::vector.  Update all users.
3316         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
3317         (struct collect_info) <minimal_symbols>: Likewise.
3318         (compare_msymbols): Return bool.  Change parameters to const
3319         bound_minimal_symbol references.
3320         (find_method, find_function_symbols, find_linespec_symbols): Change
3321         `minsyms' parameter to std::vector.  Update all callers.
3322
3323 2018-08-29  Keith Seitz  <keiths@redhat.com>
3324
3325         * linespec.c (struct linespec) <label_symbols>: Change type to
3326         std::vector.  Update all users.
3327         (find_label_symbols_in_block): Change `result' parameter to
3328         std::vector.  Update all callers.
3329         (find_label_symbols): Return std::vector.  Update all callers.
3330
3331 2018-08-29  Keith Seitz  <keiths@redhat.com>
3332
3333         * linespec.c (struct linespec) <function_symbols>: Change type to
3334         std::vector.  Update all users.
3335         (struct collect_info) <function_symbols>: Likewise.
3336         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
3337         (std_compare_symbols): New function.
3338         (find_method, find_function_symbols, find_linespec_symbols)
3339         (find_label_symbols_in_block): Change `symbols' parameter to
3340         std::vector.  Update all callers.
3341         (find_label_symbols): Likewise for `function_symbols' and
3342         `label_funcs_ret'.
3343
3344 2018-08-29  Keith Seitz  <keiths@redhat.com>
3345
3346         * linespec.c (symtab_vector_up): Define.
3347         (struct linespec) <file_symtabs>: Change type to std::vector *.
3348         Update all uses.
3349         (struct collect_info) <file_symtabs>: Likewise.
3350         (collect_symtabs_from_filename): Return symtab_vector_up.
3351         Update all callers.
3352         (decode_objc): Remove cleanup.
3353         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
3354         (symtab_collector::release_symtabs): Return symtab_vector_up.
3355         Update all callers.
3356         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
3357         Update all users.
3358         (collect_symtabs_from_filename, symtabs_from_filename): Return
3359         symtab_vector_up.  Update all callers.
3360
3361 2018-08-29  Tom Tromey  <tom@tromey.com>
3362
3363         * csky-tdep.c (csky_analyze_prologue): Use
3364         core_addr_to_string_nz.
3365
3366 2018-08-29  Tom Tromey  <tom@tromey.com>
3367
3368         * windows-nat.c (struct xlate_exception) <them>: Change type to
3369         DWORD.
3370         (xlate): Fix formatting.  Remove last entry.
3371         (struct xlate_exception, xlate): Comment out.
3372         (windows_nat_target::resume): Use ranged for.
3373
3374 2018-08-29  Jim Wilson  <jimw@sifive.com>
3375
3376         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
3377         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
3378         of NT_PRFPREG.
3379         (riscv_linux_nat_target::store_registers): Likewise.
3380
3381 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
3382
3383         PR gdb/23555
3384         PR gdb/23558
3385         * gnulib/aclocal.m4: Regenerate.
3386         * gnulib/config.in: Regenerate.
3387         * gnulib/configure: Regenerate.
3388         * gnulib/import/Makefile.am: Update.
3389         * gnulib/import/Makefile.in: Update.
3390         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
3391         * gnulib/import/_Noreturn.h: ... this.
3392         * gnulib/import/alloca.in.h: Update.
3393         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
3394         * gnulib/import/arg-nonnull.h: ... this.
3395         * gnulib/import/assure.h: Update.
3396         * gnulib/import/at-func.c: Update.
3397         * gnulib/import/basename-lgpl.c: Update.
3398         * gnulib/import/extra/snippet/c++defs.h: Rename to...
3399         * gnulib/import/c++defs.h: ... this.
3400         * gnulib/import/canonicalize-lgpl.c: Update.
3401         * gnulib/import/cdefs.h: Update.
3402         * gnulib/import/chdir-long.c: Update.
3403         * gnulib/import/chdir-long.h: Update.
3404         * gnulib/import/cloexec.c: Update.
3405         * gnulib/import/cloexec.h: Update.
3406         * gnulib/import/close.c: Update.
3407         * gnulib/import/closedir.c: Update.
3408         * gnulib/import/config.charset: Update.
3409         * gnulib/import/dirent-private.h: Update.
3410         * gnulib/import/dirent.in.h: Update.
3411         * gnulib/import/dirfd.c: Update.
3412         * gnulib/import/dirname-lgpl.c: Update.
3413         * gnulib/import/dirname.h: Update.
3414         * gnulib/import/dosname.h: Update.
3415         * gnulib/import/dup-safer-flag.c: Update.
3416         * gnulib/import/dup-safer.c: Update.
3417         * gnulib/import/dup.c: Update.
3418         * gnulib/import/dup2.c: Update.
3419         * gnulib/import/errno.in.h: Update.
3420         * gnulib/import/error.c: Update.
3421         * gnulib/import/error.h: Update.
3422         * gnulib/import/exitfail.c: Update.
3423         * gnulib/import/exitfail.h: Update.
3424         * gnulib/import/extra/update-copyright: Update.
3425         * gnulib/import/fchdir.c: Update.
3426         * gnulib/import/fcntl.c: Update.
3427         * gnulib/import/fcntl.in.h: Update.
3428         * gnulib/import/fd-hook.c: Update.
3429         * gnulib/import/fd-hook.h: Update.
3430         * gnulib/import/fd-safer-flag.c: Update.
3431         * gnulib/import/fd-safer.c: Update.
3432         * gnulib/import/fdopendir.c: Update.
3433         * gnulib/import/filename.h: Update.
3434         * gnulib/import/filenamecat-lgpl.c: Update.
3435         * gnulib/import/filenamecat.h: Update.
3436         * gnulib/import/flexmember.h: Update.
3437         * gnulib/import/float+.h: Update.
3438         * gnulib/import/float.c: Update.
3439         * gnulib/import/float.in.h: Update.
3440         * gnulib/import/fnmatch.c: Update.
3441         * gnulib/import/fnmatch.in.h: Update.
3442         * gnulib/import/fnmatch_loop.c: Update.
3443         * gnulib/import/fpucw.h: Update.
3444         * gnulib/import/frexp.c: Update.
3445         * gnulib/import/frexpl.c: Update.
3446         * gnulib/import/fstat.c: Update.
3447         * gnulib/import/fstatat.c: Update.
3448         * gnulib/import/getcwd-lgpl.c: Update.
3449         * gnulib/import/getcwd.c: Update.
3450         * gnulib/import/getdtablesize.c: Update.
3451         * gnulib/import/getlogin_r.c: Update.
3452         * gnulib/import/getprogname.c: Update.
3453         * gnulib/import/getprogname.h: Update.
3454         * gnulib/import/gettext.h: Update.
3455         * gnulib/import/gettimeofday.c: Update.
3456         * gnulib/import/glob-libc.h: Update.
3457         * gnulib/import/glob.c: Update.
3458         * gnulib/import/glob.in.h: Update.
3459         * gnulib/import/glob_internal.h: Update.
3460         * gnulib/import/glob_pattern_p.c: Update.
3461         * gnulib/import/globfree.c: Update.
3462         * gnulib/import/hard-locale.c: Update.
3463         * gnulib/import/hard-locale.h: Update.
3464         * gnulib/import/intprops.h: Update.
3465         * gnulib/import/inttypes.in.h: Update.
3466         * gnulib/import/isnan.c: Update.
3467         * gnulib/import/isnand-nolibm.h: Update.
3468         * gnulib/import/isnand.c: Update.
3469         * gnulib/import/isnanl-nolibm.h: Update.
3470         * gnulib/import/isnanl.c: Update.
3471         * gnulib/import/itold.c: Update.
3472         * gnulib/import/libc-config.h: Update.
3473         * gnulib/import/limits.in.h: Update.
3474         * gnulib/import/localcharset.c: Update.
3475         * gnulib/import/localcharset.h: Update.
3476         * gnulib/import/localtime-buffer.c: Update.
3477         * gnulib/import/localtime-buffer.h: Update.
3478         * gnulib/import/lstat.c: Update.
3479         * gnulib/import/m4/00gnulib.m4: Update.
3480         * gnulib/import/m4/__inline.m4: Update.
3481         * gnulib/import/m4/absolute-header.m4: Update.
3482         * gnulib/import/m4/alloca.m4: Update.
3483         * gnulib/import/m4/builtin-expect.m4: Update.
3484         * gnulib/import/m4/canonicalize.m4: Update.
3485         * gnulib/import/m4/chdir-long.m4: Update.
3486         * gnulib/import/m4/close.m4: Update.
3487         * gnulib/import/m4/closedir.m4: Update.
3488         * gnulib/import/m4/configmake.m4: Update.
3489         * gnulib/import/m4/d-ino.m4: Update.
3490         * gnulib/import/m4/d-type.m4: Update.
3491         * gnulib/import/m4/dirent_h.m4: Update.
3492         * gnulib/import/m4/dirfd.m4: Update.
3493         * gnulib/import/m4/dirname.m4: Update.
3494         * gnulib/import/m4/double-slash-root.m4: Update.
3495         * gnulib/import/m4/dup.m4: Update.
3496         * gnulib/import/m4/dup2.m4: Update.
3497         * gnulib/import/m4/eealloc.m4: Update.
3498         * gnulib/import/m4/environ.m4: Update.
3499         * gnulib/import/m4/errno_h.m4: Update.
3500         * gnulib/import/m4/error.m4: Update.
3501         * gnulib/import/m4/exponentd.m4: Update.
3502         * gnulib/import/m4/exponentl.m4: Update.
3503         * gnulib/import/m4/extensions.m4: Update.
3504         * gnulib/import/m4/extern-inline.m4: Update.
3505         * gnulib/import/m4/fchdir.m4: Update.
3506         * gnulib/import/m4/fcntl-o.m4: Update.
3507         * gnulib/import/m4/fcntl.m4: Update.
3508         * gnulib/import/m4/fcntl_h.m4: Update.
3509         * gnulib/import/m4/fdopendir.m4: Update.
3510         * gnulib/import/m4/filenamecat.m4: Update.
3511         * gnulib/import/m4/flexmember.m4: Update.
3512         * gnulib/import/m4/float_h.m4: Update.
3513         * gnulib/import/m4/fnmatch.m4: Update.
3514         * gnulib/import/m4/fnmatch_h.m4: Update.
3515         * gnulib/import/m4/fpieee.m4: Update.
3516         * gnulib/import/m4/frexp.m4: Update.
3517         * gnulib/import/m4/frexpl.m4: Update.
3518         * gnulib/import/m4/fstat.m4: Update.
3519         * gnulib/import/m4/fstatat.m4: Update.
3520         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
3521         * gnulib/import/m4/getcwd-path-max.m4: Update.
3522         * gnulib/import/m4/getcwd.m4: Update.
3523         * gnulib/import/m4/getdtablesize.m4: Update.
3524         * gnulib/import/m4/getlogin.m4: Update.
3525         * gnulib/import/m4/getlogin_r.m4: Update.
3526         * gnulib/import/m4/getpagesize.m4: Update.
3527         * gnulib/import/m4/getprogname.m4: Update.
3528         * gnulib/import/m4/gettimeofday.m4: Update.
3529         * gnulib/import/m4/glibc21.m4: Update.
3530         * gnulib/import/m4/glob.m4: Update.
3531         * gnulib/import/m4/glob_h.m4: Update.
3532         * gnulib/import/m4/gnulib-cache.m4: Update.
3533         * gnulib/import/m4/gnulib-common.m4: Update.
3534         * gnulib/import/m4/gnulib-comp.m4: Update.
3535         * gnulib/import/m4/gnulib-tool.m4: Update.
3536         * gnulib/import/m4/hard-locale.m4: Update.
3537         * gnulib/import/m4/include_next.m4: Update.
3538         * gnulib/import/m4/inttypes-pri.m4: Update.
3539         * gnulib/import/m4/inttypes.m4: Update.
3540         * gnulib/import/m4/isnand.m4: Update.
3541         * gnulib/import/m4/isnanl.m4: Update.
3542         * gnulib/import/m4/largefile.m4: Update.
3543         * gnulib/import/m4/limits-h.m4: Update.
3544         * gnulib/import/m4/localcharset.m4: Update.
3545         * gnulib/import/m4/locale-fr.m4: Update.
3546         * gnulib/import/m4/locale-ja.m4: Update.
3547         * gnulib/import/m4/locale-zh.m4: Update.
3548         * gnulib/import/m4/localtime-buffer.m4: Update.
3549         * gnulib/import/m4/longlong.m4: Update.
3550         * gnulib/import/m4/lstat.m4: Update.
3551         * gnulib/import/m4/malloc.m4: Update.
3552         * gnulib/import/m4/malloca.m4: Update.
3553         * gnulib/import/m4/math_h.m4: Update.
3554         * gnulib/import/m4/mbrtowc.m4: Update.
3555         * gnulib/import/m4/mbsinit.m4: Update.
3556         * gnulib/import/m4/mbsrtowcs.m4: Update.
3557         * gnulib/import/m4/mbstate_t.m4: Update.
3558         * gnulib/import/m4/memchr.m4: Update.
3559         * gnulib/import/m4/memmem.m4: Update.
3560         * gnulib/import/m4/mempcpy.m4: Update.
3561         * gnulib/import/m4/memrchr.m4: Update.
3562         * gnulib/import/m4/mkdir.m4: Update.
3563         * gnulib/import/m4/mkstemp.m4: Update.
3564         * gnulib/import/m4/mmap-anon.m4: Update.
3565         * gnulib/import/m4/mode_t.m4: Update.
3566         * gnulib/import/m4/msvc-inval.m4: Update.
3567         * gnulib/import/m4/msvc-nothrow.m4: Update.
3568         * gnulib/import/m4/multiarch.m4: Update.
3569         * gnulib/import/m4/nocrash.m4: Update.
3570         * gnulib/import/m4/off_t.m4: Update.
3571         * gnulib/import/m4/onceonly.m4: Update.
3572         * gnulib/import/m4/open-cloexec.m4: Update.
3573         * gnulib/import/m4/open.m4: Update.
3574         * gnulib/import/m4/openat.m4: Update.
3575         * gnulib/import/m4/opendir.m4: Update.
3576         * gnulib/import/m4/pathmax.m4: Update.
3577         * gnulib/import/m4/rawmemchr.m4: Update.
3578         * gnulib/import/m4/readdir.m4: Update.
3579         * gnulib/import/m4/readlink.m4: Update.
3580         * gnulib/import/m4/realloc.m4: Update.
3581         * gnulib/import/m4/rename.m4: Update.
3582         * gnulib/import/m4/rewinddir.m4: Update.
3583         * gnulib/import/m4/rmdir.m4: Update.
3584         * gnulib/import/m4/save-cwd.m4: Update.
3585         * gnulib/import/m4/secure_getenv.m4: Update.
3586         * gnulib/import/m4/setenv.m4: Update.
3587         * gnulib/import/m4/signal_h.m4: Update.
3588         * gnulib/import/m4/ssize_t.m4: Update.
3589         * gnulib/import/m4/stat-time.m4: Update.
3590         * gnulib/import/m4/stat.m4: Update.
3591         * gnulib/import/m4/std-gnu11.m4: Update.
3592         * gnulib/import/m4/stdbool.m4: Update.
3593         * gnulib/import/m4/stddef_h.m4: Update.
3594         * gnulib/import/m4/stdint.m4: Update.
3595         * gnulib/import/m4/stdio_h.m4: Update.
3596         * gnulib/import/m4/stdlib_h.m4: Update.
3597         * gnulib/import/m4/strchrnul.m4: Update.
3598         * gnulib/import/m4/strdup.m4: Update.
3599         * gnulib/import/m4/strerror.m4: Update.
3600         * gnulib/import/m4/string_h.m4: Update.
3601         * gnulib/import/m4/strstr.m4: Update.
3602         * gnulib/import/m4/strtok_r.m4: Update.
3603         * gnulib/import/m4/sys_socket_h.m4: Update.
3604         * gnulib/import/m4/sys_stat_h.m4: Update.
3605         * gnulib/import/m4/sys_time_h.m4: Update.
3606         * gnulib/import/m4/sys_types_h.m4: Update.
3607         * gnulib/import/m4/tempname.m4: Update.
3608         * gnulib/import/m4/time_h.m4: Update.
3609         * gnulib/import/m4/unistd-safer.m4: Update.
3610         * gnulib/import/m4/unistd_h.m4: Update.
3611         * gnulib/import/m4/warn-on-use.m4: Update.
3612         * gnulib/import/m4/wchar_h.m4: Update.
3613         * gnulib/import/m4/wchar_t.m4: Update.
3614         * gnulib/import/m4/wctype_h.m4: Update.
3615         * gnulib/import/m4/wint_t.m4: Update.
3616         * gnulib/import/malloc.c: Update.
3617         * gnulib/import/malloc/scratch_buffer.h: Update.
3618         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
3619         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
3620         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
3621         * gnulib/import/malloca.c: Update.
3622         * gnulib/import/malloca.h: Update.
3623         * gnulib/import/malloca.valgrind: Update.
3624         * gnulib/import/math.in.h: Update.
3625         * gnulib/import/mbrtowc.c: Update.
3626         * gnulib/import/mbsinit.c: Update.
3627         * gnulib/import/mbsrtowcs-impl.h: Update.
3628         * gnulib/import/mbsrtowcs-state.c: Update.
3629         * gnulib/import/mbsrtowcs.c: Update.
3630         * gnulib/import/memchr.c: Update.
3631         * gnulib/import/memmem.c: Update.
3632         * gnulib/import/mempcpy.c: Update.
3633         * gnulib/import/memrchr.c: Update.
3634         * gnulib/import/mkdir.c: Update.
3635         * gnulib/import/mkstemp.c: Update.
3636         * gnulib/import/msvc-inval.c: Update.
3637         * gnulib/import/msvc-inval.h: Update.
3638         * gnulib/import/msvc-nothrow.c: Update.
3639         * gnulib/import/msvc-nothrow.h: Update.
3640         * gnulib/import/open.c: Update.
3641         * gnulib/import/openat-die.c: Update.
3642         * gnulib/import/openat-priv.h: Update.
3643         * gnulib/import/openat-proc.c: Update.
3644         * gnulib/import/openat.c: Update.
3645         * gnulib/import/openat.h: Update.
3646         * gnulib/import/opendir.c: Update.
3647         * gnulib/import/pathmax.h: Update.
3648         * gnulib/import/pipe-safer.c: Update.
3649         * gnulib/import/rawmemchr.c: Update.
3650         * gnulib/import/readdir.c: Update.
3651         * gnulib/import/readlink.c: Update.
3652         * gnulib/import/realloc.c: Update.
3653         * gnulib/import/ref-add.sin: Update.
3654         * gnulib/import/ref-del.sin: Update.
3655         * gnulib/import/rename.c: Update.
3656         * gnulib/import/rewinddir.c: Update.
3657         * gnulib/import/rmdir.c: Update.
3658         * gnulib/import/same-inode.h: Update.
3659         * gnulib/import/save-cwd.c: Update.
3660         * gnulib/import/save-cwd.h: Update.
3661         * gnulib/import/scratch_buffer.h: Update.
3662         * gnulib/import/secure_getenv.c: Update.
3663         * gnulib/import/setenv.c: Update.
3664         * gnulib/import/signal.in.h: Update.
3665         * gnulib/import/stat-time.c: Update.
3666         * gnulib/import/stat-time.h: Update.
3667         * gnulib/import/stat-w32.c: Update.
3668         * gnulib/import/stat-w32.h: Update.
3669         * gnulib/import/stat.c: Update.
3670         * gnulib/import/stdbool.in.h: Update.
3671         * gnulib/import/stddef.in.h: Update.
3672         * gnulib/import/stdint.in.h: Update.
3673         * gnulib/import/stdio.in.h: Update.
3674         * gnulib/import/stdlib.in.h: Update.
3675         * gnulib/import/str-two-way.h: Update.
3676         * gnulib/import/strchrnul.c: Update.
3677         * gnulib/import/strdup.c: Update.
3678         * gnulib/import/streq.h: Update.
3679         * gnulib/import/strerror-override.c: Update.
3680         * gnulib/import/strerror-override.h: Update.
3681         * gnulib/import/strerror.c: Update.
3682         * gnulib/import/string.in.h: Update.
3683         * gnulib/import/stripslash.c: Update.
3684         * gnulib/import/strnlen1.c: Update.
3685         * gnulib/import/strnlen1.h: Update.
3686         * gnulib/import/strstr.c: Update.
3687         * gnulib/import/strtok_r.c: Update.
3688         * gnulib/import/sys_stat.in.h: Update.
3689         * gnulib/import/sys_time.in.h: Update.
3690         * gnulib/import/sys_types.in.h: Update.
3691         * gnulib/import/tempname.c: Update.
3692         * gnulib/import/tempname.h: Update.
3693         * gnulib/import/time.in.h: Update.
3694         * gnulib/import/unistd--.h: Update.
3695         * gnulib/import/unistd-safer.h: Update.
3696         * gnulib/import/unistd.in.h: Update.
3697         * gnulib/import/unsetenv.c: Update.
3698         * gnulib/import/verify.h: Update.
3699         * gnulib/import/extra/snippet/warn-on-use.h: Update.
3700         * gnulib/import/wchar.in.h: Update.
3701         * gnulib/import/wctype.in.h: Update.
3702         * gnulib/import/xalloc-oversized.h: Update.
3703         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
3704         "53e2c179f26a890fa6685af4b6c1397ee370433b".
3705
3706 2018-08-16  Gary Benson <gbenson@redhat.com>
3707
3708         PR gdb/13000:
3709         * gdb/main.c (captured_main_1): Exit with nonzero status
3710         in batch mode if the last command to be executed failed.
3711         * NEWS: Mention the above.
3712
3713 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
3714
3715         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
3716         end of warning message.
3717
3718 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3719
3720         PR gdb/22943:
3721         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
3722         (aarch64_extract_return_value): Use
3723         aapcs_is_vfp_call_or_return_candidate.
3724         (aarch64_return_in_memory): Likewise.
3725         (aarch64_store_return_value): Likewise.
3726
3727 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3728
3729         * aarch64-tdep.c
3730         (aapcs_is_vfp_call_or_return_candidate): Make static
3731         (pass_in_v_or_stack): Remove function.
3732         (pass_in_v_vfp_candidate): New function.
3733         (aarch64_push_dummy_call): Check for float register candidates.
3734
3735 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3736
3737         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
3738         (aapcs_is_vfp_call_or_return_candidate_1): New function.
3739         (aapcs_is_vfp_call_or_return_candidate): Likewise.
3740
3741 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
3742
3743         PR build/23399
3744         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
3745         (struct ipa_sym_addresses): Rename to...
3746         (struct ipa_sym_addresses_common): ... this.
3747         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
3748
3749 2018-08-28  Tom Tromey  <tom@tromey.com>
3750
3751         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3752         (token_fifo): Now a std::vector.
3753         (yylex, c_parse): Update.
3754         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3755         (token_fifo): Now a std::vector.
3756         (yylex, d_parse): Update.
3757         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3758         (token_fifo): Now a std::vector.
3759         (yylex, go_parse): Update.
3760
3761 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
3762
3763         * parser-defs.h (struct type_stack) <elements>: Change type to
3764         std::vector<union type_stack_elt>.
3765         <depth, size>: Remove.
3766         * parse.c (parse_exp_in_context_1): Adjust.
3767         (type_stack_reserve): Remove.
3768         (check_type_stack_depth): Remove.
3769         (insert_into_type_stack): Adjust to std::vector.
3770         (insert_type): Likewise.
3771         (push_type): Likewise.
3772         (push_type_int): Likewise.
3773         (insert_type_address_space): Likewise.
3774         (pop_type): Likewise.
3775         (pop_type_int): Likewise.
3776         (pop_typelist): Likewise.
3777         (pop_type_stack): Likewise.
3778         (append_type_stack): Likewise.
3779         (push_type_stack): Likewise.
3780         (get_type_stack): Likewise.
3781         (type_stack_cleanup): Likewise.
3782         (push_typelist): Likewise.
3783         (follow_types): Likewise.
3784         (_initialize_parse): Likewise.
3785
3786 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
3787
3788         * NEWS: Mention csky target.
3789
3790 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
3791             Hafiz Abid Qadeer  <abidh@codesourcery.com>
3792             Don Breazeal  <donb@codesourcery.com>
3793
3794         * csky-linux-tdep.c: New file.
3795         * csky-tdep.c: Likewise.
3796         * csky-tdep.h: Likewise.
3797         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
3798         csky-tdep.o.
3799         (HFILES_NO_SRCDIR): Add csky-tdep.h.
3800         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
3801         * configure.tgt: Add csky support.
3802
3803 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
3804
3805         * python/py-framefilter.c (py_print_frame): Print frame architecture
3806         when printing on an MI output.
3807
3808 2018-08-27  Tom Tromey  <tom@tromey.com>
3809
3810         PR build/23087:
3811         * configure: Rebuild.
3812         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
3813
3814 2018-08-27  Tom Tromey  <tom@tromey.com>
3815
3816         * aarch64-linux-tdep.c
3817         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
3818         casts to int.
3819
3820 2018-08-27  Tom Tromey  <tom@tromey.com>
3821
3822         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
3823         unsigned.
3824         (ppc64_standard_linkage1, ppc64_standard_linkage2)
3825         (ppc64_standard_linkage3, ppc64_standard_linkage4)
3826         (ppc64_standard_linkage5, ppc64_standard_linkage6)
3827         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
3828         unsigned.
3829
3830 2018-08-27  Tom Tromey  <tom@tromey.com>
3831
3832         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
3833         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
3834
3835 2018-08-27  Tom Tromey  <tom@tromey.com>
3836
3837         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
3838         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
3839         ULONGEST_MAX.
3840         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
3841         ULONGEST_MAX.
3842         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
3843         ULONGEST_MAX.
3844         * sparc-linux-tdep.c (sparc32_linux_sigframe)
3845         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
3846         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
3847         ULONGEST_MAX.
3848         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
3849         (ppc64_linux_sigaction_tramp_frame)
3850         (ppc32_linux_sighandler_tramp_frame)
3851         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
3852         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
3853         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
3854         * mn10300-linux-tdep.c (am33_linux_sigframe)
3855         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
3856         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
3857         * mips-linux-tdep.c (mips_linux_o32_sigframe)
3858         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
3859         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
3860         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
3861         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
3862         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
3863         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
3864         * microblaze-linux-tdep.c
3865         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
3866         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
3867         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
3868         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
3869         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
3870         * common/common-types.h (ULONGEST_MAX): New define.
3871         (CORE_ADDR_MAX): Fix formatting.
3872         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
3873         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
3874         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
3875         (arm_linux_rt_sigreturn_tramp_frame)
3876         (arm_eabi_linux_sigreturn_tramp_frame)
3877         (arm_eabi_linux_rt_sigreturn_tramp_frame)
3878         (thumb2_eabi_linux_sigreturn_tramp_frame)
3879         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
3880         (arm_linux_restart_syscall_tramp_frame)
3881         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
3882         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
3883         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
3884         ULONGEST_MAX.
3885         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
3886
3887 2018-08-27  Tom Tromey  <tom@tromey.com>
3888
3889         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
3890         CORE_ADDR_MAX.
3891         * mips-tdep.c (mips_deal_with_atomic_sequence)
3892         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
3893         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
3894         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
3895         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
3896         CORE_ADDR_MAX.
3897         * aarch64-tdep.c (aarch64_software_single_step): Use
3898         CORE_ADDR_MAX.
3899
3900 2018-08-27  Tom Tromey  <tom@tromey.com>
3901
3902         * linespec.c (complete_linespec_component): Add cast to "char".
3903         * completer.c (completion_tracker::build_completion_result): Add
3904         cast to "char".
3905
3906 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3907
3908         * solist.h (struct solist, struct target_so_ops): Fix
3909         indentation.
3910
3911 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3912
3913         * ada-tasks.c (ada_task_info_s): Remove typedef.
3914         (DEF_VEC_O(ada_task_info_s)): Remove.
3915         (struct ada_tasks_inferior_data): Initialize fields.
3916         <task_list>: Make an std::vector.
3917         (get_ada_tasks_inferior_data): Allocate with new.
3918         (ada_get_task_number): Adjust.
3919         (get_task_number_from_id): Likewise.
3920         (valid_task_id): Likewise.
3921         (ada_get_task_info_from_ptid): Likewise.
3922         (iterate_over_live_ada_tasks): Likewise.
3923         (add_ada_task): Likewise.
3924         (read_known_tasks): Likewise.
3925         (ada_build_task_list): Likewise.
3926         (print_ada_task_info): Likewise.
3927         (info_task): Likewise.
3928         (task_command_1): Likewise.
3929
3930 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3931
3932         * ada-lang.c (add_angle_brackets): Return std::string.
3933
3934 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
3935
3936         * python/py-threadevent.c (py_get_event_thread): Initialize
3937         pythread.
3938
3939 2018-08-24  Pedro Alves  <palves@redhat.com>
3940
3941         * python/py-bpevent.c (create_breakpoint_event_object): Use
3942         copy-initialization.
3943         * python/py-continueevent.c (emit_continue_event): Use
3944         copy-initialization.
3945         * python/py-exitedevent.c (create_exited_event_object): Return a
3946         gdbpy_ref<>.
3947         (emit_exited_event): Use copy-initialization.
3948         * python/py-inferior.c (python_new_inferior)
3949         (python_inferior_deleted, add_thread_object): Use
3950         copy-initialization.
3951         * python/py-infevents.c (create_inferior_call_event_object)
3952         (create_register_changed_event_object)
3953         (create_memory_changed_event_object): Return a gdbpy_ref<>.
3954         (emit_inferior_call_event, emit_memory_changed_event)
3955         (emit_register_changed_event): Use copy-initialization.
3956         * python/py-newobjfileevent.c (create_new_objfile_event_object):
3957         Return a gdbpy_ref<>.
3958         (emit_new_objfile_event): Use copy-initialization.
3959         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
3960         (emit_clear_objfiles_event): Use copy-initialization.
3961         * python/py-signalevent.c (create_signal_event_object): Use
3962         copy-initialization.
3963         * python/py-threadevent.c (create_thread_event_object): Use
3964         copy-initialization.
3965
3966 2018-08-24  Pedro Alves  <palves@redhat.com>
3967             Simon Marchi  <simon.marchi@ericsson.com>
3968
3969         PR gdb/23379
3970         * python/py-continueevent.c: Include "gdbthread.h".
3971         (create_continue_event_object): Add intro comment.  Add 'ptid'
3972         parameter.  Use it to find thread to pass to
3973         create_thread_event_object.
3974         (emit_continue_event): Pass PTID down to
3975         create_continue_event_object.
3976         * python/py-event.h (py_get_event_thread): Declare.
3977         (create_thread_event_object): Remove default from 'thread'
3978         parameter.
3979         * python/py-stopevent.c (create_stop_event_object): Use
3980         py_get_event_thread.
3981         * python/py-threadevent.c (get_event_thread): Rename to ...
3982         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
3983         and use it to find the thread.
3984         (create_thread_event_object): Assert that THREAD isn't null.
3985         Don't find the event thread here.
3986
3987 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
3988
3989         * block.h (blockrange, blockranges): New struct declarations.
3990         (struct block): Add new field named `ranges'.
3991         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
3992         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
3993         macros for accessing ranges in struct block.
3994         (make_blockranges): New declaration.
3995         block.c (make_blockranges): New function.
3996         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
3997         for block.
3998         * symtab.h (find_pc_partial_function): Add new parameter `block'.
3999         * blockframe.c (cache_pc_function_block): New static global.
4000         (clear_pc_function_cache): Clear cache_pc_function_block.
4001         (find_pc_partial_function): Move comment to symtab.h.  Add
4002         support for non-contiguous blocks.
4003         * cli/cli-cmds.c (block.h): Include.
4004         (print_disassembly): Handle printing of non-contiguous blocks.
4005         (disassemble_current_function): Likewise.
4006         (disassemble_command): Likewise.
4007
4008         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
4009         BLOCK_START.
4010         * blockframe.c (get_pc_function_start): Likewise.
4011         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
4012         (gcc_symbol_address): Likewise.
4013         * compile/compile-object-run.c (compile_object_run): Likewise.
4014         * compile/compile.c (get_expr_block_and_pc): Likewise.
4015         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
4016         (func_addr_to_tail_call_list): Likewise.
4017         * findvar.c (default_read_var_value): Likewise.
4018         * inline-frame.c (inline_frame_this_id): Likewise.
4019         (skip-inline_frames): Likewise.
4020         * infcmd.c (until_next_command): Likewise.
4021         * linespec.c (convert_linespec_to_sals): Likewise.
4022         * parse.c (parse_exp_in_context_1): Likewise.
4023         * printcmd.c (build_address_symbolic): likewise.
4024         (info_address_command): Likewise.
4025         symtab.c (find_function_start_sal): Likewise.
4026         (skip_prologue_sal): Likewise.
4027         (find_function_alias_target): Likewise.
4028         (find_gnu_ifunc): Likewise.
4029         * stack.c (find_frame_funname): Likewise.
4030         * symtab.c (fixup_symbol_section): Likewise.
4031         (find_function_start_sal): Likewise.
4032         (skip_prologue_sal): Likewsie.
4033         (find_function_alias_target): Likewise.
4034         (find_gnu_ifunc): Likewise.
4035         * tracepoint.c (info_scope_command): Likewise.
4036         * value.c (value_fn_field): Likewise.
4037
4038         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
4039         in place of find_pc_partial_function.
4040         * blockframe.c (find_function_entry_range_from_pc): New function.
4041         * symtab.h (find_function_entry_range_from_pc): Declare and document.
4042         * objfiles.c (objfile_relocate1): Relocate start and end addresses
4043         for each range in a block.
4044
4045
4046 2018-08-23  Xavier Roirand  <roirand@adacore.com>
4047
4048         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
4049         incrementation.
4050
4051 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4052
4053         * solib-svr4.c (read_program_headers_from_bfd): Return
4054         gdb::optional<gdb::byte_vector>.
4055         (svr4_exec_displacement): Adjust.
4056
4057 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4058
4059         * solib-svr4.c (read_program_header): Return
4060         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
4061         (find_program_interpreter): Return
4062         gdb::optional<gdb::byte_vector>.
4063         (scan_dyntag_auxv): Adjust.
4064         (enable_break): Adjust.
4065         (svr4_exec_displacement): Adjust.
4066
4067 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4068
4069         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
4070         * inf-child.c (inf_child_target::terminal_save_inferior): New.
4071
4072 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4073
4074         * guile/scm-string.c (gdbscm_scm_from_printf): Use
4075         string_vprintf.
4076         * guile/scm-utils.c (gdbscm_printf): Likewise.
4077         * serial.c (serial_printf): Likewise.
4078         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
4079
4080 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
4081
4082         * stack.c (print_frame): Print frame architecture when printing on
4083         an MI output.
4084         * NEWS: Mention new "arch" attribute in frame output.
4085
4086 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
4087
4088         * arch/aarch64.h (aarch64_regnum): Update comment.
4089
4090 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
4091
4092         * NEWS: Add SVE to 8.2 section.
4093
4094 2018-08-21  Pedro Alves  <palves@redhat.com>
4095
4096         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
4097         out from gdbscm_parse_function_args.
4098         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
4099         gdbscm_parse_function_args_1.
4100
4101 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
4102
4103         PR gdb/17816
4104         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
4105         operator.
4106
4107 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
4108
4109         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
4110
4111 2018-08-19  Michael Spang  <spang@google.com>
4112
4113         PR gdb/11786
4114         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
4115         for PT_TLS segments.
4116
4117 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
4118
4119         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
4120         dwarf_variable_value.
4121         * dwarf2-frame.c (class dwarf_expr_executor):
4122         Add override for dwarf_variable_value.
4123         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
4124         (class symbol_needs_eval_context): Likewise.
4125         (indirect_synthetic_pointer): Add forward declaration.
4126         (sect_variable_value): New function.
4127         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
4128         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
4129         for DW_OP_GNU_variable_value.
4130
4131 2018-08-16  Tom Tromey  <tom@tromey.com>
4132
4133         * top.c (read_command_file): Update.
4134         (command_line_input): Remove "repeat" argument.
4135         * ada-lang.c (get_selections): Update.
4136         * linespec.c (decode_line_2): Update.
4137         * defs.h (command_line_input): Remove argument.
4138         * cli/cli-script.c (read_next_line): Update.
4139         * python/py-gdb-readline.c: Update.
4140
4141 2018-08-17  Tom Tromey  <tom@tromey.com>
4142
4143         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
4144         command_line_input.
4145
4146 2018-08-15  Tom Tromey  <tom@tromey.com>
4147
4148         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
4149
4150 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
4151
4152         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
4153         If used, use find_pc_partial_function to find address range
4154         to disassemble.
4155         * mi/mi-main.c (mi_cmd_list_features): Report
4156         "data-disassemble-a-option" feature.
4157         * NEWS: Mention new -data-disassemble option -a.
4158
4159 2018-08-13  Tom Tromey  <tom@tromey.com>
4160
4161         * common/common-defs.h (_FORTIFY_SOURCE): Define.
4162
4163 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
4164
4165         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
4166         (aarch64_linux_collect_sve_regset): Likewise.
4167         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
4168         * regcache.h (regcache_map_entry_size): New function.
4169
4170 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
4171
4172         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
4173         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
4174         (SVE_HEADER_VL_LENGTH): Likewise.
4175         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
4176         (SVE_HEADER_FLAGS_LENGTH): Likewise.
4177         (SVE_HEADER_RESERVED_LENGTH): Likewise.
4178         (SVE_HEADER_SIZE_OFFSET): Likewise.
4179         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
4180         (SVE_HEADER_VL_OFFSET): Likewise.
4181         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
4182         (SVE_HEADER_FLAGS_OFFSET): Likewise.
4183         (SVE_HEADER_RESERVED_OFFSET): Likewise.
4184         (SVE_HEADER_SIZE): Likewise.
4185         (aarch64_linux_core_read_vq): Add function.
4186         (aarch64_linux_core_read_description): Check for SVE section.
4187
4188 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
4189
4190         * aarch64-fbsd-tdep.c
4191         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
4192         collect_size.
4193         * aarch64-linux-tdep.c
4194         (aarch64_linux_iterate_over_regset_sections): Likewise.
4195         * alpha-linux-tdep.c
4196         (alpha_linux_iterate_over_regset_sections):
4197         * alpha-nbsd-tdep.c
4198         (alphanbsd_iterate_over_regset_sections): Likewise.
4199         * amd64-fbsd-tdep.c
4200         (amd64fbsd_iterate_over_regset_sections): Likewise.
4201         * amd64-linux-tdep.c
4202         (amd64_linux_iterate_over_regset_sections): Likewise.
4203         * arm-bsd-tdep.c
4204         (armbsd_iterate_over_regset_sections): Likewise.
4205         * arm-fbsd-tdep.c
4206         (arm_fbsd_iterate_over_regset_sections): Likewise.
4207         * arm-linux-tdep.c
4208         (arm_linux_iterate_over_regset_sections): Likewise.
4209         * corelow.c (get_core_registers_cb): Likewise.
4210         (core_target::fetch_registers): Likewise.
4211         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
4212         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
4213         * gdbarch.h (void): Regenerate.
4214         * gdbarch.sh: Add supply_size and collect_size.
4215         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
4216         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
4217         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
4218         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
4219         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
4220         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
4221         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
4222         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
4223         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
4224         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
4225         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
4226         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
4227         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
4228         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
4229         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections): Likewise.
4230         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
4231         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
4232         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
4233         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
4234         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
4235         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
4236         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections): Likewise.
4237         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
4238         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
4239         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
4240         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
4241         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
4242         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
4243         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
4244         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
4245
4246 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
4247
4248         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
4249         with string_printf.
4250
4251 2018-08-10  Keith Seitz  <keiths@redhat.com>
4252
4253         * compile/compile-c-support.c (add_code_header, add_code_footer):
4254         Move into policy class.
4255         (c_push_user_expression, pop_user_expression_nop)
4256         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
4257         (compile_program): New host class.
4258         (c_compile_program): New typedef.
4259         (c_compute_porgram): Use c_compile_program.
4260
4261 2018-08-10  Keith Seitz  <keiths@redhat.com>
4262
4263         * compile/compile-internal.h (compile_instance::~compile_instance):
4264         Remove calls to htab_delete.
4265         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
4266         * compile.c (compile_instance::compile_instance): Initialize
4267         htab unique pointers.
4268         (compile_instance::get_cached_type, compile_instance::insert_type)
4269         (compile_instance::error_symbol_once): Update for unique_ptr.
4270
4271 2018-08-10  Keith Seitz  <keiths@redhat.com>
4272
4273         * compile/compile-c-symbols.c (struct symbol_error)
4274         (hash_symbol_error, eq_symbol_error, del_symbol_error)
4275         (compile_instance::insert_symbol_error)
4276         (compile_instance::error_symbol_once): Move to ...
4277         * compile/compile.c: ... here.
4278
4279 2018-08-10  Keith Seitz  <keiths@redhat.com>
4280
4281         * compile/compile-c-support.c (c_get_compile_context): Use `new'
4282         instead of `new_compile_instance'.
4283         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
4284         Update description.
4285         If the symbol error map is not initialized, create it.
4286         (generate_c_for_for_one_symbol): Do not check/initialize
4287         the symbol error map.
4288         * compile/compile-c-types.c (compile_c_instance): Make a class.
4289         Update all callers.
4290         (compile_instance::compile_instance): Initialize the type cache.
4291         (get_cached_type): New function.
4292         (insert_type): Update description.
4293         (compile_c_instance::m_default_cflags): Define.
4294         (convert_type): Update description.  Use get_cached_type.
4295         (delete_instance): Moved to destructor.
4296         (new_compile_instance): Moved to constructor.
4297         * compile/compile-c.h (compile_c_instance): Make class inheriting
4298         from compile_instance.
4299         <base>: Remove field.
4300         <type_map, symbol_err_map>: Move to base class.
4301         <c_plugin>: Rename to `m_plugin' and remove pointer type.
4302         * compile/compile-internal.h (compile_instance): Make class.
4303         <type_map_t, symbol_err_map_t>: Define.
4304         <fe>: Rename to `m_gcc_fe'.
4305         <scope, block, gcc_target_options>: Add `m_' prefix.
4306         <m_type_map, m_symbol_err_map>: New fields, moved from
4307         compile_c_instance.
4308         <destroy>: Remove.
4309         (convert_type, new_compile_instance): Remove.
4310         * compile/compile.c (cleanup_compile_instance): Remove.
4311         (compile_to_object): Use unique_ptr to eliminate cleanups.
4312         (compile_instance::set_print_callback, compile_instance::version)
4313         (compile_instance::set_verbose)
4314         (compile_instance::set_driver_filename)
4315         (compile_instance::set_triplet_regexp)
4316         (compile_instance::set_arguments)
4317         (compile_instance::set_source_file)
4318         (compile_instance::compile): Define.
4319
4320 2018-08-10  Keith Seitz  <keiths@redhat.com>
4321
4322         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
4323         * compile/compile-c-types.c: Define GCC_METHODN macros and include
4324         gcc-c-fe.def to define C plugin.
4325         (delete_instance): Delete `c_plugin'.
4326         (new_compile_instance): Initialize `c_plugin'.
4327         * compile/compile-c.h: Include gcc_c_plugin.h.
4328         (struct compile_c_instance) <c_plugin>: New member.
4329         * gcc-c-plugin.h: New file.
4330         Update all callers with API change.
4331
4332 2018-08-10  Keith Seitz  <keiths@redhat.com>
4333
4334         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
4335         (HFILES_NO_SRCDIR): ... to here.
4336         Add compile-internal.h and compile-c.h.
4337         * compile/compile-c-support.c: Include compile-c.h.
4338         * compile/compile-c-symbols.c: Include compile-c.h.
4339         (generate_c_for_variable_locations): Update comment.
4340         * compile/compile-c-types.c: Include compile-c.h.
4341         * compile/compile-c.h: New file -- moved C language declarations
4342         from other files here.
4343         * compile/compile-internal.h: Do not include hashtab.h or
4344         common/enum-flags.h.
4345         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
4346         (gcc_convert_symbol, gcc_symbol_address)
4347         (generate_c_for_variable_locations, c_get_mode_for_size)
4348         (c_get_range_decl_name): Definitions moved to compile-c.h.
4349         * compile/compile-loc2c.c: Include compile-c.h.
4350
4351 2018-08-10  Keith Seitz  <keiths@redhat.com>
4352
4353         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
4354         (c_symbol_substitution_name): ... this.
4355         Update all callers.
4356
4357 2018-08-10  Keith Seitz  <keiths@redhat.com>
4358
4359         * compile/compile-c-support.c (c_compute_program): Use
4360         unique_xmalloc_ptr to eliminate cleanup.
4361         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
4362         Return a unique_xmalloc_ptr and eliminate cleanup.
4363         * compile/compile-internal.h (generate_c_for_variable_locations):
4364         Return unique_xmalloc_ptr and update description.
4365
4366 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
4367
4368         * corelow.c (core_target::get_core_register_section): Rename
4369         min_size to section_min_size.
4370
4371 2018-08-09  Jim Wilson  <jimw@sifive.com>
4372
4373         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
4374         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
4375         * NEWS: Mention new GNU/Linux RISC-V target.
4376         * configure.host: Add riscv*-*-linux*.
4377         * configure.nat: Add riscv*.
4378         * configure.tgt: Add riscv*-*-linux*.
4379         * riscv-linux-nat.c: New file.
4380         * riscv-linux-tdep.c: New file.
4381
4382 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4383
4384         * infrun.c (resume): Make static, add forward declaration.
4385         (proceed): Update header comment.
4386         * infrun.h (resume): Delete declaration.
4387
4388 2018-08-09  Tom Tromey  <tom@tromey.com>
4389
4390         * riscv-tdep.h: Minor formatting fixes.
4391
4392 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
4393
4394         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
4395         * dwarf-index-cache.c (create_dir_and_check): Likewise.
4396         (test_mkdir_recursive): Likewise.
4397         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
4398
4399 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4400
4401         * valarith.c (value_subscripted_rvalue): If an array is not in
4402         memory, and we don't know the upper bound, then we can't know that
4403         the requested element exists or not.
4404
4405 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
4406
4407         * target.c (str_comma_list_concat_elem): Fix typo in comment.
4408         (target_options_to_string): Add comment.
4409
4410 2018-08-08  Tom Tromey  <tom@tromey.com>
4411
4412         * unittests/scoped_mmap-selftests.c: Check result of "write".
4413
4414 2018-08-08  Jim Wilson  <jimw@sifive.com>
4415
4416         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
4417         (decode_register_index_short): New.
4418         (decode_j_type_insn, decode_cj_type_insn): New.
4419         (decode_b_type_insn, decode_cb_type_insn): New.
4420         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
4421         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
4422         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
4423         is_c_sw_insn instead of is_sw_insn.
4424         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
4425         (riscv_software_single_step): New.
4426         * riscv-tdep.h (riscv_software_single_step): Declare.
4427
4428         * riscv-tdep.c (riscv_isa_xlen): Drop static.
4429         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
4430
4431 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
4432
4433         PR gdb/18050:
4434         * target.c (dispose_inferior): Don't dispose of inferiors that are
4435         already killed.
4436
4437 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
4438
4439         * remote.c (remote_target::download_tracepoint): Change char* to
4440         const char*.
4441
4442 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
4443
4444         * target.h (target_options_to_string): Return an std::string.
4445         * target.c (str_comma_list_concat_elem): Return void, use
4446         std::string.
4447         (do_option): Likewise.
4448         (target_options_to_string): Return an std::string.
4449         * linux-nat.c (linux_nat_target::wait): Adjust.
4450         * target-debug.h (target_debug_print_options): Adjust.
4451
4452 2018-08-07  Tom Tromey  <tom@tromey.com>
4453
4454         * Makefile.in (CPPFLAGS): New variable.
4455         (INTERNAL_CPPFLAGS): Use it.
4456
4457 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4458
4459         * NEWS: Mention the index cache.
4460
4461 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4462
4463         * common/pathstuff.h (get_standard_cache_dir): New.
4464         * common/pathstuff.c (get_standard_cache_dir): New.
4465         * build-id.h (build_id_to_string): New.
4466         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
4467         DEBUG_STR_SUFFIX): Move to here.
4468         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
4469         DEBUG_STR_SUFFIX): Move from there.
4470         (write_psymtabs_to_index): Make non-static, add basename
4471         parameter.  Write to temporary files, rename when done.
4472         (save_gdb_index_command): Adjust call to
4473         write_psymtabs_to_index.
4474         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
4475         field.
4476         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
4477         (get_gdb_index_contents_from_cache): New.
4478         (get_gdb_index_contents_from_cache_dwz): New.
4479         (dwarf2_initialize_objfile): Read index from cache.
4480         (dwarf2_build_psymtabs): Save to index.
4481         * dwarf-index-cache.h: New file.
4482         * dwarf-index-cache.c: New file.
4483         * dwarf-index-write.h: New file.
4484
4485 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4486
4487         * gnulib/aclocal.m4: Re-generate.
4488         * gnulib/config.in: Re-generate.
4489         * gnulib/configure: Re-generate.
4490         * gnulib/import/Makefile.am: Re-generate.
4491         * gnulib/import/Makefile.in: Re-generate.
4492         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
4493         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
4494         * gnulib/import/m4/mkdir.m4: New file.
4495         * gnulib/import/mkdir.c: New file.
4496         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
4497         module.
4498
4499 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4500
4501         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
4502         * common/scoped_mmap.c: New file.
4503         * common/scoped_mmap.h (destroy): New method.
4504         (~scoped_mmap, reset): Use destroy.
4505         (scoped_mmap): New move constructor.
4506         (mmap_file): New declaration.
4507         * unittests/scoped_mmap-selftests.c (test_normal,
4508         test_invalid_filename, run_tests): New functions.
4509         (_initialize_scoped_mmap_selftests): Register selftest.
4510
4511 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4512
4513         * dwarf2read.c (read_gdb_index_from_section): Rename to...
4514         (read_gdb_index_from_buffer): ... this.  Remove section
4515         parameter, add buffer parameter.
4516         (get_gdb_index_contents_ftype,
4517         get_gdb_index_contents_dwz_ftype): New typedefs.
4518         (dwarf2_read_gdb_index): Add callback parameters to get the
4519         index contents.
4520         (get_gdb_index_contents_from_section): New.
4521         (dwarf2_initialize_objfile): Update call to
4522         dwarf2_read_gdb_index.
4523
4524 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4525
4526         * common/filestuff.h (gdb_fopen_cloexec): New overload.
4527         (gdb_open_cloexec): Likewise.
4528         * nat/linux-osdata.c (command_from_pid): Use string_printf.
4529         (commandline_from_pid): Likewise.
4530         (linux_xfer_osdata_threads): Likewise.
4531         (linux_xfer_osdata_fds): Likewise.
4532         * ada-lang.c (is_package_name): Likewise.
4533         * auxv.c (procfs_xfer_auxv): Likewise.
4534         * breakpoint.c (print_one_breakpoint_location): Use
4535         uiout::field_fmt.
4536         (print_one_catch_solib): Use string_printf.
4537         * coff-pe-read.c (add_pe_exported_sym): Likewise.
4538         (add_pe_forwarded_sym): Likewise.
4539         * dwarf2read.c (create_type_unit_group): Likewise.
4540         (build_error_marker_type): Likewise.
4541         * infcall.c (get_function_name): Likewise.
4542         * valprint.c (print_converted_chars_to_obstack): Likewise.
4543         * xtensa-tdep.c (xtensa_register_type): Likewise.
4544
4545 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
4546
4547         * remote.c (remote_target::download_tracepoint): Fix format
4548         string errors.
4549
4550 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4551
4552         * tracefile.c: Include common/byte-vector.h.
4553         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
4554         with trace_regblock_size if needed.  Update uses of buf.
4555
4556 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4557
4558         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
4559         std::vector<unsigned char>.
4560         * tracepoint.c (collection_list::collection_list): Remove
4561         m_regs_mask initializer from initializer list.  Resize
4562         m_regs_mask using the largest remote register number.
4563         (collection_list::add_remote_register): Remove size check on
4564         m_regs_mask.  Use at to access element.
4565         (collection_list::stringify): Change type of temp_buf to
4566         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
4567         stringify the register mask.  Use pack_hex_byte for the register
4568         mask.
4569
4570 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4571
4572         * tracepoint.h (class collection_list) <add_register>: Remove.
4573         <add_remote_register, add_ax_registers, add_local_register>:
4574         Declare.
4575         <add_memrange>: Add scope parameter.
4576         * tracepoint.c (encode_actions_1): Likewise.
4577         (collection_list::add_register): Rename to ...
4578         (collection_list::add_remote_register): ... this.  Update
4579         comment.
4580         (collection_list::add_ax_registers, add_local_register): New
4581         methods.
4582         (collection_list::add_memrange): Add scope parameter.  Call
4583         add_local_register instead of add_register.
4584         (finalize_tracepoint_aexpr): New function.
4585         (collection_list::collect_symbol): Update calls to add_memrange.
4586         Call add_local_register instead of add_register.  Call
4587         add_ax_registers.  Call finalize_tracepoint_aexpr.
4588         (encode_actions_1): Get remote regnos for $reg action.  Call
4589         add_remote_register, add_ax_registers, and add_local_register.
4590         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
4591         (validate_actionline): Call finalize_tracepoint_aexpr.
4592
4593 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4594
4595         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
4596         Replace array buf with gdb::char_vector buf, of size
4597         get_remote_packet_size ().  Replace references to buf and
4598         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
4599         and xsnprintf with snprintf.  Raise errors if the buffer is too
4600         small.
4601
4602 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4603
4604         * remote.c (remote_target::download_tracepoint): Fix the has_more
4605         predicate in the QTDP action list iteration.
4606
4607 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4608
4609         * remote.c (remote_target::download_tracepoint): Fix indentation
4610         in for block.
4611
4612 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4613
4614         * proc-api.c (_initialize_proc_api): Remove c, unused.
4615         * procfs.c (procfs_init_inferior): Remove signals, unused.
4616         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
4617         unused.
4618
4619 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
4620             Andrew Burgess  <andrew.burgess@embecosm.com>
4621
4622         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
4623         'W_STOPCODE (0)' as this could be ambiguous.
4624
4625 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
4626
4627         * ser-tcp.c (net_open): Fix thinko when deciding whether to
4628         disable TCP's Nagle algorithm (use "ai_protocol" instead of
4629         "ai_socktype").
4630
4631 2018-08-02  Tom Tromey  <tom@tromey.com>
4632
4633         PR symtab/16842.
4634         * dwarf2read.c (read_func_scope): Set symtab on template parameter
4635         symbols.
4636         (process_structure_scope): Likewise.
4637
4638 2018-08-02  Xavier Roirand  <roirand@adacore.com>
4639
4640         PR gdb/22629:
4641         * darwin-nat.c (darwin_kill_inferior): Fix handling of
4642         kill inferior.
4643
4644 2018-08-02  Tom Tromey  <tom@tromey.com>
4645
4646         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
4647         (darwin_suspend_inferior, darwin_resume_inferior)
4648         (darwin_decode_notify_message, darwin_resume_inferior_threads)
4649         (darwin_check_new_threads): Check result of get_darwin_inferior.
4650
4651 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
4652
4653         GDB 8.1.1 released.
4654
4655 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
4656
4657         * varobj.c (varobj_get_path_expr_parent): Report an error if
4658         parent is a dynamic varobj.
4659
4660 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4661
4662         * gnulib/aclocal.m4: Re-generate.
4663         * gnulib/config.in: Re-generate.
4664         * gnulib/configure: Re-generate.
4665         * gnulib/import/Makefile.in: Re-generate.
4666         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
4667         * gnulib/import/m4/onceonly.m4: Re-generate.
4668
4669 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4670
4671         * target-descriptions.c (struct xml_test_tdesc): New.
4672         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
4673         (record_xml_tdesc): Update.
4674         (maintenance_check_xml_descriptions): Update.
4675         * target-descriptions.h (record_xml_tdesc): Update comment.
4676
4677 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4678
4679         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
4680         checking array bounds are defined.
4681
4682 2018-07-30  Tom Tromey  <tom@tromey.com>
4683
4684         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
4685         irreflexivity violation.
4686
4687 2018-07-30  Tom Tromey  <tom@tromey.com>
4688
4689         * cli/cli-decode.c (lookup_cmd): Remove lint code.
4690         * value.c (unpack_long): Remove lint code.
4691         * valops.c (value_ind): Remove lint code.
4692         * valarith.c (value_x_binop, value_x_unop, value_equal)
4693         (value_pos): Remove lint code.
4694
4695 2018-07-28  Tom de Vries  <tdevries@suse.de>
4696
4697         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
4698         with undefined upper bound as <optimized out>.
4699
4700 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
4701
4702         * gcore.in: Rename variable "name" to "prefix".  Expand
4703         "usage" text.
4704
4705 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
4706
4707         * windows-nat.c (windows_nat_target::create_inferior): Update to
4708         call close() in global namespace.
4709
4710 2018-07-26  Tom Tromey  <tom@tromey.com>
4711
4712         * dwarf-index-write.c (add_address_entry): Don't add objfile
4713         offsets.
4714         * dbxread.c (find_stab_function): Rename from
4715         find_stab_function_addr.  Return a bound_minimal_symbol.
4716         (read_dbx_symtab): Use raw_text_low, raw_text_high.
4717         Don't add objfile offsets.
4718         (end_psymtab): Use raw_text_low, raw_text_high,
4719         MSYMBOL_VALUE_RAW_ADDRESS.
4720         (read_ofile_symtab): Update.
4721         (process_one_symbol): Update.
4722         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
4723         offsets.
4724         (dw2_relocate): Remove.
4725         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
4726         searching addrmap.
4727         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
4728         Update.
4729         (process_psymtab_comp_unit_reader, add_partial_symbol)
4730         (add_partial_subprogram, dwarf2_ranges_read): Update.
4731         (load_partial_dies): Update.
4732         (add_address_entry): Don't add objfile offsets.
4733         (dwarf2_build_include_psymtabs): Update.
4734         (create_addrmap_from_aranges): Don't add objfile offsets.
4735         (dw2_find_pc_sect_compunit_symtab): Update.
4736         * mdebugread.c (parse_symbol): Don't add objfile offsets.
4737         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
4738         Update.
4739         (parse_partial_symbols): Don't add objfile offsets.  Use
4740         raw_text_low, raw_text_high.  Update.
4741         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
4742         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
4743         or call 'relocate' quick function.  Clear psymbol_map.
4744         * psympriv.h (struct partial_symbol) <address>: Add section
4745         offset.
4746         <set_unrelocated_address>: Rename from set_address.
4747         <raw_text_low, raw_text_high>: New methods.
4748         <text_low, text_high>: Add objfile parameter.
4749         (add_psymbol_to_bcache): Add 'section' parameter.  Call
4750         set_unrelocated_address.
4751         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4752         (find_pc_psymbol): Update.
4753         (fixup_psymbol_section, relocate_psymtabs): Remove.
4754         (dump_psymtab, psym_functions): Update.
4755         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
4756         parameter.
4757         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
4758         (start_psymtab_common): Update.
4759         * symfile-debug.c (debug_qf_relocate): Remove.
4760         (debug_sym_quick_functions): Update.
4761         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
4762         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
4763         Update.
4764
4765 2018-07-26  Tom Tromey  <tromey@redhat.com>
4766
4767         * dbxread.c (end_psymtab): Use text_high_valid and
4768         text_low_valid.
4769         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
4770         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
4771         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4772         Update comment.
4773         <text_low_valid, text_high_valid>: New fields.
4774         <set_text_low, set_text_high>: Update.
4775         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
4776
4777 2018-07-26  Tom Tromey  <tom@tromey.com>
4778
4779         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
4780         Update.
4781         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
4782         textlow and texthigh fields.
4783         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
4784         Update.
4785         * mdebugread.c (parse_lines, parse_partial_symbols)
4786         (psymtab_to_symtab_1): Update.
4787         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4788         Rename fields.  Update comment.  Now private.
4789         <text_low, text_high, set_text_low, set_text_high>: New methods.
4790         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4791         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
4792         (start_psymtab_common, maintenance_info_psymtabs)
4793         (maintenance_check_psymtabs): Update.
4794         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
4795         texthigh fields.
4796         (scan_xcoff_symtab): Update.
4797
4798 2018-07-26  Tom Tromey  <tromey@redhat.com>
4799
4800         * psympriv.h (struct partial_symbol) <unrelocated_address,
4801         address, set_address>: New methods.
4802         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
4803         (fixup_psymbol_section, relocate_psymtabs): Update.
4804         (print_partial_symbols): Add 'objfile' parameter.  Update.
4805         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
4806         Update.
4807
4808 2018-07-26  Tom Tromey  <tom@tromey.com>
4809
4810         * dwarf-index-write.c (write_psymbols, debug_names::insert)
4811         (debug_names::write_psymbols): Update.
4812         * psympriv.h (struct partial_symbol): Derive from
4813         general_symbol_info.
4814         <obj_section>: New method.
4815         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
4816         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4817         (find_pc_sect_psymbol, fixup_psymbol_section)
4818         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
4819         (print_partial_symbols, recursively_search_psymtabs)
4820         (compare_psymbols, psymbol_hash, psymbol_compare)
4821         (add_psymbol_to_bcache, maintenance_check_psymtabs)
4822         (psymbol_name_matches, psym_fill_psymbol_map): Update.
4823
4824 2018-07-26  Tom Tromey  <tromey@redhat.com>
4825
4826         * dbxread.c (end_psymtab): Remove dead code.
4827
4828 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
4829
4830         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
4831         DWARF unwinders are disabled.
4832         * dwarf2-frame.c: Add dwarf2read.h include.
4833         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
4834         disabled.
4835         (dwarf2_frame_unwinders_enabled_p): Define.
4836         (show_dwarf_unwinders_enabled_p): New function.
4837         (_initialize_dwarf2_frame): Register switch to control DWARF
4838         unwinder use.
4839         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
4840         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
4841         (show_dwarf_cmdlist): Remove static keyword.
4842         * dwarf2read.h (set_dwarf_cmdlist): Declare.
4843         (show_dwarf_cmdlist): Declare.
4844         * NEWS: Document new feature.
4845
4846 2018-07-26  Tom de Vries  <tdevries@suse.de>
4847
4848         PR breakpoints/23366
4849         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
4850
4851 2018-07-26  Tom de Vries  <tdevries@suse.de>
4852
4853         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
4854         DW_AT_count can't be translated to a dynamic prop.
4855
4856 2018-07-25  Tom de Vries  <tdevries@suse.de>
4857
4858         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
4859         try/catch.
4860
4861 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
4862
4863         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
4864
4865 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
4866
4867         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
4868
4869 2018-07-24  Keith Seitz  <keiths@redhat.comt
4870
4871         PR symtab/23010
4872         * dwarf2read.c (dw2_add_symbol_to_list): New function.
4873         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
4874         instead of add_symbol_to_list.
4875         (read_file_scope): Call prepare_one_comp_unit before reading
4876         any other DIEs.
4877
4878 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
4879
4880         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
4881
4882 2018-07-24  Tom Tromey  <tom@tromey.com>
4883
4884         * utils.c (malloc, realloc, free): Don't declare.
4885         * configure, config.in: Rebuild.
4886         * configure.ac: Don't check for declarations of free, malloc, or
4887         realloc.
4888
4889 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4890
4891         * aarch64-linux-nat.c
4892         (aarch64_linux_nat_target::stopped_data_address): Remove unused
4893         variable.
4894         * arm-linux-nat.c (fetch_regs): Likewise.
4895         (store_regs): Likewise.
4896         (fetch_vfp_regs): Likewise.
4897         (store_vfp_regs): Likewise.
4898         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
4899         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
4900         (arm_linux_nat_target::insert_watchpoint): Likewise.
4901         (arm_linux_nat_target::remove_watchpoint): Likewise.
4902         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
4903         Likewise.
4904         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
4905         Likewise.
4906         * ppc-linux-nat.c (fetch_register): Likewise.
4907         (fetch_all_gp_regs): Likewise.
4908         (fetch_ppc_registers): Likewise.
4909         (store_all_gp_regs): Likewise.
4910         (store_ppc_registers): Likewise.
4911         (hwdebug_insert_point): Likewise.
4912         (can_use_watchpoint_cond_accel): Likewise.
4913         * remote-sim.c (gdb_os_write_stdout): Likewise.
4914
4915 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4916             Tom Tromey  <tom@tromey.com>
4917
4918         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
4919         test for it.
4920         * configure: Rebuild.
4921
4922 2018-07-22  Tom Tromey  <tom@tromey.com>
4923
4924         * regformats/regdat.sh: Define xmltarget_${name} inside
4925         #ifndef IN_PROCESS_AGENT.
4926
4927 2018-07-22  Tom Tromey  <tom@tromey.com>
4928
4929         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
4930
4931 2018-07-22  Tom Tromey  <tom@tromey.com>
4932
4933         * symfile.c (reread_symbols): Notify iter, not objfile.
4934
4935 2018-07-22  Tom Tromey  <tom@tromey.com>
4936
4937         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
4938         Use arch_ops.
4939         (ravenscar_thread_target::prepare_to_store): Likewise.
4940
4941 2018-07-22  Tom Tromey  <tom@tromey.com>
4942
4943         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
4944         unused variable.  Call value_fetch_lazy when needed.
4945         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
4946         Remove unused variable.  Call value_fetch_lazy when needed.
4947
4948 2018-07-22  Tom Tromey  <tom@tromey.com>
4949
4950         * m32c-tdep.c (mark_dma): Return void.
4951         (make_regs): Remove unused declarations.
4952
4953 2018-07-22  Tom Tromey  <tom@tromey.com>
4954
4955         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
4956         cmdscm_get_valid_command_smob_arg_unsafe for effect.
4957         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
4958         bkscm_get_valid_block_smob_arg_unsafe for effect.
4959
4960 2018-07-22  Tom Tromey  <tom@tromey.com>
4961
4962         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
4963         value_type.
4964
4965 2018-07-22  Tom Tromey  <tom@tromey.com>
4966
4967         * windows-nat.c (saved_context): Conditionally define.
4968         * remote.c (remote_target::remote_btrace_maybe_reopen):
4969         Conditionally declare "warned".
4970         * inflow.c (sigquit_ours): Conditionally define.
4971         (new_tty): Move "tty" declaration inside #if.
4972         * guile/guile.c (guile_datadir): Conditionally define.
4973         * charset.c (set_be_le_names): Move some declarations inside #if.
4974         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
4975         #if.
4976         (parse_xml_btrace_conf): Likewise.
4977
4978 2018-07-22  Tom Tromey  <tom@tromey.com>
4979
4980         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
4981
4982 2018-07-22  Tom Tromey  <tom@tromey.com>
4983
4984         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
4985         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
4986         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
4987         * buildsym-legacy.c (get_macro_table): Remove unused variable.
4988         * stack.c (frame_apply_level_command): Remove unused variable.
4989         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
4990         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
4991         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
4992         unused variable.
4993         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
4994         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
4995         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
4996         variable.
4997         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
4998         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
4999         variable.
5000         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
5001         Remove unused variable.
5002         * cli/cli-script.c (recurse_read_control_structure): Remove unused
5003         variable.
5004         * common/tdesc.c (print_xml_feature::visit): Remove unused
5005         variable.
5006         * compile/compile-object-load.c (store_regs): Remove unused
5007         variables.
5008         * complaints.c (clear_complaints): Remove unused variable.
5009         * corelow.c (core_target_open): Remove unused variable.
5010         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
5011         variable.
5012         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
5013         variable.
5014         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
5015         variable.
5016         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
5017         variable.
5018         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
5019         variable.
5020         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
5021         variable.
5022         * ia64-tdep.c (examine_prologue): Remove unused variable.
5023         * infcall.c (run_inferior_call): Remove unused variable.
5024         * inferior.c (exit_inferior): Remove unused variable.
5025         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
5026         * linespec.c (decode_line_2): Remove unused variable.
5027         * linux-nat.c (super_close): Remove.
5028         * linux-tdep.c (linux_info_proc): Remove unused variable.
5029         * mi/mi-main.c (mi_execute_command): Remove unused variable.
5030         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
5031         Remove unused variable.
5032         * parse.c (find_minsym_type_and_address): Remove unused variable.
5033         * printcmd.c (info_symbol_command, printf_floating): Remove unused
5034         variable.
5035         * python/py-breakpoint.c (bppy_set_commands): Remove unused
5036         variable.
5037         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
5038         variables.
5039         * record-btrace.c (record_btrace_target::store_registers): Remove
5040         unused variable.
5041         (cmd_show_record_btrace_cpu): Remove unused variable.
5042         * riscv-tdep.c (riscv_register_reggroup_p)
5043         (riscv_push_dummy_call, riscv_return_value): Remove unused
5044         variable.
5045         * rust-exp.y (literal): Remove unused variable.
5046         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
5047         unused variable.
5048         <STRUCTOP_ANONYMOUS>: Likewise.
5049         * s390-linux-tdep.c (s390_linux_init_abi_31)
5050         (s390_linux_init_abi_64): Remove unused variable.
5051         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
5052         (file_select_thread, net_windows_open, _initialize_ser_windows):
5053         Remove unused variables.
5054         * symtab.c (find_pc_sect_line): Remove unused variable.
5055         * target-memory.c (compute_garbled_blocks): Remove unused
5056         variable.
5057         (target_write_memory_blocks): Remove unused variable.
5058         * target.c (target_stack::unpush): Remove unused variables.
5059         * tracepoint.c (start_tracing, all_tracepoint_actions)
5060         (merge_uploaded_trace_state_variables)
5061         (print_one_static_tracepoint_marker): Remove unused variable.
5062         * unittests/basic_string_view/element_access/char/1.cc (test01):
5063         Remove unused variable.
5064         * windows-nat.c (windows_continue, windows_add_all_dlls)
5065         (do_initial_windows_stuff, windows_nat_target::create_inferior):
5066         Remove unused variables.
5067
5068 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
5069
5070         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
5071         attr_profile in HAVE_ELF.
5072         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
5073         HAVE_ELF.
5074
5075 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
5076
5077         * frame.c (frame_register_unwind): Change parameter name.
5078         (frame_unwind_register): Likewise.
5079         (frame_unwind_register_value): Likewise.
5080         (frame_unwind_register_signed): Likewise.
5081         (frame_unwind_register_unsigned): Likewise.
5082         * frame.h (frame_register_unwind): Likewise.
5083         (frame_unwind_register): Likewise.
5084         (frame_unwind_register_value): Likewise.
5085         (frame_unwind_register_signed): Likewise.
5086         (frame_unwind_register_unsigned): Likewise.
5087         (frame_unwind_arch): Likewise.
5088
5089 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
5090
5091         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
5092         ISA maintenance.
5093
5094 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
5095
5096         * mips-linux-nat.c (mips_linux_nat_target::read_description):
5097         Call `get_ptrace_pid' rather than extracting the ptrace PID by
5098         hand.
5099
5100 2018-07-20  Keith Seitz  <keiths@redhat.com>
5101
5102         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
5103         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
5104         m_compunit_symtab, m_language>: Add "m_" prefix.
5105         Update all uses.
5106         * buildsym.c: Update all uses.
5107
5108 2018-07-20  Tom Tromey  <tom@tromey.com>
5109
5110         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
5111         * buildsym.h (record_line_ftype): Remove typedef.
5112
5113 2018-07-20  Tom Tromey  <tom@tromey.com>
5114
5115         * buildsym-legacy.h (augment_type_symtab): Don't declare.
5116         (end_expandable_symtab): Likewise.
5117         (end_symtab_get_static_block): Likewise.
5118         (end_symtab_from_static_block): Likewise.
5119         * buildsym-legacy.c (augment_type_symtab): Remove.
5120         (end_expandable_symtab): Remove.
5121         (end_symtab_get_static_block): Remove.
5122         (end_symtab_from_static_block): Remove.
5123
5124 2018-07-20  Tom Tromey  <tom@tromey.com>
5125
5126         * dwarf2read.c: Include buildsym.h.
5127         (struct dwarf2_cu) <builder>: New method.
5128         (fixup_go_packaging): Update.
5129         (process_full_comp_unit, process_full_type_unit): Update.  Don't
5130         use scoped_free_pendings.
5131         (using_directives): Add "cu" parameter, remove "language".
5132         (read_import_statement, setup_type_unit_groups, )
5133         (read_func_scope, read_lexical_block_scope)
5134         (dwarf2_record_block_ranges, read_namespace): Update.
5135         (lnp_state_machine::lnp_state_machine): Add cu parameter.
5136         (lnp_state_machine::handle_end_sequence): Update.
5137         (class lnp_state_machine) <m_cu>: New member.
5138         <m_record_line_callback>: Remove.
5139         <m_currently_recording_lines>: New member.
5140         (lnp_state_machine::handle_set_file): Update.
5141         (noop_record_line): Remove.
5142         (dwarf_record_line_p): Add cu parameter.
5143         (dwarf_record_line_1, dwarf_finish_line): Likewise.
5144         (lnp_state_machine::record_line)
5145         (lnp_state_machine::lnp_state_machine)
5146         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
5147         (dwarf_decode_lines): Update.
5148         (dwarf2_start_subfile): Add cu parameter.
5149         (dwarf2_start_symtab, new_symbol): Update.
5150         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
5151         Remove dwarf2_per_objfile parameter.
5152         (dwarf_decode_macros): Update.
5153
5154 2018-07-20  Tom Tromey  <tom@tromey.com>
5155
5156         * stabsread.c (define_symbol): Update.
5157         * buildsym-legacy.h (get_buildsym_compunit): Declare.
5158         * dwarf2read.c (new_symbol): Update.
5159         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
5160         * cp-namespace.c: Include buildsym.h.
5161         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
5162         * buildsym-legacy.c (get_buildsym_compunit): New function.
5163
5164 2018-07-20  Tom Tromey  <tom@tromey.com>
5165
5166         * xcoffread.c: Include buildsym-legacy.h.
5167         * windows-nat.c: Include buildsym-legacy.h.
5168         * stabsread.c: Include buildsym-legacy.h.
5169         * mdebugread.c: Include buildsym-legacy.h.
5170         * buildsym-legacy.h: New file.
5171         * buildsym-legacy.c: New file, from buildsym.c.
5172         * go32-nat.c: Include buildsym-legacy.h.
5173         * dwarf2read.c: Include buildsym-legacy.h.
5174         * dbxread.c: Include buildsym-legacy.h.
5175         * cp-namespace.c: Include buildsym-legacy.h.
5176         * coffread.c: Include buildsym-legacy.h.
5177         * buildsym.h: Move some contents to buildsym-legacy.h.
5178         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
5179         buildsym-legacy.c.
5180         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
5181
5182 2018-07-20  Tom Tromey  <tom@tromey.com>
5183
5184         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
5185         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
5186         (buildsym_compunit::buildsym_compunit)
5187         (buildsym_compunit::~buildsym_compunit)
5188         (buildsym_compunit::get_macro_table): Define.
5189
5190 2018-07-20  Tom Tromey  <tom@tromey.com>
5191
5192         * buildsym.c (reset_symtab_globals): Remove.
5193         (buildsym_compunit::end_symtab_from_static_block): Update.
5194         (buildsym_compunit::augment_type_symtab): Update.
5195         (end_symtab_from_static_block): Call free_buildsym_compunit.
5196         (augment_type_symtab, end_symtab, end_expandable_symtab):
5197         Likewise.
5198
5199 2018-07-20  Tom Tromey  <tom@tromey.com>
5200
5201         * arch-utils.c: Do not include buildsym.h.
5202         * mipsread.c: Do not include buildsym.h.
5203         * machoread.c: Do not include buildsym.h.
5204         * elfread.c: Do not include buildsym.h.
5205
5206 2018-07-20  Tom Tromey  <tom@tromey.com>
5207
5208         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
5209         initialization.
5210         (buildsym_compunit): Add new constructor.
5211         (struct buildsym_compunit) <get_last_source_file, finish_block,
5212         record_block_range, start_subfile, patch_subfile_names,
5213         push_subfile, pop_subfile, record_line, get_compunit_symtab,
5214         set_last_source_start_addr, get_last_source_start_addr,
5215         get_local_using_directives, set_local_using_directives,
5216         get_global_using_directives, outermost_context_p,
5217         get_current_context_stack, get_context_stack_depth,
5218         get_current_subfile, get_local_symbols, get_file_symbols,
5219         get_global_symbols, record_debugformat, record_producer,
5220         push_context, pop_context, end_symtab_get_static_block,
5221         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
5222         New public methods.
5223         <record_pending_block, finish_block_internal, make_blockvector,
5224         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
5225         private methods.
5226         Update all users.
5227
5228 2018-05-22  Tom Tromey  <tom@tromey.com>
5229
5230         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
5231         parameter.
5232         (finish_block_internal): Update.
5233
5234 2018-07-20  Tom Tromey  <tom@tromey.com>
5235
5236         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
5237         parameter.
5238         (finish_block_internal): Update.
5239
5240 2018-07-20  Tom Tromey  <tom@tromey.com>
5241
5242         * buildsym.h (EXTERN): Don't define or undef.
5243         * buildsym.c (EXTERN): Don't define.
5244
5245 2018-07-20  Tom Tromey  <tom@tromey.com>
5246
5247         * buildsym.c: Remove TODO comment.
5248
5249 2018-07-20  Tom Tromey  <tom@tromey.com>
5250
5251         * coffread.c (coff_symtab_read): Update.
5252         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
5253         (xcoff_new_init): Update.
5254         * mipsread.c (mipscoff_new_init): Update.
5255         * mdebugread.c (mdebug_build_psymtabs): Update.
5256         * elfread.c (elf_new_init): Update.
5257         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
5258         Update.
5259         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
5260         (coffstab_build_psymtabs, elfstab_build_psymtabs)
5261         (stabsect_build_psymtabs): Update.
5262         * buildsym.h (buildsym_init): Don't declare.
5263         * buildsym.c: Update comment.
5264         (prepare_for_building): Remove.
5265         (start_symtab, restart_symtab): Update.
5266         (reset_symtab_globals): Update comment.
5267         (buildsym_init): Remove.
5268
5269 2018-07-20  Tom Tromey  <tom@tromey.com>
5270
5271         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
5272         * stabsread.c (patch_block_stabs, define_symbol, read_type)
5273         (read_enum_type, common_block_start, common_block_end)
5274         (cleanup_undefined_types_1, finish_global_stabs): Update.
5275         * mdebugread.c (psymtab_to_symtab_1): Update.
5276         * dwarf2read.c (fixup_go_packaging, read_func_scope)
5277         (read_lexical_block_scope, new_symbol): Update.
5278         * dbxread.c (process_one_symbol): Update.
5279         * coffread.c (coff_symtab_read, process_coff_symbol)
5280         (coff_read_enum_type): Update.
5281         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
5282         declare.
5283         (get_local_symbols, get_file_symbols, get_global_symbols): New
5284         functions.
5285         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
5286         m_global_symbols.
5287         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
5288         (~scoped_free_pendings): Update.
5289         (finish_block, prepare_for_building, reset_symtab_globals)
5290         (end_symtab_get_static_block, end_symtab_with_blockvector)
5291         (augment_type_symtab, push_context): Update.
5292         (get_local_symbols, get_file_symbols, get_global_symbols): New
5293         functions.
5294         (buildsym_init): Update.
5295
5296 2018-07-20  Tom Tromey  <tom@tromey.com>
5297
5298         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
5299         (process_full_type_unit): Likewise.
5300         (dwarf2_start_symtab): Set list_in_scope.
5301
5302 2018-07-20  Tom Tromey  <tom@tromey.com>
5303
5304         * dwarf2read.c (process_psymtab_comp_unit_reader)
5305         (build_type_psymtabs_reader): Do not set list_in_scope.
5306
5307 2018-07-20  Tom Tromey  <tom@tromey.com>
5308
5309         * buildsym.c (free_pendings): Remove.
5310         (add_symbol_to_list, scoped_free_pendings)
5311         (finish_block_internal, buildsym_init): Update.
5312
5313 2018-07-20  Tom Tromey  <tom@tromey.com>
5314
5315         * xcoffread.c (read_xcoff_symtab): Update.
5316         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
5317         Update.
5318         * dbxread.c (process_one_symbol): Update.
5319         * coffread.c (coff_symtab_read): Update.
5320         * buildsym.h (finish_block): Update.
5321         * buildsym.c (finish_block): Remove "listhead" argument.
5322         (end_symtab_get_static_block): Update.
5323
5324 2018-07-20  Tom Tromey  <tom@tromey.com>
5325
5326         * buildsym.h (class scoped_free_pendings): Remove constructor.
5327         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
5328         method.
5329         <m_pending_block_obstack, m_pending_blocks>: New members.
5330         (pending_block_obstack, pending_blocks): Remove.
5331         (scoped_free_pendings::scoped_free_pendings): Default.
5332         (~scoped_free_pendings): Update.
5333         (free_pending_blocks): Remove.
5334         (finish_block_internal, record_pending_block, make_blockvector)
5335         (end_symtab_get_static_block, augment_type_symtab, push_context)
5336         (buildsym_init): Update.
5337
5338 2018-07-20  Tom Tromey  <tom@tromey.com>
5339
5340         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
5341         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
5342         members.
5343         (pending_addrmap, pending_addrmap_obstack)
5344         (pending_addrmap_interesting): Remove.
5345         (scoped_free_pendings, record_block_range, make_blockvector)
5346         (prepare_for_building, reset_symtab_globals, buildsym_init):
5347         Update.
5348
5349 2018-07-20  Tom Tromey  <tom@tromey.com>
5350
5351         * xcoffread.c (process_linenos): Update.
5352         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
5353         * mdebugread.c (psymtab_to_symtab_1): Update.
5354         * dwarf2read.c (setup_type_unit_groups)
5355         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
5356         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
5357         * dbxread.c (process_one_symbol): Update.
5358         * coffread.c (coff_symtab_read, enter_linenos)
5359         (process_coff_symbol): Update.
5360         * buildsym.h (current_subfile): Don't declare.
5361         (get_current_subfile): Declare.
5362         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
5363         member.
5364         (start_subfile, free_buildsym_compunit, push_subfile)
5365         (prepare_for_building, start_symtab): Update.
5366         (get_current_subfile): New function.
5367
5368 2018-07-20  Tom Tromey  <tom@tromey.com>
5369
5370         * coffread.c (coff_symtab_read): Update.
5371         * xcoffread.c (read_xcoff_symtab): Update.
5372         * dwarf2read.c (new_symbol): Update.
5373         (read_func_scope, read_lexical_block_scope): Update.
5374         * dbxread.c (process_one_symbol): Update.
5375         * buildsym.h (context_stack, context_stack_depth): Don't declare.
5376         (outermost_context_p): Remove macro.
5377         (outermost_context_p, get_current_context_stack)
5378         (get_context_stack_depth): Declare.
5379         (pop_context): Return struct context_stack.
5380         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
5381         member.
5382         (context_stack_size): Remove.
5383         (INITIAL_CONTEXT_STACK_SIZE): Remove.
5384         (prepare_for_building, end_symtab_get_static_block)
5385         (augment_type_symtab, push_context): Update.
5386         (pop_context): Return struct context_stack.
5387         (outermost_context_p, get_current_context_stack)
5388         (get_context_stack_depth): New functions.
5389         (buildsym_init): Update.
5390
5391 2018-07-20  Tom Tromey  <tom@tromey.com>
5392
5393         * rust-exp.y: Now a pure parser.  Update all rules.
5394         (%union): Move earlier.
5395         (current_parser, work_obstack): Remove globals.
5396         (rust_parser, ~rust_parser): Update.
5397         (class rust_parser) <copy_name, concat3, crate_name, super_name,
5398         lex_character, lex_number, lex_string, lex_identifier,
5399         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
5400         convert_name, convert_params_to_expression,
5401         convert_ast_to_expression, ast_basic_type, ast_operation,
5402         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
5403         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
5404         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
5405         ast_array_type, ast_slice_type, ast_reference_type,
5406         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
5407         (rust_parse): Update.
5408         (rustyyerror, rustyylex): Add parser parameter.
5409         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
5410         (rust_lex_stringish_test, rust_lex_test_sequence)
5411         (rust_lex_test_trailing_dot, rust_lex_test_completion)
5412         (rust_lex_test_push_back, rust_lex_tests): Update.
5413
5414 2018-07-19  Pedro Alves  <palves@redhat.com>
5415
5416         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
5417         gdb::unique_xmalloc_ptr.
5418         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
5419         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
5420         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
5421         copy-initialization.
5422         * guile/scm-pretty-print.c (ppscm_print_children): Use
5423         gdb::unique_xmalloc_ptr instead of cleanups.
5424         (gdbscm_apply_val_pretty_printer): Remove cleanups.
5425         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
5426         gdb::unique_xmalloc_ptr.
5427         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
5428         Adjust to use gdb::unique_xmalloc_ptr.
5429         * guile/scm-utils.c (extract_arg): Adjust.
5430         * guile/scm-value.c (gdbscm_value_field): Adjust to use
5431         gdb::unique_xmalloc_ptr instead of a cleanup.
5432
5433 2018-07-19  Tom Tromey  <tom@tromey.com>
5434
5435         * utils.c (do_value_free_to_mark)
5436         (make_cleanup_value_free_to_mark): Remove.
5437         * utils.h (make_cleanup_value_free_to_mark): Remove.
5438
5439 2018-07-19  Pedro Alves  <palves@redhat.com>
5440
5441         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
5442         forwarding reference.
5443
5444 2018-07-18  Pedro Alves  <palves@redhat.com>
5445
5446         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
5447         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
5448         cleanup.
5449
5450 2018-07-18  Pedro Alves  <palves@redhat.com>
5451
5452         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
5453         exceptions.
5454         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
5455         (gdbscm_wrap): New.
5456         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
5457         directly instead of a cleanup.
5458         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
5459         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
5460         (vlscm_binop_gdbthrow): New, factored out from ...
5461         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
5462         (vlscm_rich_compare): Use gdbscm_wrap.
5463         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
5464         instead of a cleanup.
5465         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
5466         cleanup.
5467         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
5468         Use xfree directly instead of a cleanup.
5469         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
5470         Adjust to use gdbscm_wrap and scoped_value_mark.
5471         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
5472         (gdbscm_value_address, gdbscm_value_dereference)
5473         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
5474         scoped_value_mark.
5475         (gdbscm_value_dynamic_type): Use scoped_value_mark.
5476         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
5477         scoped_value_mark.
5478         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
5479         gdbscm_wrap and scoped_value_mark.
5480         (gdbscm_value_to_string): Use xfree directly instead of a
5481         cleanup.  Move 'buffer' unique_ptr to TRY scope.
5482         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
5483         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
5484         scoped_value_mark.
5485         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
5486         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
5487         scoped_value_mark.
5488         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
5489         gdbscm_wrap.
5490
5491 2018-07-18  Tom de Vries  <tdevries@suse.de>
5492
5493         * findvar.c (default_read_var_value): Also resolve dynamic type for
5494         LOC_OPTIMIZED_OUT vars.
5495
5496 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
5497
5498         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
5499         decoding.
5500
5501 2018-07-17  Tom Tromey  <tom@tromey.com>
5502
5503         * guile/scm-param.c (pascm_set_func, pascm_show_func)
5504         (compute_enum_list, pascm_set_param_value_x)
5505         (gdbscm_parameter_value): Update.
5506         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
5507         (gdbscm_scm_to_host_string): Update.
5508         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
5509         Update.
5510         * guile/scm-cmd.c (cmdscm_add_completion): Update.
5511         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
5512         * guile/scm-string.c (gdbscm_scm_to_string): Return
5513         unique_xmalloc_ptr.
5514         (gdbscm_scm_to_host_string): Likewise.
5515
5516 2018-07-17  Tom Tromey  <tom@tromey.com>
5517
5518         * guile/guile.c (gdbscm_eval_from_control_command): Update.
5519         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
5520         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
5521         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
5522         unique_xmalloc_ptr.
5523
5524 2018-07-17  Tom Tromey  <tom@tromey.com>
5525
5526         * guile/scm-param.c (pascm_signal_setshow_error): Update.
5527         * guile/guile-internal.h (gdbscm_exception_message_to_string):
5528         Update.
5529         * guile/scm-cmd.c (cmdscm_function): Update.
5530         * guile/scm-pretty-print.c
5531         (ppscm_print_exception_unless_memory_error): Update.
5532         * guile/scm-exception.c (gdbscm_exception_message_to_string):
5533         Return unique_xmalloc_ptr.
5534
5535 2018-07-17  Tom Tromey  <tom@tromey.com>
5536
5537         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
5538         Use string_printf.
5539
5540 2018-07-17  Jim Wilson  <jimw@sifive.com>
5541
5542         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
5543         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
5544         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
5545         unecessary braces after EF_RISCV_RVC test.  Delete call to
5546         set_gdbarch_decr_pc_after_break.
5547
5548         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
5549         RISCV_LAST_FP_REGNUM + 1.
5550         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
5551
5552 2018-07-17  Tom Tromey  <tom@tromey.com>
5553
5554         * configure.ac: Remove --disable-gdbcli.
5555         * configure: Rebuild.
5556         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
5557         (SUBDIR_CLI_CFLAGS): Remove.
5558         (SFILES): Use SUBDIR_CLI_SRCS.
5559         (COMMON_OBS): Use SUBDIR_CLI_OBS.
5560
5561 2018-07-17  Tom Tromey  <tom@tromey.com>
5562
5563         PR gdb/18624:
5564         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
5565
5566 2018-07-16  Jim Wilson  <jimw@sifive.com>
5567
5568         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
5569
5570 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5571
5572         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
5573         variable.
5574         (libunwind_frame_sniffer): Likewise.
5575         (libunwind_frame_prev_register): Likewise.
5576         (libunwind_sigtramp_frame_sniffer): Likewise.
5577         * ia64-tdep.c (ia64_access_reg): Likewise.
5578         (ia64_access_rse_reg): Likewise.
5579         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
5580         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
5581
5582 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5583
5584         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
5585
5586 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5587
5588         * remote-sim.c (gdbsim_target::close,
5589         gdbsim_target::mourn_inferior): Remove unused variables.
5590
5591 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
5592
5593         * ia64-tdep.c (ktab_buf): New global.
5594         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
5595         (get_kernel_table): Adjust.
5596
5597 2018-07-16  Tom Tromey  <tom@tromey.com>
5598
5599         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
5600         * dwarf2read.c (using_directives, new_symbol): Use
5601         outermost_context_p.
5602         * dbxread.c (process_one_symbol): Use outermost_context_p.
5603         * coffread.c (coff_symtab_read): Use outermost_context_p.
5604
5605 2018-07-16  Tom Tromey  <tom@tromey.com>
5606
5607         * dwarf2read.c (using_directives, read_func_scope)
5608         (read_lexical_block_scope): Update.
5609         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
5610         * buildsym.h (local_using_directives, global_using_directives):
5611         Don't declare.
5612         (get_local_using_directives, set_local_using_directives)
5613         (get_global_using_directives): Declare.
5614         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
5615         m_global_using_directives>: New members.
5616         (finish_block_internal, prepare_for_building)
5617         (reset_symtab_globals, end_symtab_get_static_block)
5618         (push_context): Update.
5619         (get_local_using_directives, set_local_using_directives)
5620         (get_global_using_directives): New functions.
5621         (buildsym_init): Update.
5622
5623 2018-07-16  Tom Tromey  <tom@tromey.com>
5624
5625         * xcoffread.c (xcoff_initial_scan): Don't call
5626         free_pending_blocks.
5627         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
5628         * buildsym.h (class scoped_free_pendings): Add constructor.
5629         (free_pending_blocks): Don't declare.
5630         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
5631         (free_pending_blocks): Now static.
5632
5633 2018-07-16  Tom Tromey  <tom@tromey.com>
5634
5635         * buildsym.h (push_subfile, pop_subfile): Update declarations.
5636         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
5637         member.
5638         (struct subfile_stack): Remove.
5639         (subfile_stack): Remove.
5640         (push_subfile, pop_subfile, buildsym_init): Update.
5641
5642 2018-07-16  Tom Tromey  <tom@tromey.com>
5643
5644         * buildsym.c (push_subfile): Use gdb_assert.
5645         (pop_subfile): Use gdb_assert.
5646
5647 2018-07-16  Tom Tromey  <tom@tromey.com>
5648
5649         * buildsym.h (merge_symbol_lists): Remove.
5650         * buildsym.c (merge_symbol_lists): Remove.
5651
5652 2018-07-16  Tom Tromey  <tom@tromey.com>
5653
5654         * stabsread.c (scan_file_globals): Update comment.
5655         * stabsread.h (scan_file_globals): Move from buildsym.h.
5656         * buildsym.h (scan_file_globals): Move to stabsread.h.
5657
5658 2018-07-16  Tom Tromey  <tom@tromey.com>
5659
5660         * xcoffread.c (xcoff_new_init): Update.
5661         * mipsread.c (mipscoff_new_init): Update.
5662         * mdebugread.c (mdebug_build_psymtabs): Update.
5663         * elfread.c (elf_new_init): Update.
5664         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
5665         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
5666         * buildsym.h (buildsym_new_init): Don't declare.
5667         * buildsym.c (buildsym_new_init): Remove.
5668
5669 2018-07-16  Tom Tromey  <tom@tromey.com>
5670
5671         * stabsread.h (within_function): Move from buildsym.h.
5672         * stabsread.c (start_stabs): Clear within_function.
5673         * coffread.c (coff_start_symtab): Clear within_function.
5674         * buildsym.h (within_function): Move to stabsread.h.
5675         * buildsym.c (prepare_for_building): Update.
5676
5677 2018-07-16  Tom Tromey  <tom@tromey.com>
5678
5679         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
5680         * dwarf2read.c (dwarf2_start_symtab): Don't set
5681         processing_gcc_compilation.
5682         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
5683
5684 2018-07-16  Tom Tromey  <tom@tromey.com>
5685
5686         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
5687         (next_symbol_text_func): Move from buildsym.h.
5688         * stabsread.c (hashname): Move from buildsym.c.
5689         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
5690         (next_symbol_text_func, hashname): Move to stabsread.h.
5691         * buildsym.c: Don't include bcache.h
5692         (hashname): Move to stasbread.c.
5693
5694 2018-07-16  Tom Tromey  <tom@tromey.com>
5695
5696         * buildsym.h (context_stack_size): Don't declare.
5697         * buildsym.c (context_stack_size): New global.
5698
5699 2018-07-16  Tom Tromey  <tom@tromey.com>
5700
5701         * dbxread.c (processing_acc_compilation): New global.
5702         * buildsym.h (processing_acc_compilation): Don't declare.
5703
5704 2018-07-16  Tom Tromey  <tom@tromey.com>
5705
5706         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
5707         * dbxread.c (read_ofile_symtab): Update.
5708         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
5709         * buildsym.h (last_source_start_addr): Remove.
5710         (set_last_source_start_addr, get_last_source_start_addr):
5711         Declare.
5712         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
5713         parameter.
5714         (struct buildsym_compunit) <m_last_source_start_addr>: New
5715         member.
5716         (prepare_for_building): Remove start_addr parameter.
5717         (start_symtab, restart_symtab, end_symtab_get_static_block)
5718         (end_symtab_with_blockvector): Update.
5719         (set_last_source_start_addr, get_last_source_start_addr): New
5720         functions.
5721
5722 2018-07-16  Tom Tromey  <tom@tromey.com>
5723
5724         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
5725         member.
5726         (have_line_numbers): Remove.
5727         (record_line, prepare_for_building, end_symtab_get_static_block)
5728         (augment_type_symtab): Update.
5729
5730 2018-07-16  Tom Tromey  <tom@tromey.com>
5731
5732         * buildsym.c (~buildsym_compunit): Free the macro table.
5733         (struct buildsym_compunit) <get_macro_table, release_macros>: New
5734         methods.
5735         <m_pending_macros>: New member.
5736         (pending_macros): Remove.
5737         (~scoped_free_pendings, get_macro_table, prepare_for_building)
5738         (reset_symtab_globals, end_symtab_get_static_block)
5739         (end_symtab_with_blockvector, augment_type_symtab)
5740         (buildsym_init): Update.
5741
5742 2018-07-16  Tom Tromey  <tom@tromey.com>
5743
5744         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
5745         parameter.
5746         (buildsym_compunit::set_last_source_file): New method.
5747         <m_last_source_file>: New member.
5748         (prepare_for_building): Remove "name" parameter.
5749         (start_symtab, restart_symtab, reset_symtab_globals): Update.
5750         (last_source_file): Remove.
5751         (set_last_source_file, get_last_source_file): Update.
5752
5753 2018-07-16  Tom Tromey  <tom@tromey.com>
5754
5755         * buildsym.c (prepare_for_building): Add assert.
5756
5757 2018-07-16  Tom Tromey  <tom@tromey.com>
5758
5759         * buildsym.c (~buildsym_compunit): Update.
5760         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
5761         (start_subfile, patch_subfile_names)
5762         (end_symtab_with_blockvector): Update.
5763
5764 2018-07-16  Tom Tromey  <tom@tromey.com>
5765
5766         * buildsym.c (struct buildsym_compunit): Add constructor,
5767         destructor, initializers.
5768         (start_buildsym_compunit): Remove.
5769         (free_buildsym_compunit): Use "delete".
5770         (start_symtab, restart_symtab): Use "new".
5771
5772 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
5773
5774         * symfile.c (set_objfile_default_section_offset): Remove struct
5775         keyword.
5776
5777 2018-07-14  Stafford Horne  <shorne@gmail.com>
5778
5779         * (Responsible Maintainers): Add myself as or1k maintainer.
5780
5781 2018-07-13  Tom Tromey  <tom@tromey.com>
5782
5783         * symfile.c (set_objfile_default_section_offset): Use extra braces
5784         around initializer.
5785
5786 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
5787
5788         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
5789         non-branching basr.
5790
5791 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5792
5793         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5794         unittests/cli-utils-selftests.c
5795         * unittests/cli-utils-selftests.c: New file.
5796
5797 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5798
5799         * NEWS: Mention new commands. Mention change to 'thread apply'.
5800
5801 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5802
5803         * thread.c (thr_try_catch_cmd): New function.
5804         (thread_apply_all_command): Handle qcs flags.
5805         (thread_apply_command): Handle qcs flags.
5806         (taas_command): New function.
5807         (tfaas_command): New function.
5808         (_initialize_thread): Update to setup the new commands 'taas
5809         and 'tfaas'. Change doc string for 'thread apply'.
5810
5811 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5812
5813         * stack.c: (trailing_outermost_frame): New function, mostly
5814         extracted from backtrace_command_1.
5815         (leading_innermost_frame): New function.
5816         (backtrace_command_1): Update to call trailing_outermost_frame.
5817         (frame_apply_command_count): New function.
5818         (frame_apply_level_command): New function.
5819         (frame_apply_all_command): New function.
5820         (frame_apply_command): New function.
5821         (faas_command): New function.
5822         (frame_cmd_list): New variable.
5823         (_initialize_stack): Update to setup the new commands 'frame apply'
5824         and 'faas'.
5825
5826 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5827
5828         * cli-utils.c (number_or_range_parser::get_number): Only handle
5829         numbers or convenience var as numbers.
5830         (parse_flags): New function.
5831         (parse_flags_qcs): New function.
5832         (number_or_range_parser::finished): Ensure parsing end is detected
5833         before end of string.
5834         * cli-utils.h (parse_flags): New function.
5835         (parse_flags_qcs): New function.
5836         (number_or_range_parser): Remove m_finished bool.
5837         (number_or_range_parser::skip_range): Set m_in_range to false.
5838
5839 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
5840
5841         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
5842         on Windows.
5843
5844 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5845             Jan Kratochvil  <jan.kratochvil@redhat.com>
5846             Paul Fertser  <fercerpav@gmail.com>
5847             Tsutomu Seki  <sekiriki@gmail.com>
5848             Pedro Alves  <palves@redhat.com>
5849
5850         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5851         'unittests/parse-connection-spec-selftests.c'.
5852         (COMMON_SFILES): Add 'common/netstuff.c'.
5853         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
5854         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
5855         * common/netstuff.c: New file.
5856         * common/netstuff.h: New file.
5857         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
5858         (wait_for_connect): Update comment.  New parameter
5859         'gdb::optional<int> sock' instead of 'struct serial *scb'.
5860         Use 'sock' directly instead of 'scb->fd'.
5861         (try_connect): New function, with code from 'net_open'.
5862         (net_open): Rewrite main loop to deal with multiple
5863         sockets/addresses.  Handle IPv6-style hostnames; implement
5864         support for IPv6 connections.
5865         * unittests/parse-connection-spec-selftests.c: New file.
5866
5867 2018-07-11  Pedro Alves  <palves@redhat.com>
5868
5869         PR gdb/23377
5870         * remote.c (remote_target::remote_detach_pid): Call
5871         set_current_process.
5872
5873 2018-07-11  Pedro Alves  <palves@redhat.com>
5874
5875         * h8300-tdep.c (h8300_gdbarch_init): Remove
5876         set_gdbarch_ecoff_reg_to_regnum calls.
5877
5878 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5879
5880         PR c++/23373
5881         * c-typeprint.c (c_type_print_base_struct_union): Don't print
5882         offsets/sizes for static members of a class/struct.
5883
5884 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
5885
5886         * target-descriptions.c (tdesc_register_bitsize): Rename.
5887         * target-descriptions.h (tdesc_register_bitsize): Likewise.
5888         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
5889         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
5890
5891 2018-07-10  Tom Tromey  <tom@tromey.com>
5892
5893         * breakpoint.c (moribund_locations): Now static and a
5894         std::vector.
5895         (breakpoint_init_inferior, moribund_breakpoint_here_p)
5896         (build_bpstat_chain, update_global_location_list)
5897         (breakpoint_retire_moribund): Update.
5898         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
5899         VEC.
5900
5901 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5902
5903         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
5904         (riscv_register_reggroup_p): Use new function, remove unneeded
5905         parenthesis.
5906         (riscv_push_dummy_call): Extend assert to compare against xlen or
5907         flen based on register type.
5908
5909 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5910
5911         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
5912
5913 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5914
5915         * remote.c (show_hardware_watchpoint_limit): New function.
5916         (show_hardware_watchpoint_length_limit): New function.
5917         (show_hardware_breakpoint_limit): New function.
5918         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
5919         where appropriate, update help text.
5920
5921 2018-07-09  Tom Tromey  <tom@tromey.com>
5922
5923         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
5924         (CLIBS): Don't mention NAT_CLIBS.
5925
5926 2018-07-09  Tom Tromey  <tom@tromey.com>
5927
5928         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
5929         (LIBGDB_OBS, clean mostlyclean): Update.
5930         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
5931
5932 2018-07-09  Tom Tromey  <tom@tromey.com>
5933
5934         * Makefile.in (%.c: %.y): Use ECHO_YACC.
5935         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
5936         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
5937
5938 2018-07-09  Tom Tromey  <tom@tromey.com>
5939
5940         * Makefile.in (ALLDEPFILES): Remove exec.c.
5941         (COMMON_OBS): Remove exec.o.
5942         (COMMON_SFILES): Add exec.c.
5943
5944 2018-07-09  Tom Tromey  <tom@tromey.com>
5945
5946         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
5947
5948 2018-07-09  Tom Tromey  <tom@tromey.com>
5949
5950         * Makefile.in (clean mostlyclean): Remove stamp-version.
5951         (version.c): Depend on stamp-version.
5952         (stamp-version): New rule, from version.c rule.
5953
5954 2018-07-09  Tom Tromey  <tom@tromey.com>
5955
5956         * Makefile.in (init.c): Depend on stamp-init.
5957         (stamp-init): New rule, from init.c rule.
5958         (clean mostlyclean): Remove stamp-init.
5959
5960 2018-07-09  Tom Tromey  <tom@tromey.com>
5961
5962         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
5963         SUBDIR_GCC_COMPILE_SRCS.
5964
5965 2018-07-09  Tom Tromey  <tom@tromey.com>
5966
5967         * Makefile.in (init.c): Remove some unused sed rules.
5968
5969 2018-07-09  Tom Tromey  <tom@tromey.com>
5970
5971         * Makefile.in (TSOBS): Remove.
5972         (INIT_FILES): Update.
5973         (LIBGDB_OBS): Update.
5974         (COMMON_SFILES): Add inflow.c.
5975         (SFILES): Remove inflow.c.
5976
5977 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
5978
5979         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
5980
5981 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
5982
5983         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
5984         get_saveloc_name, is_signal_frame_name, step_name,
5985         init_remote_name, create_addr_space_name,
5986         destroy_addr_space_name, search_unwind_table_name,
5987         find_dyn_list_name): Constify.
5988
5989 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
5990
5991         * darwin-nat.c (darwin_pthread_kill): New function.
5992         (darwin_resume_thread): Use darwin_pthread_kill.
5993
5994 2018-07-05  Tom de Vries  <tdevries@suse.de>
5995
5996         * macroexp.c (macro_buffer) <operator=>: New member function.
5997
5998 2018-07-04  Tom Tromey  <tom@tromey.com>
5999
6000         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
6001
6002 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
6003
6004         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
6005         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
6006         * maint.c: Likewise.
6007         * top.c: Likewise.
6008
6009 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
6010
6011         * NEWS: Create a new section for the next release branch.
6012         Rename the section of the current branch, now that it has
6013         been cut.
6014
6015 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
6016
6017         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
6018         * version.in: Bump version to 8.2.50.DATE-git.
6019
6020 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
6021             Pedro Alves  <palves@redhat.com>
6022
6023         * linux-nat.c (linux_init_ptrace): Rename to ...
6024         (linux_init_ptrace_procfs): ... this.  Call
6025         linux_proc_init_warnings.
6026         (linux_nat_target::post_attach)
6027         (linux_nat_target::post_startup_inferior): Adjust.
6028         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
6029         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
6030
6031 2018-07-04  Tom de Vries  <tdevries@suse.de>
6032
6033         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
6034         check ...
6035         (read_comp_unit_head): ... here.
6036
6037 2018-07-03  Tom Tromey  <tom@tromey.com>
6038
6039         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
6040         (stop_tracing, tstatus_command)
6041         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
6042         (print_one_static_tracepoint_marker): Update.
6043         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
6044         std::vector.
6045         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
6046         VEC.
6047         (all_tracepoints, static_tracepoints_here): Return std::vector.
6048
6049 2018-07-03  Tom Tromey  <tom@tromey.com>
6050
6051         * common/ptid.c (ptid_equal): Remove.
6052         * common/ptid.h (ptid_equal): Don't declare.
6053         * ada-tasks.c: Update.
6054         * breakpoint.c: Update.
6055         * common/agent.c: Update.
6056         * corelow.c: Update.
6057         * darwin-nat-info.c: Update.
6058         * darwin-nat.c: Update.
6059         * dcache.c: Update.
6060         * dtrace-probe.c: Update.
6061         * dummy-frame.c: Update.
6062         * fbsd-nat.c: Update.
6063         * frame.c: Update.
6064         * gdbthread.h: Update.
6065         * gnu-nat.c: Update.
6066         * go32-nat.c: Update.
6067         * inf-loop.c: Update.
6068         * inf-ptrace.c: Update.
6069         * infcall.c: Update.
6070         * infcmd.c: Update.
6071         * inflow.c: Update.
6072         * infrun.c: Update.
6073         * linux-fork.c: Update.
6074         * linux-nat.c: Update.
6075         * linux-thread-db.c: Update.
6076         * mi/mi-cmd-var.c: Update.
6077         * mi/mi-interp.c: Update.
6078         * mi/mi-main.c: Update.
6079         * nto-procfs.c: Update.
6080         * ppc-linux-tdep.c: Update.
6081         * procfs.c: Update.
6082         * python/py-inferior.c: Update.
6083         * python/py-record-btrace.c: Update.
6084         * python/py-record.c: Update.
6085         * ravenscar-thread.c: Update.
6086         * regcache.c: Update.
6087         * remote-sim.c: Update.
6088         * remote.c: Update.
6089         * sol-thread.c: Update.
6090         * solib.c: Update.
6091         * target.c: Update.
6092         * tui/tui-stack.c: Update.
6093         * varobj.c: Update.
6094         * windows-nat.c: Update.
6095         * windows-tdep.c: Update.
6096
6097 2018-07-03  Tom Tromey  <tom@tromey.com>
6098
6099         * common/ptid.c (ptid_match): Remove.
6100         * common/ptid.h (ptid_match): Don't declare.
6101         * fbsd-nat.c: Update.
6102         * infcmd.c: Update.
6103         * infrun.c: Update.
6104         * linux-nat.c: Update.
6105         * record-btrace.c: Update.
6106         * regcache.c: Update.
6107         * remote.c: Update.
6108
6109 2018-07-03  Tom Tromey  <tom@tromey.com>
6110
6111         * common/ptid.c (ptid_tid_p): Remove.
6112         * common/ptid.h (ptid_tid_p): Don't declare.
6113         * sol-thread.c: Update.
6114
6115 2018-07-03  Tom Tromey  <tom@tromey.com>
6116
6117         * common/ptid.c (ptid_lwp_p): Remove.
6118         * common/ptid.h (ptid_lwp_p): Don't declare.
6119         * fbsd-nat.c: Update.
6120         * linux-nat.c: Update.
6121         * nat/linux-procfs.c: Update.
6122         * nat/x86-linux-dregs.c: Update.
6123         * sol-thread.c: Update.
6124
6125 2018-07-03  Tom Tromey  <tom@tromey.com>
6126
6127         * common/ptid.c (ptid_is_pid): Remove.
6128         * common/ptid.h (ptid_is_pid): Don't declare.
6129         * infrun.c: Update.
6130         * linux-nat.c: Update.
6131         * mi/mi-interp.c: Update.
6132         * remote.c: Update.
6133         * thread.c: Update.
6134
6135 2018-07-03  Tom Tromey  <tom@tromey.com>
6136
6137         * common/ptid.c (ptid_get_tid): Remove.
6138         * common/ptid.h (ptid_get_tid): Don't declare.
6139         * ada-tasks.c: Update.
6140         * aix-thread.c: Update.
6141         * bsd-uthread.c: Update.
6142         * darwin-nat.c: Update.
6143         * fbsd-nat.c: Update.
6144         * i386-darwin-nat.c: Update.
6145         * infrun.c: Update.
6146         * linux-tdep.c: Update.
6147         * nto-procfs.c: Update.
6148         * ppc-ravenscar-thread.c: Update.
6149         * python/py-infthread.c: Update.
6150         * ravenscar-thread.c: Update.
6151         * sol-thread.c: Update.
6152         * sparc-ravenscar-thread.c: Update.
6153         * windows-nat.c: Update.
6154
6155 2018-07-03  Tom Tromey  <tom@tromey.com>
6156
6157         * common/ptid.c (ptid_get_lwp): Remove.
6158         * common/ptid.h (ptid_get_lwp): Don't declare.
6159         * aarch64-linux-nat.c: Update.
6160         * ada-tasks.c: Update.
6161         * aix-thread.c: Update.
6162         * amd64-linux-nat.c: Update.
6163         * arm-linux-nat.c: Update.
6164         * corelow.c: Update.
6165         * fbsd-nat.c: Update.
6166         * fbsd-tdep.c: Update.
6167         * gnu-nat.c: Update.
6168         * i386-cygwin-tdep.c: Update.
6169         * i386-gnu-nat.c: Update.
6170         * i386-linux-nat.c: Update.
6171         * ia64-linux-nat.c: Update.
6172         * inf-ptrace.c: Update.
6173         * infrun.c: Update.
6174         * linux-fork.c: Update.
6175         * linux-nat.c: Update.
6176         * linux-tdep.c: Update.
6177         * linux-thread-db.c: Update.
6178         * mips-linux-nat.c: Update.
6179         * nat/aarch64-linux-hw-point.c: Update.
6180         * nat/aarch64-linux.c: Update.
6181         * nat/linux-btrace.c: Update.
6182         * nat/linux-osdata.c: Update.
6183         * nat/linux-procfs.c: Update.
6184         * nat/x86-linux-dregs.c: Update.
6185         * obsd-nat.c: Update.
6186         * ppc-fbsd-nat.c: Update.
6187         * ppc-linux-nat.c: Update.
6188         * procfs.c: Update.
6189         * python/py-infthread.c: Update.
6190         * ravenscar-thread.c: Update.
6191         * remote.c: Update.
6192         * s390-linux-nat.c: Update.
6193         * sol-thread.c: Update.
6194         * sol2-tdep.c: Update.
6195         * spu-linux-nat.c: Update.
6196         * x86-linux-nat.c: Update.
6197         * xtensa-linux-nat.c: Update.
6198
6199 2018-07-03  Tom Tromey  <tom@tromey.com>
6200
6201         * common/ptid.c (ptid_get_pid): Remove.
6202         * common/ptid.h (ptid_get_pid): Don't declare.
6203         * aarch64-linux-nat.c: Update.
6204         * ada-lang.c: Update.
6205         * aix-thread.c: Update.
6206         * alpha-bsd-nat.c: Update.
6207         * amd64-fbsd-nat.c: Update.
6208         * amd64-linux-nat.c: Update.
6209         * arm-linux-nat.c: Update.
6210         * arm-nbsd-nat.c: Update.
6211         * auxv.c: Update.
6212         * break-catch-syscall.c: Update.
6213         * breakpoint.c: Update.
6214         * bsd-uthread.c: Update.
6215         * corelow.c: Update.
6216         * ctf.c: Update.
6217         * darwin-nat.c: Update.
6218         * fbsd-nat.c: Update.
6219         * fbsd-tdep.c: Update.
6220         * gcore.c: Update.
6221         * gnu-nat.c: Update.
6222         * hppa-nbsd-nat.c: Update.
6223         * hppa-obsd-nat.c: Update.
6224         * i386-fbsd-nat.c: Update.
6225         * ia64-linux-nat.c: Update.
6226         * inf-ptrace.c: Update.
6227         * infcmd.c: Update.
6228         * inferior.c: Update.
6229         * inferior.h: Update.
6230         * inflow.c: Update.
6231         * infrun.c: Update.
6232         * linux-fork.c: Update.
6233         * linux-nat.c: Update.
6234         * linux-tdep.c: Update.
6235         * linux-thread-db.c: Update.
6236         * m68k-bsd-nat.c: Update.
6237         * mi/mi-interp.c: Update.
6238         * mi/mi-main.c: Update.
6239         * mips-linux-nat.c: Update.
6240         * mips-nbsd-nat.c: Update.
6241         * mips64-obsd-nat.c: Update.
6242         * nat/aarch64-linux-hw-point.c: Update.
6243         * nat/aarch64-linux.c: Update.
6244         * nat/linux-btrace.c: Update.
6245         * nat/linux-osdata.c: Update.
6246         * nat/linux-procfs.c: Update.
6247         * nat/x86-linux-dregs.c: Update.
6248         * nto-procfs.c: Update.
6249         * obsd-nat.c: Update.
6250         * ppc-linux-nat.c: Update.
6251         * ppc-nbsd-nat.c: Update.
6252         * ppc-obsd-nat.c: Update.
6253         * proc-service.c: Update.
6254         * procfs.c: Update.
6255         * python/py-inferior.c: Update.
6256         * python/py-infthread.c: Update.
6257         * ravenscar-thread.c: Update.
6258         * record.c: Update.
6259         * remote-sim.c: Update.
6260         * remote.c: Update.
6261         * rs6000-nat.c: Update.
6262         * s390-linux-nat.c: Update.
6263         * sh-nbsd-nat.c: Update.
6264         * sol-thread.c: Update.
6265         * sparc-nat.c: Update.
6266         * sparc64-tdep.c: Update.
6267         * spu-linux-nat.c: Update.
6268         * spu-tdep.c: Update.
6269         * target-debug.h: Update.
6270         * target.c: Update.
6271         * thread.c: Update.
6272         * tid-parse.c: Update.
6273         * tracefile-tfile.c: Update.
6274         * vax-bsd-nat.c: Update.
6275         * windows-nat.c: Update.
6276         * x86-linux-nat.c: Update.
6277         * x86-nat.c: Update.
6278
6279 2018-07-03  Tom Tromey  <tom@tromey.com>
6280
6281         * common/ptid.c (pid_to_ptid): Remove.
6282         * common/ptid.h (pid_to_ptid): Don't declare.
6283         * aix-thread.c: Update.
6284         * arm-linux-nat.c: Update.
6285         * common/ptid.c: Update.
6286         * common/ptid.h: Update.
6287         * corelow.c: Update.
6288         * ctf.c: Update.
6289         * darwin-nat.c: Update.
6290         * fbsd-nat.c: Update.
6291         * fork-child.c: Update.
6292         * gnu-nat.c: Update.
6293         * go32-nat.c: Update.
6294         * inf-ptrace.c: Update.
6295         * infcmd.c: Update.
6296         * inferior.c: Update.
6297         * infrun.c: Update.
6298         * linux-fork.c: Update.
6299         * linux-nat.c: Update.
6300         * nat/aarch64-linux-hw-point.c: Update.
6301         * nat/fork-inferior.c: Update.
6302         * nat/x86-linux-dregs.c: Update.
6303         * nto-procfs.c: Update.
6304         * obsd-nat.c: Update.
6305         * procfs.c: Update.
6306         * progspace.c: Update.
6307         * remote.c: Update.
6308         * rs6000-nat.c: Update.
6309         * s390-linux-nat.c: Update.
6310         * sol-thread.c: Update.
6311         * spu-linux-nat.c: Update.
6312         * target.c: Update.
6313         * top.c: Update.
6314         * tracefile-tfile.c: Update.
6315         * windows-nat.c: Update.
6316
6317 2018-07-03  Tom Tromey  <tom@tromey.com>
6318
6319         * common/ptid.h (ptid_build): Don't declare.
6320         * common/ptid.c (ptid_build): Remove.
6321         * aix-thread.c: Update.
6322         * bsd-kvm.c: Update.
6323         * bsd-uthread.c: Update.
6324         * common/agent.c: Update.
6325         * common/ptid.c: Update.
6326         * common/ptid.h: Update.
6327         * corelow.c: Update.
6328         * darwin-nat.c: Update.
6329         * fbsd-nat.c: Update.
6330         * gnu-nat.c: Update.
6331         * linux-fork.c: Update.
6332         * linux-nat.c: Update.
6333         * linux-thread-db.c: Update.
6334         * nat/linux-osdata.c: Update.
6335         * nat/linux-procfs.c: Update.
6336         * nto-procfs.c: Update.
6337         * obsd-nat.c: Update.
6338         * proc-service.c: Update.
6339         * procfs.c: Update.
6340         * ravenscar-thread.c: Update.
6341         * remote-sim.c: Update.
6342         * remote.c: Update.
6343         * sol-thread.c: Update.
6344         * target.c: Update.
6345         * windows-nat.c: Update.
6346
6347 2018-07-03  Tom Tromey  <tom@tromey.com>
6348
6349         * infrun.c (follow_exec): Use exit_inferior_silent.
6350         * inferior.c (exit_inferior_num_silent): Remove.
6351         * inferior.h (exit_inferior_num_silent): Don't declare.
6352
6353 2018-07-03  Tom Tromey  <tom@tromey.com>
6354
6355         PR cli/23340:
6356         * darwin-nat.c (darwin_attach_pid): Reset inferior and
6357         inferior_ptid on error.
6358
6359 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
6360             Simon Marchi  <simon.marchi@polymtl.ca>
6361
6362         PR tdep/8282
6363         * disasm.h (gdb_disassembler): Add
6364         `m_disassembler_options_holder'. member
6365         * disasm.c (get_all_disassembler_options): New function.
6366         (gdb_disassembler::gdb_disassembler): Use it.
6367         (gdb_buffered_insn_length_init_dis): Likewise.
6368         (gdb_buffered_insn_length): Adjust accordingly.
6369         (set_disassembler_options): Handle options with arguments.
6370         (show_disassembler_options_sfunc): Likewise.  Add a leading new
6371         line if showing options with descriptions.
6372         (disassembler_options_completer): Adapt to using the
6373         `disasm_options_and_args_t' structure.
6374         * mips-tdep.c (mips_disassembler_options): New variable.
6375         (mips_disassembler_options_o32): Likewise.
6376         (mips_disassembler_options_n32): Likewise.
6377         (mips_disassembler_options_n64): Likewise.
6378         (gdb_print_insn_mips): Don't set `disassembler_options'.
6379         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
6380         functions.
6381         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
6382         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
6383         `gdbarch_disassembler_options_implicit' and
6384         `gdbarch_valid_disassembler_options'.
6385         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
6386         `disasm_options_and_args_t' structure.
6387         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
6388         method.
6389         (valid_disassembler_options): Switch from `disasm_options_t' to
6390         the `disasm_options_and_args_t' structure.
6391         * NEWS: Document `set disassembler-options' support for the MIPS
6392         target.
6393         * gdbarch.h: Regenerate.
6394         * gdbarch.c: Regenerate.
6395
6396 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
6397
6398         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
6399
6400 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
6401
6402         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
6403         parameter in call to amd64_target_description.
6404         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
6405         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
6406         (amd64fbsd_init_abi): Likewise.
6407         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
6408         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
6409         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
6410         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
6411
6412 2018-06-29  Pedro Alves  <palves@redhat.com>
6413
6414         * gdb/amd64-tdep.h (amd64_create_target_description): Add
6415         "segments" parameter.
6416         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
6417         (_initialize_amd64_tdep): Update call to
6418         amd64_create_target_description.
6419         (amd64_target_description): Add "segments" parameter.  Adjust
6420         the implementation to use it.
6421         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
6422         call to amd64_create_target_description.
6423         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
6424         * gdb/arch/amd64.h (amd64_create_target_description): Add
6425         "segments" register.
6426         * gdb/arch/amd64.c (amd64_create_target_description): Add
6427         "segments" parameter.  Call create_feature_i386_64bit_segments
6428         only if SEGMENTS is true.
6429         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
6430         call to amd64_create_target_description.
6431
6432 2018-06-29  Pedro Alves  <palves@redhat.com>
6433
6434         * thread.c (thread_target_id_str): New, factored out from ...
6435         (print_thread_info_1): ... here.  Use it to compute the max
6436         "Target Id" column width.
6437
6438 2018-06-29  Pedro Alves  <palves@redhat.com>
6439
6440         * remote.c (remote_target::extra_thread_info): Delete
6441         'display_buf' and 'n' locals.  from the cache, regardless of
6442         packet mechanims is in use.  Use cache for qThreadExtra and qP
6443         methods too.
6444
6445 2018-06-29  Pedro Alves  <palves@redhat.com>
6446
6447         * blockframe.c (find_pc_sect_containing_function): New function.
6448         * breakpoint.c (print_breakpoint_location): Don't call
6449         find_pc_sect_function.
6450         * linespec.c (create_sals_line_offset): Record the location's
6451         symbol in the sal.
6452         * linespec.c (convert_address_location_to_sals): Fill in sal's
6453         symbol with find_pc_sect_containing_function.
6454         * symtab.c (find_function_start_sal): Rename to ...
6455         (find_function_start_sal_1): ... this.
6456         (find_function_start_sal): Reimplement as wrapper around
6457         find_function_start_sal_1, and use
6458         find_pc_sect_containing_function to fill in the sal's symbol.
6459         (find_function_start_sal(symbol*, bool)): Adjust.
6460         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
6461         comments.
6462         (find_pc_sect_containing_function): Declare.
6463
6464 2018-06-29  Pedro Alves  <palves@redhat.com>
6465
6466         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
6467         true if the the location has no symbol.
6468
6469 2018-06-28  Tom Tromey  <tom@tromey.com>
6470
6471         * NEWS: Mention --enable-codesign.
6472         * silent-rules.mk (ECHO_SIGN): New variable.
6473         * configure.ac: Add --enable-codesign.
6474         * configure: Rebuild.
6475         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
6476         (gdb$(EXEEXT)): Optionally invoke codesign.
6477
6478 2018-06-28  Pedro Alves  <palves@redhat.com>
6479
6480         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
6481         comments.
6482         (switch_to_thread_no_regs): Adjust comment.
6483         * infcmd.c (stop_pc): Delete.
6484         (post_create_inferior, info_program_command): Replace references
6485         to stop_pc with references to thread_info->suspend.stop_pc.
6486         * inferior.h (stop_pc): Delete declaration.
6487         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
6488         (handle_inferior_event_1, handle_signal_stop)
6489         (process_event_stop_test, keep_going_stepped_thread)
6490         (handle_step_into_function, handle_step_into_function_backward)
6491         (print_stop_location): Replace references to stop_pc with
6492         references to thread_info->suspend.stop_pc.
6493         (struct infcall_suspend_state) <stop_pc>: Delete field.
6494         (save_infcall_suspend_state, restore_infcall_suspend_state):
6495         Remove references to inf_stat->stop_pc.
6496         * linux-fork.c (fork_load_infrun_state): Likewise.
6497         * record-btrace.c (record_btrace_set_replay): Likewise.
6498         * record-full.c (record_full_goto_entry): Likewise.
6499         * remote.c (print_one_stopped_thread): Likewise.
6500         * target.c (target_resume): Extend comment.
6501         * thread.c (set_executing_thread): New.
6502         (set_executing): Use it.
6503         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
6504         Remove references to stop_pc.
6505
6506 2018-06-28  Pedro Alves  <palves@redhat.com>
6507
6508         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
6509         Moving fetching stop_pc until after ecs->event_thread is refreshed.
6510
6511 2018-06-28  Tom Tromey  <tom@tromey.com>
6512
6513         * coffread.c (coff_symfile_finish): Update.
6514         * xcoffread.c (xcoff_symfile_finish): Update.
6515         * elfread.c (elf_symfile_finish): Update.
6516         * symfile.h (dwarf2_free_objfile): Don't declare.
6517         * dwarf2read.c (_initialize_dwarf2_read): Use
6518         register_objfile_data_with_cleanup.
6519         (dwarf2_free_objfile): Now static.  Change signature.
6520
6521 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6522
6523         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
6524         option "-o" to add-symbol-file-load to add an offset to each
6525         section's load address.
6526         * symfile.c (set_objfile_default_section_offset): New function.
6527
6528 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6529
6530         * symfile.c (add_symbol_file_command): Make sure that sections
6531         with the same name are sorted in the same order.
6532
6533 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6534
6535         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
6536         require the second argument.  If omitted, load sections at the
6537         addresses specified in the file.
6538
6539 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6540
6541         * symfile.c (symbol_file_command, symbol_file_add_main_1)
6542         (_initialize_symfile): Add option "-o" to symbol-file to add an
6543         offset to each section of the symbol file.
6544
6545 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6546
6547         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
6548
6549 2018-06-27  Tom Tromey  <tom@tromey.com>
6550
6551         * stack.c (_initialize_stack): Update "func" help text.
6552
6553 2018-06-27  Tom Tromey  <tom@tromey.com>
6554
6555         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
6556         std::vector.
6557         (unwind_infopy_str, pyuw_create_unwind_info)
6558         (unwind_infopy_add_saved_register, pyuw_sniffer)
6559         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
6560         Update.
6561         (struct saved_reg): Add constructor.
6562         <value>: Now a gdbpy_ref<>.
6563
6564 2018-06-27  Tom Tromey  <tom@tromey.com>
6565
6566         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
6567
6568 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6569
6570         * gdb-gdb.py.in: Format using autopep8.
6571
6572 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6573
6574         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
6575         (type_lookup_function): Recognize CORE_ADDR values.
6576
6577 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6578
6579         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
6580         print tag_name.
6581
6582 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6583
6584         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
6585         <__lt__>: Add.
6586
6587 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6588
6589         * gdb-gdb.py: Move to...
6590         * gdb-gdb.py.in: ... here.
6591         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
6592         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
6593         dependencies.
6594         (distclean): Remove gdb-gdb.py when cleaning.
6595         (gdb-gdb.py, gdb-gdb.gdb): New rules.
6596         * configure: Re-generate.
6597
6598 2018-06-27  Pedro Alves  <palves@redhat.com>
6599
6600         * proc-service.c (get_ps_regcache): New.
6601         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
6602         (ps_lsetfpregs): Use it.
6603
6604 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
6605
6606         PR gdb/21695
6607         * dwarf2read.c (lnp_state_machine::check_line_address): Update declaration.
6608         (dwarf_decode_lines_1): Adjust.
6609
6610 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6611
6612         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
6613         override.
6614         <info_proc>: Likewise.
6615
6616 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
6617
6618         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
6619         to windows_fetch_one_register, and only handle the case of
6620         fetching one register.  Move the code that reloads the context
6621         and iterates over all registers if R is negative to...
6622         (windows_nat_target::fetch_registers): ... here.
6623         (do_windows_store_inferior_registers): Rename to
6624         windows_store_one_register, and only handle the case of storing
6625         one register.  Move the code that handles the case where r is
6626         negative to...
6627         (windows_nat_target::store_registers) ... here.
6628
6629 2018-06-26  Tom Tromey  <tom@tromey.com>
6630
6631         PR rust/22574:
6632         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
6633         * rust-lang.c (rust_print_struct_def): Add podata parameter.
6634         Update.
6635         (rust_internal_print_type): Add podata parameter.
6636         (rust_print_type): Update.
6637
6638 2018-06-26  Tom Tromey  <tom@tromey.com>
6639
6640         * typeprint.h (struct print_offset_data) <update, finish,
6641         maybe_print_hole>: New methods.
6642         <indentation>: New constant.
6643         * typeprint.c (print_offset_data::indentation): Define.
6644         (print_offset_data::maybe_print_hole, print_offset_data::update)
6645         (print_offset_data::finish): Move from c-typeprint.c and rename.
6646         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
6647         (print_spaces_filtered_with_print_options): Update.
6648         (c_print_type_union_field_offset, maybe_print_hole)
6649         (c_print_type_struct_field_offset): Move to typeprint.c and
6650         rename.
6651         (c_type_print_base_struct_union): Update.
6652
6653 2018-06-25  Pedro Alves  <palves@redhat.com>
6654
6655         * gdbthread.h (thread_info_ref, delete_thread)
6656         (delete_thread_silent, first_thread_of_inferior)
6657         (any_thread_of_inferior, switch_to_thread)
6658         (enable_thread_stack_temporaries)
6659         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6660         (get_last_thread_stack_temporary)
6661         (value_in_thread_stack_temporaries, can_access_registers_thread):
6662         Spell out "struct thread_info" instead of just "thread_info".
6663         * inferior.h (notice_new_inferior): Likewise.
6664
6665 2018-06-25  Pedro Alves  <palves@redhat.com>
6666
6667         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6668         pass thread_info pointer to delete_thread.
6669         (windows_nat_target::detach): Pass inferior pointer to
6670         detach_inferior.
6671         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
6672         delete_thread.
6673         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
6674         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
6675         and pass a thread_info pointer to delete_thread.
6676         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
6677         pass thread_info pointer to delete_thread.
6678         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
6679         delete_thread_silent call.
6680         * procfs.c (procfs_target::detach): Pass inferior pointer to
6681         detach_inferior.
6682         (procfs_target::wait): Pass thread_info pointer to delete_thread.
6683         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
6684         delete_thread_silent call.
6685         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6686         pass thread_info pointer to delete_thread.
6687         (windows_nat_target::detach): Pass inferior pointer to
6688         delete_inferior.
6689
6690 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6691
6692         * regcache.c (readable_regcache::read_part): Fix asserts.
6693         (reg_buffer::raw_collect_part): New function.
6694         (regcache::write_part): Fix asserts.
6695         (reg_buffer::raw_supply_part): New function.
6696         (regcache::transfer_regset_register): New helper function.
6697         (regcache::transfer_regset): Call new functions.
6698         (regcache_supply_regset): Use gdb_byte*.
6699         (regcache::supply_regset): Likewise.
6700         (regcache_collect_regset): Likewise.
6701         (regcache::collect_regset): Likewise.
6702         * regcache.h (reg_buffer::raw_collect_part): New declaration.
6703         (reg_buffer::raw_supply_part): Likewise.
6704         (regcache::transfer_regset_register): Likewise.
6705         (regcache::transfer_regset): Use gdb_byte*.
6706
6707 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6708
6709         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
6710
6711 2018-06-21  Pedro Alves  <palves@redhat.com>
6712
6713         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
6714         instead of a ptid_t.  All callers adjusted.
6715         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
6716         adjusted.
6717         (print_ada_task_info, display_current_task_id, task_command_1):
6718         Adjust.
6719         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
6720         inferior_thread.
6721         (breakpoint_kind): Adjust.
6722         (remove_breakpoints_pid): Rename to ...
6723         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
6724         pointer.  All callers adjusted.
6725         (bpstat_clear_actions): Use inferior_thread.
6726         (get_bpstat_thread): New.
6727         (bpstat_do_actions): Use it.
6728         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
6729         to take a thread_info pointer.  All callers adjusted.
6730         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
6731         (breakpoint_re_set_thread): Use inferior_thread.
6732         * breakpoint.h (struct inferior): Forward declare.
6733         (bpstat_stop_status): Update.
6734         (remove_breakpoints_pid): Delete.
6735         (remove_breakpoints_inf): New.
6736         * bsd-uthread.c (bsd_uthread_target::wait)
6737         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
6738         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
6739         (maint_btrace_packet_history_cmd)
6740         (maint_btrace_clear_packet_history_cmd): Adjust.
6741         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
6742         inferior_thread.
6743         * cli/cli-interp.c: Include "inferior.h".
6744         * common/refcounted-object.h (struct
6745         refcounted_object_ref_policy): New.
6746         * compile/compile-object-load.c: Include gdbthread.h.
6747         (store_regs): Use inferior_thread.
6748         * corelow.c (core_target::close): Use current_inferior.
6749         (core_target_open): Adjust to use first_thread_of_inferior and use
6750         the current inferior.
6751         * ctf.c (ctf_target::close): Adjust to use current_inferior.
6752         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
6753         <thread>: ... this new field.  All references adjusted.
6754         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
6755         Take a thread_info pointer instead of a ptid_t.
6756         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
6757         (dummy_frame_discard, register_dummy_frame_dtor): Take a
6758         thread_info pointer instead of a ptid_t.
6759         * elfread.c: Include "inferior.h".
6760         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
6761         Use inferior_thread.
6762         * eval.c (evaluate_subexp): Likewise.
6763         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
6764         inferior_thread.
6765         * gdb_proc_service.h (struct thread_info): Forward declare.
6766         (struct ps_prochandle) <ptid>: Delete, replaced by ...
6767         <thread>: ... this new field.  All references adjusted.
6768         * gdbarch.h, gdbarch.c: Regenerate.
6769         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
6770         'thread' parameter.  All implementations and callers adjusted.
6771         * gdbthread.h (thread_info) <set_running>: New method.
6772         (delete_thread, delete_thread_silent): Take a thread_info pointer
6773         instead of a ptid.
6774         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
6775         (first_thread_of_process): Delete, replaced by ...
6776         (first_thread_of_inferior): ... this new function.  All callers
6777         adjusted.
6778         (any_live_thread_of_process): Delete, replaced by ...
6779         (any_live_thread_of_inferior): ... this new function.  All callers
6780         adjusted.
6781         (switch_to_thread, switch_to_no_thread): Declare.
6782         (is_executing): Delete.
6783         (enable_thread_stack_temporaries): Update comment.
6784         <enable_thread_stack_temporaries>: Take a thread_info pointer
6785         instead of a ptid_t.  Incref the thread.
6786         <~enable_thread_stack_temporaries>: Decref the thread.
6787         <m_ptid>: Delete
6788         <m_thr>: New.
6789         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6790         (get_last_thread_stack_temporary)
6791         (value_in_thread_stack_temporaries, can_access_registers_thread):
6792         Take a thread_info pointer instead of a ptid_t.  All callers
6793         adjusted.
6794         * infcall.c (get_call_return_value): Use inferior_thread.
6795         (run_inferior_call): Work with thread pointers instead of ptid_t.
6796         (call_function_by_hand_dummy): Work with thread pointers instead
6797         of ptid_t.  Use thread_info_ref.
6798         * infcmd.c (proceed_thread_callback): Access thread's state
6799         directly.
6800         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
6801         access thread's state directly.
6802         (continue_command): Use inferior_thread.
6803         (info_program_command): Use find_thread_ptid and access thread
6804         state directly.
6805         (proceed_after_attach_callback): Use thread state directly.
6806         (notice_new_inferior): Take a thread_info pointer instead of a
6807         ptid_t.  All callers adjusted.
6808         (exit_inferior): Take an inferior pointer instead of a pid.  All
6809         callers adjusted.
6810         (exit_inferior_silent): New.
6811         (detach_inferior): Delete.
6812         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
6813         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
6814         (detach_inferior_command, kill_inferior_command): Use
6815         find_inferior_id instead of valid_gdb_inferior_id and
6816         gdb_inferior_id_to_pid.
6817         (inferior_command): Use inferior and thread pointers.
6818         * inferior.h (struct thread_info): Forward declare.
6819         (notice_new_inferior): Take a thread_info pointer instead of a
6820         ptid_t.  All callers adjusted.
6821         (detach_inferior): Delete declaration.
6822         (exit_inferior, exit_inferior_silent): Take an inferior pointer
6823         instead of a pid.  All callers adjusted.
6824         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
6825         (valid_gdb_inferior_id): Delete.
6826         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
6827         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
6828         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
6829         ...
6830         <inf>: ... this new field.
6831         <step_ptid>: Delete, replaced by ...
6832         <step_thread>: ... this new field.
6833         (get_displaced_stepping_state): Take an inferior pointer instead
6834         of a pid.  All callers adjusted.
6835         (displaced_step_in_progress_any_inferior): Adjust.
6836         (displaced_step_in_progress_thread): Take a thread pointer instead
6837         of a ptid_t.  All callers adjusted.
6838         (displaced_step_in_progress, add_displaced_stepping_state): Take
6839         an inferior pointer instead of a pid.  All callers adjusted.
6840         (get_displaced_step_closure_by_addr): Adjust.
6841         (remove_displaced_stepping_state): Take an inferior pointer
6842         instead of a pid.  All callers adjusted.
6843         (displaced_step_prepare_throw, displaced_step_prepare)
6844         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
6845         All callers adjusted.
6846         (start_step_over): Adjust.
6847         (infrun_thread_ptid_changed): Remove bit updating ptids in the
6848         displaced step queue.
6849         (do_target_resume): Adjust.
6850         (fetch_inferior_event): Use inferior_thread.
6851         (context_switch, get_inferior_stop_soon): Take an
6852         execution_control_state pointer instead of a ptid_t.  All callers
6853         adjusted.
6854         (switch_to_thread_cleanup): Delete.
6855         (stop_all_threads): Use scoped_restore_current_thread.
6856         * inline-frame.c: Include "gdbthread.h".
6857         (inline_state) <inline_state>: Take a thread pointer instead of a
6858         ptid_t.  All callers adjusted.
6859         <ptid>: Delete, replaced by ...
6860         <thread>: ... this new field.
6861         (find_inline_frame_state): Take a thread pointer instead of a
6862         ptid_t.  All callers adjusted.
6863         (skip_inline_frames, step_into_inline_frame)
6864         (inline_skipped_frames, inline_skipped_symbol): Take a thread
6865         pointer instead of a ptid_t.  All callers adjusted.
6866         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
6867         (inline_skipped_frames, inline_skipped_symbol): Likewise.
6868         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
6869         pointers directly.
6870         * linux-nat.c (get_detach_signal): Likewise.
6871         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
6872         (thread_db_notice_clone): Adjust.
6873         (thread_db_find_new_threads_silently)
6874         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
6875         a thread pointer instead of a ptid_t.  All callers adjusted.
6876         * mi/mi-cmd-var.c: Include "inferior.h".
6877         (mi_cmd_var_update_iter): Update to use thread pointers.
6878         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
6879         inferior directly.
6880         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
6881         out to ...
6882         (mi_output_running): ... this new function.
6883         (mi_on_resume_1): Adjust to use it.
6884         (mi_user_selected_context_changed): Adjust to use inferior_thread.
6885         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
6886         directly.
6887         (interrupt_thread_callback): : Adjust to use thread and inferior
6888         pointers.
6889         * proc-service.c: Include "gdbthread.h".
6890         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
6891         * progspace-and-thread.c: Include "inferior.h".
6892         * progspace.c: Include "inferior.h".
6893         * python/py-exitedevent.c (create_exited_event_object): Adjust to
6894         hold a reference to an inferior_object.
6895         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
6896         inferior_thread.
6897         * python/py-inferior.c (struct inferior_object): Give the type a
6898         tag name instead of a typedef.
6899         (python_on_normal_stop): No need to check if the current thread is
6900         listed.
6901         (inferior_to_inferior_object): Change return type to
6902         inferior_object.  All callers adjusted.
6903         (find_thread_object): Delete, bits factored out to ...
6904         (thread_to_thread_object): ... this new function.
6905         * python/py-infthread.c (create_thread_object): Use
6906         inferior_to_inferior_object.
6907         (thpy_is_stopped): Use thread pointer directly.
6908         (gdbpy_selected_thread): Use inferior_thread.
6909         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
6910         field, replaced with ...
6911         <thread>: ... this new field.  All users adjusted.
6912         (btpy_insn_or_gap_new): Drop const.
6913         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
6914         callers adjusted.
6915         * python/py-record.c: Include "gdbthread.h".
6916         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6917         a ptid_t.  All callers adjusted.
6918         (gdbpy_current_recording): Use inferior_thread.
6919         * python/py-record.h (recpy_record_object) <ptid>: Delete
6920         field, replaced with ...
6921         <thread>: ... this new field.  All users adjusted.
6922         (recpy_element_object) <ptid>: Delete
6923         field, replaced with ...
6924         <thread>: ... this new field.  All users adjusted.
6925         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6926         a ptid_t.  All callers adjusted.
6927         * python/py-threadevent.c: Include "gdbthread.h".
6928         (get_event_thread): Use thread_to_thread_object.
6929         * python/python-internal.h (struct inferior_object): Forward
6930         declare.
6931         (find_thread_object, find_inferior_object): Delete declarations.
6932         (thread_to_thread_object, inferior_to_inferior_object): New
6933         declarations.
6934         * record-btrace.c: Include "inferior.h".
6935         (require_btrace_thread): Use inferior_thread.
6936         (record_btrace_frame_sniffer)
6937         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
6938         (get_thread_current_frame): Use scoped_restore_current_thread and
6939         switch_to_thread.
6940         (get_thread_current_frame): Use thread pointer directly.
6941         (record_btrace_replay_at_breakpoint): Use thread's inferior
6942         pointer directly.
6943         * record-full.c: Include "inferior.h".
6944         * regcache.c: Include "gdbthread.h".
6945         (get_thread_arch_regcache): Use the inferior's address space
6946         directly.
6947         (get_thread_regcache, registers_changed_thread): New.
6948         * regcache.h (get_thread_regcache(thread_info *thread)): New
6949         overload.
6950         (registers_changed_thread): New.
6951         (remote_target) <remote_detach_1>: Swap order of parameters.
6952         (remote_add_thread): <remote_add_thread>: Return the new thread.
6953         (get_remote_thread_info(ptid_t)): New overload.
6954         (remote_target::remote_notice_new_inferior): Use thread pointers
6955         directly.
6956         (remote_target::process_initial_stop_replies): Use
6957         thread_info::set_running.
6958         (remote_target::remote_detach_1, remote_target::detach)
6959         (extended_remote_target::detach): Adjust.
6960         * stack.c (frame_show_address): Use inferior_thread.
6961         * target-debug.h (target_debug_print_thread_info_pp): New.
6962         * target-delegates.c: Regenerate.
6963         * target.c (default_thread_address_space): Delete.
6964         (memory_xfer_partial_1): Use current_inferior.
6965         (target_detach): Use current_inferior.
6966         (target_thread_address_space): Delete.
6967         (generic_mourn_inferior): Use current_inferior.
6968         * target.h (struct target_ops) <thread_address_space>: Delete.
6969         (target_thread_address_space): Delete.
6970         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
6971         pointers directly.
6972         (delete_thread_1, delete_thread, delete_thread_silent): Take a
6973         thread pointer instead of a ptid_t.  Adjust all callers.
6974         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
6975         (first_thread_of_process): Delete, replaced by ...
6976         (first_thread_of_inferior): ... this new function.  All callers
6977         adjusted.
6978         (any_thread_of_process): Rename to ...
6979         (any_thread_of_inferior): ... this, and take an inferior pointer.
6980         (any_live_thread_of_process): Rename to ...
6981         (any_live_thread_of_inferior): ... this, and take an inferior
6982         pointer.
6983         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6984         (value_in_thread_stack_temporaries)
6985         (get_last_thread_stack_temporary): Take a thread pointer instead
6986         of a ptid_t.  Adjust all callers.
6987         (thread_info::set_running): New.
6988         (validate_registers_access): Use inferior_thread.
6989         (can_access_registers_ptid): Rename to ...
6990         (can_access_registers_thread): ... this, and take a thread
6991         pointer.
6992         (print_thread_info_1): Adjust to compare thread pointers instead
6993         of ptids.
6994         (switch_to_no_thread, switch_to_thread): Make extern.
6995         (scoped_restore_current_thread::~scoped_restore_current_thread):
6996         Use m_thread pointer directly.
6997         (scoped_restore_current_thread::scoped_restore_current_thread):
6998         Use inferior_thread.
6999         (thread_command): Use thread pointer directly.
7000         (thread_num_make_value_helper): Use inferior_thread.
7001         * top.c (execute_command): Use inferior_thread.
7002         * tui/tui-interp.c: Include "inferior.h".
7003         * varobj.c (varobj_create): Use inferior_thread.
7004         (value_of_root_1): Use find_thread_global_id instead of
7005         global_thread_id_to_ptid.
7006
7007 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
7008
7009         * regcache.c (readable_regcache::read_part): Avoid memcpy when
7010         possible.
7011         (regcache::write_part): Likewise.
7012         (readable_regcache::cooked_read_part): Update comment.
7013         (readable_regcache::cooked_write_part): Likewise.
7014         * regcache.h: (readable_regcache::read_part): Likewise.
7015         (regcache::write_part): Likewise.
7016
7017 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
7018             Dirk Schubert  <dirk.schubert@arm.com>
7019
7020         * aarch64-linux-nat.c (post_attach): New.
7021         (aarch64_linux_nat_target::post_attach): Override post_attach to
7022         record the number of hardware debug registers.
7023
7024 2018-06-20  Tom Tromey  <tom@tromey.com>
7025
7026         * python/py-param.c (add_setshow_generic): Make parameters const.
7027         (parmpy_init): Update.
7028
7029 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
7030
7031         * regcache.h (regcache_cooked_read_ftype): Rename to...
7032         (register_read_ftype): ...this, change type to function_view.
7033         (class reg_buffer) <save>: Remove src parameter.
7034         (readonly_detached_regcache) <readonly_detached_regcache>: Make
7035         parameter non-const in first overload.  Remove src parameter in
7036         second overload.
7037         * regcache.c (do_cooked_read): Remove.
7038         (readonly_detached_regcache::readonly_detached_regcache): Make
7039         parameter non-const, adjust call to other constructor.
7040         (reg_buffer::save): Remove src parameter.
7041         * frame.c (do_frame_register_read): Remove.
7042         (frame_save_as_regcache): Use lambda function.
7043         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
7044         parameter to ppu2spu_data *.
7045         (ppu2spu_sniffer): Use lambda function.
7046
7047 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
7048
7049         * record-full.c (record_full_target::insert_breakpoint): Remove
7050         "struct" keyword, add const.
7051
7052 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
7053
7054         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
7055         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
7056         * configure.ac: Remove AC_PREREQ, add missing quoting.
7057         * gnulib/configure.ac: Modernize usage of
7058         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
7059         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
7060         (AUTOMAKE_VERSION): Bump to 1.15.1.
7061         * configure: Re-generate.
7062         * config.in: Re-generate.
7063         * aclocal.m4: Re-generate.
7064         * gnulib/aclocal.m4: Re-generate.
7065         * gnulib/config.in: Re-generate.
7066         * gnulib/configure: Re-generate.
7067         * gnulib/import/Makefile.in: Re-generate.
7068
7069 2018-06-19  Pedro Alves  <palves@redhat.com>
7070
7071         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
7072         (lookup_minimal_symbol_by_pc_section): ... here with
7073         gdb_assert_not_reached added.
7074
7075 2018-06-19  Pedro Alves  <palves@redhat.com>
7076
7077         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
7078         parameter with a block parameter.  Compare location's block symbol
7079         with the frame's block instead of addresses.
7080         (skip_inline_frames): Pass the current block instead of the
7081         frame's address.  Break out as soon as we determine the frame
7082         should not be skipped.
7083
7084 2018-06-18  Tom Tromey  <tom@tromey.com>
7085
7086         * solib-aix.c (solib_aix_get_section_offsets): Return
7087         unique_xmalloc_ptr.
7088         (solib_aix_solib_create_inferior_hook): Update.
7089
7090 2018-06-18  Tom Tromey  <tom@tromey.com>
7091
7092         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
7093
7094 2018-06-18  Tom Tromey  <tom@tromey.com>
7095
7096         * solib-frv.c (frv_relocate_main_executable): Use
7097         unique_xmalloc_ptr.
7098         * solib-dsbt.c (dsbt_relocate_main_executable): Use
7099         unique_xmalloc_ptr.
7100
7101 2018-06-18  Tom Tromey  <tom@tromey.com>
7102
7103         * objfiles.h (inhibit_section_map_updates): Update.
7104         (resume_section_map_updates, resume_section_map_updates_cleanup):
7105         Remove.
7106         * solib-svr4.c (svr4_handle_solib_event): Update.
7107         * objfiles.c (inhibit_section_map_updates): Return
7108         scoped_restore_tmpl<int>.
7109         (resume_section_map_updates, resume_section_map_updates_cleanup):
7110         Remove.
7111
7112 2018-06-18  Tom Tromey  <tom@tromey.com>
7113
7114         * valprint.h (read_string): Update.
7115         * valprint.c (read_string): Change type of "buffer".
7116         (val_print_string): Update.
7117         * python/py-value.c (valpy_string): Update.
7118         * language.h (struct language_defn) <la_get_string>: Change
7119         type of "buffer".
7120         (default_get_string, c_get_string): Update.
7121         * language.c (default_get_string): Change type of "buffer".
7122         * guile/scm-value.c (gdbscm_value_to_string): Update.
7123         * c-lang.c (c_get_string): Change type of "buffer".
7124
7125 2018-06-18  Tom Tromey  <tom@tromey.com>
7126
7127         * ser-mingw.c (struct pipe_state_destroyer): New.
7128         (pipe_state_up): New typedef.
7129         (cleanup_pipe_state): Remove.
7130         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
7131
7132 2018-06-18  Tom Tromey  <tom@tromey.com>
7133
7134         * rust-lang.h (rust_yyerror): Don't declare.
7135         * rust-lang.c (rust_language_defn): Update.
7136         * rust-exp.y (yyerror): Now static.
7137         * parse.c (parse_exp_in_context_1): Update.
7138         * p-lang.h (p_yyerror): Don't declare.
7139         * p-lang.c (p_language_defn): Update.
7140         * p-exp.y (yyerror): Now static.
7141         * opencl-lang.c (opencl_language_defn): Update.
7142         * objc-lang.c (objc_language_defn): Update.
7143         * m2-lang.h (m2_yyerror): Don't declare.
7144         * m2-lang.c (m2_language_defn): Update.
7145         * m2-exp.y (yyerror): Now static.
7146         * language.h (struct language_defn) <la_error>: Remove.
7147         * language.c (unk_lang_error): Remove.
7148         (unknown_language_defn, auto_language_defn): Remove.
7149         * go-lang.h (go_yyerror): Don't declare.
7150         * go-lang.c (go_language_defn): Update.
7151         * go-exp.y (yyerror): Now static.
7152         * f-lang.h (f_yyerror): Don't declare.
7153         * f-lang.c (f_language_defn): Update.
7154         * f-exp.y (yyerror): Now static.
7155         * d-lang.h (d_yyerror): Don't declare.
7156         * d-lang.c (d_language_defn): Update.
7157         * d-exp.y (yyerror): Now static.
7158         * c-lang.h (c_yyerror): Don't declare.
7159         * c-lang.c (c_language_defn, cplus_language_defn)
7160         (asm_language_defn, minimal_language_defn): Update.
7161         * c-exp.y (yyerror): Now static.
7162         * ada-lang.h (ada_yyerror): Don't declare.
7163         * ada-lang.c (ada_language_defn): Update.
7164         * ada-exp.y (yyerror): Now static.
7165
7166 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
7167
7168         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
7169         (store_sveregs_to_thread): Likewise.
7170         (aarch64_linux_fetch_inferior_registers): Check for SVE.
7171         (aarch64_linux_store_inferior_registers): Likewise.
7172         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
7173         function.
7174         (aarch64_sve_regs_copy_to_regcache): Likewise.
7175         (aarch64_sve_regs_copy_from_regcache): Likewise.
7176         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
7177         declaration.
7178         (aarch64_sve_regs_copy_to_regcache): Likewise.
7179         (aarch64_sve_regs_copy_from_regcache): Likewise.
7180         (sve_context): Structure from Linux headers.
7181         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
7182         (SVE_SIG_ZREG_SIZE): Likewise.
7183         (SVE_SIG_PREG_SIZE): Likewise.
7184         (SVE_SIG_FFR_SIZE): Likewise.
7185         (SVE_SIG_REGS_OFFSET): Likewise.
7186         (SVE_SIG_ZREGS_OFFSET): Likewise.
7187         (SVE_SIG_ZREG_OFFSET): Likewise.
7188         (SVE_SIG_ZREGS_SIZE): Likewise.
7189         (SVE_SIG_PREGS_OFFSET): Likewise.
7190         (SVE_SIG_PREG_OFFSET): Likewise.
7191         (SVE_SIG_PREGS_SIZE): Likewise.
7192         (SVE_SIG_FFR_OFFSET): Likewise.
7193         (SVE_SIG_REGS_SIZE): Likewise.
7194         (SVE_SIG_CONTEXT_SIZE): Likewise.
7195         (SVE_PT_REGS_MASK): Likewise.
7196         (SVE_PT_REGS_FPSIMD): Likewise.
7197         (SVE_PT_REGS_SVE): Likewise.
7198         (SVE_PT_VL_INHERIT): Likewise.
7199         (SVE_PT_VL_ONEXEC): Likewise.
7200         (SVE_PT_REGS_OFFSET): Likewise.
7201         (SVE_PT_FPSIMD_OFFSET): Likewise.
7202         (SVE_PT_FPSIMD_SIZE): Likewise.
7203         (SVE_PT_SVE_ZREG_SIZE): Likewise.
7204         (SVE_PT_SVE_PREG_SIZE): Likewise.
7205         (SVE_PT_SVE_FFR_SIZE): Likewise.
7206         (SVE_PT_SVE_FPSR_SIZE): Likewise.
7207         (SVE_PT_SVE_FPCR_SIZE): Likewise.
7208         (__SVE_SIG_TO_PT): Likewise.
7209         (SVE_PT_SVE_OFFSET): Likewise.
7210         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
7211         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
7212         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
7213         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
7214         (SVE_PT_SVE_PREG_OFFSET): Likewise.
7215         (SVE_PT_SVE_PREGS_SIZE): Likewise.
7216         (SVE_PT_SVE_FFR_OFFSET): Likewise.
7217         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
7218         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
7219         (SVE_PT_SVE_SIZE): Likewise.
7220         (SVE_PT_SIZE): Likewise.
7221         (HAS_SVE_STATE): New define.
7222
7223 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
7224
7225         * nat/aarch64-sve-linux-sigcontext.h: New file.
7226         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
7227         new files.
7228         (SVE_VQ_MIN): Likewise.
7229         (SVE_VQ_MAX): Likewise.
7230         (SVE_VL_MIN): Likewise.
7231         (SVE_VL_MAX): Likewise.
7232         (SVE_NUM_ZREGS): Likewise.
7233         (SVE_NUM_PREGS): Likewise.
7234         (sve_vl_valid): Likewise.
7235         (struct user_sve_header): Likewise.
7236
7237 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
7238             Richard Bunt <Richard.Bunt@arm.com>
7239
7240         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
7241         was requested by GDB.
7242
7243 2018-06-15  Tom de Vries  <tdevries@suse.de>
7244
7245         * MAINTAINERS (Write After Approval): Add Tom de Vries.
7246
7247 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
7248
7249         * gnulib/update-gnulib.sh: Print expected versions of
7250         autoconf/aclocal.
7251
7252 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
7253
7254         * arch-utils.c (default_type_align): Use type_length_units.
7255         * gdbtypes.c (type_align): Use type_length_units.
7256
7257 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7258
7259         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
7260         of 'define' command.
7261
7262 2018-06-14  Tom de Vries  <tdevries@suse.de>
7263
7264         PR cli/22573
7265         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
7266         get_no_prettyformat_print_options.
7267
7268 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
7269
7270         * sparc-nat.h: Include target.h.
7271         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
7272         <fetch_registers>: Remove this argument in function call.
7273         <store_registers>: Remove this argument in function call, remove
7274         extra semicolon.
7275         <low_forget_process>: Call sparc64_forget_process instead of
7276         sparc_forget_process.
7277
7278 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
7279
7280         * procfs.c (_initialize_procfs): Use add_inf_child_target.
7281         (procfs_target::make_corefile_notes): Adjust to new
7282         target_read_alloc return type.
7283
7284 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7285             Stephen Roberts  <stephen.roberts@arm.com>
7286
7287         PR gdb/22882
7288         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
7289         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
7290         Move should_notify_stop local into more inner scope.
7291
7292 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7293             Stephen Roberts  <stephen.roberts@arm.com>
7294
7295         PR gdb/22882
7296         * infrun.c (resume_1): Add call to mark_async_event_handler.
7297
7298 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7299
7300         * infrun.c (do_target_wait): Change old version of $pc printed.
7301
7302 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
7303
7304         * dwarf2read.c (read_index_from_section): Rename to...
7305         (read_gdb_index_from_section): ... this, update all callers.
7306         (dwarf2_read_index): Rename to...
7307         (dwarf2_read_gdb_index): ... this, update all callers.
7308
7309 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
7310
7311         * gdb/hppa-linux-nat.c
7312         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
7313         hppa_linux_nat_target::fetch_registers.
7314
7315 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7316
7317         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
7318         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
7319         (AARCH64_DWARF_SVE_FFR): Likewise.
7320         (AARCH64_DWARF_SVE_P0): Likewise.
7321         (AARCH64_DWARF_SVE_Z0): Likewise.
7322
7323 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7324
7325         * common/common-regcache.h (raw_compare): New function.
7326         * regcache.c (regcache::raw_compare): Likewise.
7327         * regcache.h (regcache::raw_compare): New declaration.
7328
7329 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7330
7331         * common/common-regcache.h (reg_buffer_common): New structure.
7332         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
7333         (reg_buffer::raw_supply): Likewise.
7334         (reg_buffer::raw_supply_integer): Likewise.
7335         (reg_buffer::raw_supply_zeroed): Likewise.
7336         (reg_buffer::raw_collect): Likewise.
7337         (reg_buffer::raw_collect_integer): Likewise.
7338         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
7339         (reg_buffer::raw_supply): Likewise.
7340         (reg_buffer::raw_supply_integer): Likewise.
7341         (reg_buffer::raw_supply_zeroed): Likewise.
7342         (reg_buffer::raw_collect): Likewise.
7343         (reg_buffer::raw_collect_integer): Likewise.
7344
7345 2018-06-10  Tom Tromey  <tom@tromey.com>
7346
7347         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
7348         (class remote_state) <stop_reply_queue>: Now std::vector.
7349         (remote_state::~remote_state)
7350         (remote_target::stop_reply_queue_length): Update.
7351         (struct queue_iter_param, remove_child_of_pending_fork)
7352         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
7353         (check_pending_event_prevents_wildcard_vcont_callback)
7354         (remove_stop_reply_for_inferior)
7355         (remove_stop_reply_of_remote_state)
7356         (remote_notif_remove_once_on_match)
7357         (stop_reply_match_ptid_and_ws)
7358         (remote_kill_child_of_pending_fork): Remove.
7359         (remote_target::remove_new_fork_children)
7360         (remote_target::check_pending_events_prevent_wildcard_vcont)
7361         (remote_target::discard_pending_stop_replies)
7362         (remote_target::discard_pending_stop_replies_in_queue)
7363         (remote_target::remote_notif_remove_queued_reply)
7364         (remote_target::queued_stop_reply)
7365         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
7366         (remote_target::wait, remote_target::kill_new_fork_children)
7367         (remote_target::async): Update.
7368
7369 2018-06-10  Tom Tromey  <tom@tromey.com>
7370
7371         * record-full.c (record_full_arch_list_cleanups): Remove.
7372         (record_full_message): Use try/catch.
7373         (record_full_wait_cleanups): Remove.
7374         (record_full_wait_1): Use try/catch.
7375         (record_full_restore): Likewise.
7376
7377 2018-06-10  Tom Tromey  <tom@tromey.com>
7378
7379         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
7380         declare VEC.  Add constructor.
7381         <in_target_beneath>: Now bool.
7382         (record_full_breakpoints): Now a std::vector, static.
7383         (record_full_sync_record_breakpoints)
7384         (record_full_init_record_breakpoints)
7385         (record_full_target::insert_breakpoint)
7386         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
7387
7388 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
7389
7390         * dwarf2read.c (process_cu_includes): Remove struct keyword.
7391         * serial.c (serial_interface_lookup): Remove struct keyword.
7392
7393 2018-06-10  Tom Tromey  <tom@tromey.com>
7394
7395         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
7396         method.
7397         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
7398         a method.
7399         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
7400         method.
7401         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
7402         "beneath" as a method.
7403         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
7404         Use "beneath" as a method.
7405
7406 2018-06-10  Tom Tromey  <tom@tromey.com>
7407
7408         * tracefile.c (struct trace_file_writer_deleter): New.
7409         <operator()>: Rename from trace_file_writer_xfree.
7410         (trace_file_writer_up): New typedef.
7411         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
7412
7413 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
7414
7415         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
7416         <m_registers, m_register_status>: Change type to
7417         std::unique_ptr.
7418         * regcache.c (reg_buffer::reg_buffer): Use new instead of
7419         XCNEWVEC.
7420
7421 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
7422
7423         * common/common-regcache.h (enum register_status): Add
7424         underlying type "signed char".
7425         * regcache.h (reg_buffer) <m_register_status>: Change type to
7426         register_status *.
7427         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
7428         register_status instead of signed char.
7429         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
7430         (reg_buffer::get_register_status): Remove cast.
7431         (readable_regcache::raw_read): Remove cast.
7432         (readable_regcache::cooked_read): Remove cast.
7433
7434 2018-06-09  Tom Tromey  <tom@tromey.com>
7435
7436         * source.c (reverse_search_command, forward_search_command): Use
7437         scoped_fd.
7438
7439 2018-06-09  Tom Tromey  <tom@tromey.com>
7440
7441         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
7442         (serial_ops_list): Now static, std::vector.
7443         (serial_interface_lookup, serial_add_interface): Update.
7444
7445 2018-06-09  Tom Tromey  <tom@tromey.com>
7446
7447         * dwarf2read.c (process_cu_includes): Update.
7448         (process_full_comp_unit): Update.
7449         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
7450         std::vector.
7451
7452 2018-06-08  Paul Koning  <paul_koning@dell.com>
7453
7454         PR gdb/23252
7455
7456         * python/python.c (do_start_initialization):
7457         Avoid call to internal Python API.
7458         (init__gdb_module): New function.
7459
7460 2018-06-08  Gary Benson <gbenson@redhat.com>
7461
7462         * linux-thread-db.c (valprint.h): New include.
7463         (struct check_thread_db_info): New structure.
7464         (check_thread_db_on_load, tdb_testinfo): New static globals.
7465         (check_thread_db, check_thread_db_callback): New functions.
7466         (try_thread_db_load_1): Run integrity checks if requested.
7467         (maintenance_check_libthread_db): New function.
7468         (_initialize_thread_db): Register "maint check libthread-db"
7469         and "maint set/show check-libthread-db".
7470         * NEWS: Mention the above new commands.
7471
7472 2018-06-08  Tom Tromey  <tom@tromey.com>
7473
7474         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
7475         now a method.
7476
7477 2018-06-08  Tom Tromey  <tom@tromey.com>
7478
7479         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
7480
7481 2018-06-08  Tom Tromey  <tom@tromey.com>
7482
7483         * common/btrace-common.h (struct btrace_data): Add constructor,
7484         destructor, move assignment operator.
7485         <empty, clear, fini>: New methods.
7486         <format>: Initialize.
7487         (btrace_data_init, btrace_data_fini, btrace_data_clear)
7488         (btrace_data_empty): Don't declare.
7489         * common/btrace-common.c (btrace_data_init): Remove.
7490         (btrace_data::fini): Rename from btrace_data_fini.
7491         (btrace_data::empty): Rename from btrace_data_empty.
7492         (btrace_data::clear): Rename from btrace_data_clear.  Return
7493         bool.
7494         * btrace.h (make_cleanup_btrace_data): Don't declare.
7495         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
7496         (parse_xml_btrace): Update.
7497         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
7498         (maint_btrace_clear_packet_history_cmd): Update.
7499
7500 2018-06-07  Pedro Alves  <palves@redhat.com>
7501
7502         * target.h (target_ops) <beneath>: Now a method.  All references
7503         updated.
7504         (class target_stack): New.
7505         * target.c (g_target_stack): New.
7506         (g_current_top_target): Delete.
7507         (current_top_target): Get the top target out of g_target_stack.
7508         (target_stack::push, target_stack::unpush): New.
7509         (push_target, unpush_target): Reimplement.
7510         (target_is_pushed): Reimplement in terms of g_target_stack.
7511         (target_ops::beneath, target_stack::find_beneath): New.
7512
7513 2018-06-07  Pedro Alves  <palves@redhat.com>
7514
7515         * target.h (find_target_beneath): Delete declaration.
7516         * target.c (find_target_beneath): Delete definition.
7517         * aix-thread.c: All callers of find_target_beneath adjusted to
7518         call target_ops::beneath instead.
7519         * bsd-uthread.c: Likewise.
7520         * linux-thread-db.c: Likewise.
7521         * ravenscar-thread.c: Likewise.
7522         * sol-thread.c: Likewise.
7523         * spu-multiarch.c: Likewise.
7524
7525 2018-06-07  Pedro Alves  <palves@redhat.com>
7526
7527         * target.h (target_ops) <beneath>: Now a method.  All references
7528         updated.
7529         (target_ops) <m_beneath>: New.
7530         * target.c (target_ops::beneath): New.
7531         * corelow.c: Adjust all references to target_ops::beneath.
7532         * linux-thread-db.c: Likewise.
7533         * make-target-delegates: Likewise.
7534         * record-btrace.c: Likewise.
7535         * record-full.c: Likewise.
7536         * remote.c: Likewise.
7537         * target.c: Likewise.
7538         * target-delegates.c: Regenerate.
7539
7540 2018-06-07  Pedro Alves  <palves@redhat.com>
7541
7542         * target.h (target_stack): Delete.
7543         (current_top_target): Declare function.
7544         * target.c (target_stack): Delete.
7545         (g_current_top_target): New.
7546         (current_top_target): New function.
7547         * auxv.c: Use current_top_target instead of target_stack
7548         throughout.
7549         * avr-tdep.c: Likewise.
7550         * breakpoint.c: Likewise.
7551         * corefile.c: Likewise.
7552         * elfread.c: Likewise.
7553         * eval.c: Likewise.
7554         * exceptions.c: Likewise.
7555         * frame.c: Likewise.
7556         * gdbarch-selftests.c: Likewise.
7557         * gnu-v3-abi.c: Likewise.
7558         * ia64-tdep.c: Likewise.
7559         * ia64-vms-tdep.c: Likewise.
7560         * infcall.c: Likewise.
7561         * infcmd.c: Likewise.
7562         * infrun.c: Likewise.
7563         * linespec.c: Likewise.
7564         * linux-tdep.c: Likewise.
7565         * minsyms.c: Likewise.
7566         * ppc-linux-nat.c: Likewise.
7567         * ppc-linux-tdep.c: Likewise.
7568         * procfs.c: Likewise.
7569         * regcache.c: Likewise.
7570         * remote.c: Likewise.
7571         * rs6000-tdep.c: Likewise.
7572         * s390-linux-nat.c: Likewise.
7573         * s390-tdep.c: Likewise.
7574         * solib-aix.c: Likewise.
7575         * solib-darwin.c: Likewise.
7576         * solib-dsbt.c: Likewise.
7577         * solib-spu.c: Likewise.
7578         * solib-svr4.c: Likewise.
7579         * solib-target.c: Likewise.
7580         * sparc-tdep.c: Likewise.
7581         * sparc64-tdep.c: Likewise.
7582         * spu-tdep.c: Likewise.
7583         * symfile.c: Likewise.
7584         * symtab.c: Likewise.
7585         * target-descriptions.c: Likewise.
7586         * target-memory.c: Likewise.
7587         * target.c: Likewise.
7588         * target.h: Likewise.
7589         * tracefile-tfile.c: Likewise.
7590         * tracepoint.c: Likewise.
7591         * valops.c: Likewise.
7592         * valprint.c: Likewise.
7593         * value.c: Likewise.
7594         * windows-tdep.c: Likewise.
7595         * mi/mi-main.c: Likewise.
7596
7597 2018-06-07  Tom Tromey  <tom@tromey.com>
7598
7599         * valprint.h (build_address_symbolic): Declare.
7600         * printcmd.c (print_address_symbolic): Update.
7601         (build_address_symbolic): Change "name" and "filename" to
7602         std::string.
7603         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
7604         Update.
7605         * defs.h (build_address_symbolic): Remove declaration.
7606
7607 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
7608
7609         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
7610         (aarch64_vnv_type): Add function.
7611         (aarch64_pseudo_register_name): Add V regs for SVE.
7612         (aarch64_pseudo_register_type): Likewise.
7613         (aarch64_pseudo_register_reggroup_p): Likewise.
7614         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
7615         (aarch64_pseudo_read_value): Add V regs for SVE.
7616         (aarch64_pseudo_write_2): Use V0 offset for SVE
7617         (aarch64_pseudo_write): Add V regs for SVE.
7618         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
7619
7620 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
7621
7622         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
7623         (sve_vl_from_vq): Likewise.
7624
7625 2018-06-05  Tom Tromey  <tom@tromey.com>
7626
7627         * cli/cli-cmds.c (show_version): Update.
7628         * top.c (print_gdb_version): Add "interactive" parameter.
7629         Update.
7630         * main.c (captured_main_1): Update.
7631         * top.h (print_gdb_version): Add "interactive" parameter and a
7632         comment.
7633
7634 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
7635
7636         * common/enum-flags.h: Add trailing semicolon to example in
7637         comment.
7638
7639 2018-06-05  Tom Tromey  <tom@tromey.com>
7640
7641         PR cli/12326:
7642         * NEWS: Add entry about pager.
7643         * utils.c (pagination_disabled_for_command): New global.
7644         (prompt_for_continue): Allow "c" response to prompt.
7645         (reinitialize_more_filter): Clear
7646         pagination_disabled_for_command.
7647         (fputs_maybe_filtered): Check pagination_disabled_for_command.
7648
7649 2018-06-04  Tom Tromey  <tom@tromey.com>
7650
7651         * ada-lang.h (ada_lookup_symbol_list): Update.
7652         * ada-lang.c (resolve_subexp): Update.
7653         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
7654         parameter.
7655         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
7656         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
7657         results parameter to std::vector.
7658         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
7659         Update.
7660         * ada-exp.y (block_lookup): Update.
7661         (select_possible_type_sym): Change type of syms.  Remove nsyms
7662         parameter.
7663         (write_var_or_type, write_name_assoc): Update.
7664
7665 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
7666
7667         * windows-nat.c (windows_nat_target::xfer_partial): Return
7668         TARGET_XFER_E_IO if we need to delegate to the target beneath
7669         but BENEATH is NULL.
7670
7671 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
7672
7673         * Makefile.in (config.status): Add configure.nat as a
7674         dependency.
7675
7676 2018-06-04  Tom Tromey  <tom@tromey.com>
7677
7678         * cp-name-parser.y (cpname_state): Add method declarations.
7679         (HANDLE_QUAL): Update.
7680         (cpname_state::d_grab, cpname_state::fill_comp)
7681         (cpname_state::make_operator, cpname_state::make_dtor)
7682         (cpname_state::make_builtin_type, cpname_state::make_name)
7683         (cpname_state::d_qualify, cpname_state::d_int_type)
7684         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
7685         (%union): Move earlier.
7686
7687 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7688
7689         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
7690
7691 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7692
7693         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
7694         (aarch64_pseudo_write_1): Likewise.
7695         (aarch64_pseudo_read_value): Use helper.
7696         (aarch64_pseudo_write): Likewise.
7697
7698 2018-06-04  Pedro Alves  <palves@redhat.com>
7699
7700         * darwin-nat.c (darwin_ops): Delete.
7701         (darwin_attach_pid): Use get_native_target.
7702
7703 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7704
7705         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
7706         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
7707
7708 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7709
7710         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
7711         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
7712         (aarch64_gdbarch_init): Check for SVE.
7713         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
7714
7715 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7716
7717         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
7718         * aarch64-tdep.h (aarch64_read_description): Likewise.
7719         * arch/aarch64.c (aarch64_create_target_description): Likewise.
7720         * arch/aarch64.h (aarch64_create_target_description): Likewise.
7721         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
7722         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
7723         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
7724
7725 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
7726
7727         * value.c (value_fetch_lazy_bitfield): New.
7728         (value_fetch_lazy_memory): New.
7729         (value_fetch_lazy_register): New.
7730         (value_fetch_lazy): Factor out to smaller functions.
7731
7732 2018-06-01  Tom Tromey  <tom@tromey.com>
7733
7734         * cp-name-parser.y (backslashable, represented): Now const.
7735
7736 2018-06-01  Tom Tromey  <tom@tromey.com>
7737
7738         * cp-name-parser.y: Include parser-defs.h.
7739         (parser_fprintf): Remove declaration.
7740
7741 2018-06-01  Tom Tromey  <tom@tromey.com>
7742
7743         * cp-name-parser.y: Use %pure-parser, %lex-param, and
7744         %parse-param.
7745         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
7746         (global_result): Remove globals.
7747         (struct cpname_state): New.
7748         (yyparse): Don't declare.
7749         (yylex, yyerror): Move declarations after %union.
7750         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
7751         (make_name): Add state parameter.
7752         Update all callers.
7753         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
7754         parameter.
7755         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
7756         Update.
7757         (yylex): Add lvalp, state parameters.
7758         (yyerror): Add state parameter.
7759         (cp_demangled_name_to_comp): Update.
7760
7761 2018-06-01  Tom Tromey  <tom@tromey.com>
7762
7763         * cp-name-parser.y (parser_fprintf): Declare.
7764         (GDB_YY_REMAP_PREFIX): Define.
7765         Include yy-remap.h.  Don't redefine yy* identifiers.
7766
7767 2018-06-01  Tom Tromey  <tom@tromey.com>
7768
7769         * python/py-type.c (typy_legacy_template_argument): Update.
7770         * cp-support.h (cp_demangled_name_to_comp): Update.
7771         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
7772         parameter to be a "std::string *".
7773         (main): Update.
7774
7775 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
7776
7777         * ada-lex.l: Include "diagnostics.h" instead of
7778         "common/diagnostics.h".
7779         * unittests/environ-selftests.c: Likewise.
7780         * common/diagnostics.h: Moved to ../include.
7781
7782 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
7783
7784         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
7785         to language_mode_manual while calling breakpoint_re_set_one.
7786
7787 2018-06-01  Tom Tromey  <tom@tromey.com>
7788
7789         * valops.c (value_cast_structs, destructor_name_p): Update.
7790         * symtab.c (gdb_mangle_name): Update.
7791         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
7792         Update.
7793         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
7794         (pascal_object_print_value_fields, pascal_object_print_value):
7795         Update.
7796         * p-typeprint.c (pascal_type_print_derivation_info): Update.
7797         * linespec.c (find_methods): Update.
7798         * gdbtypes.h (type_name_no_tag): Remove.
7799         (type_name_or_error): Rename from type_name_no_tag_or_error.
7800         * gdbtypes.c (type_name_no_tag): Remove.
7801         (type_name_or_error): Rename from type_name_no_tag_or_error.
7802         (lookup_struct_elt_type, check_typedef): Update.
7803         * expprint.c (print_subexp_standard): Update.
7804         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
7805         * d-namespace.c (d_lookup_nested_symbol): Update.
7806         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
7807         (cp_print_class_member): Update.
7808         * cp-namespace.c (cp_lookup_nested_symbol): Update.
7809         * completer.c (add_struct_fields): Update.
7810         * c-typeprint.c (cp_type_print_derivation_info)
7811         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
7812         Update.
7813         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
7814         (ada_prefer_type, ada_is_exception_sym): Update.
7815
7816 2018-06-01  Tom Tromey  <tom@tromey.com>
7817
7818         * valops.c (enum_constant_from_type, value_namespace_elt)
7819         (value_maybe_namespace_elt): Update.
7820         * valarith.c (find_size_for_pointer_math): Update.
7821         * target-descriptions.c (make_gdb_type): Update.
7822         * symmisc.c (print_symbol): Update.
7823         * stabsread.c (define_symbol, read_type)
7824         (complain_about_struct_wipeout, add_undefined_type)
7825         (cleanup_undefined_types_1): Update.
7826         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
7827         (rust_range_type_p, val_print_struct, rust_print_struct_def)
7828         (rust_internal_print_type, rust_composite_type)
7829         (rust_evaluate_funcall, rust_evaluate_subexp)
7830         (rust_inclusive_range_type_p): Update.
7831         * python/py-type.c (typy_get_tag): Update.
7832         * p-typeprint.c (pascal_type_print_base): Update.
7833         * mdebugread.c (parse_symbol, parse_type): Update.
7834         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
7835         Update.
7836         * guile/scm-type.c (gdbscm_type_tag): Update.
7837         * go-lang.c (sixg_string_p): Update.
7838         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
7839         Update.
7840         * gdbtypes.h (struct main_type) <tag_name>: Remove.
7841         (TYPE_TAG_NAME): Remove.
7842         * gdbtypes.c (type_name_no_tag): Simplify.
7843         (check_typedef, check_types_equal, recursive_dump_type)
7844         (copy_type_recursive, arch_composite_type): Update.
7845         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
7846         in summary mode when needed.
7847         * eval.c (evaluate_funcall): Update.
7848         * dwarf2read.c (fixup_go_packaging, read_structure_type)
7849         (process_structure_scope, read_enumeration_type)
7850         (read_namespace_type, read_module_type, determine_prefix): Update.
7851         * cp-support.c (inspect_type): Update.
7852         * coffread.c (process_coff_symbol, decode_base_type): Update.
7853         * c-varobj.c (c_is_path_expr_parent): Update.
7854         * c-typeprint.c (c_type_print_base_struct_union): Update.
7855         (c_type_print_base_1): Update.  Print struct/class/union/enum in
7856         summary when using C language.
7857         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
7858         (gen_maybe_namespace_elt): Update.
7859         * ada-lang.c (ada_type_name): Simplify.
7860         (empty_record, ada_template_to_fixed_record_type_1)
7861         (template_to_static_fixed_type)
7862         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
7863
7864 2018-06-01  Tom Tromey  <tom@tromey.com>
7865
7866         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
7867         c_print_type.
7868         * c-typeprint.c (c_print_type_1): Add "language" parameter.
7869         (c_print_type): Update.
7870         (c_print_type): New overload.
7871         (c_type_print_varspec_prefix, c_type_print_args)
7872         (c_type_print_varspec_suffix, c_print_type_no_offsets)
7873         (c_type_print_base_struct_union, c_type_print_base_1)
7874         (cp_type_print_method_args): Add "language" parameter.
7875         (c_type_print_base): Update.
7876         * c-lang.h (c_print_type): Add new overload.
7877
7878 2018-06-01  Tom Tromey  <tom@tromey.com>
7879
7880         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
7881         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
7882
7883 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
7884
7885         * aarch64-tdep.c (aarch64_sve_register_names): New const
7886         var.
7887         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
7888         (AARCH64_SVE_Z_REGS_NUM): New define.
7889         (AARCH64_SVE_P_REGS_NUM): Likewise.
7890         (AARCH64_SVE_NUM_REGS): Likewise.
7891
7892 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
7893
7894         * nat/linux-ptrace.h [__alpha__]
7895         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
7896         definitions.
7897
7898 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
7899
7900         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
7901         the endianness selected.
7902         * NEWS: Document `set endian auto' mode operation update.
7903
7904 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7905
7906         * Makefile.in: Add new header.
7907         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
7908         (sve_vl_from_vg): Likewise.
7909         (sve_vq_from_vl): Likewise.
7910         (sve_vl_from_vq): Likewise.
7911         (sve_vq_from_vg): Likewise.
7912         (sve_vg_from_vq): Likewise.
7913         * configure.nat: Add new c file.
7914         * nat/aarch64-sve-linux-ptrace.c: New file.
7915         * nat/aarch64-sve-linux-ptrace.h: New file.
7916
7917 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7918
7919         * aarch64-linux-nat.c (aarch64_linux_read_description):
7920         Add parmeter zero.
7921         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
7922         Likewise.
7923         * aarch64-tdep.c (tdesc_aarch64_list): Add.
7924         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
7925         (aarch64_gdbarch_init): Add parmeter zero.
7926         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
7927         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
7928         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
7929         parmeter.
7930         * doc/gdb.texinfo: Describe SVE feature
7931         * features/aarch64-sve.c: New file.
7932
7933 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
7934
7935         PR gdb/23210
7936         * gdbarch.sh (significant_addr_bit): Default to zero when
7937         not set by target architecture.
7938         * gdbarch.c: Re-generated.
7939         * utils.c (address_significant): Update.
7940
7941 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
7942
7943         * stack.c (func_command): Remove trailing newline in call to error.
7944
7945 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7946
7947         * regcache.h (regcache_raw_collect): Remove, update callers to
7948         use regcache::raw_collect.
7949         * regcache.c (regcache_raw_collect): Remove.
7950
7951 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7952
7953         * regcache.h (regcache_raw_supply): Remove, update callers to
7954         use detached_regcache::raw_supply.
7955         * regcache.c (regcache_raw_supply): Remove.
7956
7957 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7958
7959         * regcache.h (regcache_cooked_write_part): Remove, update
7960         callers to use regcache::cooked_write_part.
7961         * regcache.c (regcache_cooked_write_part): Remove.
7962
7963 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7964
7965         * regcache.h (regcache_cooked_read_part): Remove, update callers
7966         to use readable_regcache::cooked_read_part.
7967         * regcache.c (regcache_cooked_read_part): Remove.
7968
7969 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7970
7971         * regcache.h (regcache_cooked_read_value): Remove, update
7972         callers to use readable_regcache::cooked_read_value.
7973         * regcache.c (regcache_cooked_read_value): Remove.
7974
7975 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7976
7977         * regcache.h (regcache_cooked_write): Remove, update callers to
7978         use regcache::cooked_write.
7979         * regcache.c (regcache_cooked_write): Remove.
7980
7981 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7982
7983         * regcache.h (regcache_invalidate): Remove, update callers to
7984         use detached_regcache::invalidate instead.
7985         * regcache.c (regcache_invalidate): Remove.
7986
7987 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7988
7989         * regcache.h (regcache_raw_write_part): Remove, update callers
7990         to use regcache::raw_write_part instead.
7991         * regcache.c (regcache_raw_write_part): Remove.
7992
7993 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7994
7995         * regcache.h (regcache_raw_read_part): Remove, update callers to
7996         use readable_regcache::raw_read_part instead.
7997         * regcache.c (regcache_raw_read_part): Remove.
7998
7999 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8000
8001         * regcache.h (regcache_cooked_read): Remove, update callers to
8002         use readable_regcache::cooked_read instead.
8003         * regcache.c (regcache_cooked_read): Remove.
8004
8005 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8006
8007         * regcache.h (regcache_raw_write): Remove, update callers to use
8008         regcache::raw_write instead.
8009         * regcache.c (regcache_raw_write): Remove.
8010
8011 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8012
8013         * regcache.h (regcache_raw_read): Remove, update callers to use
8014         readable_regcache::raw_read instead.
8015         * regcache.c (regcache_raw_read): Remove.
8016
8017 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8018
8019         * regcache.h (regcache_raw_update): Remove, update callers to
8020         use readable_regcache::raw_update instead.
8021         * regcache.c (regcache_raw_update): Remove.
8022
8023 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8024
8025         * regcache.h (regcache_register_status): Remove, update callers
8026         to use reg_buffer::get_register_status directly instead.
8027         * regcache.c (regcache_register_status): Remove.
8028
8029 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8030
8031         * regcache.h (regcache_get_ptid): Remove, update all callers to
8032         call regcache::ptid instead.
8033         * regcache.c (regcache_get_ptid): Remove.
8034
8035 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8036
8037         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
8038
8039 2018-05-30  Pedro Alves  <palves@redhat.com>
8040
8041         * common/common-exceptions.h (exception_rethrow): Use
8042         ATTRIBUTE_NORETURN.
8043
8044 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
8045
8046         * breakpoint.c (print_solib_event, check_status_catch_solib):
8047         Remove struct keyword in range-based for loops.
8048         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
8049         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
8050         Likewise.
8051         * linespec.c (find_superclass_methods, search_minsyms_for_name):
8052         Likewise.
8053         * symfile.c (addr_info_make_relative): Likewise.
8054         * thread.c (value_in_thread_stack_temporaries): Likewise.
8055
8056 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
8057
8058         PR gdb/16841
8059         * valops.c (value_struct_elt_for_reference): Call check_typedef on
8060         aggregate type to get its real type before accessing it.
8061
8062 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
8063
8064         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
8065         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
8066         * coff-pe-read.c (add_pe_forwarded_sym): Replace
8067         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
8068         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
8069         * jit.c (jit_breakpoint_re_set_internal): Likewise.
8070         * printcmd.c (info_address_command): Likewise.
8071
8072 2018-05-29  Tom Tromey  <tom@tromey.com>
8073
8074         * windows-nat.c (handle_exception): Update fall-through comment.
8075
8076 2018-05-29  Tom Tromey  <tom@tromey.com>
8077
8078         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
8079         (struct program_space) <added_solibs>: Now a std::vector.
8080         * breakpoint.c (print_solib_event): Update.
8081         (check_status_catch_solib): Update.
8082         * progspace.c (clear_program_space_solib_cache): Update.
8083         * solib.c (update_solib_list): Update.
8084
8085 2018-05-29  Tom Tromey  <tom@tromey.com>
8086
8087         * python/py-type.c (typy_richcompare): Update.
8088         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
8089         * gdbtypes.h (types_deeply_equal): Return bool.
8090         (types_equal): Likewise.
8091         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
8092         declare VEC.
8093         (check_types_equal): Change worklist to std::vector.  Return
8094         bool.
8095         (struct type_equality_entry): Add constructor.
8096         (compare_maybe_null_strings): Return bool.
8097         (check_types_worklist): Return bool.  Change worklist to
8098         std::vector.
8099         (types_deeply_equal): Use std::vector.
8100         (types_equal): Return bool.
8101         (compare_maybe_null_strings): Simplify.
8102
8103 2018-05-29  Tom Tromey  <tom@tromey.com>
8104
8105         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
8106
8107 2018-05-29  Tom Tromey  <tom@tromey.com>
8108
8109         * objc-lang.h: Don't include cp-support.h.
8110         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
8111         declare VEC.
8112
8113 2018-05-27  Tom Tromey  <tom@tromey.com>
8114
8115         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
8116
8117 2018-05-25  Tom Tromey  <tom@tromey.com>
8118
8119         * value.c (value::location): Initialize.
8120
8121 2018-05-25  Tom Tromey  <tom@tromey.com>
8122
8123         * dbxread.c (init_bincl_list): Remove.
8124         (bincl_list): Now a std::vector.
8125         (bincls_allocated, next_bincl): Remove.
8126         (free_bincl_list, do_free_bincl_list_cleanup)
8127         (make_cleanup_free_bincl_list): Remove.
8128         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
8129         unique_xmalloc_ptr.
8130         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
8131         (struct header_file_location): Add constructor.
8132         (add_bincl_to_list): Remove.
8133
8134 2018-05-25  Tom Tromey  <tom@tromey.com>
8135
8136         * tui/tui.c (tui_enable): Update.
8137         * mi/mi-interp.c (mi_interp::init): Update.
8138         * interps.h (class interp) <name>: New method.
8139         <m_name>: Rename from name.
8140         (~scoped_restore_interp): Update.
8141         * interps.c (interp::interp): Update.
8142         (interp_add, interp_set, interp_lookup_existing)
8143         (current_interp_named_p): Update.
8144
8145 2018-05-25  Tom Tromey  <tom@tromey.com>
8146
8147         * interps.c (interp_name): Remove.
8148         * mi/mi-interp.c (mi_interp::init): Update.
8149         * interps.h (interp_name): Remove.
8150         (~scoped_restore_interp): Update.
8151         * tui/tui.c (tui_enable): Update.
8152
8153 2018-05-25  Tom Tromey  <tom@tromey.com>
8154
8155         * utils.c (fputs_maybe_filtered): Update.
8156         * linespec.c (decode_line_full): Update.
8157         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
8158         (mi_print_breakpoint_for_event, mi_solib_loaded)
8159         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
8160         (mi_user_selected_context_changed): Update.
8161         * mi/mi-main.c (mi_execute_command): Update.
8162         * cli/cli-script.c (execute_control_command): Update.
8163         * python/python.c (execute_gdb_command): Update.
8164         * solib.c (info_sharedlibrary_command): Update.
8165         * interps.c (interp_ui_out): Remove.
8166         * interps.h (interp_ui_out): Remove.
8167
8168 2018-05-25  Tom Tromey  <tom@tromey.com>
8169
8170         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
8171         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
8172         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
8173
8174 2018-05-25  Tom Tromey  <tom@tromey.com>
8175
8176         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
8177         * interps.c (interp_exec): Use scoped_restore.
8178
8179 2018-05-25  Tom Tromey  <tom@tromey.com>
8180
8181         * remote.c (remote_target::remote_file_get): Use
8182         gdb::byte_vector.
8183         (remote_target::remote_file_put): Likewise.
8184
8185 2018-05-25  Tom Tromey  <tom@tromey.com>
8186
8187         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
8188         a std::string.
8189         (get_pe_section_index, add_pe_exported_sym): Update.
8190         (read_pe_exported_syms): Use gdb::def_vector.
8191
8192 2018-05-25  Tom Tromey  <tom@tromey.com>
8193
8194         * frame.c (remove_prev_frame): Remove.
8195         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
8196
8197 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
8198
8199         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
8200         Remove prototypes.
8201         * mips-linux-nat.c (supply_fpregset): Always call
8202         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
8203         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
8204         `mips_fill_fpregset'.
8205         * mips-linux-tdep.c (mips_supply_fpregset)
8206         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
8207         (mips_fill_fpregset_wrapper): Remove functions.
8208         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
8209         (mips_linux_fpregset): Remove variable.
8210         (mips_linux_iterate_over_regset_sections): Use
8211         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
8212         (mips_linux_o32_sigframe_init): Remove comment.
8213
8214 2018-05-25  Pedro Alves  <palves@redhat.com>
8215
8216         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
8217         (struct readahead_cache, struct packet_reg, struct
8218         remote_arch_state, class remote_state): Move higher up in the
8219         file.
8220         (remote_target::m_remote_state): Now an object instead of a pointer.
8221         (remote_target::get_remote_state): Adjust.
8222
8223 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
8224
8225         * stack.c (select_and_print_frame): Delete.
8226         (struct function_bounds): Move struct within function.
8227         (func_command): Most content moved into new function
8228         find_frame_for_function, use new function, print result, add
8229         function comment.
8230         (find_frame_for_function): New function, now returns a result.
8231
8232 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8233
8234         * stack.c (iterate_over_block_arg_vars): Fix comment.
8235         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
8236
8237 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
8238
8239         PR gdb/23203
8240         * frame.c
8241         (scoped_restore_selected_frame::scoped_restore_selected_frame):
8242         Define.
8243         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
8244         Define.
8245         * frame.h (class scoped_restore_selected_frame): New class.
8246         * stack.c (print_frame_local_vars): Remove catching and rethrowing
8247         of any exception, use scoped_restore_selected_frame to restore the
8248         frame instead.
8249
8250 2018-05-24  Pedro Alves  <palves@redhat.com>
8251
8252         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
8253         override.
8254
8255 2018-05-23  Tom Tromey  <tom@tromey.com>
8256
8257         * complaints.c (struct complaints): Remove.
8258         (symfile_complaint_book): Remove.
8259         (series): New global.
8260         (complaint_internal): Update.
8261         (clear_complaints): Update.
8262
8263 2018-05-23  Tom Tromey  <tom@tromey.com>
8264
8265         * complaints.c (counters): New global.
8266         (struct complain): Remove.
8267         (struct complaints) <root>: Remove.
8268         (complaint_sentinel): Remove.
8269         (symfile_complaint_book): Update.
8270         (find_complaint) Remove.
8271         (complaint_internal, clear_complaints): Update.
8272
8273 2018-05-23  Tom Tromey  <tom@tromey.com>
8274
8275         * complaints.c (struct complain) <file, line>: Remove.
8276         (find_complaint): Remove file, line parameters.
8277         (complaint_internal): Update.
8278
8279 2018-05-23  Tom Tromey  <tom@tromey.com>
8280
8281         * complaints.c (vcomplaint): Remove.
8282         (complaint_internal) Merge in contents of vcomplaint.
8283
8284 2018-05-23  Tom Tromey  <tom@tromey.com>
8285
8286         * complaints.c (struct complaints) <explanation>: Remove.
8287         (symfile_explanations): Remove.
8288         (symfile_complaint_book): Update.
8289         (vcomplaint): Update.
8290         (struct explanation): Remove.
8291
8292 2018-05-23  Tom Tromey  <tom@tromey.com>
8293
8294         * complaints.c (symfile_complaints): Remove.
8295         (complaint_internal): Remove "complaints" parameter.
8296         (clear_complaints, vcomplaint): Remove "c" parameter.
8297         (get_complaints): Remove.
8298         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
8299         (dwarf2_debug_line_missing_file_complaint)
8300         (dwarf2_debug_line_missing_end_sequence_complaint)
8301         (dwarf2_complex_location_expr_complaint)
8302         (dwarf2_const_value_length_mismatch_complaint)
8303         (dwarf2_section_buffer_overflow_complaint)
8304         (dwarf2_macro_malformed_definition_complaint)
8305         (dwarf2_invalid_attrib_class_complaint)
8306         (create_addrmap_from_index, dw2_symtab_iter_next)
8307         (dw2_expand_marked_cus)
8308         (dw2_debug_names_iterator::find_vec_in_debug_names)
8309         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
8310         (create_debug_type_hash_table, init_cutu_and_read_dies)
8311         (partial_die_parent_scope, add_partial_enumeration)
8312         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
8313         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
8314         (read_import_statement, read_file_scope, create_dwo_cu_reader)
8315         (create_cus_hash_table, create_dwp_hash_table)
8316         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
8317         (dwarf2_rnglists_process, dwarf2_ranges_process)
8318         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
8319         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
8320         (handle_struct_member_die, process_structure_scope)
8321         (read_array_type, read_common_block, read_module_type)
8322         (read_tag_pointer_type, read_typedef, read_base_type)
8323         (read_subrange_type, load_partial_dies, partial_die_info::read)
8324         (partial_die_info::read, partial_die_info::read)
8325         (partial_die_info::read, read_checked_initial_length_and_offset)
8326         (dwarf2_string_attr, read_formatted_entries)
8327         (dwarf_decode_line_header)
8328         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
8329         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
8330         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
8331         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
8332         (get_signatured_type, get_DW_AT_signature_type)
8333         (decode_locdesc, file_file_name, consume_improper_spaces)
8334         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
8335         (dwarf_decode_macro_bytes, dwarf_decode_macros)
8336         (dwarf2_symbol_mark_computed, set_die_type)
8337         (read_attribute_value): Update.
8338         * stap-probe.c (handle_stap_probe, get_stap_base_address):
8339         Update.
8340         * dbxread.c (unknown_symtype_complaint)
8341         (lbrac_mismatch_complaint, repeated_header_complaint)
8342         (set_namestring, function_outside_compilation_unit_complaint)
8343         (read_dbx_symtab, process_one_symbol): Update.
8344         * gdbtypes.c (stub_noname_complaint): Update.
8345         * windows-nat.c (handle_unload_dll): Update.
8346         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
8347         (decode_base_type): Update.
8348         * xcoffread.c (bf_notfound_complaint, ef_complaint)
8349         (eb_complaint, record_include_begin, record_include_end)
8350         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
8351         (process_xcoff_symbol, read_symbol)
8352         (function_outside_compilation_unit_complaint)
8353         (scan_xcoff_symtab): Update.
8354         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
8355         * buildsym.c (finish_block_internal, make_blockvector)
8356         (end_symtab_get_static_block, augment_type_symtab): Update.
8357         * dtrace-probe.c (dtrace_process_dof)
8358         (dtrace_static_probe_ops::get_probes): Update.
8359         * complaints.h (struct complaint): Don't declare.
8360         (symfile_complaints): Remove.
8361         (complaint_internal): Remove "complaints" parameter.
8362         (complaint): Likewise.
8363         (clear_complaints): Likewise.
8364         * symfile.c (syms_from_objfile_1, finish_new_objfile)
8365         (reread_symbols): Update.
8366         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
8367         (dwarf2_frame_cache, decode_frame_entry): Update.
8368         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
8369         * objc-lang.c (lookup_objc_class, lookup_child_selector)
8370         (info_selectors_command): Update.
8371         * macrotab.c (macro_include, check_for_redefinition)
8372         (macro_undef): Update.
8373         * objfiles.c (filter_overlapping_sections): Update.
8374         * stabsread.c (invalid_cpp_abbrev_complaint)
8375         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
8376         (define_symbol, error_type, read_type, rs6000_builtin_type)
8377         (stabs_method_name_from_physname, read_member_functions)
8378         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
8379         (attach_fields_to_type, complain_about_struct_wipeout)
8380         (read_range_type, read_args, common_block_start)
8381         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
8382         Update.
8383         * mdebugread.c (index_complaint, unknown_ext_complaint)
8384         (basic_type_complaint, bad_tag_guess_complaint)
8385         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
8386         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
8387         (parse_procedure, parse_lines)
8388         (function_outside_compilation_unit_complaint)
8389         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
8390         (bad_tag_guess_complaint, reg_value_complaint): Update.
8391         * cp-support.c (demangled_name_complaint): Update.
8392         * macroscope.c (sal_macro_scope): Update.
8393         * dwarf-index-write.c (class debug_names): Update.
8394
8395 2018-05-23  Tom Tromey  <tom@tromey.com>
8396
8397         * complaints.c (clear_complaints): Remove "noisy" parameter.
8398         * complaints.h (clear_complaints): Update.
8399         * symfile.c (syms_from_objfile_1, finish_new_objfile)
8400         (reread_symbols): Update.
8401
8402 2018-05-23  Tom Tromey  <tom@tromey.com>
8403
8404         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
8405         SUBSEQUENT_MESSAGE.
8406         (vcomplaint, clear_complaints): Update.
8407         (symfile_explanations): Remove some messages.
8408
8409 2018-05-23  Tom Tromey  <tom@tromey.com>
8410
8411         * complaints.c (internal_complaint): Remove.
8412         * complaints.h (internal_complaint): Remove.
8413
8414 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
8415
8416         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
8417
8418 2018-05-22  Pedro Alves  <palves@redhat.com>
8419
8420         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
8421         (remote_fileio_badfd, remote_fileio_return_errno)
8422         (remote_fileio_return_success, remote_fileio_func_open)
8423         (remote_fileio_func_open, remote_fileio_func_close)
8424         (remote_fileio_func_read, remote_fileio_func_write)
8425         (remote_fileio_func_lseek, remote_fileio_func_rename)
8426         (remote_fileio_func_unlink, remote_fileio_func_stat)
8427         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
8428         (remote_fileio_func_isatty, remote_fileio_func_system): Add
8429         remote_target parameter.
8430         (remote_fio_func_map) <func>: Add remote_target parameter.
8431         (do_remote_fileio_request, remote_fileio_request):
8432         * remote-fileio.h (remote_fileio_request):
8433         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
8434         remote_target parameter.
8435         (remote_notif_process, handle_notification): Adjust to pass down
8436         the remote.
8437         (remote_notif_state_allocate): Add remote_target parameter.  Save
8438         it.
8439         * remote-notif.h (struct remote_target): Forward declare.
8440         (struct notif_client) <parse, ack, can_get_pending_events>: Add
8441         remote_target parameter.
8442         (struct remote_notif_state) <remote>: New field.
8443         (remote_notif_ack, remote_notif_parse): Add remote_target
8444         parameter.
8445         (remote_notif_state_allocate, remote_notif_state_allocate): Add
8446         remote_target parameter.
8447         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
8448         (threads_listing_context, rmt_thread_action, protocol_feature)
8449         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
8450         (packet_result, struct threads_listing_context, remote_state):
8451         Move definitions and declarations higher up.
8452         (remote_target) <~remote_target>: Declare.
8453         (remote_download_command_source, remote_file_put, remote_file_get)
8454         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
8455         (remote_hostio_pread_vFile, remote_hostio_send_command)
8456         (remote_hostio_set_filesystem, remote_hostio_open)
8457         (remote_hostio_close, remote_hostio_unlink, remote_state)
8458         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
8459         (get_memory_write_packet_size, get_memory_read_packet_size)
8460         (append_pending_thread_resumptions, remote_detach_1)
8461         (append_resumption, remote_resume_with_vcont)
8462         (add_current_inferior_and_thread, wait_ns, wait_as)
8463         (process_stop_reply, remote_notice_new_inferior)
8464         (process_initial_stop_replies, remote_add_thread)
8465         (btrace_sync_conf, remote_btrace_maybe_reopen)
8466         (remove_new_fork_children, kill_new_fork_children)
8467         (discard_pending_stop_replies, stop_reply_queue_length)
8468         (check_pending_events_prevent_wildcard_vcont)
8469         (discard_pending_stop_replies_in_queue, stop_reply)
8470         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
8471         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
8472         (remote_interrupt_as, remote_interrupt_ns)
8473         (remote_get_noisy_reply, remote_query_attached)
8474         (remote_add_inferior, remote_current_thread, get_current_thread)
8475         (set_thread, set_general_thread, set_continue_thread)
8476         (set_general_process, write_ptid)
8477         (remote_unpack_thread_info_response, remote_get_threadinfo)
8478         (parse_threadlist_response, remote_get_threadlist)
8479         (remote_threadlist_iterator, remote_get_threads_with_ql)
8480         (remote_get_threads_with_qxfer)
8481         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
8482         (get_offsets, remote_check_symbols, remote_supported_packet)
8483         (remote_query_supported, remote_packet_size)
8484         (remote_serial_quit_handler, remote_detach_pid)
8485         (remote_vcont_probe, remote_resume_with_hc)
8486         (send_interrupt_sequence, interrupt_query)
8487         (remote_notif_get_pending_events, fetch_register_using_p)
8488         (send_g_packet, process_g_packet, fetch_registers_using_g)
8489         (store_register_using_P, store_registers_using_G)
8490         (set_remote_traceframe, check_binary_download)
8491         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
8492         (remote_xfer_live_readonly_partial, remote_read_bytes)
8493         (remote_send_printf, remote_flash_write, readchar)
8494         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
8495         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
8496         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
8497         (extended_remote_disable_randomization, extended_remote_run)
8498         (send_environment_packet, extended_remote_environment_support)
8499         (extended_remote_set_inferior_cwd, remote_write_qxfer)
8500         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
8501         (packet_command): Now methods of ...
8502         (remote_target): ... this class.
8503         (m_remote_state) <remote_target>: New field.
8504         (struct remote_state) <stop_reply_queue,
8505         remote_async_inferior_event_token, wait_forever_enabled_p>: New
8506         fields.
8507         (remote_state::remote_state): Allocate stop_reply_queue.
8508         (remote_state): Delete global.
8509         (get_remote_state_raw): Delete.
8510         (remote_target::get_remote_state): Allocate m_remote_state on
8511         demand.
8512         (get_current_remote_target): New.
8513         (remote_ops, extended_remote_ops): Delete.
8514         (wait_forever_enabled_p, remote_async_inferior_event_token):
8515         Delete, moved to struct remote_state.
8516         (remote_target::close): Delete self.  Destruction bits split to
8517         ...
8518         (remote_target::~remote_target): ... this.
8519         (show_memory_packet_size): Adjust to use
8520         get_current_remote_target.
8521         (struct protocol_feature) <func>: Add remote_target parameter.
8522         All callers adjusted.
8523         (curr_quit_handler_target): New.
8524         (remote_serial_quit_handler): Reimplement.
8525         (remote_target::open_1): Adjust to use get_current_remote_target.
8526         Heap-allocate remote_target/extended_remote_target instances.
8527         (vcont_builder::vcont_builder): Add remote_target parameter, and
8528         save it in m_remote.  All callers adjusted.
8529         (vcont_builder::m_remote): New field.
8530         (vcont_builder::restart, vcont_builder::flush)
8531         (vcont_builder::push_action): Use it.
8532         (remote_target::commit_resume): Use it.
8533         (struct queue_iter_param) <remote>: New field.
8534         (remote_target::remove_new_fork_children): Fill in 'remote' field.
8535         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
8536         (check_pending_event_prevents_wildcard_vcont_callback)
8537         (remote_target::check_pending_events_prevent_wildcard_vcont)
8538         (remote_target::discard_pending_stop_replies)
8539         (remote_target::discard_pending_stop_replies_in_queue)
8540         (remote_target::remote_notif_remove_queued_reply): Fill in
8541         'remote' field.
8542         (remote_notif_get_pending_events): New.
8543         (remote_target::readchar, remote_target::remote_serial_write):
8544         Save/restore curr_quit_handler_target.
8545         (putpkt): New.
8546         (kill_new_fork_children): Fill in 'remote' field.
8547         (packet_command): Use get_current_remote_target, defer to
8548         remote_target method of same name.
8549         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
8550         parameter, and save it in m_remote.  All callers adjusted.
8551         (scoped_remote_fd::release): Use m_remote.
8552         (scoped_remote_fd::m_remote): New field.
8553         (remote_file_put, remote_file_get, remote_file_delete): Use
8554         get_current_remote_target, defer to remote_target method of same
8555         name.
8556         (remote_btrace_reset): Add remote_state paremeter.  Update all
8557         callers.
8558         (remote_async_inferior_event_handler). Pass down 'data'.
8559         (remote_new_objfile): Use get_current_remote_target.
8560         (remote_target::vcont_r_supported): New.
8561         (set_range_stepping): Use get_current_remote_target and
8562         remote_target::vcont_r_supported.
8563         (_initialize_remote): Don't allocate 'remote_state' and
8564         'stop_reply_queue' globals.
8565         * remote.h (struct remote_target): Forward declare.
8566         (getpkt, putpkt, remote_notif_get_pending_events): Add
8567         'remote_target' parameter.
8568
8569 2018-05-22  Pedro Alves  <palves@redhat.com>
8570
8571         * remote.c (vcont_builder): Now a class.  Make all data members
8572         private.
8573         (vcont_builder) <vcont_builder, restart, flush, push_action>:
8574         Declare methods.
8575         (vcont_builder_restart): Rename to ...
8576         (vcont_builder::restart): ... this.
8577         (vcont_builder_flush): Rename to ...
8578         (vcont_builder::flush): ... this.
8579         (vcont_builder_push_action): Rename to ...
8580         (vcont_builder::push_action): ... this.
8581         (remote_target::commit_resume): Adjust.
8582
8583 2018-05-22  Pedro Alves  <palves@redhat.com>
8584
8585         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
8586         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
8587         (get_fixed_memory_packet_size): New.
8588         (get_memory_packet_size): Use it.
8589         (set_memory_packet_size): Don't override the config size with
8590         DEFAULT_MAX_MEMORY_PACKET_SIZE.
8591         (show_memory_packet_size): Use get_fixed_memory_packet_size.
8592         Don't refer to get_memory_packet_size if not connected to a remote
8593         target.  Show "(default)" if configured size is 0.
8594
8595 2018-05-22  Pedro Alves  <palves@redhat.com>
8596
8597         * remote.c (remote_target::mourn_inferior): Move
8598         discard_pending_stop_replies call here from ...
8599         (_initialize_remote): ... here.
8600
8601 2018-05-22  Pedro Alves  <palves@redhat.com>
8602
8603         * remote.c (compare_section_command): Remove set_general_process
8604         call.
8605
8606 2018-05-22  Pedro Alves  <palves@redhat.com>
8607
8608         * remote.c (struct packet_reg, struct remote_arch_state):
8609         Move higher up in the file.
8610         (remote_state) <m_arch_states>: Store remote_arch_state values
8611         instead of remote_arch_state pointers.
8612         (remote_state::get_remote_arch_state): Adjust.
8613
8614 2018-05-22  Pedro Alves  <palves@redhat.com>
8615
8616         * remote.c: Include <unordered_map>.
8617         (remote_state): Now a class.
8618         (remote_state) <get_remote_arch_state>: Declare method.
8619         <get_remote_arch_state>: New field.
8620         (remote_arch_state) <remote_arch_state>: Declare ctor.
8621         <regs>: Now a unique_ptr.
8622         (remote_gdbarch_data_handle): Delete.
8623         (get_remote_arch_state): Delete.
8624         (remote_state::get_remote_arch_state): New.
8625         (get_remote_state): Adjust to call remote_state's
8626         get_remote_arch_state method.
8627         (init_remote_state): Delete, bits factored out to ...
8628         (remote_arch_state::remote_arch_state): ... this new method.
8629         (get_remote_packet_size, get_memory_packet_size)
8630         (process_g_packet, remote_target::fetch_registers)
8631         (remote_target::prepare_to_store, store_registers_using_G)
8632         (remote_target::store_registers, remote_target::get_trace_status):
8633         Adjust to call remote_state's method.
8634         (_initialize_remote): Remove reference to
8635         remote_gdbarch_data_handle.
8636
8637 2018-05-22  Pedro Alves  <palves@redhat.com>
8638
8639         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
8640         pread>: New method declarations.
8641         (remote_target::open_1): Adjust.
8642         (readahead_cache_invalidate): Rename to ...
8643         (readahead_cache::invalidate): ... this, and adjust to be a class
8644         method.
8645         (readahead_cache_invalidate_fd): Rename to ...
8646         (readahead_cache::invalidate_fd): ... this, and adjust to be a
8647         class method.
8648         (remote_hostio_pwrite): Adjust.
8649         (remote_hostio_pread_from_cache): Rename to ...
8650         (readahead_cache::pread): ... this, and adjust to be a class
8651         method.
8652         (remote_hostio_close): Adjust.
8653
8654 2018-05-22  Pedro Alves  <palves@redhat.com>
8655
8656         * remote.c (remote_hostio_close_cleanup): Delete.
8657         (class scoped_remote_fd): New.
8658         (remote_file_put, remote_file_get): Use it.
8659
8660 2018-05-22  Pedro Alves  <palves@redhat.com>
8661
8662         (struct vCont_action_support): Use bool and initialize all fields.
8663         (struct readahead_cache): Initialize all fields.
8664         (remote_state): Use bool and initialize all fields.
8665         (remote_state::remote_state, remote_state::~remote_state): New.
8666         (new_remote_state): Delete.
8667         (_initialize_remote): Use new to allocate remote_state.
8668
8669 2018-05-22  Pedro Alves  <palves@redhat.com>
8670             張俊芝  <zjz@zjz.name>
8671
8672         PR gdb/22973
8673         * c-exp.y: Include "c-support.h".
8674         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
8675         of tolower.  Use c_ident_is_alpha to scan names.
8676         * c-lang.c: Include "c-support.h".
8677         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
8678         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
8679         * c-support.h: New file, with bits factored out from ...
8680         * cp-name-parser.y: ... this file.
8681         Include "c-support.h".
8682         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
8683         c-support.h and renamed.
8684         (symbol_end, yylex): Adjust.
8685
8686 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8687
8688         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
8689         parameter type to CORE_ADDR.
8690         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
8691         parameter type in declaration to CORE_ADDR.
8692         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
8693         target_auxv_search to get AT_HWCAP and use the result to get the
8694         target description.
8695         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
8696         to CORE_ADDR. Remove the cast of the return value to unsigned
8697         long. Fix error predicate of target_auxv_search.
8698         (ppc_linux_nat_target::read_description): Change the type of the
8699         hwcap variable to CORE_ADDR.
8700
8701 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8702
8703         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
8704         if the size of fpscr is larger than 32 bits.
8705
8706 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8707
8708         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
8709         (ppc32_linux_vsxregmap): New global.
8710         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
8711         regcache_supply_regset, and regcache_collect_regset.
8712         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
8713         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
8714         (fetch_vsx_register, store_vsx_register): Remove.
8715         (fetch_vsx_registers): Add regno parameter. Get regset using
8716         ppc_linux_vsxregset. Use regset to supply registers.
8717         (store_vsx_registers): Add regno parameter. Get regset using
8718         ppc_linux_vsxregset. Use regset to collect registers.
8719         (fetch_register): Call fetch_vsx_registers instead of
8720         fetch_vsx_register.
8721         (store_register): Call store_vsx_registers instead of
8722         store_vsx_register.
8723         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
8724         new regno parameter.
8725         (store_ppc_registers): Call store_vsx_registers with -1 for the
8726         new regno parameter.
8727         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
8728         (ppc_collect_vsxregset): Remove.
8729
8730 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8731
8732         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
8733         offset fields.
8734         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
8735         for vector register offset fields.
8736         (ppc64_fbsd_reg_offsets): Likewise.
8737         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8738         to vector register offset fields.
8739         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8740         to vector register offset fields.
8741         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
8742         vector register offset fields.
8743         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
8744         initializers for vector register offset fields.
8745         (rs6000_aix64_reg_offsets): Likewise.
8746         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
8747         (ppc_supply_vrregset): Remove.
8748         (ppc_collect_vrregset): Remove.
8749         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
8750         (ppc_linux_vrregset) : New function.
8751         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
8752         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
8753         (ppc32_linux_vrregset): Remove.
8754         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
8755         and use result instead of ppc32_linux_vrregset.
8756         (ppc32_linux_reg_offsets): Remove initializers for vector register
8757         offset fields.
8758         (ppc64_linux_reg_offsets): Likewise.
8759         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
8760         * ppc-linux-nat.c: Include regset.h.
8761         (gdb_vrregset_t): Adjust comment to account for little-endian
8762         mode.
8763         (supply_vrregset, fill_vrregset): Remove.
8764         (fetch_altivec_register, store_altivec_register): Remove.
8765         (fetch_altivec_registers): Add regno parameter. Get regset using
8766         ppc_linux_vrregset. Use regset to supply registers.
8767         (store_altivec_registers): Add regno parameter. Get regset using
8768         ppc_linux_vrregset. Use regset to collect registers.
8769         (fetch_register): Call fetch_altivec_registers instead of
8770         fetch_altivec_register.
8771         (store_register): Call store_altivec_registers instead of
8772         store_altivec_register.
8773         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
8774         the new regno parameter.
8775         (store_ppc_registers): Call store_altivec_registers with -1 for
8776         the new regno parameter.
8777
8778 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8779
8780         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
8781         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
8782         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
8783         (gdb_vrregset_t): Change array type size to
8784         PPC_LINUX_SIZEOF_VRREGSET.
8785         (gdb_vsxregset_t): Change array type size to
8786         PPC_LINUX_SIZEOF_VSXREGSET.
8787         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
8788         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
8789         PPC_LINUX_SIZEOF_VSXREGSET.
8790
8791 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8792
8793         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
8794         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
8795         nat/ppc-linux.c.
8796         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
8797         ppc_linux_target_wordsize with tid.
8798         (ppc_linux_nat_target::read_description): Call ppc_linux_target
8799         wordsize with tid.
8800         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
8801         (ppc64_64bit_inferior_p): Add static and inline specifiers.
8802         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
8803         tid parameter. Remove static specifier.
8804         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
8805         (ppc_linux_target_wordsize): New declaration.
8806
8807 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8808
8809         * arch/ppc-linux-common.c: New file.
8810         * arch/ppc-linux-common.h: New file.
8811         * arch/ppc-linux-tdesc.h: New file.
8812         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
8813         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
8814         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
8815         arch/ppc-linux-tdesc.h.
8816         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
8817         arch/ppc-linux-tdesc.h.
8818         (ppc_linux_nat_target::read_description): Remove target
8819         description matching code. Fill a ppc_linux_features struct and
8820         call ppc_linux_match_description with it. Move comment about ISA
8821         2.05 to ppc-linux-common.c.
8822         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
8823         arch/ppc-linux-tdesc.h.
8824         (ppc_linux_core_read_description): Remove target description
8825         matching code. Fill a ppc_linux_features struct and call
8826         ppc_linux_match_description with it.
8827         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
8828         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
8829         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
8830         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
8831         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
8832         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
8833         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
8834         (tdesc_powerpc_e500l): Remove.
8835
8836 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
8837
8838         * ada-lang.c (catch_assert_command): Pass empty string instead
8839         of NULL for excep_string argument.
8840
8841 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
8842
8843         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
8844         the width of the requested register exceeds the width of the
8845         `ptrace' data type.
8846
8847 2018-05-21  Tom Tromey  <tom@tromey.com>
8848
8849         * printcmd.c (output_command): Remove.
8850         (output_command_const): Rename to output_command.
8851         * valprint.h (output_command): Rename from output_command_const.
8852         * tracepoint.c (trace_dump_actions): Call output_command.
8853
8854 2018-05-21  Tom Tromey  <tom@tromey.com>
8855
8856         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
8857         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
8858         * ada-lang.h (create_ada_exception_catchpoint): Update.
8859         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
8860         std::string.
8861         (create_excep_cond_exprs, ~ada_catchpoint)
8862         (should_stop_exception, print_one_exception)
8863         (print_mention_exception, print_recreate_exception): Update.
8864         (ada_get_next_arg): Remove.
8865         (catch_ada_exception_command_split): Use std::string.  Change type
8866         of "excep_string", "cond_string".
8867         (catch_ada_exception_command): Update.
8868         (create_ada_exception_catchpoint): Change type of excep_string.
8869         (ada_exception_sal): Remove excep_string parameter.
8870         (~ada_catchpoint): Remove.
8871
8872 2018-05-21  Tom Tromey  <tom@tromey.com>
8873
8874         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
8875         cleanup.
8876
8877 2018-05-21  Tom Tromey  <tom@tromey.com>
8878
8879         * ada-lang.c (ada_exception_message_1, ada_exception_message):
8880         Return unique_xmalloc_ptr.
8881         (print_it_exception): Update.
8882
8883 2018-05-21  Tom Tromey  <tom@tromey.com>
8884
8885         * tracepoint.c (trace_dump_actions): Use std::string.
8886
8887 2018-05-21  Tom Tromey  <tom@tromey.com>
8888
8889         * symfile.c (reread_symbols): Use std::string for original_name.
8890
8891 2018-05-21  Tom Tromey  <tom@tromey.com>
8892
8893         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
8894         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
8895         constructor.
8896
8897 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
8898
8899         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
8900         instance to...
8901         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
8902         * objfiles.c (get_objfile_bfd_data): Allocate
8903         objfile_per_bfd_storage with obstack_new when allocating on
8904         obstack.
8905
8906 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8907
8908         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
8909         OBSTACK_ZALLOC.
8910         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
8911         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
8912         * mdebugread.c (mdebug_build_psymtabs): Likewise.
8913         (add_pending): Likewise.
8914         (parse_symbol): Likewise.
8915         (parse_partial_symbols): Likewise.
8916         (psymtab_to_symtab_1): Likewise.
8917         (new_psymtab): Likewise.
8918         (elfmdebug_build_psymtabs): Likewise.
8919         * minsyms.c (terminate_minimal_symbol_table): Likewise.
8920         * objfiles.c (get_objfile_bfd_data): Likewise.
8921         (objfile_register_static_link): Likewise.
8922         * psymtab.c (allocate_psymtab): Likewise.
8923         * stabsread.c (read_member_functions): Likewise.
8924         * xcoffread.c (xcoff_end_psymtab): Likewise.
8925
8926 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8927
8928         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
8929         compiler supports std::is_trivially_constructible.
8930         * common/poison.h: Include obstack.h.
8931         (IsMallocable): Define to is_trivially_constructible if the
8932         compiler supports it, define to true_type otherwise.
8933         (xobnew): New.
8934         (XOBNEW): Redefine.
8935         (xobnewvec): New.
8936         (XOBNEWVEC): Redefine.
8937         * gdb_obstack.h (obstack_zalloc): New.
8938         (OBSTACK_ZALLOC): Redefine.
8939         (obstack_calloc): New.
8940         (OBSTACK_CALLOC): Redefine.
8941         (obstack_new): New.
8942         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
8943         (gdbarch_obstack): New declaration in gdbarch.h, definition in
8944         gdbarch.c.
8945         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
8946         obstack_calloc/obstack_zalloc.
8947         (gdbarch_obstack_zalloc): Remove.
8948         * target-descriptions.c (tdesc_data_init): Use obstack_new.
8949
8950 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8951
8952         * stack.c (backtrace_command_1): Remove useless variable int i.
8953
8954 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8955
8956         * stack.c (print_frame_info): Fix comment.
8957
8958 2018-05-18  Tom Tromey  <tom@tromey.com>
8959
8960         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
8961         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
8962         (~dwarf2_per_objfile): Update
8963         (dwarf2_get_dwz_file): Use new.
8964         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
8965         unique_ptr.
8966
8967 2018-05-18  Tom Tromey  <tom@tromey.com>
8968
8969         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
8970         unique_ptr.
8971         * dwarf2read.c (struct dwp_file): Add constructor and
8972         initializers.
8973         (open_and_init_dwp_file): Return a unique_ptr.
8974         (dwarf2_per_objfile, create_dwp_hash_table)
8975         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
8976         (lookup_dwo_unit_in_dwp): Update.
8977         (open_and_init_dwp_file, get_dwp_file): Update.
8978
8979 2018-05-18  Tom Tromey  <tom@tromey.com>
8980
8981         * dwarf2read.c (dwarf2_per_objfile): Update.
8982         (struct mapped_index): Add initializers.
8983         (dwarf2_read_index): Use new.
8984         (dw2_symtab_iter_init): Update.
8985         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
8986         unique_ptr.
8987
8988 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8989
8990         * dwarf2read.c (mapped_index) <total_size>: Remove.
8991
8992 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8993
8994         * unittests/format_pieces-selftests.c (test_format_specifier):
8995         Add ARI comments.
8996
8997 2018-05-18  Tom Tromey  <tom@tromey.com>
8998
8999         * c-typeprint.c (maybe_print_hole): New function.
9000         (c_print_type_struct_field_offset): Update.
9001         (c_type_print_base_struct_union): Call maybe_print_hole.
9002
9003 2018-05-17  Keith Seitz  <keiths@redhat.com>
9004
9005         * breakpoint.c (build_bpstat_chain): New function, moved from
9006         bpstat_stop_status.
9007         (bpstat_stop_status): Add optional parameter, `stop_chain'.
9008         If no stop chain is passed, call build_bpstat_chain to build it.
9009         * breakpoint.h (build_bpstat_chain): Declare.
9010         (bpstat_stop_status): Move documentation here from breakpoint.c.
9011         * infrun.c (handle_signal_stop): Before eliding inlined frames,
9012         build the stop chain and pass it to skip_inline_frames.
9013         Pass this stop chain to bpstat_stop_status.
9014         * inline-frame.c: Include breakpoint.h.
9015         (stopped_by_user_bp_inline_frame): New function.
9016         (skip_inline_frames): Add parameter `stop_chain'.
9017         Move documention to inline-frame.h.
9018         If non-NULL, use stopped_by_user_bp_inline_frame to determine
9019         whether the frame should be elided.
9020         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
9021         Add moved documentation and update for new parameter.
9022
9023 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
9024
9025         PR cli/14975
9026         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
9027         unittests/format_pieces-selftests.c.
9028         * common/format.h (format_piece) <operator==>: New.
9029         (format_pieces) <operator[]>: Remove.
9030         * common/format.c (format_pieces::format_pieces): Handle \e.
9031         * unittests/format_pieces-selftests.c: New.
9032
9033 2018-05-17  Tom Tromey  <tom@tromey.com>
9034
9035         PR symtab/23010:
9036         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
9037         (dw2_instantiate_symtab): Add skip_partial parameter.
9038         (dw2_find_last_source_symtab, dw2_map_expand_apply)
9039         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
9040         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
9041         (dw2_expand_symtabs_matching_one)
9042         (dw2_find_pc_sect_compunit_symtab)
9043         (dw2_debug_names_lookup_symbol)
9044         (dw2_debug_names_expand_symtabs_for_function): Update.
9045         (init_cutu_and_read_dies): Add skip_partial parameter.
9046         (process_psymtab_comp_unit, build_type_psymtabs_1)
9047         (process_skeletonless_type_unit, load_partial_comp_unit)
9048         (psymtab_to_symtab_1): Update.
9049         (load_full_comp_unit): Add skip_partial parameter.
9050         (process_imported_unit_die, dwarf2_read_addr_index)
9051         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
9052         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
9053         (read_signatured_type): Update.
9054
9055 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
9056
9057         * value.c (release_value): Remove unused variable.
9058         (record_latest_value): Likewise.
9059         (access_value_history): Likewise.
9060         (preserve_values): Likewise.
9061
9062 2018-05-17  Tom Tromey  <tom@tromey.com>
9063
9064         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
9065         Initialize.
9066
9067 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
9068
9069         PR gdb/22286
9070         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
9071         Also handle registers whose width is not a multiple of
9072         PTRACE_TYPE_RET.
9073         (linux_nat_trad_target::store_register): Likewise.
9074
9075 2018-05-16  Tom Tromey  <tom@tromey.com>
9076
9077         * gdbcore.h (core_bfd): Redefine.
9078         * corelow.c (core_target::close): Update.
9079         (core_target_open): Update.
9080         * progspace.h (struct program_space) <cbfd>: Now a
9081         gdb_bfd_ref_ptr.
9082
9083 2018-05-16  Tom Tromey  <tom@tromey.com>
9084
9085         PR cli/19551:
9086         * symfile-add-flags.h (enum symfile_add_flags)
9087         <SYMFILE_NOT_FILENAME>: New constant.
9088         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
9089         objfile name from BFD.
9090         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
9091         * minidebug.c (find_separate_debug_file_in_section): Put
9092         ".gnu_debugdata" into BFD's file name.
9093
9094 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
9095
9096         * regcache.c (regcache_read_ftype, regcache_write_ftype):
9097         Remove.
9098
9099 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
9100
9101         PR binutils/21446
9102         * aarch64-tdep.c (aarch64_analyze_prologue,
9103         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
9104         Indicate not interested in errors.
9105
9106 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
9107
9108         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
9109         Supply the MIPS_ZERO_REGNUM register.
9110
9111 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
9112
9113         * mips-tdep.c (mask_address_var): Make variable static.
9114
9115 2018-05-14  Tom Tromey  <tom@tromey.com>
9116
9117         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
9118
9119 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
9120
9121         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
9122         FXSAVE_ADDR for the mxcsr register.
9123
9124 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
9125
9126         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
9127
9128 2018-05-11  Pedro Alves  <palves@redhat.com>
9129
9130         * corelow.c (core_target) <core_target>: No longer inline.
9131         Initialize m_core_gdbarch, m_core_vec and build the section table
9132         here.
9133         <~core_target>: New.
9134         <core_gdbarch, get_core_register_section>: New methods.
9135         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
9136         factored out from ...
9137         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
9138         (core_ops): Delete.
9139         (sniff_core_bfd): Add gdbarch parameter.
9140         (core_close): Delete, merged into ...
9141         (core_target::close): ... here.  Delete self.
9142         (core_close_cleanup): Delete.
9143         (core_target_open): Allocate a core_target on the heap.  Use a
9144         unique_ptr instead of a cleanup.  Bits moved into the core_target
9145         ctor.  Adjust to use core_target methods instead of globals.
9146         (get_core_register_section): Rename to ...
9147         (core_target::get_core_register_section): ... this and adjust.
9148         (struct get_core_registers_cb_data): New.
9149         (get_core_registers_cb): Use it.  Use bool.
9150         (core_target::fetch_registers, core_target::files_info)
9151         (core_target::xfer_partial, core_target::read_description)
9152         (core_target::pid_to, core_target::thread_name): Adjust to
9153         reference class fields instead of globals.
9154         * target.h (struct target_ops_deleter, target_ops_up): New.
9155
9156 2018-05-11  Pedro Alves  <palves@redhat.com>
9157
9158         * corefile.c (core_file_command): Move to corelow.c.
9159         * corelow.c (the_core_target): Delete.
9160         (core_file_command): Moved from corefile.c.  Check exec_bfd
9161         instead of the_core_target.  Use target_detach instead of calling
9162         into the_core_target directly.
9163         (maybe_say_no_core_file_now): New.
9164         (core_target::detach): Use it.
9165         (_initialize_corelow): Remove references to the_core_target.
9166         * gdbcore.h (the_core_target): Delete.
9167
9168 2018-05-11  Tom Tromey  <tromey@redhat.com>
9169             Pedro Alves  <palves@redhat.com>
9170
9171         * corefile.c (core_bfd): Remove.
9172         * gdbcore.h (core_bfd): Now a macro.
9173         * progspace.h (struct program_space) <cbfd>: New field.
9174
9175 2018-05-11  Tom Tromey  <tom@tromey.com>
9176
9177         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
9178         gdb::def_vector.
9179
9180 2018-05-10  Tom Tromey  <tom@tromey.com>
9181
9182         * configure: Rebuild.
9183         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
9184
9185 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
9186
9187         PR server/23158:
9188         * regformats/regdat.sh: Adjust script, following the addition
9189         of the new expedite_regs parameter to init_target_desc.
9190
9191 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
9192     
9193         PR gdb/23127
9194         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
9195         set_gdbarch_significant_addr_bit.
9196         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
9197         set_gdbarch_significant_addr_bit.
9198         * utils.c (address_significant): Update to sign extend addr.
9199
9200 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
9201
9202         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
9203         (xtensa_linux_init_abi): Limit tdep->num_regs by
9204         tdep->num_nopriv_regs.
9205         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
9206         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
9207         not initialized.
9208
9209 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
9210
9211         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
9212
9213 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
9214
9215         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
9216         (I387_MXCSR_INIT_VAL): New constant.
9217         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
9218         buffer if it was supplied by the inferior.
9219         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
9220         (i387_xsave_get_clear_bv): New function.
9221         (i387_supply_xsave): Only read x87 control registers from the
9222         xsave buffer if the feature is enabled, and the state will have
9223         been written, otherwise, provide a suitable default.
9224         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
9225         including x87 control registers.  Update control registers if they
9226         have changed from the default value, and mark features as enabled
9227         as required.
9228         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
9229
9230 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
9231
9232         * spu-tdep.c (info_spu_event_command): Fix output formatting.
9233
9234 2018-05-07  Tom Tromey  <tom@tromey.com>
9235
9236         * configure: Rebuild.
9237         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
9238
9239 2018-05-07  Tom Tromey  <tom@tromey.com>
9240
9241         PR tdep/20362:
9242         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
9243         bit.  Use correct value for VDIV.
9244
9245 2018-05-04  Tom Tromey  <tom@tromey.com>
9246
9247         * configure: Rebuild.
9248         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
9249
9250 2018-05-04  Tom Tromey  <tom@tromey.com>
9251
9252         * linux-record.c (record_linux_system_call) <case
9253         RECORD_SYS_RECVFROM>: Add "break".
9254
9255 2018-05-04  Tom Tromey  <tom@tromey.com>
9256
9257         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
9258         Add missing "break".
9259         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
9260         Add missing "break".
9261
9262 2018-05-04  Tom Tromey  <tom@tromey.com>
9263
9264         * rs6000-tdep.c (ppc_process_record_op4)
9265         (ppc_process_record_op63): Add fall-through comment.
9266
9267 2018-05-04  Tom Tromey  <tom@tromey.com>
9268
9269         * i386-tdep.c (i386_process_record): Add fall-through comment.
9270
9271 2018-05-04  Tom Tromey  <tom@tromey.com>
9272
9273         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
9274         comment.
9275
9276 2018-05-04  Tom Tromey  <tom@tromey.com>
9277
9278         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
9279         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
9280         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
9281         comment.
9282         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
9283         comment.
9284         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
9285         comment.
9286
9287 2018-05-04  Tom Tromey  <tom@tromey.com>
9288
9289         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
9290
9291 2018-05-04  Tom Tromey  <tom@tromey.com>
9292
9293         * s390-tdep.c (s390_process_record): Fix fall-through comments.
9294         * xcoffread.c (scan_xcoff_symtab): Move comment later.
9295         * symfile.c (section_is_mapped): Fix fall-through comment.
9296         * stabsread.c (define_symbol, read_member_functions): Fix
9297         fall-through comment.
9298         * s390-linux-tdep.c (s390_process_record): Fix fall-through
9299         comment.
9300         * remote.c (remote_wait_as): Fix fall-through comment.
9301         * p-exp.y (yylex): Fix fall-through comment.
9302         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
9303         comment.
9304         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
9305         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
9306         * jv-exp.y (yylex): Fix fall-through comment.
9307         * go-exp.y (lex_one_token): Fix fall-through comment.
9308         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
9309         fall-through comment.
9310         * f-exp.y (yylex): Fix fall-through comment.
9311         * dwarf2read.c (process_die): Fix fall-through comments.
9312         * dbxread.c (process_one_symbol): Fix fall-through comment.
9313         * d-exp.y (lex_one_token): Fix fall-through comment.
9314         * cp-name-parser.y (yylex): Fix fall-through comment.
9315         * coffread.c (coff_symtab_read): Fix fall-through comment.
9316         * c-exp.y (lex_one_token): Fix fall-through comment.
9317         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
9318         comment.
9319         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
9320         comment.
9321
9322 2018-05-04  Tom Tromey  <tom@tromey.com>
9323
9324         PR python/22730:
9325         * NEWS: Mention gdb.execute change.
9326         * gdbcmd.h (execute_control_command): Don't declare.
9327         * python/python.c (execute_gdb_command): Use read_command_lines_1,
9328         execute_control_commands, execute_control_commands_to_string.
9329         * cli/cli-script.h (execute_control_commands)
9330         (execute_control_commands_to_string): Declare.
9331         (execute_control_command): Add from_tty parameter.
9332         * cli/cli-script.c (execute_control_commands)
9333         (execute_control_commands_to_string): New functions.
9334         (execute_user_command): Use execute_control_commands.
9335         (execute_control_command_1): Add "from_tty" parameter.  Update.
9336         (execute_control_command): Likewise.
9337
9338 2018-05-04  Tom Tromey  <tom@tromey.com>
9339
9340         PR python/22731:
9341         * NEWS: Mention that breakpoint commands are writable.
9342         * python/py-breakpoint.c (bppy_set_commands): New function.
9343         (breakpoint_object_getset) <"commands">: Use it.
9344
9345 2018-05-04  Tom Tromey  <tom@tromey.com>
9346
9347         * tracepoint.c (actions_command): Update.
9348         * mi/mi-cmd-break.c (mi_command_line_array)
9349         (mi_command_line_array_cnt, mi_command_line_array_ptr)
9350         (mi_read_next_line): Remove.
9351         (mi_cmd_break_commands): Update.
9352         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
9353         function_view.
9354         * cli/cli-script.c (get_command_line): Update.
9355         (process_next_line): Use function_view.  Constify.
9356         (recurse_read_control_structure, read_command_lines)
9357         (read_command_lines_1): Change argument types to function_view.
9358         (do_define_command, document_command): Update.
9359         * breakpoint.h (check_tracepoint_command): Don't declare.
9360         * breakpoint.c (check_tracepoint_command): Remove.
9361         (commands_command_1, create_tracepoint_from_upload): Update.
9362
9363 2018-05-04  Tom Tromey  <tom@tromey.com>
9364
9365         PR gdb/11750:
9366         * cli/cli-script.h (enum command_control_type) <define_control>:
9367         New constant.
9368         * cli/cli-script.c (multi_line_command_p): Handle define_control.
9369         (build_command_line, execute_control_command_1)
9370         (process_next_line): Likewise.
9371         (do_define_command): New function, extracted from define_command.
9372         (define_command): Use it.
9373
9374 2018-05-04  Tom Tromey  <tom@tromey.com>
9375
9376         * tracepoint.c (actions_command): Update.
9377         * cli/cli-script.h (read_command_lines): Update.
9378         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
9379         (MAX_TMPBUF): Remove define.
9380         (define_command): Use string_printf.
9381         (document_command): Likewise.
9382         * breakpoint.c (commands_command_1): Update.
9383
9384 2018-05-04  Tom Tromey  <tom@tromey.com>
9385
9386         * top.c (execute_command): Update.
9387         * cli/cli-script.h (print_command_lines): Now varargs.
9388         * cli/cli-script.c (print_command_lines): Now varargs.
9389         (execute_control_command_1) <case while_control, case if_control>:
9390         Update.
9391
9392 2018-05-04  Tom Tromey  <tom@tromey.com>
9393
9394         * tracepoint.c (all_tracepoint_actions): Rename from
9395         all_tracepoint_actions_and_cleanup.  Change return type.
9396         (actions_command, encode_actions_1, encode_actions)
9397         (trace_dump_actions, tdump_command): Update.
9398         * remote.c (remote_download_command_source): Update.
9399         * python/python.c (gdbpy_eval_from_control_command)
9400         (python_command, python_interactive_command): Update.
9401         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
9402         * guile/guile.c (guile_command)
9403         (gdbscm_eval_from_control_command, guile_command): Update.
9404         * compile/compile.c (compile_code_command)
9405         (compile_print_command, compile_to_object): Update.
9406         * cli/cli-script.h (struct command_lines_deleter): New.
9407         (counted_command_line): New typedef.
9408         (struct command_line): Add constructor, destructor.
9409         <body_list>: Remove.
9410         <body_list_0, body_list_1>: New members.
9411         (command_line_up): Remove typedef.
9412         (read_command_lines, read_command_lines_1, get_command_line):
9413         Update.
9414         (copy_command_lines): Don't declare.
9415         * cli/cli-script.c (build_command_line): Use "new".
9416         (get_command_line): Return counted_command_line.
9417         (print_command_lines, execute_user_command)
9418         (execute_control_command_1, while_command, if_command): Update.
9419         (realloc_body_list): Remove.
9420         (process_next_line, recurse_read_control_structure): Update.
9421         (read_command_lines, read_command_lines_1): Return counted_command_line.
9422         (free_command_lines): Use "delete".
9423         (copy_command_lines): Remove.
9424         (define_command, document_command, show_user_1): Update.
9425         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
9426         a counted_command_line.
9427         * breakpoint.h (counted_command_line): Remove typedef.
9428         (breakpoint_set_commands): Update.
9429         * breakpoint.c (check_no_tracepoint_commands)
9430         (validate_commands_for_breakpoint): Update.
9431         (breakpoint_set_commands): Change commands to be a
9432         counted_command_line.
9433         (commands_command_1, update_dprintf_command_list)
9434         (create_tracepoint_from_upload): Update.
9435
9436 2018-05-04  Tom Tromey  <tom@tromey.com>
9437
9438         * cli/cli-decode.h (cmd_list_element): New constructor.
9439         (~cmd_list_element): New destructor.
9440         (struct cmd_list_element): Add initializers.
9441         * cli/cli-decode.c (do_add_cmd): Use "new".
9442         (delete_cmd): Use "delete".
9443
9444 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
9445             Pedro Alves <palves@redhat.com>
9446
9447         PR breakpoints/19806 and support for PR external/20207.
9448         * NEWS: Mention Aarch64 watchpoint improvements.
9449         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
9450         watchpoints and PR external/20207 watchpoints.
9451         * nat/aarch64-linux-hw-point.c
9452         (kernel_supports_any_contiguous_range): New.
9453         (aarch64_watchpoint_offset): New.
9454         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
9455         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
9456         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
9457         (aarch64_align_watchpoint): New parameters aligned_offset_p and
9458         next_addr_orig_p.  Support PR external/20207 watchpoints.
9459         (aarch64_downgrade_regs): New.
9460         (aarch64_dr_state_insert_one_point): New parameters offset and
9461         addr_orig.
9462         (aarch64_dr_state_remove_one_point): Likewise.
9463         (aarch64_handle_breakpoint): Update caller.
9464         (aarch64_handle_aligned_watchpoint): Likewise.
9465         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
9466         aligned_offset.
9467         (aarch64_linux_set_debug_regs): Remove const from state.  Call
9468         aarch64_downgrade_regs.
9469         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
9470         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
9471         (DR_CONTROL_MASK): ... this.
9472         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
9473         (unsigned int aarch64_watchpoint_offset): New prototype.
9474         (aarch64_linux_set_debug_regs): Remove const from state.
9475         * utils.c (align_up, align_down): Move to ...
9476         * common/common-utils.c (align_up, align_down): ... here.
9477         * utils.h (align_up, align_down): Move to ...
9478         * common/common-utils.h (align_up, align_down): ... here.
9479
9480 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
9481
9482         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
9483         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
9484         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
9485         Re-implement to match the ABI as summarized in GCC's
9486         gcc/config/sparc/sparc.c.  All callers updated.
9487         (sparc32_store_arguments): Remove assertion.
9488
9489 2018-05-04  Tom Tromey  <tom@tromey.com>
9490
9491         * printcmd.c: Don't include tui.h.
9492         (decode_format): Use skip_spaces.
9493
9494 2018-05-04  Tom Tromey  <tom@tromey.com>
9495
9496         PR gdb/22619:
9497         * printcmd.c (last_count): New global.
9498         (x_command): Use saved count when repeating.
9499
9500 2018-05-04  Tom Tromey  <tom@tromey.com>
9501
9502         * nto-procfs.c (do_closedir_cleanup): Remove.
9503         (procfs_pidlist): Use gdb_dir_up.
9504         * procfs.c (do_closedir_cleanup): Remove.
9505         (proc_update_threads): Use gdb_dir_up.
9506         * common/filestuff.h (struct gdb_dir_deleter): New.
9507         (gdb_dir_up): New typedef.
9508
9509 2018-05-04  Tom Tromey  <tom@tromey.com>
9510
9511         * ada-lang.c (print_mention_exception): Use std::string.
9512
9513 2018-05-04  Tom Tromey  <tom@tromey.com>
9514
9515         * ada-lang.c (create_excep_cond_exprs): Update.
9516         (ada_exception_catchpoint_cond_string): Use std::string.
9517
9518 2018-05-04  Tom Tromey  <tom@tromey.com>
9519
9520         * ada-lang.c (xget_renaming_scope): Return std::string.
9521         (old_renaming_is_invisible): Update.
9522
9523 2018-05-04  Tom Tromey  <tom@tromey.com>
9524
9525         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
9526         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
9527
9528 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
9529
9530         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
9531
9532 2018-05-04  Tom Tromey  <tom@tromey.com>
9533
9534         * remote.c (remote_query_supported_append): Change type.
9535         (remote_check_symbols): Update.
9536
9537 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
9538
9539         PR gdb/11420
9540         * configure.ac: Prepend libpython.
9541         * python/python-config.py: Likewise.
9542         * configure: Regenerate.
9543
9544 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
9545
9546         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
9547
9548 2018-05-03  Pedro Alves  <palves@redhat.com>
9549
9550         * s390-linux-nat.c
9551         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
9552         override.  Write 'true' instead of '1'.
9553         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
9554         declaration.
9555
9556 2018-05-02  Pedro Alves  <palves@redhat.com>
9557
9558         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
9559         add_inf_child_target.
9560         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
9561         add_inf_child_target.
9562         * aix-thread.c (aix_thread_target_info): New.
9563         (aix_thread_target) <shortname, longname, doc>: Delete.
9564         <info>: New.
9565         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
9566         add_inf_child_target.
9567         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
9568         add_inf_child_target.
9569         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
9570         add_inf_child_target.
9571         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
9572         add_inf_child_target.
9573         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
9574         add_inf_child_target.
9575         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
9576         add_inf_child_target.
9577         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
9578         add_inf_child_target.
9579         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
9580         add_inf_child_target.
9581         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
9582         add_inf_child_target.
9583         * bfd-target.c (target_bfd_target_info): New.
9584         (target_bfd) <shortname, longname, doc>: Delete.
9585         <info>: New.
9586         * bsd-kvm.c (bsd_kvm_target_info): New.
9587         (bsd_kvm_target) <shortname, longname, doc>: Delete.
9588         <info>: New.
9589         (bsd_kvm_target::open): Rename to ...
9590         (bsd_kvm_target_open): ... this.  Adjust.
9591         * bsd-uthread.c (bsd_uthread_target_info): New.
9592         (bsd_uthread_target) <shortname, longname, doc>: Delete.
9593         <info>: New.
9594         * corefile.c (core_file_command): Adjust.
9595         * corelow.c (core_target_info): New.
9596         (core_target) <shortname, longname, doc>: Delete.
9597         <info>: New.
9598         (core_target::open): Rename to ...
9599         (core_target_open): ... this.  Adjust.
9600         * ctf.c (ctf_target_info): New.
9601         (ctf_target) <shortname, longname, doc>: Delete.
9602         <info>: New.
9603         (ctf_target::open): Rename to ...
9604         (ctf_target_open): ... this.
9605         (_initialize_ctf): Adjust.
9606         * exec.c (exec_target_info): New.
9607         (exec_target) <shortname, longname, doc>: Delete.
9608         <info>: New.
9609         (exec_target::open): Rename to ...
9610         (exec_target_open): ... this.
9611         * gdbcore.h (core_target_open): Declare.
9612         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
9613         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
9614         add_inf_child_target.
9615         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
9616         add_inf_child_target.
9617         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
9618         add_inf_child_target.
9619         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
9620         add_inf_child_target.
9621         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
9622         add_inf_child_target.
9623         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
9624         add_inf_child_target.
9625         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
9626         add_inf_child_target.
9627         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
9628         add_inf_child_target.
9629         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
9630         add_inf_child_target.
9631         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
9632         add_inf_child_target.
9633         * inf-child.c (inf_child_target_info): New.
9634         (inf_child_target::info): New.
9635         (inf_child_open_target): Remove 'target' parameter.  Use
9636         get_native_target instead.
9637         (inf_child_target::open): Delete.
9638         (add_inf_child_target): New.
9639         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
9640         Delete.
9641         <info>: New.
9642         (add_inf_child_target): Declare.
9643         (inf_child_open_target): Declare.
9644         * linux-thread-db.c (thread_db_target_info): New.
9645         (thread_db_target) <shortname, longname, doc>: Delete.
9646         <info>: New.
9647         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
9648         add_inf_child_target.
9649         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
9650         add_inf_child_target.
9651         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
9652         add_inf_child_target.
9653         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
9654         add_inf_child_target.
9655         * make-target-delegates (print_class): Adjust.
9656         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
9657         add_inf_child_target.
9658         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
9659         add_inf_child_target.
9660         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
9661         add_inf_child_target.
9662         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
9663         add_inf_child_target.
9664         * nto-procfs.c (nto_native_target_info): New.
9665         (nto_procfs_target_native) <shortname, longname, doc>:
9666         Delete.
9667         <info>: New.
9668         (nto_procfs_target_info): New.
9669         (nto_procfs_target_procfs) <shortname, longname, doc>:
9670         Delete.
9671         <info>: New.
9672         (init_procfs_targets): Adjust.
9673         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
9674         add_inf_child_target.
9675         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
9676         add_inf_child_target.
9677         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
9678         add_inf_child_target.
9679         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
9680         add_inf_child_target.
9681         * ravenscar-thread.c (ravenscar_target_info): New.
9682         (ravenscar_thread_target) <shortname, longname, doc>:
9683         Delete.
9684         <info>: New.
9685         * record-btrace.c (record_btrace_target_info):
9686         (record_btrace_target) <shortname, longname, doc>: Delete.
9687         <info>: New.
9688         (record_btrace_target::open): Rename to ...
9689         (record_btrace_target_open): ... this.  Adjust.
9690         * record-full.c (record_longname, record_doc): New.
9691         (record_full_base_target) <shortname, longname, doc>: Delete.
9692         <info>: New.
9693         (record_full_target_info): New.
9694         (record_full_target): <shortname>: Delete.
9695         <info>: New.
9696         (record_full_core_open_1, record_full_open_1): Update comments.
9697         (record_full_base_target::open): Rename to ...
9698         (record_full_open): ... this.
9699         (cmd_record_full_restore): Update.
9700         (_initialize_record_full): Update.
9701         * remote-sim.c (remote_sim_target_info): New.
9702         (gdbsim_target) <shortname, longname, doc>: Delete.
9703         <info>: New.
9704         (gdbsim_target::open): Rename to ...
9705         (gdbsim_target_open): ... this.
9706         (_initialize_remote_sim): Adjust.
9707         * remote.c (remote_doc): New.
9708         (remote_target_info): New.
9709         (remote_target) <shortname, longname, doc>: Delete.
9710         <info>: New.
9711         (extended_remote_target_info): New.
9712         (extended_remote_target) <shortname, longname, doc>: Delete.
9713         <info>: New.
9714         (remote_target::open_1): Make static.  Adjust.
9715         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
9716         * s390-linux-nat.c (_initialize_s390_nat): Use
9717         add_inf_child_target.
9718         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
9719         add_inf_child_target.
9720         * sol-thread.c (thread_db_target_info): New.
9721         (sol_thread_target) <shortname, longname, doc>: Delete.
9722         <info>: New.
9723         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
9724         add_inf_child_target.
9725         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
9726         add_inf_child_target.
9727         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
9728         add_inf_child_target.
9729         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
9730         add_inf_child_target.
9731         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
9732         add_inf_child_target.
9733         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
9734         add_inf_child_target.
9735         * spu-linux-nat.c (_initialize_spu_nat): Use
9736         add_inf_child_target.
9737         * spu-multiarch.c (spu_multiarch_target_info): New.
9738         (spu_multiarch_target) <shortname, longname, doc>: Delete.
9739         <info>: New.
9740         * target-delegates.c: Regenerate.
9741         * target.c: Include <unordered_map>.
9742         (target_ops_p): Delete.
9743         (DEF_VEC_P(target_ops_p)): Delete.
9744         (target_factories): New.
9745         (test_target_info): New.
9746         (test_target_ops::info): New.
9747         (open_target): Adjust to use target_factories.
9748         (add_target_with_completer): Rename to ...
9749         (add_target): ... this.  Change prototype.  Register target_info
9750         and open callback in target_factories.  Register target_info in
9751         command context instead of target_ops.
9752         (add_target): Delete old implementation.
9753         (add_deprecated_target_alias): Change prototype.  Adjust.
9754         (the_native_target): New.
9755         (set_native_target, get_native_target): New.
9756         (find_default_run_target): Use the_native_target.
9757         (find_attach_target, find_run_target): Simplify.
9758         (target_ops::open): Delete.
9759         (dummy_target_info): New.
9760         (dummy_target::shortname, dummy_target::longname)
9761         (dummy_target::doc): Delete.
9762         (dummy_target::info): New.
9763         (debug_target::shortname, debug_target::longname)
9764         (debug_target::doc): Delete.
9765         (debug_target::info): New.
9766         * target.h (struct target_info): New.
9767         (target_ops::~target_ops): Add comment.
9768         (target_ops::info): New.
9769         (target_ops::shortname, target_ops::longname, target_ops::doc): No
9770         longer virtual.  Implement in terms of target_info.
9771         (set_native_target, get_native_target): Declare.
9772         (target_open_ftype): New.
9773         (add_target, add_target_with_completer)
9774         (add_deprecated_target_alias): Change prototype.
9775         (test_target) <shortname, longname, doc>: Delete.
9776         <info>: New.
9777         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
9778         add_inf_child_target.
9779         * tracefile-tfile.c (tfile_target_info): New.
9780         (tfile_target) <shortname, longname, doc>: Delete.
9781         <info>: New.
9782         (tfile_target::open): Rename to ...
9783         (tfile_target_open): ... this.
9784         (_initialize_tracefile_tfile): Adjust.
9785         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
9786         add_inf_child_target.
9787         * windows-nat.c (_initialize_windows_nat): Use
9788         add_inf_child_target.
9789         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
9790         add_inf_child_target.
9791
9792 2018-05-02  Pedro Alves  <palves@redhat.com>
9793
9794         * linux-nat.h (linux_nat_target) <low_new_thread,
9795         low_delete_thread, low_new_fork, low_forget_process,
9796         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
9797         New virtual methods.
9798         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9799         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
9800         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
9801         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9802         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
9803         Delete.
9804         * linux-fork.c (delete_fork): Adjust to call low method.
9805         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
9806         (linux_nat_new_fork, linux_nat_forget_process_hook)
9807         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
9808         (linux_nat_status_is_event):
9809         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
9810         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
9811         to call low method.
9812         (sigtrap_is_event): Rename to ...
9813         (linux_nat_target::low_status_is_event): ... this.
9814         (linux_nat_set_status_is_event): Delete.
9815         (save_stop_reason, linux_nat_wait_1)
9816         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
9817         low methods.
9818         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9819         (linux_nat_set_new_fork, linux_nat_set_forget_process)
9820         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9821         (linux_nat_set_prepare_to_resume): Delete.
9822         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
9823         low virtual methods.
9824         * amd64-linux-nat.c: Likewise.
9825         * arm-linux-nat.c: Likewise.
9826         * i386-linux-nat.c: Likewise.
9827         * ia64-linux-nat.c: Likewise.
9828         * mips-linux-nat.c: Likewise.
9829         * ppc-linux-nat.c: Likewise.
9830         * s390-linux-nat.c: Likewise.
9831         * sparc64-linux-nat.c: Likewise.
9832         * x86-linux-nat.c: Likewise.
9833         * x86-linux-nat.h: Include "nat/x86-linux.h".
9834         (x86_linux_nat_target) <low_new_fork, low_forget_process,
9835         low_prepare_to_resume, low_new_thread, low_delete_thread>:
9836         Override methods.
9837
9838 2018-05-02  Pedro Alves  <palves@redhat.com>
9839
9840         * target.h (target_ops)
9841         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
9842         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
9843         stopped_by_watchpoint, have_continuable_watchpoint,
9844         stopped_data_address, watchpoint_addr_within_range,
9845         can_accel_watchpoint_condition, can_run, thread_alive,
9846         has_all_memory, has_memory, has_stack, has_registers,
9847         has_execution, can_async_p, is_async_p, supports_non_stop,
9848         always_non_stop_p, can_execute_reverse, supports_multi_process,
9849         supports_enable_disable_tracepoint,
9850         supports_disable_randomization, supports_string_tracing,
9851         supports_evaluation_of_breakpoint_conditions,
9852         can_run_breakpoint_commands, filesystem_is_local,
9853         can_download_tracepoint, get_trace_state_variable_value,
9854         set_trace_notes, get_tib_address, use_agent, can_use_agent,
9855         record_is_replaying, record_will_replay,
9856         augmented_libraries_svr4_read>: Adjust to return bool.
9857         * aarch64-linux-nat.c: All implementations adjusted.
9858         * aix-thread.c: All implementations adjusted.
9859         * arm-linux-nat.c: All implementations adjusted.
9860         * breakpoint.c: All implementations adjusted.
9861         * bsd-kvm.c: All implementations adjusted.
9862         * bsd-uthread.c: All implementations adjusted.
9863         * corelow.c: All implementations adjusted.
9864         * ctf.c: All implementations adjusted.
9865         * darwin-nat.c: All implementations adjusted.
9866         * darwin-nat.h: All implementations adjusted.
9867         * exec.c: All implementations adjusted.
9868         * fbsd-nat.c: All implementations adjusted.
9869         * fbsd-nat.h: All implementations adjusted.
9870         * gnu-nat.c: All implementations adjusted.
9871         * gnu-nat.h: All implementations adjusted.
9872         * go32-nat.c: All implementations adjusted.
9873         * ia64-linux-nat.c: All implementations adjusted.
9874         * inf-child.c: All implementations adjusted.
9875         * inf-child.h: All implementations adjusted.
9876         * inf-ptrace.c: All implementations adjusted.
9877         * inf-ptrace.h: All implementations adjusted.
9878         * linux-nat.c: All implementations adjusted.
9879         * linux-nat.h: All implementations adjusted.
9880         * mips-linux-nat.c: All implementations adjusted.
9881         * nto-procfs.c: All implementations adjusted.
9882         * ppc-linux-nat.c: All implementations adjusted.
9883         * procfs.c: All implementations adjusted.
9884         * ravenscar-thread.c: All implementations adjusted.
9885         * record-btrace.c: All implementations adjusted.
9886         * record-full.c: All implementations adjusted.
9887         * remote-sim.c: All implementations adjusted.
9888         * remote.c: All implementations adjusted.
9889         * s390-linux-nat.c: All implementations adjusted.
9890         * sol-thread.c: All implementations adjusted.
9891         * spu-multiarch.c: All implementations adjusted.
9892         * target-delegates.c: All implementations adjusted.
9893         * target.c: All implementations adjusted.
9894         * target.h: All implementations adjusted.
9895         * tracefile-tfile.c: All implementations adjusted.
9896         * tracefile.c: All implementations adjusted.
9897         * tracefile.h: All implementations adjusted.
9898         * windows-nat.c: All implementations adjusted.
9899         * x86-linux-nat.h: All implementations adjusted.
9900         * x86-nat.h: All implementations adjusted.
9901
9902 2018-05-02  Pedro Alves  <palves@redhat.com>
9903
9904         * make-target-delegates (scan_target_h): Don't trim lines here.
9905         Replace sequences of tabs and/or whitespace with a single
9906         whitespace.
9907         (top level, parsing methods): Trim each line before processing it
9908         here.
9909
9910 2018-05-02  Pedro Alves  <palves@redhat.com>
9911             John Baldwin  <jhb@freebsd.org>
9912
9913         * target.h (enum strata) <debug_stratum>: New.
9914         (struct target_ops) <all delegation methods>: Replace by C++
9915         virtual methods, and drop "to_" prefix.  All references updated
9916         throughout.
9917         <to_shortname, to_longname, to_doc, to_data,
9918         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
9919         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
9920         virtual methods.  All references updated throughout.
9921         <can_attach, supports_terminal_ours, can_create_inferior,
9922         get_thread_control_capabilities, attach_no_wait>: New
9923         virtual methods.
9924         <insert_breakpoint, remove_breakpoint>: Now
9925         TARGET_DEFAULT_NORETURN methods.
9926         <info_proc>: Now returns bool.
9927         <to_magic>: Delete.
9928         (OPS_MAGIC): Delete.
9929         (current_target): Delete.  All references replaced by references
9930         to ...
9931         (target_stack): ... this.  New.
9932         (target_shortname, target_longname): Adjust.
9933         (target_can_run): Now a function declaration.
9934         (default_child_has_all_memory, default_child_has_memory)
9935         (default_child_has_stack, default_child_has_registers)
9936         (default_child_has_execution): Remove target_ops parameter.
9937         (complete_target_initialization): Delete.
9938         (memory_breakpoint_target): New template class.
9939         (test_target_ops): Refactor as a C++ class with virtual methods.
9940         * make-target-delegates (NAME_PART): Tighten.
9941         (POINTER_PART, CP_SYMBOL): New.
9942         (SIMPLE_RETURN_PART): Reimplement.
9943         (VEC_RETURN_PART): Expect less.
9944         (RETURN_PART, VIRTUAL_PART): New.
9945         (METHOD): Adjust to C++ virtual methods.
9946         (scan_target_h): Remove reference to C99.
9947         (dname): Output "target_ops::" prefix.
9948         (write_function_header): Adjust to output a C++ class method.
9949         (write_declaration): New.
9950         (write_delegator): Adjust to output a C++ class method.
9951         (tdname): Output "dummy_target::" prefix.
9952         (write_tdefault, write_debugmethod): Adjust to output a C++ class
9953         method.
9954         (tdefault_names, debug_names): Delete.
9955         (return_types, tdefaults, styles, argtypes_array): New.
9956         (top level): All methods are delegators.
9957         (print_class): New.
9958         (top level): Print dummy_target and debug_target classes.
9959         * target-delegates.c: Regenerate.
9960         * target-debug.h (target_debug_print_enum_info_proc_what)
9961         (target_debug_print_thread_control_capabilities)
9962         (target_debug_print_thread_info_p): New.
9963         * target.c (dummy_target): Delete.
9964         (the_dummy_target, the_debug_target): New.
9965         (target_stack): Now extern.
9966         (set_targetdebug): Push/unpush debug target.
9967         (default_child_has_all_memory, default_child_has_memory)
9968         (default_child_has_stack, default_child_has_registers)
9969         (default_child_has_execution): Remove target_ops parameter.
9970         (complete_target_initialization): Delete.
9971         (add_target_with_completer): No longer call
9972         complete_target_initialization.
9973         (target_supports_terminal_ours): Use regular delegation.
9974         (update_current_target): Delete.
9975         (push_target): No longer check magic number.  Don't call
9976         update_current_target.
9977         (unpush_target): Don't call update_current_target.
9978         (target_is_pushed): No longer check magic number.
9979         (target_require_runnable): Skip for all stratums over
9980         process_stratum.
9981         (target_ops::info_proc): New.
9982         (target_info_proc): Use find_target_at and
9983         find_default_run_target.
9984         (target_supports_disable_randomization): Use regular delegation.
9985         (target_get_osdata): Use find_target_at.
9986         (target_ops::open, target_ops::close, target_ops::can_attach)
9987         (target_ops::attach, target_ops::can_create_inferior)
9988         (target_ops::create_inferior, target_ops::can_run)
9989         (target_can_run): New.
9990         (default_fileio_target): Use regular delegation.
9991         (target_ops::fileio_open, target_ops::fileio_pwrite)
9992         (target_ops::fileio_pread, target_ops::fileio_fstat)
9993         (target_ops::fileio_close, target_ops::fileio_unlink)
9994         (target_ops::fileio_readlink): New.
9995         (target_fileio_open_1, target_fileio_unlink)
9996         (target_fileio_readlink): Always call the target method.  Handle
9997         FILEIO_ENOSYS.
9998         (return_zero, return_zero_has_execution): Delete.
9999         (init_dummy_target): Delete.
10000         (dummy_target::dummy_target, dummy_target::shortname)
10001         (dummy_target::longname, dummy_target::doc)
10002         (debug_target::debug_target, debug_target::shortname)
10003         (debug_target::longname, debug_target::doc): New.
10004         (target_supports_delete_record): Use regular delegation.
10005         (setup_target_debug): Delete.
10006         (maintenance_print_target_stack): Skip debug_stratum.
10007         (initialize_targets): Instantiate the_dummy_target and
10008         the_debug_target.
10009         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
10010         use target_stack.
10011         (target_auxv_search, fprint_target_auxv): Adjust.
10012         (info_auxv_command): Adjust to use target_stack.
10013         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
10014         * exceptions.c (print_flush): Handle a NULL target_stack.
10015         * regcache.c (target_ops_no_register): Refactor as class with
10016         virtual methods.
10017
10018         * exec.c (exec_target): New class.
10019         (exec_ops): Now an exec_target.
10020         (exec_open, exec_close_1, exec_get_section_table)
10021         (exec_xfer_partial, exec_files_info, exec_has_memory)
10022         (exec_make_note_section): Refactor as exec_target methods.
10023         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
10024         Delete.
10025         (exec_target::find_memory_regions): New.
10026         (_initialize_exec): Don't call init_exec_ops.
10027         * gdbcore.h (exec_file_clear): Delete.
10028
10029         * corefile.c (core_target): Delete.
10030         (core_file_command): Adjust.
10031         * corelow.c (core_target): New class.
10032         (the_core_target): New.
10033         (core_close): Remove target_ops parameter.
10034         (core_close_cleanup): Adjust.
10035         (core_target::close): New.
10036         (core_open, core_detach, get_core_registers, core_files_info)
10037         (core_xfer_partial, core_thread_alive, core_read_description)
10038         (core_pid_to_str, core_thread_name, core_has_memory)
10039         (core_has_stack, core_has_registers, core_info_proc): Rework as
10040         core_target methods.
10041         (ignore, core_remove_breakpoint, init_core_ops): Delete.
10042         (_initialize_corelow): Initialize the_core_target.
10043         * gdbcore.h (core_target): Delete.
10044         (the_core_target): New.
10045
10046         * ctf.c: (ctf_target): New class.
10047         (ctf_ops): Now a ctf_target.
10048         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
10049         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
10050         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
10051         methods.
10052         (init_ctf_ops): Delete.
10053         (_initialize_ctf): Don't call it.
10054         * tracefile-tfile.c (tfile_target): New class.
10055         (tfile_ops): Now a tfile_target.
10056         (tfile_open, tfile_close, tfile_files_info)
10057         (tfile_get_tracepoint_status, tfile_trace_find)
10058         (tfile_fetch_registers, tfile_xfer_partial)
10059         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
10060         Refactor as tfile_target methods.
10061         (tfile_xfer_partial_features): Remove target_ops parameter.
10062         (init_tfile_ops): Delete.
10063         (_initialize_tracefile_tfile): Don't call it.
10064         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
10065         (tracefile_has_stack, tracefile_has_registers)
10066         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
10067         tracefile_target methods.
10068         (init_tracefile_ops): Delete.
10069         (tracefile_target::tracefile_target): New.
10070         * tracefile.h: Include "target.h".
10071         (tracefile_target): New class.
10072         (init_tracefile_ops): Delete.
10073
10074         * spu-multiarch.c (spu_multiarch_target): New class.
10075         (spu_ops): Now a spu_multiarch_target.
10076         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
10077         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
10078         (spu_search_memory, spu_mourn_inferior): Refactor as
10079         spu_multiarch_target methods.
10080         (init_spu_ops): Delete.
10081         (_initialize_spu_multiarch): Remove references to init_spu_ops,
10082         complete_target_initialization.
10083
10084         * ravenscar-thread.c (ravenscar_thread_target): New class.
10085         (ravenscar_ops): Now a ravenscar_thread_target.
10086         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
10087         (ravenscar_thread_alive, ravenscar_pid_to_str)
10088         (ravenscar_fetch_registers, ravenscar_store_registers)
10089         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
10090         (ravenscar_stopped_by_hw_breakpoint)
10091         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
10092         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
10093         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
10094         methods.
10095         (init_ravenscar_thread_ops): Delete.
10096         (_initialize_ravenscar): Remove references to
10097         init_ravenscar_thread_ops and complete_target_initialization.
10098
10099         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
10100         (bsd_uthread_target): New class.
10101         (bsd_uthread_ops): Now a bsd_uthread_target.
10102         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
10103         (bsd_uthread_close, bsd_uthread_mourn_inferior)
10104         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
10105         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
10106         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
10107         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
10108         (bsd_uthread_target): Delete function.
10109         (_initialize_bsd_uthread): Remove reference to
10110         complete_target_initialization.
10111
10112         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
10113         (target_bfd): ... this new class.
10114         (target_bfd_xfer_partial, target_bfd_get_section_table)
10115         (target_bfd_close): Refactor as target_bfd methods.
10116         (target_bfd::~target_bfd): New.
10117         (target_bfd_reopen): Adjust.
10118         (target_bfd::close): New.
10119
10120         * record-btrace.c (record_btrace_target): New class.
10121         (record_btrace_ops): Now a record_btrace_target.
10122         (record_btrace_open, record_btrace_stop_recording)
10123         (record_btrace_disconnect, record_btrace_close)
10124         (record_btrace_async, record_btrace_info)
10125         (record_btrace_insn_history, record_btrace_insn_history_range)
10126         (record_btrace_insn_history_from, record_btrace_call_history)
10127         (record_btrace_call_history_range)
10128         (record_btrace_call_history_from, record_btrace_record_method)
10129         (record_btrace_is_replaying, record_btrace_will_replay)
10130         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
10131         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
10132         (record_btrace_store_registers, record_btrace_prepare_to_store)
10133         (record_btrace_to_get_unwinder)
10134         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
10135         (record_btrace_commit_resume, record_btrace_wait)
10136         (record_btrace_stop, record_btrace_can_execute_reverse)
10137         (record_btrace_stopped_by_sw_breakpoint)
10138         (record_btrace_supports_stopped_by_sw_breakpoint)
10139         (record_btrace_stopped_by_hw_breakpoint)
10140         (record_btrace_supports_stopped_by_hw_breakpoint)
10141         (record_btrace_update_thread_list, record_btrace_thread_alive)
10142         (record_btrace_goto_begin, record_btrace_goto_end)
10143         (record_btrace_goto, record_btrace_stop_replaying_all)
10144         (record_btrace_execution_direction)
10145         (record_btrace_prepare_to_generate_core)
10146         (record_btrace_done_generating_core): Refactor as
10147         record_btrace_target methods.
10148         (init_record_btrace_ops): Delete.
10149         (_initialize_record_btrace): Remove reference to
10150         init_record_btrace_ops.
10151         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
10152         the execution_direction global.
10153         (record_full_base_target, record_full_target)
10154         (record_full_core_target): New classes.
10155         (record_full_ops): Now a record_full_target.
10156         (record_full_core_ops): Now a record_full_core_target.
10157         (record_full_target::detach, record_full_target::disconnect)
10158         (record_full_core_target::disconnect)
10159         (record_full_target::mourn_inferior, record_full_target::kill):
10160         New.
10161         (record_full_open, record_full_close, record_full_async): Refactor
10162         as methods of the record_full_base_target class.
10163         (record_full_resume, record_full_commit_resume): Refactor
10164         as methods of the record_full_target class.
10165         (record_full_wait, record_full_stopped_by_watchpoint)
10166         (record_full_stopped_data_address)
10167         (record_full_stopped_by_sw_breakpoint)
10168         (record_full_supports_stopped_by_sw_breakpoint)
10169         (record_full_stopped_by_hw_breakpoint)
10170         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
10171         methods of the record_full_base_target class.
10172         (record_full_store_registers, record_full_xfer_partial)
10173         (record_full_insert_breakpoint, record_full_remove_breakpoint):
10174         Refactor as methods of the record_full_target class.
10175         (record_full_can_execute_reverse, record_full_get_bookmark)
10176         (record_full_goto_bookmark, record_full_execution_direction)
10177         (record_full_record_method, record_full_info, record_full_delete)
10178         (record_full_is_replaying, record_full_will_replay)
10179         (record_full_goto_begin, record_full_goto_end, record_full_goto)
10180         (record_full_stop_replaying): Refactor as methods of the
10181         record_full_base_target class.
10182         (record_full_core_resume, record_full_core_kill)
10183         (record_full_core_fetch_registers)
10184         (record_full_core_prepare_to_store)
10185         (record_full_core_store_registers, record_full_core_xfer_partial)
10186         (record_full_core_insert_breakpoint)
10187         (record_full_core_remove_breakpoint)
10188         (record_full_core_has_execution): Refactor
10189         as methods of the record_full_core_target class.
10190         (record_full_base_target::supports_delete_record): New.
10191         (init_record_full_ops): Delete.
10192         (init_record_full_core_ops): Delete.
10193         (record_full_save): Refactor as method of the
10194         record_full_base_target class.
10195         (_initialize_record_full): Remove references to
10196         init_record_full_ops and init_record_full_core_ops.
10197
10198         * remote.c (remote_target, extended_remote_target): New classes.
10199         (remote_ops): Now a remote_target.
10200         (extended_remote_ops): Now an extended_remote_target.
10201         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
10202         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
10203         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
10204         (remote_pass_signals, remote_set_syscall_catchpoint)
10205         (remote_program_signals, )
10206         (remote_thread_always_alive): Remove target_ops parameter.
10207         (remote_thread_alive, remote_thread_name)
10208         (remote_update_thread_list, remote_threads_extra_info)
10209         (remote_static_tracepoint_marker_at)
10210         (remote_static_tracepoint_markers_by_strid)
10211         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
10212         (remote_open): Refactor as methods of remote_target.
10213         (extended_remote_open, extended_remote_detach)
10214         (extended_remote_attach, extended_remote_post_attach):
10215         (extended_remote_supports_disable_randomization)
10216         (extended_remote_create_inferior): : Refactor as method of
10217         extended_remote_target.
10218         (remote_set_permissions, remote_open_1, remote_detach)
10219         (remote_follow_fork, remote_follow_exec, remote_disconnect)
10220         (remote_resume, remote_commit_resume, remote_stop)
10221         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
10222         (remote_terminal_ours, remote_wait, remote_fetch_registers)
10223         (remote_prepare_to_store, remote_store_registers)
10224         (remote_flash_erase, remote_flash_done, remote_files_info)
10225         (remote_kill, remote_mourn, remote_insert_breakpoint)
10226         (remote_remove_breakpoint, remote_insert_watchpoint)
10227         (remote_watchpoint_addr_within_range)
10228         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
10229         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
10230         (remote_supports_stopped_by_sw_breakpoint)
10231         (remote_stopped_by_hw_breakpoint)
10232         (remote_supports_stopped_by_hw_breakpoint)
10233         (remote_stopped_by_watchpoint, remote_stopped_data_address)
10234         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
10235         (remote_verify_memory): Refactor as methods of remote_target.
10236         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
10237         parameter.
10238         (remote_xfer_partial, remote_get_memory_xfer_limit)
10239         (remote_search_memory, remote_rcmd, remote_memory_map)
10240         (remote_pid_to_str, remote_get_thread_local_address)
10241         (remote_get_tib_address, remote_read_description): Refactor as
10242         methods of remote_target.
10243         (remote_target::fileio_open, remote_target::fileio_pwrite)
10244         (remote_target::fileio_pread, remote_target::fileio_close): New.
10245         (remote_hostio_readlink, remote_hostio_fstat)
10246         (remote_filesystem_is_local, remote_can_execute_reverse)
10247         (remote_supports_non_stop, remote_supports_disable_randomization)
10248         (remote_supports_multi_process, remote_supports_cond_breakpoints)
10249         (remote_supports_enable_disable_tracepoint)
10250         (remote_supports_string_tracing)
10251         (remote_can_run_breakpoint_commands, remote_trace_init)
10252         (remote_download_tracepoint, remote_can_download_tracepoint)
10253         (remote_download_trace_state_variable, remote_enable_tracepoint)
10254         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
10255         (remote_trace_start, remote_get_trace_status)
10256         (remote_get_tracepoint_status, remote_trace_stop)
10257         (remote_trace_find, remote_get_trace_state_variable_value)
10258         (remote_save_trace_data, remote_get_raw_trace_data)
10259         (remote_set_disconnected_tracing, remote_core_of_thread)
10260         (remote_set_circular_trace_buffer, remote_traceframe_info)
10261         (remote_get_min_fast_tracepoint_insn_len)
10262         (remote_set_trace_buffer_size, remote_set_trace_notes)
10263         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
10264         (remote_disable_btrace, remote_teardown_btrace)
10265         (remote_read_btrace, remote_btrace_conf)
10266         (remote_augmented_libraries_svr4_read, remote_load)
10267         (remote_pid_to_exec_file, remote_can_do_single_step)
10268         (remote_execution_direction, remote_thread_handle_to_thread_info):
10269         Refactor as methods of remote_target.
10270         (init_remote_ops, init_extended_remote_ops): Delete.
10271         (remote_can_async_p, remote_is_async_p, remote_async)
10272         (remote_thread_events, remote_upload_tracepoints)
10273         (remote_upload_trace_state_variables): Refactor as methods of
10274         remote_target.
10275         (_initialize_remote): Remove references to init_remote_ops and
10276         init_extended_remote_ops.
10277
10278         * remote-sim.c (gdbsim_target): New class.
10279         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
10280         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
10281         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
10282         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
10283         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
10284         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
10285         Refactor as methods of gdbsim_target.
10286         (gdbsim_ops): Now a gdbsim_target.
10287         (init_gdbsim_ops): Delete.
10288         (gdbsim_cntrl_c): Adjust.
10289         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
10290
10291         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
10292         (the_amd64_linux_nat_target): New.
10293         (amd64_linux_fetch_inferior_registers)
10294         (amd64_linux_store_inferior_registers): Refactor as methods of
10295         amd64_linux_nat_target.
10296         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
10297         * i386-linux-nat.c: Don't include "linux-nat.h".
10298         (i386_linux_nat_target): New class.
10299         (the_i386_linux_nat_target): New.
10300         (i386_linux_fetch_inferior_registers)
10301         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
10302         as methods of i386_linux_nat_target.
10303         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
10304         * inf-child.c (inf_child_ops): Delete.
10305         (inf_child_fetch_inferior_registers)
10306         (inf_child_store_inferior_registers): Delete.
10307         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
10308         methods of inf_child_target.
10309         (inf_child_target::supports_terminal_ours)
10310         (inf_child_target::terminal_init)
10311         (inf_child_target::terminal_inferior)
10312         (inf_child_target::terminal_ours_for_output)
10313         (inf_child_target::terminal_ours, inf_child_target::interrupt)
10314         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
10315         New.
10316         (inf_child_open, inf_child_disconnect, inf_child_close)
10317         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
10318         (inf_child_post_startup_inferior, inf_child_can_run)
10319         (inf_child_pid_to_exec_file): Refactor as methods of
10320         inf_child_target.
10321         (inf_child_follow_fork): Delete.
10322         (inf_child_target::can_create_inferior)
10323         (inf_child_target::can_attach): New.
10324         (inf_child_target::has_all_memory, inf_child_target::has_memory)
10325         (inf_child_target::has_stack, inf_child_target::has_registers)
10326         (inf_child_target::has_execution): New.
10327         (inf_child_fileio_open, inf_child_fileio_pwrite)
10328         (inf_child_fileio_pread, inf_child_fileio_fstat)
10329         (inf_child_fileio_close, inf_child_fileio_unlink)
10330         (inf_child_fileio_readlink, inf_child_use_agent)
10331         (inf_child_can_use_agent): Refactor as methods of
10332         inf_child_target.
10333         (return_zero, inf_child_target): Delete.
10334         (inf_child_target::inf_child_target): New.
10335         * inf-child.h: Include "target.h".
10336         (inf_child_target): Delete function prototype.
10337         (inf_child_target): New class.
10338         (inf_child_open_target, inf_child_mourn_inferior)
10339         (inf_child_maybe_unpush_target): Delete.
10340         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
10341         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
10342         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
10343         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
10344         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
10345         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
10346         (inf_ptrace_wait, inf_ptrace_xfer_partial)
10347         (inf_ptrace_thread_alive, inf_ptrace_files_info)
10348         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
10349         methods of inf_ptrace_target.
10350         (inf_ptrace_target): Delete function.
10351         * inf-ptrace.h: Include "inf-child.h".
10352         (inf_ptrace_target): Delete function declaration.
10353         (inf_ptrace_target): New class.
10354         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
10355         * linux-nat.c (linux_target): New.
10356         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
10357         (linux_nat_target::~linux_nat_target): New.
10358         (linux_child_post_attach, linux_child_post_startup_inferior)
10359         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
10360         (linux_child_remove_fork_catchpoint)
10361         (linux_child_insert_vfork_catchpoint)
10362         (linux_child_remove_vfork_catchpoint)
10363         (linux_child_insert_exec_catchpoint)
10364         (linux_child_remove_exec_catchpoint)
10365         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
10366         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
10367         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
10368         (linux_nat_stopped_data_address)
10369         (linux_nat_stopped_by_sw_breakpoint)
10370         (linux_nat_supports_stopped_by_sw_breakpoint)
10371         (linux_nat_stopped_by_hw_breakpoint)
10372         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
10373         (linux_nat_kill, linux_nat_mourn_inferior)
10374         (linux_nat_xfer_partial, linux_nat_thread_alive)
10375         (linux_nat_update_thread_list, linux_nat_pid_to_str)
10376         (linux_nat_thread_name, linux_child_pid_to_exec_file)
10377         (linux_child_static_tracepoint_markers_by_strid)
10378         (linux_nat_is_async_p, linux_nat_can_async_p)
10379         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
10380         (linux_nat_supports_multi_process)
10381         (linux_nat_supports_disable_randomization, linux_nat_async)
10382         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
10383         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
10384         (linux_nat_fileio_open, linux_nat_fileio_readlink)
10385         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
10386         methods of linux_nat_target.
10387         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
10388         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
10389         parameter.
10390         (check_stopped_by_watchpoint): Adjust.
10391         (linux_xfer_partial): Delete.
10392         (linux_target_install_ops, linux_target, linux_nat_add_target):
10393         Delete.
10394         (linux_nat_target::linux_nat_target): New.
10395         * linux-nat.h: Include "inf-ptrace.h".
10396         (linux_nat_target): New.
10397         (linux_target, linux_target_install_ops, linux_nat_add_target):
10398         Delete function declarations.
10399         (linux_target): Declare global.
10400         * linux-thread-db.c (thread_db_target): New.
10401         (thread_db_target::thread_db_target): New.
10402         (thread_db_ops): Delete.
10403         (the_thread_db_target): New.
10404         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
10405         (thread_db_update_thread_list, thread_db_pid_to_str)
10406         (thread_db_extra_thread_info)
10407         (thread_db_thread_handle_to_thread_info)
10408         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
10409         (thread_db_resume): Refactor as methods of thread_db_target.
10410         (init_thread_db_ops): Delete.
10411         (_initialize_thread_db): Remove reference to init_thread_db_ops.
10412         * x86-linux-nat.c: Don't include "linux-nat.h".
10413         (super_post_startup_inferior): Delete.
10414         (x86_linux_nat_target::~x86_linux_nat_target): New.
10415         (x86_linux_child_post_startup_inferior)
10416         (x86_linux_read_description, x86_linux_enable_btrace)
10417         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
10418         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
10419         methods of x86_linux_nat_target.
10420         (x86_linux_create_target): Delete.  Bits folded ...
10421         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
10422         pointer.
10423         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
10424         (x86_linux_nat_target): New class.
10425         (x86_linux_create_target): Delete.
10426         (x86_linux_add_target): Now takes a linux_nat_target pointer.
10427         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
10428         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
10429         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
10430         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
10431         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
10432         make extern.
10433         (x86_use_watchpoints): Delete.
10434         * x86-nat.h: Include "breakpoint.h" and "target.h".
10435         (x86_use_watchpoints): Delete.
10436         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
10437         (x86_stopped_by_watchpoint, x86_stopped_data_address)
10438         (x86_insert_watchpoint, x86_remove_watchpoint)
10439         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
10440         (x86_stopped_by_hw_breakpoint): New declarations.
10441         (x86_nat_target): New template class.
10442
10443         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
10444         (the_ppc_linux_nat_target): New.
10445         (ppc_linux_fetch_inferior_registers)
10446         (ppc_linux_can_use_hw_breakpoint)
10447         (ppc_linux_region_ok_for_hw_watchpoint)
10448         (ppc_linux_ranged_break_num_registers)
10449         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
10450         (ppc_linux_insert_mask_watchpoint)
10451         (ppc_linux_remove_mask_watchpoint)
10452         (ppc_linux_can_accel_watchpoint_condition)
10453         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
10454         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
10455         (ppc_linux_watchpoint_addr_within_range)
10456         (ppc_linux_masked_watch_num_registers)
10457         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
10458         (ppc_linux_read_description): Refactor as methods of
10459         ppc_linux_nat_target.
10460         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
10461
10462         * procfs.c (procfs_xfer_partial): Delete forward declaration.
10463         (procfs_target): New class.
10464         (the_procfs_target): New.
10465         (procfs_target): Delete function.
10466         (procfs_auxv_parse, procfs_attach, procfs_detach)
10467         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
10468         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
10469         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
10470         (procfs_create_inferior, procfs_update_thread_list)
10471         (procfs_thread_alive, procfs_pid_to_str)
10472         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
10473         (procfs_stopped_data_address, procfs_insert_watchpoint)
10474         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
10475         (proc_find_memory_regions, procfs_info_proc)
10476         (procfs_make_note_section): Refactor as methods of procfs_target.
10477         (_initialize_procfs): Adjust.
10478         * sol-thread.c (sol_thread_target): New class.
10479         (sol_thread_ops): Now a sol_thread_target.
10480         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
10481         (sol_thread_fetch_registers, sol_thread_store_registers)
10482         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
10483         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
10484         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
10485         (init_sol_thread_ops): Delete.
10486         (_initialize_sol_thread): Adjust.  Remove references to
10487         init_sol_thread_ops and complete_target_initialization.
10488
10489         * windows-nat.c (windows_nat_target): New class.
10490         (windows_fetch_inferior_registers)
10491         (windows_store_inferior_registers, windows_resume, windows_wait)
10492         (windows_attach, windows_detach, windows_pid_to_exec_file)
10493         (windows_files_info, windows_create_inferior)
10494         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
10495         (windows_close, windows_pid_to_str, windows_xfer_partial)
10496         (windows_get_tib_address, windows_get_ada_task_ptid)
10497         (windows_thread_name, windows_thread_alive): Refactor as
10498         windows_nat_target methods.
10499         (do_initial_windows_stuff): Adjust.
10500         (windows_target): Delete function.
10501         (_initialize_windows_nat): Adjust.
10502
10503         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
10504         (darwin_mourn_inferior, darwin_kill_inferior)
10505         (darwin_create_inferior, darwin_attach, darwin_detach)
10506         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
10507         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
10508         (darwin_supports_multi_process): Refactor as darwin_nat_target
10509         methods.
10510         (darwin_resume_to, darwin_files_info): Delete.
10511         (_initialize_darwin_inferior): Rename to ...
10512         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
10513         * darwin-nat.h: Include "inf-child.h".
10514         (darwin_nat_target): New class.
10515         (darwin_complete_target): Delete.
10516         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
10517         (darwin_target): New.
10518         (i386_darwin_fetch_inferior_registers)
10519         (i386_darwin_store_inferior_registers): Refactor as methods of
10520         darwin_nat_target.
10521         (darwin_complete_target): Delete, with ...
10522         (_initialize_i386_darwin_nat): ... bits factored out here.
10523
10524         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
10525         (the_alpha_linux_nat_target): New.
10526         (alpha_linux_register_u_offset): Refactor as
10527         alpha_linux_nat_target method.
10528         (_initialize_alpha_linux_nat): Adjust.
10529         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
10530         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10531         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
10532         methods of linux_nat_trad_target.
10533         (linux_trad_target): Delete.
10534         * linux-nat-trad.h (linux_trad_target): Delete function.
10535         (linux_nat_trad_target): New class.
10536         * mips-linux-nat.c (mips_linux_nat_target): New class.
10537         (super_fetch_registers, super_store_registers, super_close):
10538         Delete.
10539         (the_mips_linux_nat_target): New.
10540         (mips64_linux_regsets_fetch_registers)
10541         (mips64_linux_regsets_store_registers)
10542         (mips64_linux_fetch_registers, mips64_linux_store_registers)
10543         (mips_linux_register_u_offset, mips_linux_read_description)
10544         (mips_linux_can_use_hw_breakpoint)
10545         (mips_linux_stopped_by_watchpoint)
10546         (mips_linux_stopped_data_address)
10547         (mips_linux_region_ok_for_hw_watchpoint)
10548         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
10549         (mips_linux_close): Refactor as methods of mips_linux_nat.
10550         (_initialize_mips_linux_nat): Adjust to C++ification.
10551
10552         * aix-thread.c (aix_thread_target): New class.
10553         (aix_thread_ops): Now an aix_thread_target.
10554         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
10555         (aix_thread_fetch_registers, aix_thread_store_registers)
10556         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
10557         (aix_thread_thread_alive, aix_thread_pid_to_str)
10558         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
10559         Refactor as methods of aix_thread_target.
10560         (init_aix_thread_ops): Delete.
10561         (_initialize_aix_thread): Remove references to init_aix_thread_ops
10562         and complete_target_initialization.
10563         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
10564         (rs6000_nat_target): New class.
10565         (the_rs6000_nat_target): New.
10566         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
10567         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
10568         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
10569         (super_create_inferior): Delete.
10570         (_initialize_rs6000_nat): Adjust to C++ification.
10571
10572         * arm-linux-nat.c (arm_linux_nat_target): New class.
10573         (the_arm_linux_nat_target): New.
10574         (arm_linux_fetch_inferior_registers)
10575         (arm_linux_store_inferior_registers, arm_linux_read_description)
10576         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
10577         (arm_linux_remove_hw_breakpoint)
10578         (arm_linux_region_ok_for_hw_watchpoint)
10579         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
10580         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
10581         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
10582         arm_linux_nat_target.
10583         (_initialize_arm_linux_nat): Adjust to C++ification.
10584
10585         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
10586         (the_aarch64_linux_nat_target): New.
10587         (aarch64_linux_fetch_inferior_registers)
10588         (aarch64_linux_store_inferior_registers)
10589         (aarch64_linux_child_post_startup_inferior)
10590         (aarch64_linux_read_description)
10591         (aarch64_linux_can_use_hw_breakpoint)
10592         (aarch64_linux_insert_hw_breakpoint)
10593         (aarch64_linux_remove_hw_breakpoint)
10594         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
10595         (aarch64_linux_region_ok_for_hw_watchpoint)
10596         (aarch64_linux_stopped_data_address)
10597         (aarch64_linux_stopped_by_watchpoint)
10598         (aarch64_linux_watchpoint_addr_within_range)
10599         (aarch64_linux_can_do_single_step): Refactor as methods of
10600         aarch64_linux_nat_target.
10601         (super_post_startup_inferior): Delete.
10602         (_initialize_aarch64_linux_nat): Adjust to C++ification.
10603
10604         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
10605         (the_hppa_linux_nat_target): New.
10606         (hppa_linux_fetch_inferior_registers)
10607         (hppa_linux_store_inferior_registers): Refactor as methods of
10608         hppa_linux_nat_target.
10609         (_initialize_hppa_linux_nat): Adjust to C++ification.
10610
10611         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
10612         (the_ia64_linux_nat_target): New.
10613         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
10614         (ia64_linux_stopped_data_address)
10615         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
10616         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
10617         ia64_linux_nat_target methods.
10618         (super_xfer_partial): Delete.
10619         (_initialize_ia64_linux_nat): Adjust to C++ification.
10620
10621         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
10622         (the_m32r_linux_nat_target): New.
10623         (m32r_linux_fetch_inferior_registers)
10624         (m32r_linux_store_inferior_registers): Refactor as
10625         m32r_linux_nat_target methods.
10626         (_initialize_m32r_linux_nat): Adjust to C++ification.
10627
10628         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
10629         (the_m68k_linux_nat_target): New.
10630         (m68k_linux_fetch_inferior_registers)
10631         (m68k_linux_store_inferior_registers): Refactor as
10632         m68k_linux_nat_target methods.
10633         (_initialize_m68k_linux_nat): Adjust to C++ification.
10634
10635         * s390-linux-nat.c (s390_linux_nat_target): New class.
10636         (the_s390_linux_nat_target): New.
10637         (s390_linux_fetch_inferior_registers)
10638         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
10639         (s390_insert_watchpoint, s390_remove_watchpoint)
10640         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
10641         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
10642         (s390_auxv_parse, s390_read_description): Refactor as methods of
10643         s390_linux_nat_target.
10644         (_initialize_s390_nat): Adjust to C++ification.
10645
10646         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
10647         (the_sparc_linux_nat_target): New.
10648         (_initialize_sparc_linux_nat): Adjust to C++ification.
10649         * sparc-nat.c (sparc_fetch_inferior_registers)
10650         (sparc_store_inferior_registers): Remove target_ops parameter.
10651         * sparc-nat.h (sparc_fetch_inferior_registers)
10652         (sparc_store_inferior_registers): Remove target_ops parameter.
10653         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
10654         (the_sparc64_linux_nat_target): New.
10655         (_initialize_sparc64_linux_nat): Adjust to C++ification.
10656
10657         * spu-linux-nat.c (spu_linux_nat_target): New class.
10658         (the_spu_linux_nat_target): New.
10659         (spu_child_post_startup_inferior, spu_child_post_attach)
10660         (spu_child_wait, spu_fetch_inferior_registers)
10661         (spu_store_inferior_registers, spu_xfer_partial)
10662         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
10663         methods.
10664         (_initialize_spu_nat): Adjust to C++ification.
10665
10666         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
10667         (the_tilegx_linux_nat_target): New.
10668         (fetch_inferior_registers, store_inferior_registers):
10669         Refactor as methods.
10670         (_initialize_tile_linux_nat): Adjust to C++ification.
10671
10672         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
10673         (the_xtensa_linux_nat_target): New.
10674         (xtensa_linux_fetch_inferior_registers)
10675         (xtensa_linux_store_inferior_registers): Refactor as
10676         xtensa_linux_nat_target methods.
10677         (_initialize_xtensa_linux_nat): Adjust to C++ification.
10678
10679         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
10680         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
10681         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
10682         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
10683         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
10684         (fbsd_stopped_by_sw_breakpoint)
10685         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
10686         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
10687         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
10688         (fbsd_post_startup_inferior, fbsd_post_attach)
10689         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
10690         (fbsd_set_syscall_catchpoint)
10691         (super_xfer_partial, super_resume, super_wait)
10692         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
10693         (fbsd_handle_debug_trap): Remove target_ops parameter.
10694         (fbsd_nat_add_target): Delete.
10695         * fbsd-nat.h: Include "inf-ptrace.h".
10696         (fbsd_nat_add_target): Delete.
10697         (USE_SIGTRAP_SIGINFO): Define.
10698         (fbsd_nat_target): New class.
10699
10700         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
10701         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
10702         (amd64bsd_target): Delete.
10703         * amd64-bsd-nat.h: New file.
10704         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
10705         "x86-bsd-nat.h".
10706         (amd64_fbsd_nat_target): New class.
10707         (the_amd64_fbsd_nat_target): New.
10708         (amd64fbsd_read_description): Refactor as method of
10709         amd64_fbsd_nat_target.
10710         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10711         (_initialize_amd64fbsd_nat): Adjust to C++ification.
10712         * amd64-nat.h (amd64bsd_target): Delete function declaration.
10713         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
10714         (i386bsd_store_inferior_registers): Remove target_ops parameter.
10715         (i386bsd_target): Delete.
10716         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
10717         (i386bsd_fetch_inferior_registers)
10718         (i386bsd_store_inferior_registers): Declare.
10719         (i386_bsd_nat_target): New class.
10720         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
10721         (the_i386_fbsd_nat_target): New.
10722         (i386fbsd_resume, i386fbsd_read_description): Refactor as
10723         i386_fbsd_nat_target methods.
10724         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10725         (_initialize_i386fbsd_nat): Adjust to C++ification.
10726         * x86-bsd-nat.c (super_mourn_inferior): Delete.
10727         (x86bsd_mourn_inferior, x86bsd_target): Delete.
10728         (_initialize_x86_bsd_nat): Adjust to C++ification.
10729         * x86-bsd-nat.h: Include "x86-nat.h".
10730         (x86bsd_target): Delete declaration.
10731         (x86bsd_nat_target): New class.
10732
10733         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
10734         (the_aarch64_fbsd_nat_target): New.
10735         (aarch64_fbsd_fetch_inferior_registers)
10736         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
10737         aarch64_fbsd_nat_target.
10738         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
10739         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
10740         (the_alpha_bsd_nat_target): New.
10741         (alphabsd_fetch_inferior_registers)
10742         (alphabsd_store_inferior_registers): Refactor as
10743         alpha_bsd_nat_target methods.
10744         (_initialize_alphabsd_nat): Refactor as methods of
10745         alpha_bsd_nat_target.
10746         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
10747         (the_amd64_nbsd_nat_target): New.
10748         (_initialize_amd64nbsd_nat): Adjust to C++ification.
10749         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
10750         (the_amd64_obsd_nat_target): New.
10751         (_initialize_amd64obsd_nat): Adjust to C++ification.
10752         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
10753         (the_arm_fbsd_nat_target): New.
10754         (arm_fbsd_fetch_inferior_registers)
10755         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
10756         (_initialize_arm_fbsd_nat): Refactor as methods of
10757         arm_fbsd_nat_target.
10758         (_initialize_arm_fbsd_nat): Adjust to C++ification.
10759         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
10760         (the_arm_netbsd_nat_target): New.
10761         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
10762         arm_netbsd_nat_target.
10763         (_initialize_arm_netbsd_nat): Adjust to C++ification.
10764         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
10765         (the_hppa_nbsd_nat_target): New.
10766         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
10767         hppa_nbsd_nat_target methods.
10768         (_initialize_hppanbsd_nat): Adjust to C++ification.
10769         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
10770         (the_hppa_obsd_nat_target): New.
10771         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
10772         methods of hppa_obsd_nat_target.
10773         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
10774         add_target.
10775         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
10776         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
10777         add_target.
10778         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
10779         (_initialize_i386obsd_nat): Use add_target.
10780         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
10781         (the_m68k_bsd_nat_target): New.
10782         (m68kbsd_fetch_inferior_registers)
10783         (m68kbsd_store_inferior_registers): Refactor as methods of
10784         m68k_bsd_nat_target.
10785         (_initialize_m68kbsd_nat): Adjust to C++ification.
10786         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
10787         (the_mips_fbsd_nat_target): New.
10788         (mips_fbsd_fetch_inferior_registers)
10789         (mips_fbsd_store_inferior_registers): Refactor as methods of
10790         mips_fbsd_nat_target.
10791         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
10792         add_target.
10793         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
10794         (the_mips_nbsd_nat_target): New.
10795         (mipsnbsd_fetch_inferior_registers)
10796         (mipsnbsd_store_inferior_registers): Refactor as methods of
10797         mips_nbsd_nat_target.
10798         (_initialize_mipsnbsd_nat): Adjust to C++ification.
10799         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
10800         (the_mips64_obsd_nat_target): New.
10801         (mips64obsd_fetch_inferior_registers)
10802         (mips64obsd_store_inferior_registers): Refactor as methods of
10803         mips64_obsd_nat_target.
10804         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
10805         add_target.
10806         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
10807         nbsd_nat_target.
10808         * nbsd-nat.h: Include "inf-ptrace.h".
10809         (nbsd_nat_target): New class.
10810         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
10811         (obsd_wait): Refactor as methods of obsd_nat_target.
10812         (obsd_add_target): Delete.
10813         * obsd-nat.h: Include "inf-ptrace.h".
10814         (obsd_nat_target): New class.
10815         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
10816         (the_ppc_fbsd_nat_target): New.
10817         (ppcfbsd_fetch_inferior_registers)
10818         (ppcfbsd_store_inferior_registers): Refactor as methods of
10819         ppc_fbsd_nat_target.
10820         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
10821         add_target.
10822         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
10823         (the_ppc_nbsd_nat_target): New.
10824         (ppcnbsd_fetch_inferior_registers)
10825         (ppcnbsd_store_inferior_registers): Refactor as methods of
10826         ppc_nbsd_nat_target.
10827         (_initialize_ppcnbsd_nat): Adjust to C++ification.
10828         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
10829         (the_ppc_obsd_nat_target): New.
10830         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
10831         methods of ppc_obsd_nat_target.
10832         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
10833         add_target.
10834         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
10835         (the_sh_nbsd_nat_target): New.
10836         (shnbsd_fetch_inferior_registers)
10837         (shnbsd_store_inferior_registers): Refactor as methods of
10838         sh_nbsd_nat_target.
10839         (_initialize_shnbsd_nat): Adjust to C++ification.
10840         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
10841         (inf_ptrace_xfer_partial): Delete.
10842         (sparc_xfer_partial, sparc_target): Delete.
10843         * sparc-nat.h (sparc_fetch_inferior_registers)
10844         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
10845         (sparc_target): Delete function declaration.
10846         (sparc_target): New template class.
10847         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
10848         (_initialize_sparcnbsd_nat): Adjust to C++ification.
10849         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
10850         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
10851         add_target.
10852         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
10853         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
10854         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
10855         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
10856         add_target.
10857         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
10858         (the_vax_bsd_nat_target): New.
10859         (vaxbsd_fetch_inferior_registers)
10860         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
10861         methods.
10862         (_initialize_vaxbsd_nat): Adjust to C++ification.
10863
10864         * bsd-kvm.c (bsd_kvm_target): New class.
10865         (bsd_kvm_ops): Now a bsd_kvm_target.
10866         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
10867         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
10868         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
10869         bsd_kvm_target.
10870         (bsd_kvm_return_one): Delete.
10871         (bsd_kvm_add_target): Adjust to C++ification.
10872
10873         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
10874         (nto_procfs_target_procfs): New classes.
10875         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
10876         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
10877         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
10878         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
10879         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
10880         (procfs_remove_hw_breakpoint, procfs_resume)
10881         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
10882         (procfs_kill_inferior, procfs_store_registers)
10883         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
10884         as methods of nto_procfs_target.
10885         (nto_procfs_ops): Now an nto_procfs_target_procfs.
10886         (nto_native_ops): Delete.
10887         (procfs_open, procfs_native_open): Delete.
10888         (nto_native_ops): Now an nto_procfs_target_native.
10889         (init_procfs_targets): Adjust to C++ification.
10890         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
10891         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
10892         Refactor as methods of nto_procfs_target.
10893
10894         * go32-nat.c (go32_nat_target): New class.
10895         (the_go32_nat_target): New.
10896         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
10897         (go32_store_registers, go32_xfer_partial, go32_files_info)
10898         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
10899         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
10900         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
10901         (go32_pid_to_str): Refactor as methods of go32_nat_target.
10902         (go32_target): Delete.
10903         (_initialize_go32_nat): Adjust to C++ification.
10904
10905         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
10906         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
10907         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
10908         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
10909         gnu_nat_target.
10910         (gnu_target): Delete.
10911         * gnu-nat.h (gnu_target): Delete.
10912         (gnu_nat_target): New class.
10913         * i386-gnu-nat.c (gnu_base_target): New.
10914         (i386_gnu_nat_target): New class.
10915         (the_i386_gnu_nat_target): New.
10916         (_initialize_i386gnu_nat): Adjust to C++ification.
10917
10918 2018-05-02  Pedro Alves  <palves@redhat.com>
10919
10920         * bfd-target.c (target_bfd_xclose): Rename to ...
10921         (target_bfd_close): ... this.
10922         (target_bfd_reopen): Adjust.
10923         * target.c (target_close): Remove references to to_xclose.
10924         * target.h (target_ops::to_xclose): Delete.
10925         (target_ops::to_close): Update comments.
10926
10927 2018-05-02  Pedro Alves  <palves@redhat.com>
10928
10929         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
10930         "linux-nat.h".
10931         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
10932         * inf-ptrace.c (inf_ptrace_register_u_offset)
10933         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10934         (inf_ptrace_store_register, inf_ptrace_store_registers)
10935         (inf_ptrace_trad_target): Move to ...
10936         * linux-nat-trad.c: ... this new file.
10937         * linux-nat-trad.h: New file.
10938         * linux-nat.c (linux_target_install_ops): Make extern.
10939         (linux_trad_target): Delete.
10940         * linux-nat.h (linux_trad_target): Delete declaration.
10941         (linux_target_install_ops): Declare.
10942         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
10943         "linux-nat.h".
10944
10945 2018-05-02  Pedro Alves  <palves@redhat.com>
10946
10947         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10948         procfs_target/add_target here.
10949         * procfs.c (procfs_target): Make static.
10950         (_initialize_procfs): Call add_target here.
10951         * procfs.h (struct target_ops): Remove forward declaration.
10952         (procfs_target): Remove declaration.
10953         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
10954
10955 2018-05-02  Pedro Alves  <palves@redhat.com>
10956
10957         * procfs.c (procfs_stopped_by_watchpoint)
10958         (procfs_insert_watchpoint, procfs_remove_watchpoint)
10959         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
10960         Forward declare.
10961         (procfs_use_watchpoints): Delete, move contents...
10962         (procfs_target): ... here.
10963         * procfs.h (procfs_use_watchpoints): Delete declaration.
10964         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10965         procfs_use_watchpoints.
10966         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
10967         procfs_use_watchpoints.
10968
10969 2018-05-02  Tom Tromey  <tom@tromey.com>
10970
10971         PR python/20084:
10972         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
10973         and var_zuinteger_unlimited.
10974         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
10975         and PARAM_ZUINTEGER_UNLIMITED.
10976         (set_parameter_value): Handle var_zuinteger and
10977         var_zuinteger_unlimited.
10978         (add_setshow_generic): Likewise.
10979         (parmpy_init): Likewise.
10980
10981 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
10982
10983         PR rust/23124
10984         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
10985         pointer is not null before dereferencing it.
10986
10987 2018-04-30  Tom Tromey  <tom@tromey.com>
10988
10989         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
10990         is_mi_like_p.
10991
10992 2018-04-30  Tom Tromey  <tom@tromey.com>
10993
10994         * breakpoint.c (mention): Remove use of is_mi_like_p.
10995         (print_mention_ranged_breakpoint): Likewise.
10996         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
10997         of is_mi_like_p.
10998
10999 2018-04-30  Tom Tromey  <tom@tromey.com>
11000
11001         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
11002
11003 2018-04-30  Tom Tromey  <tom@tromey.com>
11004
11005         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
11006         (info_spu_event_command): Remove some uses of is_mi_like_p.
11007
11008 2018-04-30  Tom Tromey  <tom@tromey.com>
11009
11010         * python/py-framefilter.c (py_print_single_arg)
11011         (enumerate_locals, py_print_args, py_print_frame): Remove some
11012         uses of is_mi_like_p.
11013
11014 2018-04-30  Tom Tromey  <tom@tromey.com>
11015
11016         * ui-out.c: Update.
11017         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
11018         * ui-out.h (ui_out::is_mi_like_p): Now const.
11019         (ui_out::do_is_mi_like_p): Now const.
11020         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
11021
11022 2018-04-30  Tom Tromey  <tom@tromey.com>
11023
11024         * varobj.c (varobj_set_visualizer): Use new_reference.
11025         * python/python.c (gdbpy_decode_line): Use new_reference.
11026         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
11027         new_reference.
11028
11029 2018-04-30  Tom Tromey  <tom@tromey.com>
11030
11031         * varobj.c (install_new_value): Use new_reference.
11032         * value.h (value_incref): Return void.  Swap intro comment with
11033         value_decref.
11034         * value.c (set_value_parent): Use new_reference.
11035         (value_incref): Return void.  Update intro comment.
11036         (release_value): Use new_reference.
11037         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
11038
11039 2018-04-30  Tom Tromey  <tom@tromey.com>
11040
11041         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
11042         * gdb_bfd.h (new_bfd_ref): Remove.
11043         (gdb_bfd_open): Update comment.
11044         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
11045         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
11046         (gdb_bfd_fdopenr): Use new_reference.
11047         * exec.c (exec_file_attach): Use new_reference.
11048
11049 2018-04-30  Tom Tromey  <tom@tromey.com>
11050
11051         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
11052         method.
11053
11054 2018-04-30  Tom Tromey  <tom@tromey.com>
11055
11056         * jit.c (jit_read_code_entry): Use type_align.
11057         * i386-tdep.c (i386_gdbarch_init): Don't call
11058         set_gdbarch_long_long_align_bit.
11059         * gdbarch.sh: Remove long_long_align_bit.
11060         * gdbarch.c, gdbarch.h: Rebuild.
11061         * arc-tdep.c (arc_type_align): New function.
11062         (arc_gdbarch_init): Use arc_type_align.  Don't call
11063         set_gdbarch_long_long_align_bit.
11064
11065 2018-04-30  Tom Tromey  <tom@tromey.com>
11066
11067         * rust-lang.c (rust_type_alignment): Remove.
11068         (rust_composite_type): Use type_align.
11069
11070 2018-04-30  Tom Tromey  <tom@tromey.com>
11071
11072         * NEWS: Mention Type.align.
11073         * python/py-type.c (typy_get_alignof): New function.
11074         (type_object_getset): Add "alignof".
11075
11076 2018-04-30  Tom Tromey  <tom@tromey.com>
11077
11078         PR exp/17095:
11079         * NEWS: Update.
11080         * std-operator.def (UNOP_ALIGNOF): New operator.
11081         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
11082         New.
11083         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
11084         * c-lang.c (c_op_print_tab): Add alignof.
11085         * c-exp.y (ALIGNOF): New token.
11086         (exp): Add "ALIGNOF" production.
11087         (ident_tokens): Add _Alignof and alignof.
11088
11089 2018-04-30  Tom Tromey  <tom@tromey.com>
11090
11091         * i386-tdep.c (i386_type_align): New function.
11092         (i386_gdbarch_init): Update.
11093         * gdbarch.sh (type_align): New method.
11094         * gdbarch.c, gdbarch.h: Rebuild.
11095         * arch-utils.h (default_type_align): Declare.
11096         * arch-utils.c (default_type_align): New function.
11097         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
11098         (struct type) <align_log2>: New field.
11099         <instance_flags>: Now a bitfield.
11100         (TYPE_RAW_ALIGN): New macro.
11101         (type_align, type_raw_align, set_type_align): Declare.
11102         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
11103         functions.
11104         * dwarf2read.c (quirk_rust_enum): Set type alignment.
11105         (get_alignment, maybe_set_alignment): New functions.
11106         (read_structure_type, read_enumeration_type, read_array_type)
11107         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
11108         (read_subrange_type, read_base_type): Set type alignment.
11109
11110 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
11111
11112         * dwarf2read.c (read_index_from_section): Use bool.
11113
11114 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
11115
11116         PR gdb/22950
11117         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
11118         with #ifdef.
11119
11120 2018-04-29  John Reiser  <jreiser@BitWagon.com>
11121
11122         PR build/22873
11123         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
11124         last step, and do it atomically.
11125
11126 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
11127
11128         * compile/compile-c-types.c (convert_int, convert_float):
11129         Update for C FE v1.
11130
11131 2018-04-27  Tom Tromey  <tom@tromey.com>
11132
11133         PR rust/22545:
11134         * rust-lang.c (rust_inclusive_range_type_p): New function.
11135         (rust_range): Handle inclusive ranges.
11136         (rust_compute_range): Likewise.
11137         * rust-exp.y (struct rust_op) <inclusive>: New field.
11138         (DOTDOTEQ): New constant.
11139         (range_expr): Add "..=" productions.
11140         (operator_tokens): Add "..=" token.
11141         (ast_range): Add "inclusive" parameter.
11142         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
11143         ranges.
11144         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
11145         bounds values.
11146         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
11147         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
11148         Update comments.
11149         * expprint.c (print_subexp_standard): Handle new bounds values.
11150         (dump_subexp_body_standard): Likewise.
11151
11152 2018-04-27  Tom Tromey  <tom@tromey.com>
11153
11154         * configure: Rebuild.
11155         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
11156         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
11157         "OVERRIDE".
11158         (class symbol_needs_eval_context): Likewise.
11159         * dwarf2read.c (mock_mapped_index::symbol_name_count)
11160         (mock_mapped_index::symbol_name_at): Use "override".  Remove
11161         "virtual".
11162         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
11163         "override".
11164         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
11165         * aarch64-tdep.c (instruction_reader::read): Use "override".
11166         (instruction_reader_test::read): Likewise.
11167         * arm-tdep.c (instruction_reader::read): Use "override".
11168         (instruction_reader_thumb::read): Likewise.
11169
11170 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
11171
11172         PR remote/9665
11173         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
11174         instead of remote_send.
11175         (remote_send): Remove.
11176
11177 2018-04-26  Pedro Alves  <palves@redhat.com>
11178
11179         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
11180         find_function_start_sal instead of find_pc_line.
11181
11182 2018-04-26  Pedro Alves  <palves@redhat.com>
11183
11184         * breakpoint.c (set_breakpoint_location_function): Handle
11185         mst_data_gnu_ifunc.
11186         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
11187         * elfread.c (elf_symtab_read): Give data symbols with
11188         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
11189         (elf_rel_plt_read): Update comment.
11190         * linespec.c (convert_linespec_to_sals): Handle
11191         mst_data_gnu_ifunc.
11192         (minsym_found): Handle mst_data_gnu_ifunc.
11193         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
11194         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
11195         * parse.c (find_minsym_type_and_address): Handle
11196         mst_data_gnu_ifunc.
11197         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
11198         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
11199         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
11200         comment.
11201         <mst_data_gnu_ifunc>: New enumerator.
11202
11203 2018-04-26  Pedro Alves  <palves@redhat.com>
11204
11205         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
11206         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
11207         'want_trampoline' parameter by a lookup_msym_prefer parameter.
11208         Handle it.
11209         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
11210         (lookup_minimal_symbol_by_pc): Adjust.
11211         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
11212         (lookup_solib_trampoline_symbol_by_pc): Adjust.
11213         * minsyms.h (lookup_msym_prefer): New enum.
11214         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
11215         parameter by a lookup_msym_prefer parameter.
11216
11217 2018-04-26  Pedro Alves  <palves@redhat.com>
11218
11219         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
11220         ends in "@plt" instead of looking at the symbol's section.
11221
11222 2018-04-26  Pedro Alves  <palves@redhat.com>
11223
11224         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
11225         all references.
11226         (find_pc_partial_function_gnu_ifunc): Rename to ...
11227         (find_pc_partial_function): ... this, and remove references to
11228         'is_gnu_ifunc_p'.
11229         (find_pc_partial_function): Delete old implementation.
11230         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
11231
11232 2018-04-26  Pedro Alves  <palves@redhat.com>
11233
11234         * linespec.c (struct bound_minimal_symbol_search_key): New.
11235         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
11236         skip first line if we found a GNU ifunc minimal symbol by name.
11237         (compare_msymbols): Change parameters to work with a destructured
11238         lhs minsym.
11239         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
11240         functions.
11241
11242 2018-04-26  Pedro Alves  <palves@redhat.com>
11243
11244         * breakpoint.c (set_breakpoint_location_function): Don't resolve
11245         ifunc targets here.  Instead, if we have an ifunc minsym, use its
11246         address/name.
11247         (add_location_to_breakpoint): Store the minsym and the objfile in
11248         the breakpoint location.
11249         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
11250         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
11251         Record the minsym in the sal.
11252         * symtab.h (symtab_and_line) <msymbol>: New field.
11253
11254 2018-04-26  Pedro Alves  <palves@redhat.com>
11255
11256         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
11257         unless we actually resolved the ifunc.
11258
11259 2018-04-26  Pedro Alves  <palves@redhat.com>
11260
11261         * c-exp.y (variable production): Prefer ifunc minsyms over
11262         regular function symbols.
11263         * symtab.c (find_gnu_ifunc): New function.
11264         * minsyms.h (lookup_msym_prefer): New enum.
11265         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
11266         parameter by a lookup_msym_prefer parameter.
11267         * symtab.h (find_gnu_ifunc): New declaration.
11268
11269 2018-04-26  Pedro Alves  <palves@redhat.com>
11270
11271         * blockframe.c (find_gnu_ifunc_target_type): New function.
11272         (find_function_type): New.
11273         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
11274         return a value with a memory address.
11275         (eval_call): For calls to GNU ifunc functions, try to find the
11276         type of the target function from the type that the resolver
11277         returns.
11278         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
11279         symbols.
11280         * infcall.c (find_function_return_type): Delete.
11281         (find_function_addr): Add 'function_type' parameter.  For calls to
11282         GNU ifunc functions, try to find the type of the target function
11283         from the type that the resolver returns, and return it via
11284         FUNCTION_TYPE.
11285         (call_function_by_hand_dummy): Adjust to use the function type
11286         returned by find_function_addr.
11287         (find_function_addr): Add 'function_type' parameter and move
11288         description here.
11289         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
11290         declarations.
11291
11292 2018-04-26  Pedro Alves  <palves@redhat.com>
11293
11294         * c-exp.y (variable production): Skip finding an alias for ifunc
11295         symbols.
11296
11297 2018-04-26  Pedro Alves  <palves@redhat.com>
11298
11299         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
11300
11301 2018-04-25  Pedro Alves  <palves@redhat.com>
11302
11303         * infcmd.c (kill_command): Print the pid as string, not the whole
11304         thread's ptid.  Add comment.  s/has been killed/killed/ in output
11305         message.
11306         * remote.c (remote_detach_1): Print the pid as string, not the
11307         whole thread's ptid.
11308
11309 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
11310             Sergio Durigan Junior  <sergiodj@redhat.com>
11311             Pedro Alves  <palves@redhat.com>
11312
11313         * infcmd.c (kill_command): Print message when inferior has
11314         been killed.
11315         * inferior.c (print_inferior_events): Remove 'static'.  Set as
11316         '1'.
11317         (add_inferior): Improve message printed when
11318         'print_inferior_events' is on.
11319         (exit_inferior): Remove message printed when
11320         'print_inferior_events' is on.
11321         (detach_inferior): Improve message printed when
11322         'print_inferior_events' is on.
11323         (initialize_inferiors): Use 'add_inferior_silent' to set
11324         'current_inferior_'.
11325         * inferior.h (print_inferior_events): Declare here as
11326         'extern'.
11327         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
11328         '[Detaching...]' messages when 'print_inferior_events' is on.
11329         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
11330         as prefix/suffix for messages.  Remove periods.  Fix erroneous
11331         'Detaching after fork from child...', replace it by '... from
11332         parent...'.
11333         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
11334         prefix/suffix when printing 'Detaching...' messages.  Print
11335         them when 'print_inferior_events' is on.
11336         * remote.c (remote_detach_1): Print message when detaching
11337         from inferior and '!is_fork_parent'.
11338
11339 2018-04-24  Tom Tromey  <tom@tromey.com>
11340
11341         * cli-out.h: Reindent.
11342
11343 2018-04-24  Tom Tromey  <tom@tromey.com>
11344
11345         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
11346         (cli_ui_out::do_field_string): Use fputs_filtered.
11347         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
11348
11349 2018-04-23  Tom Tromey  <tom@tromey.com>
11350
11351         * guile/scm-frame.c (gdbscm_frame_read_var): Use
11352         gdb::unique_xmalloc_ptr.
11353
11354 2018-04-23  Tom Tromey  <tom@tromey.com>
11355
11356         * configure: Rebuild.
11357
11358 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
11359
11360         PR gdb/23095
11361         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
11362         prepare_for_testing.  Set normal_bp to r_debug_state if target
11363         is bsd.
11364
11365 2018-04-21  Pedro Alves  <palves@redhat.com>
11366             Rajendra SY  <rajendra.sy@gmail.com>
11367
11368         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
11369         * remote.c (extended_remote_attach): In all-stop mode, mark the
11370         thread as executing.
11371
11372 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
11373
11374         * thread.c (thread_apply_all_command): Fix comment.
11375         (thread_command): Fix comment.
11376
11377 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
11378
11379         * common/tdesc.h (tdesc_create_feature): Remove xml filename
11380         parameter.
11381         * features/aarch64-core.c (create_feature_aarch64_core):
11382         Regenerate.
11383         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
11384         Likewise.
11385         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
11386         Likewise.
11387         * features/i386/32bit-avx512.c
11388         (create_feature_i386_32bit_avx512): Likewise.
11389         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
11390         Likewise.
11391         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
11392         Likewise.
11393         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
11394         Likewise.
11395         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
11396         Likewise.
11397         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
11398         Likewise.
11399         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
11400         Likewise.
11401         * features/i386/64bit-avx512.c
11402         (create_feature_i386_64bit_avx512): Likewise.
11403         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
11404         Likewise.
11405         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
11406         Likewise.
11407         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
11408         Likewise.
11409         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
11410         Likewise.
11411         * features/i386/64bit-segments.c
11412         (create_feature_i386_64bit_segments): Likewise.
11413         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
11414         Likewise.
11415         * features/i386/x32-core.c
11416         (create_feature_i386_x32_core): Likewise.
11417         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
11418         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
11419         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
11420         * target-descriptions.c: In generated code, don't pass xml
11421         filename.
11422
11423 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11424
11425         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
11426         (print_xml_feature::visit_post): Likewise.
11427         (print_xml_feature::visit): Likewise.
11428         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
11429         (print_xml_feature): Add new class.
11430         * regformats/regdat.sh: Null xmltarget on feature targets.
11431         * target-descriptions.c (struct target_desc): Add xmltarget.
11432         (maintenance_check_tdesc_xml_convert): Add unittest function.
11433         (tdesc_get_features_xml): Add function to get xml.
11434         (maintenance_check_xml_descriptions): Test xml generation.
11435         * xml-tdesc.c (string_read_description_xml): Add function.
11436         * xml-tdesc.h (string_read_description_xml): Add declaration.
11437
11438 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11439
11440         * features/Makefile: Add feature marker to targets with new style
11441         target descriptions.
11442         * regformats/aarch64.dat: Regenerate.
11443         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
11444         * regformats/i386/amd64-avx-linux.dat: Likewise.
11445         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
11446         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
11447         * regformats/i386/amd64-linux.dat: Likewise.
11448         * regformats/i386/amd64-mpx-linux.dat: Likewise.
11449         * regformats/i386/amd64.dat: Likewise.
11450         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
11451         * regformats/i386/i386-avx-linux.dat: Likewise.
11452         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
11453         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
11454         * regformats/i386/i386-linux.dat: Likewise.
11455         * regformats/i386/i386-mmx-linux.dat: Likewise.
11456         * regformats/i386/i386-mpx-linux.dat: Likewise.
11457         * regformats/i386/i386.dat: Likewise.
11458         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
11459         * regformats/i386/x32-avx-linux.dat: Likewise.
11460         * regformats/i386/x32-linux.dat: Likewise.
11461         * regformats/tic6x-c62x-linux.dat: Likewise.
11462         * regformats/tic6x-c64x-linux.dat: Likewise.
11463         * regformats/tic6x-c64xp-linux.dat: Likewise.
11464         * regformats/regdat.sh: Parse feature marker.
11465
11466 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11467
11468         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
11469         (tdesc_osabi_name): Likewise.
11470         * target-descriptions.c (tdesc_architecture_name): Add new
11471         function.
11472         (tdesc_osabi_name): Likewise.
11473
11474 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11475
11476         * common/tdesc.c (tdesc_predefined_type): Move to here.
11477         (tdesc_named_type): Likewise.
11478         (tdesc_create_vector): Likewise.
11479         (tdesc_create_struct): Likewise.
11480         (tdesc_set_struct_size): Likewise.
11481         (tdesc_create_union): Likewise.
11482         (tdesc_create_flags): Likewise.
11483         (tdesc_create_enum): Likewise.
11484         (tdesc_add_field): Likewise.
11485         (tdesc_add_typed_bitfield): Likewise.
11486         (tdesc_add_bitfield): Likewise.
11487         (tdesc_add_flag): Likewise.
11488         (tdesc_add_enum_value): Likewise.
11489         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
11490         (struct tdesc_type_vector): Likewise.
11491         (struct tdesc_type_field): Likewise.
11492         (struct tdesc_type_with_fields): Likewise.
11493         (tdesc_create_enum): Add declaration.
11494         (tdesc_add_typed_bitfield): Likewise.
11495         (tdesc_add_enum_value): Likewise.
11496         * target-descriptions.c (tdesc_type_field): Move from here.
11497         (tdesc_type_builtin): Likewise.
11498         (tdesc_type_vector): Likewise.
11499         (tdesc_type_with_fields): Likewise.
11500         (tdesc_predefined_types): Likewise.
11501         (tdesc_named_type): Likewise.
11502         (tdesc_create_vector): Likewise.
11503         (tdesc_create_struct): Likewise.
11504         (tdesc_set_struct_size): Likewise.
11505         (tdesc_create_union): Likewise.
11506         (tdesc_create_flags): Likewise.
11507         (tdesc_create_enum): Likewise.
11508         (tdesc_add_field): Likewise.
11509         (tdesc_add_typed_bitfield): Likewise.
11510         (tdesc_add_bitfield): Likewise.
11511         (tdesc_add_flag): Likewise.
11512         (tdesc_add_enum_value): Likewise.
11513         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
11514         (tdesc_add_typed_bitfield): Likewise.
11515         (tdesc_add_enum_value): Likewise.
11516
11517 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11518
11519         * common/tdesc.c (tdesc_feature::accept): Move to here.
11520         (tdesc_feature::operator==): Likewise.
11521         (tdesc_create_reg): Likewise.
11522         * common/tdesc.h (tdesc_type_kind): Likewise.
11523         (struct tdesc_type): Likewise.
11524         (struct tdesc_feature): Likewise.
11525         * regformats/regdat.sh: Create a feature.
11526         * target-descriptions.c (tdesc_type_kind): Move from here.
11527         (tdesc_type): Likewise.
11528         (tdesc_type_up): Likewise.
11529         (tdesc_feature): Likewise.
11530         (tdesc_create_reg): Likewise.
11531
11532 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11533
11534         * Makefile.in: Add arch/tdesc.c
11535         * common/tdesc.c: New file.
11536         * common/tdesc.h (tdesc_element_visitor): Move to here.
11537         (tdesc_element): Likewise.
11538         (tdesc_reg): Likewise.
11539         (tdesc_reg_up): Likewise.
11540         * regformats/regdef.h (reg): Add offset to constructors.
11541         * target-descriptions.c (tdesc_element_visitor): Move from here.
11542         (tdesc_element): Likewise.
11543         (tdesc_reg): Likewise.
11544         (tdesc_reg_up): Likewise.
11545
11546 2018-04-17  Tom Tromey  <tom@tromey.com>
11547
11548         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
11549         discriminant field.
11550
11551 2018-04-17  Tom Tromey  <tom@tromey.com>
11552
11553         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
11554
11555 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11556
11557         * symtab.c (print_symbol_info): Skip printing filename and line
11558         number when `last' is NULL.
11559         (symtab_symbol_info): Use empty string instead of NULL for first
11560         invocation of print_symbol_info.
11561         (rbreak_command): Pass NULL to `last' parameter of
11562         print_symbol_info.
11563
11564 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
11565
11566         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
11567         instead of nullptr.
11568
11569 2018-04-16  Pedro Alves  <palves@redhat.com>
11570
11571         * MAINTAINERS (sh): Remove.
11572         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
11573         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
11574         (ALLDEPFILES): Remove sh64-tdep.c.
11575         * NEWS: Mentions that support for SH-5/SH64 is removed.
11576         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
11577         (sh*-*-openbsd*): Ditto.
11578         (sh64-*-elf*): Remove.
11579         (sh*): Remove.
11580         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
11581         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
11582         * sh-tdep.c: No longer include "sh64-tdep.h".
11583         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
11584         * sh64-tdep.c, sh64-tdep.h: Remove files.
11585
11586 2018-04-16  Pedro Alves  <palves@redhat.com>
11587
11588         * MAINTAINERS: Remove m88k.
11589         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
11590         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
11591         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
11592         * NEWS: Mention that support for m88k was removed.
11593         * configure.host (m88*-*-*): Remove support.
11594         * configure.nat (m88k-*-*): Remove support.
11595         * configure.tgt (m88*-*-openbsd*): Remove.
11596         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
11597
11598 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
11599
11600         * configure.tgt (x86_tobjs): New variable.
11601         (amd64_tobjs, i386_tobjs): Use it.
11602
11603 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11604
11605         * symtab.c (print_symbol_info): Precede the symbol definition by
11606         the line number when available.
11607         * NEWS: Advertise this enhancement.
11608
11609 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11610
11611         * NEWS (New options): announce set/show record btrace cpu.
11612         * btrace.c: Include record-btrace.h.
11613         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
11614         the vendor is unknown.
11615         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
11616         Maybe overwrite the btrace configuration's cpu.
11617         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
11618         (btrace_fetch): Add cpu parameter.  Update callers.
11619         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
11620         Maybe overwrite the btrace configuration's cpu.  Skip enabling
11621         errata workarounds if the vendor is unknown.
11622         * python/py-record-btrace.c: Include record-btrace.h.
11623         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
11624         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
11625         * record-btrace.c (record_btrace_cpu_state_kind): New.
11626         (record_btrace_cpu): New.
11627         (set_record_btrace_cpu_cmdlist): New.
11628         (record_btrace_get_cpu): New.
11629         (require_btrace_thread, record_btrace_info)
11630         (record_btrace_resume_thread): Call record_btrace_get_cpu.
11631         (cmd_set_record_btrace_cpu_none): New.
11632         (cmd_set_record_btrace_cpu_auto): New.
11633         (cmd_set_record_btrace_cpu): New.
11634         (cmd_show_record_btrace_cpu): New.
11635         (_initialize_record_btrace): Initialize set/show record btrace cpu
11636         commands.
11637         * record-btrace.h (record_btrace_get_cpu): New.
11638
11639 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11640
11641         * record.c (set_record_command): Fix typo in message.
11642
11643 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11644
11645         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
11646
11647 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11648
11649         * infrun.c (process_event_stop_test): Call
11650         gdbarch_in_indirect_branch_thunk.
11651         * gdbarch.sh (in_indirect_branch_thunk): New.
11652         * gdbarch.c: Regenerated.
11653         * gdbarch.h: Regenerated.
11654         * x86-tdep.h: New.
11655         * x86-tdep.c: New.
11656         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
11657         (HFILES_NO_SRCDIR): Add x86-tdep.h.
11658         (ALLDEPFILES): Add x86-tdep.c.
11659         * arch-utils.h (default_in_indirect_branch_thunk): New.
11660         * arch-utils.c (default_in_indirect_branch_thunk): New.
11661         * i386-tdep: Include x86-tdep.h.
11662         (i386_in_indirect_branch_thunk): New.
11663         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
11664         function.
11665         * amd64-tdep: Include x86-tdep.h.
11666         (amd64_in_indirect_branch_thunk): New.
11667         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
11668
11669 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
11670
11671         PR gdb/23053
11672         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
11673         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
11674         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
11675         regression.
11676
11677 2018-04-12  Tom Tromey  <tom@tromey.com>
11678
11679         * rust-lang.c (rust_print_struct_def): Remove univariant code.
11680         (rust_evaluate_subexp): Likewise.
11681
11682 2018-04-12  Pedro Alves  <palves@redhat.com>
11683
11684         * procfs.c (procfs_detach): Make forward declaration's prototype
11685         match definition's protototype.
11686         (proc_get_LDT_entry): Remove stale do_cleanups call.
11687
11688 2018-04-12  Pedro Alves  <palves@redhat.com>
11689
11690         * target.h (target_ops::to_has_exited): Delete.
11691         (target_has_exited): Delete.
11692         * target-delegates.c: Regenerate.
11693
11694 2018-04-11  Pedro Alves  <palves@redhat.com>
11695
11696         * target.c (fileio_fh_t::t): Add comment.
11697         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11698         (target_fileio_close): Handle a NULL target.
11699         (invalidate_fileio_fh): New.
11700         (target_close): Call it.
11701         * remote.c (remote_hostio_send_command): No longer check whether
11702         remote_desc is open.
11703
11704 2018-04-11  Pedro Alves  <palves@redhat.com>
11705
11706         * target.c (fileio_fh_t): Make it a named struct instead of a
11707         typedef.
11708         (fileio_fh_t::is_closed): New method.
11709         (DEF_VEC_O (fileio_fh_t)): Remove.
11710         (fileio_fhandles): Now a std::vector.
11711         (is_closed_fileio_fh): Delete.
11712         (acquire_fileio_fd): Adjust.  Rename parameters.
11713         (release_fileio_fd): Adjust.
11714         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
11715         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11716         (target_fileio_close): Adjust.
11717
11718 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
11719
11720         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
11721         index.
11722
11723 2018-04-10  Pedro Alves  <palves@redhat.com>
11724
11725         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
11726         (scoped_finish_thread_state): New class.
11727         * infcmd.c (run_command_1): Use it instead of finish_thread_state
11728         cleanup.
11729         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
11730         (fetch_inferior_event, normal_stop): Likewise.
11731         * thread.c (finish_thread_state_cleanup): Delete.
11732
11733 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11734             Pedro Alves  <palves@redhat.com>
11735
11736         * value.c: Include "selftest.h" and "common/array-view.h".
11737         (struct range) <operator ==>: New.
11738         (test_ranges_contain): New.
11739         (check_ranges_vector): New.
11740         (test_insert_into_bit_range_vector): New.
11741         (_initialize_values): Register selftests.
11742         * common/array-view.h (operator==, operator!=): New.
11743
11744 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11745
11746         * common/gdb_vecs.h (unordered_remove): Add overload that takes
11747         an iterator.
11748         * inline-frame.c: Include <algorithm>.
11749         (struct inline_state): Add constructor.
11750         (inline_state_s): Remove.
11751         (DEF_VEC_O(inline_state_s)): Remove.
11752         (inline_states): Change type to std::vector.
11753         (find_inline_frame_state): Adjust to std::vector.
11754         (allocate_inline_frame_state): Remove.
11755         (clear_inline_frame_state): Adjust to std::vector.
11756         (skip_inline_frames): Adjust to std::vector.
11757
11758 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11759
11760         * tracepoint.h (struct trace_state_variable): Add constructor.
11761         <name>: Change type to std::string.
11762         * tracepoint.c (tsv_s): Remove.
11763         (DEF_VEC_O(tsv_s)): Remove.
11764         (tvariables): Change to std::vector.
11765         (create_trace_state_variable): Adjust to std::vector.
11766         (find_trace_state_variable): Likewise.
11767         (find_trace_state_variable_by_number): Likewise.
11768         (delete_trace_state_variable): Likewise.
11769         (trace_variable_command): Adjust to std::string.
11770         (delete_trace_variable_command): Likewise.
11771         (tvariables_info_1): Adjust to std::vector.
11772         (save_trace_state_variables): Likewise.
11773         (start_tracing): Likewise.
11774         (merge_uploaded_trace_state_variables): Adjust to std::vector
11775         and std::string.
11776         * target.h (struct target_ops)
11777         <to_download_trace_state_variable>: Pass reference to
11778         trace_state_variable.
11779         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
11780         * target-delegates.c: Re-generate.
11781         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
11782         (mi_tsv_deleted): Likewise.
11783         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
11784         * remote.c (remote_download_trace_state_variable): Change
11785         pointer to reference and adjust.
11786         * make-target-delegates (parse_argtypes): Handle references.
11787         (write_function_header): Likewise.
11788         (munge_type): Likewise.
11789
11790 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11791
11792         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11793         string_view-selftests.c.
11794         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
11795         testsuite.
11796         * unittests/basic_string_view/cons/char/1.cc: Likewise.
11797         * unittests/basic_string_view/cons/char/2.cc: Likewise.
11798         * unittests/basic_string_view/cons/char/3.cc: Likewise.
11799         * unittests/basic_string_view/element_access/char/1.cc:
11800         Likewise.
11801         * unittests/basic_string_view/element_access/char/empty.cc:
11802         Likewise.
11803         * unittests/basic_string_view/element_access/char/front_back.cc:
11804         Likewise.
11805         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
11806         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
11807         Likewise.
11808         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
11809         Likewise.
11810         * unittests/basic_string_view/modifiers/swap/char/1.cc:
11811         Likewise.
11812         * unittests/basic_string_view/operations/compare/char/1.cc:
11813         Likewise.
11814         * unittests/basic_string_view/operations/compare/char/13650.cc:
11815         Likewise.
11816         * unittests/basic_string_view/operations/copy/char/1.cc:
11817         Likewise.
11818         * unittests/basic_string_view/operations/data/char/1.cc:
11819         Likewise.
11820         * unittests/basic_string_view/operations/find/char/1.cc:
11821         Likewise.
11822         * unittests/basic_string_view/operations/find/char/2.cc:
11823         Likewise.
11824         * unittests/basic_string_view/operations/find/char/3.cc:
11825         Likewise.
11826         * unittests/basic_string_view/operations/find/char/4.cc:
11827         Likewise.
11828         * unittests/basic_string_view/operations/rfind/char/1.cc:
11829         Likewise.
11830         * unittests/basic_string_view/operations/rfind/char/2.cc:
11831         Likewise.
11832         * unittests/basic_string_view/operations/rfind/char/3.cc:
11833         Likewise.
11834         * unittests/basic_string_view/operations/substr/char/1.cc:
11835         Likewise.
11836         * unittests/basic_string_view/operators/char/2.cc: Likewise.
11837         * unittests/string_view-selftests.c: New file.
11838
11839 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11840
11841         * unittests/basic_string_view/capacity/1.cc: New file.
11842         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
11843         * unittests/basic_string_view/cons/char/1.cc: New file.
11844         * unittests/basic_string_view/cons/char/2.cc: New file.
11845         * unittests/basic_string_view/cons/char/3.cc: New file.
11846         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
11847         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
11848         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
11849         * unittests/basic_string_view/element_access/char/1.cc: New file.
11850         * unittests/basic_string_view/element_access/char/2.cc: New file.
11851         * unittests/basic_string_view/element_access/char/empty.cc: New file.
11852         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
11853         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
11854         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
11855         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
11856         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
11857         * unittests/basic_string_view/include.cc: New file.
11858         * unittests/basic_string_view/inserters/char/1.cc: New file.
11859         * unittests/basic_string_view/inserters/char/2.cc: New file.
11860         * unittests/basic_string_view/inserters/char/3.cc: New file.
11861         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
11862         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
11863         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
11864         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
11865         * unittests/basic_string_view/literals/types.cc: New file.
11866         * unittests/basic_string_view/literals/values.cc: New file.
11867         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
11868         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
11869         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
11870         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
11871         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
11872         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
11873         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
11874         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
11875         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
11876         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
11877         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
11878         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
11879         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
11880         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
11881         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
11882         * unittests/basic_string_view/operations/data/char/1.cc: New file.
11883         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
11884         * unittests/basic_string_view/operations/find/char/1.cc: New file.
11885         * unittests/basic_string_view/operations/find/char/2.cc: New file.
11886         * unittests/basic_string_view/operations/find/char/3.cc: New file.
11887         * unittests/basic_string_view/operations/find/char/4.cc: New file.
11888         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
11889         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
11890         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
11891         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
11892         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
11893         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
11894         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
11895         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
11896         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
11897         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
11898         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
11899         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
11900         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
11901         * unittests/basic_string_view/operators/char/2.cc: New file.
11902         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
11903         * unittests/basic_string_view/range_access/char/1.cc: New file.
11904         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
11905         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
11906         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
11907         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
11908         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
11909         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
11910         * unittests/basic_string_view/requirements/typedefs.cc: New file.
11911         * unittests/basic_string_view/typedefs.cc: New file.
11912         * unittests/basic_string_view/types/1.cc: New file.
11913
11914 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11915
11916         * common/gdb_string_view.h: Remove libstdc++ implementation
11917         details, adjust to gdb reality.
11918         * common/gdb_string_view.tcc: Likewise.
11919         * cli/cli-script.c (struct string_view): Remove.
11920         (user_args) <m_args>: Change element type to gdb::string_view.
11921         (user_args::insert_args): Adjust.
11922
11923 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11924
11925         * common/gdb_string_view.h: New file.
11926         * common/gdb_string_view.tcc: New file.
11927
11928 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11929
11930         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
11931         * configure: Re-generate.
11932
11933 2018-04-09  Pedro Alves  <palves@redhat.com>
11934
11935         * gdbarch.sh: Include "observable.h" instead of "observer.h".
11936         (set_target_gdbarch): Call
11937         gdb::observers::architecture_changed.notify instead of
11938         observer_notify_architecture_changed.
11939
11940 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11941
11942         * tracepoint.c (struct current_traceframe_cleanup): Remove.
11943         (do_restore_current_traceframe_cleanup): Remove.
11944         (restore_current_traceframe_cleanup_dtor): Remove.
11945         (make_cleanup_restore_current_traceframe): Remove.
11946         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
11947         New.
11948         * tracepoint.h (struct scoped_restore_current_traceframe): New.
11949         * infrun.c (fetch_inferior_event): Use
11950         scoped_restore_current_traceframe.
11951
11952 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11953
11954         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
11955         Remove.
11956         <n_allocated_type_units>: Remove.
11957         <all_type_units>: Change to std::vector.
11958         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11959         to std::vector change.
11960         (dwarf2_per_objfile::get_cutu): Likewise.
11961         (dwarf2_per_objfile::get_tu): Likewise.
11962         (create_signatured_type_table_from_index): Likewise.
11963         (create_signatured_type_table_from_debug_names): Likewise.
11964         (dw2_symtab_iter_next): Likewise.
11965         (dw2_print_stats): Likewise.
11966         (dw2_expand_all_symtabs): Likewise.
11967         (dw2_expand_marked_cus): Likewise.
11968         (dw2_debug_names_iterator::next): Likewise.
11969         (dwarf2_initialize_objfile): Likewise.
11970         (add_signatured_type_cu_to_table): Likewise.
11971         (create_all_type_units): Likewise.
11972         (add_type_unit): Likewise.
11973         (struct tu_abbrev_offset): Add constructor.
11974         (build_type_psymtabs_1): Adjust to std::vector change.
11975         (print_tu_stats): Likewise.
11976         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11977         (write_debug_names): Likewise.
11978
11979 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11980
11981         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
11982         Make an std::vector.
11983         <n_comp_units>: Remove.
11984         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11985         to std::vector change.
11986         (dwarf2_per_objfile::get_cutu): Likewise.
11987         (dwarf2_per_objfile::get_cu): Likewise.
11988         (create_cus_from_index): Likewise.
11989         (create_addrmap_from_index): Likewise.
11990         (create_addrmap_from_aranges): Likewise.
11991         (dwarf2_read_index): Likewise.
11992         (dw2_find_last_source_symtab): Likewise.
11993         (dw2_map_symtabs_matching_filename): Likewise.
11994         (dw2_symtab_iter_next): Likewise.
11995         (dw2_print_stats): Likewise.
11996         (dw2_expand_all_symtabs): Likewise.
11997         (dw2_expand_symtabs_with_fullname): Likewise.
11998         (dw2_expand_marked_cus): Likewise.
11999         (dw2_map_symbol_filenames): Likewise.
12000         (create_cus_from_debug_names): Likewise.
12001         (dwarf2_read_debug_names): Likewise.
12002         (dw2_debug_names_iterator::next): Likewise.
12003         (dwarf2_initialize_objfile): Likewise.
12004         (set_partial_user): Likewise.
12005         (dwarf2_build_psymtabs_hard): Likewise.
12006         (read_comp_units_from_section): Remove arguments, adjust to
12007         std::vector change.
12008         (create_all_comp_units): Adjust to std::vector and
12009         read_comp_units_from_section changes.
12010         (dwarf2_find_containing_comp_unit): Adjust to std::vector
12011         change.
12012         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
12013         (psyms_seen_size): Likewise.
12014         (write_gdbindex): Likewise.
12015         (write_debug_names): Likewise.
12016
12017 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12018
12019         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
12020         with dwarf2_per_objfile.
12021         (create_cus_from_index): Likewise.
12022         (create_signatured_type_table_from_index): Likewise.
12023         (dwarf2_read_index): Likewise.
12024         (dwarf2_initialize_objfile): Likewise.
12025         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
12026         per_cu rather than get_dwarf2_per_objfile.
12027
12028 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12029
12030         * dwarf2read.h (struct signatured_type): Forward declare.
12031         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
12032         New methods.
12033         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
12034         (dw2_get_cutu): ...this.
12035         (dwarf2_per_objfile::get_cu): Rename from...
12036         (dw2_get_cu): ...this.
12037         (dwarf2_per_objfile::get_tu): New.
12038         (create_addrmap_from_index): Adjust.
12039         (create_addrmap_from_aranges): Adjust.
12040         (dw2_find_last_source_symtab): Adjust.
12041         (dw2_map_symtabs_matching_filename): Adjust.
12042         (dw2_symtab_iter_next): Adjust.
12043         (dw2_print_stats): Adjust.
12044         (dw2_expand_all_symtabs): Adjust.
12045         (dw2_expand_symtabs_with_fullname): Adjust.
12046         (dw2_expand_marked_cus): Adjust.
12047         (dw_expand_symtabs_matching_file_matcher): Adjust.
12048         (dw2_map_symbol_filenames): Adjust.
12049         (dw2_debug_names_iterator::next): Adjust.
12050         (dwarf2_initialize_objfile): Adjust.
12051         (set_partial_user): Adjust.
12052         (dwarf2_build_psymtabs_hard): Adjust.
12053
12054 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12055
12056         * dwarf2read.c (create_signatured_type_table_from_debug_names):
12057         Remove unused variables.
12058         (dw2_map_symtabs_matching_filename): Likewise.
12059         (dwarf2_record_block_ranges): Likewise.
12060         (dwarf2_read_addr_index): Likewise.
12061         (follow_die_offset): Likewise.
12062
12063 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12064
12065         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
12066         to symbol_file_add_main.
12067
12068 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12069
12070         PR mi/22299
12071         * mi/mi-console.c (do_fputc_async_safe): New.
12072         (mi_console_file::write_async_safe): New.
12073         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
12074         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
12075         New.
12076         * ui-file.c (ui_file::putstrn): Adjust call to
12077         fputstrn_unfiltered.
12078         * utils.c (printchar): Replace do_fputs and do_fprintf
12079         parameters by do_fputc.
12080         (fputstr_filtered): Adjust call to printchar.
12081         (fputstr_unfiltered): Likewise.
12082         (fputstrn_filtered): Likewise.
12083         (fputstrn_unfiltered): Add do_fputc parameter, pass to
12084         printchar.
12085         * utils.h (do_fputc_ftype): New typedef.
12086         (fputstrn_unfiltered): Add do_fputc parameter.
12087
12088 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12089
12090         * regformats/i386/i386-avx.dat: Remove.
12091
12092 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12093
12094         PR gdb/22979
12095         * amd64-tdep.c (amd64_none_init_abi): New function.
12096         (amd64_x32_none_init_abi): New function.
12097         (_initialize_amd64_tdep): Register handlers for x86-64 and
12098         x64_32 with GDB_OSABI_NONE.
12099         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
12100         GDB_OSABI_NONE osabi.
12101
12102 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12103
12104         PR gdb/22980
12105         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
12106         GDB_OSABI_NONE.
12107         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
12108         * osabi.c (gdb_osabi_names): Add "unknown" entry.
12109
12110 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12111
12112         * common/byte-vector.h (char_vector): New type.
12113         * target.h (target_read_alloc): Return
12114         gdb::optional<byte_vector>.
12115         (target_read_stralloc): Return gdb::optional<char_vector>.
12116         (target_get_osdata): Return gdb::optional<char_vector>.
12117         * target.c (target_read_alloc_1): Templatize.  Replacement
12118         manual memory management with vector.
12119         (target_read_alloc): Change return type, adjust.
12120         (target_read_stralloc): Change return type, adjust.
12121         (target_get_osdata): Change return type, adjust.
12122         * auxv.c (struct auxv_info) <length>: Remove.
12123         <data>: Change type to gdb::optional<byte_vector>.
12124         (auxv_inferior_data_cleanup): Free auxv_info with delete.
12125         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
12126         (target_auxv_search): Adjust.
12127         (fprint_target_auxv): Adjust.
12128         * avr-tdep.c (avr_io_reg_read_command): Adjust.
12129         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
12130         (linux_make_corefile_notes): Adjust.
12131         * osdata.c (get_osdata): Adjust.
12132         * remote.c (remote_get_threads_with_qxfer): Adjust.
12133         (remote_memory_map): Adjust.
12134         (remote_traceframe_info): Adjust.
12135         (btrace_read_config): Adjust.
12136         (remote_read_btrace): Adjust.
12137         (remote_pid_to_exec_file): Adjust.
12138         * solib-aix.c (solib_aix_get_library_list): Adjust.
12139         * solib-dsbt.c (decode_loadmap): Don't free buf.
12140         (dsbt_get_initial_loadmaps): Adjust.
12141         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
12142         * solib-target.c (solib_target_current_sos): Adjust.
12143         * tracepoint.c (sdata_make_value): Adjust.
12144         * xml-support.c (xinclude_start_include): Adjust.
12145         (xml_fetch_content_from_file): Adjust.
12146         * xml-support.h (xml_fetch_another): Change return type.
12147         (xml_fetch_content_from_file): Change return type.
12148         * xml-syscall.c (xml_init_syscalls_info): Adjust.
12149         * xml-tdesc.c (file_read_description_xml): Adjust.
12150         (fetch_available_features_from_target): Change return type.
12151         (target_fetch_description_xml): Adjust.
12152         (target_read_description_xml): Adjust.
12153
12154 2018-04-06  Tom Tromey  <tom@tromey.com>
12155
12156         * value.c (~value): Update.
12157         (struct value) <contents>: Now unique_xmalloc_ptr.
12158         (value_contents_bits_eq, allocate_value_contents)
12159         (value_contents_raw, value_contents_all_raw)
12160         (value_contents_for_printing, value_contents_for_printing_const)
12161         (set_value_enclosing_type): Update.
12162
12163 2018-04-06  Tom Tromey  <tom@tromey.com>
12164
12165         * value.c (range_s): Remove typedef, VEC.
12166         (struct range): Add operator<.
12167         (range_lessthan): Remove.
12168         (ranges_contain): Change type.
12169         (~value): Update.
12170         (struct value) <unavailable, optimized_out>: Now std::vector.
12171         (value_entirely_available)
12172         (value_entirely_covered_by_range_vector)
12173         (value_entirely_unavailable, value_entirely_optimized_out):
12174         Update.
12175         (insert_into_bit_range_vector): Change argument type.
12176         (find_first_range_overlap): Likewise.
12177         (struct ranges_and_idx, value_contents_bits_eq)
12178         (require_not_optimized_out, require_available): Update.
12179         (ranges_copy_adjusted): Change argument types.
12180         (value_optimized_out, value_copy, value_fetch_lazy): Update.
12181
12182 2018-04-06  Tom Tromey  <tom@tromey.com>
12183
12184         * value.c (~value): Update.
12185         (struct value) <parent>: Now a value_ref_ptr.
12186         (value_parent, set_value_parent, value_address, value_copy):
12187         Update.
12188
12189 2018-04-06  Tom Tromey  <tom@tromey.com>
12190
12191         * value.c (struct value): Add constructor, destructor, and member
12192         initializers.
12193         (allocate_value_lazy, value_decref): Update.
12194
12195 2018-04-06  Tom Tromey  <tom@tromey.com>
12196
12197         * value.c (struct value) <released, next>: Remove.
12198         (all_values): Now a std::vector.
12199         (allocate_value_lazy): Update.
12200         (value_next): Remove.
12201         (value_mark, value_free_to_mark, release_value)
12202         (value_release_to_mark): Update.
12203
12204 2018-04-06  Tom Tromey  <tom@tromey.com>
12205
12206         * value.h (fetch_subexp_value, value_release_to_mark): Update.
12207         (free_value_chain): Remove.
12208         * value.c (free_value_chain): Remove.
12209         (value_release_to_mark): Return a std::vector.
12210         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
12211         std::vector.
12212         (check_condition): Update.
12213         * eval.c (fetch_subexp_value): Change "val_chain" to a
12214         std::vector.
12215         * breakpoint.c (update_watchpoint): Update.
12216         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
12217
12218 2018-04-06  Tom Tromey  <tom@tromey.com>
12219
12220         * value.h (free_all_values): Remove.
12221         * value.c (free_all_values): Remove.
12222
12223 2018-04-06  Tom Tromey  <tom@tromey.com>
12224
12225         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
12226         (value_history_chain, value_history_count): Remove.
12227         (value_history): New global.
12228         (record_latest_value, access_value_history, show_values)
12229         (preserve_values): Update.
12230
12231 2018-04-06  Tom Tromey  <tom@tromey.com>
12232
12233         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
12234         * varobj.c (varobj_set_display_format, varobj_set_value)
12235         (install_default_visualizer, construct_visualizer)
12236         (install_new_value, ~varobj, varobj_get_value_type)
12237         (my_value_of_variable, varobj_editable_p): Update.
12238         * c-varobj.c (c_describe_child, c_value_of_variable)
12239         (cplus_number_of_children, cplus_describe_child): Update.
12240         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
12241         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
12242         (ada_value_of_variable, ada_value_is_changeable_p): Update.
12243
12244 2018-04-06  Tom Tromey  <tom@tromey.com>
12245
12246         * printcmd.c (last_examine_address): Change type to
12247         value_ref_ptr.
12248         (do_examine, x_command): Update.
12249
12250 2018-04-06  Tom Tromey  <tom@tromey.com>
12251
12252         * value.c (release_value): Update.
12253         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
12254         (struct bpstats) <val>: Now a value_ref_ptr.
12255         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
12256         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
12257         (~watchpoint, print_it_watchpoint, watch_command_1)
12258         (invalidate_bp_value_on_memory_change): Update.
12259
12260 2018-04-06  Tom Tromey  <tom@tromey.com>
12261
12262         * varobj.c (varobj_clear_saved_item)
12263         (update_dynamic_varobj_children, install_new_value, ~varobj):
12264         Update.
12265         * value.h (value_incref): Move declaration earlier.
12266         (value_decref): Rename from value_free.
12267         (struct value_ref_policy): New.
12268         (value_ref_ptr): New typedef.
12269         (struct value_deleter): Remove.
12270         (gdb_value_up): Remove typedef.
12271         (release_value): Change return type.
12272         (release_value_or_incref): Remove.
12273         * value.c (set_value_parent): Update.
12274         (value_incref): Change return type.
12275         (value_decref): Rename from value_free.
12276         (value_free_to_mark, free_all_values, free_value_chain): Update.
12277         (release_value): Return value_ref_ptr.
12278         (release_value_or_incref): Remove.
12279         (record_latest_value, set_internalvar, clear_internalvar):
12280         Update.
12281         * stack.c (info_frame_command): Don't call value_free.
12282         * python/py-value.c (valpy_dealloc, valpy_new)
12283         (value_to_value_object): Update.
12284         * printcmd.c (do_examine): Update.
12285         * opencl-lang.c (lval_func_free_closure): Update.
12286         * mi/mi-main.c (register_changed_p): Don't call value_free.
12287         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
12288         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
12289         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
12290         value_free.
12291         * guile/scm-value.c (vlscm_free_value_smob)
12292         (vlscm_scm_from_value): Update.
12293         * frame.c (frame_register_unwind, frame_unwind_register_signed)
12294         (frame_unwind_register_unsigned, get_frame_register_bytes)
12295         (put_frame_register_bytes): Don't call value_free.
12296         * findvar.c (address_from_register): Don't call value_free.
12297         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
12298         * dwarf2loc.c (entry_data_value_free_closure)
12299         (value_of_dwarf_reg_entry, free_pieced_value_closure)
12300         (dwarf2_evaluate_loc_desc_full): Update.
12301         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
12302         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
12303         (~watchpoint, watch_command_1)
12304         (invalidate_bp_value_on_memory_change): Update.
12305         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
12306
12307 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
12308
12309         PR gdb/23022
12310         * warning.m4: Add -Wno-error=deprecated-register.
12311         * configure: Re-generate.
12312
12313 2018-04-05  Tom Tromey  <tom@tromey.com>
12314
12315         * linespec.h: Remove include of "vec.h".
12316
12317 2018-04-05  Tom Tromey  <tom@tromey.com>
12318
12319         * linespec.c (typep): Remove typedef.
12320         (find_methods, find_superclass_methods): Take a std::vector.
12321         (find_method): Use std::vector.
12322
12323 2018-04-05  Tom Tromey  <tom@tromey.com>
12324
12325         * utils.c (compare_strings): Remove.
12326         * utils.h (compare_strings): Remove.
12327         * objc-lang.h (find_imps): Update.
12328         * objc-lang.c (find_methods): Take a std::vector.
12329         (uniquify_strings, find_imps): Likewise.
12330         * linespec.c (find_methods): Take a std::vector.
12331         (decode_objc): Use std::vector.
12332         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
12333         a std::vector.
12334         (find_method, find_function_symbols): Use std::vector.
12335
12336 2018-04-05  Tom Tromey  <tom@tromey.com>
12337
12338         * completer.c (completion_tracker::completion_tracker): Remove
12339         cast.
12340         (completion_tracker::discard_completions): Likewise.
12341         * breakpoint.c (ambiguous_names_p): Remove cast.
12342         * ada-lang.c (_initialize_ada_language): Remove cast.
12343         * utils.h (streq): Update.
12344         (streq_hash): Add new declaration.
12345         * utils.c (streq): Return bool.
12346         (streq_hash): New function.
12347
12348 2018-04-05  Tom Tromey  <tom@tromey.com>
12349
12350         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
12351         Remove a string copy.
12352
12353 2018-04-05  Tom Tromey  <tom@tromey.com>
12354
12355         * linespec.c (filter_results): Use std::vector.
12356         (decode_line_2, decode_line_full): Update.
12357
12358 2018-04-05  Tom Tromey  <tom@tromey.com>
12359
12360         * linespec.c (canonical_to_fullform): Return std::string.
12361         (filter_results): Update.
12362         (struct decode_line_2_item): Add constructor.
12363         <fullform, displayform>: Now std::string.
12364         (decode_line_2_compare_items): Now a std::sort comparator.
12365         (decode_line_2): Update.
12366
12367 2018-04-05  Tom Tromey  <tom@tromey.com>
12368
12369         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
12370         (unexpected_linespec_error): Update.
12371         (linespec_parse_basic, parse_linespec): Update.
12372
12373 2018-04-05  Tom Tromey  <tom@tromey.com>
12374
12375         * linespec.c (linespec_parse_basic): Reindent.
12376
12377 2018-04-05  Tom Tromey  <tom@tromey.com>
12378
12379         * minsyms.h (iterate_over_minimal_symbols): Update.
12380         * minsyms.c (iterate_over_minimal_symbols): Take a
12381         gdb::function_view.
12382         * linespec.c (struct collect_minsyms): Remove.
12383         (compare_msyms): Now a std::sort comparator.
12384         (add_minsym): Add parameters.
12385         (search_minsyms_for_name): Update.  Use std::vector.
12386
12387 2018-04-03  Tom Tromey  <tom@tromey.com>
12388
12389         * mipsread.c (read_alphacoff_dynamic_symtab): Use
12390         gdb::byte_vector.
12391
12392 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
12393
12394         * MAINTAINERS (Write After Approval): Add Weimin Pan.
12395
12396 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
12397
12398         PR gdb/16959
12399         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
12400         printing static type.
12401
12402 2018-04-01  Tom Tromey  <tom@tromey.com>
12403
12404         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
12405         (rs6000_xfer_shared_libraries): Update.
12406
12407 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
12408
12409         * common/gdb_vecs.h (char_ptr): Remove.
12410         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
12411
12412 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
12413
12414         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
12415         with std::vector.
12416         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
12417
12418 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
12419
12420         * tracepoint.h (struct uploaded_tp): Initialize fields.
12421         <actions, step_actions, cmd_strings>: Change type to
12422         std::vector<char *>.
12423         * tracepoint.c (get_uploaded_tp): Allocate with new.
12424         (free_uploaded_tps): Free with delete.
12425         (parse_tracepoint_definition): Adjust to std::vector change.
12426         * breakpoint.c (read_uploaded_action): Likewise.
12427         (create_tracepoint_from_upload): Likewise.
12428         * ctf.c (ctf_write_uploaded_tp): Likewise.
12429         (SET_ARRAY_FIELD): Likewise.
12430         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
12431
12432 2018-03-30  Tom Tromey  <tom@tromey.com>
12433
12434         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
12435         std::unique_ptr.
12436         (svr4_keep_data_in_core): Update.
12437         (svr4_read_so_list): Update.
12438
12439 2018-03-30  Tom Tromey  <tom@tromey.com>
12440
12441         * windows-nat.c (handle_output_debug_string, handle_exception):
12442         Update.
12443         * target.h (target_read_string): Update.
12444         * target.c (target_read_string): Change "string" to
12445         unique_xmalloc_ptr.
12446         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
12447         Update.
12448         * solib-frv.c (frv_current_sos): Update.
12449         * solib-dsbt.c (dsbt_current_sos): Update.
12450         * solib-darwin.c (darwin_current_sos): Update.
12451         * linux-thread-db.c (inferior_has_bug): Update.
12452         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
12453         Update.  Remove alloca.
12454         * ada-lang.c (ada_main_name): Update.
12455
12456 2018-03-30  Tom Tromey  <tom@tromey.com>
12457
12458         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
12459         (struct dwo_file_deleter): New.
12460         (dwo_file_up): New typedef.
12461         (open_and_init_dwo_file): Use dwo_file_up.
12462         (free_dwo_file_cleanup): Remove.
12463
12464 2018-03-30  Tom Tromey  <tom@tromey.com>
12465
12466         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
12467         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
12468
12469 2018-03-30  Tom Tromey  <tom@tromey.com>
12470
12471         * dwarf2read.c (class free_cached_comp_units): New class.
12472         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
12473         (free_cached_comp_units): Remove function.
12474
12475 2018-03-30  Tom Tromey  <tom@tromey.com>
12476
12477         * utils.h (make_cleanup_unpush_target): Remove.
12478         * inf-ptrace.c (struct target_unpusher): New.
12479         (target_unpush_up) New typedef.
12480         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
12481         target_unpush_up.
12482         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
12483
12484 2018-03-27  Tom Tromey  <tom@tromey.com>
12485
12486         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
12487
12488 2018-03-27  Pedro Alves  <palves@redhat.com>
12489             Tom Tromey  <tom@tromey.com>
12490
12491         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
12492         destructor.  Now a class.
12493         (gdb_readline_wrapper_cleanup): Remove function.
12494         (gdb_readline_wrapper): Remove cleanups.
12495
12496 2018-03-27  Tom Tromey  <tom@tromey.com>
12497
12498         * typeprint.h (struct type_print_options) <local_typedefs,
12499         global_typedefs>: Remove "struct" keyword.
12500         (class typedef_hash_table): New class.
12501         (recursively_update_typedef_hash, add_template_parameters)
12502         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
12503         (find_typedef_in_hash): Don't declare.
12504         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
12505         (typedef_hash_table::recursively_update): Rename from
12506         recursively_update_typedef_hash.  Now a member.
12507         (typedef_hash_table::add_template_parameters): Rename from
12508         add_template_parameters.  Now a member.
12509         (typedef_hash_table::typedef_hash_table): Now a constructor;
12510         rename from create_typedef_hash.
12511         (typedef_hash_table::~typedef_hash_table): Now a destructor;
12512         rename from free_typedef_hash.
12513         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
12514         (do_free_global_table): Remove.
12515         (typedef_hash_table::typedef_hash_table): New constructor; renamed
12516         from copy_type_recursive.
12517         (create_global_typedef_table): Remove.
12518         (typedef_hash_table::find_global_typedef): Now a member of
12519         typedef_hash_table.
12520         (typedef_hash_table::find_typedef): Rename from
12521         find_typedef_in_hash; now a member.
12522         (whatis_exp): Update.
12523         * extension.h (struct ext_lang_type_printers): Add constructor and
12524         destructor.
12525         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
12526         declare.
12527         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
12528         Now a constructor; rename from start_ext_lang_type_printers.
12529         (ext_lang_type_printers): Now a destructor; rename from
12530         free_ext_lang_type_printers.
12531         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
12532         Update.
12533         (c_type_print_base_struct_union): Update.  Remove cleanups.
12534
12535 2018-03-27  Tom Tromey  <tom@tromey.com>
12536
12537         * dwarf-index-write.c: Include <cmath>.
12538
12539 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
12540
12541         * NEWS: Add entry describing new "set|show varsize-limit" command.
12542         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
12543         command.
12544         * printcmd.c (_initialize_printcmd): Add "set var" alias of
12545         "set variable".
12546
12547 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
12548
12549         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
12550         dwarf-index-write.c
12551         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
12552         * dwarf-index-common.c: New file.
12553         * dwarf-index-common.h: New file.
12554         * dwarf-index-write.c: New file.
12555         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
12556         (struct dwarf2_section_info): Move from here.
12557         (dwarf2_section_info_def): Likewise.
12558         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
12559         (offset_type): Likewise.
12560         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
12561         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
12562         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
12563         (byte_swap): Likewise.
12564         (MAYBE_SWAP): Likewise.
12565         (dwarf2_per_cu_ptr): Likewise.
12566         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
12567         (struct tu_stats): Likewise.
12568         (struct dwarf2_per_objfile): Likewise.
12569         (struct dwarf2_per_cu_data): Likewise.
12570         (struct signatured_type): Likewise.
12571         (sig_type_ptr): Likewise.
12572         (DEF_VEC_P (sig_type_ptr)): Likewise.
12573         (INDEX4_SUFFIX): Likewise.
12574         (INDEX5_SUFFIX): Likewise.
12575         (DEBUG_STR_SUFFIX): Likewise.
12576         (dwarf2_read_section): Make non-static.
12577         (mapped_index_string_hash): Move from here.
12578         (dwarf5_djb_hash): Likewise.
12579         (file_write): Likewise.
12580         (class data_buf): Likewise.
12581         (struct symtab_index_entry): Likewise.
12582         (struct mapped_symtab): Likewise.
12583         (find_slot): Likewise.
12584         (hash_expand): Likewise.
12585         (add_index_entry): Likewise.
12586         (uniquify_cu_indices): Likewise.
12587         (class c_str_view): Likewise.
12588         (class c_str_view_hasher): Likewise.
12589         (class vector_hasher): Likewise.
12590         (write_hash_table): Likewise.
12591         (psym_index_map): Likewise.
12592         (struct addrmap_index_data): Likewise.
12593         (add_address_entry): Likewise.
12594         (add_address_entry_worker): Likewise.
12595         (write_address_map): Likewise.
12596         (symbol_kind): Likewise.
12597         (write_psymbols): Likewise.
12598         (struct signatured_type_index_data): Likewise.
12599         (write_one_signatured_type): Likewise.
12600         (recursively_count_psymbols): Likewise.
12601         (recursively_write_psymbols): Likewise.
12602         (class debug_names): Likewise.
12603         (check_dwarf64_offsets): Likewise.
12604         (psyms_seen_size): Likewise.
12605         (write_gdbindex): Likewise.
12606         (write_debug_names): Likewise.
12607         (assert_file_size): Likewise.
12608         (write_psymtabs_to_index): Likewise.
12609         (save_gdb_index_command): Likewise.
12610         (_initialize_dwarf2_read): Don't register the "save gdb-index"
12611         command.
12612         * dwarf2read.h: New file.
12613
12614 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
12615
12616         PR gdb/22670
12617         * dwarf2read.c (dwarf2_physname): Do not return the demangled
12618         symbol name if the CU's language stores symbol names in linkage
12619         format.
12620         * language.h (struct language_defn)
12621         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
12622         all instances of this struct.
12623
12624 2018-03-26  Tom Tromey  <tom@tromey.com>
12625
12626         * stack.c (backtrace_command_1): Remove verbose code.
12627
12628 2018-03-26  Tom Tromey  <tom@tromey.com>
12629
12630         * python/py-framefilter.c (py_print_type): Don't catch
12631         exceptions.  Return void.
12632         (py_print_value): Likewise.
12633         (py_print_single_arg): Likewise.
12634         (enumerate_args): Don't catch exceptions.
12635         (py_print_args): Likewise.
12636         (py_print_frame): Likewise.
12637         (gdbpy_apply_frame_filter): Catch exceptions here.
12638
12639 2018-03-26  Tom Tromey  <tom@tromey.com>
12640
12641         * stack.c (_initialize_stack): Remove trailing newlines from help
12642         text.  Add "Usage" line to "backtrace" help.
12643
12644 2018-03-26  Tom Tromey  <tom@tromey.com>
12645
12646         PR python/16486:
12647         * python/py-framefilter.c (py_print_args): Call wrap_hint.
12648
12649 2018-03-26  Tom Tromey  <tom@tromey.com>
12650
12651         * python/py-framefilter.c (py_print_single_arg): Return
12652         EXT_LANG_BT_ERROR from catch.
12653
12654 2018-03-26  Tom Tromey  <tom@tromey.com>
12655
12656         PR backtrace/15584:
12657         * stack.c (backtrace_command_1): Move some code into no-filters
12658         "if".
12659
12660 2018-03-26  Tom Tromey  <tom@tromey.com>
12661
12662         * python/py-framefilter.c (throw_quit_or_print_exception): New
12663         function.
12664         (gdbpy_apply_frame_filter): Use it.
12665
12666 2018-03-26  Tom Tromey  <tom@tromey.com>
12667
12668         PR cli/17716:
12669         * python/py-framefilter.c (py_print_type, py_print_value)
12670         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
12671         RETURN_MASK_ERROR.
12672
12673 2018-03-26  Tom Tromey  <tom@tromey.com>
12674
12675         * python/py-framefilter.c (enumerate_args): Use
12676         gdb::unique_xmalloc_ptr.
12677
12678 2018-03-26  Tom Tromey  <tom@tromey.com>
12679
12680         * python/py-framefilter.c (py_print_frame): Return
12681         EXT_LANG_BT_OK.
12682         (gdbpy_apply_frame_filter): Update comment.
12683         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
12684         Remove.
12685         <EXT_LANG_BT_NO_FILTERS>: Change value.
12686
12687 2018-03-26  Tom Tromey  <tom@tromey.com>
12688
12689         PR backtrace/15582:
12690         * stack.c (backtrace_command): Parse "hide" argument.
12691         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
12692         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
12693         constant.
12694
12695 2018-03-26  Tom Tromey  <tom@tromey.com>
12696
12697         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
12698         add "flags".
12699         (backtrace_command): Remove "fulltrace", add "flags".
12700
12701 2018-03-26  Tom Tromey  <tom@tromey.com>
12702
12703         * stack.c (backtrace_command): Rewrite command line parsing.
12704
12705 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12706
12707         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
12708
12709 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12710
12711         * filename-seen-cache.h: Add include guard.
12712
12713 2018-03-26  Keith Seitz  <keiths@redhat.com>
12714
12715         * symfile.c (place_section): Remove "struct" from section_addr_info
12716         in comment.
12717         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
12718         "struct" keyword from section_addr_info.
12719
12720 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
12721
12722         * regformats/regdef.h (reg): Add constructors.
12723
12724 2018-03-25  Pedro Alves  <palves@redhat.com>
12725
12726         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
12727         if then/else bodies in var_func_name extraction.
12728
12729 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
12730
12731         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
12732         lookup_minimal_symbol() to find symbol entry.
12733         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
12734
12735 2018-03-23  Keith Seitz  <keiths@redhat.com>
12736
12737         PR c++/22968
12738         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
12739         nested type definitions for C++, too.
12740
12741 2018-03-23  Tom Tromey  <tom@tromey.com>
12742
12743         * machoread.c (struct oso_el): Add a constructor.  Don't define as
12744         a typedef.
12745         (macho_register_oso): Remove.
12746         (macho_symtab_read): Take a std::vector.
12747         (oso_el_compare_name): Now a std::sort comparator.
12748         (macho_symfile_read_all_oso): Take a std::vector.
12749         (macho_symfile_read): Use std::vector.  Remove cleanups.
12750
12751 2018-03-22  Tom Tromey  <tom@tromey.com>
12752
12753         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
12754         (record_full_goto_bookmark): Use std::string.
12755
12756 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12757
12758         PR tdep/18295
12759         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
12760         a single mask.
12761
12762 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12763
12764         * rs6000-tdep.c (store_insn_p): New function.
12765         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
12766         and cr_reg to their unshifted values. Use store_insn_p to
12767         match LR saves using either R1 or fdata->alloca_reg. Use
12768         store_insn_p to match CR saves. Set alloca_reg_offset
12769         when alloca_reg and framep are set. Remove lr_reg shift
12770         when assigning to fdata->lr_register.
12771
12772 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12773
12774         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
12775         command line args instead of emitting a warning.
12776
12777 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12778
12779         * tracepoint.h (struct static_tracepoint_marker): Initialize
12780         fields, define default constructor, move constructor and move
12781         assignment, disable the rest.
12782         <str_id, extra>: Make std::string.
12783         (release_static_tracepoint_marker): Remove.
12784         (free_current_marker): Remove.
12785         * tracepoint.c (free_current_marker): Remove.
12786         (parse_static_tracepoint_marker_definition): Adjust to
12787         std::string, use new hex2str overload.
12788         (release_static_tracepoint_marker): Remove.
12789         (print_one_static_tracepoint_marker): Get marker by reference
12790         and adjust to std::string.
12791         (info_static_tracepoint_markers_command): Adjust to std::vector
12792         changes
12793         * target.h (static_tracepoint_marker_p): Remove typedef.
12794         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
12795         (struct target_ops) <to_static_tracepoint_marker_at>: Return
12796         bool.
12797         <to_static_tracepoint_markers_by_strid>: Return std::vector.
12798         * target-debug.h
12799         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
12800         (target_debug_print_std_vector_static_tracepoint_marker): New.
12801         (target_debug_print_struct_static_tracepoint_marker_p): Rename
12802         to...
12803         (target_debug_print_static_tracepoint_marker_p): ... this.
12804         * target-delegates.c: Re-generate.
12805         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
12806         Make std::string.
12807         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
12808         (decode_static_tracepoint_spec): Adjust to std::vector.
12809         (tracepoint_print_one_detail): Adjust to std::string.
12810         (strace_marker_decode_location): Adjust to std::string.
12811         (update_static_tracepoint): Adjust to std::string, remove call
12812         to release_static_tracepoint_marker.
12813         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
12814         Adjust to std::vector.
12815         * remote.c (remote_static_tracepoint_marker_at): Return bool.
12816         (remote_static_tracepoint_markers_by_strid): Adjust to
12817         std::vector.
12818         * common/rsp-low.h (hex2str): New overload with explicit count
12819         of bytes.
12820         * common/rsp-low.c (hex2str): New overload with explicit count
12821         of bytes.
12822         * unittests/rsp-low-selftests.c (test_hex2str): New function.
12823         (_initialize_rsp_low_selftests): Add test_hex2str test.
12824         * unittests/tracepoint-selftests.c
12825         (test_parse_static_tracepoint_marker_definition): Adjust to
12826         std::string.
12827
12828 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12829
12830         * tracepoint.c (parse_static_tracepoint_marker_definition):
12831         Consider case where the definition is followed by more
12832         definitions.
12833         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12834         tracepoint-selftests.c.
12835         * unittests/tracepoint-selftests.c: New.
12836
12837 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12838
12839         * MAINTAINERS (Write After Approval): Add Pedro Franco de
12840         Carvalho.
12841
12842 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12843
12844         * symtab.c (find_pc_sect_line): fixed indentation.
12845
12846 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12847
12848         * symtab.c (find_pc_sect_line): now uses binary search.
12849
12850 2018-03-19  Tom Tromey  <tom@tromey.com>
12851
12852         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
12853         "IDENT" production.
12854
12855 2018-03-19  Pedro Alves  <palves@redhat.com>
12856             Tom Tromey  <tom@tromey.com>
12857
12858         * unittests/observable-selftests.c: New file.
12859         * common/observable.h: New file.
12860         * observable.h: New file.
12861         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
12862         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
12863         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
12864         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
12865         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
12866         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
12867         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
12868         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
12869         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
12870         python/py-breakpoint.c, python/py-finishbreakpoint.c,
12871         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
12872         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
12873         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
12874         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
12875         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
12876         tui/tui-interp.c, valops.c: Update all users.
12877         * tui/tui-hooks.c (tui_bp_created_observer)
12878         (tui_bp_deleted_observer, tui_bp_modified_observer)
12879         (tui_inferior_exit_observer, tui_before_prompt_observer)
12880         (tui_normal_stop_observer, tui_register_changed_observer):
12881         Remove.
12882         (tui_observers_token): New global.
12883         (attach_or_detach, tui_attach_detach_observers): New functions.
12884         (tui_install_hooks, tui_remove_hooks): Use
12885         tui_attach_detach_observers.
12886         * record-btrace.c (record_btrace_thread_observer): Remove.
12887         (record_btrace_thread_observer_token): New global.
12888         * observer.sh: Remove.
12889         * observer.c: Rename to observable.c.
12890         * observable.c (namespace gdb_observers): Define new objects.
12891         (observer_debug): Move into gdb_observers namespace.
12892         (struct observer, struct observer_list, xalloc_observer_list_node)
12893         (xfree_observer_list_node, generic_observer_attach)
12894         (generic_observer_detach, generic_observer_notify): Remove.
12895         (_initialize_observer): Update.
12896         Don't include observer.inc.
12897         * Makefile.in (generated_files): Remove observer.h, observer.inc.
12898         (clean mostlyclean): Likewise.
12899         (observer.h, observer.inc): Remove targets.
12900         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
12901         (COMMON_SFILES): Use observable.c, not observer.c.
12902         * .gitignore: Remove observer.h.
12903
12904 2018-03-18  Tom Tromey  <tom@tromey.com>
12905
12906         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
12907         gdb::def_vector.
12908         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
12909
12910 2018-03-17  Tom Tromey  <tom@tromey.com>
12911
12912         * auto-load.c (auto_load_objfile_script_1): Use std::string.
12913
12914 2018-03-17  Tom Tromey  <tom@tromey.com>
12915
12916         * target.c (class scoped_target_fd): New.
12917         (target_fileio_close_cleanup): Remove.
12918         (target_fileio_read_alloc_1): Use scoped_target_fd.
12919
12920 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
12921
12922         * silent-rules.mk: New.
12923         * Makefile.in: Include silent-rules.mk
12924         (srcdir, VPATH, top_srcdir): Move up.
12925         (COMPILE): Add ECHO_CXX.
12926         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
12927         (init.c): Add ECHO_INIT_C.
12928         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
12929         (version.c): Add ECHO_GEN.
12930         (printcmd.o): Add ECHO_CXX.
12931         (target-float.o): Add ECHO_CXX.
12932         (ada-exp.o): Add ECHO_CXX.
12933         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
12934         (insight$(EXEEXT)): Add ECHO_CXXLD.
12935         * gnulib/configure.ac: Add AM_SILENT_RULES.
12936         * gnulib/aclocal.m4: Re-generate.
12937         * gnulib/configure: Re-generate.
12938         * gnulib/import/Makefile.in: Re-generate.
12939
12940 2018-03-16  Tom Tromey  <tom@tromey.com>
12941
12942         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
12943         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
12944         * utils.c (do_free_section_addr_info)
12945         (make_cleanup_free_section_addr_info): Remove.
12946         * symfile.h (struct other_sections): Add constructor.
12947         (struct section_addr_info): Remove.
12948         (section_addr_info): New typedef.
12949         (struct sym_fns) <sym_offsets>: Change type of parameter.
12950         (build_section_addr_info_from_objfile)
12951         (relative_addr_info_to_section_offsets, addr_info_make_relative)
12952         (default_symfile_offsets, symbol_file_add)
12953         (symbol_file_add_from_bfd)
12954         (build_section_addr_info_from_section_table): Update.
12955         (alloc_section_addr_info, free_section_addr_info): Don't declare.
12956         * symfile.c (alloc_section_addr_info): Remove.
12957         (build_section_addr_info_from_section_table): Change return type.
12958         Update.
12959         (build_section_addr_info_from_bfd)
12960         (build_section_addr_info_from_objfile): Likewise.
12961         (free_section_addr_info): Remove.
12962         (relative_addr_info_to_section_offsets): Change type of "addrs".
12963         (addrs_section_compar): Now a std::sort comparator.
12964         (addrs_section_sort): Change return type.
12965         (addr_info_make_relative): Change type of "addrs".  Update.
12966         (default_symfile_offsets, syms_from_objfile_1)
12967         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
12968         (symbol_file_add_separate): Update.
12969         (symbol_file_add): Change type of "addrs".  Update.
12970         (add_symbol_file_command): Update.  Remove cleanups.
12971         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
12972         cleanups.
12973         * symfile-debug.c (debug_sym_offsets): Change type of "info".
12974         * solib.c (solib_read_symbols): Update.
12975         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
12976         * machoread.c (macho_symfile_offsets): Update.
12977         * jit.c (jit_bfd_try_read_symtab): Update.
12978
12979 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
12980
12981         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12982         unittests/utils-selftests.c.
12983         * unittests/utils-selftests.c: New file.
12984
12985 2018-03-14  Tom Tromey  <tom@tromey.com>
12986
12987         PR cli/14977:
12988         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
12989         for NULL.
12990
12991 2018-03-14  Tom Tromey  <tom@tromey.com>
12992
12993         PR cli/19918:
12994         * printcmd.c (printf_pointer): Allow "-" in format.
12995
12996 2018-03-14  Tom Tromey  <tom@tromey.com>
12997
12998         * printcmd.c (_initialize_printcmd): Add usage to printf.
12999
13000 2018-03-14  Yao Qi  <qiyao@sourceware.org>
13001
13002         * MAINTAINERS: Update my email address.
13003
13004 2018-03-13  Tom Tromey  <tom@tromey.com>
13005
13006         * machoread.c (macho_check_dsym): Change filenamep to a
13007         std::string*.
13008         (macho_symfile_read): Update.
13009         * symfile.c (load_command): Use std::string.
13010
13011 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
13012
13013         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
13014         to error message string.
13015         (riscv_register_name): Use xsnprintf instead of sprintf.
13016         (riscv_insn::fetch_instruction): Use gdb_assert instead of
13017         internal_error.
13018         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
13019         error.
13020         (riscv_push_dummy_call): Likewise.
13021
13022 2018-03-12  Tom Tromey  <tom@tromey.com>
13023
13024         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
13025         Use gdb::byte_vector.
13026         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
13027
13028 2018-03-12  Yao Qi  <yao.qi@linaro.org>
13029
13030         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
13031         parameter type to readable_regcache.
13032         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
13033         the declaration.
13034
13035 2018-03-11  Tom Tromey  <tom@tromey.com>
13036
13037         * dwarf2read.c (struct nextfield): Add initializers.
13038         (struct nextfnfield): Remove.
13039         (struct fnfieldlist): Add initializers.  Remove "length" and
13040         "head", use std::vector.
13041         (struct decl_field_list): Remove.
13042         (struct field_info): Add initializers.
13043         <fields, baseclasses>: Now std::vector.
13044         <nbaseclasses, nfnfields, typedef_field_list_count,
13045         nested_types_list_count>: Remove.
13046         (dwarf2_add_field, dwarf2_add_type_defn)
13047         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
13048         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
13049         (process_structure_scope): Update.
13050
13051 2018-03-11  Tom Tromey  <tom@tromey.com>
13052
13053         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
13054         for use by std::sort.
13055         (build_type_psymtabs_1): Use std::vector.
13056
13057 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
13058
13059         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
13060         and LIBMPFR in the printed configuration.
13061
13062 2018-03-08  Tom Tromey  <tom@tromey.com>
13063
13064         * source.c (get_filename_and_charpos): Use scoped_fd.
13065         * nto-procfs.c (procfs_open_1): Use scoped_fd.
13066         (procfs_pidlist): Likewise.
13067         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
13068         (iterate_over_mappings): Likewise.
13069
13070 2018-03-08  Tom Tromey  <tom@tromey.com>
13071
13072         * infcall.c (struct call_return_meta_info)
13073         <stack_temporaries_enabled>: Remove.
13074         (get_call_return_value, call_function_by_hand_dummy): Update.
13075         * thread.c (disable_thread_stack_temporaries): Remove.
13076         (enable_thread_stack_temporaries): Remove.
13077         (thread_stack_temporaries_enabled_p): Return bool.
13078         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
13079         (get_last_thread_stack_temporary): Update.
13080         * eval.c (evaluate_subexp): Update.
13081         * gdbthread.h (class enable_thread_stack_temporaries): Now a
13082         class, not a function.
13083         (value_ptr, value_vec): Remove typedefs.
13084         (class thread_info) <stack_temporaries_enabled>: Now bool.
13085         <stack_temporaries>: Now a std::vector.
13086         (thread_stack_temporaries_enabled_p)
13087         (value_in_thread_stack_temporaries): Return bool.
13088
13089 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
13090
13091         * remote.c (putpkt_binary): Fix omitted bytes reporting.
13092         (getpkt_or_notif_sane_1): Likewise.
13093
13094 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13095
13096         * build-id.c (build_id_to_debug_bfd): Use std::string.
13097
13098 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13099
13100         * build-id.c (find_separate_debug_file_by_buildid): Return
13101         std::string.
13102         * build-id.h (find_separate_debug_file_by_buildid): Return
13103         std::string.
13104         * coffread.c (coff_symfile_read): Adjust to std::string.
13105         * elfread.c (elf_symfile_read): Adjust to std::string.
13106         * symfile.c (separate_debug_file_exists): Change parameter to
13107         std::string.
13108         (find_separate_debug_file): Return std::string.
13109         (find_separate_debug_file_by_debuglink): Return std::string.
13110         * symfile.h (find_separate_debug_file_by_debuglink): Return
13111         std::string.
13112
13113 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13114
13115         * common/xml-utils.c (xml_escape_text): Move code to...
13116         (xml_escape_text_append): ... this new function.
13117         * common/xml-utils.h (xml_escape_text_append): New declaration.
13118         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
13119         New function.
13120         (_initialize_xml_utils): register test_xml_escape_text_append as
13121         a selftest.
13122
13123 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
13124
13125         * defs.h: Remove MAX_REGISTER_SIZE.
13126         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
13127         asserts.
13128         * python/py-unwind.c (pyuw_sniffer): Likewise.
13129
13130 2018-03-07  Tom Tromey  <tom@tromey.com>
13131
13132         * linux-tdep.c (linux_info_proc): Update.
13133         * target.h (struct target_ops) <to_fileio_readlink>: Return
13134         optional<string>.
13135         (target_fileio_readlink): Return optional<string>.
13136         * remote.c (remote_hostio_readlink): Return optional<string>.
13137         * inf-child.c (inf_child_fileio_readlink): Return
13138         optional<string>.
13139         * target.c (target_fileio_readlink): Return optional<string>.
13140
13141 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
13142
13143         * regcache.c (cooked_read_test): Add riscv to the list of
13144         architectures that have a save_reggroup.
13145
13146 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
13147
13148         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
13149         value is not a dynamic class object.
13150
13151 2018-03-06  Tom Tromey  <tom@tromey.com>
13152
13153         * rust-exp.y: Formatting fixes.
13154
13155 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13156
13157         * riscv-tdep.c (riscv_register_name): Remove target description
13158         support.
13159         (riscv_gdbarch_init): Remove target description check.
13160
13161 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13162
13163         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
13164         comment.
13165         * riscv-tdep.h: Likewise.
13166
13167 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13168
13169         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
13170         (riscv_pseudo_register_write): Delete.
13171         (riscv_gdbarch_init): Remove all use of pseudo registers.
13172
13173 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
13174
13175         * record-btrace.c (btrace_print_lines): Replace cleanup
13176         parameter with RAII equivalents.
13177         (btrace_insn_history): Replace cleanup with RAII equivalents.
13178         * ui-out.h (make_cleanup_ui_out_list_begin_end,
13179         make_cleanup_ui_out_tuple_begin_end): Remove.
13180         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
13181         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
13182         make_cleanup_ui_out_list_begin_end): Remove.
13183
13184 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
13185
13186         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
13187         parameter types to std::vector.  Use bool.
13188         (record_btrace_wait): Replace VEC(tp_t) with
13189         std::vector<thread_info *>.
13190         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
13191
13192 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
13193
13194         * record-btrace.c (record_btrace_disable_callback): Remove.
13195         (struct scoped_btrace_disable): New.
13196         (record_btrace_open): Use scoped_btrace_disable.
13197
13198 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13199
13200         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
13201         reading values from registers.
13202
13203 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13204
13205         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
13206         where appropriate.
13207
13208 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13209
13210         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
13211         change parameter type.  Use GDB's print functions, and use
13212         core_addr_to_string where appropriate.
13213         (riscv_push_dummy_call): Use core_addr_to_string where
13214         appropriate, update call to riscv_print_arg_location, and reindent
13215         a few lines.
13216         (riscv_return_value): Update call to riscv_print_arg_location.
13217
13218 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13219             Tim Newsome <tim@sifive.com>
13220             Albert Ou <a0u@eecs.berkeley.edu>
13221             Darius Rad <darius@bluespec.com>
13222
13223         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
13224         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
13225         (ALLDEPFILES): Add riscv-tdep.c
13226         * configure.tgt: Add riscv support.
13227         * riscv-tdep.c: New file.
13228         * riscv-tdep.h: New file.
13229         * NEWS: Mention new target.
13230         * MAINTAINERS: Add entry for riscv.
13231
13232 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13233
13234         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
13235         fields within aggregates.
13236
13237 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
13238
13239         * record-btrace.c (btrace_print_lines): Change type of flags to
13240         gdb_disassembly_flags.
13241
13242 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13243
13244         * fbsd-nat.c: Include "inf-ptrace.h".
13245         (USE_SIGTRAP_SIGINFO): Conditionally define.
13246         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
13247         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
13248         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
13249         function.
13250         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
13251         Likewise.
13252         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
13253         Likewise.
13254         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
13255         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
13256         "supports_stopped_by_hw_breakpoint" target methods.
13257
13258 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13259
13260         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
13261         * fbsd-nat.c (debug_fbsd_nat): New variable.
13262         (show_fbsd_nat_debug): New function.
13263         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
13264         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
13265
13266 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13267
13268         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
13269         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
13270         prototype.
13271         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
13272         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
13273         method.
13274
13275 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13276
13277         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
13278         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
13279
13280 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13281
13282         * charset.c (struct charset_vector): New.
13283         (charsets): Change type to charset_vector.
13284         (find_charset_names): Adjust.
13285         (add_one): Adjust.
13286         (_initialize_charset): Adjust.
13287
13288 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13289
13290         * progspace.h (struct program_space) <deleted_solibs>: Change
13291         type to std::vector<std::string>.
13292         * progspace.c (clear_program_space_solib_cache): Adjust.
13293         * breakpoint.c (print_solib_event): Adjust.
13294         (check_status_catch_solib): Adjust.
13295         * solib.c (update_solib_list): Adjust.
13296         * ui-out.h (class ui_out) <field_string>: New overload.
13297         * ui-out.c (ui_out::field_string): New overload.
13298
13299 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13300
13301         * progspace.h (struct program_space): Add constructor and
13302         destructor, initialize fields.
13303         (add_program_space): Remove.
13304         * progspace.c (add_program_space): Rename to...
13305         (program_space::program_space): ... this.
13306         (release_program_space): Rename to...
13307         (program_space::~program_space): ... this.
13308         (delete_program_space): Use delete to delete program_space.
13309         (initialize_progspace): Use new to allocate program_space.
13310         * inferior.c (add_inferior_with_spaces): Likewise.
13311         (clone_inferior_command): Likewise.
13312         * infrun.c (follow_fork_inferior): Likewise.
13313         (handle_vfork_child_exec_or_exit): Likewise.
13314
13315 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13316
13317         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
13318         (delim_string_to_char_ptr_vec): Return std::vector of
13319         gdb::unique_xmalloc_ptr.
13320         (dirnames_to_char_ptr_vec_append): Take std::vector of
13321         gdb::unique_xmalloc_ptr.
13322         (dirnames_to_char_ptr_vec): Return std::vector of
13323         gdb::unique_xmalloc_ptr.
13324         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
13325         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
13326         (delim_string_to_char_ptr_vec): Return an std::vector of
13327         gdb::unique_xmalloc_ptr, adjust the code.
13328         (dirnames_to_char_ptr_vec_append): Take an std::vector of
13329         gdb::unique_xmalloc_ptr, adjust the code.
13330         (dirnames_to_char_ptr_vec): Return an std::vector of
13331         gdb::unique_xmalloc_ptr, adjust the code.
13332         * auto-load.c (auto_load_safe_path_vec): Change type to
13333         std::vector of gdb::unique_xmalloc_ptr.
13334         (auto_load_expand_dir_vars): Return an std::vector of
13335         gdb::unique_xmalloc_ptr, adjust the code.
13336         (auto_load_safe_path_vec_update): Adjust.
13337         (filename_is_in_auto_load_safe_path_vec): Adjust.
13338         (auto_load_objfile_script_1): Adjust.
13339         * build-id.c (build_id_to_debug_bfd): Adjust.
13340         * linux-thread-db.c (thread_db_load_search): Adjust.
13341         * source.c (add_path): Adjust.
13342         (openp): Adjust.
13343         * symfile.c (find_separate_debug_file): Adjust.
13344         * utils.c (do_free_char_ptr_vec): Remove.
13345         (make_cleanup_free_char_ptr_vec): Remove.
13346
13347 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
13348
13349         PR gdb/22907
13350         * common/pathstuff.c: Conditionally include "<windows.h>".
13351
13352 2018-03-01  Georg Sauthoff  <mail@georg.so>
13353
13354         PR gdb/22888
13355         * gcore.in: Quote variables and switch interpreter to bash.
13356
13357 2018-03-01  Tom Tromey  <tom@tromey.com>
13358
13359         * dwarf2read.c (alloc_discriminant_info): Fix default_index
13360         assertion.  Add assertion for discriminant_index.
13361         (quirk_rust_enum): Use correct base type name in univariant case.
13362
13363 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
13364
13365         * record.c (get_call_history_modifiers): Return a
13366         record_print_flags.
13367         (cmd_record_call_history): Adjust.
13368         * record-btrace.c (record_btrace_call_history): Adjust.
13369         (record_btrace_call_history_range): Adjust.
13370         (record_btrace_call_history_from): Adjust.
13371         * target-debug.h (target_debug_print_record_print_flags): New.
13372         * target-delegates.c: Re-generate.
13373         * target.c (target_call_history): Change flags type.
13374         (target_call_history_from): Likewise.
13375         (target_call_history_range): Likewise.
13376         * target.h (struct target_ops) <target_call_history>: Likewise.
13377         (target_call_history_from): Likewise.
13378         (target_call_history_range): Likewise.
13379
13380 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
13381             Simon Marchi  <simon.marchi@polymtl.ca>
13382
13383         * common/common-utils.c: Include "sys/stat.h".
13384         (is_regular_file): Move here from "source.c"; change return
13385         type to "bool".
13386         * common/common-utils.h (is_regular_file): New prototype.
13387         * common/pathstuff.c (contains_dir_separator): New function.
13388         * common/pathstuff.h (contains_dir_separator): New prototype.
13389         * source.c: Don't include "sys/stat.h".
13390         (is_regular_file): Move to "common/common-utils.c".
13391
13392 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
13393
13394         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
13395         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
13396         * auto-load.c: Include "common/pathstuff.h".
13397         * common/common-def.h (current_directory): Move here.
13398         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
13399         function.
13400         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
13401         prototype.
13402         * common/pathstuff.c: New file.
13403         * common/pathstuff.h: New file.
13404         * compile/compile.c: Include "common/pathstuff.h".
13405         * defs.h (current_directory): Move to "common/common-defs.h".
13406         * dwarf2read.c: Include "common/pathstuff.h".
13407         * exec.c: Likewise.
13408         * guile/scm-safe-call.c: Likewise.
13409         * linux-thread-db.c: Likewise.
13410         * main.c: Likewise.
13411         * nto-tdep.c: Likewise.
13412         * objfiles.c: Likewise.
13413         * source.c: Likewise.
13414         * symtab.c: Likewise.
13415         * utils.c: Include "common/pathstuff.h".
13416         (gdb_realpath): Move to "common/pathstuff.c".
13417         (gdb_realpath_keepfile): Likewise.
13418         (gdb_abspath): Likewise.
13419         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
13420         (gdb_realpath_keepfile): Likewise.
13421         (gdb_abspath): Likewise.
13422
13423 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
13424
13425         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
13426         wildcard process pid for super_resume for kernels with a
13427         specific bug.
13428
13429 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
13430
13431         * compile/compile.c (get_args): Add additional comments
13432         explaining function.
13433
13434 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
13435             Tom Tromey  <tom@tromey.com>
13436
13437         * target.h (memory_write_request_s): Remove typedef.  Don't define
13438         VEC.
13439         (target_write_memory_blocks): Change argument to std::vector.
13440         (struct memory_write_request): Add constructor.
13441         * target-memory.c (compare_block_starting_address): Return bool.
13442         Change argument types.
13443         (claim_memory): Change arguments to use std::vector.
13444         (split_regular_and_flash_blocks, blocks_to_erase)
13445         (compute_garbled_blocks): Likewise.
13446         (cleanup_request_data, cleanup_write_requests_vector): Remove.
13447         (target_write_memory_blocks): Change argument to std::vector.
13448         * symfile.c (struct load_section_data): Add constructor and
13449         destructor.  Use std::vector for "requests".
13450         (struct load_progress_data): Add initializers.
13451         (load_section_callback): Update.  Use "new".
13452         (clear_memory_write_data): Remove.
13453         (generic_load): Update.
13454
13455 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
13456
13457         * arch/aarch64.h: Use common/tdesc.h.
13458
13459 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
13460
13461         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
13462         architecture with a 64-bit ABI.
13463
13464 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
13465
13466         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
13467         ahead of target description loading.
13468
13469 2018-02-26  Tom Tromey  <tom@tromey.com>
13470
13471         * stack.c (backtrace_command_1): Update.
13472         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
13473         of "flags".
13474         * python/py-framefilter.c (py_print_frame)
13475         (gdbpy_apply_frame_filter): Change type of "flags".
13476         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
13477         of "flags".
13478         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
13479         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
13480         * extension.h (enum frame_filter_flag): Rename from
13481         frame_filter_flags.
13482         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
13483         (apply_ext_lang_frame_filter): Change type of "flags".
13484         * extension.c (apply_ext_lang_frame_filter): Change type of
13485         "flags".
13486         * extension-priv.h (struct extension_language_ops)
13487         <apply_frame_filter>: Change type of "flags".
13488
13489 2018-02-26  Tom Tromey  <tom@tromey.com>
13490
13491         PR python/16497:
13492         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
13493         off-by-one in py_end computation.
13494         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
13495         PRINT_MORE_FRAMES.
13496         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
13497         constant.
13498
13499 2018-02-26  Tom Tromey  <tom@tromey.com>
13500
13501         * dwarf2read.c (struct variant_field): New.
13502         (struct nextfield) <variant>: New field.
13503         (dwarf2_add_field): Handle DW_TAG_variant_part.
13504         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
13505         discriminated union.
13506         (read_structure_type): Handle DW_TAG_variant_part.
13507         (handle_struct_member_die): New function, extracted from
13508         process_structure_scope.  Handle DW_TAG_variant.
13509         (process_structure_scope): Handle discriminated unions.  Call
13510         handle_struct_member_die.
13511
13512 2018-02-26  Tom Tromey  <tom@tromey.com>
13513
13514         * rust-lang.h (rust_last_path_segment): Declare.
13515         * rust-lang.c (rust_last_path_segment): Now public.  Change
13516         contract.
13517         (struct disr_info): Remove.
13518         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
13519         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
13520         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
13521         (rust_enum_p, rust_enum_variant): New function.
13522         (rust_underscore_fields): Remove "offset" parameter.
13523         (rust_print_enum): New function.
13524         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
13525         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
13526         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
13527         enums.
13528         (rust_internal_print_type): New function, from rust_print_type.
13529         Remove enum code.
13530         (rust_print_type): Call rust_internal_print_type.
13531         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
13532         Update enum handling.
13533         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
13534         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
13535         (rust_union_quirks): New functions.
13536         (process_full_comp_unit, process_full_type_unit): Call
13537         rust_union_quirks.
13538         (process_structure_scope): Update rust_unions if necessary.
13539
13540 2018-02-26  Tom Tromey  <tom@tromey.com>
13541
13542         * value.h (value_union_variant): Declare.
13543         * valops.c (value_union_variant): New function.
13544         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
13545         (struct discriminant_info): New.
13546         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
13547         enumerator.
13548         (struct main_type) <flag_discriminated_union>: New field.
13549
13550 2018-02-26  Tom Tromey  <tom@tromey.com>
13551
13552         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13553         unittests/unpack-selftests.c.
13554         * unittests/unpack-selftests.c: New file.
13555         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
13556
13557 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13558
13559         * dwarf2read.c (struct partial_die_info) <read>: New method.
13560         (read_partial_die): Remove the declaration.
13561         (load_partial_dies): Update.
13562         (partial_die_info::partial_die_info):
13563         (read_partial_die): Change it to partial_die_info::read.
13564
13565 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13566
13567         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
13568         (fixup_partial_die): Remove declaration.
13569         (scan_partial_symbols): Update.
13570         (partial_die_parent_scope): Likewise.
13571         (partial_die_full_name): Likewise.
13572         (fixup_partial_die): Change it to partial_die_info::fixup.
13573
13574 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13575
13576         * dwarf2read.c (read_partial_die): Update the declaration.
13577         (load_partial_dies): Caller update.
13578         (read_partial_die): Remove one argument abbrev_len.
13579
13580 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13581
13582         * dwarf2read.c (struct partial_die_info): Add ctor, delete
13583         assignment operator.
13584         (load_partial_dies): Use ctor and copy ctor.
13585         (read_partial_die): Update.
13586         (dwarf2_cu::find_partial_die): Use ctor.
13587
13588 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13589
13590         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
13591         (find_partial_die_in_comp_unit): Change it to
13592         dwarf2_cu::find_partial_die.
13593         (find_partial_die): Update.
13594
13595 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13596
13597         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
13598         is NULL.
13599
13600 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13601
13602         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
13603
13604 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
13605
13606         * arch/amd64.h: Use common/tdesc.h.
13607         * arch/i386.c: Likewise.
13608         * arch/i386.h: Likewise.
13609         * arch/tic6x.c: Likewise.
13610         * arch/tdesc.h: Move file from here...
13611         * common/tdesc.h: ...to here.
13612         * features/aarch64-core.c: Regenerate.
13613         * features/aarch64-fpu.c: Regenerate.
13614         * features/i386/32bit-avx.c: Regenerate.
13615         * features/i386/32bit-avx512.c: Regenerate.
13616         * features/i386/32bit-core.c: Regenerate.
13617         * features/i386/32bit-linux.c: Regenerate.
13618         * features/i386/32bit-mpx.c: Regenerate.
13619         * features/i386/32bit-pkeys.c: Regenerate.
13620         * features/i386/32bit-sse.c: Regenerate.
13621         * features/i386/64bit-avx.c: Regenerate.
13622         * features/i386/64bit-avx512.c: Regenerate.
13623         * features/i386/64bit-core.c: Regenerate.
13624         * features/i386/64bit-linux.c: Regenerate.
13625         * features/i386/64bit-mpx.c: Regenerate.
13626         * features/i386/64bit-pkeys.c: Regenerate.
13627         * features/i386/64bit-segments.c: Regenerate.
13628         * features/i386/64bit-sse.c: Regenerate.
13629         * features/i386/x32-core.c: Regenerate.
13630         * features/tic6x-c6xp.c: Regenerate.
13631         * features/tic6x-core.c: Regenerate.
13632         * features/tic6x-gp.c: Regenerate.
13633         * target-descriptions.c: Use common/tdesc.h.
13634         * target-descriptions.h: Likewise.
13635
13636 2018-02-24  Tom Tromey  <tom@tromey.com>
13637
13638         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
13639         (try_thread_db_load_from_dir, thread_db_load_search): Use
13640         std::string.
13641         (info_auto_load_libthread_db_compare): Return bool.  Change
13642         argument types.
13643         (info_auto_load_libthread_db): Use std::vector, std::string.
13644         Remove cleanups.
13645
13646 2018-02-24  Tom Tromey  <tom@tromey.com>
13647
13648         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
13649         std::string.
13650         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
13651         std::string*.
13652         * gdbarch.c: Rebuild.
13653         * gdbarch.h: Rebuild.
13654         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
13655         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
13656         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
13657         std::string*.
13658
13659 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
13660
13661         * gdbtypes.h (sect_offset): Change type to uint64_t.
13662         (sect_offset_str): New function.
13663         * dwarf2read.c (create_addrmap_from_aranges): Use
13664         sect_offset_str.
13665         (error_check_comp_unit_head): Likewise.
13666         (create_debug_type_hash_table): Likewise.
13667         (read_cutu_die_from_dwo): Likewise.
13668         (init_cutu_and_read_dies): Likewise.
13669         (init_cutu_and_read_dies_no_follow): Likewise.
13670         (process_psymtab_comp_unit_reader): Likewise.
13671         (partial_die_parent_scope): Likewise.
13672         (peek_die_abbrev): Likewise.
13673         (process_queue): Likewise.
13674         (dwarf2_physname): Likewise.
13675         (read_namespace_alias): Likewise.
13676         (read_import_statement): Likewise.
13677         (create_dwo_cu_reader): Likewise.
13678         (create_cus_hash_table): Likewise.
13679         (lookup_dwo_cutu): Likewise.
13680         (inherit_abstract_dies): Likewise.
13681         (read_func_scope): Likewise.
13682         (read_call_site_scope): Likewise.
13683         (dwarf2_add_member_fn): Likewise.
13684         (read_common_block): Likewise.
13685         (read_module_type): Likewise.
13686         (read_typedef): Likewise.
13687         (read_subrange_type): Likewise.
13688         (load_partial_dies): Likewise.
13689         (read_partial_die): Likewise.
13690         (find_partial_die): Likewise.
13691         (read_str_index): Likewise.
13692         (dwarf2_string_attr): Likewise.
13693         (build_error_marker_type): Likewise.
13694         (lookup_die_type): Likewise.
13695         (dump_die_shallow): Likewise.
13696         (follow_die_ref): Likewise.
13697         (dwarf2_fetch_die_loc_sect_off): Likewise.
13698         (dwarf2_fetch_constant_bytes): Likewise.
13699         (follow_die_sig): Likewise.
13700         (get_signatured_type): Likewise.
13701         (get_DW_AT_signature_type): Likewise.
13702         (dwarf2_find_containing_comp_unit): Likewise.
13703         (set_die_type): Likewise.
13704
13705 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
13706
13707         * arch/aarch64.c: Include "common-defs.h".
13708         * arch/amd64.c: Likewise.
13709         * arch/i386.c: Likewise.
13710
13711 2018-02-21  Tom Tromey  <tom@tromey.com>
13712
13713         * value.h: (extract_field_op): Update.
13714         * eval.c (extract_field_op): Return a const char *.
13715         * expression.h (parse_expression_for_completion): Update.
13716         * completer.c (complete_expression): Update.
13717         (add_struct_fields): Make fieldname const.
13718         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
13719         (mark_completion_tag, parse_exp_in_context_1): Update.
13720         (parse_expression_for_completion): Change "name" to
13721         unique_xmalloc_ptr*.
13722
13723 2018-02-21  Tom Tromey  <tom@tromey.com>
13724
13725         * infcall.c (call_function_by_hand_dummy): Use std::vector.
13726
13727 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13728
13729         * avr-tdep.c (avr_read_pc): Change parameter type to
13730         readable_regcache.
13731         * gdbarch.sh (read_pc): Likewise.
13732         * gdbarch.c: Re-generated.
13733         * gdbarch.h: Re-generated.
13734         * hppa-tdep.c (hppa_read_pc): Change parameter type to
13735         readable_regcache.
13736         * ia64-tdep.c (ia64_read_pc): Likewise.
13737         * mips-tdep.c (mips_read_pc): Likewise.
13738         * spu-tdep.c (spu_read_pc): Likewise.
13739
13740 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13741
13742         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
13743         * regcache-dump.c: New file.
13744         * regcache.c: Move register_dump to regcache-dump.c.
13745         (maintenance_print_registers): Likewise.
13746         (maintenance_print_raw_registers): Likewise.
13747         (maintenance_print_cooked_registers): Likewise.
13748         (maintenance_print_register_groups): Likewise.
13749         (maintenance_print_remote_registers): Likewise.
13750         (_initialize_regcache): Likewise.
13751         * regcache.h (register_dump): Moved from regcache.c.
13752
13753 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13754
13755         * regcache.c (regcache::regcache): Update.
13756         (regcache::invalidate): Move it to detached_regcache::invalidate.
13757         (get_thread_arch_aspace_regcache): Update.
13758         (regcache::raw_update): Update.
13759         (regcache::cooked_read): Remove some code.
13760         (regcache::cooked_read_value): Likewise.
13761         (regcache::raw_write): Remove assert on m_readonly_p.
13762         (regcache::raw_supply_integer): Move it to
13763         detached_regcache::raw_supply_integer.
13764         (regcache::raw_supply_zeroed): Likewise.
13765         * regcache.h (detached_regcache) <raw_supply_integer>: New
13766         declaration.
13767         <raw_supply_zeroed, invalidate>: Likewise.
13768         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
13769         <invalidate>: Likewise.
13770         <m_readonly_p>: Removed.
13771
13772 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13773
13774         * infcmd.c (get_return_value): Let stop_regs point to
13775         get_current_regcache.
13776         * regcache.c (regcache::regcache): Remove.
13777         (register_dump_reg_buffer): New class.
13778         (regcache_print): Adjust.
13779         * regcache.h (regcache): Remove constructors.
13780
13781 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13782
13783         * regcache.c (class register_dump): New class.
13784         (register_dump_regcache, register_dump_none): New class.
13785         (register_dump_remote, register_dump_groups): New class.
13786         (regcache_print): Update.
13787         * regcache.h (regcache_dump_what): Move it to regcache.c.
13788         (regcache) <dump>: Remove.
13789
13790 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13791
13792         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
13793          reg_buffer_rw *.
13794         (jit_unwind_reg_set_impl): Call raw_supply.
13795         (jit_frame_sniffer): Use reg_buffer_rw.
13796         * record-full.c (record_full_core_regbuf): Change its type.
13797         (record_full_core_open_1): Use reg_buffer_rw.
13798         (record_full_close): Likewise.
13799         (record_full_core_fetch_registers): Use regcache->raw_supply.
13800         (record_full_core_store_registers): Likewise.
13801         * regcache.c (regcache::get_register_status): Move it to
13802         reg_buffer.
13803         (regcache_raw_set_cached_value): Remove.
13804         (regcache::raw_set_cached_value): Remove.
13805         (regcache::raw_write): Call raw_supply.
13806         (regcache::raw_supply): Move it to reg_buffer_rw.
13807         * regcache.h (regcache_raw_set_cached_value): Remove.
13808         (reg_buffer_rw): New class.
13809
13810 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13811
13812         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
13813         readonly_detached_regcache.
13814         (dummy_frame_prev_register): Use regcache->cooked_read.
13815         * frame.c (frame_save_as_regcache): Change return type.
13816         (frame_pop): Update.
13817         * frame.h (frame_save_as_regcache): Update declaration.
13818         * inferior.h (get_infcall_suspend_state_regcache): Update
13819         declaration.
13820         * infrun.c (infcall_suspend_state) <registers>: use
13821         readonly_detached_regcache.
13822         (save_infcall_suspend_state): Don't use regcache_dup.
13823         (get_infcall_suspend_state_regcache): Change return type.
13824         * linux-fork.c (struct fork_info) <savedregs>: Change to
13825         readonly_detached_regcache.
13826         <pc>: New field.
13827         (fork_save_infrun_state): Don't use regcache_dup.
13828         (info_checkpoints_command): Adjust.
13829         * mi/mi-main.c (register_changed_p): Update declaration.
13830         (mi_cmd_data_list_changed_registers): Use
13831         readonly_detached_regcache.
13832         (register_changed_p): Change parameter type to
13833         readonly_detached_regcache.
13834         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
13835         readonly_detached_regcache.
13836         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
13837         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
13838         New.
13839         (regcache::save): Move it to reg_buffer.
13840         (regcache::restore): Change parameter type.
13841         (regcache_dup): Remove.
13842         * regcache.h (reg_buffer) <save>: New method.
13843         (readonly_detached_regcache): New class.
13844         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
13845         readonly_detached_regcache.
13846         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
13847
13848 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13849
13850         * frame.c (frame_save_as_regcache): Use regcache method save.
13851         (frame_pop): Use regcache method restore.
13852         * infrun.c (restore_infcall_suspend_state): Likewise.
13853         * linux-fork.c (fork_load_infrun_state): Likewise.
13854         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
13855         save.
13856         * regcache.c (regcache_save): Remove.
13857         (regcache::restore): More asserts.
13858         (regcache_cpy): Remove.
13859         * regcache.h (regcache_save): Remove the declaration.
13860         (regcache::restore): Move from private to public.
13861         Remove the friend declaration of regcache_cpy.
13862         (regcache_cpy): Remove declaration.
13863
13864 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13865
13866         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
13867         parameter type to 'readable_regcache *'.
13868         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
13869         * arm-tdep.c (arm_neon_quad_read): Likewise.
13870         (arm_pseudo_read): Likewise.
13871         * avr-tdep.c (avr_pseudo_register_read): Likewise.
13872         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
13873         * frv-tdep.c (frv_pseudo_register_read): Likewise.
13874         * gdbarch.c: Re-generated.
13875         * gdbarch.h: Re-generated.
13876         * gdbarch.sh (pseudo_register_read): Change parameter type to
13877         'readable_regcache *'.
13878         (pseudo_register_read_value): Likewise.
13879         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
13880         (h8300_pseudo_register_read): Likewise.
13881         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
13882         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
13883         (i386_pseudo_register_read_into_value): Likewise.
13884         (i386_pseudo_register_read_value): Likewise.
13885         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
13886         declaration.
13887         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
13888         * m32c-tdep.c (m32c_raw_read): Likewise.
13889         (m32c_read_flg): Likewise.
13890         (m32c_banked_register): Likewise.
13891         (m32c_banked_read): Likewise.
13892         (m32c_sb_read): Likewise.
13893         (m32c_part_read): Likewise.
13894         (m32c_cat_read): Likewise.
13895         (m32c_r3r2r1r0_read): Likewise.
13896         (m32c_pseudo_register_read): Likewise.
13897         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
13898         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
13899         (mep_pseudo_cr64_read): Likewise.
13900         (mep_pseudo_register_read): Likewise.
13901         * mips-tdep.c (mips_pseudo_register_read): Likewise.
13902         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
13903         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
13904         * regcache.c (regcache::raw_read): Move it to readable_regcache.
13905         (regcache::cooked_read): Likewise.
13906         (regcache::cooked_read_value): Likewise.
13907         (regcache_cooked_read_signed):
13908         (regcache::cooked_read): Likewise.
13909         * regcache.h (readable_regcache): New class.
13910         (regcache): Inherit readable_regcache.  Move some methods to
13911         readable_regcache.
13912         * rl78-tdep.c (rl78_pseudo_register_read): Change
13913         parameter type to 'readable_regcache *'.
13914         * rs6000-tdep.c (do_regcache_raw_read): Remove.
13915         (e500_pseudo_register_read): Change parameter type to
13916         'readable_regcache *'.
13917         (dfp_pseudo_register_read): Likewise.
13918         (vsx_pseudo_register_read): Likewise.
13919         (efpr_pseudo_register_read): Likewise.
13920         * s390-tdep.c (s390_pseudo_register_read): Likewise.
13921         * sh-tdep.c (sh_pseudo_register_read): Likewise.
13922         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
13923         (sh64_pseudo_register_read): Likewise.
13924         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
13925         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
13926         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
13927         (spu_pseudo_register_read): Likewise.
13928         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
13929         (xtensa_pseudo_register_read): Likewise.
13930
13931 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13932
13933         * regcache.c (regcache::regcache): Call reg_buffer ctor.
13934         (regcache::arch): Move it to reg_buffer::arch.
13935         (regcache::register_buffer): Likewise.
13936         (regcache::assert_regnum): Likewise.
13937         (regcache::num_raw_registers): Likewise.
13938         * regcache.h (reg_buffer): New class.
13939         (regcache): Inherit reg_buffer.
13940
13941 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
13942
13943         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
13944         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
13945
13946 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
13947
13948         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
13949
13950 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
13951
13952         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
13953         (SFILES): Remove common/*.c files.
13954         (COMMON_OBS): Remove some *.o files built from common/*.c files.
13955         * common/common.host: Add common reference.
13956         * configure.ac: Likewise.
13957         * configure: Regenerate.
13958
13959 2018-02-16  Yao Qi  <yao.qi@linaro.org>
13960
13961         * block.c (block_namespace_info): Inherit allocate_on_obstack.
13962         (block_initialize_namespace): Use new.
13963         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
13964         (dwarf2_free_objfile): Use delete.
13965         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
13966         (copy_type_recursive): Use new.
13967         * gdb_obstack.h (allocate_on_obstack): New.
13968
13969 2018-02-15  Yao Qi  <yao.qi@linaro.org>
13970
13971         PR gdb/22849
13972         * inferior.c (exit_inferior_1): Reset inf->control.
13973
13974 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
13975
13976         * ada-lang.c (ada_to_fixed_value_create): Delete advance
13977         declaration.
13978
13979 2018-02-14  Pedro Alves  <palves@redhat.com>
13980
13981         * frame-unwind.c (frame_unwind_try_unwinder): Always call
13982         frame_cleanup_after_sniffer on exception.
13983
13984 2018-02-14  Tom Tromey  <tom@tromey.com>
13985
13986         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
13987         const.
13988         (solib_bfd_open): Make pathname const.
13989         * solib.c (solib_bfd_open): Make pathname const.
13990         * solib-spu.c (spu_bfd_fopen): Make name const.
13991         (spu_bfd_open): Make pathname const.
13992         * solib-darwin.c (darwin_bfd_open): Make pathname const.
13993         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
13994
13995 2018-02-14  Tom Tromey  <tom@tromey.com>
13996
13997         * symfile.c (symfile_bfd_open): Update.
13998         * source.h (openp, source_full_path_of, find_and_open_source):
13999         Change argument type to unique_xmalloc_ptr.
14000         * source.c (openp): Take a unique_xmalloc_ptr.
14001         (source_full_path_of, find_and_open_source): Likewise.
14002         (open_source_file, symtab_to_fullname): Update.
14003         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
14004         unique_xmalloc_ptr.
14005         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
14006         (exec_file_find): Update.
14007         * psymtab.c (psymtab_to_fullname): Update.
14008         * nto-tdep.h (nto_find_and_open_solib): Update.
14009         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
14010         unique_xmalloc_ptr.
14011         * exec.c (exec_file_attach): Update.
14012         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
14013         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
14014
14015 2018-02-14  Tom Tromey  <tom@tromey.com>
14016
14017         * solib.c: Include source.h.
14018         * nto-tdep.c: Include source.h.
14019         * mi/mi-cmd-env.c: Include source.h.
14020         * infcmd.c: Include source.h.
14021         * exec.c: Include source.h.
14022         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
14023         (add_path, directory_switch, source_path, init_source_path): Move
14024         declarations...
14025         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
14026         (add_path, directory_switch, source_path, init_source_path):
14027         ...here.
14028
14029 2018-02-14  Tom Tromey  <tom@tromey.com>
14030
14031         * solist.h (exec_file_find, solib_find): Return
14032         unique_xmalloc_ptr.
14033         (solib_bfd_fopen): Take a const char *.
14034         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
14035         (exec_file_find, solib_find): Likewise.
14036         (solib_bfd_fopen): Do not take ownership of "pathname".
14037         (solib_bfd_open): Use unique_xmalloc_ptr.
14038         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
14039         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
14040         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
14041         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
14042
14043 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
14044
14045         * ada-lang.c (name_match_type_from_name): Remove reference to
14046         ada_name_for_lookup in function's documentation.
14047         * ada-lang.h (ada_name_for_lookup): Delete declaration.
14048
14049 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
14050
14051         * defs.h (enum openp_flags): New enum.
14052         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
14053         Move to enum openp_flags.
14054         (openp_flags): New enum flags.
14055         (openp): Change parameter type to openp_flags.
14056         * source.c (openp): Change parameter type to openp_flags.
14057         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
14058         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
14059
14060 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
14061
14062         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
14063         per-command.
14064
14065 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
14066
14067         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
14068         into...
14069         (class dwarf2_queue_guard): ...the destructor of this new class.
14070         (dw2_do_instantiate_symtab): Create instance of the new class
14071         dwarf2_queue_guard, remove cleanup.
14072
14073 2018-02-09  Tom Tromey  <tom@tromey.com>
14074
14075         * source.c (find_source_lines): Don't reference past the end of
14076         the vector.
14077
14078 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14079
14080         * remote.c (remote_btrace_maybe_reopen): Change error message.
14081         * btrace.c (btrace_enable): Likewise.
14082         (parse_xml_btrace): Likewise.
14083         (parse_xml_btrace_conf): Likewise.
14084
14085 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14086
14087         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
14088         (linux_enable_pt, linux_enable_bts): Call
14089         diagnose_perf_event_open_fail.
14090
14091 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14092
14093         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
14094         Remove parameter and change return type.  Update callers.  Move it.
14095         (linux_enable_bts, linux_enable_pt): Improve error message.
14096         (linux_enable_pt): Remove zero buffer size check.
14097         (linux_enable_btrace): Improve error messages.  Remove NULL return
14098         check.
14099
14100 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14101
14102         * btrace.c (btrace_enable): Remove target_supports_btrace call.
14103         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
14104         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
14105         (linux_supports_pt, linux_supports_btrace): Remove.
14106         (linux_enable_bts): Call cpu_supports_bts.
14107         * nat/linux-btrace.h (linux_supports_btrace): Remove.
14108         * remote.c (remote_supports_btrace): Remove.
14109         (init_remote_ops): Remove remote_supports_btrace.
14110         * target-delegates.c: Regenerated.
14111         * target.c (target_supports_btrace): Remove.
14112         * target.h (target_ops) <to_supports_btrace>: Remove
14113         (target_supports_btrace): Remove.
14114         * x86-linux-nat.c (x86_linux_create_target): Remove
14115         linux_supports_btrace.
14116
14117 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14118
14119         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
14120         btrace failed.
14121         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
14122         exception and use message in own exception.
14123
14124 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14125
14126         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
14127         (perf_event_pt_event_type): Use gdb_file_up.
14128         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
14129         scoped_fd, and scoped_mmap.
14130
14131 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14132
14133         * common/scoped_mmap.h: New.
14134         * unittests/scoped_mmap-selftest.c: New.
14135         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14136         unittests/scoped_mmap-selftest.c.
14137
14138 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14139
14140         * common/scoped_fd.h: New.
14141         * unittests/scoped_fd-selftest.c: New.
14142         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14143         unittests/scoped_fd-selftest.c.
14144
14145 2018-02-09  Tom Tromey  <tom@tromey.com>
14146
14147         * auto-load.c (auto_load_section_scripts): Use
14148         gdb::unique_xmalloc_ptr.
14149
14150 2018-02-09  Tom Tromey  <tom@tromey.com>
14151
14152         * auto-load.c (execute_script_contents): Use std::string.
14153
14154 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
14155
14156         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
14157         Python function, rather than a new command.
14158
14159 2018-02-08  Tom Tromey  <tom@tromey.com>
14160
14161         * solib.c (solib_find_1): Use std::string.
14162         (solib_bfd_fopen): Use unique_xmalloc_ptr.
14163
14164 2018-02-08  Tom Tromey  <tom@tromey.com>
14165
14166         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
14167
14168 2018-02-08  Tom Tromey  <tom@tromey.com>
14169
14170         * source.c (find_source_lines): Use gdb::def_vector.
14171
14172 2018-02-08  Tom Tromey  <tom@tromey.com>
14173
14174         * macrocmd.c (struct temporary_macro_definition): New.
14175         (macro_define_command): Use temporary_macro_definition.  Remove
14176         cleanups.
14177         (free_macro_definition_ptr): Remove.
14178
14179 2018-02-08  Tom Tromey  <tom@tromey.com>
14180
14181         * macroexp.c (maybe_expand): Use std::string.
14182
14183 2018-02-08  Tom Tromey  <tom@tromey.com>
14184
14185         * macroexp.c (struct macro_buffer): Add initializers for some
14186         members.
14187         (init_buffer, init_shared_buffer, free_buffer)
14188         (free_buffer_return_text): Remove.
14189         (macro_buffer): New constructors.
14190         (~macro_buffer): New destructor.
14191         (macro_buffer::set_shared): New method.
14192         (macro_buffer::resize_buffer, macro_buffer::appendc)
14193         (macro_buffer::appendmem): Now methods, not free functions.
14194         (set_token, append_tokens_without_splicing, stringify)
14195         (macro_stringify): Update.
14196         (gather_arguments): Change return type.  Remove argc_p argument,
14197         add args_ptr argument.  Use std::vector.
14198         (substitute_args): Remove argc argument.  Accept std::vector.
14199         (expand): Update.  Use std::vector.
14200         (scan, macro_expand, macro_expand_next): Update.
14201
14202 2018-02-08  Tom Tromey  <tom@tromey.com>
14203
14204         * symtab.c (default_collect_symbol_completion_matches_break_on):
14205         Use unique_xmalloc_ptr.
14206         * macroscope.h: (sal_macro_scope, user_macro_scope)
14207         (default_macro_scope): Return unique_xmalloc_ptr.
14208         * macroscope.c (sal_macro_scope, user_macro_scope)
14209         (default_macro_scope): Return unique_xmalloc_ptr.
14210         * macroexp.h (macro_expand, macro_expand_once): Return
14211         unique_xmalloc_ptr.
14212         * macroexp.c (macro_expand, macro_expand_once): Return
14213         unique_xmalloc_ptr.
14214         * macrocmd.c (macro_expand_command, macro_expand_once_command)
14215         (info_macro_command, info_macros_command): Use
14216         unique_xmalloc_ptr.
14217         * compile/compile-c-support.c (write_macro_definitions): Use
14218         unique_xmalloc_ptr.
14219         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
14220
14221 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
14222
14223         * value.c (value_static_field): Assign field type instead of
14224         containing type when returning an optimized out value.
14225
14226 2018-02-06  Yao Qi  <yao.qi@linaro.org>
14227
14228         * ft32-tdep.c (ft32_read_pc): Remove.
14229         (ft32_write_pc): Remove.
14230         (ft32_gdbarch_init): Update.
14231         * m32r-tdep.c (m32r_read_pc): Remove.
14232         (m32r_gdbarch_init): Update.
14233         * mep-tdep.c (mep_read_pc): Remove.
14234         (mep_gdbarch_init): Update.
14235         * microblaze-tdep.c (microblaze_write_pc): Remove.
14236         (microblaze_gdbarch_init): Update.
14237         * mn10300-tdep.c (mn10300_read_pc): Remove.
14238         (mn10300_write_pc): Remove.
14239         (mn10300_gdbarch_init): Update.
14240         * moxie-tdep.c (moxie_read_pc): Remove.
14241         (moxie_write_pc): Remove.
14242         (moxie_gdbarch_init): Update.
14243
14244 2018-02-06  Yao Qi  <yao.qi@linaro.org>
14245
14246         * expprint.c (print_subexp_standard): Handle
14247         OP_F77_UNDETERMINED_ARGLIST.
14248         (dump_subexp_body_standard): Likewise.
14249
14250 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
14251
14252         * target-descriptions.c (tdesc_element_visitor) Add empty
14253         implementations.
14254         (tdesc_type): Move make_gdb_type from here.
14255         (tdesc_type_builtin): Likewise.
14256         (tdesc_type_vector): Likewise.
14257         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
14258         (make_gdb_type_struct): Move from tdesc_type_with_fields.
14259         (make_gdb_type_union): Likewise.
14260         (make_gdb_type_flags): Likewise.
14261         (make_gdb_type_enum): Likewise.
14262         (make_gdb_type): New function.
14263         (tdesc_register_type): Use static make_gdb_type.
14264
14265 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
14266
14267         * infcmd.c (default_print_one_register_info): Align natural-format
14268         column values consistently one under another.
14269         (pad_to_column): New function.
14270
14271 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
14272
14273         * dwarf2read.c (dwarf2_physname): Move commment.
14274
14275 2018-02-01  Leszek Swirski  <leszeks@google.com>
14276
14277         * varobj.c (varobj_formatted_print_options): Allow recursive
14278         pretty printing if pretty printing is enabled.
14279
14280 2018-02-01  Leszek Swirski  <leszeks@google.com>
14281
14282         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
14283         names after a structop as a filename.
14284
14285 2018-02-01  Yao Qi  <yao.qi@linaro.org>
14286
14287         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
14288         (arm_record_coproc_data_proc): Likewise.
14289
14290 2018-02-01  Yao Qi  <yao.qi@linaro.org>
14291
14292         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
14293
14294 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
14295
14296         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
14297         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
14298
14299 2018-01-31  Pedro Alves  <palves@redhat.com>
14300
14301         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
14302         * inflow.c (child_terminal_save_inferior): Wrap reference to
14303         tcgetpgrp in HAVE_TERMIOS_H.
14304         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
14305         _WIN32.
14306         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
14307         always iterate over all inferiors.
14308         (gdbsim_cntrl_c): Adjust.
14309         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
14310
14311 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
14312
14313         * gdbtypes.c (lookup_array_range_type): Make sure the array's
14314         index type is objfile-owned if the element type is as well.
14315
14316 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
14317
14318         GDB 8.1 released.
14319
14320 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14321
14322         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
14323         "features/s390x-linux64.c".
14324         (_initialize_s390_linux_tdep): Remove initialization of tdescs
14325         s390_linux32 and s390x_linux64.
14326         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
14327         default tdesc.
14328         * s390-tdep.c: Include "features/s390-linux32.c" and
14329         "features/s390x-linux64.c".
14330         (s390_tdesc_valid): Add check for tdesc_has_registers.
14331         (s390_gdbarch_init): Make sure there is always a valid tdesc.
14332         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
14333         tdesc_s390x_linux64.
14334         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
14335         tdesc_s390x_linux64 to...
14336         * s390-tdep.h: ...here.
14337
14338 2018-01-30  Pedro Alves  <palves@redhat.com>
14339
14340         PR gdb/13211
14341         * config.in, configure: Regenerate.
14342         * configure.ac: Check for getpgid.
14343         * go32-nat.c (go32_pass_ctrlc): New.
14344         (go32_target): Install it.
14345         * inf-child.c (inf_child_target): Install
14346         child_terminal_save_inferior, child_pass_ctrlc and
14347         child_interrupt.
14348         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
14349         (inf_ptrace_target): No longer install it.
14350         * infcmd.c (interrupt_target_1): Adjust.
14351         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
14352         (child_interrupt): Declare.
14353         (inferior::terminal_state): New.
14354         * inflow.c (struct terminal_info): Update comments.
14355         (inferior_process_group): Delete.
14356         (terminal_is_ours): Delete.
14357         (gdb_tty_state): New.
14358         (child_terminal_init): Adjust.
14359         (is_gdb_terminal, sharing_input_terminal_1)
14360         (sharing_input_terminal): New functions.
14361         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
14362         Set the process's actual process group in the foreground if
14363         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
14364         mark terminal as the inferior's if not sharing GDB's terminal.
14365         Don't check attach_flag.
14366         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
14367         pass down a target_terminal_state.
14368         (child_terminal_save_inferior): New, factored out from ...
14369         (child_terminal_ours_1): ... this.  Handle
14370         target_terminal_state::is_ours_for_output.
14371         (child_interrupt, child_pass_ctrlc): New.
14372         (inflow_inferior_exit): Clear the inferior's terminal_state.
14373         (copy_terminal_info): Copy the inferior's terminal state.
14374         (_initialize_inflow): Remove reference to terminal_is_ours.
14375         * inflow.h (inferior_process_group): Delete.
14376         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
14377         * procfs.c (procfs_target): Don't install procfs_interrupt.
14378         (procfs_interrupt): Delete.
14379         * remote.c (remote_serial_quit_handler): Adjust.
14380         (remote_interrupt): Remove ptid parameter.  Adjust.
14381         * target-delegates.c: Regenerate.
14382         * target.c: Include "terminal.h".
14383         (target_terminal::terminal_state): Rename to ...
14384         (target_terminal::m_terminal_state): ... this.
14385         (target_terminal::init): Adjust.
14386         (target_terminal::inferior): Adjust to per-inferior
14387         terminal_state.
14388         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
14389         (target_terminal::ours, target_terminal::ours_for_output): Use
14390         target_terminal_is_ours_kind.
14391         (target_interrupt): Remove ptid parameter.  Adjust.
14392         (default_target_pass_ctrlc): Adjust.
14393         * target.h (target_ops::to_terminal_save_inferior): New field.
14394         (target_ops::to_interrupt): Remove ptid_t parameter.
14395         (target_interrupt): Remove ptid_t parameter.  Update comment.
14396         (target_pass_ctrlc): Update comment.
14397         * target/target.h (target_terminal_state): New scoped enum,
14398         factored out of ...
14399         (target_terminal::terminal_state): ... here.
14400         (target_terminal::inferior): Update comments.
14401         (target_terminal::restore_inferior): New.
14402         (target_terminal::is_inferior, target_terminal::is_ours)
14403         (target_terminal::is_ours_for_output): Adjust.
14404         (target_terminal::scoped_restore_terminal_state): Adjust to
14405         rename, and call restore_inferior() instead of inferior().
14406         (target_terminal::scoped_restore_terminal_state::m_state): Change
14407         type.
14408         (target_terminal::terminal_state): Rename to ...
14409         (target_terminal::m_terminal_state): ... this and change type.
14410
14411 2018-01-30  Pedro Alves  <palves@redhat.com>
14412
14413         * linux-nat.c (wait_for_signal): New function.
14414         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
14415         directly.
14416         (async_terminal_is_ours)
14417         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
14418         (linux_nat_add_target): Don't override
14419         to_terminal_inferior/to_terminal_ours.
14420
14421 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
14422
14423         * remote.c (remote_follow_fork): Don't call "detach_inferior".
14424
14425 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
14426
14427         * dwarf2read.c (free_dwo_files): Add forward-declaration.
14428         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
14429         dwarf2_per_objfile_free here.
14430         (dwarf2_per_objfile_free): Remove.
14431         (_initialize_dwarf2_read): Don't register
14432         dwarf2_per_objfile_free as a registry cleanup.
14433
14434 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
14435
14436         Avoid compilation errors in MinGW native builds
14437
14438         The error is triggered by including python-internal.h, and the
14439         error message is:
14440
14441              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
14442                       from build-gnulib/import/math.h:27,
14443                       from d:/usr/Python26/include/pyport.h:235,
14444                       from d:/usr/Python26/include/Python.h:58,
14445                       from python/python-internal.h:94,
14446                       from python/py-arch.c:24:
14447              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
14448         using ::hypot;
14449                 ^~~~~
14450
14451         This happens because Python headers define 'hypot' to expand t
14452         '_hypot' in the Windows builds.
14453         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
14454         'hypoth'.  This avoids a compilation error.
14455
14456 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
14457
14458         * MAINTAINERS (Write After Approval): Fix ordering.
14459
14460 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
14461
14462         * MAINTAINERS (Write After Approval): Add Alan Hayward.
14463
14464 2018-01-26  Alan Modra  <amodra@gmail.com>
14465
14466         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
14467         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
14468         Remove nop.  Make const.  Comment.
14469         (powerpc32_plt_stub_so_2): New.
14470         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
14471         Correct count.  Update uses.
14472         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
14473         Move common code reading PLT entry word.  Correct
14474         powerpc32_plt_stub PLT address calculation.
14475         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
14476         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
14477         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
14478         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
14479         (ppc64_standard_linkage8): Likewise.
14480         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
14481         Correct insns description.
14482         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
14483
14484 2018-01-24  Pedro Alves  <palves@redhat.com>
14485
14486         GCC PR libstdc++/83906
14487         * gdbtypes.c (operator==(const dynamic_prop &,
14488         const dynamic_prop &)): New.
14489         (operator==(const range_bounds &, const range_bounds &)): New.
14490         (check_types_equal): Use them instead of memcmp.
14491         * gdbtypes.h (operator==(const dynamic_prop &,
14492         const dynamic_prop &)): Declare.
14493         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
14494         (operator==(const range_bounds &, const range_bounds &)): Declare.
14495         (operator!=(const range_bounds &, const range_bounds &)): Declare.
14496
14497 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14498
14499         * s390-linux-tdep.c (s390_record_address_mask)
14500         (s390_record_calc_disp_common, s390_record_calc_disp)
14501         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
14502         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
14503         (s390_process_record): Move to s390-tdep.c.
14504         (s390_linux_init_abi_any): Adjust.
14505         * s390-tdep.c (s390_record_address_mask)
14506         (s390_record_calc_disp_common, s390_record_calc_disp)
14507         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
14508         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
14509         (s390_process_record): Moved from s390-linux-tdep.c
14510         (s390_gdbarch_init): Adjust.
14511
14512 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14513
14514         * s390-linux-nat.c (s390-tdep.h): New include.
14515         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
14516         (HFILES_NO_SRCDIR): Add s390-tdep.h.
14517         (ALLDEPFILES): Add s390-tdep.c.
14518         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
14519         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
14520         * s390-tdep.h: ...this.  New file.
14521         * s390-linux-tdep.c (s390-tdep.h): New include.
14522         (_initialize_s390_tdep): Rename to...
14523         (_initialize_s390_linux_tdep): ...this and adjust.
14524         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
14525         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
14526         s390-tdep.h.
14527         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
14528         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
14529         (s390_is_partial_instruction, s390_software_single_step)
14530         (is_non_branch_ril, s390_displaced_step_copy_insn)
14531         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
14532         (s390_prologue_data, s390_addr, s390_store, s390_load)
14533         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
14534         (s390_register_call_saved, s390_guess_tracepoint_registers)
14535         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
14536         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
14537         (s390_pseudo_register_name, s390_pseudo_register_type)
14538         (s390_pseudo_register_read, s390_pseudo_register_write)
14539         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
14540         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
14541         (s390_addr_bits_remove, s390_address_class_type_flags)
14542         (s390_address_class_type_flags_to_name)
14543         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
14544         (s390_function_arg_float, s390_function_arg_vector)
14545         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
14546         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
14547         (s390_frame_align, s390_register_return_value, s390_return_value)
14548         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
14549         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
14550         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
14551         (s390_trad_frame_prev_register, s390_unwind_cache)
14552         (s390_prologue_frame_unwind_cache)
14553         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
14554         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
14555         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
14556         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
14557         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
14558         (s390_frame_base_address, s390_local_base_address)
14559         (s390_frame_base, s390_gcc_target_options)
14560         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
14561         (s390_validate_reg_range, s390_tdesc_valid)
14562         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
14563         * s390-tdep.c: ...this.  New file.
14564
14565 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14566
14567         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
14568         (s390_process_record, s390_gdbarch_tdep_alloc)
14569         (s390_linux_init_abi_any): Use/set new hook.
14570
14571 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14572
14573         * s390-linux-tdep.c (osabi.h): New include.
14574         (s390_linux_init_abi_31, s390_linux_init_abi_64)
14575         (s390_linux_init_abi_any): New functions.
14576         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
14577
14578 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14579
14580         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
14581         tdesc_has_registers check
14582
14583 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14584
14585         * s390-linux-tdep.c (s390_tdesc_valid): New function.
14586         (s390_validate_reg_range): New macro.
14587         (s390_gdbarch_init): Adjust.
14588
14589 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14590
14591         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
14592         (s390_gdbarch_tdep_alloc): Adjust.
14593         (s390_gdbarch_init): Adjust.
14594
14595 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14596
14597         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
14598         <have_tdb>: Change type to bool.
14599         (s390_gdbarch_tdep_alloc): Adjust.
14600         (s390_gdbarch_init): Adjust.
14601
14602 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14603
14604         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
14605         (gdbarch_tdep) <have_upper, have_vx>: New fields.
14606         (s390_gdbarch_tdep_alloc): New function.
14607         (s390_gdbarch_init): Allocate tdep at start and use its fields
14608         instead of separate variables.
14609
14610 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14611
14612         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
14613         when looking for cached gdbarch and add comment for remaining.
14614
14615 2018-01-22  Pedro Alves  <palves@redhat.com>
14616             Sergio Durigan Junior  <sergiodj@redhat.com>
14617
14618         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
14619         case.
14620
14621 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
14622
14623         * MAINTAINERS: Update my company e-mail address.
14624
14625 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14626
14627         * regcache.c (cooked_write_test): New function.
14628         (_initialize_regcache): Register the test.
14629
14630 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14631
14632         * ia64-tdep.c (ia64_pseudo_register_read): Call
14633         regcache->cooked_read instead of regcache_cooked_read_unsigned.
14634         * m32c-tdep.c (m32c_cat_read): Likewise.
14635         (m32c_r3r2r1r0_read): Likewise.
14636         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
14637         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
14638
14639 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14640
14641         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
14642         method raw_read instead of regcache_raw_read.
14643         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
14644         * arm-tdep.c (arm_neon_quad_read): Likewise.
14645         * avr-tdep.c (avr_pseudo_register_read): Likewise.
14646         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
14647         * frv-tdep.c (frv_pseudo_register_read): Likewise.
14648         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
14649         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
14650         (i386_pseudo_register_read_into_value): Likewise.
14651         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
14652         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
14653         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
14654         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
14655         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
14656         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
14657         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
14658         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
14659         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
14660
14661 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14662
14663         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
14664         * configure.tgt: Remove target mt.
14665         * mt-tdep.c: Remove.
14666         * regcache.c (cooked_read_test): Remove the check for mt.
14667
14668 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14669
14670         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
14671         instead of gdbarch_pseudo_register_read_value.
14672
14673 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14674
14675         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
14676         language is Ada.
14677
14678 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14679
14680         * linespec.c (create_sals_line_offset): Remove code that preserved
14681         the symtab_and_line's line number.
14682
14683 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14684
14685         * varobj.c (varobj_create): Don't set valid_block when creating a
14686         floating varobj.
14687
14688 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14689
14690         * varobj.c (varobj_create): Remove out of date comment.
14691
14692 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14693
14694         PR mi/20395
14695         * ada-exp.y (write_var_from_sym): Pass extra parameter when
14696         updating innermost block.
14697         * parse.c (innermost_block_tracker::update): Take extra type
14698         parameter, and check types match before updating innermost block.
14699         (write_dollar_variable): Update innermost block for registers.
14700         * parser-defs.h (enum innermost_block_tracker_type): New enum.
14701         (innermost_block_tracker::innermost_block_tracker): Initialise
14702         m_types member.
14703         (innermost_block_tracker::reset): Take type parameter.
14704         (innermost_block_tracker::update): Take type parameter, and pass
14705         type through as needed.
14706         (innermost_block_tracker::m_types): New member.
14707         * varobj.c (varobj_create): Pass type when reseting innermost
14708         block.
14709
14710 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14711
14712         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
14713         * ada-lang.c (resolve_subexp): Likewise.
14714         * breakpoint.c (set_breakpoint_condition) Likewise.
14715         (watch_command_1) Likewise.
14716         * c-exp.y (variable): Likewise.
14717         * d-exp.y (PrimaryExpression): Likewise.
14718         * f-exp.y (variable): Likewise.
14719         * go-exp.y (variable): Likewise.
14720         * m2-exp.y (variable): Likewise.
14721         * objfiles.c (objfile::~objfile): Likewise.
14722         * p-exp.y (variable): Likewise.
14723         * parse.c (innermost_block): Change type.
14724         * parser-defs.h (class innermost_block_tracker): New.
14725         (innermost_block): Change to innermost_block_tracker.
14726         * printcmd.c (display_command): Switch to innermost_block API.
14727         (do_one_display): Likewise.
14728         * rust-exp.y (do_one_display): Likewise.
14729         * symfile.c (clear_symtab_users): Likewise.
14730         * varobj.c (varobj_create): Switch to innermost_block API, replace
14731         use of innermost_block with block stored on varobj object.
14732
14733 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14734
14735         * expression.h (innermost_block): Remove declaration.
14736         * varobj.c: Add 'parser-defs.h' include.
14737
14738 2018-01-19  Tom Tromey  <tom@tromey.com>
14739
14740         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
14741         symbols in the static and global blocks.
14742
14743 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
14744
14745         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
14746         gdb_ptrace.h, and move including gdb_wait.h ...
14747         * nat/linux-ptrace.h: ... to here.
14748
14749 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14750
14751         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
14752         inf_ptrace_detach_success.
14753         (inf_ptrace_detach_success): Add inferior parameter, use it
14754         instead of inferior_ptid, pass it to detach_inferior.
14755         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
14756         parameter.
14757         * inferior.c (detach_inferior): Add overload that takes an
14758         inferior object.
14759         * inferior.h (detach_inferior): Likewise.
14760         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
14761         use inferior_ptid, adjust call to inf_ptrace_detach_success.
14762         * linux-thread-db.c (thread_db_detach): Use inf parameter.
14763
14764 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14765
14766         * target.h (struct target_ops) <to_detach>: Add inferior
14767         parameter.
14768         (target_detach): Likewise.
14769         * target.c (dispose_inferior): Pass inferior down.
14770         (target_detach): Pass inferior down.  Assert that it is equal to
14771         the current inferior.
14772         * aix-thread.c (aix_thread_detach): Pass inferior down.
14773         * corefile.c (core_file_command): Pass current_inferior() down.
14774         * corelow.c (core_detach): Add inferior parameter.
14775         * darwin-nat.c (darwin_detach): Likewise.
14776         * gnu-nat.c (gnu_detach): Likewise.
14777         * inf-ptrace.c (inf_ptrace_detach): Likewise.
14778         * infcmd.c (detach_command): Pass current_inferior() down to
14779         target_detach.
14780         * infrun.c (follow_fork_inferior): Pass parent_inf to
14781         target_detach.
14782         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
14783         target_detach.
14784         * linux-nat.c (linux_nat_detach): Add inferior parameter.
14785         * linux-thread-db.c (thread_db_detach): Likewise.
14786         * nto-procfs.c (procfs_detach): Likewise.
14787         * procfs.c (procfs_detach): Likewise.
14788         * record.c (record_detach): Likewise.
14789         * record.h (struct inferior): Forward-declare.
14790         (record_detach): Add inferior parameter.
14791         * remote-sim.c (gdbsim_detach): Likewise.
14792         * remote.c (remote_detach_1): Likewise.
14793         (remote_detach): Likewise.
14794         (extended_remote_detach): Likewise.
14795         * sol-thread.c (sol_thread_detach): Likewise.
14796         * target-debug.h (target_debug_print_inferior_p): New macro.
14797         * target-delegates.c: Re-generate.
14798         * top.c (kill_or_detach): Pass inferior down to target_detach.
14799         * windows-nat.c (windows_detach): Add inferior parameter.
14800
14801 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14802
14803         * target.h (struct target_ops) <to_detach>: Remove args
14804         parameter.
14805         (target_detach): Likewise.
14806         * target.c (dispose_inferior): Adjust.
14807         (target_detach): Remove args parameter, adjust.
14808         * aix-thread.c (aix_thread_detach): Adjust.
14809         * corefile.c (core_file_command): Adjust.
14810         * corelow.c (core_detach): Adjust.
14811         * darwin-nat.c (darwin_detach): Adjust.
14812         * gnu-nat.c (gnu_detach): Adjust.
14813         * inf-ptrace.c (inf_ptrace_detach): Adjust.
14814         * infcmd.c (detach_command): Adjust
14815         * infrun.c (follow_fork_inferior): Adjust.
14816         (handle_vfork_child_exec_or_exit): Adjust.
14817         * linux-fork.c (linux_fork_detach): Remove args parameter.
14818         * linux-fork.h (linux_fork_detach): Likewise.
14819         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
14820         * linux-thread-db.c (thread_db_detach): Likewise.
14821         * nto-procfs.c (procfs_detach): Likewise.
14822         * procfs.c (procfs_detach): Likewise.
14823         (do_detach): Remove signo parameter.
14824         * record.c (record_detach): Remove args parameter.
14825         * record.h (record_detach): Likewise.
14826         * remote-sim.c (gdbsim_detach): Likewise.
14827         * remote.c (remote_detach_1): Likewise.
14828         (remote_detach): Likewise.
14829         (extended_remote_detach): Likewise.
14830         * sol-thread.c (sol_thread_detach): Likewise.
14831         * target-delegates.c: Re-generate.
14832         * top.c (struct qt_args) <args>: Remove field.
14833         (kill_or_detach): Don't pass args.
14834         (quit_force): Don't set args.
14835         * windows-nat.c (windows_detach): Remove args parameter.
14836
14837 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14838
14839         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
14840         (arm_linux_init_abi): Install it.
14841
14842 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14843
14844         * osabi.c (gdb_osabi_names): Extend the regexp for
14845         arm-linux-gnueabihf.
14846
14847 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14848
14849         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
14850         m_abbrevs.
14851         (abbrev_table::add_abbrev): Update.
14852         (abbrev_table::lookup_abbrev): Update.
14853
14854 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14855
14856         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
14857
14858 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
14859
14860         * compile/compile.c (compile_to_object): Convert "triplet_rx"
14861         to "std::string".
14862
14863 2018-01-17  Tom Tromey  <tom@tromey.com>
14864
14865         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
14866
14867 2018-01-17  Tom Tromey  <tom@tromey.com>
14868
14869         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
14870         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
14871         (create_array_type_with_stride): Update.
14872         * dwarf2read.c (set_die_type): Update.
14873
14874 2018-01-17  Tom Tromey  <tom@tromey.com>
14875
14876         * dwarf2read.c (delayed_method_info): Remove typedef.
14877         (dwarf2_cu::method_info): Now a std::vector.
14878         (add_to_method_list): Update.
14879         (free_delayed_list): Remove.
14880         (compute_delayed_physnames): Update.
14881         (process_full_comp_unit, process_full_type_unit): Clear the method
14882         list.  Remove cleanups.
14883         (psymtab_include_file_name): Add name_holder parameter.  Use
14884         unique_xmalloc_ptr.
14885         (dwarf_decode_lines): Update.
14886
14887 2018-01-17  Tom Tromey  <tom@tromey.com>
14888             Simon Marchi  <simon.marchi@ericsson.com>
14889
14890         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
14891         (dwarf2_per_objfile::free_cached_comp_units)
14892         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14893         (init_cutu_and_read_dies_no_follow): Update.
14894         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
14895         (dwarf2_cu::~dwarf2_cu): New.
14896         (free_heap_comp_unit, free_stack_comp_unit): Remove.
14897         (age_cached_comp_units, free_one_cached_comp_unit): Update.
14898
14899 2018-01-17  Tom Tromey  <tom@tromey.com>
14900             Simon Marchi  <simon.marchi@ericsson.com>
14901
14902         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
14903         (struct die_reader_specs) <abbrev_table>: New member.
14904         (struct abbrev_table): Add constructor.
14905         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
14906         <abbrev_obstack>: Now an auto_obstack.
14907         (abbrev_table_up): New typedef.
14908         (init_cu_die_reader): Add abbrev_table parameter.
14909         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
14910         Add result_dwo_abbrev_table.
14911         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14912         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
14913         Update.
14914         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
14915         parameter.
14916         (skip_children): Update.
14917         (abbrev_table::alloc_abbrev): Rename from
14918         abbrev_table_alloc_abbrev.
14919         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
14920         (abbrev_table::lookup_abbrev): Rename from
14921         abbrev_table_lookup_abbrev.
14922         (abbrev_table_read_table): Return abbrev_table_up.
14923         (abbrev_table_free, abbrev_table_free_cleanup)
14924         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
14925         (load_partial_dies): Update.
14926
14927 2018-01-17  Tom Tromey  <tom@tromey.com>
14928
14929         * dwarf2read.c (dwarf2_compute_name): Update comment.
14930         (read_func_scope, read_variable): Update.
14931         (new_symbol): Remove.
14932         (new_symbol_full): Rename to new_symbol.
14933
14934 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
14935
14936         PR gdb/16577
14937         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
14938         a warning instead of throwing an error, set section size to 0 and return
14939         NULL.
14940         * gdb_bfd.h (gdb_bfd_map_section): Update description.
14941
14942 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14943
14944         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
14945         std::string.
14946         (linux_ptrace_attach_fail_reason_string): Likewise.
14947         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
14948         Likewise.
14949         (linux_ptrace_attach_fail_reason_string): Likewise.
14950         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
14951
14952 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14953
14954         * linux-nat.c (linux_nat_attach): Remove xstrdup.
14955
14956 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
14957
14958         PR gdb/21559
14959         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
14960         checking for fs_base/gs_base fields in struct user_regs_struct.
14961         * configure: Regenerate.
14962
14963 2018-01-17  Yao Qi  <yao.qi@linaro.org>
14964
14965         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
14966         function.
14967         (aarch64_linux_init_abi): Install it to gdbarch hook
14968         gcc_target_options.
14969
14970 2018-01-15  Pedro Alves  <palves@redhat.com>
14971
14972         * common/signals-state-save-restore.c
14973         (save_original_signals_state): Fix typos.
14974
14975 2017-01-12  Tom Tromey  <tom@tromey.com>
14976             Sergio Durigan Junior  <sergiodj@redhat.com>
14977
14978         * Makefile.in (install-only): Install gdb-add-index.
14979
14980 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
14981
14982         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
14983
14984 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
14985
14986         * infrun.c (keep_going_pass_signal): Clear step-over info when
14987         insert_breakpoints fails.
14988
14989 2018-01-11  Pedro Alves  <palves@redhat.com>
14990
14991         PR gdb/22583
14992         * infrun.c (resume): Rename to ...
14993         (resume_1): ... this.
14994         (resume): Reimplement as wrapper around resume_1.
14995
14996 2018-01-11  Pedro Alves  <palves@redhat.com>
14997
14998         PR remote/22597
14999         * remote.c (remote_parse_stop_reply): Default to the last-set
15000         general thread instead of to 'magic_null_ptid'.
15001
15002 2018-01-10  Pedro Alves  <palves@redhat.com>
15003
15004         * language.h (language_get_symbol_name_matcher): Rename ...
15005         (get_symbol_name_matcher): ... this.
15006         * language.c (language_get_symbol_name_matcher): Ditto.
15007         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
15008         callers adjusted.
15009
15010 2018-01-10  Pedro Alves  <palves@redhat.com>
15011
15012         PR gdb/22670
15013         * dwarf2read.c
15014         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
15015         Adjust to use language_get_symbol_name_matcher instead of
15016         language_defn::la_get_symbol_name_matcher.
15017         * language.c (language_get_symbol_name_matcher): If in Ada mode
15018         and the lookup name is a verbatim match, return Ada's matcher.
15019         * language.h (language_get_symbol_name_matcher): Adjust comment.
15020         (ada_lookup_name_info::verbatim_p):: New method.
15021
15022 2018-01-10  Pedro Alves  <palves@redhat.com>
15023
15024         PR gdb/22670
15025         * ada-lang.c (ada_collect_symbol_completion_matches): If the
15026         minsym's language is language_auto or language_cplus, pass down
15027         language_ada instead.
15028         * symtab.c (compare_symbol_name): Don't frob symbol language here.
15029
15030 2018-01-10  Pedro Alves  <palves@redhat.com>
15031
15032         PR gdb/22670
15033         * minsyms.c (linkage_name_str): New function.
15034         (iterate_over_minimal_symbols): Use it.
15035
15036 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15037
15038         * NEWS: Document that 'info proc' now works on FreeBSD.
15039
15040 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15041
15042         * configure.ac: Check for kinfo_getfile in libutil.
15043         * configure: Regenerate.
15044         * config.in: Regenerate.
15045         * fbsd-nat.c: Include "fbsd-tdep.h".
15046         (fbsd_fetch_cmdline): New.
15047         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
15048         rather than calling error.
15049         (fbsd_info_proc): New.
15050         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
15051         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
15052         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
15053
15054 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15055
15056         * fbsd-nat.c (struct free_deleter): Remove.
15057         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
15058
15059 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15060
15061         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
15062         NULL for an empty pathname.
15063
15064 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15065
15066         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
15067         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
15068         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
15069         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
15070         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
15071         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
15072         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
15073         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
15074         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
15075         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
15076         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
15077         (fbsd_core_fetch_timeval, fbsd_print_sigset)
15078         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
15079         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
15080         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
15081
15082 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
15083
15084         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
15085         (gnu_xfer_auxv): New function.
15086         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
15087         TARGET_OBJECT_AUXV.
15088
15089 2018-01-08  Yao Qi  <yao.qi@linaro.org>
15090             Simon Marchi  <simon.marchi@ericsson.com>
15091
15092         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
15093         common/selftest.c.
15094         (COMMON_OBS): Remove selftest.o.
15095         * configure.ac: Append selftest-arch.c and common/selftest.c to
15096         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
15097         * configure: Re-generated.
15098         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
15099         GDB_SELF_TEST.
15100         (maintenance_info_selftests): Likewise.
15101
15102 2018-01-08  Xavier Roirand  <roirand@adacore.com>
15103
15104         * ada-valprint.c (val_print_packed_array_elements): Use
15105         proper number of elements when printing an array indexed
15106         by an enumeration type.
15107
15108 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15109
15110         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
15111         (dw2_get_file_names_reader): Adjust.
15112         (lookup_dwo_signatured_type): Adjust.
15113         (lookup_dwp_signatured_type): Adjust.
15114         (lookup_signatured_type): Adjust.
15115         (create_type_unit_group): Adjust.
15116         (get_type_unit_group): Adjust.
15117         (process_psymtab_comp_unit_reader): Adjust.
15118         (build_type_psymtabs_reader): Adjust.
15119         (scan_partial_symbols): Adjust.
15120         (add_partial_symbol): Adjust.
15121         (add_partial_subprogram): Adjust.
15122         (peek_die_abbrev): Adjust.
15123         (fixup_go_packaging): Adjust.
15124         (process_imported_unit_die): Adjust.
15125         (dwarf2_compute_name): Adjust.
15126         (dwarf2_physname): Adjust.
15127         (read_import_statement): Adjust.
15128         (handle_DW_AT_stmt_list): Adjust.
15129         (read_file_scope): Adjust.
15130         (read_func_scope): Adjust.
15131         (read_lexical_block_scope): Adjust.
15132         (read_call_site_scope): Adjust.
15133         (read_variable): Adjust.
15134         (dwarf2_rnglists_process): Adjust.
15135         (dwarf2_ranges_process): Adjust.
15136         (dwarf2_ranges_read): Adjust.
15137         (dwarf2_get_pc_bounds): Adjust.
15138         (dwarf2_record_block_ranges): Adjust.
15139         (dwarf2_add_field): Adjust.
15140         (dwarf2_add_member_fn): Adjust.
15141         (read_structure_type): Adjust.
15142         (process_structure_scope): Adjust.
15143         (read_enumeration_type): Adjust.
15144         (read_array_type): Adjust.
15145         (mark_common_block_symbol_computed): Adjust.
15146         (read_common_block): Adjust.
15147         (read_namespace_type): Adjust.
15148         (read_namespace): Adjust.
15149         (read_module_type): Adjust.
15150         (read_tag_pointer_type): Adjust.
15151         (read_tag_ptr_to_member_type): Adjust.
15152         (read_tag_string_type): Adjust.
15153         (read_subroutine_type): Adjust.
15154         (read_typedef): Adjust.
15155         (read_base_type): Adjust.
15156         (attr_to_dynamic_prop): Adjust.
15157         (read_subrange_type): Adjust.
15158         (read_unspecified_type): Adjust.
15159         (dwarf2_read_abbrevs): Adjust.
15160         (load_partial_dies): Adjust.
15161         (read_partial_die): Adjust.
15162         (find_partial_die): Adjust.
15163         (guess_partial_die_structure_name): Adjust.
15164         (fixup_partial_die): Adjust.
15165         (read_attribute_value): Adjust.
15166         (read_addr_index): Adjust.
15167         (read_addr_index_from_leb128): Adjust.
15168         (read_str_index): Adjust.
15169         (dwarf2_string_attr): Adjust.
15170         (get_debug_line_section): Adjust.
15171         (dwarf_decode_line_header): Adjust.
15172         (lnp_state_machine::check_line_address): Adjust.
15173         (dwarf_decode_lines_1): Adjust.
15174         (dwarf_decode_lines): Adjust.
15175         (dwarf2_start_symtab): Adjust.
15176         (var_decode_location): Adjust.
15177         (new_symbol_full): Adjust.
15178         (dwarf2_const_value_data): Adjust.
15179         (dwarf2_const_value_attr): Adjust.
15180         (dwarf2_const_value): Adjust.
15181         (die_type): Adjust.
15182         (die_containing_type): Adjust.
15183         (build_error_marker_type): Adjust.
15184         (lookup_die_type): Adjust.
15185         (guess_full_die_structure_name): Adjust.
15186         (anonymous_struct_prefix): Adjust.
15187         (determine_prefix): Adjust.
15188         (dwarf2_name): Adjust.
15189         (follow_die_ref_or_sig): Adjust.
15190         (follow_die_offset): Adjust.
15191         (follow_die_ref): Adjust.
15192         (follow_die_sig_1): Adjust.
15193         (follow_die_sig): Adjust.
15194         (get_signatured_type): Adjust.
15195         (get_DW_AT_signature_type): Adjust.
15196         (decode_locdesc): Adjust.
15197         (dwarf_decode_macros): Adjust.
15198         (cu_debug_loc_section): Adjust.
15199         (fill_in_loclist_baton): Adjust.
15200         (dwarf2_symbol_mark_computed): Adjust.
15201         (init_one_comp_unit): Don't assign
15202         dwarf2_cu::dwarf2_per_objfile.
15203         (set_die_type): Adjust.
15204
15205 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15206
15207         * dwarf2read.c (struct mapped_debug_names): Add constructor.
15208         <dwarf2_per_objfile>: New field.
15209         (dwarf2_per_objfile): Remove global.
15210         (get_dwarf2_per_objfile): New function.
15211         (set_dwarf2_per_objfile): New function.
15212         (dwarf2_build_psymtabs_hard): Change objfile parameter to
15213         dwarf2_per_objfile.
15214         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
15215         (read_abbrev_offset): Likewise.
15216         (read_indirect_string): Likewise.
15217         (read_indirect_line_string): Likewise.
15218         (read_indirect_string_at_offset): Likewise.
15219         (read_indirect_string_from_dwz): Likewise.
15220         (dwarf2_find_containing_comp_unit): Change objfile parameter to
15221         dwarf2_per_objfile.
15222         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
15223         (create_all_comp_units): Change objfile parameter to
15224         dwarf2_per_objfile.
15225         (create_all_type_units): Likewise.
15226         (process_queue): Add dwarf2_per_objfile parameter.
15227         (read_and_check_comp_unit_head): Likewise.
15228         (lookup_dwo_unit_in_dwp): Likewise.
15229         (get_dwp_file): Likewise.
15230         (process_cu_includes): Likewise.
15231         (struct free_dwo_file_cleanup_data): New struct.
15232         (dwarf2_has_info): Use get_dwarf2_per_objfile and
15233         set_dwarf2_per_objfile.
15234         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
15235         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
15236         context, adjust calls.
15237         (dw2_instantiate_symtab): Likewise.
15238         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
15239         (dw2_get_cu): Likewise.
15240         (create_cu_from_index_list): Change objfile parameter to
15241         dwarf2_per_objfile.
15242         (create_cus_from_index_list): Get dwarf2_per_objfile from
15243         context, adjust calls.
15244         (create_cus_from_index): Likewise.
15245         (create_signatured_type_table_from_index): Change objfile
15246         parameter to dwarf2_per_objfile.
15247         (create_signatured_type_table_from_debug_names): Change objfile
15248         parameter to dwarf2_per_objfile.
15249         (create_addrmap_from_index): Likewise.
15250         (create_addrmap_from_aranges): Likewise.
15251         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
15252         (dw2_setup): Remove.
15253         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
15254         context.
15255         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
15256         get_dwarf2_per_objfile.
15257         (dw2_forget_cached_source_info): Likewise.
15258         (dw2_map_symtabs_matching_filename): Likewise.
15259         (struct dw2_symtab_iterator) <index>: Remove.
15260         <dwarf2_per_objfile>: New field.
15261         (dw2_symtab_iter_init): Replace index parameter with
15262         dwarf2_per_objfile.
15263         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
15264         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
15265         (dw2_print_stats): Likewise.
15266         (dw2_dump): Likewise.
15267         (dw2_expand_symtabs_for_function): Likewise.
15268         (dw2_expand_all_symtabs): Likewise.
15269         (dw2_expand_symtabs_with_fullname): Likewise.
15270         (dw2_expand_marked_cus): Replace index and objfile parameters
15271         with dwarf2_per_objfile.
15272         (dw_expand_symtabs_matching_file_matcher): Add
15273         dwarf2_per_objfile parameter and adjust calls.
15274         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
15275         adjust calls.
15276         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
15277         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
15278         adjust calls.
15279         (create_cus_from_debug_names_list): Replace objfile parameter
15280         with dwarf2_per_objfile and adjust calls.
15281         (create_cus_from_debug_names): Likewise.
15282         (dwarf2_read_debug_names): Likewise.
15283         (mapped_debug_names::namei_to_name): Adjust call.
15284         (dw2_debug_names_iterator::next): Likewise.
15285         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
15286         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
15287         (dw2_debug_names_dump): Likewise.
15288         (dw2_debug_names_expand_symtabs_for_function): Likewise.
15289         (dw2_debug_names_expand_symtabs_matching): Likewise.
15290         (dwarf2_initialize_objfile): Likewise.
15291         (dwarf2_build_psymtabs): Likewise.
15292         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
15293         this_cu.
15294         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
15295         (read_and_check_comp_unit_head): Likewise.
15296         (read_abbrev_offset): Likewise.
15297         (create_debug_type_hash_table): Likewise.
15298         (create_debug_types_hash_table): Likewise.
15299         (create_all_type_units): Replace objfile parameter with
15300         dwarf2_per_objfile.
15301         (add_type_unit): Add dwarf2_per_objfile parameter.
15302         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
15303         with dwarf2_per_objfile.
15304         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
15305         (lookup_dwp_signatured_type): Likewise.
15306         (lookup_signatured_type): Likewise.
15307         (read_cutu_die_from_dwo): Likewise.
15308         (init_tu_and_read_dwo_dies): Likewise.
15309         (init_cutu_and_read_dies): Likewise.
15310         (init_cutu_and_read_dies_no_follow): Likewise.
15311         (allocate_type_unit_groups_table): Add objfile parameter.
15312         (create_type_unit_group): Use dwarf2_per_objfile from cu.
15313         (get_type_unit_group): Likewise.
15314         (process_psymtab_comp_unit): Update call.
15315         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
15316         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
15317         (print_tu_stats): Likewise.
15318         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
15319         in void* parameter.
15320         (build_type_psymtabs): Change objfile parameter to
15321         dwarf2_per_objfile.
15322         (process_skeletonless_type_unit): Use dwarf2_per_objfile
15323         passed in void* parameter.
15324         (process_skeletonless_type_units): Change objfile parameter to
15325         dwarf2_per_objfile.
15326         (set_partial_user): Likewise.
15327         (dwarf2_build_psymtabs_hard): Likewise.
15328         (read_comp_units_from_section): Likewise.
15329         (create_all_comp_units): Likewise.
15330         (scan_partial_symbols): Update calls.
15331         (add_partial_symbol): Likewise.
15332         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
15333         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
15334         (process_queue): Add dwarf2_per_objfile parameter.
15335         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
15336         (compute_compunit_symtab_includes): Likewise.
15337         (process_cu_includes): Add dwarf2_per_objfile parameter.
15338         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
15339         (process_full_type_unit): Likewise.
15340         (process_imported_unit_die): Update call.
15341         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
15342         (read_file_scope): Likewise.
15343         (allocate_dwo_file_hash_table): Add objfile parameter.
15344         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
15345         (create_cus_hash_table): Likewise.
15346         (create_dwp_hash_table): Likewise.
15347         (create_dwo_unit_in_dwp_v1): Likewise.
15348         (create_dwp_v2_section): Likewise.
15349         (create_dwo_unit_in_dwp_v2): Likewise.
15350         (lookup_dwo_unit_in_dwp): Likewise.
15351         (try_open_dwop_file): Likewise.
15352         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
15353         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
15354         cleanup to include a reference to dwarf2_per_objfile.
15355         (open_dwp_file): Add dwarf2_per_objfile parameter.
15356         (open_and_init_dwp_file): Likewise.
15357         (get_dwp_file): Likewise.
15358         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
15359         (queue_and_load_all_dwo_tus): Update call.
15360         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
15361         data.
15362         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
15363         (dwarf2_ranges_process): Likewise.
15364         (dwarf2_get_pc_bounds): Likewise.
15365         (mark_common_block_symbol_computed): Likewise.
15366         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
15367         (dwarf2_read_abbrevs): Update call.
15368         (read_partial_die): Use dwarf2_per_objfile from cu.
15369         (find_partial_die): Likewise.
15370         (fixup_partial_die): Likewise.
15371         (read_attribute_value): Likewise.
15372         (read_indirect_string_at_offset_from): Add objfile parameter.
15373         (read_indirect_string_at_offset): Add dwarf2_per_objfile
15374         parameter.
15375         (read_indirect_string_from_dwz): Add objfile parameter.
15376         (read_indirect_string): Add objfile parameter.
15377         (read_addr_index_1): Add dwarf2_per_objfile parameter.
15378         (read_addr_index): Use dwarf2_per_objfile from cu.
15379         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
15380         call dw2_setup.
15381         (read_str_index): Use dwarf2_per_objfile from cu.
15382         (get_debug_line_section): Likewise.
15383         (read_formatted_entries): Add dwarf2_per_objfile parameter.
15384         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
15385         (new_symbol_full): Use dwarf2_per_objfile from cu.
15386         (build_error_marker_type): Likewise.
15387         (lookup_die_type): Likewise.
15388         (determine_prefix): Likewise.
15389         (follow_die_offset): Likewise.
15390         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
15391         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
15392         (dwarf2_fetch_die_type_sect_off): Likewise.
15393         (dwarf2_get_die_type): Likewise.
15394         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
15395         (get_signatured_type): Likewise.
15396         (get_DW_AT_signature_type): Likewise.
15397         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
15398         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
15399         (cu_debug_loc_section): Likewise.
15400         (fill_in_loclist_baton): Likewise.
15401         (dwarf2_symbol_mark_computed): Likewise.
15402         (dwarf2_find_containing_comp_unit): Change objfile parameter to
15403         dwarf2_per_objfile.
15404         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
15405         parameter.
15406         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
15407         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
15408         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
15409         (set_die_type): Use dwarf2_free_objfile from cu.
15410         (get_die_type_at_offset): Likewise.
15411         (dwarf2_per_objfile_free): Don't assign global variable.
15412         (debug_names) <constructor>: Add dwarf2_per_objfile
15413         parameter, update m_debugstrlookup construction.
15414         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
15415         parameter.
15416         <m_dwarf2_per_objfile>: New field.
15417         <lookup>: Use m_dwarf2_per_objfile.
15418         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
15419         (psyms_seen_size): Likewise.
15420         (write_gdbindex): Replace objfile parameter with
15421         dwarf2_per_objfile.
15422         (write_debug_names): Likewise.
15423         (write_psymtabs_to_index): Likewise.
15424         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
15425         calls.
15426
15427 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15428
15429         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
15430         <dwarf2_per_objfile>: New field.
15431         (struct dwarf2_per_cu_data) <objfile>: Remove.
15432         <dwarf2_per_objfile>: New field.
15433         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
15434         of objfile.
15435         (create_signatured_type_table_from_index): Likewise.
15436         (create_debug_type_hash_table): Likewise.
15437         (fill_in_sig_entry_from_dwo_entry): Likewise.
15438         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
15439         (create_type_unit_group): Assign dwarf2_per_objfile instead of
15440         objfile.
15441         (create_partial_symtab): Access objfile through
15442         dwarf2_per_objfile.
15443         (process_psymtab_comp_unit_reader): Likewise.
15444         (read_comp_units_from_section): Likewise.
15445         (scan_partial_symbols): Likewise.
15446         (add_partial_symbol): Likewise.
15447         (add_partial_subprogram): Likewise.
15448         (peek_die_abbrev): Likewise.
15449         (fixup_go_packaging): Likewise.
15450         (process_full_comp_unit): Likewise.
15451         (process_full_type_unit): Likewise.
15452         (process_imported_unit_die): Likewise.
15453         (dwarf2_compute_name): Likewise.
15454         (dwarf2_physname): Likewise.
15455         (read_import_statement): Likewise.
15456         (create_cus_hash_table): Assign dwarf2_physname instead of
15457         objfile.
15458         (read_func_scope): Access objfile through dwarf2_per_objfile.
15459         (read_lexical_block_scope): Likewise.
15460         (read_call_site_scope): Likewise.
15461         (read_variable): Likewise.
15462         (dwarf2_rnglists_process): Likewise.
15463         (dwarf2_ranges_process): Likewise.
15464         (dwarf2_ranges_read): Likewise.
15465         (dwarf2_record_block_ranges): Likewise.
15466         (dwarf2_add_field): Likewise.
15467         (dwarf2_add_member_fn): Likewise.
15468         (read_structure_type): Likewise.
15469         (process_structure_scope): Likewise.
15470         (read_enumeration_type): Likewise.
15471         (read_array_type): Likewise.
15472         (read_common_block): Likewise.
15473         (read_namespace_type): Likewise.
15474         (read_namespace): Likewise.
15475         (read_module_type): Likewise.
15476         (read_tag_pointer_type): Likewise.
15477         (read_tag_ptr_to_member_type): Likewise.
15478         (read_tag_string_type): Likewise.
15479         (read_subroutine_type): Likewise.
15480         (read_typedef): Likewise.
15481         (read_base_type): Likewise.
15482         (attr_to_dynamic_prop): Likewise.
15483         (read_subrange_type): Likewise.
15484         (read_unspecified_type): Likewise.
15485         (load_partial_dies): Likewise.
15486         (read_partial_die): Likewise.
15487         (find_partial_die): Likewise.
15488         (guess_partial_die_structure_name): Likewise.
15489         (fixup_partial_die): Likewise.
15490         (read_attribute_value): Likewise.
15491         (read_addr_index_from_leb128): Likewise.
15492         (dwarf2_read_addr_index): Likewise.
15493         (dwarf2_string_attr): Likewise.
15494         (lnp_state_machine::check_line_address): Likewise.
15495         (dwarf_decode_lines_1): Likewise.
15496         (dwarf_decode_lines): Likewise.
15497         (dwarf2_start_symtab): Likewise.
15498         (var_decode_location): Likewise.
15499         (new_symbol_full): Likewise.
15500         (dwarf2_const_value_data): Likewise.
15501         (dwarf2_const_value_attr): Likewise.
15502         (dwarf2_const_value): Likewise.
15503         (die_type): Likewise.
15504         (die_containing_type): Likewise.
15505         (lookup_die_type): Likewise.
15506         (guess_full_die_structure_name): Likewise.
15507         (anonymous_struct_prefix): Likewise.
15508         (dwarf2_name): Likewise.
15509         (follow_die_ref_or_sig): Likewise.
15510         (follow_die_offset): Likewise.
15511         (follow_die_ref): Likewise.
15512         (dwarf2_fetch_die_loc_sect_off): Likewise.
15513         (dwarf2_fetch_constant_bytes): Likewise.
15514         (dwarf2_fetch_die_type_sect_off): Likewise.
15515         (dwarf2_get_die_type): Likewise.
15516         (follow_die_sig): Likewise.
15517         (decode_locdesc): Likewise.
15518         (dwarf2_per_cu_objfile): Likewise.
15519         (dwarf2_per_cu_text_offset): Likewise.
15520         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
15521         objfile.
15522         (set_die_type): Access objfile through
15523         dwarf2_per_objfile.
15524
15525 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15526
15527         * valprint.c (converted_character_d): Remove typedef.
15528         (DEF_VEC_O (converted_character_d)): Remove.
15529         (count_next_character): Use std::vector.
15530         (print_converted_chars_to_obstack): Likewise.
15531         (generic_printstr): Likewise.
15532
15533 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15534
15535         * xml-support.h (struct gdb_xml_value): Add constructor.
15536         <value>: Change type to unique_xmalloc_ptr.
15537         (gdb_xml_value_s): Remove typedef.
15538         (DEF_VEC_O (gdb_xml_value_s)): Remove.
15539         (gdb_xml_element_start_handler): Change parameter type to
15540         std::vector.
15541         (xml_find_attribute): Likewise.
15542         * xml-support.c (xml_find_attribute): Change parameter type to
15543         std::vector and adjust.
15544         (gdb_xml_values_cleanup): Remove.
15545         (gdb_xml_parser::start_element): Adjust to std::vector.
15546         (xinclude_start_include): Change paraeter type to std::vector
15547         and adjust.
15548         * btrace.c (check_xml_btrace_version): Likewise.
15549         (parse_xml_btrace_block): Likewise.
15550         (parse_xml_btrace_pt_config_cpu): Likewise.
15551         (parse_xml_btrace_pt): Likewise.
15552         (parse_xml_btrace_conf_bts): Likewise.
15553         (parse_xml_btrace_conf_pt): Likewise.
15554         * memory-map.c (memory_map_start_memory): Likewise.
15555         (memory_map_start_property): Likewise.
15556         * osdata.c (osdata_start_osdata): Likewise.
15557         (osdata_start_item): Likewise.
15558         (osdata_start_column): Likewise.
15559         * remote.c (start_thread): Likewise.
15560         * solib-aix.c (library_list_start_library): Likewise.
15561         (library_list_start_list): Likewise.
15562         * solib-svr4.c (library_list_start_library): Likewise.
15563         (svr4_library_list_start_list): Likewise.
15564         * solib-target.c (library_list_start_segment): Likewise.
15565         (library_list_start_section): Likewise.
15566         (library_list_start_library): Likewise.
15567         (library_list_start_list): Likewise.
15568         * tracepoint.c (traceframe_info_start_memory): Likewise.
15569         (traceframe_info_start_tvar): Likewise.
15570         * xml-syscall.c (syscall_start_syscall): Likewise.
15571         * xml-tdesc.c (tdesc_start_target): Likewise.
15572         (tdesc_start_feature): Likewise.
15573         (tdesc_start_reg): Likewise.
15574         (tdesc_start_union): Likewise.
15575         (tdesc_start_struct): Likewise.
15576         (tdesc_start_flags): Likewise.
15577         (tdesc_start_enum): Likewise.
15578         (tdesc_start_field): Likewise.
15579         (tdesc_start_enum_value): Likewise.
15580         (tdesc_start_vector): Likewise.
15581
15582 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15583
15584         * extension.h (struct xmethod_worker) <clone>: Remove.
15585         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
15586         Remove.
15587         (python_xmethod_worker::clone): Remove.
15588         * valops.c (find_overload_match): Use std::move instead of
15589         clone.
15590
15591 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15592
15593         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
15594         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
15595         <free_xmethod_worker_data>: Remove.
15596         <get_matching_xmethod_workers>: Chance VEC to std::vector.
15597         <get_xmethod_arg_types>: Remove.
15598         <get_xmethod_result_type>: Remove.
15599         <invoke_xmethod>: Remove.
15600         * extension.c (new_xmethod_worker): Remove.
15601         (clone_xmethod_worker): Remove.
15602         (get_matching_xmethod_workers): Return void, pass std::vector by
15603         pointer.
15604         (get_xmethod_arg_types): Rename to...
15605         (xmethod_worker::get_arg_types): ... this, and adjust.
15606         (get_xmethod_result_type): Rename to...
15607         (xmethod_worker::get_result_type): ... this, and adjust.
15608         (invoke_xmethod): Remove.
15609         (free_xmethod_worker): Remove.
15610         (free_xmethod_worker_vec): Remove.
15611         * extension.h (enum ext_lang_rc): Move here from
15612         extension-priv.h.
15613         (struct xmethod_worker): Add constructor and destructor.
15614         <data>: Remove.
15615         <value>: Remove.
15616         <invoke, clone, do_get_result_type, do_get_arg_types>: New
15617         virtual pure methods.
15618         <get_arg_types, get_result_type>: New methods.
15619         (xmethod_worker_ptr): Remove typedef.
15620         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
15621         (xmethod_worker_vec): Remove typedef.
15622         (xmethod_worker_up): New typedef.
15623         (invoke_xmethod): Remove.
15624         (clone_xmethod_worker): Remove.
15625         (free_xmethod_worker): Remove.
15626         (free_xmethod_worker_vec): Remove.
15627         (get_xmethod_arg_types): Remove.
15628         (get_xmethod_result_type): Remove.
15629         * valops.c (find_method_list): Use std::vector, don't use
15630         intermediate vector.
15631         (value_find_oload_method_list): Use std::vector.
15632         (find_overload_match): Use std::vector.
15633         (find_oload_champ): Use std::vector.
15634         * value.c (value_free): Use operator delete.
15635         (value_of_xmethod): Rename to...
15636         (value_from_xmethod): ... this.  Don't assign
15637         xmethod_worker::value, take rvalue-reference.
15638         (result_type_of_xmethod): Adjust.
15639         (call_xmethod): Adjust.
15640         * value.h: Include extension.h.
15641         (struct xmethod_worker): Don't forward-declare.
15642         (value_of_xmethod): Rename to...
15643         (value_from_xmethod): ... this, take rvalue-reference.
15644         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
15645         (struct python_xmethod_worker): ... this, add constructor and
15646         destructor.
15647         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
15648         (gdbpy_free_xmethod_worker_data): Rename to...
15649         (python_xmethod_worker::~python_xmethod_worker): ... this and
15650         adjust.
15651         (gdbpy_clone_xmethod_worker_data): Rename to...
15652         (python_xmethod_worker::clone): ... this and adjust.
15653         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
15654         temporary vector.
15655         (gdbpy_get_xmethod_arg_types): Rename to...
15656         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
15657         (gdbpy_get_xmethod_result_type): Rename to...
15658         (python_xmethod_worker::do_get_result_type): ... this and
15659         adjust.
15660         (gdbpy_invoke_xmethod): Rename to...
15661         (python_xmethod_worker::invoke): ... this and adjust.
15662         (new_python_xmethod_worker): Rename to...
15663         (python_xmethod_worker::python_xmethod_worker): ... this and
15664         adjust.
15665         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
15666         Remove.
15667         (gdbpy_free_xmethod_worker_data): Remove.
15668         (gdbpy_get_matching_xmethod_workers): Use std::vector.
15669         (gdbpy_get_xmethod_arg_types): Remove.
15670         (gdbpy_get_xmethod_result_type): Remove.
15671         (gdbpy_invoke_xmethod): Remove.
15672         * python/python.c (python_extension_ops): Remove obsolete
15673         callbacks.
15674
15675 2018-01-05  Pedro Alves  <palves@redhat.com>
15676
15677         PR gdb/18653
15678         * common/signals-state-save-restore.c
15679         (save_original_signals_state): New parameter 'quiet'.  Warn if we
15680         find a custom handler preinstalled, instead of internal erroring.
15681         But only warn if !quiet.
15682         * common/signals-state-save-restore.h
15683         (save_original_signals_state): New parameter 'quiet'.
15684         * main.c (captured_main_1): Move save_original_signals_state call
15685         after option handling, and pass QUIET.
15686
15687 2018-01-05  Pedro Alves  <palves@redhat.com>
15688
15689         * spu-tdep.c (spu_catch_start): Pass
15690         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
15691
15692 2018-01-05  Pedro Alves  <palves@redhat.com>
15693
15694         PR gdb/22670
15695         * ada-lang.c (literal_symbol_name_matcher): New function.
15696         (ada_get_symbol_name_matcher): Use it for
15697         symbol_name_match_type::SEARCH_NAME.
15698         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
15699         it down instead of assuming symbol_name_match_type::FULL.
15700         * block.h (block_lookup_symbol): New parameter 'match_type'.
15701         * c-valprint.c (print_unpacked_pointer): Use
15702         lookup_symbol_search_name instead of lookup_symbol.
15703         * compile/compile-object-load.c (get_out_value_type): Pass down
15704         symbol_name_match_type::SEARCH_NAME.
15705         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
15706         symbol_name_match_type::FULL.
15707         * cp-support.c (cp_get_symbol_name_matcher): Handle
15708         symbol_name_match_type::SEARCH_NAME.
15709         * infrun.c (insert_exception_resume_breakpoint): Use
15710         lookup_symbol_search_name.
15711         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
15712         * psymtab.c (maintenance_check_psymtabs): Use
15713         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
15714         * stack.c (print_frame_args): Use lookup_symbol_search_name and
15715         SYMBOL_SEARCH_NAME.
15716         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
15717         if symbol_name_match_type::SEARCH_NAME.
15718         (lookup_symbol_in_language): Pass down
15719         symbol_name_match_type::FULL.
15720         (lookup_symbol_search_name): New.
15721         (lookup_language_this): Pass down
15722         symbol_name_match_type::SEARCH_NAME.
15723         (lookup_symbol_aux, lookup_local_symbol): New parameter
15724         'match_type'.  Pass it down.
15725         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
15726         (lookup_symbol_search_name): New declaration.
15727         (lookup_symbol_in_block): New 'match_type' parameter.
15728
15729 2018-01-05  Pedro Alves  <palves@redhat.com>
15730
15731         PR gdb/22670
15732         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
15733         ada_lookup_symbol.
15734         (ada_lookup_symbol): Reimplement in terms of
15735         ada_lookup_symbol_list, bits factored out from
15736         ada_lookup_encoded_symbol.
15737
15738 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15739
15740         * ada-exp.y (write_object_renaming): When subscripting an array
15741         using a symbol as the index, pass the block in call to
15742         ada_lookup_encoded_symbol when looking that symbol up.
15743
15744 2018-01-05  Jerome Guitton  <guitton@adacore.com>
15745
15746         * ada-lang.c (ada_array_length): Use ada_index_type instead of
15747         TYPE_INDEX_TYPE.
15748
15749 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15750
15751         * ada-lang.c (ada_to_fixed_value_create): Add handling of
15752         the case where VALUE_LVAL (val0) is not lval_memory.
15753
15754 2018-01-05  Xavier Roirand  <roirand@adacore.com>
15755
15756         * ada-valprint.c (print_optional_low_bound): Handle
15757         character-indexed array printing like boolean-indexed array
15758         printing.
15759
15760 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15761
15762         * NEWS: Create a new section for the next release branch.
15763         Rename the section of the current branch, now that it has
15764         been cut.
15765
15766 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15767
15768         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
15769         * version.in: Bump version to 8.1.50.DATE-git.
15770
15771 2018-01-03  Xavier Roirand  <roirand@adacore.com>
15772
15773         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
15774         Add field.
15775         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
15776         Add field.
15777         (default_exception_support_info) <catch_handlers_sym>: Add field.
15778         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
15779         (ada_exception_name_addr_1): Add "catch handlers" handling.
15780         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
15781         Update all callers.
15782         (create_excep_cond_exprs) <ex>: Add parameter.
15783         (re_set_exception): Update create_excep_cond_exprs call.
15784         (print_it_exception, print_one_exception, print_mention_exception)
15785         (print_recreate_exception): Add "catch handler" handling.
15786         (allocate_location_catch_handlers, re_set_catch_handlers)
15787         (check_status_catch_handlers, print_it_catch_handlers)
15788         (print_one_catch_handlers, print_mention_catch_handlers)
15789         (print_recreate_catch_handlers): New function.
15790         (catch_handlers_breakpoint_ops): New variable.
15791         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
15792         Add parameter.  Add "catch handler" handling.
15793         (ada_exception_sym_name, ada_exception_breakpoint_ops):
15794         Add "catch handler" handling.
15795         (ada_exception_catchpoint_cond_string): Add "catch handler"
15796         handling.
15797         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
15798         call.
15799         (catch_ada_handlers_command): New function.
15800         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
15801         operations structure.
15802         (_initialize_ada_language): Add "catch handlers" command entry.
15803         * NEWS: Document "catch handlers" feature.
15804
15805 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15806
15807         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
15808         account when creating the array type of the slice.
15809         (ada_value_slice): Likewise.
15810
15811 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15812
15813         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
15814         New enum value.
15815         (create_array_type_with_stride): Add byte_stride_prop parameter.
15816         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
15817         New parameter.  Update all callers in this file.
15818         (array_type_has_dynamic_stride): New function.
15819         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
15820         of arrays with dynamic byte strides.
15821         * dwarf2read.c (read_array_type): Add support for dynamic
15822         DW_AT_byte_stride attributes.
15823
15824 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15825
15826         * dwarf2read.c (read_unspecified_type): Treat
15827         DW_TAG_enumeration_type DIEs from Ada units as stubs.
15828
15829 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15830
15831         Update copyright year range in all GDB files.
15832
15833 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
15834
15835         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
15836         and gdb/testsuite/gdb.base/step-line.c.
15837
15838 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15839
15840         * copyright.py (main): Dump the contents of
15841         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
15842         even if BY_HAND is empty.
15843
15844 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15845
15846         * top.c (print_gdb_version): Update Copyright year in version
15847         message.
15848
15849 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15850
15851         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
15852
15853 For older changes see ChangeLog-2017.
15854 \f
15855 Local Variables:
15856 mode: change-log
15857 left-margin: 8
15858 fill-column: 74
15859 version-control: never
15860 coding: utf-8
15861 End: