Consolidate some Python exception-printing functions
[external/binutils.git] / gdb / ChangeLog
1 2018-12-27  Tom Tromey  <tom@tromey.com>
2
3         * python/python-internal.h (gdbpy_print_stack_or_quit): Declare.
4         * python/py-unwind.c (pyuw_sniffer): Use
5         gdbpy_print_stack_or_quit.
6         * python/py-framefilter.c (throw_quit_or_print_exception):
7         Remove.
8         (gdbpy_apply_frame_filter): Use gdbpy_print_stack_or_quit.
9         * python/python.c (gdbpy_print_stack_or_quit): New function.
10
11 2018-12-27  Tom Tromey  <tom@tromey.com>
12
13         * python/py-value.c (convert_value_from_python): Use
14         gdbpy_convert_exception.
15         * python/py-param.c (parmpy_init): Use gdbpy_convert_exception.
16         * python/py-cmd.c (cmdpy_init): Use gdbpy_convert_exception.
17         * python/py-breakpoint.c (bppy_init): Use
18         gdbpy_convert_exception.
19
20 2018-12-27  Tom Tromey  <tom@tromey.com>
21
22         * configure.nat (NATDEPFILES): Use nat/ prefix.
23         * Makefile.in (CONFIG_SRC_SUBDIR): Add nat.
24         (%.o: ${srcdir}/nat/%.c): Remove rule.
25         (INIT_FILES): Do not filter out NATDEPFILES.
26
27 2018-12-27  Tom Tromey  <tom@tromey.com>
28
29         * Makefile.in (INIT_FILES): Redefine.
30         (stamp-init): Remove sed, tr invocations.  Use for loop.  Don't
31         set LANG or LC_ALL.
32
33 2018-12-27  Tom Tromey  <tom@tromey.com>
34
35         * Makefile.in (stamp-init): Remove gdbtypes special case.
36
37 2018-12-27  John Baldwin  <jhb@FreeBSD.org>
38
39         * config/i386/nm-fbsd.h: Remove file.
40         * Makefile.in (HFILES_NO_SRCDIR): Remove config/i386/nm-fbsd.h.
41         * configure.nat: Remove NAT_FILE for FreeBSD/i386.
42
43 2018-12-27  Tom Tromey  <tom@tromey.com>
44
45         * minsyms.h (class minimal_symbol_reader): Use
46         DISABLE_COPY_AND_ASSIGN.
47
48 2018-12-27  Tom Tromey  <tom@tromey.com>
49
50         * python/python.c (python_interactive_command): Use std::string.
51         (gdbpy_parameter): Likewise.
52         * python/py-utils.c (unicode_to_encoded_string): Update comment.
53         * python/py-symtab.c (salpy_str): Use PyString_FromFormat.
54         * python/py-record-btrace.c (recpy_bt_insn_data): Use
55         byte_vector.
56         * python/py-objfile.c (objfpy_get_build_id): Use
57         unique_xmalloc_ptr.
58         * python/py-inferior.c (infpy_read_memory): Use
59         unique_xmalloc_ptr.
60         * python/py-cmd.c (gdbpy_parse_command_name): Use std::string.
61
62 2018-12-26  Simon Marchi  <simon.marchi@polymtl.ca>
63
64         * target.c (target_terminal::restore_inferior): Remove struct keyword.
65
66 2018-12-26  Simon Marchi  <simon.marchi@ericsson.com>
67
68         * build-id.c (build_id_to_debug_bfd): Enhance debug output.
69         * symfile.c (separate_debug_file_exists): Likewise.
70
71 2018-12-24  Andrew Burgess  <andrew.burgess@embecosm.com>
72
73         * c-exp.y (field_name): Allow DOUBLE_KEYWORD, INT_KEYWORD, LONG,
74         SHORT, SIGNED_KEYWORD, and UNSIGNED tokens to act as a field
75         names.
76         (typename_stoken): New function.
77
78 2018-12-24  Andrew Burgess  <andrew.burgess@embecosm.com>
79
80         * c-exp.y (field_name): New %token, and new rule.
81         (exp): Replace uses of 'name' with 'field_name' where appropriate.
82
83 2018-12-24  Andrew Burgess  <andrew.burgess@embecosm.com>
84
85         PR gdb/13368
86         * c-exp.y (typebase): Extend the comment.
87         (ident_tokens): Likewise.
88
89 2018-12-18  Tom Tromey  <tom@tromey.com>
90
91         * dwarf2read.c (dwarf2_find_containing_comp_unit): Don't take
92         address of sect_off.
93
94 2018-12-23  Joel Brobecker  <brobecker@adacore.com>
95
96         GDB 8.2.1 released.
97
98 2018-12-22  Andrew Burgess  <andrew.burgess@embecosm.com>
99
100         * riscv-tdep.c (riscv_call_arg_struct): Don't adjust size before
101         assigning locations.
102         (riscv_return_value): Take more care not to read/write outside of
103         argument buffer.  Cast return value between the declared type and
104         the abi type.
105
106 2018-12-22  Andrew Burgess  <andrew.burgess@embecosm.com>
107
108         * riscv-tdep.c (riscv_register_reggroup_p): Save and restore fcsr,
109         fflags, and frm registers.
110
111 2018-12-22  Andrew Burgess  <andrew.burgess@embecosm.com>
112
113         * riscv-tdep.c (riscv_dwarf_reg_to_regnum): New function.
114         (riscv_gdbarch_init): Register new function with gdbarch.
115         * riscv-tdep.h: New enum to define RISC-V DWARF register numbers.
116
117 2018-12-21  Simon Marchi  <simon.marchi@ericsson.com>
118
119         * minsyms.c (mst_str): New.
120         (minimal_symbol_reader::record_full): Add debug output.
121
122 2018-12-21  John Baldwin  <jhb@FreeBSD.org>
123
124         * fbsd-nat.c (fbsd_handle_debug_trap): Require pl.pl_flags to
125         equal PL_FLAG_SI.
126         (fbsd_nat_target::stopped_by_sw_breakpoint): Likewise.
127
128 2018-12-21  Paul Marechal  <paul.marechal@ericsson.com>
129
130         PR gdb/23974
131         * target.c (target_read_stralloc): Check for empty vector.
132
133 2018-12-21  Дилян Палаузов  <dilyan.palauzov@aegee.org>
134
135         * top.c (print_gdb_configuration): Print "--without-python"
136         if GDB was configured without Python.
137
138 2018-12-21  Andrew Burgess  <andrew.burgess@embecosm.com>
139
140         * riscv-tdep.c (riscv_scan_prologue): Use plongest to format
141         a signed offset as a string.
142
143 2018-12-21  Dave Murphy  <davem@devkitpro.org>
144
145         * dtrace-probe.c (dtrace_static_probe_ops): Explicit zero
146         initialise.
147         * probe.c (any_static_probe_ops): Ditto.
148         * record-btrace.c (record_btrace_thread_observer_token): Ditto.
149         * stap-probe.c (stap_static_probe_ops): Ditto.
150         * tui/tui-hooks.c (tui_observers_token): Ditto.
151         * unittests/observable-selftests.c (token1, token2, token3): Ditto.
152
153 2018-12-19  Andrew Burgess  <andrew.burgess@embecosm.com>
154
155         * gdb/dummy-frame.c (default_dummy_id): Defined new function.
156         * gdb/dummy-frame.h (default_dummy_id): Declare new function.
157         * gdb/frame-unwind.c (default_unwind_pc): Define new function.
158         (default_unwind_sp): Define new function.
159         * gdb/frame-unwind.h (default_unwind_pc): Declare new function.
160         (default_unwind_sp): Declare new function.
161         * gdb/frame.c (frame_unwind_pc): Assume gdbarch_unwind_pc is
162         available.
163         (get_frame_sp): Assume that gdbarch_unwind_sp is available.
164         * gdb/gdbarch.c: Regenerate.
165         * gdb/gdbarch.h: Regenerate.
166         * gdb/gdbarch.sh: Update definition of dummy_id, unwind_pc, and
167         unwind_sp.  Add additional header files to be included in
168         generated file.
169
170 2018-12-19  Dimitar Dimitrov  <dimitar@dinux.eu>
171
172         * nat/linux-ptrace.c (linux_ptrace_test_ret_to_nx): Remove
173         sp clobbers.
174
175 2018-12-17  Andrew Burgess  <andrew.burgess@embecosm.com>
176
177         * dwarf2read.c (struct dwarf2_cu): Convert the fields 'mark',
178         'has_loclist', 'checked_producer', 'producer_is_gxx_lt_4_6',
179         'producer_is_gcc_lt_4_3', 'producer_is_icc_lt_14',
180         'processing_has_namespace_info' from unsigned int to bool.  Update
181         comments.
182         (producer_is_icc_lt_14): Update return type.
183         (producer_is_gcc_lt_4_3): Likewise.
184         (producer_is_gxx_lt_4_6): Likewise.
185         (process_die): Write true instead of 1 into predicate fields.
186         (dwarf2_start_symtab): Likewise.
187         (var_decode_location): Likewise.
188         (dwarf2_mark_helper): Likewise.
189         (dwarf2_mark): Likewise.
190         (dwarf2_clear_marks): Write false instead of 0 into predicate
191         field.
192         (dwarf2_cu::dwarf2_cu): Initialise predicate fields to false, not
193         0.
194
195 2018-12-17  Szabolcs Nagy  <szabolcs.nagy@arm.com>
196
197         * nat/aarch64-sve-linux-ptrace.h: Include signal.h instead of
198         asm/sigcontext.h.
199
200 2018-12-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
201
202         * nat/linux-ptrace.c (kill_child): Fix ARI warning by removing
203         warning trailing new line.
204
205 2018-12-16  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
206
207         * nat/linux-ptrace.c (kill_child): New function.
208         (linux_ptrace_test_ret_to_nx): Use kill_child instead of local code.
209         Add a call to kill_child in case of early return after fork.
210         (linux_check_ptrace_features): Use kill_child instead of local code.
211         (linux_test_for_tracefork): Likewise.
212
213 2018-12-14  Tom Tromey  <tom@tromey.com>
214
215         * Makefile.in: Remove "alloca" comment.
216         (INFOFILES): Remove.
217         (local-maintainer-clean): Don't use INFOFILES.
218
219 2018-12-13  John Baldwin  <jhb@FreeBSD.org>
220
221         * syscalls/update-freebsd.sh: New file.
222         * syscalls/freebsd.xml: Regenerate.
223
224 2018-12-13  John Baldwin  <jhb@FreeBSD.org>
225
226         * NEWS: Add entry documenting system call aliases.
227         * break-catch-syscall.c (catch_syscall_split_args): Pass 'result'
228         to get_syscalls_by_name.
229         * gdbarch.sh (UNKNOWN_SYSCALL): Remove.
230         * gdbarch.h: Regenerate.
231         * syscalls/gdb-syscalls.dtd (syscall): Add alias attribute.
232         * xml-syscall.c [!HAVE_LIBEXPAT] (get_syscalls_by_name): Rename
233         from get_syscall_by_name.  Now accepts a pointer to a vector of
234         integers and returns a bool.
235         [HAVE_LIBEXPAT] (struct syscall_desc): Add alias member.
236         (syscall_create_syscall_desc): Add alias parameter and pass it to
237         syscall_desc constructor.
238         (syscall_start_syscall): Handle alias attribute.
239         (syscall_attr): Add alias attribute.
240         (xml_get_syscalls_by_name): Rename from xml_get_syscall_number.
241         Now accepts a pointer to a vector of integers and returns a
242         bool.  Add syscalls whose alias or name matches the requested
243         name.
244         (get_syscalls_by_name): Rename from get_syscall_by_name.  Now
245         accepts a pointer to a vector of integers and returns a bool.
246         * xml-syscall.h (get_syscalls_by_name): Likewise.
247
248 2018-12-13  John Baldwin  <jhb@FreeBSD.org>
249
250         * break-catch-syscall.c (catch_syscall_split_args): Pass 'result'
251         to get_syscalls_by_group.
252         * xml-syscall.c [!HAVE_LIBEXPAT] (get_syscalls_by_group): Return
253         false.
254         [HAVE_LIBEXPAT] (xml_list_syscalls_by_group): Append syscall
255         numbers to an existing vector of integers and return a bool.
256         (get_syscalls_by_group): Accept pointer to vector of integers
257         and change return type to bool.
258         * xml-syscall.h (get_syscalls_by_group): Likewise.
259
260 2018-12-13  Jim Wilson  <jimw@sifive.com>
261
262         * riscv-tdep.c (riscv_print_one_register_info): For MSTATUS, add
263         comment for SD field, and correct xlen calculation.  For MISA, add
264         comment for MXL field, add call to register_size, and correct base
265         calculation.
266
267 2018-12-13  Stafford Horne  <shorne@gmail.com>
268
269         * NEWS(New targets): Add or1k*-*-linux*.
270
271 2018-12-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
272
273         * nat/linux-osdata.c (linux_xfer_osdata_info_os_types): Forward
274         declare on one line to fix ARI warning.
275
276 2018-12-12  Andrew Burgess  <andrew.burgess@embecosm.com>
277
278         * infrun.c (infcall_suspend_state::infcall_suspend_state): New.
279         (infcall_suspend_state::registers): New.
280         (infcall_suspend_state::restore): New.
281         (infcall_suspend_state::thread_suspend): Rename to...
282         (infcall_suspend_state::m_thread_suspend): ...this.
283         (infcall_suspend_state::registers): Rename to...
284         (infcall_suspend_state::m_registers): ...this.
285         (infcall_suspend_state::siginfo_gdbarch): Rename to...
286         (infcall_suspend_state::m_siginfo_gdbarch): ...this.
287         (infcall_suspend_state::siginfo_data): Rename to...
288         (infcall_suspend_state::m_siginfo_data): ...this.
289         (save_infcall_suspend_state): Rewrite to use infcall_suspend_state
290         constructor.
291         (restore_infcall_suspend_state): Rewrite to use
292         infcall_suspend_state::restore method.
293         (get_infcall_suspend_state_regcache): Use
294         infcall_suspend_state::registers method.
295
296 2018-12-12  Andrew Burgess  <andrew.burgess@embecosm.com>
297
298         * riscv-tdep.c (riscv_call_arg_scalar_float): Unnamed (variadic)
299         arguments are passed in integer registers.
300         (riscv_call_arg_complex_float): Likewise.
301
302 2018-12-11  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
303
304         * nat/linux-osdata.c (common_getter): New function.
305         (struct osdata_type): Change getter to take_snapshot.
306         Add LONGEST len_avail and struct buffer buffer.
307         Change all elements in the initializer.
308         Add an element for the list of types.
309         (linux_xfer_osdata_info_os_types): New function.
310         (linux_common_xfer_osdata): Use common_getter for the list of types.
311         Replace getter call by common_getter.
312         (linux_xfer_osdata_cpus): Remove args READBUF, OFFSET, LEN.
313         Add arg BUFFER.  Only keep the code that adds data in BUFFER.
314         (linux_xfer_osdata_fds): Likewise.
315         (linux_xfer_osdata_modules): Likewise.
316         (linux_xfer_osdata_msg): Likewise.
317         (linux_xfer_osdata_processes): Likewise.
318         (linux_xfer_osdata_processgroups): Likewise.
319         (linux_xfer_osdata_sem): Likewise.
320         (linux_xfer_osdata_shm): Likewise.
321         (linux_xfer_osdata_isockets): Likewise.
322         (linux_xfer_osdata_threads): Likewise.
323
324 2018-12-11  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
325
326         * nat/linux-osdata.c: Removed various trailing spaces.
327
328 2018-12-10  Andrew Burgess  <andrew.burgess@embecosm.com>
329
330         * riscv-tdep.c (riscv_register_name): Fix ARI warning by removing
331         leading whitespace before #include line.
332
333 2018-12-08  Simon Marchi  <simon.marchi@ericsson.com>
334             Дилян Палаузов  <dilyan.palauzov@aegee.org>
335
336         PR gdb/23950
337         * configure.ac: Search for tgetent in libtinfow.
338         * configure: Re-generate.
339
340 2018-12-08  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
341
342         * linux-thread-db.c (struct thread_db_info): Add td_ta_delete_p.
343         (thread_db_err_str): Forward declare.
344         (delete_thread_db_info): Call td_ta_delete_p if available.
345         (try_thread_db_load_1): Acquire td_ta_delete address.
346         * nat/gdb_thread_db.h (td_ta_delete_ftype): Declare.
347
348 2018-12-08  Pedro Alves  <palves@redhat.com>
349
350         * source.c (forward_search_command): Rename to ...
351         (search_command_helper): ... this.  Add 'forward' parameter.
352         Tweak to use a gdb::def_vector<char> instead of a xrealloc'ed
353         buffer.  Handle backward searches too.
354         (forward_search_command, reverse_search_command): Reimplement by
355         calling search_command_helper.
356
357 2018-12-07  Andrew Burgess  <andrew.burgess@embecosm.com>
358
359         * .dir-locals.el: Copy most of the settings from c-mode over to
360         c++-mode.
361
362 2018-12-08  Stafford Horne  <shorne@gmail.com>
363
364         * Makefile.in (ALL_TARGET_OBS): Add or1k-linux-tdep.o.
365         * configure.tgt: Add or1k*-*-linux*.
366         * or1k-linux-tdep.c: New file.
367         * or1k-tdep.c (or1k_gdbarch_init): Call gdbarch_init_osabi.
368
369 2018-12-07  Pedro Alves  <palves@redhat.com>
370
371         * dwarf2read.c (get_gdb_index_contents_from_section): Use
372         gdb::make_array_view.
373
374 2018-12-05  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
375
376         * language.c (_initialize_language): Fix leak by assigning
377         a static string to language.  Same for range and case_sensitive,
378         even if no leak is detected for these variables.
379
380 2018-12-05  John Baldwin  <jhb@FreeBSD.org>
381
382         * configure: Re-generate.
383         * configure.ac: Use separate sed expressions to escape variables
384         in auto-load directories.
385
386 2018-12-05  Andrew Burgess  <andrew.burgess@embecosm.com>
387
388         * riscv-tdep.c (riscv_features_from_gdbarch_info): New function.
389         (riscv_find_default_target_description): Use new function to
390         extract feature from gdbarch_info.
391         (riscv_gdbarch_init): Add error checks for xlen and flen between
392         target description and bfd headers.  Be smarter about when we
393         think the hardware floating point abi should be used.
394
395 2018-12-05  Alan Hayward  <alan.hayward@arm.com>
396
397         * nat/aarch64-linux-hw-point.c
398         (aarch64_linux_any_set_debug_regs_state): New function.
399         * nat/aarch64-linux-hw-point.h
400         (aarch64_linux_any_set_debug_regs_state): New declaration.
401         * nat/aarch64-linux.c (aarch64_linux_new_thread): Check if any
402         BPs or WPs are set.
403
404 2018-11-30  John Baldwin  <jhb@FreeBSD.org>
405
406         * common/filestuff.c [HAVE_KINFO_GETFILE]: Include headers.
407         (fdwalk) [HAVE_KINFO_GETFILE]: Use kinfo_getfile.
408
409 2018-11-30  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
410             Simon Marchi  <simon.marchi@ericsson.com>
411
412         * linespec.c (symtab_vector_up): Remove.
413         (symtabs_from_filename): Change return type to std::vector.
414         (collect_symtabs_from_filename): Likewise.
415         (create_sals_line_offset): Assign return value of
416         collect_symtabs_from_filename to *ls->file_symtabs.
417         (convert_explicit_location_to_linespec): Remove call to release.
418         (parse_linespec): Likewise.
419         (symtab_collector) <symtab_collector>: Remove initialization of
420         m_symtabs.
421         <release_symtabs>: Change return type to std::vector<symtab *>.
422         <operator ()>: Adjust.
423
424 2018-11-30  John Baldwin  <jhb@FreeBSD.org>
425
426         * fbsd-nat.c [__FreeBSD_version >= 700009] (USE_SIGINFO): Macro
427         defined.
428         (union sigval32, struct siginfo32, fbsd_siginfo_size)
429         (fbsd_convert_siginfo): Make conditional on USE_SIGINFO instead
430         of KERN_PROC_AUXV and PT_LWPINFO.
431         (fbsd_nat_target::xfer_partial): Define method unconditionally.
432         Make TARGET_OBJECT_SIGNAL_INFO conditional on USE_SIGINFO.
433         Make TARGET_OBJECT_AUXV conditional on KERN_PROC_AUXV.
434         Make TARGET_OBJECT_FREEBSD_VMMAP and
435         TARGET_OBJECT_FREEBSD_PS_STRINGS conditional on KERN_PROC_VMMAP
436         and KERN_PROC_PS_STRINGS.
437         * fbsd-nat.h: Include <sys/proc.h>.
438         (fbsd_nat_target::xfer_partial): Declare method unconditionally.
439
440 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
441
442         * riscv-linux-nat.c: Add 'inferior.h' and 'target-descriptions.h'
443         header files.
444         (riscv_linux_nat_target::read_description): New method.
445
446 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
447
448         * arch/riscv.h (riscv_gdbarch_features::hash): New method.
449         * arch/riscv.c (struct riscv_gdbarch_features_hasher): New.
450         (riscv_tdesc_cache): New global.
451         (riscv_create_target_description): Look in the cache before
452         creating a new target description.
453
454 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
455
456         * arch/riscv.h (riscv_gdb_features::operator==): New.
457         (riscv_gdb_features::operator!=): New.
458         * riscv-tdep.c (riscv_gdbarch_init): Make use of the inequality
459         operator.
460
461 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
462
463         * arch/riscv.h (riscv_create_target_description): Make return type
464         const.
465         * arch/riscv.c (riscv_create_target_description): Likewise.
466         * riscv-tdep.c (riscv_find_default_target_description): Likewise.
467
468 2018-11-30  Jan Kratochvil  <jan.kratochvil@redhat.com>
469             Keith Seitz  <keiths@redhat.com>
470             Tom Tromey  <tom@tromey.com>
471             Sergio Durigan Junior  <sergiodj@redhat.com>
472
473         https://bugzilla.redhat.com/show_bug.cgi?id=1613614
474         * dwarf2read.c (dwarf2_find_containing_comp_unit): Add
475         'mid_cu->length' to '*cu_off' when checking if 'sect_off' is
476         inside the CU.
477
478 2018-11-30  Pedro Alves  <palves@redhat.com>
479
480         * aix-thread.c (aix_thread_target) <aix_thread_target>: Delete.
481         <stratum>: New override.
482         * bfd-target.c (aix_thread_target) <aix_thread_target>: Delete.
483         <stratum>: New override.
484         * bsd-uthread.c (bsd_uthread_target) <bsd_uthread_target>: Delete.
485         <stratum>: New override.
486         * exec.c (exec_target) <exec_target>: Delete.
487         <stratum>: New override.
488         * gdbarch-selftests.c (register_to_value_test): Adjust to use the
489         stratum method instead of the to_stratum field.
490         * linux-thread-db.c (thread_db_target) <thread_db_target>: Delete.
491         <stratum>: New override.
492         (thread_db_target::thread_db_target): Delete.
493         * make-target-delegates (print_class): Don't print a ctor
494         declaration.  Print a stratum method override declaration.
495         * process-stratum-target.h (process_stratum_target)
496         <process_stratum_target>: Delete.
497         <stratum>: New override.
498         * ravenscar-thread.c (ravenscar_thread_target)
499         <ravenscar_thread_target>: Delete.
500         <stratum>: New override.
501         * record-btrace.c (record_btrace_target)
502         <record_btrace_target>: Delete.
503         <stratum>: New override.
504         * record-full.c (record_full_base_target)
505         <record_full_base_target>: Delete.
506         <stratum>: New override.
507         * record.c (record_disconnect, record_detach)
508         (record_mourn_inferior, record_kill): Adjust to use the stratum
509         method instead of the to_stratum field.
510         * regcache.c (cooked_read_test, cooked_write_test): Likewise.
511         * sol-thread.c (sol_thread_target)
512         <sol_thread_target>: Delete.
513         <stratum>: New override.
514         * spu-multiarch.c (spu_multiarch_target)
515         <spu_multiarch_target>: Delete.
516         <stratum>: New override.
517         * target-delegates.c: Regenerate.
518         * target.c (target_stack::push, target_stack::unpush)
519         (pop_all_targets_above, pop_all_targets_at_and_above)
520         (info_target_command, target_require_runnable)
521         (target_stack::find_beneath): Adjust to use the stratum method
522         instead of the to_stratum field.
523         (dummy_target::dummy_target): Delete.
524         (dummy_target::stratum): New.
525         (debug_target::debug_target): Delete.
526         (debug_target::stratum): New.
527         (maintenance_print_target_stack): Adjust to use the stratum method
528         instead of the to_stratum field.
529         * target.h (struct target_ops) <stratum>: New method.
530         <to_stratum>: Delete.
531         <is_pushed>: Adjust to use the stratum method
532         instead of the to_stratum field.
533
534 2018-11-30  Pedro Alves  <palves@redhat.com>
535
536         * corelow.c (core_target) <has_all_memory, has_execution>: New
537         overrides.
538         * inf-child.c (inf_child_target::has_all_memory)
539         (inf_child_target::has_memory, inf_child_target::has_stack)
540         (inf_child_target::has_registers)
541         (inf_child_target::has_execution): Delete.
542         * inf-child.h (inf_child_target) <has_all_memory, has_memory,
543         has_stack, has_registers, has_execution>: Delete.
544         * process-stratum-target.c
545         (process_stratum_target::has_all_memory)
546         (process_stratum_target::has_memory)
547         (process_stratum_target::has_stack)
548         (process_stratum_target::has_registers)
549         (process_stratum_target::has_execution): New.
550         * process-stratum-target.h (process_stratum_target)
551         <has_all_memory, has_memory, has_stack, has_registers,
552         has_execution>: New method overrides.
553         * ravenscar-thread.c (ravenscar_thread_target) <has_all_memory,
554         has_memory, has_stack, has_registers, has_execution>: Delete.
555         * remote-sim.c (gdbsim_target) <has_stack, has_registers,
556         has_execution>: Delete.
557         * remote.c (remote_target) <has_all_memory, has_memory, has_stack,
558         has_registers, has_execution>: Delete.
559         * target.c (default_child_has_all_memory)
560         (default_child_has_memory, default_child_has_stack)
561         (default_child_has_registers, default_child_has_execution):
562         Delete.
563         * target.h (default_child_has_all_memory)
564         (default_child_has_memory, default_child_has_stack)
565         (default_child_has_registers, default_child_has_execution):
566         Delete.
567         * tracefile.h (tracefile_target) <has_execution>: New override.
568
569 2018-11-30  Pedro Alves  <palves@redhat.com>
570
571         * Makefile.in (COMMON_SFILES): Add process-stratum-target.c.
572         * bsd-kvm.c: Include "process-stratum-target.h".
573         (bsd_kvm_target): Now inherits from process_stratum_target.
574         (bsd_kvm_target::bsd_kvm_target): Default it.
575         * corelow.c: Include "process-stratum-target.h".
576         (core_target): Now inherits from process_stratum_target.
577         (core_target::core_target): Don't set to_stratum here.
578         * inf-child.c (inf_child_target::inf_child_target): Delete.
579         * inf-child.h: Include "process-stratum-target.h".
580         (inf_child_target): Inherit from process_stratum_target.
581         (inf_child_target) <inf_child_target>: Default it.
582         <can_async_p, supports_non_stop, supports_disable_randomization>:
583         Delete overrides.
584         * process-stratum-target.c: New file.
585         * process-stratum-target.h: New file.
586         * remote-sim.c: Include "process-stratum-target.h".
587         (gdbsim_target): Inherit from process_stratum_target.
588         <gdbsim_target>: Default it.
589         * remote.c: Include "process-stratum-target.h".
590         (remote_target): Inherit from process_stratum_target.
591         <remote_target>: Default it.
592         * target.c (default_thread_address_space)
593         (default_thread_architecture): Delete.
594         * target.h (target_ops) <thread_architecture>: Now returns NULL by
595         default.
596         <thread_address_space>: Ditto.
597         * test-target.h: Include "process-stratum-target.h" instead of
598         "target.h".
599         (test_target_ops): Inherit from process_stratum_target.
600         <test_target_ops>: Default it.
601         * tracefile.c (tracefile_target::tracefile_target): Delete.
602         * tracefile.h: Include "process-stratum-target.h".
603         (tracefile_target): Inherit from process_stratum_target.
604         <tracefile_target>: Default it.
605         * target-delegates.c: Regenerate.
606
607 2018-11-30  Pedro Alves  <palves@redhat.com>
608
609         * Makefile.in (COMMON_SFILES): Add test-target.c.
610         * gdbarch-selftests.c: Include "test-target.h".
611         * regcache.c: Include "test-target.h".
612         * target.c (test_target_info, test_target_ops::info): Move to ...
613         * test-target.c: ... this new file.
614         * target.h (test_target_ops): Move to ...
615         * test-target.h: ... this new file.
616
617 2018-11-29  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
618
619         * source.c (forward_search_command): Fix leak by using
620         xrealloc even for the first allocation in the loop, as buf
621         is static.
622
623 2018-11-29  Rajendra SY  <rajendra.sy@gmail.com>
624
625         PR gdb/23093
626         * gdb/fbsd-tdep.c (fbsd_gdb_signal_from_target)
627         (fbsd_gdb_signal_to_target): New.
628         (fbsd_init_abi): Install gdbarch "signal_from_target" and
629         "signal_to_target" methods.
630
631 2018-11-29  Tom Tromey  <tom@tromey.com>
632
633         * valarith.c (value_x_unop): Don't set argvec[3].
634
635 2018-11-26  Simon Marchi  <simon.marchi@ericsson.com>
636
637         PR gdb/23917
638         * sparc-linux-nat.c (sparc_linux_nat_target): Remove extraneous
639         semicolon.
640
641 2018-11-26  Pedro Alves  <palves@redhat.com>
642
643         * procfs.c (procfs_notice_thread): Replace uses of
644         in_thread_list/is_exited with find_thread_ptid/THREAD_EXITED.
645         * sol-thread.c (sol_thread_target::wait)
646         (sol_update_thread_list_callback): Likewise.
647
648 2018-11-25  Tom Tromey  <tom@tromey.com>
649
650         * ui-out.c (ui_out::field_fmt): Remove comment.
651         * tui/tui-out.c (tui_ui_out::do_field_fmt): Remove comment.
652         * mi/mi-out.c (mi_ui_out::do_field_fmt): Remove comment.
653
654 2018-11-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
655
656         * source.c (open_source_file): Leak fixed in '8e6a5953e1d Fix 4K
657         leak in open_source_file' has been partially undone by '2179fbc36d23
658         Return scoped_fd from open_source_file'. Re-add the transfer of
659         current s->fullname to the unique_xmalloc_ptr fullname given
660         to find_and_open_source.
661
662 2018-11-23  Pedro Alves  <palves@redhat.com>
663
664         * gdbthread.h (enum thread_state): Move comments here.
665         (is_running, is_stopped, is_exited): Remove declarations.
666
667 2018-11-22  Pedro Alves  <palves@redhat.com>
668
669         * Makefile.in (COMMON_SFILES): Add thread-iter.c.
670         * breakpoint.c (breakpoints_should_be_inserted_now): Replace
671         ALL_NON_EXITED_THREADS with all_non_exited_threads.
672         (print_one_breakpoint_location): Replace ALL_INFERIORS with
673         all_inferiors.
674         * bsd-kvm.c: Include inferior.h.
675         * btrace.c (btrace_free_objfile): Replace ALL_NON_EXITED_THREADS
676         with all_non_exited_threads.
677         * common/filtered-iterator.h: New.
678         * common/safe-iterator.h: New.
679         * corelow.c (core_target_open): Don't call init_thread_list here.
680         * darwin-nat.c (thread_info_from_private_thread_info): Replace
681         ALL_THREADS with all_threads.
682         * fbsd-nat.c (fbsd_nat_target::resume): Replace
683         ALL_NON_EXITED_THREADS with inf->non_exited_threads.
684         * fbsd-tdep.c (fbsd_make_corefile_notes): Replace
685         ALL_NON_EXITED_THREADS with inf->non_exited_threads.
686         * fork-child.c (postfork_hook): Don't call init_thread_list here.
687         * gdbarch-selftests.c (register_to_value_test): Adjust.
688         * gdbthread.h: Don't include "inferior.h" here.
689         (struct inferior): Forward declare.
690         (enum step_over_calls_kind): Moved here from inferior.h.
691         (thread_info::deletable): Definition moved to thread.c.
692         (find_thread_ptid (inferior *, ptid_t)): Declare.
693         (ALL_THREADS, ALL_THREADS_BY_INFERIOR, ALL_THREADS_SAFE): Delete.
694         Include "thread-iter.h".
695         (all_threads, all_non_exited_threads, all_threads_safe): New.
696         (any_thread_p): Declare.
697         (thread_list): Delete.
698         * infcmd.c (signal_command): Replace ALL_NON_EXITED_THREADS with
699         all_non_exited_threads.
700         (proceed_after_attach_callback): Delete.
701         (proceed_after_attach): Take an inferior pointer instead of an
702         integer PID.  Adjust to use range-for.
703         (attach_post_wait): Pass down inferior pointer instead of pid.
704         Use range-for instead of ALL_NON_EXITED_THREADS.
705         (detach_command): Remove init_thread_list call.
706         * inferior-iter.h: New.
707         * inferior.c (struct delete_thread_of_inferior_arg): Delete.
708         (delete_thread_of_inferior): Delete.
709         (delete_inferior, exit_inferior_1): Use range-for with
710         inf->threads_safe() instead of iterate_over_threads.
711         (inferior_appeared): Call init_thread_list here.
712         (discard_all_inferiors): Use all_non_exited_inferiors.
713         (find_inferior_id, find_inferior_pid): Use all_inferiors.
714         (iterate_over_inferiors): Use all_inferiors_safe.
715         (have_inferiors, number_of_live_inferiors): Use
716         all_non_exited_inferiors.
717         (number_of_inferiors): Use all_inferiors and std::distance.
718         (print_inferior): Use all_inferiors.
719         * inferior.h: Include gdbthread.h.
720         (enum step_over_calls_kind): Moved to gdbthread.h.
721         (struct inferior) <thread_list>: New field.
722         <threads, non_exited_threads, threads_safe>: New methods.
723         (ALL_INFERIORS): Delete.
724         Include "inferior-iter.h".
725         (ALL_NON_EXITED_INFERIORS): Delete.
726         (all_inferiors_safe, all_inferiors, all_non_exited_inferiors): New
727         functions.
728         * inflow.c (child_interrupt, child_pass_ctrlc): Replace
729         ALL_NON_EXITED_THREADS with all_non_exited_threads.
730         * infrun.c (follow_exec): Use all_threads_safe.
731         (clear_proceed_status, proceed): Use all_non_exited_threads.
732         (init_wait_for_inferior): Don't clear inline frame state here.
733         (infrun_thread_stop_requested, for_each_just_stopped_thread): Use
734         all_threads instead of ALL_NON_EXITED_THREADS.
735         (random_pending_event_thread): Use all_non_exited_threads instead
736         of ALL_NON_EXITED_THREADS.  Use a lambda for repeated code.
737         (clean_up_just_stopped_threads_fsms): Use all_non_exited_threads
738         instead of ALL_NON_EXITED_THREADS.
739         (handle_no_resumed): Use all_non_exited_threads instead of
740         ALL_NON_EXITED_THREADS.  Use all_inferiors instead of
741         ALL_INFERIORS.
742         (restart_threads, switch_back_to_stepped_thread): Use
743         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
744         * linux-nat.c (check_zombie_leaders): Replace ALL_INFERIORS with
745         all_inferiors.
746         (kill_unfollowed_fork_children): Use inf->non_exited_threads
747         instead of ALL_NON_EXITED_THREADS.
748         * linux-tdep.c (linux_make_corefile_notes): Use
749         inf->non_exited_threads instead of ALL_NON_EXITED_THREADS.
750         * linux-thread-db.c (thread_db_target::update_thread_list):
751         Replace ALL_INFERIORS with all_inferiors.
752         (thread_db_target::thread_handle_to_thread_info): Use
753         inf->non_exited_threads instead of ALL_NON_EXITED_THREADS.
754         * mi/mi-interp.c (multiple_inferiors_p): New.
755         (mi_on_resume_1): Simplify using all_non_exited_threads and
756         multiple_inferiors_p.
757         * mi/mi-main.c (mi_cmd_thread_list_ids): Use all_non_exited_threads
758         instead of ALL_NON_EXITED_THREADS.
759         * nto-procfs.c (nto_procfs_target::open): Don't call
760         init_thread_list here.
761         * record-btrace.c (record_btrace_target_open)
762         (record_btrace_target::stop_recording)
763         (record_btrace_target::close)
764         (record_btrace_target::record_is_replaying)
765         (record_btrace_target::resume, record_btrace_target::wait)
766         (record_btrace_target::record_stop_replaying): Use
767         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
768         * record-full.c (record_full_wait_1): Use all_non_exited_threads
769         instead of ALL_NON_EXITED_THREADS.
770         * regcache.c (cooked_read_test): Remove reference to global
771         thread_list.
772         * remote-sim.c (gdbsim_target::create_inferior): Don't call
773         init_thread_list here.
774         * remote.c (remote_target::update_thread_list): Use
775         all_threads_safe instead of ALL_NON_EXITED_THREADS.
776         (remote_target::process_initial_stop_replies): Replace
777         ALL_INFERIORS with all_non_exited_inferiors and use
778         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
779         (remote_target::open_1): Don't call init_thread_list here.
780         (remote_target::append_pending_thread_resumptions)
781         (remote_target::remote_resume_with_hc): Use all_non_exited_threads
782         instead of ALL_NON_EXITED_THREADS.
783         (remote_target::commit_resume)
784         (remote_target::remove_new_fork_children): Replace ALL_INFERIORS
785         with all_non_exited_inferiors and use all_non_exited_threads
786         instead of ALL_NON_EXITED_THREADS.
787         (remote_target::kill_new_fork_children): Use
788         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.  Remove
789         init_thread_list and init_wait_for_inferior calls.
790         (remote_target::remote_btrace_maybe_reopen)
791         (remote_target::thread_handle_to_thread_info): Use
792         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
793         * target.c (target_terminal::restore_inferior)
794         (target_terminal_is_ours_kind): Replace ALL_INFERIORS with
795         all_non_exited_inferiors.
796         * thread-iter.c: New file.
797         * thread-iter.h: New file.
798         * thread.c: Include "inline-frame.h".
799         (thread_list): Delete.
800         (clear_thread_inferior_resources): Call clear_inline_frame_state.
801         (init_thread_list): Use all_threads_safe instead of
802         ALL_THREADS_SAFE.  Adjust to per-inferior thread lists.
803         (new_thread): Adjust to per-inferior thread lists.
804         (add_thread_silent): Pass inferior to find_thread_ptid.
805         (thread_info::deletable): New, moved from the header.
806         (delete_thread_1): Adjust to per-inferior thread lists.
807         (find_thread_global_id): Use inf->threads().
808         (find_thread_ptid): Use find_inferior_ptid and pass inferior to
809         find_thread_ptid.
810         (find_thread_ptid(inferior*, ptid_t)): New overload.
811         (iterate_over_threads): Use all_threads_safe.
812         (any_thread_p): New.
813         (thread_count): Use all_threads and std::distance.
814         (live_threads_count): Use all_non_exited_threads and
815         std::distance.
816         (valid_global_thread_id): Use all_threads.
817         (in_thread_list): Use find_thread_ptid.
818         (first_thread_of_inferior): Adjust to per-inferior thread lists.
819         (any_thread_of_inferior, any_live_thread_of_inferior): Use
820         inf->non_exited_threads().
821         (prune_threads, delete_exited_threads): Use all_threads_safe.
822         (thread_change_ptid): Pass inferior pointer to find_thread_ptid.
823         (set_resumed, set_running): Use all_non_exited_threads.
824         (is_thread_state, is_stopped, is_exited, is_running)
825         (is_executing): Delete.
826         (set_executing, set_stop_requested, finish_thread_state): Use
827         all_non_exited_threads.
828         (print_thread_info_1): Use all_inferiors and all_threads.
829         (thread_apply_all_command): Use all_non_exited_threads.
830         (thread_find_command): Use all_threads.
831         (update_threads_executing): Use all_non_exited_threads.
832         * tid-parse.c (parse_thread_id): Use inf->threads.
833         * x86-bsd-nat.c (x86bsd_dr_set): Use inf->non_exited_threads ().
834
835 2018-11-22  Pedro Alves  <palves@redhat.com>
836
837         * infrun.c (follow_exec) <set follow-exec new>: Add thread and
838         switch to it before calling into try_open_exec_file.
839
840 2018-11-22  Pedro Alves  <palves@redhat.com>
841
842         * cli/cli-interp.c (cli_on_user_selected_context_changed): Use
843         inferior_thread instead of find_thread_ptid, and only when
844         inferior_ptid is not null_ptid.
845         * inferior.c (add_inferior): Don't include target_pid_to_str
846         output when the inferior is not started.
847         * python/py-inferior.c (python_on_normal_stop): Don't use
848         find_thread_ptid.
849         (tui_on_user_selected_context_changed): Use inferior_thread
850         instead of find_thread_ptid, and only when inferior_ptid is not
851         null_ptid.
852
853 2018-11-21  Benno Fünfstück  <benno.fuenfstueck@gmail.com>
854
855         PR python/23714
856         * gdb/python/python.c (execute_gdb_command): Call
857         prevent_dont_repeat earlier to avoid affecting dont_repeat.
858
859 2018-11-21  Andrew Burgess  <andrew.burgess@embecosm.com>
860
861         * Makefile.in (ALL_TARGET_OBS): Add arch/riscv.o.
862         (HFILES_NO_SRCDIR): Add arch/riscv.h.
863         * arch/riscv.c: New file.
864         * arch/riscv.h: New file.
865         * configure.tgt: Add cpu_obs list of riscv, move riscv-tdep.o into
866         this list, and add arch/riscv.o.
867         * features/Makefile: Add riscv features.
868         * features/riscv/32bit-cpu.c: New file.
869         * features/riscv/32bit-cpu.xml: New file.
870         * features/riscv/32bit-csr.c: New file.
871         * features/riscv/32bit-csr.xml: New file.
872         * features/riscv/32bit-fpu.c: New file.
873         * features/riscv/32bit-fpu.xml: New file.
874         * features/riscv/64bit-cpu.c: New file.
875         * features/riscv/64bit-cpu.xml: New file.
876         * features/riscv/64bit-csr.c: New file.
877         * features/riscv/64bit-csr.xml: New file.
878         * features/riscv/64bit-fpu.c: New file.
879         * features/riscv/64bit-fpu.xml: New file.
880         * features/riscv/rebuild-csr-xml.sh: New file.
881         * riscv-tdep.c: Add 'arch/riscv.h' include.
882         (riscv_gdb_reg_names): Delete.
883         (csr_reggroup): New global.
884         (struct riscv_register_alias): Delete.
885         (struct riscv_register_feature): New structure.
886         (riscv_register_aliases): Delete.
887         (riscv_xreg_feature): New global.
888         (riscv_freg_feature): New global.
889         (riscv_virtual_feature): New global.
890         (riscv_csr_feature): New global.
891         (riscv_create_csr_aliases): New function.
892         (riscv_read_misa_reg): Delete.
893         (riscv_has_feature): Delete.
894         (riscv_isa_xlen): Simplify, just return cached xlen.
895         (riscv_isa_flen): Simplify, just return cached flen.
896         (riscv_has_fp_abi): Update for changes in struct gdbarch_tdep.
897         (riscv_register_name): Update to make use of tdesc_register_name.
898         Look up xreg and freg names in the new globals riscv_xreg_feature
899         and riscv_freg_feature.  Don't supply csr aliases here.
900         (riscv_fpreg_q_type): Delete.
901         (riscv_register_type): Use tdesc_register_type in almost all
902         cases, override the returned type in a few specific cases only.
903         (riscv_print_one_register_info): Handle errors reading registers.
904         (riscv_register_reggroup_p): Use tdesc_register_in_reggroup_p for
905         registers that are otherwise unknown to GDB.  Also check the
906         csr_reggroup.
907         (riscv_print_registers_info): Remove assert about upper register
908         number, and use gdbarch_register_reggroup_p instead of
909         short-cutting.
910         (riscv_find_default_target_description): New function.
911         (riscv_check_tdesc_feature): New function.
912         (riscv_add_reggroups): New function.
913         (riscv_setup_register_aliases): New function.
914         (riscv_init_reggroups): New function.
915         (_initialize_riscv_tdep): Add calls to setup CSR aliases, and
916         setup register groups.  Register new riscv debug variable.
917         * riscv-tdep.h: Add 'arch/riscv.h' include.
918         (struct gdbarch_tdep): Remove abi union, and add
919         riscv_gdbarch_features field.  Remove cached quad floating point
920         type, and provide initialisation for double type field.
921         * target-descriptions.c (maint_print_c_tdesc_cmd): Add riscv to
922         the list of targets using the feature based target descriptions.
923         * NEWS: Mention target description support.
924
925 2018-11-21  Pedro Alves  <palves@redhat.com>
926
927         * valops.c (find_method_list, value_find_oload_method_list)
928         (find_overload_match, find_oload_champ): Rename parameters and
929         locals.
930
931 2018-11-21  Pedro Alves  <palves@redhat.com>
932
933         * valops.c (find_method_list): Replace pointer and length
934         parameters with an gdb::array_view.  Adjust.
935         (value_find_oload_method_list): Likewise.
936         (find_overload_match): Use gdb::array_view for methods list.
937         Adjust to find_oload_champ interface change.
938         (find_oload_champ): 'xm_worker_vec' parameter now a pointer/array.
939         'num_fns' parameter now a size_t.  Eliminate 'fn_count' local.
940
941 2018-11-21  Pedro Alves  <palves@redhat.com>
942
943         * gdbtypes.c (compare_badness): Change type of parameters to const
944         reference.  Adjust to badness_vector being a std::vector now.
945         (rank_function): Adjust to badness_vector being a std::vector now.
946         * gdbtypes.h (badness_vector): Now a typedef to std::vector.
947         (LENGTH_MATCH): Delete.
948         (compare_badness): Change type of parameters to const reference.
949         (rank_function): Return a badness_vector by value now.
950         (find_overload_match): Adjust to badness_vector being a
951         std::vector now.  Remove cleanups.
952         (find_oload_champ_namespace): 'oload_champ_bv' parameter now a
953         badness_vector pointer.
954         (find_oload_champ_namespace_loop): 'oload_champ_bv' parameter now
955         a badness_vector pointer.  Adjust to badness_vector being a
956         std::vector now.  Remove cleanups.
957         (find_oload_champ): 'oload_champ_bv' parameter now
958         a badness_vector pointer.  Adjust to badness_vector being a
959         std::vector now.  Remove cleanups.
960
961 2018-11-21  Pedro Alves  <palves@redhat.com>
962
963         * cp-support.c (sym_return_val_size, sym_return_val_index)
964         (sym_return_val): Delete.
965         (overload_list_add_symbol): Add std::vector parameter.  Adjust to
966         add to the vector.
967         (make_symbol_overload_list): Adjust to return a std::vector
968         instead of maintaining a global open coded vector.
969         (make_symbol_overload_list_block): Add std::vector parameter.
970         (make_symbol_overload_list_block): Rename to ...
971         (add_symbol_overload_list_block): ... this and add std::vector
972         parameter.
973         (make_symbol_overload_list_namespace): Rename to ...
974         (add_symbol_overload_list_namespace): ... this and add std::vector
975         parameter.
976         (make_symbol_overload_list_adl_namespace): Rename to ...
977         (add_symbol_overload_list_adl_namespace): ... this and add
978         std::vector parameter.
979         (make_symbol_overload_list_adl): Delete.
980         (add_symbol_overload_list_adl): New.
981         (make_symbol_overload_list_using): Rename to ...
982         (add_symbol_overload_list_using): ... this and add std::vector
983         parameter.
984         (make_symbol_overload_list_qualified): Rename to ...
985         (add_symbol_overload_list_qualified): ... this and add std::vector
986         parameter.
987         * cp-support.h: Include "common/array-view.h" and <vector>.
988         (make_symbol_overload_list): Change return type to std::vector.
989         (make_symbol_overload_list_adl): Delete declaration.
990         (add_symbol_overload_list_adl): New declaration.
991         * valops.c (find_overload_match): Local 'oload_syms' now a
992         std::vector.
993         (find_oload_champ_namespace): 'oload_syms' parameter now a
994         std::vector pointer.
995         (find_oload_champ_namespace_loop): 'oload_syms' parameter now a
996         std::vector pointer.  Adjust to new make_symbol_overload_list
997         interface.
998
999 2018-11-21  Pedro Alves  <palves@redhat.com>
1000
1001         * common/array-view.h (array_view::splice(size_type, size_t)): New.
1002         (array_view::splice(size_type)): New.
1003         * eval.c (eval_call, evaluate_funcall): Adjust to use array_view.
1004         * extension.c (xmethod_worker::get_arg_types): Adjust to return an
1005         std::vector.
1006         (xmethod_worker::get_result_type): Adjust to use gdb::array_view.
1007         * extension.h: Include "common/array-view.h".
1008         (xmethod_worker::invoke): Adjust to use gdb::array_view.
1009         (xmethod_worker::get_arg_types): Adjust to return an std::vector.
1010         (xmethod_worker::get_result_type): Adjust to use gdb::array_view.
1011         (xmethod_worker::do_get_arg_types): Adjust to use std::vector.
1012         (xmethod_worker::do_get_result_type): Adjust to use
1013         gdb::array_view.
1014         * gdbtypes.c (rank_function): Adjust to use gdb::array_view.
1015         * gdbtypes.h: Include "common/array-view.h".
1016         (rank_function): Adjust to use gdb::array_view.
1017         * python/py-xmethods.c (python_xmethod_worker::invoke)
1018         (python_xmethod_worker::do_get_arg_types)
1019         (python_xmethod_worker::do_get_result_type)
1020         (python_xmethod_worker::invoke): Adjust to new interfaces.
1021         * valarith.c (value_user_defined_cpp_op, value_user_defined_op)
1022         (value_x_binop, value_x_unop): Adjust to use gdb::array_view.
1023         * valops.c (find_overload_match, find_oload_champ_namespace)
1024         (find_oload_champ_namespace_loop, find_oload_champ): Adjust to use
1025         gdb:array_view and the new xmethod_worker interfaces.
1026         * value.c (result_type_of_xmethod, call_xmethod): Adjust to use
1027         gdb::array_view.
1028         * value.h (find_overload_match, result_type_of_xmethod)
1029         (call_xmethod): Adjust to use gdb::array_view.
1030         * unittests/array-view-selftests.c: Add slicing tests.
1031
1032 2018-11-21  Pedro Alves  <palves@redhat.com>
1033
1034         * ada-lang.c (ada_evaluate_subexp): Adjust to pass an array_view.
1035         * common/array-view.h (make_array_view): New.
1036         * compile/compile-object-run.c (compile_object_run): Adjust to
1037         pass an array_view.
1038         * elfread.c (elf_gnu_ifunc_resolve_addr): Adjust.
1039         * eval.c (eval_call): Adjust to pass an array_view.
1040         (evaluate_subexp_standard): Adjust to pass an array_view.
1041         * gcore.c (call_target_sbrk): Adjust to pass an array_view.
1042         * guile/scm-value.c (gdbscm_value_call): Likewise.
1043         * infcall.c (push_dummy_code): Replace pointer + size parameters
1044         with an array_view parameter.
1045         (call_function_by_hand, call_function_by_hand_dummy): Likewise and
1046         adjust.
1047         * infcall.h: Include "common/array-view.h".
1048         (call_function_by_hand, call_function_by_hand_dummy): Replace
1049         pointer + size parameters with an array_view parameter.
1050         * linux-fork.c (inferior_call_waitpid): Adjust to use array_view.
1051         * linux-tdep.c (linux_infcall_mmap): Likewise.
1052         * objc-lang.c (lookup_objc_class, lookup_child_selector)
1053         (value_nsstring, print_object_command): Likewise.
1054         * python/py-value.c (valpy_call): Likewise.
1055         * rust-lang.c (rust_evaluate_funcall): Likewise.
1056         * spu-tdep.c (flush_ea_cache): Likewise.
1057         * valarith.c (value_x_binop, value_x_unop): Likewise.
1058         * valops.c (value_allocate_space_in_inferior): Likewise.
1059         * unittests/array-view-selftests.c (run_tests): Add
1060         gdb::make_array_view test.
1061
1062 2018-11-20  Andrew Burgess  <andrew.burgess@embecosm.com>
1063
1064         * cli-out.c (cli_ui_out::do_field_int): Use string_printf rather
1065         than a fixed size buffer.
1066
1067 2018-11-20  Andrew Burgess  <andrew.burgess@embecosm.com>
1068
1069         * breakpoint.c (print_one_breakpoint_location): Reduce whitespace,
1070         and remove insertion of extra spaces in GDB's output.
1071         * cli-out.c (cli_ui_out::do_field_fmt): Update header comment.
1072         Layout field into a temporary buffer, and then output it as a
1073         string field.
1074
1075 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1076
1077         * NEWS: Document the language choice done by
1078         'info [types|functions|variables]|rbreak'.
1079
1080 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1081
1082         * symtab.c (treg_matches_sym_type_name): Use
1083         scoped_switch_to_sym_language_if_auto instead of local logic.
1084         (print_symbol_info): Use scoped_switch_to_sym_language_if_auto
1085         to switch to SYM language when language mode is auto.
1086
1087 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1088
1089         * language.h (scoped_switch_to_sym_language_if_auto): New class.
1090
1091 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1092
1093         * symtab.c (search_symbols): Properly check absence of type regexp
1094         before entering the loop scanning the minimal symbols.
1095
1096 2018-11-20  John Darrington  <john@darrington.wattle.id.au>
1097
1098         * s12z-tdep.c (s12z_extract_return_value): New function.
1099         (inv_reg_perm) New array.
1100         (s12z_return_value): Populate readbuf if non-null.
1101
1102 2018-11-20  Eli Zaretskii  <eliz@gnu.org>
1103
1104         * common/filestuff.c (gdb_fopen_cloexec): Disable use of "e" mode
1105         with 'fopen' also if O_CLOEXEC is equal to O_NOINHERIT, to cater
1106         to MinGW fixed by Gnulib.
1107         (O_NOINHERIT): Define if not defined.
1108
1109 2018-11-19  John Darrington  <john@darrington.wattle.id.au>
1110
1111         * s12z-tdep.c (s12z_frame_cache): Add an assertion.
1112
1113 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
1114
1115         * infrun.c (displaced_step_inferior_state) <next>: Remove.
1116
1117 2018-11-19  Tom Tromey  <tom@tromey.com>
1118
1119         * source.c (get_filename_and_charpos): Return void.
1120
1121 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
1122
1123         * skip.c (_initialize_step_skip): Fix "info skip" help.
1124
1125 2018-11-16  Tom Tromey  <tom@tromey.com>
1126
1127         PR rust/23625:
1128         * rust-lang.c (rust_internal_print_type): Handle TYPE_CODE_PTR.
1129
1130 2018-11-19  Simon Marchi  <simon.marchi@ericsson.com>
1131
1132         * infrun.c (displaced_step_inferior_states): Change type to
1133         std::forward_list.
1134         (get_displaced_stepping_state): Adjust.
1135         (displaced_step_in_progress_any_inferior): Adjust.
1136         (add_displaced_stepping_state): Adjust.
1137         (remove_displaced_stepping_state): Adjust.
1138
1139 2018-11-18  Tom Tromey  <tom@tromey.com>
1140
1141         PR build/23814:
1142         * target-delegates.c: Rebuild.
1143         * ia64-linux-nat.c (class ia64_linux_nat_target)
1144         <have_steppable_watchpoint>: Use override.  Return true, not 1.
1145         (ia64_linux_nat_target::can_use_hw_breakpoint): Rename.  Remove
1146         "self" argument.
1147         (ia64_linux_nat_target::low_new_thread): Rename.
1148         (class ia64_linux_nat_target) <read_description>: Don't declare.
1149         * target.h (struct target_ops) <have_steppable_watchpoint>: Return
1150         bool.
1151
1152 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
1153
1154         PR gdb/22736:
1155         * aarch64-tdep.c (aarch64_push_dummy_call): Remove
1156         lang_struct_return code.
1157
1158 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
1159
1160         * aarch64-tdep.c (aarch64_push_dummy_call): Replace arg with
1161         return_method.
1162         * alpha-tdep.c (alpha_push_dummy_call): Likewise.
1163         * amd64-tdep.c (amd64_push_arguments): Likewise.
1164         (amd64_push_dummy_call): Likewise.
1165         * amd64-windows-tdep.c (amd64_windows_push_arguments): Likewise.
1166         * arc-tdep.c (arc_push_dummy_call): Likewise.
1167         * arm-tdep.c (arm_push_dummy_call): Likewise.
1168         * avr-tdep.c (avr_push_dummy_call): Likewise.
1169         * bfin-tdep.c (bfin_push_dummy_call): Likewise.
1170         * cris-tdep.c (cris_push_dummy_call): Likewise.
1171         * csky-tdep.c (csky_push_dummy_call): Likewise.
1172         * frv-tdep.c (frv_push_dummy_call): Likewise.
1173         * gdbarch.c: Regenerate.
1174         * gdbarch.h: Regenerate.
1175         * gdbarch.sh (gdbarch_push_dummy_call): Replace arg with
1176         return_method.
1177         * h8300-tdep.c (h8300_push_dummy_call): Likewise.
1178         * hppa-tdep.c (hppa32_push_dummy_call): Likewise.
1179         (hppa64_push_dummy_call): Likewise.
1180         * i386-darwin-tdep.c (i386_darwin_push_dummy_call): Likewise.
1181         * i386-tdep.c (i386_push_dummy_call): Likewise.
1182         * ia64-tdep.c (ia64_push_dummy_call): Likewise.
1183         * infcall.c (call_function_by_hand_dummy): Likewise.
1184         * iq2000-tdep.c (iq2000_push_dummy_call): Likewise.
1185         * lm32-tdep.c (lm32_push_dummy_call): Likewise.
1186         * m32c-tdep.c (m32c_push_dummy_call): Likewise.
1187         * m32r-tdep.c (m32r_push_dummy_call): Likewise.
1188         * m68hc11-tdep.c (m68hc11_push_dummy_call): Likewise.
1189         * m68k-tdep.c (m68k_push_dummy_call): Likewise.
1190         * mep-tdep.c (mep_push_dummy_call): Likewise.
1191         * mips-tdep.c (mips_eabi_push_dummy_call): Likewise.
1192         (mips_n32n64_push_dummy_call): Likewise.
1193         (mips_o32_push_dummy_call): Likewise.
1194         (mips_o64_push_dummy_call): Likewise.
1195         * mn10300-tdep.c (mn10300_push_dummy_call): Likewise.
1196         * msp430-tdep.c (msp430_push_dummy_call): Likewise.
1197         * nds32-tdep.c (nds32_push_dummy_call): Likewise.
1198         * nios2-tdep.c (nios2_push_dummy_call): Likewise.
1199         * or1k-tdep.c (or1k_push_dummy_call): Likewise.
1200         * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Likewise.
1201         (ppc64_sysv_abi_push_dummy_call): Likewise.
1202         * ppc-tdep.h (ppc_sysv_abi_push_dummy_call): Likewise.
1203         (ppc64_sysv_abi_push_dummy_call): Likewise.
1204         * riscv-tdep.c (riscv_push_dummy_call): Likewise.
1205         * rl78-tdep.c (rl78_push_dummy_call): Likewise.
1206         * rs6000-aix-tdep.c (rs6000_push_dummy_call): Likewise.
1207         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Likewise.
1208         * rx-tdep.c (rx_push_dummy_call): Likewise.
1209         * s390-tdep.c (s390_push_dummy_call): Likewise.
1210         * score-tdep.c (score_push_dummy_call): Likewise.
1211         * sh-tdep.c (sh_push_dummy_call_fpu): Likewise.
1212         (sh_push_dummy_call_nofpu): Likewise.
1213         * sparc-tdep.c (sparc32_store_arguments): Likewise.
1214         (sparc32_push_dummy_call): Likewise.
1215         * sparc64-tdep.c (sparc64_store_arguments): Likewise.
1216         (sparc64_push_dummy_call): Likewise.
1217         * spu-tdep.c (spu_push_dummy_call): Likewise.
1218         * tic6x-tdep.c (tic6x_push_dummy_call): Likewise.
1219         * tilegx-tdep.c (tilegx_push_dummy_call): Likewise.
1220         * v850-tdep.c (v850_push_dummy_call): Likewise.
1221         * vax-tdep.c (vax_push_dummy_call): Likewise.
1222         * xstormy16-tdep.c (xstormy16_push_dummy_call): Likewise.
1223         * xtensa-tdep.c (xtensa_push_dummy_call): Likewise.
1224
1225 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
1226
1227         * gdbarch.sh (enum function_call_return_method): Add enum.
1228         * gdbarch.h: Regenerate.
1229         * infcall.c (call_function_by_hand_dummy): Replace vars with enum.
1230
1231 2018-11-15  Joel Brobecker  <brobecker@adacore.com>
1232
1233         * unittests/copy_bitwise-selftests.c: New file.
1234         * utils.c (selftests::bits_to_str, selftests::check_copy_bitwise)
1235         (selftests::copy_bitwise_tests): Delete, moving this code to
1236         unittests/copy_bitwise-selftests.c instead.
1237         (_initialize_utils): Do not register copy_bitwise tests.
1238         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
1239         unittests/copy_bitwise-selftests.c.
1240
1241 2018-11-14  Joel Brobecker  <brobecker@adacore.com>
1242
1243         * ada-lang.c (move_bits): Delete. Update all callers to use
1244         copy_bitwise instead.
1245         * dwarf2loc.c (copy_bitwise, bits_to_str::bits_to_str)
1246         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
1247         Move from here to utils.c.
1248         (_initialize_dwarf2loc): Remove call to register copy_bitwise
1249         selftests.
1250         * utils.h (copy_bitwise): Add declaration.
1251         * utils.c (copy_bitwise, bits_to_str::bits_to_str)
1252         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
1253         Moved here from dwarf2loc.c.
1254         (_initialize_utils): Register copy_bitwise selftests.
1255
1256 2018-11-14  Jim Wilson  <jimw@sifive.com>
1257
1258         * riscv-tdep.c (struct riscv_arg_info): New field is_unnamed.
1259         (riscv_call_arg_scalar_int): If unnamed arg with twice xlen alignment,
1260         then increment next_regnum if odd.
1261         (riscv_arg_location): New arg is_unnamed.  Set ainfo->is_unnamed.
1262         (riscv_push_dummy_call): New local ftype.  Call check_typedef to set
1263         function type.  Pass new arg to riscv_arg_location based on function
1264         type.
1265         (riscv_return_value): Pass new arg to riscv_arg_location.
1266
1267         * riscv-tdep.c (BIGGEST_ALIGNMENT): New.
1268         (riscv_type_alignment) <TYPE_CODE_ARRAY>: If TYPE_VECTOR, return min
1269         of TYPE_LENGTH and BIGGEST_ALIGNMENT.
1270
1271         * riscv-tdep.c (riscv_call_arg_scalar_int): Use std::min when
1272         setting len.  New local align, set to max of arg align and xlen,
1273         and pass to first riscv_assign_stack_location call.
1274
1275 2018-11-12  Simon Marchi  <simon.marchi@polymtl.ca>
1276
1277         * skip.c (complete_skip_number): New function.
1278         (_initialize_step_skip): Add completers to some skip commands.
1279
1280 2018-11-09  Tom Tromey  <tom@tromey.com>
1281
1282         * remote.c (remote_g_packet_guess_s): Remove typedef and DEF_VEC.
1283         (struct remote_g_packet_data): Derive from allocate_on_obstack.
1284         <guesses>: Now a std::vector.
1285         (remote_g_packet_data_init, register_remote_g_packet_guess):
1286         Update.
1287         (remote_read_description_p): Update.  Return bool.
1288         (remote_target::read_description): Update.
1289         (struct remote_g_packet_guess): Add constructor.
1290
1291 2018-11-09  Tom Tromey  <tom@tromey.com>
1292
1293         * common/scoped_fd.h (class scoped_fd): Add move constructor and
1294         move assignment operator.
1295         * psymtab.c (psymtab_to_fullname): Update.
1296         * source.h (open_source_file): Return scoped_fd.
1297         (find_and_open_source): Likewise.
1298         * source.c (open_source_file): Return scoped_fd.
1299         (get_filename_and_charpos): Update.
1300         (print_source_lines_base): Update.  Use scoped_fd::to_file.
1301         (forward_search_command): Likewise.
1302         (reverse_search_command): Likewise.
1303         (find_and_open_source): Return scoped_fd.
1304         * tui/tui-source.c (tui_set_source_content): Update.  Use
1305         gdb_file_up.
1306
1307 2018-11-09  John Baldwin  <jhb@FreeBSD.org>
1308
1309         * minsyms.c (minimal_symbol_reader::install): Fix unsigned
1310         overflow.
1311
1312 2018-11-09  Hafiz Abid Qadeer  <abidh@codesourcery.com>
1313
1314         * configure: Regenerate.
1315
1316 2018-11-09  Tom de Vries  <tdevries@suse.de>
1317
1318         * symtab.c (symbol_set_names): Call symbol_find_demangled_name
1319         unconditionally, to set the language of the symbol.  Manage freeing
1320         returned pointer using gdb::unique_xmalloc_ptr.
1321
1322 2018-11-08  Tom Tromey  <tom@tromey.com>
1323
1324         * record.c (require_record_target): Upper-case "<TAB>".
1325
1326 2018-11-08  Tom Tromey  <tom@tromey.com>
1327
1328         * python/lib/gdb/command/pretty_printers.py
1329         (InfoPrettyPrinter.invoke): Don't indent "objfile" heading.
1330
1331 2018-11-08  Tom Tromey  <tom@tromey.com>
1332
1333         PR gdb/23555:
1334         PR gdb/23838:
1335         * target.h (target_supports_terminal_ours): Return bool.
1336         * target.c (target_supports_terminal_ours): Handle case where
1337         current_top_target returns nullptr.  Return bool.
1338
1339 2018-11-08  Joel Brobecker  <brobecker@adacore.com>
1340
1341         * aarch64-tdep.c (aapcs_is_vfp_call_or_return_candidate_1):
1342         return the correct count for potential HFAs.
1343
1344 2018-11-08  Jan Beulich  <jbeulich@suse.com>
1345
1346         * i387-tdep.c (i387_supply_xsave): Split handling of
1347         X86_XSTATE_ZMM_H and X86_XSTATE_ZMM.
1348         (i387_collect_xsave): Likewise.
1349
1350 2018-11-08  Andrew Burgess  <andrew.burgess@embecosm.com>
1351
1352         * riscv-tdep.c (riscv_insn::decode): Update header comment.
1353         (riscv_frame_this_id): Catch errors thrown while building the
1354         frame cache, leave the frame id as the default, which is the outer
1355         frame id.
1356
1357 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
1358
1359         * ada-lang.c (read_atcb): Only set task_info->called_task if
1360         task_info->state == Entry_Caller_Sleep.
1361         (print_ada_task_info): Do not check task_info->state before
1362         checking task_info->called_task.
1363         (info_task): Likewise.
1364
1365 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
1366
1367         * ada-tasks.c (read_atcb): Clear task_info before computing
1368         the value of each of its fields.
1369
1370 2018-11-07  Andrew Burgess  <andrew.burgess@embecosm.com>
1371
1372         * dwarf2read.c (dwarf2_init_integer_type): Check for name being
1373         NULL before dereferencing it.
1374
1375 2018-11-06  Tom de Vries  <tdevries@suse.de>
1376
1377         * linux-tdep.c (linux_vsyscall_range_raw): Use xmalloc to allocate
1378         program headers.
1379
1380 2018-11-06  Max Filippov  <jcmvbkbc@gmail.com>
1381
1382         * configure.tgt (xtensa*-*-linux*): Change to xtensa*-*-*linux*
1383         so that it applies to uclinux as well.
1384
1385 2018-11-06  Marius Muench  <marius.muench@eurecom.fr>
1386
1387         * arm-tdep.c (arm_scan_prologue): Don't dereference FP reg
1388         when on AAPCS.
1389
1390 2018-11-06  John Baldwin  <jhb@FreeBSD.org>
1391
1392         * riscv-fbsd-nat.c (getregs_supplies): Return true for
1393         RISCV_CSR_SSTATUS_REGNUM.
1394
1395 2018-11-04  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1396
1397         * source.c (open_source_file): Fix leak by transferring the
1398         current s->fullname to the unique_xmalloc_ptr fullname given
1399         to find_and_open_source.
1400
1401 2018-11-04  Tom Tromey  <tom@tromey.com>
1402
1403         * varobj.c (install_default_visualizer): Update.
1404         * python/python-internal.h (gdbpy_get_varobj_pretty_printer):
1405         Return gdbpy_ref.
1406         * python/py-prettyprint.c (search_pp_list): Return gdbpy_ref.
1407         (find_pretty_printer_from_progspace)
1408         (find_pretty_printer_from_gdb, find_pretty_printer)
1409         (gdbpy_get_varobj_pretty_printer): Return gdbpy_ref.
1410         (gdbpy_get_varobj_pretty_printer, gdbpy_default_visualizer):
1411         Update.
1412
1413 2018-11-04  Tom Tromey  <tom@tromey.com>
1414
1415         * python/python.c (gdbpy_parameter_value): Update.
1416         * python/python-internal.h (python_string_to_unicode)
1417         (python_string_to_target_python_string)
1418         (host_string_to_python_string): Return gdbpy_ref.
1419         * python/py-utils.c (python_string_to_unicode)
1420         (unicode_to_encoded_python_string)
1421         (unicode_to_target_python_string)
1422         (python_string_to_target_string)
1423         (python_string_to_target_python_string): Return gdbpy_ref.
1424         (python_string_to_host_string): Update.
1425         (host_string_to_python_string): Return gdbpy_ref.
1426         * python/py-symtab.c (stpy_get_filename, stpy_get_producer)
1427         (stpy_fullname): Update.
1428         * python/py-progspace.c (pspy_get_filename, pspy_solib_name):
1429         Update.
1430         * python/py-prettyprint.c (print_string_repr): Update.
1431         * python/py-objfile.c (objfpy_get_filename, objfpy_get_username)
1432         (objfpy_get_build_id): Update.
1433         * python/py-breakpoint.c (bppy_get_location)
1434         (bppy_get_expression, bppy_get_condition, bppy_get_commands):
1435         Update.
1436
1437 2018-11-04  Tom Tromey  <tom@tromey.com>
1438
1439         * python/python-internal.h (gdb_py_object_from_longest)
1440         (gdb_py_object_from_ulongest): Return gdbpy_ref.
1441         * python/py-value.c (valpy_int): Update.
1442         * python/py-utils.c (gdb_py_object_from_longest): Return
1443         gdbpy_ref.
1444         (gdb_py_object_from_ulongest): Likewise.
1445         * python/py-type.c (typy_get_alignof): Update.
1446         * python/py-linetable.c (ltpy_get_all_source_lines)
1447         (ltpy_entry_get_line, ltpy_entry_get_pc): Update.
1448         * python/py-block.c (blpy_get_start, blpy_get_end): Update.
1449
1450 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1451
1452         * ada-lang.c (_initialize_ada_language): Fix typo.
1453
1454 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1455
1456         * language.c (type): Remove.
1457         (_initialize_language): Remove assignment to type.
1458
1459 2018-11-02  Joel Brobecker  <brobecker@adacore.com>
1460
1461         * aarch64-ravenscar-thread.h, aarch64-ravenscar-thread.c: New files.
1462         * aarch64-tdep.c: #include "aarch64-ravenscar-thread.h".
1463         (aarch64_gdbarch_init): Add call to register_aarch64_ravenscar_ops.
1464         * Makefile.in (ALL_64_TARGET_OBS): Add aarch64-ravenscar-thread.o.
1465         (HFILES_NO_SRCDIR): Add aarch64-ravenscar-thread.h.
1466         (ALLDEPFILES): Add aarch64-ravenscar-thread.c.
1467         * configure.tgt (cpu_obs) [aarch64*-*-*]: Add ravenscar-thread.o
1468         and aarch64-ravenscar-thread.o.
1469         * NEWS: Add entry documenting Ravenscar tasking support
1470         on AArch64 ELF.
1471
1472 2018-11-02  Matthew Malcomson  <matthew.malcomson@arm.com>
1473
1474         * symtab.c (info_functions_command): Initialize quiet flag.
1475         * stack.c (info_args_command): Likewise.
1476
1477 2018-11-01  Jim Wilson  <jimw@sifive.com>
1478
1479         * riscv-tdep.c (riscv_breakpoint_kind_from_pc): New local unaligned_p.
1480         Set if pcptr if unaligned.  Return 2 if unaligned_p true.  Update
1481         debugging messages.
1482
1483 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
1484
1485         * ada-lang.c (ada_watch_location_expression): New function.
1486         (ada_language_defn): Set la_watch_location_expression to
1487         ada_watch_location_expression.
1488
1489 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
1490
1491         * print-utils.c (int_string): Remove unnecessary trailing spaces.
1492
1493 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
1494
1495         * rs6000-tdep.c (skip_prologue): Fix potential negative left
1496         shifting.
1497
1498 2018-11-01  Jerome Guitton  <guitton@adacore.com>
1499             Joel Brobecker  <brobecker@adacore.com>
1500
1501         * defs.h (enum gdb_osabi): Add GDB_OSABI_PIKEOS.
1502         * osabi.c (gdb_osabi_names): Add name for GDB_OSABI_PIKEOS.
1503         * arm-pikeos-tdep.c: New file.
1504         * configure.tgt: Add arm-pikeos-tdep.o to the case of ARM
1505         embedded system.
1506         * Makefile.in (ALL_TARGET_OBS): Add arm-pikeos-tdep.o.
1507
1508 2018-11-01  Simon Marchi  <simon.marchi@ericsson.com>
1509
1510         * common/pathstuff.c (get_standard_temp_dir): New.
1511         * common/pathstuff.h (get_standard_temp_dir): New.
1512         * config.in: Re-generate.
1513         * configure: Re-generate.
1514         * configure.ac: Don't check for mkdtemp.
1515         * gnulib/aclocal-m4-deps.mk: Re-generate.
1516         * gnulib/aclocal.m4: Re-generate.
1517         * gnulib/config.in: Re-generate.
1518         * gnulib/configure: Re-generate.
1519         * gnulib/import/Makefile.am: Re-generate.
1520         * gnulib/import/Makefile.in: Re-generate.
1521         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
1522         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
1523         * gnulib/import/m4/mkdtemp.m4: New file.
1524         * gnulib/import/mkdtemp.c: New file.
1525         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES):
1526         Add mkdtemp module.
1527         * unittests/mkdir-recursive-selftests.c (test): Use
1528         get_standard_temp_dir.
1529         (_initialize_mkdir_recursive_selftests): Remove HAVE_MKDTEMP
1530         ifdef.
1531         * compile/compile.c (get_compile_file_tempdir): Likewise.
1532
1533 2018-11-01  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
1534
1535         * rs6000-aix-tdep.c: Include "trad-frame.h" and "frame-unwind.h".
1536         (SIG_FRAME_LR_OFFSET64): New define.
1537         (SIG_FRAME_FP_OFFSET64): New define.
1538         (aix_sighandle_frame_cache): New Function.
1539         (aix_sighandle_frame_this_id): New Function.
1540         (aix_sighandle_frame_prev_register): New Function.
1541         (aix_sighandle_frame_sniffer): New Function.
1542         (aix_sighandle_frame_unwind): New global variable.
1543         (rs6000_aix_init_osabi): Install new frame unwinder.
1544
1545 2018-10-31  Sergio Durigan Junior  <sergiodj@redhat.com>
1546
1547         PR gdb/23835
1548         * common/common-defs.h: Don't redefine _FORTIFY_SOURCE if it's
1549         already defined.
1550
1551 2018-10-31  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1552
1553         * ppc-linux-nat.c: Include nat/linux-ptrace.h.
1554
1555 2018-10-31  Andrew Burgess  <andrew.burgess@embecosm.com>
1556
1557         * dwarf2read.c (struct dwarf2_cu): Add producer_is_icc field.
1558         (producer_is_icc): New function.
1559         (check_producer): Set producer_is_icc field on dwarf2_cu.
1560         (dwarf2_init_integer_type): New function.
1561         (read_base_type): Call dwarf2_init_integer_type instead of
1562         init_integer_type in all cases.
1563         (dwarf2_cu::dwarf2_cu): Initialise producer_is_icc field.
1564         * valprint.c (maybe_negate_by_bytes): Add an assertion that the
1565         LEN is greater than 0.
1566
1567 2018-10-30  Tom Tromey  <tom@tromey.com>
1568
1569         * main.c (captured_main_1): Check return value of bfd_init.
1570
1571 2018-10-29  Sergio Durigan Junior  <sergiodj@redhat.com>
1572
1573         * common/offset-type.h (DEFINE_OFFSET_REL_OP): Delete.
1574         Adjust comments.
1575
1576 2018-10-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1577
1578         * procfs.c: Include common/pathstuff.h.
1579
1580 2018-10-28  Andrew Burgess  <andrew.burgess@embecosm.com>
1581
1582         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
1583         Add missing braces.  No functional change.
1584
1585 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1586
1587         * macrocmd.c (info_macro_command): Use report_unrecognized_option_error
1588         to report a bad option and fix indentation.
1589         * demangle.c (demangle_command): Use report_unrecognized_option_error
1590         to report a bad option and correctly report the bad option.
1591
1592 2018-10-27  Tom Tromey  <tom@tromey.com>
1593
1594         PR cli/23364:
1595         * darwin-nat.c (copied_shell): New global.
1596         (may_have_sip): Rename from should_disable_startup_with_shell.
1597         (copy_shell_to_cache, maybe_cache_shell): New functions.
1598         (darwin_nat_target::create_inferior): Update.  Use
1599         copied_shell.
1600
1601 2018-10-27  Tom Tromey  <tom@tromey.com>
1602
1603         * unittests/scoped_fd-selftests.c (test_to_file): New function.
1604         (run_tests): Call test_to_file.
1605         * dwarf-index-write.c (write_psymtabs_to_index): Do not reopen
1606         temporary files.
1607         * common/scoped_fd.h (scoped_fd::to_file): New method.
1608
1609 2018-10-27  Tom Tromey  <tom@tromey.com>
1610
1611         * unittests/scoped_mmap-selftests.c (test_normal): Use
1612         gdb_mkostemp_cloexec.
1613         * unittests/scoped_fd-selftests.c (test_destroy, test_release):
1614         Use gdb_mkostemp_cloexec.
1615         * gnulib/aclocal-m4-deps.mk, gnulib/aclocal.m4,
1616         gnulib/config.in, gnulib/configure,
1617         gnulib/import/Makefile.am, gnulib/import/Makefile.in,
1618         gnulib/import/m4/gnulib-cache.m4,
1619         gnulib/import/m4/gnulib-comp.m4: Update.
1620         * gnulib/import/m4/mkostemp.m4: New file.
1621         * gnulib/import/m4/mkstemp.m4: Remove.
1622         * gnulib/import/mkostemp.c: New file.
1623         * gnulib/import/mkstemp.m4: Remove.
1624         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Remove
1625         mkstemp, add mkostemp.  Apply new patch.
1626         * gnulib/import/stdlib.in.h: Apply patch.
1627         * gnulib/patches/0002-mkostemp-mkostemps-Fix-compilation-error-in-C-mode-o.patch:
1628         New file.
1629         * dwarf-index-write.c (write_psymtabs_to_index): Use
1630         gdb_mkostemp_cloexec.
1631         * common/filestuff.h (gdb_mkostemp_cloexec): New function.
1632
1633 2018-10-27  Tom Tromey  <tom@tromey.com>
1634
1635         * unittests/mkdir-recursive-selftests.c: New file.
1636         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
1637         unittests/mkdir-recursive-selftests.c.
1638         * dwarf-index-cache.c (mkdir_recursive): Move to
1639         common/filestuff.c.
1640         (index_cache::store): Check return value of mkdir_recursive.
1641         (create_dir_and_check, test_mkdir_recursive): Move to new file.
1642         (_initialize_index_cache): Don't register test.
1643         * common/filestuff.h (mkdir_recursive): Declare.
1644         * common/filestuff.c (mkdir_recursive): Move from
1645         dwarf-index-cache.c.  Return bool.
1646
1647 2018-10-27  Tom Tromey  <tom@tromey.com>
1648
1649         * dwarf-index-write.c (write_psymtabs_to_index): Move
1650         make_temp_filename to common/pathstuff.c.
1651         * common/pathstuff.h (make_temp_filename): Declare.
1652         * common/pathstuff.c (make_temp_filename): New function, moved
1653         from dwarf-index-write.c.
1654
1655 2018-10-27  Tom Tromey  <tom@tromey.com>
1656
1657         * procfs.c (procfs_target::create_inferior): Use get_shell.
1658         * cli/cli-cmds.c (shell_escape): Use get_shell.
1659         * windows-nat.c (windows_nat_target::create_inferior): Use
1660         get_shell.
1661         * common/pathstuff.c (get_shell): New function.
1662         * nat/fork-inferior.c (SHELL_FILE, get_startup_shell): Remove.
1663         (fork_inferior): Use get_shell.
1664         * common/pathstuff.h (get_shell): Declare.
1665
1666 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1667
1668         * NEWS: Mention changes to 'info [args|functions|locals|variables]'
1669
1670 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1671
1672         * stack.c (print_variable_and_value_data): Add preg and treg.
1673         (print_frame_local_vars): Add quiet, regexp and t_regexp arguments,
1674         and update callers.
1675         (print_frame_arg_vars): Likewise.
1676         (prepare_reg): New function.
1677         (info_locals_command): Extract info print args and use them.
1678         (info_args_command): Likewise.
1679         (_initialize_stack): Modify on-line help.
1680         * symtab.c (treg_matches_sym_type_name): New function.
1681         (search_symbols): New arg t_regexp.
1682         (symtab_symbol_info): New args quiet, regexp, t_regexp.
1683         (info_variables_command): Extract info print args and use them.
1684         (info_functions_command): Likewise.
1685         (info_types_command): Update call to symtab_symbol_info.
1686         (_initialize_symtab): Modify on-line help.
1687         * symtab.h (treg_matches_sym_type_name): New function.
1688         (search_symbols): New t_regexp arg.
1689
1690 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1691
1692         * cli-utils.c (extract_arg_maybe_quoted): New function.
1693         (extract_info_print_args): New function.
1694         (info_print_args_help): New function.
1695         (report_unrecognized_option_error): New function.
1696         * cli-utils.h (extract_arg_maybe_quoted): New function.
1697         (extract_info_print_args): New function.
1698         (info_print_args_help): New function.
1699         (report_unrecognized_option_error): New function.
1700
1701 2018-10-26  Tom Tromey  <tom@tromey.com>
1702
1703         * dwarf2read.c (recursively_compute_inclusions): Use std::vector.
1704         (compute_compunit_symtab_includes): Update.
1705         * symtab.h: (symtab_ptr): Remove typedef.  Don't define a VEC.
1706         (compunit_symtab_ptr): Likewise.
1707
1708 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
1709
1710         * fbsd-tdep.c (fbsd_print_auxv_entry): Only use
1711         default_print_auxv_entry for specific tag values.
1712
1713 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
1714
1715         * fbsd-tdep.c (fbsd_print_auxv_entry): Handle AT_FREEBSD_HWCAP2.
1716
1717 2018-10-26  Jim Wilson  <jimw@sifive.com>
1718
1719         * riscv-linux-tdep.c: Include tramp-frame.h and trad-frame.h.
1720         (riscv_linux_sigframe_init): Declare.
1721         (RISCV_INST_LI_A7_SIGRETURN, RISCV_INT_ECALL): New.
1722         (riscv_linux_sigframe): New.
1723         (SIGFRAME_SIGINFO_SIZE, UCONTEXT_MCONTEXT_OFFSET): New.
1724         (riscv_linux_sigframe_init): Define.
1725         (riscv_linux_init_abi): Call tramp_frame_prepend_unwinder.
1726
1727         * riscv-tdep.c (riscv_isa_xlen): Refer to riscv-tdep.h comment.
1728         (riscv_isa_flen): Likewise.  Drop static.
1729         * riscv-tdep.h (riscv_isa_xlen): Move riscv-tdep.c comment to here.
1730         (riscv_isa_flen): Likewise.  Declare.
1731
1732 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1733             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1734
1735         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_htm_vsx32l)
1736         (tdesc_powerpc_isa207_htm_vsx64l): Declare.
1737         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TM_SPRREGSET)
1738         (PPC32_LINUX_SIZEOF_CGPRREGSET, PPC64_LINUX_SIZEOF_CGPRREGSET)
1739         (PPC_LINUX_SIZEOF_CFPRREGSET, PPC_LINUX_SIZEOF_CVMXREGSET)
1740         (PPC_LINUX_SIZEOF_CVSXREGSET, PPC_LINUX_SIZEOF_CPPRREGSET)
1741         (PPC_LINUX_SIZEOF_CDSCRREGSET, PPC_LINUX_SIZEOF_CTARREGSET):
1742         Define.
1743         (struct ppc_linux_features) <htm>: New field.
1744         (ppc_linux_no_features): Add initializer for htm field.
1745         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1746         new tdescs.
1747         * nat/ppc-linux.h (PPC_FEATURE2_HTM, NT_PPC_TM_CGPR)
1748         (NT_PPC_TM_CFPR, NT_PPC_TM_CVMX, NT_PPC_TM_CVSX)
1749         (NT_PPC_TM_SPR, NT_PPC_TM_CTAR, NT_PPC_TM_CPPR, NT_PPC_TM_CDSCR):
1750         Define if not already defined.
1751         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-htm-vsx32l
1752         and rs6000/powerpc-isa207-htm-vsx64l.
1753         (XMLTOC): Add rs6000/powerpc-isa207-htm-vsx32l.xml and
1754         rs6000/powerpc-isa207-htm-vsx64l.xml.
1755         * features/rs6000/power-htm-spr.xml: New file.
1756         * features/rs6000/power-htm-core.xml: New file.
1757         * features/rs6000/power64-htm-core.xml: New file.
1758         * features/rs6000/power-htm-fpu.xml: New file.
1759         * features/rs6000/power-htm-altivec.xml: New file.
1760         * features/rs6000/power-htm-vsx.xml: New file.
1761         * features/rs6000/power-htm-ppr.xml: New file.
1762         * features/rs6000/power-htm-dscr.xml: New file.
1763         * features/rs6000/power-htm-tar.xml: New file.
1764         * features/rs6000/powerpc-isa207-htm-vsx32l.xml: New file.
1765         * features/rs6000/powerpc-isa207-htm-vsx64l.xml: New file.
1766         * features/rs6000/powerpc-isa207-htm-vsx32l.c: Generate.
1767         * features/rs6000/powerpc-isa207-htm-vsx64l.c: Generate.
1768         * regformats/rs6000/powerpc-isa207-htm-vsx32l.dat: Generate.
1769         * regformats/rs6000/powerpc-isa207-htm-vsx64l.dat: Generate.
1770         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1771         fetch_regset with HTM regsets.
1772         (store_register, store_ppc_registers): Call store_regset with HTM
1773         regsets.
1774         (ppc_linux_nat_target::read_description): Set htm field in the
1775         features struct if needed.
1776         * ppc-linux-tdep.c: Include
1777         features/rs6000/powerpc-isa207-htm-vsx32l.c and
1778         features/rs6000/powerpc-isa207-htm-vsx64l.c.
1779         (ppc32_regmap_tm_spr, ppc32_regmap_cgpr, ppc64_le_regmap_cgpr)
1780         (ppc64_be_regmap_cgpr, ppc32_regmap_cfpr, ppc32_le_regmap_cvmx)
1781         (ppc32_be_regmap_cvmx, ppc32_regmap_cvsx, ppc32_regmap_cppr)
1782         (ppc32_regmap_cdscr, ppc32_regmap_ctar): New globals.
1783         (ppc32_linux_tm_sprregset, ppc32_linux_cgprregset)
1784         (ppc64_be_linux_cgprregset, ppc64_le_linux_cgprregset)
1785         (ppc32_linux_cfprregset, ppc32_le_linux_cvmxregset)
1786         (ppc32_be_linux_cvmxregset, ppc32_linux_cvsxregset)
1787         (ppc32_linux_cpprregset, ppc32_linux_cdscrregset)
1788         (ppc32_linux_ctarregset): New globals.
1789         (ppc_linux_cgprregset, ppc_linux_cvmxregset): New functions.
1790         (ppc_linux_collect_core_cpgrregset): New function.
1791         (ppc_linux_iterate_over_regset_sections): Call back with the htm
1792         regsets.
1793         (ppc_linux_core_read_description): Check if the tm spr section is
1794         present and set htm in the features struct.
1795         (_initialize_ppc_linux_tdep): Call
1796         initialize_tdesc_powerpc_isa207_htm_vsx32l and
1797         initialize_tdesc_powerpc_isa207_htm_vsx64l.
1798         * ppc-linux-tdep.h (ppc_linux_cgprregset, ppc_linux_cvmxregset):
1799         Declare.
1800         (ppc32_linux_tm_sprregset, ppc32_linux_cfprregset)
1801         (ppc32_linux_cvsxregset, ppc32_linux_cpprregset)
1802         (ppc32_linux_cdscrregset, ppc32_linux_ctarregset): Declare.
1803         * ppc-tdep.h (struct gdbarch_tdep) <have_htm_spr, have_htm_core>:
1804         New fields.
1805         <have_htm_fpu, have_htm_altivec, have_htm_vsx>:
1806         Likewise.
1807         <ppc_cppr_regnum, ppc_cdscr_regnum, ppc_ctar_regnum>: Likewise.
1808         <ppc_cdl0_regnum, ppc_cvsr0_regnum, ppc_cefpr0_regnum>: Likewise.
1809         (enum) <PPC_TFHAR_REGNUM, PPC_TEXASR_REGNUM, PPC_TFIAR_REGNUM>:
1810         New enum fields.
1811         <PPC_CR0_REGNUM, PPC_CCR_REGNUM, PPC_CXER_REGNUM>: Likewise.
1812         <PPC_CLR_REGNUM, PPC_CCTR_REGNUM, PPC_CF0_REGNUM>: Likewise.
1813         <PPC_CFPSCR_REGNUM, PPC_CVR0_REGNUM, PPC_CVSCR_REGNUM>: Likewise.
1814         <PPC_CVRSAVE_REGNUM, PPC_CVSR0_UPPER_REGNUM>: Likewise.
1815         <PPC_CPPR_REGNUM, PPC_CDSCR_REGNUM>: Likewise.
1816         <PPC_CTAR_REGNUM>: Likewise.
1817         (PPC_IS_TMSPR_REGNUM, PPC_IS_CKPTGP_REGNUM, PPC_IS_CKPTFP_REGNUM)
1818         (PPC_IS_CKPTVMX_REGNUM, PPC_IS_CKPTVSX_REGNUM): Define.
1819         * rs6000-tdep.c (IS_CDFP_PSEUDOREG, IS_CVSX_PSEUDOREG)
1820         (IS_CEFP_PSEUDOREG): Define.
1821         (rs6000_register_name): Hide the upper halves of checkpointed VSX
1822         registers.  Return names for the checkpointed DFP, VSX, and EFP
1823         pseudo registers.
1824         (rs6000_pseudo_register_type): Remove initial assert and raise an
1825         internal error in the else clause instead.  Return types for the
1826         checkpointed DFP, VSX, and EFP pseudo registers.
1827         (dfp_pseudo_register_read, dfp_pseudo_register_write): Handle
1828         checkpointed DFP pseudo registers.
1829         (vsx_pseudo_register_read, vsx_pseudo_register_write): Handle
1830         checkpointed VSX pseudo registers.
1831         (efp_pseudo_register_read, efp_pseudo_register_write): Rename
1832         from efpr_pseudo_register_read and
1833         efpr_pseudo_register_write.  Handle checkpointed EFP pseudo
1834         registers.
1835         (rs6000_pseudo_register_read, rs6000_pseudo_register_write):
1836         Handle checkpointed DFP, VSX, and EFP registers.
1837         (dfp_ax_pseudo_register_collect, vsx_ax_pseudo_register_collect)
1838         (efp_ax_pseudo_register_collect): New functions.
1839         (rs6000_ax_pseudo_register_collect): Move DFP, VSX and EFP pseudo
1840         register logic to new functions.  Handle checkpointed DFP, VSX,
1841         and EFP pseudo registers.
1842         (rs6000_gdbarch_init): Look for and validate the htm features.
1843         Include checkpointed DFP, VSX and EFP pseudo-registers.
1844         * NEWS: Mention access to PPR, DSCR, TAR, EBB/PMU registers and
1845         HTM registers.
1846
1847 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1848
1849         * rs6000-tdep.c (rs6000_gdbarch_init): Reject tdescs with vsx but
1850         without altivec or fpu.
1851
1852 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1853             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1854
1855         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_EBBREGSET)
1856         (PPC_LINUX_SIZEOF_PMUREGSET): Declare.
1857         * nat/ppc-linux.h (PPC_FEATURE2_EBB, NT_PPC_EBB, NT_PPC_PMU):
1858         Define if not already defined.
1859         * features/rs6000/power-ebb.xml: New file.
1860         * features/rs6000/power-linux-pmu.xml: New file.
1861         * features/rs6000/powerpc-isa207-vsx32l.xml: Include ebb and pmu
1862         features.
1863         * features/rs6000/powerpc-isa207-vsx64l.xml: Likewise.
1864         * features/rs6000/powerpc-isa207-vsx32l.c: Re-generate.
1865         * features/rs6000/powerpc-isa207-vsx64l.c: Re-generate.
1866         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Re-generate.
1867         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Re-generate.
1868         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1869         fetch_regset with ebb and pmu regsets.
1870         (store_register, store_ppc_registers): Call store_regset with ebb
1871         and pmu regsets.
1872         (ppc_linux_nat_target::read_description): Set isa207 field in the
1873         features struct if ebb and pmu are avaiable.
1874         * ppc-linux-tdep.c (ppc32_regmap_ebb, ppc32_regmap_pmu)
1875         (ppc32_linux_ebbregset, ppc32_linux_pmuregset): New globals.
1876         (ppc_linux_iterate_over_regset_sections): Call back with the ebb
1877         and pmu regsets.
1878         (ppc_linux_core_read_description): Check if the pmu section is
1879         present and set isa207 in the features struct.
1880         * ppc-linux-tdep.h (ppc32_linux_ebbregset)
1881         (ppc32_linux_pmuregset): Declare.
1882         * ppc-tdep.h (struct gdbarch_tdep) <ppc_mmcr0_regnum>: New field.
1883         <ppc_mmcr2_regnum, ppc_siar_regnum, ppc_sdar_regnum>: New fields.
1884         <ppc_sier_regnum>: New field.
1885         (enum): <PPC_BESCR_REGNUM, PPC_EBBHR_REGNUM, PPC_EBBRR_REGNUM>:
1886         New enum values.
1887         <PPC_MMCR0_REGNUM, PPC_MMCR2_REGNUM, PPC_SIAR_REGNUM>: New enum
1888         values.
1889         <PPC_SDAR_REGNUM, PPC_SIER_REGNUM>: New enum values.
1890         (PPC_IS_EBB_REGNUM, PPC_IS_PMU_REGNUM): Define.
1891         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate the
1892         ebb and pmu features.
1893
1894 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1895             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1896
1897         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_vsx32l)
1898         (tdesc_powerpc_isa207_vsx64l): Declare.
1899         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TARREGSET): Define.
1900         (struct ppc_linux_features) <isa207>: New field.
1901         (ppc_linux_no_features): Add initializer for isa207 field.
1902         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1903         new tdescs.
1904         * nat/ppc-linux.h (PPC_FEATURE2_ARCH_2_07, PPC_FEATURE2_TAR)
1905         (NT_PPC_TAR): Define if not already defined.
1906         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-vsx32l and
1907         rs6000/powerpc-isa207-vsx64l.
1908         (XMLTOC): Add rs6000/powerpc-isa207-vsx32l.xml and
1909         rs6000/powerpc-isa207-vsx64l.xml.
1910         * features/rs6000/power-tar.xml: New file.
1911         * features/rs6000/powerpc-isa207-vsx32l.xml: New file.
1912         * features/rs6000/powerpc-isa207-vsx64l.xml: New file.
1913         * features/rs6000/powerpc-isa207-vsx32l.c: Generate.
1914         * features/rs6000/powerpc-isa207-vsx64l.c: Generate.
1915         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Generate.
1916         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Generate.
1917         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1918         fetch_regset with the TAR regset.
1919         (store_register, store_ppc_registers): Call store_regset with the
1920         TAR regset.
1921         (ppc_linux_nat_target::read_description): Set isa207 field in the
1922         features struct if needed.
1923         * ppc-linux-tdep.c: Include
1924         features/rs6000/powerpc-isa207-vsx32l.c and
1925         features/rs6000/powerpc-isa207-vsx64l.c.
1926         (ppc32_regmap_tar, ppc32_linux_tarregset): New globals.
1927         (ppc_linux_iterate_over_regset_sections): Call back with the tar
1928         regset.
1929         (ppc_linux_core_read_description): Check if the tar section is
1930         present and set isa207 in the features struct.
1931         (_initialize_ppc_linux_tdep): Call
1932         initialize_tdesc_powerpc_isa207_vsx32l and
1933         initialize_tdesc_powerpc_isa207_vsx64l.
1934         * ppc-linux-tdep.h (ppc32_linux_tarregset): Declare.
1935         * ppc-tdep.h (gdbarch_tdep) <ppc_tar_regnum>: New field.
1936         (enum) <PPC_TAR_REGNUM>: New enum value.
1937         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate tar
1938         feature.
1939         (ppc_process_record_op31): Record changes to TAR.
1940
1941 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1942             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1943
1944         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa205_ppr_dscr_vsx32l)
1945         (tdesc_powerpc_isa205_ppr_dscr_vsx64l): Declare.
1946         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_PPRREGSET)
1947         (PPC_LINUX_SIZEOF_DSCRREGSET): Define.
1948         (struct ppc_linux_features) <ppr_dscr>: New field.
1949         (ppc_linux_no_features): Add initializer for ppr_dscr field.
1950         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1951         new tdescs.
1952         * nat/ppc-linux.h (PPC_FEATURE2_DSCR, NT_PPC_PPR, NT_PPC_DSCR):
1953         Define if not already defined.
1954         * features/Makefile (WHICH): Add
1955         rs6000/powerpc-isa205-ppr-dscr-vsx32l and
1956         rs6000/powerpc-isa205-ppr-dscr-vsx64l.
1957         (XMLTOC): Add rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml and
1958         rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml.
1959         * features/rs6000/power-dscr.xml: New file.
1960         * features/rs6000/power-ppr.xml: New file.
1961         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml: New file.
1962         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml: New file.
1963         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c: Generate.
1964         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c: Generate.
1965         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx32l.dat: Generate.
1966         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx64l.dat: Generate.
1967         * ppc-linux-nat.c: Include <sys/uio.h>.
1968         (fetch_regset, store_regset, check_regset): New functions.
1969         (fetch_register, fetch_ppc_registers): Call fetch_regset with
1970         DSCR and PPR regsets.
1971         (store_register, store_ppc_registers): Call store_regset with
1972         DSCR and PPR regsets.
1973         (ppc_linux_get_hwcap2): New function.
1974         (ppc_linux_nat_target::read_description): Call
1975         ppc_linux_get_hwcap2 and check_regset, set ppr_dscr field in the
1976         features struct if needed.
1977         * ppc-linux-tdep.c: Include
1978         features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c and
1979         features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c.
1980         (ppc32_regmap_ppr, ppc32_regmap_dscr, ppc32_linux_pprregset)
1981         (ppc32_linux_dscrregset): New globals.
1982         (ppc_linux_iterate_over_regset_sections): Call back with the ppr
1983         and dscr regsets.
1984         (ppc_linux_core_read_description): Check if the ppr and dscr
1985         sections are present and set ppr_dscr in the features struct.
1986         (_initialize_ppc_linux_tdep): Call
1987         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx32l and
1988         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx64l.
1989         * ppc-linux-tdep.h (ppc32_linux_pprregset)
1990         (ppc32_linux_dscrregset): Declare.
1991         * ppc-tdep.h (struct gdbarch_tdep) <ppc_ppr_regnum>: New field.
1992         <ppc_dscr_regnum>: New field.
1993         (enum) <PPC_PPR_REGNUM, PPC_DSCR_REGNUM>: New enum values.
1994         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate ppr
1995         and dscr features.
1996         (ppc_process_record_op31): Record changes to PPR and DSCR.
1997
1998 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1999
2000         * rs6000-tdep.c (rs6000_gdbarch_init): Replace line wrapping by a
2001         second initializer line for the have_* variables.  Initialize
2002         have_fpu to 0 instead of 1.
2003
2004 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2005
2006         * arch/ppc-linux-common.c (ppc_linux_match_description):
2007         Parenthesize tdesc assignements and indent them properly.
2008
2009 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2010
2011         * ppc-linux-nat.c (fetch_register): Change if statement to else
2012         if.
2013         (store_register): Likewise.
2014
2015 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2016
2017         * rs6000-tdep.c: Remove reggroups.h include.
2018         (rs6000_pseudo_register_reggroup_p): Remove.
2019         (rs6000_gdbarch_init): Remove call to
2020         set_tdesc_pseudo_register_reggroup_p.
2021
2022 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2023
2024         * reggroups.c (default_register_reggroup_p): Return true for
2025         decfloat registers and float_reggroup.
2026
2027 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2028
2029         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
2030         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
2031         ppc_linux_collect_vrregset by regcache_collect_regset.
2032
2033 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2034
2035         * linux-tdep.c (linux_collect_regset_section_cb): Use
2036         std::vector<gdb_byte> instead of char * and malloc for buf.
2037         Remove xfree.
2038
2039 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
2040
2041         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
2042         symtab_start instead of always using language_unknown.
2043
2044 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
2045
2046         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
2047         READ_P parameter, catch and ignore register access errors from
2048         either the old or new MISA location.
2049         (riscv_has_feature): Update call to riscv_read_misa_reg.
2050
2051 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
2052
2053         * python/py-function.c (convert_values_to_python): Return
2054         gdbpy_ref<>.  Add header comment.
2055         (fnpy_call): Adjust.
2056
2057 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
2058
2059         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
2060         (cmdpy_completer_handle_brkchars): Adjust.
2061         (cmdpy_completer): Adjust.
2062
2063 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
2064
2065         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
2066         Pass correct regnum to raw_supply_zeroed.
2067
2068 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
2069
2070         * regcache.c (cooked_read_test): Add CSKY to the list of
2071         architectures with a save_reggroup
2072
2073 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
2074
2075         PR gdb/23368
2076         * infrun.c (follow_exec): In the follow_exec_mode_new case,
2077         transfer terminal state from old new new inferior.
2078         * terminal.h (swap_terminal_info): New function.
2079         * inflow.c (swap_terminal_info): New function.
2080
2081 2018-10-23  Tom Tromey  <tom@tromey.com>
2082
2083         * record-btrace.c (get_thread_current_frame_id): Rename from
2084         get_thread_current_frame.  Return a frame_id.
2085         (record_btrace_start_replaying): Update.
2086
2087 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
2088
2089         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
2090         for CSRs.
2091
2092 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
2093
2094         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
2095         have_nonsteppable_watchpoint attribute to 1.
2096
2097 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
2098
2099         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
2100         register names.
2101         (struct register_alias): Rename to...
2102         (struct riscv_register_alias): ...this, and update comment.
2103         (riscv_register_aliases): Update type, and alias names.  Remove
2104         CSR names from this list.
2105         (riscv_register_name): Use riscv_gdb_reg_names for int and float
2106         register names.  Add an extra assertion.
2107         (riscv_is_regnum_a_named_csr): New function.
2108         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
2109
2110 2018-10-23  John Darrington  <john@darrington.wattle.id.au>
2111
2112         * configure.tgt: Add configuration for s12z.
2113         * s12z-tdep.c:  New file.
2114         * NEWS: Mention new target.
2115
2116 2018-10-22  Jim Wilson  <jimw@sifive.com>
2117
2118         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
2119         FP reg smaller than FP reg size, and fill with -1 instead of 0.
2120
2121         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
2122         (riscv_register_type): Use them.
2123         (riscv_print_one_register_info): Handle union of floats same as float.
2124         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
2125         riscv_fpreg_q_type fields.
2126
2127 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
2128
2129         * gdbarch.sh (gdbarch_num_cooked_regs): New.
2130         * gdbarch.h: Re-generate.
2131         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
2132         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
2133         * eval.c (evaluate_subexp_standard): Likewise.
2134         * findvar.c (value_of_register): Likewise.
2135         (value_of_register_lazy): Likewise.
2136         (address_from_register): Likewise.
2137         * frame.c (get_frame_register_bytes): Likewise.
2138         * gdbarch-selftests.c (register_to_value_test): Likewise.
2139         * h8300-tdep.c (h8300_register_type): Likewise.
2140         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
2141         (i386_svr4_reg_to_regnum): Likewise.
2142         * infcmd.c (default_print_registers_info): Likewise.
2143         (registers_info): Likewise.
2144         (print_vector_info): Likewise.
2145         (default_print_float_info): Likewise.
2146         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
2147         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
2148         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
2149         (mi_cmd_data_list_changed_registers): Likewise.
2150         (mi_cmd_data_list_register_values): Likewise.
2151         (mi_cmd_data_write_register_values): Likewise.
2152         (mi_cmd_trace_frame_collected): Likewise.
2153         * mips-tdep.c (print_gp_register_row): Likewise.
2154         (mips_print_registers_info): Likewise.
2155         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
2156         * regcache.c (init_regcache_descr): Likewise.
2157         (register_size): Likewise.
2158         (register_dump::dump): Likewise.
2159         (cooked_read_test): Likewise.
2160         (cooked_write_test): Likewise.
2161         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
2162         (rs6000_gdbarch_init): Likewise.
2163         * stabsread.c (stab_reg_to_regnum): Likewise.
2164         * stack.c (info_frame_command): Likewise.
2165         * target-descriptions.c (tdesc_register_name): Likewise.
2166         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
2167         * tui/tui-regs.c (tui_show_register_group): Likewise.
2168         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
2169         (user_reg_map_regnum_to_name): Likewise.
2170         (value_of_user_reg): Likewise.
2171         (maintenance_print_user_registers): Likewise.
2172         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
2173         (xtensa_register_name): Likewise.
2174         (xtensa_register_type): Likewise.
2175         (xtensa_reg_to_regnum): Likewise.
2176         (xtensa_pseudo_register_read): Likewise.
2177         (xtensa_pseudo_register_write): Likewise.
2178
2179 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
2180
2181         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
2182         correctly-sized buffer with raw_read.
2183         (amd64_pseudo_register_write): Use correctly-sized buffer for
2184         raw_read/raw_write.
2185
2186 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2187
2188         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
2189         in add_prefix_cmd of set print type.
2190
2191 2018-10-19  Tom Tromey  <tom@tromey.com>
2192
2193         PR tui/18388:
2194         * NEWS: Mention tabset deprecation.
2195         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
2196         (update_tab_width): New function.
2197         (tui_set_tab_width, tui_show_tab_width): New functions.
2198         (tui_set_tab_width_command): Use update_tab_width.
2199         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
2200         Add new "set tui tab-width" command.
2201         * tui/tui-source.c (tui_set_source_content): Update.
2202         * tui/tui-disasm.c (tui_set_disassem_content): Update.
2203         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
2204         Don't declare.
2205         (tui_tab_width): Declare.
2206         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
2207         (tui_set_default_tab_len): Remove.
2208
2209 2018-10-19  Tom Tromey  <tom@tromey.com>
2210
2211         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
2212         (key_is_backspace, tui_getc): Don't declare.
2213         * tui/tui-io.c (key_is_start_sequence): Now static.
2214         (key_is_end_sequence, key_is_backspace): Remove.
2215         (tui_getc): Now static.
2216
2217 2018-10-19  Tom Tromey  <tom@tromey.com>
2218
2219         * symfile.c (reread_symbols): Clear "static_links".
2220
2221 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
2222
2223         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
2224         define.
2225         (aarch64_linux_sigframe_init): Extra boundary checks.
2226
2227 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
2228
2229         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
2230         the possibly non-existent tdesc type 'vec128', but the type of raw
2231         register v16 instead.
2232
2233 2018-10-19  Gary Benson <gbenson@redhat.com>
2234
2235         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
2236
2237 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
2238
2239         PR cli/23785
2240         * cli/cli-dump.c (restore_binary_file): Check if "file" is
2241         NULL.
2242
2243 2018-10-17  Paul Koning  <paul_koning@dell.com>
2244
2245         * charset.c (convert_between_encodings): Fix unsigned overflow.
2246
2247 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
2248
2249         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
2250         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
2251         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
2252         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
2253         New functions.
2254         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
2255         and fbsd_info_proc_mappings_header.
2256         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
2257         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
2258         New.
2259
2260 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
2261
2262         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
2263         Solaris Maintainer.
2264
2265 2018-10-15  Tom Tromey  <tom@tromey.com>
2266
2267         * tui/tui.c (strcat_to_buf): Remove casts.
2268         * tui/tui-winsource.c (tui_show_source_line)
2269         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
2270         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
2271         * tui/tui-windata.c (tui_first_data_item_displayed)
2272         (tui_delete_data_content_windows, tui_erase_data_content)
2273         (tui_display_all_data, tui_display_data_from)
2274         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
2275         * tui/tui-win.c (tui_set_win_height)
2276         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
2277         casts.
2278         * tui/tui-win.c (tui_resize_all): Remove casts.
2279         (tui_scroll_backward_command, tui_set_focus)
2280         (tui_set_tab_width_command): Likewise.
2281         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
2282         * tui/tui-regs.c (tui_show_register_group): Remove cast.
2283         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
2284         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
2285         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
2286         Remove casts.
2287
2288 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
2289
2290         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
2291         AArch64/ARM maintainer.
2292
2293 2018-10-11  Gary Benson <gbenson@redhat.com>
2294
2295         * interps.h (interp::m_name): Make private and mutable.
2296         * interps.c (interp::~interp): Free m_name.
2297
2298 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2299             Simon Marchi <simark@simark.ca>
2300
2301         * README (`configure' options): Add documentation for new
2302         "--enable-unit-tests" option.
2303         * acinclude.m4: Include "selftest.m4".
2304         * configure: Regenerate.
2305         * configure.ac: Use "GDB_AC_SELFTEST".
2306         * maint.c (maintenance_selftest): Update message informing
2307         that selftests have been disabled.
2308         (maintenance_info_selftests): Likewise.
2309         * selftest.m4: New file.
2310
2311 2018-10-10  Gary Benson <gbenson@redhat.com>
2312
2313         * remote.c (remote_target::remote_send_printf): Add
2314         missing va_end found by Coverity.
2315
2316 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
2317
2318         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
2319
2320 2018-10-09  Tom Tromey  <tom@tromey.com>
2321
2322         * configure: Rebuild.
2323         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
2324         * NEWS: Update --enable-ubsan documentation.
2325
2326 2018-10-09  Gary Benson <gbenson@redhat.com>
2327
2328         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
2329         found by Coverity.
2330
2331 2018-10-08  Tom Tromey  <tom@tromey.com>
2332
2333         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
2334         variable.
2335         (riscv_fbsd_init_abi): Likewise.
2336
2337 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
2338         * valops.c (value_struct_elt_for_reference): Rename local variable
2339         to work around the shadowing a previous local warning.
2340
2341 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
2342
2343         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
2344         * NEWS: Mention new FreeBSD/riscv native configuration.
2345         * configure.host: Add riscv*-*-freebsd*.
2346         * configure.nat: Likewise.
2347         * riscv-fbsd-nat.c: New file.
2348
2349 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
2350
2351         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
2352         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
2353         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
2354         * NEWS: Mention new FreeBSD/riscv target.
2355         * configure.tgt: Add riscv*-*-freebsd*.
2356         * riscv-fbsd-tdep.c: New file.
2357         * riscv-fbsd-tdep.h: New file.
2358
2359 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
2360
2361         * regcache.h (struct regcache_map_entry): Note that this type can
2362         be used with traditional frame caches.
2363         * trad-frame.c (trad_frame_set_reg_regmap): New.
2364         * trad-frame.h (trad_frame_set_reg_regmap): New.
2365
2366 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
2367
2368         PR c++/16841
2369         * valops.c (get_virtual_base_offset): New function.
2370         (value_struct_elt_for_reference): Use it to get virtual base offset
2371         and add it in calculating class member address.
2372
2373 2018-10-08  John Darrington  <john@darrington.wattle.id.au>
2374
2375         * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
2376         (check_producer): Check if the producer is codewarrior.
2377         (producer_is_codewarrior): New function.
2378         (lnp_state_machine::record_line): Ignore is_stmt flag for records
2379         produced by codewarrior.
2380         (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
2381
2382 2018-10-06  Tom Tromey  <tom@tromey.com>
2383
2384         PR python/19399:
2385         * python/py-inferior.c: Add "architecture" entry.
2386         (infpy_architecture): New function.
2387
2388 2018-10-06  Tom Tromey  <tom@tromey.com>
2389
2390         PR python/21765:
2391         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
2392         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
2393         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
2394         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
2395
2396 2018-10-06  Tom Tromey  <tom@tromey.com>
2397
2398         PR build/17077:
2399         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
2400         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
2401         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
2402         #include.
2403
2404 2018-10-06  Tom Tromey  <tom@tromey.com>
2405
2406         * python/py-breakpoint.c (bppy_get_location): Handle a
2407         bp_breakpoint without a location.
2408
2409 2018-10-06  Tom Tromey  <tom@tromey.com>
2410
2411         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
2412         (_RegEx): Reformat help text.
2413         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
2414         (AnyCallerIs, AnyCallerMatches): Reformat help text.
2415         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
2416         text.
2417         * python/lib/gdb/command/xmethods.py (InfoXMethod)
2418         (EnableXMethod, DisableXMethod): Remove help indentation.
2419         Capitalize meta-syntactic variables.
2420         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
2421         (EnableUnwinder, DisableUnwinder): Remove help indentation.
2422         Capitalize meta-syntactic variables.
2423         * python/lib/gdb/command/explore.py (ExploreCommand)
2424         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
2425         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
2426         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
2427         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
2428         Remove help indentation.
2429         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
2430         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
2431         (DisableFrameFilter, SetFrameFilterPriority)
2432         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
2433
2434 2018-10-06  Tom Tromey  <tom@tromey.com>
2435
2436         PR tui/28819:
2437         * tui/tui-io.c (gdb_wgetch): New function.
2438         (tui_mld_getc, tui_getc): Use it.
2439
2440 2018-10-05  Tom Tromey  <tom@tromey.com>
2441
2442         * sol-thread.c (sol_thread_target::wait): Rename inner
2443         "save_ptid".
2444
2445 2018-10-04  Tom Tromey  <tom@tromey.com>
2446
2447         * configure: Rebuild.
2448         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
2449
2450 2018-10-04  Tom Tromey  <tom@tromey.com>
2451
2452         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
2453         declaration of "block".
2454
2455 2018-10-04  Tom Tromey  <tom@tromey.com>
2456
2457         * common/filestuff.c (fdwalk): Remove inner declaration of
2458         "result".
2459
2460 2018-10-04  Tom Tromey  <tom@tromey.com>
2461
2462         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
2463         "structs_addr" and hoist declaration.
2464
2465 2018-10-04  Tom Tromey  <tom@tromey.com>
2466
2467         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
2468         variable "size".
2469
2470 2018-10-04  Tom Tromey  <tom@tromey.com>
2471
2472         * mdebugread.c (parse_partial_symbols): Use std::string.
2473
2474 2018-10-04  Tom Tromey  <tom@tromey.com>
2475
2476         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
2477         * p-valprint.c (pascal_val_print): Split inner "i" variable.
2478         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
2479         header.
2480         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
2481         more inner scope.
2482         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
2483         * varobj.c (varobj_update): Rename inner "newobj",
2484         "type_changed".
2485         * valprint.c (generic_emit_char): Rename inner "buf".
2486         * valops.c (find_overload_match): Rename inner "temp".
2487         (value_struct_elt_for_reference): Declare "v" in more inner
2488         scope.
2489         * v850-tdep.c (v850_push_dummy_call): Rename "len".
2490         * unittests/array-view-selftests.c (run_tests): Rename inner
2491         "vec".
2492         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
2493         header.
2494         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
2495         "tsv" in more inner scope.
2496         (print_one_static_tracepoint_marker): Rename inner
2497         "tuple_emitter".
2498         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
2499         (tic6x_push_dummy_call): Don't redeclare "addr".
2500         * target-float.c: Declare "dto" lower.
2501         * symtab.c (lookup_local_symbol): Rename inner "sym".
2502         (find_pc_sect_line): Rename inner "pc".
2503         * stack.c (print_frame): Don't redeclare "gdbarch".
2504         (return_command): Rename inner "gdbarch".
2505         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
2506         "sp".
2507         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
2508         header.
2509         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
2510         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
2511         scope.
2512         * remote.c (remote_target::update_thread_list): Don't redeclare
2513         "tp".
2514         (remote_target::process_initial_stop_replies): Rename inner
2515         "thread".
2516         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
2517         (remote_target::wait_as): Don't redeclare "stop_reply".
2518         (remote_target::get_thread_local_address): Rename inner
2519         "result".
2520         (remote_target::get_tib_address): Likewise.
2521
2522         * regcache.c (cooked_read_test): Rename "regnum".
2523         * record-btrace.c (cmd_record_btrace_start): Rename inner
2524         "exception".
2525         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
2526         loop header.
2527         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
2528         header.
2529         (ppu2spu_sniffer): Rename inner "buf".
2530         * parse.c (operator_check_standard): Rename inner "type",
2531         "objfile".
2532         * p-valprint.c (pascal_val_print): Introduce new scope for
2533         "low_bound", "high_bound".
2534         * p-exp.y (yylex): Declare "i" in loop header.
2535         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
2536         Lower declaration of "s".
2537         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
2538         header.
2539         (nios2_push_dummy_call): Rename "len".
2540         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
2541         "buf".
2542         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
2543         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
2544         (linux_xfer_osdata_modules): Likewise.
2545         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
2546         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
2547         (mips_o64_push_dummy_call): Likewise.
2548         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
2549         "op".
2550         * mi/mi-main.c (list_available_thread_groups): Rename inner
2551         "tuple_emitter".
2552         (mi_cmd_data_read_memory): Rename inner "opts".
2553         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
2554         "tuple_emitter".
2555         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
2556         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
2557         more inner scope.
2558         (parse_partial_symbols): Rename inner "pst", "p", "name"
2559         * main.c (captured_main_1): Rename inner "i"s.
2560         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
2561         "oso2".
2562         * linux-tdep.c (linux_info_proc): Rename inner "filename".
2563         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
2564         * infrun.c (handle_no_resumed): Don't redeclare "thread".
2565         (handle_signal_stop): Rename inner "gdbarch".
2566         (handle_command): Declare "signum" in loop header.
2567         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
2568         "status".
2569         (examine_prologue): Rename inner "sol" and "sof".
2570         (ia64_extract_return_value): Rename inner "val".  Declare another
2571         "val" in a more inner scope.
2572         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
2573         inner scope.
2574         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
2575         "except".
2576         * findvar.c (default_read_var_value): Don't redeclare "addr".
2577         * f-exp.y (yylex): Declare "i" in loop header.
2578         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
2579         Rename inner "type", "expect_type".
2580         (evaluate_subexp_for_sizeof): Rename inner "pc".
2581         * elfread.c (elf_symfile_read): Rename inner "abfd".
2582         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
2583         "bytes_read".
2584         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
2585         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
2586         (dwarf_decode_line_header): Rename inner "lh".
2587         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
2588         "offset".  Declare "i" in loop header.
2589         (disassemble_dwarf_expression): Rename inner "addr_size".
2590         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
2591         inner "result".
2592         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
2593         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
2594         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
2595         "inner_list_emitter".
2596         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
2597         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
2598         declaration in a block.
2599         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
2600         * cp-valprint.c (cp_print_value_fields): Don't redeclare
2601         "obstack_final_size".
2602         * cp-support.c (inspect_type): Declare "i" in loop header.
2603         * compile/compile.c (compile_instance::insert_symbol_error):
2604         Rename inner "e".
2605         * common/agent.c (agent_run_command): Remove inner "ret"
2606         declaration.
2607         * coffread.c (coff_symfile_read): Rename inner "name".
2608         (coff_symfile_read): Rename inner "abfd".
2609         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
2610         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
2611         "high".
2612         * c-exp.y (lex_one_token): Move "len" declaration lower.
2613         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
2614         "gdbarch".
2615         (create_exception_master_breakpoint): Likewise.  Don't redeclare
2616         "b".
2617         (watch_command_1): Declare "mark" later.
2618         (clear_command): Don't shadow "a" or "b".
2619         (delete_command): Rename inner "b".
2620         (delete_trace_command): Likewise.
2621         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
2622         "op".
2623         (arm_gdbarch_init): Remove inner "e_flags".
2624         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
2625         "offset" in inner blocks.
2626
2627 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
2628
2629         * dwarf-index-write.c (file_write): Don't write if the vector is
2630         empty.
2631
2632 2018-10-05  Tom de Vries  <tdevries@suse.de>
2633
2634         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
2635         PyArg_ParseTuple call.
2636
2637 2018-10-05  Tom de Vries  <tdevries@suse.de>
2638
2639         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
2640         PyArg_ParseTuple call.
2641
2642 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
2643
2644         * psymtab.c (recursively_search_psymtabs): Reformat parameters
2645         to avoid exceeding 80 characters per line limit.
2646
2647 2018-10-04  Tom Tromey  <tom@tromey.com>
2648
2649         * symfile.c (syms_from_objfile_1, finish_new_objfile)
2650         (reread_symbols): Update.
2651         * complaints.h (clear_complaints): Remove argument.
2652         * complaints.c (enum complaint_series): Remove.
2653         (series): Remove global.
2654         (complaint_internal): Update.
2655         (clear_complaints): Remove argument.
2656
2657 2018-10-04  Tom Tromey  <tom@tromey.com>
2658
2659         * symfile.c (symbol_file_add_with_addrs): Do not print "no
2660         debugging symbols" message if there is a separate debug objfile.
2661
2662 2018-10-04  Tom Tromey  <tom@tromey.com>
2663
2664         PR cli/19551:
2665         * symfile.c (symbol_file_add_with_addrs): Update output.
2666         * psymtab.c (require_partial_symbols): Update output.
2667
2668 2018-10-04  Tom Tromey  <tom@tromey.com>
2669
2670         PR cli/22234:
2671         * complaints.c: Emit \n.
2672
2673 2018-10-04  Tom Tromey  <tom@tromey.com>
2674
2675         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
2676         (separate_debug_file_exists, find_separate_debug_file)
2677         (add_symbol_file_command, reread_symbols, allocate_symtab)
2678         (allocate_compunit_symtab): Use filtered printing, not
2679         unfiltered.
2680         * psymtab.c (require_partial_symbols, dump_psymtab)
2681         (allocate_psymtab): Use filtered printing, not unfiltered.
2682
2683 2018-10-04  Tom Tromey  <tom@tromey.com>
2684
2685         * complaints.c (complaint_internal): Correctly check complaint
2686         count.
2687
2688 2018-10-04  Tom Tromey  <tom@tromey.com>
2689
2690         * complaints.h (struct complaints): Remove declaration.
2691         * complaints.c (clear_complaints): Remove an unused variable.
2692
2693 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2694
2695         * MAINTAINERS (Write After Approval): Add self.
2696
2697 2018-10-03  Tom Tromey  <tom@tromey.com>
2698
2699         * guile/scm-value.c (gdbscm_value_to_string): Initialize
2700         "buffer_contents".
2701         * coffread.c (coff_symtab_read): Initialize "newobj".
2702
2703 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
2704
2705         * dwarf2read.c (read_func_scope): Remove struct keyword in
2706         range-based for.
2707
2708 2018-10-03  Tom Tromey  <tom@tromey.com>
2709
2710         * README: Mention --enable-ubsan.
2711         * NEWS: Mention --enable-ubsan.
2712         * acinclude.m4: Include sanitize.m4.
2713         * configure: Rebuild.
2714         * configure.ac: Call AM_GDB_UBSAN.
2715         * sanitize.m4: New file.
2716
2717 2018-10-03  Tom Tromey  <tom@tromey.com>
2718
2719         * expression.h (enum exp_opcode): Use uint8_t as base type.
2720         * expprint.c (op_name): Handle invalid opcodes.
2721
2722 2018-10-03  Tom Tromey  <tom@tromey.com>
2723
2724         * parse.c (prefixify_expression): Add assert.
2725         (parse_exp_in_context_1): Throw exception if the expression is
2726         empty.
2727
2728 2018-10-03  Tom Tromey  <tom@tromey.com>
2729
2730         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
2731
2732 2018-10-03  Tom Tromey  <tom@tromey.com>
2733
2734         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
2735
2736 2018-10-03  Tom Tromey  <tom@tromey.com>
2737
2738         * dwarf2read.c (read_subrange_type): Make "negative_mask"
2739         unsigned.
2740
2741 2018-10-03  Tom Tromey  <tom@tromey.com>
2742
2743         * findvar.c (extract_integer): Do work in an unsigned type.
2744
2745 2018-10-03  Tom Tromey  <tom@tromey.com>
2746
2747         * common/enum-flags.h (enum_flags::operator~): Add static assert.
2748         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
2749         base type.
2750         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
2751         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
2752         type.
2753         * c-lang.h (enum c_string_type_values): Use unsigned as base
2754         type.
2755         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
2756
2757 2018-10-03  Tom Tromey  <tom@tromey.com>
2758
2759         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
2760         <~dwarf2_frame_state_reg_info>: Update.
2761         <dwarf2_frame_state_reg_info>: Update.
2762         <alloc_regs>: Add assertion.  Update.
2763         <reg>: Now a std::vector.
2764         <num_regs>: Remove.
2765         <swap>: Update.
2766         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
2767         (execute_cfa_program_test, dwarf2_frame_cache): Update.
2768
2769 2018-10-03  Tom Tromey  <tom@tromey.com>
2770
2771         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
2772
2773 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2774
2775         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
2776
2777 2018-10-02  Tom Tromey  <tom@tromey.com>
2778
2779         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
2780
2781 2018-10-02  John Darrington  <john@darrington.wattle.id.au>
2782
2783         * NEWS: Mention changed commands.
2784         * ser-uds.c: New file.
2785         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
2786         * configure: Regenerate.
2787         * Makefile.in: Add new file.
2788         * serial.c (serial_open): Check if filename is a socket
2789         and lookup the appropriate interface accordingly.
2790
2791 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
2792
2793         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
2794         define.
2795         (AARCH64_EXTRA_MAGIC): Likewise.
2796         (AARCH64_FPSIMD_MAGIC): Likewise.
2797         (AARCH64_SVE_MAGIC): Likewise.
2798         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
2799         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
2800         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
2801         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
2802         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
2803         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
2804         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
2805         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
2806         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
2807         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
2808         (read_aarch64_ctx): Add function.
2809         (aarch64_linux_sigframe_init): Detect FP registers.
2810
2811 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
2812
2813         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
2814         (AARCH64_D0_REGNUM): Likewise.
2815         (AARCH64_S0_REGNUM): Likewise.
2816         (AARCH64_H0_REGNUM): Likewise.
2817         (AARCH64_B0_REGNUM): Likewise.
2818         (AARCH64_SVE_V0_REGNUM): Likewise.
2819         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
2820         (AARCH64_D0_REGNUM): Likewise.
2821         (AARCH64_S0_REGNUM): Likewise.
2822         (AARCH64_H0_REGNUM): Likewise.
2823         (AARCH64_B0_REGNUM): Likewise.
2824         (AARCH64_SVE_V0_REGNUM): Likewise.
2825
2826 2018-10-01  Gary Benson <gbenson@redhat.com>
2827
2828         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
2829         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
2830         prfpregset_t instead of gdb_prfpregset_t.
2831         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
2832         * configure, config.in: Rebuild.
2833
2834 2018-10-01  Gary Benson <gbenson@redhat.com>
2835
2836         * common/gdb_proc_service.h: New file, factored out from...
2837         * gdb_proc_service.h: Moved common code to the above file.
2838         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
2839
2840 2018-10-01  Gary Benson <gbenson@redhat.com>
2841
2842         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
2843         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
2844
2845 2018-10-01  Gary Benson <gbenson@redhat.com>
2846
2847         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
2848         (AC_CHECK_HEADERS): Check for linux/elf.h.
2849         * configure, config.in: Rebuild.
2850         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
2851         doesn't define elf_fpregset_t.
2852
2853 2018-10-01  Gary Benson <gbenson@redhat.com>
2854
2855         * gdb_proc_service.h: Whitespace change.
2856
2857 2018-10-01  Tom Tromey  <tom@tromey.com>
2858
2859         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
2860         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
2861         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
2862
2863 2018-10-01  Tom Tromey  <tom@tromey.com>
2864
2865         * README: Minor change.
2866
2867 2018-09-30  Pedro Alves  <palves@redhat.com>
2868
2869         * darwin-nat-info.c (darwin_debug_regions_recurse)
2870         (info_mach_exceptions_command): Remove unused local variables.
2871         * darwin-nat.c (darwin_decode_notify_message)
2872         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
2873         (darwin_stop_inferior, darwin_setup_exceptions)
2874         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
2875         (darwin_nat_target::attach, darwin_nat_target::detach)
2876         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
2877         local variables.
2878         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
2879         variables.
2880
2881 2018-09-29  Tom Tromey  <tom@tromey.com>
2882
2883         * README: Remove some leftover text.
2884
2885 2018-09-29  Tom Tromey  <tom@tromey.com>
2886
2887         * PROBLEMS: Rewrite.
2888         * README: Update.
2889
2890 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
2891
2892         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
2893         case with explicit breakpoint kind.
2894         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
2895         'additional_info' and related logic.
2896         (riscv_debug_breakpoints): New variable.
2897         (riscv_breakpoint_kind_from_pc): Use the length of the existing
2898         instruction to determine the breakpoint kind.
2899         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
2900         flag.  Update description of 'set/show riscv
2901         use-compressed-breakpoints' flag.
2902
2903 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
2904
2905         (NEWS): Mention changes to frame related commands.
2906         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
2907         (add_prefix_cmd_suppress_notification): New function.
2908         (add_com_suppress_notification): Call
2909         add_cmd_suppress_notification.
2910         * command.h (add_cmd_suppress_notification): Declare.
2911         (add_prefix_cmd_suppress_notification): Declare.
2912         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
2913         (parse_frame_specification): Moved from stack.c, with
2914         simplification to handle a single argument.
2915         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
2916         switch to the selected frame.  Add a header comment.
2917         * stack.c: Remove 'safe-ctype.h' include.
2918         (find_frame_for_function): Add declaration.
2919         (find_frame_for_address): New function.
2920         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
2921         (frame_selection_by_function_completer): New function.
2922         (info_frame_command): Rename to...
2923         (info_frame_command_core): ...this, and update parameter types.
2924         (select_frame_command): Rename to...
2925         (select_frame_command_core): ...this, and update parameter types.
2926         (frame_command): Rename to...
2927         (frame_command_core): ...this, and update parameter types.
2928         (class frame_command_helper): New class to wrap implementations of
2929         frame related sub-commands.
2930         (frame_apply_cmd_list): New static global.
2931         (frame_cmd_list): Make static.
2932         (select_frame_cmd_list): New global for sub-commands.
2933         (info_frame_cmd_list): New global for sub-commands.
2934         (_initialize_stack): Register sub-commands for 'frame',
2935         'select-frame', and 'info frame'.  Update 'frame apply' commands
2936         to use frame_apply_cmd_list.  Move function local static
2937         frame_apply_list to file static frame_apply_cmd_list for
2938         consistency.
2939         * stack.h (select_frame_command): Delete declarationn.
2940         (select_frame_for_mi): Declare new function.
2941
2942 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
2943
2944         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
2945         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
2946         and NOP.
2947
2948 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
2949
2950         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
2951
2952 2018-09-26  Tom Tromey  <tom@tromey.com>
2953
2954         * valops.c (auto_abandon): Remove dead code.
2955
2956 2018-09-26  Tom Tromey  <tom@tromey.com>
2957
2958         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
2959
2960 2018-09-24  Tom Tromey  <tom@tromey.com>
2961
2962         * common/pathstuff.c (get_standard_cache_dir): Make
2963         "xdg_cache_home" and "home" const.
2964         * top.c (init_history): Make "tmpenv" const.
2965         * main.c (get_init_files): Make "homedir" const.
2966
2967 2018-09-23  Tom Tromey  <tom@tromey.com>
2968
2969         PR python/18852:
2970         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
2971
2972 2018-09-23  Tom Tromey  <tom@tromey.com>
2973
2974         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
2975         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
2976         * python/python-internal.h (gdbpy_handle_exception): Declare.
2977         * python/py-utils.c (gdbpy_handle_exception): New function.
2978
2979 2018-09-23  Tom Tromey  <tom@tromey.com>
2980
2981         PR python/17284:
2982         * python/py-type.c (typy_template_argument): Check for negative
2983         argument number.
2984
2985 2018-09-23  Tom Tromey  <tom@tromey.com>
2986
2987         PR python/14062:
2988         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
2989
2990 2018-09-23  Tom Tromey  <tom@tromey.com>
2991
2992         PR python/18170:
2993         * python/py-value.c (valpy_int): Allow conversion from pointer
2994         type.
2995
2996 2018-09-23  Tom Tromey  <tom@tromey.com>
2997
2998         PR python/20126:
2999         * python/py-value.c (valpy_int): Respect type sign.
3000
3001 2018-09-23  Tom Tromey  <tom@tromey.com>
3002
3003         PR python/18352;
3004         * python/py-value.c (valpy_float): Allow conversions from int or
3005         char.
3006         (valpy_int, valpy_long): Allow conversions from float.
3007
3008 2018-09-23  Tom Tromey  <tom@tromey.com>
3009
3010         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
3011         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
3012
3013 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3014
3015         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
3016         __sighndlr.
3017         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
3018
3019 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
3020
3021         * windows-nat.c (windows_nat_target::wait): Remove a spurious
3022         target_terminal::ours().
3023
3024 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
3025
3026         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
3027         of vl to ULONGEST.
3028
3029 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
3030
3031         * breakpoint.c (update_inserted_breakpoint_locations): Remove
3032         redundant condition.
3033
3034 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3035
3036         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
3037
3038         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
3039         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
3040         * sol-thread.c (ps_pdmodel): Don't guard definition.
3041
3042         * procfs.c: Fix formatting.
3043
3044         * procfs.c (sysset_t_alloc): Remove.
3045         (create_procinfo): Use XNEW instead of sysset_t_alloc.
3046         (procfs_debug_inferior): Likewise.
3047         (procfs_set_exec_trap): Likewise.
3048         (proc_set_traced_sysentry): Don't allocate argp dynamically.
3049         (proc_set_traced_sysexit): Likewise.
3050
3051         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
3052         (dead_procinfo): Likewise.
3053         (proc_warn): Likewise.
3054         (proc_error): Likewise.
3055         (proc_get_LDT_entry): Likewise.
3056         (do_attach): Likewise.
3057         (procfs_target::pid_to_str): Likewise.
3058         (iterate_over_mappings): Likewise.
3059
3060         * procfs.c (create_procinfo): Fix ARI warning.
3061         (proc_get_status): Likewise.
3062         (proc_stop_process): Likewise.
3063         (proc_run_process): Likewise.
3064         (proc_kill): Likewise.
3065         (proc_get_LDT_entry): Likewise.
3066         (procfs_find_LDT_entry): Likewise.
3067         (proc_update_threads): Likewise.
3068         (proc_iterate_over_threads): Likewise.
3069         (do_attach): Likewise.
3070         (procfs_xfer_memory): Likewise.
3071         (invalidate_cache): Likewise.
3072         (procfs_target::resume): Likewise.
3073         (procfs_init_inferior): Likewise.
3074         (procfs_set_exec_trap): Likewise.
3075         (procfs_target::thread_alive): Likewise.
3076         (procfs_target::pid_to_exec_file): Likewise.
3077         (iterate_over_mappings): Likewise.
3078         (procfs_target::make_corefile_notes): Likewise.
3079         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
3080
3081         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
3082         (procfs_find_LDT_entry): Likewise.
3083         * sol-thread.c (ps_lgetLDT): Likewise.
3084
3085 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3086
3087         PR tdep/17903
3088         * procfs.c (procfs_target): Declare pid_to_exec_file.
3089         (procfs_target::pid_to_exec_file): New.
3090
3091 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3092
3093         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
3094         renaming.
3095         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
3096         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
3097
3098 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3099
3100         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
3101         (supply_fpregset, fill_fpregset): Move ...
3102         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
3103         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
3104         Remove references to ioctl-based procfs.
3105         Include <sys/reg.h>.
3106         Remove PR_MODEL_NATIVE guards.
3107         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
3108         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
3109
3110 2018-09-19  Xavier Roirand  <roirand@adacore.com>
3111
3112         PR gdb/20981:
3113         * solib-darwin.c (darwin_get_dyld_bfd): New function.
3114         (darwin_solib_get_all_image_info_addr_at_init): Update call.
3115         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
3116
3117 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
3118
3119         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
3120         (fbsd_print_sockaddr_in6): Likewise.
3121
3122 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
3123             Chris January  <chris.january@arm.com>
3124
3125         * eval.c (skip_undetermined_arglist): Skip argument list helper.
3126         (evaluate_subexp_standard): Return a dummy type when
3127         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
3128         OP_F77_UNDETERMINED_ARGLIST case.
3129         * expression.h (enum noside): Update comment.
3130
3131 2018-09-19  George Vasick <george.vasick@oracle.com>
3132
3133         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
3134
3135 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
3136             April Chin <april.chin@oracle.com>
3137             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3138
3139         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
3140         uint_t lwpid_t.
3141         (create_procinfo): Print pids in /proc without leading zeros.
3142
3143 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
3144
3145         * nios2-tdep.c (nios2_gcc_target_options): New.
3146         (nios2_gdb_arch_init): Install new hook.
3147
3148 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
3149
3150         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
3151         New file.
3152         * update-gnulib.sh: Apply patch.
3153         * configure: Re-generate.
3154
3155 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3156
3157         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
3158         description.  Make "info proc" command descriptions more
3159         consistent.
3160
3161 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3162
3163         * NEWS: Mention 'info proc files' command.
3164
3165 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3166
3167         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
3168         descriptors for IP_FILES and IP_ALL.
3169
3170 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3171
3172         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
3173         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
3174         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
3175         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
3176         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
3177         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
3178         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
3179         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
3180         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
3181         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
3182         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
3183         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
3184         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
3185         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
3186         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
3187         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
3188         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
3189         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
3190         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
3191         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
3192         (struct fbsd_sockaddr_un): New types.
3193         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
3194         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
3195         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
3196         (fbsd_core_info_proc_files): New functions.
3197         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
3198         IP_ALL.
3199         * fbsd-tdep.h (fbsd_info_proc_files_header)
3200         (fbsd_info_proc_files_entry): New.
3201
3202 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3203
3204         * defs.h (enum info_proc_what) [IP_FILES]: New value.
3205         * infcmd.c (info_proc_cmd_files): New function.
3206         (_initialize_infcmd): Register 'info proc files' command.
3207
3208 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3209
3210         * gnulib/aclocal-m4-deps.mk: Re-generate.
3211         * gnulib/aclocal.m4: Re-generate.
3212         * gnulib/config.in: Re-generate.
3213         * gnulib/configure: Re-generate.
3214         * gnulib/import/Makefile.am: Re-generate.
3215         * gnulib/import/Makefile.in: Re-generate.
3216         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
3217         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
3218         * gnulib/import/arpa_inet.in.h: New file.
3219         * gnulib/import/inet_ntop.c: New file.
3220         * gnulib/import/m4/arpa_inet_h.m4: New file.
3221         * gnulib/import/m4/inet_ntop.m4: New file.
3222         * gnulib/import/m4/netinet_in_h.m4: New file.
3223         * gnulib/import/m4/socklen.m4: New file.
3224         * gnulib/import/m4/sockpfaf.m4: New file.
3225         * gnulib/import/m4/stdalign.m4: New file.
3226         * gnulib/import/m4/sys_uio_h.m4: New file.
3227         * gnulib/import/netinet_in.in.h: New file.
3228         * gnulib/import/stdalign.in.h: New file.
3229         * gnulib/import/sys_socket.c: New file.
3230         * gnulib/import/sys_socket.in.h: New file.
3231         * gnulib/import/sys_uio.in.h: New file.
3232         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
3233         module.
3234
3235 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3236
3237         * gnulib/aclocal-m4-deps.mk: New file.
3238         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
3239         deterministically.
3240
3241 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3242
3243         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
3244         KVE_PATH.
3245
3246 2018-09-18  Tom Tromey  <tom@tromey.com>
3247
3248         * compile/compile-object-load.c (struct
3249         link_hash_table_cleanup_data): Add constructor and destructor.
3250         Use DISABLE_COPY_AND_ASSIGN.
3251         (~link_hash_table_cleanup_data): Rename from
3252         link_hash_table_free.  Now a destructor.
3253         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
3254
3255 2018-09-18  Tom Tromey  <tom@tromey.com>
3256
3257         * compile/compile-object-run.c (do_module_cleanup): Use delete.
3258         * compile/compile-object-load.c (struct munmap_list): Move to
3259         header file.
3260         (munmap_list::add): Rename from munmap_list_add; rewrite.
3261         (munmap_list::~munmap_list): Rename from munmap_list_free.
3262         (munmap_listp_free_cleanup): Remove.
3263         (compile_object_load): Update.
3264         * compile/compile-object-load.h (struct munmap_list): Move from
3265         compile-object-load.c.  Rewrite.
3266
3267 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
3268
3269         * aarch64-tdep.c (pass_in_v): Use register size.
3270         (aarch64_extract_return_value): Likewise.
3271         (aarch64_store_return_value): Likewise.
3272
3273 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3274
3275         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
3276         rlim_t.
3277
3278 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
3279
3280         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
3281         Fix short help line.
3282
3283 2018-09-17  Tom Tromey  <tom@tromey.com>
3284
3285         PR python/20445:
3286         * configure: Rebuild.
3287         * configure.ac: Conditionally use -DNDEBUG for Python.
3288
3289 2018-09-17  Tom Tromey  <tom@tromey.com>
3290
3291         * configure: Rebuild.
3292         * configure.ac: Use gmp as a library dependency when checking for
3293         mpfr.
3294
3295 2018-09-17  Pedro Alves  <palves@redhat.com>
3296
3297         * python/py-inferior.c (find_inferior_object): Delete.
3298
3299 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
3300
3301         * compile/compile-cplus-types.c
3302         (compile_cplus_instance::enter_scope): Don't use new_scope after
3303         std::move.
3304
3305 2018-09-17  Tom Tromey  <tom@tromey.com>
3306
3307         * common/pathstuff.c (get_standard_cache_dir): Use
3308         ~/Library/Caches on macOS.
3309         * common/pathstuff.h (get_standard_cache_dir): Update comment.
3310
3311 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
3312
3313         PR python/23669
3314         * breakpoint.c (commands_cmd_element): New.
3315         (_initialize_breakpoint): Assign commands_cmd_element.
3316         * breakpoint.h (commands_cmd_element): New.
3317         * cli/cli-script.c (while_cmd_element, if_command,
3318         define_cmd_element): New.
3319         (command_name_equals): Remove.
3320         (process_next_line): Compare commands by pointer, not by name.
3321         (_initialize_cli_script): Assign the various cmd_list_element
3322         variables.
3323         * compile/compile.c (compile_cmd_element): New.
3324         (_initialize_compile): Assign compile_cmd_element.
3325         * compile/compile.h (compile_cmd_element): New.
3326         * guile/guile.c (guile_cmd_element): New.
3327         (install_gdb_commands): Assign guile_cmd_element.
3328         * guile/guile.h (guile_cmd_element): New.
3329         * python/python.c (python_cmd_element): New.
3330         (_initialize_python): Assign python_cmd_element.
3331         * python/python.h (python_cmd_element): New.
3332         * tracepoint.c (while_stepping_cmd_element): New.
3333         (_initialize_tracepoint): Assign while_stepping_cmd_element.
3334         * tracepoint.h (while_stepping_cmd_element): New.
3335
3336 2018-09-17  Tom Tromey  <tom@tromey.com>
3337
3338         * infrun.c (save_infcall_suspend_state): Return
3339         infcall_suspend_state_up.
3340         (save_infcall_control_state): Return infcall_control_state_up.
3341         * inferior.h (save_infcall_suspend_state)
3342         (save_infcall_control_state): Declare later.  Return unique
3343         pointers.
3344
3345 2018-09-17  Tom Tromey  <tom@tromey.com>
3346
3347         * infrun.c (struct stop_context): Declare constructor,
3348         destructor, "changed" method.
3349         (stop_context::stop_context): Rename from save_stop_context.
3350         (stop_context::~stop_context): Rename from
3351         release_stop_context_cleanup.
3352         (normal_stop): Update.
3353         (stop_context::changed): Rename from stop_context_changed.  Return
3354         bool.
3355
3356 2018-09-17  Tom Tromey  <tom@tromey.com>
3357
3358         * inferior.h (struct infcall_suspend_state_deleter): New.
3359         (infcall_suspend_state_up): New typedef.
3360         (struct infcall_control_state_deleter): New.
3361         (infcall_control_state_up): New typedef.
3362         (make_cleanup_restore_infcall_suspend_state)
3363         (make_cleanup_restore_infcall_control_state): Don't declare.
3364         * infcall.c (call_function_by_hand_dummy): Update.
3365         * infrun.c (do_restore_infcall_suspend_state_cleanup)
3366         (make_cleanup_restore_infcall_suspend_state): Remove.
3367         (do_restore_infcall_control_state_cleanup)
3368         (make_cleanup_restore_infcall_control_state): Remove.
3369
3370 2018-09-17  Tom Tromey  <tom@tromey.com>
3371
3372         * gdbthread.h (struct thread_control_state): Add initializer.
3373         (class thread_info) <control>: Remove initializer.
3374         * inferior.h (struct inferior_control_state): Add initializer.
3375         (class inferior) <control>: Remove initializer.
3376         (exit_inferior_1): Update.
3377         * infrun.c (struct infcall_control_state): Add constructors.
3378         (save_infcall_control_state): Use new.
3379         (restore_infcall_control_state, discard_infcall_control_state):
3380         Use delete.
3381
3382 2018-09-17  Tom Tromey  <tom@tromey.com>
3383
3384         * infrun.c (struct infcall_suspend_state) <registers>: Now a
3385         unique_ptr.
3386         <siginfo_data>: Now a unique_xmalloc_ptr.
3387         (save_infcall_suspend_state, restore_infcall_suspend_state)
3388         (discard_infcall_suspend_state)
3389         (get_infcall_suspend_state_regcache): Update.
3390
3391 2018-09-17  Tom Tromey  <tom@tromey.com>
3392
3393         * gdbthread.h (struct thread_suspend_state): Add initializers.
3394         (class thread_info) <suspend>: Remove initializer.
3395         * infrun.c (struct infcall_suspend_state): Add initializers.
3396         (save_infcall_suspend_state): Use new.
3397         (discard_infcall_suspend_state): Use delete.
3398
3399 2018-09-16  Tom Tromey  <tom@tromey.com>
3400
3401         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
3402         Remove.
3403         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
3404         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
3405         (py_varobj_iter_new): Likewise.
3406         (py_varobj_get_iterator): Use gdbpy_ref.
3407
3408 2018-09-16  Tom Tromey  <tom@tromey.com>
3409
3410         * python/py-threadevent.c (py_get_event_thread): Simplify.
3411         * python/py-inferior.c (infpy_thread_from_thread_handle):
3412         Return immediately after calling thread_to_thread_object.  Use
3413         Py_RETURN_NONE.
3414         (thread_to_thread_object): Set the exception on a NULL return.
3415
3416 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
3417
3418         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
3419
3420 2018-09-16  Tom Tromey  <tom@tromey.com>
3421
3422         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
3423         Remove.
3424
3425 2018-09-16  Tom Tromey  <tom@tromey.com>
3426
3427         * python/python-internal.h (thread_to_thread_object): Change
3428         return type.
3429         * python/py-inferior.c (thread_to_thread_object): Return a new
3430         reference.
3431         (infpy_thread_from_thread_handle): Update.
3432         * python/py-infthread.c (gdbpy_selected_thread): Update.
3433         * python/py-stopevent.c (create_stop_event_object): Update.
3434         * python/py-threadevent.c (py_get_event_thread): Return a new
3435         reference.
3436         (py_get_event_thread): Update.
3437         * python/py-event.h (py_get_event_thread): Change return type.
3438         * python/py-continueevent.c (create_continue_event_object):
3439         Update.
3440
3441 2018-09-16  Tom Tromey  <tom@tromey.com>
3442
3443         * python/py-progspace.c (pspy_get_objfiles): Update.
3444         * python/python-internal.h (objfile_to_objfile_object): Change
3445         return type.
3446         * python/py-newobjfileevent.c (create_new_objfile_event_object):
3447         Update.
3448         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
3449         Update.
3450         * python/python.c (gdbpy_get_current_objfile): Update.
3451         (gdbpy_objfiles): Update.
3452         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
3453         Update.
3454         (objfile_to_objfile_object): Return a new reference.
3455         * python/py-symtab.c (stpy_get_objfile): Update.
3456         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
3457         Update.
3458
3459 2018-09-16  Tom Tromey  <tom@tromey.com>
3460
3461         * python/py-inferior.c (infpy_get_progspace): Update.
3462         * python/python-internal.h (pspace_to_pspace_object): Change
3463         return type.
3464         * python/py-newobjfileevent.c
3465         (create_clear_objfiles_event_object): Update.
3466         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
3467         Update.
3468         * python/python.c (gdbpy_get_current_progspace): Update.
3469         (gdbpy_progspaces): Update.
3470         * python/py-progspace.c (pspace_to_pspace_object): Return a new
3471         reference.
3472         * python/py-objfile.c (objfpy_get_progspace): Update.
3473         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
3474         Update.
3475
3476 2018-09-16  Tom Tromey  <tom@tromey.com>
3477
3478         * python/lib/gdb/__init__.py (current_progspace, objfiles)
3479         (solib_name, block_for_pc, find_pc_line): New functions.
3480         (execute_unwinders): Update.
3481         * python/py-block.c (gdbpy_block_for_pc): Remove.
3482         * python/py-inferior.c (infpy_get_progspace): New function.
3483         (inferior_object_getset) <progspace>: Add.
3484         * python/py-progspace.c (pspy_objfiles): Rewrite.
3485         (pspy_solib_name, pspy_block_for_pc)
3486         (pspy_find_pc_line, pspy_is_valid): New functions.
3487         (progspace_object_methods): Add entries for solib_name,
3488         block_for_pc, find_pc_line, is_valid.
3489         * python/python-internal.h (gdbpy_block_for_pc)
3490         (build_objfiles_list): Don't declare.
3491         * python/python.c: Don't include solib.h.
3492         (gdbpy_solib_name, gdbpy_find_pc_line)
3493         (gdbpy_get_current_progspace, build_objfiles_list)
3494         (gdbpy_objfiles): Remove.
3495         (GdbMethods) <current_progspace, objfiles, block_for_pc,
3496         solib_name, find_pc_line>: Remove entries.
3497
3498 2018-09-16  Tom Tromey  <tom@tromey.com>
3499
3500         * top.c (new_ui_command): Use GNU style for metasyntactic
3501         variables.
3502         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
3503         variables.
3504         * maint.c (maintenance_translate_address): Remove "<>" around
3505         text.
3506         * interps.c (interpreter_exec_cmd): Use GNU style for
3507         metasyntactic variables.
3508         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
3509         metasyntactic variables.
3510         * tracepoint.c (tfind_range_command): Use GNU style for
3511         metasyntactic variables.
3512         (tfind_outside_command): Likewise.
3513         (_initialize_tracepoint): Likewise.
3514         * remote.c (extended_remote_target::create_inferior): Use GNU
3515         style for metasyntactic variables.
3516         * sparc64-tdep.c (adi_examine_command): Use GNU style for
3517         metasyntactic variables.
3518         (adi_assign_command): Likewise.
3519
3520 2018-09-16  Tom Tromey  <tom@tromey.com>
3521
3522         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
3523         metasyntactic variables.  Print message if no disassembler options
3524         are available.
3525
3526 2018-09-15  Tom Tromey  <tom@tromey.com>
3527
3528         * infcmd.c (get_inferior_args): Return const char *.
3529         * inferior.h (get_inferior_args): Return type now const.
3530         * linux-tdep.c (linux_fill_prpsinfo): Update.
3531         * procfs.c (procfs_target::make_corefile_notes): Update.
3532
3533 2018-09-07  Tom Tromey  <tom@tromey.com>
3534
3535         * python/python.c (execute_gdb_command): Call bpstat_do_actions
3536         inside the TRY.
3537
3538 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
3539
3540         * nios2-tdep.c (nios2_type_align): New.
3541         (nios2_gdb_arch_init): Install type_align hook.
3542
3543 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
3544
3545         * eval.c (fake_method::fake_method): Call xzalloc directly for a
3546         type that is neither object file owned, nor gdbarch owned.
3547         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
3548         gdbarch is non-NULL.
3549         (alloc_type_instance): Allocate non-objfile owned types on the
3550         gdbarch obstack.
3551         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
3552         using TYPE_ALLOC to ensure memory is allocated on the correct
3553         obstack.
3554         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
3555         obstack, or the gdbarch obstack.
3556         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
3557
3558 2018-09-14  Tom Tromey  <tom@tromey.com>
3559
3560         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
3561         block.
3562
3563 2018-09-14  Tom Tromey  <tom@tromey.com>
3564
3565         * nat/fork-inferior.c (get_startup_shell): Remove "static".
3566
3567 2018-09-13  Tom Tromey  <tom@tromey.com>
3568
3569         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
3570         static.
3571
3572 2018-09-13  Tom Tromey  <tom@tromey.com>
3573
3574         * exec.c (try_open_exec_file): Use std::string.
3575
3576 2018-09-13  Tom Tromey  <tom@tromey.com>
3577
3578         * utils.h (gdb_bfd_errmsg): Return std::string.
3579         * exec.c (exec_file_attach): Update.
3580         * compile/compile-object-load.c (compile_object_load): Update.
3581         * utils.c (gdb_bfd_errmsg): Return std::string.
3582
3583 2018-09-13  Tom Tromey  <tom@tromey.com>
3584
3585         * procfs.c (struct procinfo_deleter): New.
3586         (procinfo_up): New typedef.
3587         (do_destroy_procinfo_cleanup): Remove.
3588         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
3589
3590 2018-09-13  Tom Tromey  <tom@tromey.com>
3591
3592         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
3593
3594 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3595 2018-09-13  Tom Tromey  <tom@tromey.com>
3596
3597         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
3598         (pspy_get_objfiles): New function.
3599         (progspace_object_methods): New.
3600         (pspace_object_type): Add tp_methods callback.
3601         * python/python-internal.h (build_objfiles_list): New
3602         declaration.
3603         * python/python.c (build_objfiles_list): New function.
3604         (gdbpy_objfiles): Implement using build_objfiles_list.
3605         * NEWS: Mention the Progspace.objfiles method.
3606
3607 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3608
3609         * python/py-inferior.c (infpy_get_progspace): New function.
3610         (inferior_object_getset): Add progspace property.
3611         * NEWS: Mention the new property.
3612
3613 2018-09-13  Tom Tromey  <tom@tromey.com>
3614
3615         PR rust/23650:
3616         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
3617
3618 2018-09-13  Tom Tromey  <tom@tromey.com>
3619
3620         PR rust/23626:
3621         * rust-lang.c (rust_enum_variant): Now static.
3622         (rust_empty_enum_p): New function.
3623         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
3624         Handle empty enum.
3625
3626 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3627
3628         * python/py-inferior.c (infpy_repr): New.
3629         (inferior_object_type): Register infpy_repr.
3630         * python/py-objfile.c (objfpy_repr): New.
3631         (objfile_object_type): Register objfpy_repr.
3632
3633 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
3634
3635         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
3636
3637 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
3638
3639         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
3640         typo.
3641
3642 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
3643
3644         * common/common-utils.c: Don't include '<sys/stat.h>'.
3645         (is_regular_file): Move to...
3646         * common/filestuff.c (is_regular_file): ... here.
3647         * common/common-utils.h (is_regular_file): Move to...
3648         * common/filestuff.h (is_regular_file): ... here.
3649
3650 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
3651
3652         * skip.c (debug_skip): New variable.
3653         (skiplist_entry::do_skip_file_p): Add debug output.
3654         (skiplist_entry::do_skip_gfile_p): Likewise.
3655         (skiplist_entry::skip_function_p): Likewise.
3656         (_initialize_step_skip): Create debug command.
3657         * NEWS: Mention set/show debug skip.
3658
3659 2018-09-11  Xavier Roirand  <roirand@adacore.com>
3660
3661         * darwin-nat.c (should_disable_startup_with_shell):
3662         New function.
3663         (darwin_nat_target::create_inferior): Add call.
3664
3665 2018-09-11  Xavier Roirand  <roirand@adacore.com>
3666
3667         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
3668         inf_port, msg_state>: Initialize.
3669         (struct darwin_thread_info) <signaled, single_step>: Change
3670         type and initialize.
3671         (struct darwin_thread_info) <event>: Initialize.
3672
3673 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
3674
3675         PR gdb/23555
3676         PR gdb/23558
3677         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
3678         guesses.
3679
3680 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
3681
3682         Revert:
3683         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
3684
3685         PR gdb/23555
3686         PR gdb/23558
3687         * gnulib/aclocal.m4: Regenerate.
3688         * gnulib/config.in: Regenerate.
3689         * gnulib/configure: Regenerate.
3690         * gnulib/import/Makefile.am: Update.
3691         * gnulib/import/Makefile.in: Update.
3692         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
3693         * gnulib/import/_Noreturn.h: ... this.
3694         * gnulib/import/alloca.in.h: Update.
3695         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
3696         * gnulib/import/arg-nonnull.h: ... this.
3697         * gnulib/import/assure.h: Update.
3698         * gnulib/import/at-func.c: Update.
3699         * gnulib/import/basename-lgpl.c: Update.
3700         * gnulib/import/extra/snippet/c++defs.h: Rename to...
3701         * gnulib/import/c++defs.h: ... this.
3702         * gnulib/import/canonicalize-lgpl.c: Update.
3703         * gnulib/import/cdefs.h: Update.
3704         * gnulib/import/chdir-long.c: Update.
3705         * gnulib/import/chdir-long.h: Update.
3706         * gnulib/import/cloexec.c: Update.
3707         * gnulib/import/cloexec.h: Update.
3708         * gnulib/import/close.c: Update.
3709         * gnulib/import/closedir.c: Update.
3710         * gnulib/import/config.charset: Update.
3711         * gnulib/import/dirent-private.h: Update.
3712         * gnulib/import/dirent.in.h: Update.
3713         * gnulib/import/dirfd.c: Update.
3714         * gnulib/import/dirname-lgpl.c: Update.
3715         * gnulib/import/dirname.h: Update.
3716         * gnulib/import/dosname.h: Update.
3717         * gnulib/import/dup-safer-flag.c: Update.
3718         * gnulib/import/dup-safer.c: Update.
3719         * gnulib/import/dup.c: Update.
3720         * gnulib/import/dup2.c: Update.
3721         * gnulib/import/errno.in.h: Update.
3722         * gnulib/import/error.c: Update.
3723         * gnulib/import/error.h: Update.
3724         * gnulib/import/exitfail.c: Update.
3725         * gnulib/import/exitfail.h: Update.
3726         * gnulib/import/extra/update-copyright: Update.
3727         * gnulib/import/fchdir.c: Update.
3728         * gnulib/import/fcntl.c: Update.
3729         * gnulib/import/fcntl.in.h: Update.
3730         * gnulib/import/fd-hook.c: Update.
3731         * gnulib/import/fd-hook.h: Update.
3732         * gnulib/import/fd-safer-flag.c: Update.
3733         * gnulib/import/fd-safer.c: Update.
3734         * gnulib/import/fdopendir.c: Update.
3735         * gnulib/import/filename.h: Update.
3736         * gnulib/import/filenamecat-lgpl.c: Update.
3737         * gnulib/import/filenamecat.h: Update.
3738         * gnulib/import/flexmember.h: Update.
3739         * gnulib/import/float+.h: Update.
3740         * gnulib/import/float.c: Update.
3741         * gnulib/import/float.in.h: Update.
3742         * gnulib/import/fnmatch.c: Update.
3743         * gnulib/import/fnmatch.in.h: Update.
3744         * gnulib/import/fnmatch_loop.c: Update.
3745         * gnulib/import/fpucw.h: Update.
3746         * gnulib/import/frexp.c: Update.
3747         * gnulib/import/frexpl.c: Update.
3748         * gnulib/import/fstat.c: Update.
3749         * gnulib/import/fstatat.c: Update.
3750         * gnulib/import/getcwd-lgpl.c: Update.
3751         * gnulib/import/getcwd.c: Update.
3752         * gnulib/import/getdtablesize.c: Update.
3753         * gnulib/import/getlogin_r.c: Update.
3754         * gnulib/import/getprogname.c: Update.
3755         * gnulib/import/getprogname.h: Update.
3756         * gnulib/import/gettext.h: Update.
3757         * gnulib/import/gettimeofday.c: Update.
3758         * gnulib/import/glob-libc.h: Update.
3759         * gnulib/import/glob.c: Update.
3760         * gnulib/import/glob.in.h: Update.
3761         * gnulib/import/glob_internal.h: Update.
3762         * gnulib/import/glob_pattern_p.c: Update.
3763         * gnulib/import/globfree.c: Update.
3764         * gnulib/import/hard-locale.c: Update.
3765         * gnulib/import/hard-locale.h: Update.
3766         * gnulib/import/intprops.h: Update.
3767         * gnulib/import/inttypes.in.h: Update.
3768         * gnulib/import/isnan.c: Update.
3769         * gnulib/import/isnand-nolibm.h: Update.
3770         * gnulib/import/isnand.c: Update.
3771         * gnulib/import/isnanl-nolibm.h: Update.
3772         * gnulib/import/isnanl.c: Update.
3773         * gnulib/import/itold.c: Update.
3774         * gnulib/import/libc-config.h: Update.
3775         * gnulib/import/limits.in.h: Update.
3776         * gnulib/import/localcharset.c: Update.
3777         * gnulib/import/localcharset.h: Update.
3778         * gnulib/import/localtime-buffer.c: Update.
3779         * gnulib/import/localtime-buffer.h: Update.
3780         * gnulib/import/lstat.c: Update.
3781         * gnulib/import/m4/00gnulib.m4: Update.
3782         * gnulib/import/m4/__inline.m4: Update.
3783         * gnulib/import/m4/absolute-header.m4: Update.
3784         * gnulib/import/m4/alloca.m4: Update.
3785         * gnulib/import/m4/builtin-expect.m4: Update.
3786         * gnulib/import/m4/canonicalize.m4: Update.
3787         * gnulib/import/m4/chdir-long.m4: Update.
3788         * gnulib/import/m4/close.m4: Update.
3789         * gnulib/import/m4/closedir.m4: Update.
3790         * gnulib/import/m4/configmake.m4: Update.
3791         * gnulib/import/m4/d-ino.m4: Update.
3792         * gnulib/import/m4/d-type.m4: Update.
3793         * gnulib/import/m4/dirent_h.m4: Update.
3794         * gnulib/import/m4/dirfd.m4: Update.
3795         * gnulib/import/m4/dirname.m4: Update.
3796         * gnulib/import/m4/double-slash-root.m4: Update.
3797         * gnulib/import/m4/dup.m4: Update.
3798         * gnulib/import/m4/dup2.m4: Update.
3799         * gnulib/import/m4/eealloc.m4: Update.
3800         * gnulib/import/m4/environ.m4: Update.
3801         * gnulib/import/m4/errno_h.m4: Update.
3802         * gnulib/import/m4/error.m4: Update.
3803         * gnulib/import/m4/exponentd.m4: Update.
3804         * gnulib/import/m4/exponentl.m4: Update.
3805         * gnulib/import/m4/extensions.m4: Update.
3806         * gnulib/import/m4/extern-inline.m4: Update.
3807         * gnulib/import/m4/fchdir.m4: Update.
3808         * gnulib/import/m4/fcntl-o.m4: Update.
3809         * gnulib/import/m4/fcntl.m4: Update.
3810         * gnulib/import/m4/fcntl_h.m4: Update.
3811         * gnulib/import/m4/fdopendir.m4: Update.
3812         * gnulib/import/m4/filenamecat.m4: Update.
3813         * gnulib/import/m4/flexmember.m4: Update.
3814         * gnulib/import/m4/float_h.m4: Update.
3815         * gnulib/import/m4/fnmatch.m4: Update.
3816         * gnulib/import/m4/fnmatch_h.m4: Update.
3817         * gnulib/import/m4/fpieee.m4: Update.
3818         * gnulib/import/m4/frexp.m4: Update.
3819         * gnulib/import/m4/frexpl.m4: Update.
3820         * gnulib/import/m4/fstat.m4: Update.
3821         * gnulib/import/m4/fstatat.m4: Update.
3822         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
3823         * gnulib/import/m4/getcwd-path-max.m4: Update.
3824         * gnulib/import/m4/getcwd.m4: Update.
3825         * gnulib/import/m4/getdtablesize.m4: Update.
3826         * gnulib/import/m4/getlogin.m4: Update.
3827         * gnulib/import/m4/getlogin_r.m4: Update.
3828         * gnulib/import/m4/getpagesize.m4: Update.
3829         * gnulib/import/m4/getprogname.m4: Update.
3830         * gnulib/import/m4/gettimeofday.m4: Update.
3831         * gnulib/import/m4/glibc21.m4: Update.
3832         * gnulib/import/m4/glob.m4: Update.
3833         * gnulib/import/m4/glob_h.m4: Update.
3834         * gnulib/import/m4/gnulib-cache.m4: Update.
3835         * gnulib/import/m4/gnulib-common.m4: Update.
3836         * gnulib/import/m4/gnulib-comp.m4: Update.
3837         * gnulib/import/m4/gnulib-tool.m4: Update.
3838         * gnulib/import/m4/hard-locale.m4: Update.
3839         * gnulib/import/m4/include_next.m4: Update.
3840         * gnulib/import/m4/inttypes-pri.m4: Update.
3841         * gnulib/import/m4/inttypes.m4: Update.
3842         * gnulib/import/m4/isnand.m4: Update.
3843         * gnulib/import/m4/isnanl.m4: Update.
3844         * gnulib/import/m4/largefile.m4: Update.
3845         * gnulib/import/m4/limits-h.m4: Update.
3846         * gnulib/import/m4/localcharset.m4: Update.
3847         * gnulib/import/m4/locale-fr.m4: Update.
3848         * gnulib/import/m4/locale-ja.m4: Update.
3849         * gnulib/import/m4/locale-zh.m4: Update.
3850         * gnulib/import/m4/localtime-buffer.m4: Update.
3851         * gnulib/import/m4/longlong.m4: Update.
3852         * gnulib/import/m4/lstat.m4: Update.
3853         * gnulib/import/m4/malloc.m4: Update.
3854         * gnulib/import/m4/malloca.m4: Update.
3855         * gnulib/import/m4/math_h.m4: Update.
3856         * gnulib/import/m4/mbrtowc.m4: Update.
3857         * gnulib/import/m4/mbsinit.m4: Update.
3858         * gnulib/import/m4/mbsrtowcs.m4: Update.
3859         * gnulib/import/m4/mbstate_t.m4: Update.
3860         * gnulib/import/m4/memchr.m4: Update.
3861         * gnulib/import/m4/memmem.m4: Update.
3862         * gnulib/import/m4/mempcpy.m4: Update.
3863         * gnulib/import/m4/memrchr.m4: Update.
3864         * gnulib/import/m4/mkdir.m4: Update.
3865         * gnulib/import/m4/mkstemp.m4: Update.
3866         * gnulib/import/m4/mmap-anon.m4: Update.
3867         * gnulib/import/m4/mode_t.m4: Update.
3868         * gnulib/import/m4/msvc-inval.m4: Update.
3869         * gnulib/import/m4/msvc-nothrow.m4: Update.
3870         * gnulib/import/m4/multiarch.m4: Update.
3871         * gnulib/import/m4/nocrash.m4: Update.
3872         * gnulib/import/m4/off_t.m4: Update.
3873         * gnulib/import/m4/onceonly.m4: Update.
3874         * gnulib/import/m4/open-cloexec.m4: Update.
3875         * gnulib/import/m4/open.m4: Update.
3876         * gnulib/import/m4/openat.m4: Update.
3877         * gnulib/import/m4/opendir.m4: Update.
3878         * gnulib/import/m4/pathmax.m4: Update.
3879         * gnulib/import/m4/rawmemchr.m4: Update.
3880         * gnulib/import/m4/readdir.m4: Update.
3881         * gnulib/import/m4/readlink.m4: Update.
3882         * gnulib/import/m4/realloc.m4: Update.
3883         * gnulib/import/m4/rename.m4: Update.
3884         * gnulib/import/m4/rewinddir.m4: Update.
3885         * gnulib/import/m4/rmdir.m4: Update.
3886         * gnulib/import/m4/save-cwd.m4: Update.
3887         * gnulib/import/m4/secure_getenv.m4: Update.
3888         * gnulib/import/m4/setenv.m4: Update.
3889         * gnulib/import/m4/signal_h.m4: Update.
3890         * gnulib/import/m4/ssize_t.m4: Update.
3891         * gnulib/import/m4/stat-time.m4: Update.
3892         * gnulib/import/m4/stat.m4: Update.
3893         * gnulib/import/m4/std-gnu11.m4: Update.
3894         * gnulib/import/m4/stdbool.m4: Update.
3895         * gnulib/import/m4/stddef_h.m4: Update.
3896         * gnulib/import/m4/stdint.m4: Update.
3897         * gnulib/import/m4/stdio_h.m4: Update.
3898         * gnulib/import/m4/stdlib_h.m4: Update.
3899         * gnulib/import/m4/strchrnul.m4: Update.
3900         * gnulib/import/m4/strdup.m4: Update.
3901         * gnulib/import/m4/strerror.m4: Update.
3902         * gnulib/import/m4/string_h.m4: Update.
3903         * gnulib/import/m4/strstr.m4: Update.
3904         * gnulib/import/m4/strtok_r.m4: Update.
3905         * gnulib/import/m4/sys_socket_h.m4: Update.
3906         * gnulib/import/m4/sys_stat_h.m4: Update.
3907         * gnulib/import/m4/sys_time_h.m4: Update.
3908         * gnulib/import/m4/sys_types_h.m4: Update.
3909         * gnulib/import/m4/tempname.m4: Update.
3910         * gnulib/import/m4/time_h.m4: Update.
3911         * gnulib/import/m4/unistd-safer.m4: Update.
3912         * gnulib/import/m4/unistd_h.m4: Update.
3913         * gnulib/import/m4/warn-on-use.m4: Update.
3914         * gnulib/import/m4/wchar_h.m4: Update.
3915         * gnulib/import/m4/wchar_t.m4: Update.
3916         * gnulib/import/m4/wctype_h.m4: Update.
3917         * gnulib/import/m4/wint_t.m4: Update.
3918         * gnulib/import/malloc.c: Update.
3919         * gnulib/import/malloc/scratch_buffer.h: Update.
3920         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
3921         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
3922         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
3923         * gnulib/import/malloca.c: Update.
3924         * gnulib/import/malloca.h: Update.
3925         * gnulib/import/malloca.valgrind: Update.
3926         * gnulib/import/math.in.h: Update.
3927         * gnulib/import/mbrtowc.c: Update.
3928         * gnulib/import/mbsinit.c: Update.
3929         * gnulib/import/mbsrtowcs-impl.h: Update.
3930         * gnulib/import/mbsrtowcs-state.c: Update.
3931         * gnulib/import/mbsrtowcs.c: Update.
3932         * gnulib/import/memchr.c: Update.
3933         * gnulib/import/memmem.c: Update.
3934         * gnulib/import/mempcpy.c: Update.
3935         * gnulib/import/memrchr.c: Update.
3936         * gnulib/import/mkdir.c: Update.
3937         * gnulib/import/mkstemp.c: Update.
3938         * gnulib/import/msvc-inval.c: Update.
3939         * gnulib/import/msvc-inval.h: Update.
3940         * gnulib/import/msvc-nothrow.c: Update.
3941         * gnulib/import/msvc-nothrow.h: Update.
3942         * gnulib/import/open.c: Update.
3943         * gnulib/import/openat-die.c: Update.
3944         * gnulib/import/openat-priv.h: Update.
3945         * gnulib/import/openat-proc.c: Update.
3946         * gnulib/import/openat.c: Update.
3947         * gnulib/import/openat.h: Update.
3948         * gnulib/import/opendir.c: Update.
3949         * gnulib/import/pathmax.h: Update.
3950         * gnulib/import/pipe-safer.c: Update.
3951         * gnulib/import/rawmemchr.c: Update.
3952         * gnulib/import/readdir.c: Update.
3953         * gnulib/import/readlink.c: Update.
3954         * gnulib/import/realloc.c: Update.
3955         * gnulib/import/ref-add.sin: Update.
3956         * gnulib/import/ref-del.sin: Update.
3957         * gnulib/import/rename.c: Update.
3958         * gnulib/import/rewinddir.c: Update.
3959         * gnulib/import/rmdir.c: Update.
3960         * gnulib/import/same-inode.h: Update.
3961         * gnulib/import/save-cwd.c: Update.
3962         * gnulib/import/save-cwd.h: Update.
3963         * gnulib/import/scratch_buffer.h: Update.
3964         * gnulib/import/secure_getenv.c: Update.
3965         * gnulib/import/setenv.c: Update.
3966         * gnulib/import/signal.in.h: Update.
3967         * gnulib/import/stat-time.c: Update.
3968         * gnulib/import/stat-time.h: Update.
3969         * gnulib/import/stat-w32.c: Update.
3970         * gnulib/import/stat-w32.h: Update.
3971         * gnulib/import/stat.c: Update.
3972         * gnulib/import/stdbool.in.h: Update.
3973         * gnulib/import/stddef.in.h: Update.
3974         * gnulib/import/stdint.in.h: Update.
3975         * gnulib/import/stdio.in.h: Update.
3976         * gnulib/import/stdlib.in.h: Update.
3977         * gnulib/import/str-two-way.h: Update.
3978         * gnulib/import/strchrnul.c: Update.
3979         * gnulib/import/strdup.c: Update.
3980         * gnulib/import/streq.h: Update.
3981         * gnulib/import/strerror-override.c: Update.
3982         * gnulib/import/strerror-override.h: Update.
3983         * gnulib/import/strerror.c: Update.
3984         * gnulib/import/string.in.h: Update.
3985         * gnulib/import/stripslash.c: Update.
3986         * gnulib/import/strnlen1.c: Update.
3987         * gnulib/import/strnlen1.h: Update.
3988         * gnulib/import/strstr.c: Update.
3989         * gnulib/import/strtok_r.c: Update.
3990         * gnulib/import/sys_stat.in.h: Update.
3991         * gnulib/import/sys_time.in.h: Update.
3992         * gnulib/import/sys_types.in.h: Update.
3993         * gnulib/import/tempname.c: Update.
3994         * gnulib/import/tempname.h: Update.
3995         * gnulib/import/time.in.h: Update.
3996         * gnulib/import/unistd--.h: Update.
3997         * gnulib/import/unistd-safer.h: Update.
3998         * gnulib/import/unistd.in.h: Update.
3999         * gnulib/import/unsetenv.c: Update.
4000         * gnulib/import/verify.h: Update.
4001         * gnulib/import/extra/snippet/warn-on-use.h: Update.
4002         * gnulib/import/wchar.in.h: Update.
4003         * gnulib/import/wctype.in.h: Update.
4004         * gnulib/import/xalloc-oversized.h: Update.
4005         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
4006         "53e2c179f26a890fa6685af4b6c1397ee370433b".
4007
4008 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
4009
4010         * record-btrace.c (get_thread_current_frame): Remove
4011         old_inferior_ptid.
4012
4013 2018-09-10  Jerome Guitton  <guitton@adacore.com>
4014
4015         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
4016         with check_tag to 1 if and only if the type is tagged and the
4017         component being searched cannot been found in the current
4018         view. Otherwise, always call ada_to_fixed_type with
4019         check_tag to 0.
4020
4021 2018-09-10  Xavier Roirand  <roirand@adacore.com>
4022
4023         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
4024         declaration.
4025         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
4026         * ada-varobj.c (ada_varobj_get_number_of_children,
4027         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
4028
4029 2018-09-10  Xavier Roirand  <roirand@adacore.com>
4030
4031         * ada-valprint.c (ada_value_print): Use type instead of
4032         enclosing type.
4033
4034 2018-09-10  Xavier Roirand  <roirand@adacore.com>
4035
4036         * ada-lang.c (ada_value_subscript): Handle case when parameter is
4037         an array of access to unconstrained array.
4038
4039 2018-09-10  Xavier Roirand  <roirand@adacore.com>
4040
4041         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
4042         (ada_check_typedef): Use it.
4043
4044 2018-09-10  Xavier Roirand  <roirand@adacore.com>
4045
4046         * ada-varobj.c (ada_varobj_describe_struct_child)
4047         (ada_varobj_describe_child): Handle union case like struct one.
4048
4049 2018-09-10  Tom Tromey  <tom@tromey.com>
4050
4051         PR python/18380:
4052         * python/python.c (_initialize_python): Make example in "python"
4053         help work in Python 3.
4054
4055 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
4056
4057         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
4058         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
4059         $(EXEEXT) to the script, as it is not a program.
4060
4061 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
4062
4063         * python/py-prettyprint.c (pretty_print_one_value): Return
4064         gdbpy_ref<>.
4065         (print_string_repr): Adjust.
4066         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
4067         * python/python-internal.h (apply_varobj_pretty_printer): Return
4068         gdbpy_ref<>.
4069         * varobj.c (varobj_value_get_print_value): Adjust.
4070
4071 2018-09-08  Tom Tromey  <tom@tromey.com>
4072
4073         PR python/16047:
4074         * python/py-prettyprint.c (pretty_print_one_value): Check for
4075         to_string method.
4076
4077 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
4078
4079         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
4080         replace_operator_with_call.
4081
4082 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
4083
4084         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
4085
4086 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
4087
4088         * ada-typeprint.c (print_range): Print the bounds using TYPE
4089         rather than its TYPE_TARGET_TYPE.
4090
4091 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
4092
4093         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
4094         call to ada_to_fixed_value_create.
4095
4096 2018-09-08  Jerome Guitton  <guitton@adacore.com>
4097
4098         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
4099
4100 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
4101
4102         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
4103         by calls to error.
4104
4105 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
4106
4107         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
4108         Move update of loop variable "fi".
4109
4110 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
4111
4112         * ada-lang.c (value_assign_to_component): In the case of
4113         big-endian targets, extract the bits of the given VAL
4114         using an src_offset of zero if container is not a scalar.
4115
4116 2018-09-06  Simon Ser  <contact@emersion.fr>
4117
4118         PR gdb/23105
4119         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
4120         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
4121         * fbsd-tdep.c (fbsd_make_note_desc): New.
4122         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
4123         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
4124         * target.h (enum target_object) Add FreeBSD-specific
4125         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
4126
4127 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
4128
4129         * compile/compile-c.h (generate_c_for_variable_locations):
4130         Change reference to pointer.
4131         * compile/compile-c-support.c (compile_program) <compute>:
4132         Likewise.
4133         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
4134         (generate_c_for_for_one_variable): Likewise
4135         (generate_c_for_variable_locations): Likewise
4136         * compile/compile-c-types.c (compile_c_instance::convert_type):
4137         Likewise
4138         * compile/compile-cplus-symbols.c (convert_one_symbol):
4139         std::move the scope passed to enter_scope.
4140         * compile/compile-cplus-types.c
4141         (compile_cplus_instance::enter_scope): Make parameter
4142         rvalue-reference.
4143         (compile_cplus_instance::new_scope): Change reference to
4144         pointer.
4145         (compile_cplus_instance::convert_type): Likewise
4146         (compile_cplus_convert_typedef): std::move the scope passed to
4147         enter_scope.
4148         (compile_cplus_convert_struct_or_union): Likewise.
4149         (compile_cplus_convert_enum): Likewise.
4150         (compile_cplus_convert_namespace): Likewise.
4151         * compile/compile-cplus.h (compile_cplus_instance)
4152         <enter_scope>: Make parameter rvalue-reference.
4153         * compile/compile-internal.h (compile_instance)
4154         <get_cached_type>: Likewise
4155         * compile/compile-loc2c.c (push): Likewise
4156         (pushf): Likewise
4157         (unary): Likewise
4158         (binary): Likewise
4159         (print_label): Likewise
4160         (pushf_register_address): Likewise
4161         (pushf_register): Likewise
4162         (do_compile_dwarf_expr_to_c): Likewise
4163         (compile_dwarf_expr_to_c): Likewise
4164         (compile_dwarf_bounds_to_c): Likewise
4165         * compile/compile.c (compile_instance::get_cached_type):
4166         Likewise
4167         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
4168         (compile_dwarf_bounds_to_c): Likewise
4169         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
4170         (dwarf2_compile_property_to_c): Likewise
4171         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
4172         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
4173         Likewise
4174
4175 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
4176
4177         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
4178         * tui/tui-data.c (init_content_element): Don't initialize it.
4179
4180 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
4181
4182         * tui/tui-data.h (struct tui_win_info)
4183         <detail::opaque>: Remove.
4184         * tui/tui-data.c (init_win_info): Remove assignment.
4185
4186 2018-09-05  Tom Tromey  <tom@tromey.com>
4187
4188         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
4189         -Wformat-nonliteral.
4190         * target-float.c (host_float_ops<T>::to_string)
4191         (host_float_ops<T>::from_string): Use
4192         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
4193         * configure: Rebuild.
4194
4195 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
4196
4197         * printcmd.c (printf_c_string): Use
4198         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
4199         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
4200
4201 2018-09-05  Tom Tromey  <tom@tromey.com>
4202
4203         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
4204
4205 2018-09-05  Tom de Vries  <tdevries@suse.de>
4206
4207         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
4208         with resolve_abstract_p == true.
4209         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
4210         defaulting to false. Propagate resolve_abstract_p to
4211         dwarf2_fetch_die_loc_sect_off.
4212         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
4213         parameter, defaulting to false.
4214         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
4215         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
4216         parameter.
4217         * dwarf2read.h (struct die_info): Forward-declare.
4218         (die_info_ptr): New typedef.
4219         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
4220
4221 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
4222
4223         GDB 8.2 released.
4224
4225 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
4226             Pedro Alves  <palves@redhat.com>
4227
4228         * gnulib/Makefile.in (aclocal_m4_deps): Move to
4229         "aclocal-m4-deps.mk".  Include file here.
4230         $(srcdir)/aclocal.m4: Add "configure.ac".
4231         * gnulib/aclocal-m4-deps.mk: New file.
4232         * gnulib/update-gnulib.sh: Automatically update
4233         "aclocal-m4-deps.mk".
4234
4235 2018-09-04  Tom Tromey  <tom@tromey.com>
4236
4237         * configure: Rebuild.
4238         * configure.ac: Remove multi-ice code.
4239
4240 2018-09-04  Tom Tromey  <tom@tromey.com>
4241
4242         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
4243         (ada-exp.o): Update.
4244
4245 2018-09-04  Tom Tromey  <tom@tromey.com>
4246
4247         * Makefile.in (printcmd.o, target-float.o): Remove.
4248         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
4249
4250 2018-09-04  Tom Tromey  <tom@tromey.com>
4251
4252         * gnulib/Makefile.in: Remove obsolete comment.
4253         * Makefile.in: Remove obsolete comment.
4254
4255 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
4256
4257         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
4258         line with '+'.
4259
4260 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
4261
4262         * riscv-tdep.c: Add 'prologue-value.h' include.
4263         (struct riscv_unwind_cache): New struct.
4264         (riscv_debug_unwinder): New global.
4265         (riscv_scan_prologue): Update arguments, capture register details
4266         from prologue scan.
4267         (riscv_skip_prologue): Reformat arguments line, move end of
4268         prologue calculation into riscv_scan_prologue.
4269         (riscv_frame_cache): Update return type, create
4270         riscv_unwind_cache, scan the prologue, and fill in remaining cache
4271         details.
4272         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
4273         (riscv_frame_prev_register): Use the trad_frame within the
4274         riscv_unwind_cache.
4275         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
4276         flag.
4277
4278 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
4279
4280         * trad-frame.h (trad_frame_set_realreg): Declare.
4281         (trad_frame_set_addr): Declare.
4282         * trad-frame.c (trad_frame_set_realreg): Define new function.
4283         (trad_frame_set_addr): Define new function.
4284         (trad_frame_set_reg_realreg): Use new function.
4285         (trad_frame_set_reg_addr): Use new function.
4286
4287 2018-09-01  Keith Seitz  <keiths@redhat.com>
4288
4289         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
4290         pulongest instead of "%lld".
4291         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
4292         ATTRIBUTE_UNUSED.
4293
4294 2018-08-31  Tom Tromey  <tom@tromey.com>
4295
4296         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
4297         variant part type.
4298
4299 2018-08-31  Pedro Alves  <palves@redhat.com>
4300
4301         * gdbarch.h: Regenerate.
4302
4303 2018-08-31  Pedro Alves  <palves@redhat.com>
4304
4305         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
4306         * target.h (Hardware watchpoint interfaces): Describe
4307         continuable/steppable/non-steppable watchpoints.
4308         * gdbarch.h, gdbarch.c: Regenerate.
4309
4310 2018-08-31  Pedro Alves  <palves@redhat.com>
4311
4312         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
4313         Delete.
4314         * s390-linux-nat.c
4315         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
4316         * target.h (target_ops::have_continuable_watchpoint): Delete.
4317         (target_have_continuable_watchpoint): Delete.
4318         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
4319         * target-delegates.c: Regenerate.
4320
4321 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
4322
4323         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
4324         the files present in "gnulib/import/m4/".
4325
4326 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4327
4328         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
4329         c.sw, c.swsp, and c.sdsp.
4330
4331 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4332
4333         * riscv-tdep.c (struct riscv_inferior_data): Delete.
4334         (riscv_read_misa_reg): Don't cache value read into inferior data.
4335         (riscv_new_inferior_data): Delete.
4336         (riscv_inferior_data_cleanup): Delete.
4337         (riscv_inferior_data): Delete.
4338         (riscv_invalidate_inferior_data): Delete.
4339         (_initialize_riscv_tdep): Remove initialisation of inferior data.
4340
4341 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
4342
4343         * compile/compile-cplus-types.c
4344         (compile_cplus_instance::leave_scope): Take the address of scope
4345         object.
4346         (compile_cplus_instance::convert_qualified_base): Compare quals
4347         to 0.
4348
4349 2018-08-30  Keith Seitz  <keiths@redhat.com>
4350
4351         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
4352         Use "%s" and host_address_to_string instead of "%p" in printf.
4353
4354 2018-08-29  Keith Seitz  <keiths@redhat.com>
4355
4356         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
4357         and compile-cplus-types.c.
4358         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
4359         * c-lang.c (cplus_language_defn): Set C++ compile functions.
4360         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
4361         Declare.
4362         * compile/compile-c-support.c: Include compile-cplus.h.
4363         (load_libcompile): Templatize.
4364         (get_compile_context): "New" function.
4365         (c_get_compile_context): Use get_compile_context.
4366         (cplus_get_compile_context): New function.
4367         (cplus_push_user_expression, cplus_pop_user_expression)
4368         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
4369         (cplus_compute_program): Define new structs/functions.
4370         * compile/compile-cplus-symmbols.c: New file.
4371         * compile/compile-cplus-types.c: New file.
4372         * compile/compile-cplus.h: New file.
4373         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
4374         Declare.
4375         * compile/compile-object-load.c (get_out_value_type): Use
4376         strncmp_iw when comparing symbol names.
4377         (compile_object_load): Add mst_bss and mst_data.
4378         * compile/compile.c (_initialize_compile): Remove
4379         -Wno-implicit-function-declaration from `compile_args'.
4380         * compile/gcc-cp-plugin.h: New file.
4381         * NEWS: Mention C++ compile support and new debug options.
4382
4383 2018-08-29  Keith Seitz  <keiths@redhat.com>
4384
4385         * linespec.c (collect_info::add_symbol): Make virtual.
4386         (struct symbol_searcher_collect_info): New struct.
4387         (symbol_searcher::find_all_symbols): New method.
4388         * symtab.h (class symbol_searcher): New class.
4389
4390 2018-08-29  Keith Seitz  <keiths@redhat.com>
4391
4392         * linespec.c (struct linespec) <function_symbols, label_symbols>:
4393         Change to vector of block_symbol.  Update all users.
4394         (struct collect_info) <symbols>: Likewise.
4395         (collect_info::add_symbol): Take block_symbol as argument.
4396         Update all callers.
4397         (decode_compound_collector) <m_symbols>: Change type to vector
4398         of block_symbol.  Update all users.
4399         (decode_compound_collector::operator ()): Change parameter type
4400         to block_symbol.
4401         (find_method, find_function_symbols, find_linespec_symbols)
4402         (find_label_symbols_in_block, find_label_symbols): Change symbol
4403         vectors to block_symbol vectors.
4404         * symtab.h (symbol_found_callback_ftype): Change parameter type to
4405         block_symbol.
4406
4407 2018-08-29  Keith Seitz  <keiths@redhat.com>
4408
4409         * linespec.c (symbolp): Remove typedef and VEC definitions.
4410         (bound_minimal_symbol_d): Likewise.
4411
4412 2018-08-29  Keith Seitz  <keiths@redhat.com>
4413
4414         * linespec.c (decode_compound_collector::decode_compound_collector):
4415         Remove initialization for `m_symtabs'.
4416         (decode_compound_collector::release_symbols): Change return type
4417         to std::vector.  Update all callers.
4418         (class decode_compound_collector) <m_symbols>: Change type to
4419         std::vector.
4420         (lookup_prefix_sym): Change return type to std::vector.  Update all
4421         callers.
4422         (compare_symbols): Remove.
4423         (std_compare_symbols): Rename to `compare_symbols'.
4424         (find_method): Change `sym_classes' parameter to std::vector.
4425         Update all callers.  Use std::sort to sort sym_classes.
4426         (find_linespec_symbols): Remove cleanup.
4427
4428 2018-08-29  Keith Seitz  <keiths@redhat.com>
4429
4430         * linespec.c (struct linespec) <minimal_symbols>: Change type to
4431         std::vector.  Update all users.
4432         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
4433         (struct collect_info) <minimal_symbols>: Likewise.
4434         (compare_msymbols): Return bool.  Change parameters to const
4435         bound_minimal_symbol references.
4436         (find_method, find_function_symbols, find_linespec_symbols): Change
4437         `minsyms' parameter to std::vector.  Update all callers.
4438
4439 2018-08-29  Keith Seitz  <keiths@redhat.com>
4440
4441         * linespec.c (struct linespec) <label_symbols>: Change type to
4442         std::vector.  Update all users.
4443         (find_label_symbols_in_block): Change `result' parameter to
4444         std::vector.  Update all callers.
4445         (find_label_symbols): Return std::vector.  Update all callers.
4446
4447 2018-08-29  Keith Seitz  <keiths@redhat.com>
4448
4449         * linespec.c (struct linespec) <function_symbols>: Change type to
4450         std::vector.  Update all users.
4451         (struct collect_info) <function_symbols>: Likewise.
4452         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
4453         (std_compare_symbols): New function.
4454         (find_method, find_function_symbols, find_linespec_symbols)
4455         (find_label_symbols_in_block): Change `symbols' parameter to
4456         std::vector.  Update all callers.
4457         (find_label_symbols): Likewise for `function_symbols' and
4458         `label_funcs_ret'.
4459
4460 2018-08-29  Keith Seitz  <keiths@redhat.com>
4461
4462         * linespec.c (symtab_vector_up): Define.
4463         (struct linespec) <file_symtabs>: Change type to std::vector *.
4464         Update all uses.
4465         (struct collect_info) <file_symtabs>: Likewise.
4466         (collect_symtabs_from_filename): Return symtab_vector_up.
4467         Update all callers.
4468         (decode_objc): Remove cleanup.
4469         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
4470         (symtab_collector::release_symtabs): Return symtab_vector_up.
4471         Update all callers.
4472         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
4473         Update all users.
4474         (collect_symtabs_from_filename, symtabs_from_filename): Return
4475         symtab_vector_up.  Update all callers.
4476
4477 2018-08-29  Tom Tromey  <tom@tromey.com>
4478
4479         * csky-tdep.c (csky_analyze_prologue): Use
4480         core_addr_to_string_nz.
4481
4482 2018-08-29  Tom Tromey  <tom@tromey.com>
4483
4484         * windows-nat.c (struct xlate_exception) <them>: Change type to
4485         DWORD.
4486         (xlate): Fix formatting.  Remove last entry.
4487         (struct xlate_exception, xlate): Comment out.
4488         (windows_nat_target::resume): Use ranged for.
4489
4490 2018-08-29  Jim Wilson  <jimw@sifive.com>
4491
4492         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
4493         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
4494         of NT_PRFPREG.
4495         (riscv_linux_nat_target::store_registers): Likewise.
4496
4497 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
4498
4499         PR gdb/23555
4500         PR gdb/23558
4501         * gnulib/aclocal.m4: Regenerate.
4502         * gnulib/config.in: Regenerate.
4503         * gnulib/configure: Regenerate.
4504         * gnulib/import/Makefile.am: Update.
4505         * gnulib/import/Makefile.in: Update.
4506         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
4507         * gnulib/import/_Noreturn.h: ... this.
4508         * gnulib/import/alloca.in.h: Update.
4509         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
4510         * gnulib/import/arg-nonnull.h: ... this.
4511         * gnulib/import/assure.h: Update.
4512         * gnulib/import/at-func.c: Update.
4513         * gnulib/import/basename-lgpl.c: Update.
4514         * gnulib/import/extra/snippet/c++defs.h: Rename to...
4515         * gnulib/import/c++defs.h: ... this.
4516         * gnulib/import/canonicalize-lgpl.c: Update.
4517         * gnulib/import/cdefs.h: Update.
4518         * gnulib/import/chdir-long.c: Update.
4519         * gnulib/import/chdir-long.h: Update.
4520         * gnulib/import/cloexec.c: Update.
4521         * gnulib/import/cloexec.h: Update.
4522         * gnulib/import/close.c: Update.
4523         * gnulib/import/closedir.c: Update.
4524         * gnulib/import/config.charset: Update.
4525         * gnulib/import/dirent-private.h: Update.
4526         * gnulib/import/dirent.in.h: Update.
4527         * gnulib/import/dirfd.c: Update.
4528         * gnulib/import/dirname-lgpl.c: Update.
4529         * gnulib/import/dirname.h: Update.
4530         * gnulib/import/dosname.h: Update.
4531         * gnulib/import/dup-safer-flag.c: Update.
4532         * gnulib/import/dup-safer.c: Update.
4533         * gnulib/import/dup.c: Update.
4534         * gnulib/import/dup2.c: Update.
4535         * gnulib/import/errno.in.h: Update.
4536         * gnulib/import/error.c: Update.
4537         * gnulib/import/error.h: Update.
4538         * gnulib/import/exitfail.c: Update.
4539         * gnulib/import/exitfail.h: Update.
4540         * gnulib/import/extra/update-copyright: Update.
4541         * gnulib/import/fchdir.c: Update.
4542         * gnulib/import/fcntl.c: Update.
4543         * gnulib/import/fcntl.in.h: Update.
4544         * gnulib/import/fd-hook.c: Update.
4545         * gnulib/import/fd-hook.h: Update.
4546         * gnulib/import/fd-safer-flag.c: Update.
4547         * gnulib/import/fd-safer.c: Update.
4548         * gnulib/import/fdopendir.c: Update.
4549         * gnulib/import/filename.h: Update.
4550         * gnulib/import/filenamecat-lgpl.c: Update.
4551         * gnulib/import/filenamecat.h: Update.
4552         * gnulib/import/flexmember.h: Update.
4553         * gnulib/import/float+.h: Update.
4554         * gnulib/import/float.c: Update.
4555         * gnulib/import/float.in.h: Update.
4556         * gnulib/import/fnmatch.c: Update.
4557         * gnulib/import/fnmatch.in.h: Update.
4558         * gnulib/import/fnmatch_loop.c: Update.
4559         * gnulib/import/fpucw.h: Update.
4560         * gnulib/import/frexp.c: Update.
4561         * gnulib/import/frexpl.c: Update.
4562         * gnulib/import/fstat.c: Update.
4563         * gnulib/import/fstatat.c: Update.
4564         * gnulib/import/getcwd-lgpl.c: Update.
4565         * gnulib/import/getcwd.c: Update.
4566         * gnulib/import/getdtablesize.c: Update.
4567         * gnulib/import/getlogin_r.c: Update.
4568         * gnulib/import/getprogname.c: Update.
4569         * gnulib/import/getprogname.h: Update.
4570         * gnulib/import/gettext.h: Update.
4571         * gnulib/import/gettimeofday.c: Update.
4572         * gnulib/import/glob-libc.h: Update.
4573         * gnulib/import/glob.c: Update.
4574         * gnulib/import/glob.in.h: Update.
4575         * gnulib/import/glob_internal.h: Update.
4576         * gnulib/import/glob_pattern_p.c: Update.
4577         * gnulib/import/globfree.c: Update.
4578         * gnulib/import/hard-locale.c: Update.
4579         * gnulib/import/hard-locale.h: Update.
4580         * gnulib/import/intprops.h: Update.
4581         * gnulib/import/inttypes.in.h: Update.
4582         * gnulib/import/isnan.c: Update.
4583         * gnulib/import/isnand-nolibm.h: Update.
4584         * gnulib/import/isnand.c: Update.
4585         * gnulib/import/isnanl-nolibm.h: Update.
4586         * gnulib/import/isnanl.c: Update.
4587         * gnulib/import/itold.c: Update.
4588         * gnulib/import/libc-config.h: Update.
4589         * gnulib/import/limits.in.h: Update.
4590         * gnulib/import/localcharset.c: Update.
4591         * gnulib/import/localcharset.h: Update.
4592         * gnulib/import/localtime-buffer.c: Update.
4593         * gnulib/import/localtime-buffer.h: Update.
4594         * gnulib/import/lstat.c: Update.
4595         * gnulib/import/m4/00gnulib.m4: Update.
4596         * gnulib/import/m4/__inline.m4: Update.
4597         * gnulib/import/m4/absolute-header.m4: Update.
4598         * gnulib/import/m4/alloca.m4: Update.
4599         * gnulib/import/m4/builtin-expect.m4: Update.
4600         * gnulib/import/m4/canonicalize.m4: Update.
4601         * gnulib/import/m4/chdir-long.m4: Update.
4602         * gnulib/import/m4/close.m4: Update.
4603         * gnulib/import/m4/closedir.m4: Update.
4604         * gnulib/import/m4/configmake.m4: Update.
4605         * gnulib/import/m4/d-ino.m4: Update.
4606         * gnulib/import/m4/d-type.m4: Update.
4607         * gnulib/import/m4/dirent_h.m4: Update.
4608         * gnulib/import/m4/dirfd.m4: Update.
4609         * gnulib/import/m4/dirname.m4: Update.
4610         * gnulib/import/m4/double-slash-root.m4: Update.
4611         * gnulib/import/m4/dup.m4: Update.
4612         * gnulib/import/m4/dup2.m4: Update.
4613         * gnulib/import/m4/eealloc.m4: Update.
4614         * gnulib/import/m4/environ.m4: Update.
4615         * gnulib/import/m4/errno_h.m4: Update.
4616         * gnulib/import/m4/error.m4: Update.
4617         * gnulib/import/m4/exponentd.m4: Update.
4618         * gnulib/import/m4/exponentl.m4: Update.
4619         * gnulib/import/m4/extensions.m4: Update.
4620         * gnulib/import/m4/extern-inline.m4: Update.
4621         * gnulib/import/m4/fchdir.m4: Update.
4622         * gnulib/import/m4/fcntl-o.m4: Update.
4623         * gnulib/import/m4/fcntl.m4: Update.
4624         * gnulib/import/m4/fcntl_h.m4: Update.
4625         * gnulib/import/m4/fdopendir.m4: Update.
4626         * gnulib/import/m4/filenamecat.m4: Update.
4627         * gnulib/import/m4/flexmember.m4: Update.
4628         * gnulib/import/m4/float_h.m4: Update.
4629         * gnulib/import/m4/fnmatch.m4: Update.
4630         * gnulib/import/m4/fnmatch_h.m4: Update.
4631         * gnulib/import/m4/fpieee.m4: Update.
4632         * gnulib/import/m4/frexp.m4: Update.
4633         * gnulib/import/m4/frexpl.m4: Update.
4634         * gnulib/import/m4/fstat.m4: Update.
4635         * gnulib/import/m4/fstatat.m4: Update.
4636         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
4637         * gnulib/import/m4/getcwd-path-max.m4: Update.
4638         * gnulib/import/m4/getcwd.m4: Update.
4639         * gnulib/import/m4/getdtablesize.m4: Update.
4640         * gnulib/import/m4/getlogin.m4: Update.
4641         * gnulib/import/m4/getlogin_r.m4: Update.
4642         * gnulib/import/m4/getpagesize.m4: Update.
4643         * gnulib/import/m4/getprogname.m4: Update.
4644         * gnulib/import/m4/gettimeofday.m4: Update.
4645         * gnulib/import/m4/glibc21.m4: Update.
4646         * gnulib/import/m4/glob.m4: Update.
4647         * gnulib/import/m4/glob_h.m4: Update.
4648         * gnulib/import/m4/gnulib-cache.m4: Update.
4649         * gnulib/import/m4/gnulib-common.m4: Update.
4650         * gnulib/import/m4/gnulib-comp.m4: Update.
4651         * gnulib/import/m4/gnulib-tool.m4: Update.
4652         * gnulib/import/m4/hard-locale.m4: Update.
4653         * gnulib/import/m4/include_next.m4: Update.
4654         * gnulib/import/m4/inttypes-pri.m4: Update.
4655         * gnulib/import/m4/inttypes.m4: Update.
4656         * gnulib/import/m4/isnand.m4: Update.
4657         * gnulib/import/m4/isnanl.m4: Update.
4658         * gnulib/import/m4/largefile.m4: Update.
4659         * gnulib/import/m4/limits-h.m4: Update.
4660         * gnulib/import/m4/localcharset.m4: Update.
4661         * gnulib/import/m4/locale-fr.m4: Update.
4662         * gnulib/import/m4/locale-ja.m4: Update.
4663         * gnulib/import/m4/locale-zh.m4: Update.
4664         * gnulib/import/m4/localtime-buffer.m4: Update.
4665         * gnulib/import/m4/longlong.m4: Update.
4666         * gnulib/import/m4/lstat.m4: Update.
4667         * gnulib/import/m4/malloc.m4: Update.
4668         * gnulib/import/m4/malloca.m4: Update.
4669         * gnulib/import/m4/math_h.m4: Update.
4670         * gnulib/import/m4/mbrtowc.m4: Update.
4671         * gnulib/import/m4/mbsinit.m4: Update.
4672         * gnulib/import/m4/mbsrtowcs.m4: Update.
4673         * gnulib/import/m4/mbstate_t.m4: Update.
4674         * gnulib/import/m4/memchr.m4: Update.
4675         * gnulib/import/m4/memmem.m4: Update.
4676         * gnulib/import/m4/mempcpy.m4: Update.
4677         * gnulib/import/m4/memrchr.m4: Update.
4678         * gnulib/import/m4/mkdir.m4: Update.
4679         * gnulib/import/m4/mkstemp.m4: Update.
4680         * gnulib/import/m4/mmap-anon.m4: Update.
4681         * gnulib/import/m4/mode_t.m4: Update.
4682         * gnulib/import/m4/msvc-inval.m4: Update.
4683         * gnulib/import/m4/msvc-nothrow.m4: Update.
4684         * gnulib/import/m4/multiarch.m4: Update.
4685         * gnulib/import/m4/nocrash.m4: Update.
4686         * gnulib/import/m4/off_t.m4: Update.
4687         * gnulib/import/m4/onceonly.m4: Update.
4688         * gnulib/import/m4/open-cloexec.m4: Update.
4689         * gnulib/import/m4/open.m4: Update.
4690         * gnulib/import/m4/openat.m4: Update.
4691         * gnulib/import/m4/opendir.m4: Update.
4692         * gnulib/import/m4/pathmax.m4: Update.
4693         * gnulib/import/m4/rawmemchr.m4: Update.
4694         * gnulib/import/m4/readdir.m4: Update.
4695         * gnulib/import/m4/readlink.m4: Update.
4696         * gnulib/import/m4/realloc.m4: Update.
4697         * gnulib/import/m4/rename.m4: Update.
4698         * gnulib/import/m4/rewinddir.m4: Update.
4699         * gnulib/import/m4/rmdir.m4: Update.
4700         * gnulib/import/m4/save-cwd.m4: Update.
4701         * gnulib/import/m4/secure_getenv.m4: Update.
4702         * gnulib/import/m4/setenv.m4: Update.
4703         * gnulib/import/m4/signal_h.m4: Update.
4704         * gnulib/import/m4/ssize_t.m4: Update.
4705         * gnulib/import/m4/stat-time.m4: Update.
4706         * gnulib/import/m4/stat.m4: Update.
4707         * gnulib/import/m4/std-gnu11.m4: Update.
4708         * gnulib/import/m4/stdbool.m4: Update.
4709         * gnulib/import/m4/stddef_h.m4: Update.
4710         * gnulib/import/m4/stdint.m4: Update.
4711         * gnulib/import/m4/stdio_h.m4: Update.
4712         * gnulib/import/m4/stdlib_h.m4: Update.
4713         * gnulib/import/m4/strchrnul.m4: Update.
4714         * gnulib/import/m4/strdup.m4: Update.
4715         * gnulib/import/m4/strerror.m4: Update.
4716         * gnulib/import/m4/string_h.m4: Update.
4717         * gnulib/import/m4/strstr.m4: Update.
4718         * gnulib/import/m4/strtok_r.m4: Update.
4719         * gnulib/import/m4/sys_socket_h.m4: Update.
4720         * gnulib/import/m4/sys_stat_h.m4: Update.
4721         * gnulib/import/m4/sys_time_h.m4: Update.
4722         * gnulib/import/m4/sys_types_h.m4: Update.
4723         * gnulib/import/m4/tempname.m4: Update.
4724         * gnulib/import/m4/time_h.m4: Update.
4725         * gnulib/import/m4/unistd-safer.m4: Update.
4726         * gnulib/import/m4/unistd_h.m4: Update.
4727         * gnulib/import/m4/warn-on-use.m4: Update.
4728         * gnulib/import/m4/wchar_h.m4: Update.
4729         * gnulib/import/m4/wchar_t.m4: Update.
4730         * gnulib/import/m4/wctype_h.m4: Update.
4731         * gnulib/import/m4/wint_t.m4: Update.
4732         * gnulib/import/malloc.c: Update.
4733         * gnulib/import/malloc/scratch_buffer.h: Update.
4734         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
4735         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
4736         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
4737         * gnulib/import/malloca.c: Update.
4738         * gnulib/import/malloca.h: Update.
4739         * gnulib/import/malloca.valgrind: Update.
4740         * gnulib/import/math.in.h: Update.
4741         * gnulib/import/mbrtowc.c: Update.
4742         * gnulib/import/mbsinit.c: Update.
4743         * gnulib/import/mbsrtowcs-impl.h: Update.
4744         * gnulib/import/mbsrtowcs-state.c: Update.
4745         * gnulib/import/mbsrtowcs.c: Update.
4746         * gnulib/import/memchr.c: Update.
4747         * gnulib/import/memmem.c: Update.
4748         * gnulib/import/mempcpy.c: Update.
4749         * gnulib/import/memrchr.c: Update.
4750         * gnulib/import/mkdir.c: Update.
4751         * gnulib/import/mkstemp.c: Update.
4752         * gnulib/import/msvc-inval.c: Update.
4753         * gnulib/import/msvc-inval.h: Update.
4754         * gnulib/import/msvc-nothrow.c: Update.
4755         * gnulib/import/msvc-nothrow.h: Update.
4756         * gnulib/import/open.c: Update.
4757         * gnulib/import/openat-die.c: Update.
4758         * gnulib/import/openat-priv.h: Update.
4759         * gnulib/import/openat-proc.c: Update.
4760         * gnulib/import/openat.c: Update.
4761         * gnulib/import/openat.h: Update.
4762         * gnulib/import/opendir.c: Update.
4763         * gnulib/import/pathmax.h: Update.
4764         * gnulib/import/pipe-safer.c: Update.
4765         * gnulib/import/rawmemchr.c: Update.
4766         * gnulib/import/readdir.c: Update.
4767         * gnulib/import/readlink.c: Update.
4768         * gnulib/import/realloc.c: Update.
4769         * gnulib/import/ref-add.sin: Update.
4770         * gnulib/import/ref-del.sin: Update.
4771         * gnulib/import/rename.c: Update.
4772         * gnulib/import/rewinddir.c: Update.
4773         * gnulib/import/rmdir.c: Update.
4774         * gnulib/import/same-inode.h: Update.
4775         * gnulib/import/save-cwd.c: Update.
4776         * gnulib/import/save-cwd.h: Update.
4777         * gnulib/import/scratch_buffer.h: Update.
4778         * gnulib/import/secure_getenv.c: Update.
4779         * gnulib/import/setenv.c: Update.
4780         * gnulib/import/signal.in.h: Update.
4781         * gnulib/import/stat-time.c: Update.
4782         * gnulib/import/stat-time.h: Update.
4783         * gnulib/import/stat-w32.c: Update.
4784         * gnulib/import/stat-w32.h: Update.
4785         * gnulib/import/stat.c: Update.
4786         * gnulib/import/stdbool.in.h: Update.
4787         * gnulib/import/stddef.in.h: Update.
4788         * gnulib/import/stdint.in.h: Update.
4789         * gnulib/import/stdio.in.h: Update.
4790         * gnulib/import/stdlib.in.h: Update.
4791         * gnulib/import/str-two-way.h: Update.
4792         * gnulib/import/strchrnul.c: Update.
4793         * gnulib/import/strdup.c: Update.
4794         * gnulib/import/streq.h: Update.
4795         * gnulib/import/strerror-override.c: Update.
4796         * gnulib/import/strerror-override.h: Update.
4797         * gnulib/import/strerror.c: Update.
4798         * gnulib/import/string.in.h: Update.
4799         * gnulib/import/stripslash.c: Update.
4800         * gnulib/import/strnlen1.c: Update.
4801         * gnulib/import/strnlen1.h: Update.
4802         * gnulib/import/strstr.c: Update.
4803         * gnulib/import/strtok_r.c: Update.
4804         * gnulib/import/sys_stat.in.h: Update.
4805         * gnulib/import/sys_time.in.h: Update.
4806         * gnulib/import/sys_types.in.h: Update.
4807         * gnulib/import/tempname.c: Update.
4808         * gnulib/import/tempname.h: Update.
4809         * gnulib/import/time.in.h: Update.
4810         * gnulib/import/unistd--.h: Update.
4811         * gnulib/import/unistd-safer.h: Update.
4812         * gnulib/import/unistd.in.h: Update.
4813         * gnulib/import/unsetenv.c: Update.
4814         * gnulib/import/verify.h: Update.
4815         * gnulib/import/extra/snippet/warn-on-use.h: Update.
4816         * gnulib/import/wchar.in.h: Update.
4817         * gnulib/import/wctype.in.h: Update.
4818         * gnulib/import/xalloc-oversized.h: Update.
4819         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
4820         "53e2c179f26a890fa6685af4b6c1397ee370433b".
4821
4822 2018-08-16  Gary Benson <gbenson@redhat.com>
4823
4824         PR gdb/13000:
4825         * gdb/main.c (captured_main_1): Exit with nonzero status
4826         in batch mode if the last command to be executed failed.
4827         * NEWS: Mention the above.
4828
4829 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
4830
4831         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
4832         end of warning message.
4833
4834 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4835
4836         PR gdb/22943:
4837         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
4838         (aarch64_extract_return_value): Use
4839         aapcs_is_vfp_call_or_return_candidate.
4840         (aarch64_return_in_memory): Likewise.
4841         (aarch64_store_return_value): Likewise.
4842
4843 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4844
4845         * aarch64-tdep.c
4846         (aapcs_is_vfp_call_or_return_candidate): Make static
4847         (pass_in_v_or_stack): Remove function.
4848         (pass_in_v_vfp_candidate): New function.
4849         (aarch64_push_dummy_call): Check for float register candidates.
4850
4851 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4852
4853         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
4854         (aapcs_is_vfp_call_or_return_candidate_1): New function.
4855         (aapcs_is_vfp_call_or_return_candidate): Likewise.
4856
4857 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
4858
4859         PR build/23399
4860         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
4861         (struct ipa_sym_addresses): Rename to...
4862         (struct ipa_sym_addresses_common): ... this.
4863         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
4864
4865 2018-08-28  Tom Tromey  <tom@tromey.com>
4866
4867         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4868         (token_fifo): Now a std::vector.
4869         (yylex, c_parse): Update.
4870         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4871         (token_fifo): Now a std::vector.
4872         (yylex, d_parse): Update.
4873         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4874         (token_fifo): Now a std::vector.
4875         (yylex, go_parse): Update.
4876
4877 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
4878
4879         * parser-defs.h (struct type_stack) <elements>: Change type to
4880         std::vector<union type_stack_elt>.
4881         <depth, size>: Remove.
4882         * parse.c (parse_exp_in_context_1): Adjust.
4883         (type_stack_reserve): Remove.
4884         (check_type_stack_depth): Remove.
4885         (insert_into_type_stack): Adjust to std::vector.
4886         (insert_type): Likewise.
4887         (push_type): Likewise.
4888         (push_type_int): Likewise.
4889         (insert_type_address_space): Likewise.
4890         (pop_type): Likewise.
4891         (pop_type_int): Likewise.
4892         (pop_typelist): Likewise.
4893         (pop_type_stack): Likewise.
4894         (append_type_stack): Likewise.
4895         (push_type_stack): Likewise.
4896         (get_type_stack): Likewise.
4897         (type_stack_cleanup): Likewise.
4898         (push_typelist): Likewise.
4899         (follow_types): Likewise.
4900         (_initialize_parse): Likewise.
4901
4902 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
4903
4904         * NEWS: Mention csky target.
4905
4906 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
4907             Hafiz Abid Qadeer  <abidh@codesourcery.com>
4908             Don Breazeal  <donb@codesourcery.com>
4909
4910         * csky-linux-tdep.c: New file.
4911         * csky-tdep.c: Likewise.
4912         * csky-tdep.h: Likewise.
4913         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
4914         csky-tdep.o.
4915         (HFILES_NO_SRCDIR): Add csky-tdep.h.
4916         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
4917         * configure.tgt: Add csky support.
4918
4919 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
4920
4921         * python/py-framefilter.c (py_print_frame): Print frame architecture
4922         when printing on an MI output.
4923
4924 2018-08-27  Tom Tromey  <tom@tromey.com>
4925
4926         PR build/23087:
4927         * configure: Rebuild.
4928         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
4929
4930 2018-08-27  Tom Tromey  <tom@tromey.com>
4931
4932         * aarch64-linux-tdep.c
4933         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
4934         casts to int.
4935
4936 2018-08-27  Tom Tromey  <tom@tromey.com>
4937
4938         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
4939         unsigned.
4940         (ppc64_standard_linkage1, ppc64_standard_linkage2)
4941         (ppc64_standard_linkage3, ppc64_standard_linkage4)
4942         (ppc64_standard_linkage5, ppc64_standard_linkage6)
4943         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
4944         unsigned.
4945
4946 2018-08-27  Tom Tromey  <tom@tromey.com>
4947
4948         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
4949         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
4950
4951 2018-08-27  Tom Tromey  <tom@tromey.com>
4952
4953         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
4954         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
4955         ULONGEST_MAX.
4956         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
4957         ULONGEST_MAX.
4958         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
4959         ULONGEST_MAX.
4960         * sparc-linux-tdep.c (sparc32_linux_sigframe)
4961         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
4962         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
4963         ULONGEST_MAX.
4964         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
4965         (ppc64_linux_sigaction_tramp_frame)
4966         (ppc32_linux_sighandler_tramp_frame)
4967         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
4968         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
4969         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
4970         * mn10300-linux-tdep.c (am33_linux_sigframe)
4971         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
4972         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
4973         * mips-linux-tdep.c (mips_linux_o32_sigframe)
4974         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
4975         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
4976         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
4977         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
4978         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
4979         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
4980         * microblaze-linux-tdep.c
4981         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
4982         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
4983         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
4984         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
4985         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
4986         * common/common-types.h (ULONGEST_MAX): New define.
4987         (CORE_ADDR_MAX): Fix formatting.
4988         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
4989         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
4990         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
4991         (arm_linux_rt_sigreturn_tramp_frame)
4992         (arm_eabi_linux_sigreturn_tramp_frame)
4993         (arm_eabi_linux_rt_sigreturn_tramp_frame)
4994         (thumb2_eabi_linux_sigreturn_tramp_frame)
4995         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
4996         (arm_linux_restart_syscall_tramp_frame)
4997         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
4998         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
4999         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
5000         ULONGEST_MAX.
5001         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
5002
5003 2018-08-27  Tom Tromey  <tom@tromey.com>
5004
5005         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
5006         CORE_ADDR_MAX.
5007         * mips-tdep.c (mips_deal_with_atomic_sequence)
5008         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
5009         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
5010         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
5011         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
5012         CORE_ADDR_MAX.
5013         * aarch64-tdep.c (aarch64_software_single_step): Use
5014         CORE_ADDR_MAX.
5015
5016 2018-08-27  Tom Tromey  <tom@tromey.com>
5017
5018         * linespec.c (complete_linespec_component): Add cast to "char".
5019         * completer.c (completion_tracker::build_completion_result): Add
5020         cast to "char".
5021
5022 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
5023
5024         * solist.h (struct solist, struct target_so_ops): Fix
5025         indentation.
5026
5027 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
5028
5029         * ada-tasks.c (ada_task_info_s): Remove typedef.
5030         (DEF_VEC_O(ada_task_info_s)): Remove.
5031         (struct ada_tasks_inferior_data): Initialize fields.
5032         <task_list>: Make an std::vector.
5033         (get_ada_tasks_inferior_data): Allocate with new.
5034         (ada_get_task_number): Adjust.
5035         (get_task_number_from_id): Likewise.
5036         (valid_task_id): Likewise.
5037         (ada_get_task_info_from_ptid): Likewise.
5038         (iterate_over_live_ada_tasks): Likewise.
5039         (add_ada_task): Likewise.
5040         (read_known_tasks): Likewise.
5041         (ada_build_task_list): Likewise.
5042         (print_ada_task_info): Likewise.
5043         (info_task): Likewise.
5044         (task_command_1): Likewise.
5045
5046 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
5047
5048         * ada-lang.c (add_angle_brackets): Return std::string.
5049
5050 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
5051
5052         * python/py-threadevent.c (py_get_event_thread): Initialize
5053         pythread.
5054
5055 2018-08-24  Pedro Alves  <palves@redhat.com>
5056
5057         * python/py-bpevent.c (create_breakpoint_event_object): Use
5058         copy-initialization.
5059         * python/py-continueevent.c (emit_continue_event): Use
5060         copy-initialization.
5061         * python/py-exitedevent.c (create_exited_event_object): Return a
5062         gdbpy_ref<>.
5063         (emit_exited_event): Use copy-initialization.
5064         * python/py-inferior.c (python_new_inferior)
5065         (python_inferior_deleted, add_thread_object): Use
5066         copy-initialization.
5067         * python/py-infevents.c (create_inferior_call_event_object)
5068         (create_register_changed_event_object)
5069         (create_memory_changed_event_object): Return a gdbpy_ref<>.
5070         (emit_inferior_call_event, emit_memory_changed_event)
5071         (emit_register_changed_event): Use copy-initialization.
5072         * python/py-newobjfileevent.c (create_new_objfile_event_object):
5073         Return a gdbpy_ref<>.
5074         (emit_new_objfile_event): Use copy-initialization.
5075         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
5076         (emit_clear_objfiles_event): Use copy-initialization.
5077         * python/py-signalevent.c (create_signal_event_object): Use
5078         copy-initialization.
5079         * python/py-threadevent.c (create_thread_event_object): Use
5080         copy-initialization.
5081
5082 2018-08-24  Pedro Alves  <palves@redhat.com>
5083             Simon Marchi  <simon.marchi@ericsson.com>
5084
5085         PR gdb/23379
5086         * python/py-continueevent.c: Include "gdbthread.h".
5087         (create_continue_event_object): Add intro comment.  Add 'ptid'
5088         parameter.  Use it to find thread to pass to
5089         create_thread_event_object.
5090         (emit_continue_event): Pass PTID down to
5091         create_continue_event_object.
5092         * python/py-event.h (py_get_event_thread): Declare.
5093         (create_thread_event_object): Remove default from 'thread'
5094         parameter.
5095         * python/py-stopevent.c (create_stop_event_object): Use
5096         py_get_event_thread.
5097         * python/py-threadevent.c (get_event_thread): Rename to ...
5098         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
5099         and use it to find the thread.
5100         (create_thread_event_object): Assert that THREAD isn't null.
5101         Don't find the event thread here.
5102
5103 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
5104
5105         * block.h (blockrange, blockranges): New struct declarations.
5106         (struct block): Add new field named `ranges'.
5107         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
5108         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
5109         macros for accessing ranges in struct block.
5110         (make_blockranges): New declaration.
5111         block.c (make_blockranges): New function.
5112         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
5113         for block.
5114         * symtab.h (find_pc_partial_function): Add new parameter `block'.
5115         * blockframe.c (cache_pc_function_block): New static global.
5116         (clear_pc_function_cache): Clear cache_pc_function_block.
5117         (find_pc_partial_function): Move comment to symtab.h.  Add
5118         support for non-contiguous blocks.
5119         * cli/cli-cmds.c (block.h): Include.
5120         (print_disassembly): Handle printing of non-contiguous blocks.
5121         (disassemble_current_function): Likewise.
5122         (disassemble_command): Likewise.
5123
5124         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
5125         BLOCK_START.
5126         * blockframe.c (get_pc_function_start): Likewise.
5127         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
5128         (gcc_symbol_address): Likewise.
5129         * compile/compile-object-run.c (compile_object_run): Likewise.
5130         * compile/compile.c (get_expr_block_and_pc): Likewise.
5131         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
5132         (func_addr_to_tail_call_list): Likewise.
5133         * findvar.c (default_read_var_value): Likewise.
5134         * inline-frame.c (inline_frame_this_id): Likewise.
5135         (skip-inline_frames): Likewise.
5136         * infcmd.c (until_next_command): Likewise.
5137         * linespec.c (convert_linespec_to_sals): Likewise.
5138         * parse.c (parse_exp_in_context_1): Likewise.
5139         * printcmd.c (build_address_symbolic): likewise.
5140         (info_address_command): Likewise.
5141         symtab.c (find_function_start_sal): Likewise.
5142         (skip_prologue_sal): Likewise.
5143         (find_function_alias_target): Likewise.
5144         (find_gnu_ifunc): Likewise.
5145         * stack.c (find_frame_funname): Likewise.
5146         * symtab.c (fixup_symbol_section): Likewise.
5147         (find_function_start_sal): Likewise.
5148         (skip_prologue_sal): Likewsie.
5149         (find_function_alias_target): Likewise.
5150         (find_gnu_ifunc): Likewise.
5151         * tracepoint.c (info_scope_command): Likewise.
5152         * value.c (value_fn_field): Likewise.
5153
5154         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
5155         in place of find_pc_partial_function.
5156         * blockframe.c (find_function_entry_range_from_pc): New function.
5157         * symtab.h (find_function_entry_range_from_pc): Declare and document.
5158         * objfiles.c (objfile_relocate1): Relocate start and end addresses
5159         for each range in a block.
5160
5161
5162 2018-08-23  Xavier Roirand  <roirand@adacore.com>
5163
5164         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
5165         incrementation.
5166
5167 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
5168
5169         * solib-svr4.c (read_program_headers_from_bfd): Return
5170         gdb::optional<gdb::byte_vector>.
5171         (svr4_exec_displacement): Adjust.
5172
5173 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
5174
5175         * solib-svr4.c (read_program_header): Return
5176         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
5177         (find_program_interpreter): Return
5178         gdb::optional<gdb::byte_vector>.
5179         (scan_dyntag_auxv): Adjust.
5180         (enable_break): Adjust.
5181         (svr4_exec_displacement): Adjust.
5182
5183 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
5184
5185         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
5186         * inf-child.c (inf_child_target::terminal_save_inferior): New.
5187
5188 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
5189
5190         * guile/scm-string.c (gdbscm_scm_from_printf): Use
5191         string_vprintf.
5192         * guile/scm-utils.c (gdbscm_printf): Likewise.
5193         * serial.c (serial_printf): Likewise.
5194         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
5195
5196 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
5197
5198         * stack.c (print_frame): Print frame architecture when printing on
5199         an MI output.
5200         * NEWS: Mention new "arch" attribute in frame output.
5201
5202 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
5203
5204         * arch/aarch64.h (aarch64_regnum): Update comment.
5205
5206 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
5207
5208         * NEWS: Add SVE to 8.2 section.
5209
5210 2018-08-21  Pedro Alves  <palves@redhat.com>
5211
5212         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
5213         out from gdbscm_parse_function_args.
5214         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
5215         gdbscm_parse_function_args_1.
5216
5217 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
5218
5219         PR gdb/17816
5220         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
5221         operator.
5222
5223 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
5224
5225         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
5226
5227 2018-08-19  Michael Spang  <spang@google.com>
5228
5229         PR gdb/11786
5230         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
5231         for PT_TLS segments.
5232
5233 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
5234
5235         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
5236         dwarf_variable_value.
5237         * dwarf2-frame.c (class dwarf_expr_executor):
5238         Add override for dwarf_variable_value.
5239         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
5240         (class symbol_needs_eval_context): Likewise.
5241         (indirect_synthetic_pointer): Add forward declaration.
5242         (sect_variable_value): New function.
5243         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
5244         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
5245         for DW_OP_GNU_variable_value.
5246
5247 2018-08-16  Tom Tromey  <tom@tromey.com>
5248
5249         * top.c (read_command_file): Update.
5250         (command_line_input): Remove "repeat" argument.
5251         * ada-lang.c (get_selections): Update.
5252         * linespec.c (decode_line_2): Update.
5253         * defs.h (command_line_input): Remove argument.
5254         * cli/cli-script.c (read_next_line): Update.
5255         * python/py-gdb-readline.c: Update.
5256
5257 2018-08-17  Tom Tromey  <tom@tromey.com>
5258
5259         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
5260         command_line_input.
5261
5262 2018-08-15  Tom Tromey  <tom@tromey.com>
5263
5264         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
5265
5266 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
5267
5268         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
5269         If used, use find_pc_partial_function to find address range
5270         to disassemble.
5271         * mi/mi-main.c (mi_cmd_list_features): Report
5272         "data-disassemble-a-option" feature.
5273         * NEWS: Mention new -data-disassemble option -a.
5274
5275 2018-08-13  Tom Tromey  <tom@tromey.com>
5276
5277         * common/common-defs.h (_FORTIFY_SOURCE): Define.
5278
5279 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
5280
5281         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
5282         (aarch64_linux_collect_sve_regset): Likewise.
5283         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
5284         * regcache.h (regcache_map_entry_size): New function.
5285
5286 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
5287
5288         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
5289         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
5290         (SVE_HEADER_VL_LENGTH): Likewise.
5291         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
5292         (SVE_HEADER_FLAGS_LENGTH): Likewise.
5293         (SVE_HEADER_RESERVED_LENGTH): Likewise.
5294         (SVE_HEADER_SIZE_OFFSET): Likewise.
5295         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
5296         (SVE_HEADER_VL_OFFSET): Likewise.
5297         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
5298         (SVE_HEADER_FLAGS_OFFSET): Likewise.
5299         (SVE_HEADER_RESERVED_OFFSET): Likewise.
5300         (SVE_HEADER_SIZE): Likewise.
5301         (aarch64_linux_core_read_vq): Add function.
5302         (aarch64_linux_core_read_description): Check for SVE section.
5303
5304 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
5305
5306         * aarch64-fbsd-tdep.c
5307         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
5308         collect_size.
5309         * aarch64-linux-tdep.c
5310         (aarch64_linux_iterate_over_regset_sections): Likewise.
5311         * alpha-linux-tdep.c
5312         (alpha_linux_iterate_over_regset_sections):
5313         * alpha-nbsd-tdep.c
5314         (alphanbsd_iterate_over_regset_sections): Likewise.
5315         * amd64-fbsd-tdep.c
5316         (amd64fbsd_iterate_over_regset_sections): Likewise.
5317         * amd64-linux-tdep.c
5318         (amd64_linux_iterate_over_regset_sections): Likewise.
5319         * arm-bsd-tdep.c
5320         (armbsd_iterate_over_regset_sections): Likewise.
5321         * arm-fbsd-tdep.c
5322         (arm_fbsd_iterate_over_regset_sections): Likewise.
5323         * arm-linux-tdep.c
5324         (arm_linux_iterate_over_regset_sections): Likewise.
5325         * corelow.c (get_core_registers_cb): Likewise.
5326         (core_target::fetch_registers): Likewise.
5327         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
5328         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
5329         * gdbarch.h (void): Regenerate.
5330         * gdbarch.sh: Add supply_size and collect_size.
5331         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
5332         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
5333         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
5334         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
5335         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
5336         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
5337         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
5338         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
5339         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
5340         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
5341         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
5342         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
5343         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
5344         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
5345         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections):
5346         Likewise.
5347         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
5348         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
5349         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
5350         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
5351         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
5352         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
5353         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections):
5354         Likewise.
5355         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
5356         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
5357         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
5358         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
5359         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
5360         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
5361         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
5362         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
5363
5364 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
5365
5366         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
5367         with string_printf.
5368
5369 2018-08-10  Keith Seitz  <keiths@redhat.com>
5370
5371         * compile/compile-c-support.c (add_code_header, add_code_footer):
5372         Move into policy class.
5373         (c_push_user_expression, pop_user_expression_nop)
5374         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
5375         (compile_program): New host class.
5376         (c_compile_program): New typedef.
5377         (c_compute_porgram): Use c_compile_program.
5378
5379 2018-08-10  Keith Seitz  <keiths@redhat.com>
5380
5381         * compile/compile-internal.h (compile_instance::~compile_instance):
5382         Remove calls to htab_delete.
5383         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
5384         * compile.c (compile_instance::compile_instance): Initialize
5385         htab unique pointers.
5386         (compile_instance::get_cached_type, compile_instance::insert_type)
5387         (compile_instance::error_symbol_once): Update for unique_ptr.
5388
5389 2018-08-10  Keith Seitz  <keiths@redhat.com>
5390
5391         * compile/compile-c-symbols.c (struct symbol_error)
5392         (hash_symbol_error, eq_symbol_error, del_symbol_error)
5393         (compile_instance::insert_symbol_error)
5394         (compile_instance::error_symbol_once): Move to ...
5395         * compile/compile.c: ... here.
5396
5397 2018-08-10  Keith Seitz  <keiths@redhat.com>
5398
5399         * compile/compile-c-support.c (c_get_compile_context): Use `new'
5400         instead of `new_compile_instance'.
5401         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
5402         Update description.
5403         If the symbol error map is not initialized, create it.
5404         (generate_c_for_for_one_symbol): Do not check/initialize
5405         the symbol error map.
5406         * compile/compile-c-types.c (compile_c_instance): Make a class.
5407         Update all callers.
5408         (compile_instance::compile_instance): Initialize the type cache.
5409         (get_cached_type): New function.
5410         (insert_type): Update description.
5411         (compile_c_instance::m_default_cflags): Define.
5412         (convert_type): Update description.  Use get_cached_type.
5413         (delete_instance): Moved to destructor.
5414         (new_compile_instance): Moved to constructor.
5415         * compile/compile-c.h (compile_c_instance): Make class inheriting
5416         from compile_instance.
5417         <base>: Remove field.
5418         <type_map, symbol_err_map>: Move to base class.
5419         <c_plugin>: Rename to `m_plugin' and remove pointer type.
5420         * compile/compile-internal.h (compile_instance): Make class.
5421         <type_map_t, symbol_err_map_t>: Define.
5422         <fe>: Rename to `m_gcc_fe'.
5423         <scope, block, gcc_target_options>: Add `m_' prefix.
5424         <m_type_map, m_symbol_err_map>: New fields, moved from
5425         compile_c_instance.
5426         <destroy>: Remove.
5427         (convert_type, new_compile_instance): Remove.
5428         * compile/compile.c (cleanup_compile_instance): Remove.
5429         (compile_to_object): Use unique_ptr to eliminate cleanups.
5430         (compile_instance::set_print_callback, compile_instance::version)
5431         (compile_instance::set_verbose)
5432         (compile_instance::set_driver_filename)
5433         (compile_instance::set_triplet_regexp)
5434         (compile_instance::set_arguments)
5435         (compile_instance::set_source_file)
5436         (compile_instance::compile): Define.
5437
5438 2018-08-10  Keith Seitz  <keiths@redhat.com>
5439
5440         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
5441         * compile/compile-c-types.c: Define GCC_METHODN macros and include
5442         gcc-c-fe.def to define C plugin.
5443         (delete_instance): Delete `c_plugin'.
5444         (new_compile_instance): Initialize `c_plugin'.
5445         * compile/compile-c.h: Include gcc_c_plugin.h.
5446         (struct compile_c_instance) <c_plugin>: New member.
5447         * gcc-c-plugin.h: New file.
5448         Update all callers with API change.
5449
5450 2018-08-10  Keith Seitz  <keiths@redhat.com>
5451
5452         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
5453         (HFILES_NO_SRCDIR): ... to here.
5454         Add compile-internal.h and compile-c.h.
5455         * compile/compile-c-support.c: Include compile-c.h.
5456         * compile/compile-c-symbols.c: Include compile-c.h.
5457         (generate_c_for_variable_locations): Update comment.
5458         * compile/compile-c-types.c: Include compile-c.h.
5459         * compile/compile-c.h: New file -- moved C language declarations
5460         from other files here.
5461         * compile/compile-internal.h: Do not include hashtab.h or
5462         common/enum-flags.h.
5463         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
5464         (gcc_convert_symbol, gcc_symbol_address)
5465         (generate_c_for_variable_locations, c_get_mode_for_size)
5466         (c_get_range_decl_name): Definitions moved to compile-c.h.
5467         * compile/compile-loc2c.c: Include compile-c.h.
5468
5469 2018-08-10  Keith Seitz  <keiths@redhat.com>
5470
5471         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
5472         (c_symbol_substitution_name): ... this.
5473         Update all callers.
5474
5475 2018-08-10  Keith Seitz  <keiths@redhat.com>
5476
5477         * compile/compile-c-support.c (c_compute_program): Use
5478         unique_xmalloc_ptr to eliminate cleanup.
5479         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
5480         Return a unique_xmalloc_ptr and eliminate cleanup.
5481         * compile/compile-internal.h (generate_c_for_variable_locations):
5482         Return unique_xmalloc_ptr and update description.
5483
5484 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
5485
5486         * corelow.c (core_target::get_core_register_section): Rename
5487         min_size to section_min_size.
5488
5489 2018-08-09  Jim Wilson  <jimw@sifive.com>
5490
5491         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
5492         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
5493         * NEWS: Mention new GNU/Linux RISC-V target.
5494         * configure.host: Add riscv*-*-linux*.
5495         * configure.nat: Add riscv*.
5496         * configure.tgt: Add riscv*-*-linux*.
5497         * riscv-linux-nat.c: New file.
5498         * riscv-linux-tdep.c: New file.
5499
5500 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5501
5502         * infrun.c (resume): Make static, add forward declaration.
5503         (proceed): Update header comment.
5504         * infrun.h (resume): Delete declaration.
5505
5506 2018-08-09  Tom Tromey  <tom@tromey.com>
5507
5508         * riscv-tdep.h: Minor formatting fixes.
5509
5510 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
5511
5512         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
5513         * dwarf-index-cache.c (create_dir_and_check): Likewise.
5514         (test_mkdir_recursive): Likewise.
5515         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
5516
5517 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5518
5519         * valarith.c (value_subscripted_rvalue): If an array is not in
5520         memory, and we don't know the upper bound, then we can't know that
5521         the requested element exists or not.
5522
5523 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
5524
5525         * target.c (str_comma_list_concat_elem): Fix typo in comment.
5526         (target_options_to_string): Add comment.
5527
5528 2018-08-08  Tom Tromey  <tom@tromey.com>
5529
5530         * unittests/scoped_mmap-selftests.c: Check result of "write".
5531
5532 2018-08-08  Jim Wilson  <jimw@sifive.com>
5533
5534         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
5535         (decode_register_index_short): New.
5536         (decode_j_type_insn, decode_cj_type_insn): New.
5537         (decode_b_type_insn, decode_cb_type_insn): New.
5538         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
5539         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
5540         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
5541         is_c_sw_insn instead of is_sw_insn.
5542         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
5543         (riscv_software_single_step): New.
5544         * riscv-tdep.h (riscv_software_single_step): Declare.
5545
5546         * riscv-tdep.c (riscv_isa_xlen): Drop static.
5547         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
5548
5549 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
5550
5551         PR gdb/18050:
5552         * target.c (dispose_inferior): Don't dispose of inferiors that are
5553         already killed.
5554
5555 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
5556
5557         * remote.c (remote_target::download_tracepoint): Change char* to
5558         const char*.
5559
5560 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
5561
5562         * target.h (target_options_to_string): Return an std::string.
5563         * target.c (str_comma_list_concat_elem): Return void, use
5564         std::string.
5565         (do_option): Likewise.
5566         (target_options_to_string): Return an std::string.
5567         * linux-nat.c (linux_nat_target::wait): Adjust.
5568         * target-debug.h (target_debug_print_options): Adjust.
5569
5570 2018-08-07  Tom Tromey  <tom@tromey.com>
5571
5572         * Makefile.in (CPPFLAGS): New variable.
5573         (INTERNAL_CPPFLAGS): Use it.
5574
5575 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5576
5577         * NEWS: Mention the index cache.
5578
5579 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5580
5581         * common/pathstuff.h (get_standard_cache_dir): New.
5582         * common/pathstuff.c (get_standard_cache_dir): New.
5583         * build-id.h (build_id_to_string): New.
5584         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
5585         DEBUG_STR_SUFFIX): Move to here.
5586         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
5587         DEBUG_STR_SUFFIX): Move from there.
5588         (write_psymtabs_to_index): Make non-static, add basename
5589         parameter.  Write to temporary files, rename when done.
5590         (save_gdb_index_command): Adjust call to
5591         write_psymtabs_to_index.
5592         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
5593         field.
5594         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
5595         (get_gdb_index_contents_from_cache): New.
5596         (get_gdb_index_contents_from_cache_dwz): New.
5597         (dwarf2_initialize_objfile): Read index from cache.
5598         (dwarf2_build_psymtabs): Save to index.
5599         * dwarf-index-cache.h: New file.
5600         * dwarf-index-cache.c: New file.
5601         * dwarf-index-write.h: New file.
5602
5603 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5604
5605         * gnulib/aclocal.m4: Re-generate.
5606         * gnulib/config.in: Re-generate.
5607         * gnulib/configure: Re-generate.
5608         * gnulib/import/Makefile.am: Re-generate.
5609         * gnulib/import/Makefile.in: Re-generate.
5610         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
5611         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
5612         * gnulib/import/m4/mkdir.m4: New file.
5613         * gnulib/import/mkdir.c: New file.
5614         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
5615         module.
5616
5617 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5618
5619         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
5620         * common/scoped_mmap.c: New file.
5621         * common/scoped_mmap.h (destroy): New method.
5622         (~scoped_mmap, reset): Use destroy.
5623         (scoped_mmap): New move constructor.
5624         (mmap_file): New declaration.
5625         * unittests/scoped_mmap-selftests.c (test_normal,
5626         test_invalid_filename, run_tests): New functions.
5627         (_initialize_scoped_mmap_selftests): Register selftest.
5628
5629 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5630
5631         * dwarf2read.c (read_gdb_index_from_section): Rename to...
5632         (read_gdb_index_from_buffer): ... this.  Remove section
5633         parameter, add buffer parameter.
5634         (get_gdb_index_contents_ftype,
5635         get_gdb_index_contents_dwz_ftype): New typedefs.
5636         (dwarf2_read_gdb_index): Add callback parameters to get the
5637         index contents.
5638         (get_gdb_index_contents_from_section): New.
5639         (dwarf2_initialize_objfile): Update call to
5640         dwarf2_read_gdb_index.
5641
5642 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5643
5644         * common/filestuff.h (gdb_fopen_cloexec): New overload.
5645         (gdb_open_cloexec): Likewise.
5646         * nat/linux-osdata.c (command_from_pid): Use string_printf.
5647         (commandline_from_pid): Likewise.
5648         (linux_xfer_osdata_threads): Likewise.
5649         (linux_xfer_osdata_fds): Likewise.
5650         * ada-lang.c (is_package_name): Likewise.
5651         * auxv.c (procfs_xfer_auxv): Likewise.
5652         * breakpoint.c (print_one_breakpoint_location): Use
5653         uiout::field_fmt.
5654         (print_one_catch_solib): Use string_printf.
5655         * coff-pe-read.c (add_pe_exported_sym): Likewise.
5656         (add_pe_forwarded_sym): Likewise.
5657         * dwarf2read.c (create_type_unit_group): Likewise.
5658         (build_error_marker_type): Likewise.
5659         * infcall.c (get_function_name): Likewise.
5660         * valprint.c (print_converted_chars_to_obstack): Likewise.
5661         * xtensa-tdep.c (xtensa_register_type): Likewise.
5662
5663 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
5664
5665         * remote.c (remote_target::download_tracepoint): Fix format
5666         string errors.
5667
5668 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5669
5670         * tracefile.c: Include common/byte-vector.h.
5671         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
5672         with trace_regblock_size if needed.  Update uses of buf.
5673
5674 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5675
5676         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
5677         std::vector<unsigned char>.
5678         * tracepoint.c (collection_list::collection_list): Remove
5679         m_regs_mask initializer from initializer list.  Resize
5680         m_regs_mask using the largest remote register number.
5681         (collection_list::add_remote_register): Remove size check on
5682         m_regs_mask.  Use at to access element.
5683         (collection_list::stringify): Change type of temp_buf to
5684         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
5685         stringify the register mask.  Use pack_hex_byte for the register
5686         mask.
5687
5688 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5689
5690         * tracepoint.h (class collection_list) <add_register>: Remove.
5691         <add_remote_register, add_ax_registers, add_local_register>:
5692         Declare.
5693         <add_memrange>: Add scope parameter.
5694         * tracepoint.c (encode_actions_1): Likewise.
5695         (collection_list::add_register): Rename to ...
5696         (collection_list::add_remote_register): ... this.  Update
5697         comment.
5698         (collection_list::add_ax_registers, add_local_register): New
5699         methods.
5700         (collection_list::add_memrange): Add scope parameter.  Call
5701         add_local_register instead of add_register.
5702         (finalize_tracepoint_aexpr): New function.
5703         (collection_list::collect_symbol): Update calls to add_memrange.
5704         Call add_local_register instead of add_register.  Call
5705         add_ax_registers.  Call finalize_tracepoint_aexpr.
5706         (encode_actions_1): Get remote regnos for $reg action.  Call
5707         add_remote_register, add_ax_registers, and add_local_register.
5708         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
5709         (validate_actionline): Call finalize_tracepoint_aexpr.
5710
5711 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5712
5713         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
5714         Replace array buf with gdb::char_vector buf, of size
5715         get_remote_packet_size ().  Replace references to buf and
5716         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
5717         and xsnprintf with snprintf.  Raise errors if the buffer is too
5718         small.
5719
5720 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5721
5722         * remote.c (remote_target::download_tracepoint): Fix the has_more
5723         predicate in the QTDP action list iteration.
5724
5725 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5726
5727         * remote.c (remote_target::download_tracepoint): Fix indentation
5728         in for block.
5729
5730 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5731
5732         * proc-api.c (_initialize_proc_api): Remove c, unused.
5733         * procfs.c (procfs_init_inferior): Remove signals, unused.
5734         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
5735         unused.
5736
5737 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
5738             Andrew Burgess  <andrew.burgess@embecosm.com>
5739
5740         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
5741         'W_STOPCODE (0)' as this could be ambiguous.
5742
5743 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
5744
5745         * ser-tcp.c (net_open): Fix thinko when deciding whether to
5746         disable TCP's Nagle algorithm (use "ai_protocol" instead of
5747         "ai_socktype").
5748
5749 2018-08-02  Tom Tromey  <tom@tromey.com>
5750
5751         PR symtab/16842.
5752         * dwarf2read.c (read_func_scope): Set symtab on template parameter
5753         symbols.
5754         (process_structure_scope): Likewise.
5755
5756 2018-08-02  Xavier Roirand  <roirand@adacore.com>
5757
5758         PR gdb/22629:
5759         * darwin-nat.c (darwin_kill_inferior): Fix handling of
5760         kill inferior.
5761
5762 2018-08-02  Tom Tromey  <tom@tromey.com>
5763
5764         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
5765         (darwin_suspend_inferior, darwin_resume_inferior)
5766         (darwin_decode_notify_message, darwin_resume_inferior_threads)
5767         (darwin_check_new_threads): Check result of get_darwin_inferior.
5768
5769 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
5770
5771         GDB 8.1.1 released.
5772
5773 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
5774
5775         * varobj.c (varobj_get_path_expr_parent): Report an error if
5776         parent is a dynamic varobj.
5777
5778 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
5779
5780         * gnulib/aclocal.m4: Re-generate.
5781         * gnulib/config.in: Re-generate.
5782         * gnulib/configure: Re-generate.
5783         * gnulib/import/Makefile.in: Re-generate.
5784         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
5785         * gnulib/import/m4/onceonly.m4: Re-generate.
5786
5787 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
5788
5789         * target-descriptions.c (struct xml_test_tdesc): New.
5790         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
5791         (record_xml_tdesc): Update.
5792         (maintenance_check_xml_descriptions): Update.
5793         * target-descriptions.h (record_xml_tdesc): Update comment.
5794
5795 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
5796
5797         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
5798         checking array bounds are defined.
5799
5800 2018-07-30  Tom Tromey  <tom@tromey.com>
5801
5802         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
5803         irreflexivity violation.
5804
5805 2018-07-30  Tom Tromey  <tom@tromey.com>
5806
5807         * cli/cli-decode.c (lookup_cmd): Remove lint code.
5808         * value.c (unpack_long): Remove lint code.
5809         * valops.c (value_ind): Remove lint code.
5810         * valarith.c (value_x_binop, value_x_unop, value_equal)
5811         (value_pos): Remove lint code.
5812
5813 2018-07-28  Tom de Vries  <tdevries@suse.de>
5814
5815         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
5816         with undefined upper bound as <optimized out>.
5817
5818 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
5819
5820         * gcore.in: Rename variable "name" to "prefix".  Expand
5821         "usage" text.
5822
5823 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
5824
5825         * windows-nat.c (windows_nat_target::create_inferior): Update to
5826         call close() in global namespace.
5827
5828 2018-07-26  Tom Tromey  <tom@tromey.com>
5829
5830         * dwarf-index-write.c (add_address_entry): Don't add objfile
5831         offsets.
5832         * dbxread.c (find_stab_function): Rename from
5833         find_stab_function_addr.  Return a bound_minimal_symbol.
5834         (read_dbx_symtab): Use raw_text_low, raw_text_high.
5835         Don't add objfile offsets.
5836         (end_psymtab): Use raw_text_low, raw_text_high,
5837         MSYMBOL_VALUE_RAW_ADDRESS.
5838         (read_ofile_symtab): Update.
5839         (process_one_symbol): Update.
5840         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
5841         offsets.
5842         (dw2_relocate): Remove.
5843         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
5844         searching addrmap.
5845         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
5846         Update.
5847         (process_psymtab_comp_unit_reader, add_partial_symbol)
5848         (add_partial_subprogram, dwarf2_ranges_read): Update.
5849         (load_partial_dies): Update.
5850         (add_address_entry): Don't add objfile offsets.
5851         (dwarf2_build_include_psymtabs): Update.
5852         (create_addrmap_from_aranges): Don't add objfile offsets.
5853         (dw2_find_pc_sect_compunit_symtab): Update.
5854         * mdebugread.c (parse_symbol): Don't add objfile offsets.
5855         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
5856         Update.
5857         (parse_partial_symbols): Don't add objfile offsets.  Use
5858         raw_text_low, raw_text_high.  Update.
5859         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
5860         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
5861         or call 'relocate' quick function.  Clear psymbol_map.
5862         * psympriv.h (struct partial_symbol) <address>: Add section
5863         offset.
5864         <set_unrelocated_address>: Rename from set_address.
5865         <raw_text_low, raw_text_high>: New methods.
5866         <text_low, text_high>: Add objfile parameter.
5867         (add_psymbol_to_bcache): Add 'section' parameter.  Call
5868         set_unrelocated_address.
5869         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5870         (find_pc_psymbol): Update.
5871         (fixup_psymbol_section, relocate_psymtabs): Remove.
5872         (dump_psymtab, psym_functions): Update.
5873         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
5874         parameter.
5875         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
5876         (start_psymtab_common): Update.
5877         * symfile-debug.c (debug_qf_relocate): Remove.
5878         (debug_sym_quick_functions): Update.
5879         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
5880         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
5881         Update.
5882
5883 2018-07-26  Tom Tromey  <tromey@redhat.com>
5884
5885         * dbxread.c (end_psymtab): Use text_high_valid and
5886         text_low_valid.
5887         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
5888         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
5889         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
5890         Update comment.
5891         <text_low_valid, text_high_valid>: New fields.
5892         <set_text_low, set_text_high>: Update.
5893         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
5894
5895 2018-07-26  Tom Tromey  <tom@tromey.com>
5896
5897         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
5898         Update.
5899         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
5900         textlow and texthigh fields.
5901         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
5902         Update.
5903         * mdebugread.c (parse_lines, parse_partial_symbols)
5904         (psymtab_to_symtab_1): Update.
5905         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
5906         Rename fields.  Update comment.  Now private.
5907         <text_low, text_high, set_text_low, set_text_high>: New methods.
5908         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5909         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
5910         (start_psymtab_common, maintenance_info_psymtabs)
5911         (maintenance_check_psymtabs): Update.
5912         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
5913         texthigh fields.
5914         (scan_xcoff_symtab): Update.
5915
5916 2018-07-26  Tom Tromey  <tromey@redhat.com>
5917
5918         * psympriv.h (struct partial_symbol) <unrelocated_address,
5919         address, set_address>: New methods.
5920         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
5921         (fixup_psymbol_section, relocate_psymtabs): Update.
5922         (print_partial_symbols): Add 'objfile' parameter.  Update.
5923         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
5924         Update.
5925
5926 2018-07-26  Tom Tromey  <tom@tromey.com>
5927
5928         * dwarf-index-write.c (write_psymbols, debug_names::insert)
5929         (debug_names::write_psymbols): Update.
5930         * psympriv.h (struct partial_symbol): Derive from
5931         general_symbol_info.
5932         <obj_section>: New method.
5933         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
5934         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5935         (find_pc_sect_psymbol, fixup_psymbol_section)
5936         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
5937         (print_partial_symbols, recursively_search_psymtabs)
5938         (compare_psymbols, psymbol_hash, psymbol_compare)
5939         (add_psymbol_to_bcache, maintenance_check_psymtabs)
5940         (psymbol_name_matches, psym_fill_psymbol_map): Update.
5941
5942 2018-07-26  Tom Tromey  <tromey@redhat.com>
5943
5944         * dbxread.c (end_psymtab): Remove dead code.
5945
5946 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
5947
5948         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
5949         DWARF unwinders are disabled.
5950         * dwarf2-frame.c: Add dwarf2read.h include.
5951         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
5952         disabled.
5953         (dwarf2_frame_unwinders_enabled_p): Define.
5954         (show_dwarf_unwinders_enabled_p): New function.
5955         (_initialize_dwarf2_frame): Register switch to control DWARF
5956         unwinder use.
5957         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
5958         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
5959         (show_dwarf_cmdlist): Remove static keyword.
5960         * dwarf2read.h (set_dwarf_cmdlist): Declare.
5961         (show_dwarf_cmdlist): Declare.
5962         * NEWS: Document new feature.
5963
5964 2018-07-26  Tom de Vries  <tdevries@suse.de>
5965
5966         PR breakpoints/23366
5967         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
5968
5969 2018-07-26  Tom de Vries  <tdevries@suse.de>
5970
5971         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
5972         DW_AT_count can't be translated to a dynamic prop.
5973
5974 2018-07-25  Tom de Vries  <tdevries@suse.de>
5975
5976         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
5977         try/catch.
5978
5979 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
5980
5981         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
5982
5983 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
5984
5985         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
5986
5987 2018-07-24  Keith Seitz  <keiths@redhat.comt
5988
5989         PR symtab/23010
5990         * dwarf2read.c (dw2_add_symbol_to_list): New function.
5991         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
5992         instead of add_symbol_to_list.
5993         (read_file_scope): Call prepare_one_comp_unit before reading
5994         any other DIEs.
5995
5996 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
5997
5998         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
5999
6000 2018-07-24  Tom Tromey  <tom@tromey.com>
6001
6002         * utils.c (malloc, realloc, free): Don't declare.
6003         * configure, config.in: Rebuild.
6004         * configure.ac: Don't check for declarations of free, malloc, or
6005         realloc.
6006
6007 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
6008
6009         * aarch64-linux-nat.c
6010         (aarch64_linux_nat_target::stopped_data_address): Remove unused
6011         variable.
6012         * arm-linux-nat.c (fetch_regs): Likewise.
6013         (store_regs): Likewise.
6014         (fetch_vfp_regs): Likewise.
6015         (store_vfp_regs): Likewise.
6016         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
6017         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
6018         (arm_linux_nat_target::insert_watchpoint): Likewise.
6019         (arm_linux_nat_target::remove_watchpoint): Likewise.
6020         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
6021         Likewise.
6022         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
6023         Likewise.
6024         * ppc-linux-nat.c (fetch_register): Likewise.
6025         (fetch_all_gp_regs): Likewise.
6026         (fetch_ppc_registers): Likewise.
6027         (store_all_gp_regs): Likewise.
6028         (store_ppc_registers): Likewise.
6029         (hwdebug_insert_point): Likewise.
6030         (can_use_watchpoint_cond_accel): Likewise.
6031         * remote-sim.c (gdb_os_write_stdout): Likewise.
6032
6033 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
6034             Tom Tromey  <tom@tromey.com>
6035
6036         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
6037         test for it.
6038         * configure: Rebuild.
6039
6040 2018-07-22  Tom Tromey  <tom@tromey.com>
6041
6042         * regformats/regdat.sh: Define xmltarget_${name} inside
6043         #ifndef IN_PROCESS_AGENT.
6044
6045 2018-07-22  Tom Tromey  <tom@tromey.com>
6046
6047         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
6048
6049 2018-07-22  Tom Tromey  <tom@tromey.com>
6050
6051         * symfile.c (reread_symbols): Notify iter, not objfile.
6052
6053 2018-07-22  Tom Tromey  <tom@tromey.com>
6054
6055         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
6056         Use arch_ops.
6057         (ravenscar_thread_target::prepare_to_store): Likewise.
6058
6059 2018-07-22  Tom Tromey  <tom@tromey.com>
6060
6061         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
6062         unused variable.  Call value_fetch_lazy when needed.
6063         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
6064         Remove unused variable.  Call value_fetch_lazy when needed.
6065
6066 2018-07-22  Tom Tromey  <tom@tromey.com>
6067
6068         * m32c-tdep.c (mark_dma): Return void.
6069         (make_regs): Remove unused declarations.
6070
6071 2018-07-22  Tom Tromey  <tom@tromey.com>
6072
6073         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
6074         cmdscm_get_valid_command_smob_arg_unsafe for effect.
6075         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
6076         bkscm_get_valid_block_smob_arg_unsafe for effect.
6077
6078 2018-07-22  Tom Tromey  <tom@tromey.com>
6079
6080         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
6081         value_type.
6082
6083 2018-07-22  Tom Tromey  <tom@tromey.com>
6084
6085         * windows-nat.c (saved_context): Conditionally define.
6086         * remote.c (remote_target::remote_btrace_maybe_reopen):
6087         Conditionally declare "warned".
6088         * inflow.c (sigquit_ours): Conditionally define.
6089         (new_tty): Move "tty" declaration inside #if.
6090         * guile/guile.c (guile_datadir): Conditionally define.
6091         * charset.c (set_be_le_names): Move some declarations inside #if.
6092         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
6093         #if.
6094         (parse_xml_btrace_conf): Likewise.
6095
6096 2018-07-22  Tom Tromey  <tom@tromey.com>
6097
6098         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
6099
6100 2018-07-22  Tom Tromey  <tom@tromey.com>
6101
6102         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
6103         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
6104         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
6105         * buildsym-legacy.c (get_macro_table): Remove unused variable.
6106         * stack.c (frame_apply_level_command): Remove unused variable.
6107         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
6108         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
6109         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
6110         unused variable.
6111         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
6112         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
6113         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
6114         variable.
6115         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
6116         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
6117         variable.
6118         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
6119         Remove unused variable.
6120         * cli/cli-script.c (recurse_read_control_structure): Remove unused
6121         variable.
6122         * common/tdesc.c (print_xml_feature::visit): Remove unused
6123         variable.
6124         * compile/compile-object-load.c (store_regs): Remove unused
6125         variables.
6126         * complaints.c (clear_complaints): Remove unused variable.
6127         * corelow.c (core_target_open): Remove unused variable.
6128         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
6129         variable.
6130         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
6131         variable.
6132         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
6133         variable.
6134         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
6135         variable.
6136         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
6137         variable.
6138         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
6139         variable.
6140         * ia64-tdep.c (examine_prologue): Remove unused variable.
6141         * infcall.c (run_inferior_call): Remove unused variable.
6142         * inferior.c (exit_inferior): Remove unused variable.
6143         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
6144         * linespec.c (decode_line_2): Remove unused variable.
6145         * linux-nat.c (super_close): Remove.
6146         * linux-tdep.c (linux_info_proc): Remove unused variable.
6147         * mi/mi-main.c (mi_execute_command): Remove unused variable.
6148         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
6149         Remove unused variable.
6150         * parse.c (find_minsym_type_and_address): Remove unused variable.
6151         * printcmd.c (info_symbol_command, printf_floating): Remove unused
6152         variable.
6153         * python/py-breakpoint.c (bppy_set_commands): Remove unused
6154         variable.
6155         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
6156         variables.
6157         * record-btrace.c (record_btrace_target::store_registers): Remove
6158         unused variable.
6159         (cmd_show_record_btrace_cpu): Remove unused variable.
6160         * riscv-tdep.c (riscv_register_reggroup_p)
6161         (riscv_push_dummy_call, riscv_return_value): Remove unused
6162         variable.
6163         * rust-exp.y (literal): Remove unused variable.
6164         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
6165         unused variable.
6166         <STRUCTOP_ANONYMOUS>: Likewise.
6167         * s390-linux-tdep.c (s390_linux_init_abi_31)
6168         (s390_linux_init_abi_64): Remove unused variable.
6169         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
6170         (file_select_thread, net_windows_open, _initialize_ser_windows):
6171         Remove unused variables.
6172         * symtab.c (find_pc_sect_line): Remove unused variable.
6173         * target-memory.c (compute_garbled_blocks): Remove unused
6174         variable.
6175         (target_write_memory_blocks): Remove unused variable.
6176         * target.c (target_stack::unpush): Remove unused variables.
6177         * tracepoint.c (start_tracing, all_tracepoint_actions)
6178         (merge_uploaded_trace_state_variables)
6179         (print_one_static_tracepoint_marker): Remove unused variable.
6180         * unittests/basic_string_view/element_access/char/1.cc (test01):
6181         Remove unused variable.
6182         * windows-nat.c (windows_continue, windows_add_all_dlls)
6183         (do_initial_windows_stuff, windows_nat_target::create_inferior):
6184         Remove unused variables.
6185
6186 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
6187
6188         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
6189         attr_profile in HAVE_ELF.
6190         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
6191         HAVE_ELF.
6192
6193 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
6194
6195         * frame.c (frame_register_unwind): Change parameter name.
6196         (frame_unwind_register): Likewise.
6197         (frame_unwind_register_value): Likewise.
6198         (frame_unwind_register_signed): Likewise.
6199         (frame_unwind_register_unsigned): Likewise.
6200         * frame.h (frame_register_unwind): Likewise.
6201         (frame_unwind_register): Likewise.
6202         (frame_unwind_register_value): Likewise.
6203         (frame_unwind_register_signed): Likewise.
6204         (frame_unwind_register_unsigned): Likewise.
6205         (frame_unwind_arch): Likewise.
6206
6207 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
6208
6209         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
6210         ISA maintenance.
6211
6212 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
6213
6214         * mips-linux-nat.c (mips_linux_nat_target::read_description):
6215         Call `get_ptrace_pid' rather than extracting the ptrace PID by
6216         hand.
6217
6218 2018-07-20  Keith Seitz  <keiths@redhat.com>
6219
6220         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
6221         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
6222         m_compunit_symtab, m_language>: Add "m_" prefix.
6223         Update all uses.
6224         * buildsym.c: Update all uses.
6225
6226 2018-07-20  Tom Tromey  <tom@tromey.com>
6227
6228         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
6229         * buildsym.h (record_line_ftype): Remove typedef.
6230
6231 2018-07-20  Tom Tromey  <tom@tromey.com>
6232
6233         * buildsym-legacy.h (augment_type_symtab): Don't declare.
6234         (end_expandable_symtab): Likewise.
6235         (end_symtab_get_static_block): Likewise.
6236         (end_symtab_from_static_block): Likewise.
6237         * buildsym-legacy.c (augment_type_symtab): Remove.
6238         (end_expandable_symtab): Remove.
6239         (end_symtab_get_static_block): Remove.
6240         (end_symtab_from_static_block): Remove.
6241
6242 2018-07-20  Tom Tromey  <tom@tromey.com>
6243
6244         * dwarf2read.c: Include buildsym.h.
6245         (struct dwarf2_cu) <builder>: New method.
6246         (fixup_go_packaging): Update.
6247         (process_full_comp_unit, process_full_type_unit): Update.  Don't
6248         use scoped_free_pendings.
6249         (using_directives): Add "cu" parameter, remove "language".
6250         (read_import_statement, setup_type_unit_groups, )
6251         (read_func_scope, read_lexical_block_scope)
6252         (dwarf2_record_block_ranges, read_namespace): Update.
6253         (lnp_state_machine::lnp_state_machine): Add cu parameter.
6254         (lnp_state_machine::handle_end_sequence): Update.
6255         (class lnp_state_machine) <m_cu>: New member.
6256         <m_record_line_callback>: Remove.
6257         <m_currently_recording_lines>: New member.
6258         (lnp_state_machine::handle_set_file): Update.
6259         (noop_record_line): Remove.
6260         (dwarf_record_line_p): Add cu parameter.
6261         (dwarf_record_line_1, dwarf_finish_line): Likewise.
6262         (lnp_state_machine::record_line)
6263         (lnp_state_machine::lnp_state_machine)
6264         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
6265         (dwarf_decode_lines): Update.
6266         (dwarf2_start_subfile): Add cu parameter.
6267         (dwarf2_start_symtab, new_symbol): Update.
6268         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
6269         Remove dwarf2_per_objfile parameter.
6270         (dwarf_decode_macros): Update.
6271
6272 2018-07-20  Tom Tromey  <tom@tromey.com>
6273
6274         * stabsread.c (define_symbol): Update.
6275         * buildsym-legacy.h (get_buildsym_compunit): Declare.
6276         * dwarf2read.c (new_symbol): Update.
6277         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
6278         * cp-namespace.c: Include buildsym.h.
6279         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
6280         * buildsym-legacy.c (get_buildsym_compunit): New function.
6281
6282 2018-07-20  Tom Tromey  <tom@tromey.com>
6283
6284         * xcoffread.c: Include buildsym-legacy.h.
6285         * windows-nat.c: Include buildsym-legacy.h.
6286         * stabsread.c: Include buildsym-legacy.h.
6287         * mdebugread.c: Include buildsym-legacy.h.
6288         * buildsym-legacy.h: New file.
6289         * buildsym-legacy.c: New file, from buildsym.c.
6290         * go32-nat.c: Include buildsym-legacy.h.
6291         * dwarf2read.c: Include buildsym-legacy.h.
6292         * dbxread.c: Include buildsym-legacy.h.
6293         * cp-namespace.c: Include buildsym-legacy.h.
6294         * coffread.c: Include buildsym-legacy.h.
6295         * buildsym.h: Move some contents to buildsym-legacy.h.
6296         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
6297         buildsym-legacy.c.
6298         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
6299
6300 2018-07-20  Tom Tromey  <tom@tromey.com>
6301
6302         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
6303         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
6304         (buildsym_compunit::buildsym_compunit)
6305         (buildsym_compunit::~buildsym_compunit)
6306         (buildsym_compunit::get_macro_table): Define.
6307
6308 2018-07-20  Tom Tromey  <tom@tromey.com>
6309
6310         * buildsym.c (reset_symtab_globals): Remove.
6311         (buildsym_compunit::end_symtab_from_static_block): Update.
6312         (buildsym_compunit::augment_type_symtab): Update.
6313         (end_symtab_from_static_block): Call free_buildsym_compunit.
6314         (augment_type_symtab, end_symtab, end_expandable_symtab):
6315         Likewise.
6316
6317 2018-07-20  Tom Tromey  <tom@tromey.com>
6318
6319         * arch-utils.c: Do not include buildsym.h.
6320         * mipsread.c: Do not include buildsym.h.
6321         * machoread.c: Do not include buildsym.h.
6322         * elfread.c: Do not include buildsym.h.
6323
6324 2018-07-20  Tom Tromey  <tom@tromey.com>
6325
6326         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
6327         initialization.
6328         (buildsym_compunit): Add new constructor.
6329         (struct buildsym_compunit) <get_last_source_file, finish_block,
6330         record_block_range, start_subfile, patch_subfile_names,
6331         push_subfile, pop_subfile, record_line, get_compunit_symtab,
6332         set_last_source_start_addr, get_last_source_start_addr,
6333         get_local_using_directives, set_local_using_directives,
6334         get_global_using_directives, outermost_context_p,
6335         get_current_context_stack, get_context_stack_depth,
6336         get_current_subfile, get_local_symbols, get_file_symbols,
6337         get_global_symbols, record_debugformat, record_producer,
6338         push_context, pop_context, end_symtab_get_static_block,
6339         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
6340         New public methods.
6341         <record_pending_block, finish_block_internal, make_blockvector,
6342         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
6343         private methods.
6344         Update all users.
6345
6346 2018-05-22  Tom Tromey  <tom@tromey.com>
6347
6348         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
6349         parameter.
6350         (finish_block_internal): Update.
6351
6352 2018-07-20  Tom Tromey  <tom@tromey.com>
6353
6354         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
6355         parameter.
6356         (finish_block_internal): Update.
6357
6358 2018-07-20  Tom Tromey  <tom@tromey.com>
6359
6360         * buildsym.h (EXTERN): Don't define or undef.
6361         * buildsym.c (EXTERN): Don't define.
6362
6363 2018-07-20  Tom Tromey  <tom@tromey.com>
6364
6365         * buildsym.c: Remove TODO comment.
6366
6367 2018-07-20  Tom Tromey  <tom@tromey.com>
6368
6369         * coffread.c (coff_symtab_read): Update.
6370         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
6371         (xcoff_new_init): Update.
6372         * mipsread.c (mipscoff_new_init): Update.
6373         * mdebugread.c (mdebug_build_psymtabs): Update.
6374         * elfread.c (elf_new_init): Update.
6375         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
6376         Update.
6377         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
6378         (coffstab_build_psymtabs, elfstab_build_psymtabs)
6379         (stabsect_build_psymtabs): Update.
6380         * buildsym.h (buildsym_init): Don't declare.
6381         * buildsym.c: Update comment.
6382         (prepare_for_building): Remove.
6383         (start_symtab, restart_symtab): Update.
6384         (reset_symtab_globals): Update comment.
6385         (buildsym_init): Remove.
6386
6387 2018-07-20  Tom Tromey  <tom@tromey.com>
6388
6389         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
6390         * stabsread.c (patch_block_stabs, define_symbol, read_type)
6391         (read_enum_type, common_block_start, common_block_end)
6392         (cleanup_undefined_types_1, finish_global_stabs): Update.
6393         * mdebugread.c (psymtab_to_symtab_1): Update.
6394         * dwarf2read.c (fixup_go_packaging, read_func_scope)
6395         (read_lexical_block_scope, new_symbol): Update.
6396         * dbxread.c (process_one_symbol): Update.
6397         * coffread.c (coff_symtab_read, process_coff_symbol)
6398         (coff_read_enum_type): Update.
6399         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
6400         declare.
6401         (get_local_symbols, get_file_symbols, get_global_symbols): New
6402         functions.
6403         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
6404         m_global_symbols.
6405         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
6406         (~scoped_free_pendings): Update.
6407         (finish_block, prepare_for_building, reset_symtab_globals)
6408         (end_symtab_get_static_block, end_symtab_with_blockvector)
6409         (augment_type_symtab, push_context): Update.
6410         (get_local_symbols, get_file_symbols, get_global_symbols): New
6411         functions.
6412         (buildsym_init): Update.
6413
6414 2018-07-20  Tom Tromey  <tom@tromey.com>
6415
6416         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
6417         (process_full_type_unit): Likewise.
6418         (dwarf2_start_symtab): Set list_in_scope.
6419
6420 2018-07-20  Tom Tromey  <tom@tromey.com>
6421
6422         * dwarf2read.c (process_psymtab_comp_unit_reader)
6423         (build_type_psymtabs_reader): Do not set list_in_scope.
6424
6425 2018-07-20  Tom Tromey  <tom@tromey.com>
6426
6427         * buildsym.c (free_pendings): Remove.
6428         (add_symbol_to_list, scoped_free_pendings)
6429         (finish_block_internal, buildsym_init): Update.
6430
6431 2018-07-20  Tom Tromey  <tom@tromey.com>
6432
6433         * xcoffread.c (read_xcoff_symtab): Update.
6434         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
6435         Update.
6436         * dbxread.c (process_one_symbol): Update.
6437         * coffread.c (coff_symtab_read): Update.
6438         * buildsym.h (finish_block): Update.
6439         * buildsym.c (finish_block): Remove "listhead" argument.
6440         (end_symtab_get_static_block): Update.
6441
6442 2018-07-20  Tom Tromey  <tom@tromey.com>
6443
6444         * buildsym.h (class scoped_free_pendings): Remove constructor.
6445         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
6446         method.
6447         <m_pending_block_obstack, m_pending_blocks>: New members.
6448         (pending_block_obstack, pending_blocks): Remove.
6449         (scoped_free_pendings::scoped_free_pendings): Default.
6450         (~scoped_free_pendings): Update.
6451         (free_pending_blocks): Remove.
6452         (finish_block_internal, record_pending_block, make_blockvector)
6453         (end_symtab_get_static_block, augment_type_symtab, push_context)
6454         (buildsym_init): Update.
6455
6456 2018-07-20  Tom Tromey  <tom@tromey.com>
6457
6458         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
6459         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
6460         members.
6461         (pending_addrmap, pending_addrmap_obstack)
6462         (pending_addrmap_interesting): Remove.
6463         (scoped_free_pendings, record_block_range, make_blockvector)
6464         (prepare_for_building, reset_symtab_globals, buildsym_init):
6465         Update.
6466
6467 2018-07-20  Tom Tromey  <tom@tromey.com>
6468
6469         * xcoffread.c (process_linenos): Update.
6470         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
6471         * mdebugread.c (psymtab_to_symtab_1): Update.
6472         * dwarf2read.c (setup_type_unit_groups)
6473         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
6474         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
6475         * dbxread.c (process_one_symbol): Update.
6476         * coffread.c (coff_symtab_read, enter_linenos)
6477         (process_coff_symbol): Update.
6478         * buildsym.h (current_subfile): Don't declare.
6479         (get_current_subfile): Declare.
6480         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
6481         member.
6482         (start_subfile, free_buildsym_compunit, push_subfile)
6483         (prepare_for_building, start_symtab): Update.
6484         (get_current_subfile): New function.
6485
6486 2018-07-20  Tom Tromey  <tom@tromey.com>
6487
6488         * coffread.c (coff_symtab_read): Update.
6489         * xcoffread.c (read_xcoff_symtab): Update.
6490         * dwarf2read.c (new_symbol): Update.
6491         (read_func_scope, read_lexical_block_scope): Update.
6492         * dbxread.c (process_one_symbol): Update.
6493         * buildsym.h (context_stack, context_stack_depth): Don't declare.
6494         (outermost_context_p): Remove macro.
6495         (outermost_context_p, get_current_context_stack)
6496         (get_context_stack_depth): Declare.
6497         (pop_context): Return struct context_stack.
6498         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
6499         member.
6500         (context_stack_size): Remove.
6501         (INITIAL_CONTEXT_STACK_SIZE): Remove.
6502         (prepare_for_building, end_symtab_get_static_block)
6503         (augment_type_symtab, push_context): Update.
6504         (pop_context): Return struct context_stack.
6505         (outermost_context_p, get_current_context_stack)
6506         (get_context_stack_depth): New functions.
6507         (buildsym_init): Update.
6508
6509 2018-07-20  Tom Tromey  <tom@tromey.com>
6510
6511         * rust-exp.y: Now a pure parser.  Update all rules.
6512         (%union): Move earlier.
6513         (current_parser, work_obstack): Remove globals.
6514         (rust_parser, ~rust_parser): Update.
6515         (class rust_parser) <copy_name, concat3, crate_name, super_name,
6516         lex_character, lex_number, lex_string, lex_identifier,
6517         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
6518         convert_name, convert_params_to_expression,
6519         convert_ast_to_expression, ast_basic_type, ast_operation,
6520         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
6521         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
6522         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
6523         ast_array_type, ast_slice_type, ast_reference_type,
6524         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
6525         (rust_parse): Update.
6526         (rustyyerror, rustyylex): Add parser parameter.
6527         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
6528         (rust_lex_stringish_test, rust_lex_test_sequence)
6529         (rust_lex_test_trailing_dot, rust_lex_test_completion)
6530         (rust_lex_test_push_back, rust_lex_tests): Update.
6531
6532 2018-07-19  Pedro Alves  <palves@redhat.com>
6533
6534         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
6535         gdb::unique_xmalloc_ptr.
6536         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
6537         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
6538         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
6539         copy-initialization.
6540         * guile/scm-pretty-print.c (ppscm_print_children): Use
6541         gdb::unique_xmalloc_ptr instead of cleanups.
6542         (gdbscm_apply_val_pretty_printer): Remove cleanups.
6543         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
6544         gdb::unique_xmalloc_ptr.
6545         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
6546         Adjust to use gdb::unique_xmalloc_ptr.
6547         * guile/scm-utils.c (extract_arg): Adjust.
6548         * guile/scm-value.c (gdbscm_value_field): Adjust to use
6549         gdb::unique_xmalloc_ptr instead of a cleanup.
6550
6551 2018-07-19  Tom Tromey  <tom@tromey.com>
6552
6553         * utils.c (do_value_free_to_mark)
6554         (make_cleanup_value_free_to_mark): Remove.
6555         * utils.h (make_cleanup_value_free_to_mark): Remove.
6556
6557 2018-07-19  Pedro Alves  <palves@redhat.com>
6558
6559         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
6560         forwarding reference.
6561
6562 2018-07-18  Pedro Alves  <palves@redhat.com>
6563
6564         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
6565         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
6566         cleanup.
6567
6568 2018-07-18  Pedro Alves  <palves@redhat.com>
6569
6570         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
6571         exceptions.
6572         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
6573         (gdbscm_wrap): New.
6574         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
6575         directly instead of a cleanup.
6576         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
6577         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
6578         (vlscm_binop_gdbthrow): New, factored out from ...
6579         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
6580         (vlscm_rich_compare): Use gdbscm_wrap.
6581         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
6582         instead of a cleanup.
6583         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
6584         cleanup.
6585         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
6586         Use xfree directly instead of a cleanup.
6587         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
6588         Adjust to use gdbscm_wrap and scoped_value_mark.
6589         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
6590         (gdbscm_value_address, gdbscm_value_dereference)
6591         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
6592         scoped_value_mark.
6593         (gdbscm_value_dynamic_type): Use scoped_value_mark.
6594         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
6595         scoped_value_mark.
6596         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
6597         gdbscm_wrap and scoped_value_mark.
6598         (gdbscm_value_to_string): Use xfree directly instead of a
6599         cleanup.  Move 'buffer' unique_ptr to TRY scope.
6600         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
6601         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
6602         scoped_value_mark.
6603         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
6604         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
6605         scoped_value_mark.
6606         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
6607         gdbscm_wrap.
6608
6609 2018-07-18  Tom de Vries  <tdevries@suse.de>
6610
6611         * findvar.c (default_read_var_value): Also resolve dynamic type for
6612         LOC_OPTIMIZED_OUT vars.
6613
6614 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
6615
6616         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
6617         decoding.
6618
6619 2018-07-17  Tom Tromey  <tom@tromey.com>
6620
6621         * guile/scm-param.c (pascm_set_func, pascm_show_func)
6622         (compute_enum_list, pascm_set_param_value_x)
6623         (gdbscm_parameter_value): Update.
6624         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
6625         (gdbscm_scm_to_host_string): Update.
6626         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
6627         Update.
6628         * guile/scm-cmd.c (cmdscm_add_completion): Update.
6629         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
6630         * guile/scm-string.c (gdbscm_scm_to_string): Return
6631         unique_xmalloc_ptr.
6632         (gdbscm_scm_to_host_string): Likewise.
6633
6634 2018-07-17  Tom Tromey  <tom@tromey.com>
6635
6636         * guile/guile.c (gdbscm_eval_from_control_command): Update.
6637         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
6638         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
6639         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
6640         unique_xmalloc_ptr.
6641
6642 2018-07-17  Tom Tromey  <tom@tromey.com>
6643
6644         * guile/scm-param.c (pascm_signal_setshow_error): Update.
6645         * guile/guile-internal.h (gdbscm_exception_message_to_string):
6646         Update.
6647         * guile/scm-cmd.c (cmdscm_function): Update.
6648         * guile/scm-pretty-print.c
6649         (ppscm_print_exception_unless_memory_error): Update.
6650         * guile/scm-exception.c (gdbscm_exception_message_to_string):
6651         Return unique_xmalloc_ptr.
6652
6653 2018-07-17  Tom Tromey  <tom@tromey.com>
6654
6655         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
6656         Use string_printf.
6657
6658 2018-07-17  Jim Wilson  <jimw@sifive.com>
6659
6660         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
6661         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
6662         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
6663         unecessary braces after EF_RISCV_RVC test.  Delete call to
6664         set_gdbarch_decr_pc_after_break.
6665
6666         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
6667         RISCV_LAST_FP_REGNUM + 1.
6668         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
6669
6670 2018-07-17  Tom Tromey  <tom@tromey.com>
6671
6672         * configure.ac: Remove --disable-gdbcli.
6673         * configure: Rebuild.
6674         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
6675         (SUBDIR_CLI_CFLAGS): Remove.
6676         (SFILES): Use SUBDIR_CLI_SRCS.
6677         (COMMON_OBS): Use SUBDIR_CLI_OBS.
6678
6679 2018-07-17  Tom Tromey  <tom@tromey.com>
6680
6681         PR gdb/18624:
6682         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
6683
6684 2018-07-16  Jim Wilson  <jimw@sifive.com>
6685
6686         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
6687
6688 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6689
6690         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
6691         variable.
6692         (libunwind_frame_sniffer): Likewise.
6693         (libunwind_frame_prev_register): Likewise.
6694         (libunwind_sigtramp_frame_sniffer): Likewise.
6695         * ia64-tdep.c (ia64_access_reg): Likewise.
6696         (ia64_access_rse_reg): Likewise.
6697         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
6698         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
6699
6700 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6701
6702         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
6703
6704 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6705
6706         * remote-sim.c (gdbsim_target::close,
6707         gdbsim_target::mourn_inferior): Remove unused variables.
6708
6709 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
6710
6711         * ia64-tdep.c (ktab_buf): New global.
6712         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
6713         (get_kernel_table): Adjust.
6714
6715 2018-07-16  Tom Tromey  <tom@tromey.com>
6716
6717         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
6718         * dwarf2read.c (using_directives, new_symbol): Use
6719         outermost_context_p.
6720         * dbxread.c (process_one_symbol): Use outermost_context_p.
6721         * coffread.c (coff_symtab_read): Use outermost_context_p.
6722
6723 2018-07-16  Tom Tromey  <tom@tromey.com>
6724
6725         * dwarf2read.c (using_directives, read_func_scope)
6726         (read_lexical_block_scope): Update.
6727         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
6728         * buildsym.h (local_using_directives, global_using_directives):
6729         Don't declare.
6730         (get_local_using_directives, set_local_using_directives)
6731         (get_global_using_directives): Declare.
6732         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
6733         m_global_using_directives>: New members.
6734         (finish_block_internal, prepare_for_building)
6735         (reset_symtab_globals, end_symtab_get_static_block)
6736         (push_context): Update.
6737         (get_local_using_directives, set_local_using_directives)
6738         (get_global_using_directives): New functions.
6739         (buildsym_init): Update.
6740
6741 2018-07-16  Tom Tromey  <tom@tromey.com>
6742
6743         * xcoffread.c (xcoff_initial_scan): Don't call
6744         free_pending_blocks.
6745         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
6746         * buildsym.h (class scoped_free_pendings): Add constructor.
6747         (free_pending_blocks): Don't declare.
6748         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
6749         (free_pending_blocks): Now static.
6750
6751 2018-07-16  Tom Tromey  <tom@tromey.com>
6752
6753         * buildsym.h (push_subfile, pop_subfile): Update declarations.
6754         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
6755         member.
6756         (struct subfile_stack): Remove.
6757         (subfile_stack): Remove.
6758         (push_subfile, pop_subfile, buildsym_init): Update.
6759
6760 2018-07-16  Tom Tromey  <tom@tromey.com>
6761
6762         * buildsym.c (push_subfile): Use gdb_assert.
6763         (pop_subfile): Use gdb_assert.
6764
6765 2018-07-16  Tom Tromey  <tom@tromey.com>
6766
6767         * buildsym.h (merge_symbol_lists): Remove.
6768         * buildsym.c (merge_symbol_lists): Remove.
6769
6770 2018-07-16  Tom Tromey  <tom@tromey.com>
6771
6772         * stabsread.c (scan_file_globals): Update comment.
6773         * stabsread.h (scan_file_globals): Move from buildsym.h.
6774         * buildsym.h (scan_file_globals): Move to stabsread.h.
6775
6776 2018-07-16  Tom Tromey  <tom@tromey.com>
6777
6778         * xcoffread.c (xcoff_new_init): Update.
6779         * mipsread.c (mipscoff_new_init): Update.
6780         * mdebugread.c (mdebug_build_psymtabs): Update.
6781         * elfread.c (elf_new_init): Update.
6782         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
6783         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
6784         * buildsym.h (buildsym_new_init): Don't declare.
6785         * buildsym.c (buildsym_new_init): Remove.
6786
6787 2018-07-16  Tom Tromey  <tom@tromey.com>
6788
6789         * stabsread.h (within_function): Move from buildsym.h.
6790         * stabsread.c (start_stabs): Clear within_function.
6791         * coffread.c (coff_start_symtab): Clear within_function.
6792         * buildsym.h (within_function): Move to stabsread.h.
6793         * buildsym.c (prepare_for_building): Update.
6794
6795 2018-07-16  Tom Tromey  <tom@tromey.com>
6796
6797         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
6798         * dwarf2read.c (dwarf2_start_symtab): Don't set
6799         processing_gcc_compilation.
6800         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
6801
6802 2018-07-16  Tom Tromey  <tom@tromey.com>
6803
6804         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
6805         (next_symbol_text_func): Move from buildsym.h.
6806         * stabsread.c (hashname): Move from buildsym.c.
6807         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
6808         (next_symbol_text_func, hashname): Move to stabsread.h.
6809         * buildsym.c: Don't include bcache.h
6810         (hashname): Move to stasbread.c.
6811
6812 2018-07-16  Tom Tromey  <tom@tromey.com>
6813
6814         * buildsym.h (context_stack_size): Don't declare.
6815         * buildsym.c (context_stack_size): New global.
6816
6817 2018-07-16  Tom Tromey  <tom@tromey.com>
6818
6819         * dbxread.c (processing_acc_compilation): New global.
6820         * buildsym.h (processing_acc_compilation): Don't declare.
6821
6822 2018-07-16  Tom Tromey  <tom@tromey.com>
6823
6824         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
6825         * dbxread.c (read_ofile_symtab): Update.
6826         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
6827         * buildsym.h (last_source_start_addr): Remove.
6828         (set_last_source_start_addr, get_last_source_start_addr):
6829         Declare.
6830         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
6831         parameter.
6832         (struct buildsym_compunit) <m_last_source_start_addr>: New
6833         member.
6834         (prepare_for_building): Remove start_addr parameter.
6835         (start_symtab, restart_symtab, end_symtab_get_static_block)
6836         (end_symtab_with_blockvector): Update.
6837         (set_last_source_start_addr, get_last_source_start_addr): New
6838         functions.
6839
6840 2018-07-16  Tom Tromey  <tom@tromey.com>
6841
6842         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
6843         member.
6844         (have_line_numbers): Remove.
6845         (record_line, prepare_for_building, end_symtab_get_static_block)
6846         (augment_type_symtab): Update.
6847
6848 2018-07-16  Tom Tromey  <tom@tromey.com>
6849
6850         * buildsym.c (~buildsym_compunit): Free the macro table.
6851         (struct buildsym_compunit) <get_macro_table, release_macros>: New
6852         methods.
6853         <m_pending_macros>: New member.
6854         (pending_macros): Remove.
6855         (~scoped_free_pendings, get_macro_table, prepare_for_building)
6856         (reset_symtab_globals, end_symtab_get_static_block)
6857         (end_symtab_with_blockvector, augment_type_symtab)
6858         (buildsym_init): Update.
6859
6860 2018-07-16  Tom Tromey  <tom@tromey.com>
6861
6862         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
6863         parameter.
6864         (buildsym_compunit::set_last_source_file): New method.
6865         <m_last_source_file>: New member.
6866         (prepare_for_building): Remove "name" parameter.
6867         (start_symtab, restart_symtab, reset_symtab_globals): Update.
6868         (last_source_file): Remove.
6869         (set_last_source_file, get_last_source_file): Update.
6870
6871 2018-07-16  Tom Tromey  <tom@tromey.com>
6872
6873         * buildsym.c (prepare_for_building): Add assert.
6874
6875 2018-07-16  Tom Tromey  <tom@tromey.com>
6876
6877         * buildsym.c (~buildsym_compunit): Update.
6878         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
6879         (start_subfile, patch_subfile_names)
6880         (end_symtab_with_blockvector): Update.
6881
6882 2018-07-16  Tom Tromey  <tom@tromey.com>
6883
6884         * buildsym.c (struct buildsym_compunit): Add constructor,
6885         destructor, initializers.
6886         (start_buildsym_compunit): Remove.
6887         (free_buildsym_compunit): Use "delete".
6888         (start_symtab, restart_symtab): Use "new".
6889
6890 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
6891
6892         * symfile.c (set_objfile_default_section_offset): Remove struct
6893         keyword.
6894
6895 2018-07-14  Stafford Horne  <shorne@gmail.com>
6896
6897         * (Responsible Maintainers): Add myself as or1k maintainer.
6898
6899 2018-07-13  Tom Tromey  <tom@tromey.com>
6900
6901         * symfile.c (set_objfile_default_section_offset): Use extra braces
6902         around initializer.
6903
6904 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
6905
6906         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
6907         non-branching basr.
6908
6909 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6910
6911         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
6912         unittests/cli-utils-selftests.c
6913         * unittests/cli-utils-selftests.c: New file.
6914
6915 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6916
6917         * NEWS: Mention new commands. Mention change to 'thread apply'.
6918
6919 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6920
6921         * thread.c (thr_try_catch_cmd): New function.
6922         (thread_apply_all_command): Handle qcs flags.
6923         (thread_apply_command): Handle qcs flags.
6924         (taas_command): New function.
6925         (tfaas_command): New function.
6926         (_initialize_thread): Update to setup the new commands 'taas
6927         and 'tfaas'. Change doc string for 'thread apply'.
6928
6929 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6930
6931         * stack.c: (trailing_outermost_frame): New function, mostly
6932         extracted from backtrace_command_1.
6933         (leading_innermost_frame): New function.
6934         (backtrace_command_1): Update to call trailing_outermost_frame.
6935         (frame_apply_command_count): New function.
6936         (frame_apply_level_command): New function.
6937         (frame_apply_all_command): New function.
6938         (frame_apply_command): New function.
6939         (faas_command): New function.
6940         (frame_cmd_list): New variable.
6941         (_initialize_stack): Update to setup the new commands 'frame apply'
6942         and 'faas'.
6943
6944 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6945
6946         * cli-utils.c (number_or_range_parser::get_number): Only handle
6947         numbers or convenience var as numbers.
6948         (parse_flags): New function.
6949         (parse_flags_qcs): New function.
6950         (number_or_range_parser::finished): Ensure parsing end is detected
6951         before end of string.
6952         * cli-utils.h (parse_flags): New function.
6953         (parse_flags_qcs): New function.
6954         (number_or_range_parser): Remove m_finished bool.
6955         (number_or_range_parser::skip_range): Set m_in_range to false.
6956
6957 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
6958
6959         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
6960         on Windows.
6961
6962 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
6963             Jan Kratochvil  <jan.kratochvil@redhat.com>
6964             Paul Fertser  <fercerpav@gmail.com>
6965             Tsutomu Seki  <sekiriki@gmail.com>
6966             Pedro Alves  <palves@redhat.com>
6967
6968         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
6969         'unittests/parse-connection-spec-selftests.c'.
6970         (COMMON_SFILES): Add 'common/netstuff.c'.
6971         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
6972         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
6973         * common/netstuff.c: New file.
6974         * common/netstuff.h: New file.
6975         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
6976         (wait_for_connect): Update comment.  New parameter
6977         'gdb::optional<int> sock' instead of 'struct serial *scb'.
6978         Use 'sock' directly instead of 'scb->fd'.
6979         (try_connect): New function, with code from 'net_open'.
6980         (net_open): Rewrite main loop to deal with multiple
6981         sockets/addresses.  Handle IPv6-style hostnames; implement
6982         support for IPv6 connections.
6983         * unittests/parse-connection-spec-selftests.c: New file.
6984
6985 2018-07-11  Pedro Alves  <palves@redhat.com>
6986
6987         PR gdb/23377
6988         * remote.c (remote_target::remote_detach_pid): Call
6989         set_current_process.
6990
6991 2018-07-11  Pedro Alves  <palves@redhat.com>
6992
6993         * h8300-tdep.c (h8300_gdbarch_init): Remove
6994         set_gdbarch_ecoff_reg_to_regnum calls.
6995
6996 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
6997
6998         PR c++/23373
6999         * c-typeprint.c (c_type_print_base_struct_union): Don't print
7000         offsets/sizes for static members of a class/struct.
7001
7002 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
7003
7004         * target-descriptions.c (tdesc_register_bitsize): Rename.
7005         * target-descriptions.h (tdesc_register_bitsize): Likewise.
7006         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
7007         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
7008
7009 2018-07-10  Tom Tromey  <tom@tromey.com>
7010
7011         * breakpoint.c (moribund_locations): Now static and a
7012         std::vector.
7013         (breakpoint_init_inferior, moribund_breakpoint_here_p)
7014         (build_bpstat_chain, update_global_location_list)
7015         (breakpoint_retire_moribund): Update.
7016         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
7017         VEC.
7018
7019 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
7020
7021         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
7022         (riscv_register_reggroup_p): Use new function, remove unneeded
7023         parenthesis.
7024         (riscv_push_dummy_call): Extend assert to compare against xlen or
7025         flen based on register type.
7026
7027 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
7028
7029         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
7030
7031 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
7032
7033         * remote.c (show_hardware_watchpoint_limit): New function.
7034         (show_hardware_watchpoint_length_limit): New function.
7035         (show_hardware_breakpoint_limit): New function.
7036         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
7037         where appropriate, update help text.
7038
7039 2018-07-09  Tom Tromey  <tom@tromey.com>
7040
7041         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
7042         (CLIBS): Don't mention NAT_CLIBS.
7043
7044 2018-07-09  Tom Tromey  <tom@tromey.com>
7045
7046         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
7047         (LIBGDB_OBS, clean mostlyclean): Update.
7048         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
7049
7050 2018-07-09  Tom Tromey  <tom@tromey.com>
7051
7052         * Makefile.in (%.c: %.y): Use ECHO_YACC.
7053         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
7054         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
7055
7056 2018-07-09  Tom Tromey  <tom@tromey.com>
7057
7058         * Makefile.in (ALLDEPFILES): Remove exec.c.
7059         (COMMON_OBS): Remove exec.o.
7060         (COMMON_SFILES): Add exec.c.
7061
7062 2018-07-09  Tom Tromey  <tom@tromey.com>
7063
7064         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
7065
7066 2018-07-09  Tom Tromey  <tom@tromey.com>
7067
7068         * Makefile.in (clean mostlyclean): Remove stamp-version.
7069         (version.c): Depend on stamp-version.
7070         (stamp-version): New rule, from version.c rule.
7071
7072 2018-07-09  Tom Tromey  <tom@tromey.com>
7073
7074         * Makefile.in (init.c): Depend on stamp-init.
7075         (stamp-init): New rule, from init.c rule.
7076         (clean mostlyclean): Remove stamp-init.
7077
7078 2018-07-09  Tom Tromey  <tom@tromey.com>
7079
7080         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
7081         SUBDIR_GCC_COMPILE_SRCS.
7082
7083 2018-07-09  Tom Tromey  <tom@tromey.com>
7084
7085         * Makefile.in (init.c): Remove some unused sed rules.
7086
7087 2018-07-09  Tom Tromey  <tom@tromey.com>
7088
7089         * Makefile.in (TSOBS): Remove.
7090         (INIT_FILES): Update.
7091         (LIBGDB_OBS): Update.
7092         (COMMON_SFILES): Add inflow.c.
7093         (SFILES): Remove inflow.c.
7094
7095 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
7096
7097         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
7098
7099 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
7100
7101         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
7102         get_saveloc_name, is_signal_frame_name, step_name,
7103         init_remote_name, create_addr_space_name,
7104         destroy_addr_space_name, search_unwind_table_name,
7105         find_dyn_list_name): Constify.
7106
7107 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
7108
7109         * darwin-nat.c (darwin_pthread_kill): New function.
7110         (darwin_resume_thread): Use darwin_pthread_kill.
7111
7112 2018-07-05  Tom de Vries  <tdevries@suse.de>
7113
7114         * macroexp.c (macro_buffer) <operator=>: New member function.
7115
7116 2018-07-04  Tom Tromey  <tom@tromey.com>
7117
7118         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
7119
7120 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
7121
7122         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
7123         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
7124         * maint.c: Likewise.
7125         * top.c: Likewise.
7126
7127 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
7128
7129         * NEWS: Create a new section for the next release branch.
7130         Rename the section of the current branch, now that it has
7131         been cut.
7132
7133 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
7134
7135         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
7136         * version.in: Bump version to 8.2.50.DATE-git.
7137
7138 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
7139             Pedro Alves  <palves@redhat.com>
7140
7141         * linux-nat.c (linux_init_ptrace): Rename to ...
7142         (linux_init_ptrace_procfs): ... this.  Call
7143         linux_proc_init_warnings.
7144         (linux_nat_target::post_attach)
7145         (linux_nat_target::post_startup_inferior): Adjust.
7146         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
7147         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
7148
7149 2018-07-04  Tom de Vries  <tdevries@suse.de>
7150
7151         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
7152         check ...
7153         (read_comp_unit_head): ... here.
7154
7155 2018-07-03  Tom Tromey  <tom@tromey.com>
7156
7157         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
7158         (stop_tracing, tstatus_command)
7159         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
7160         (print_one_static_tracepoint_marker): Update.
7161         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
7162         std::vector.
7163         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
7164         VEC.
7165         (all_tracepoints, static_tracepoints_here): Return std::vector.
7166
7167 2018-07-03  Tom Tromey  <tom@tromey.com>
7168
7169         * common/ptid.c (ptid_equal): Remove.
7170         * common/ptid.h (ptid_equal): Don't declare.
7171         * ada-tasks.c: Update.
7172         * breakpoint.c: Update.
7173         * common/agent.c: Update.
7174         * corelow.c: Update.
7175         * darwin-nat-info.c: Update.
7176         * darwin-nat.c: Update.
7177         * dcache.c: Update.
7178         * dtrace-probe.c: Update.
7179         * dummy-frame.c: Update.
7180         * fbsd-nat.c: Update.
7181         * frame.c: Update.
7182         * gdbthread.h: Update.
7183         * gnu-nat.c: Update.
7184         * go32-nat.c: Update.
7185         * inf-loop.c: Update.
7186         * inf-ptrace.c: Update.
7187         * infcall.c: Update.
7188         * infcmd.c: Update.
7189         * inflow.c: Update.
7190         * infrun.c: Update.
7191         * linux-fork.c: Update.
7192         * linux-nat.c: Update.
7193         * linux-thread-db.c: Update.
7194         * mi/mi-cmd-var.c: Update.
7195         * mi/mi-interp.c: Update.
7196         * mi/mi-main.c: Update.
7197         * nto-procfs.c: Update.
7198         * ppc-linux-tdep.c: Update.
7199         * procfs.c: Update.
7200         * python/py-inferior.c: Update.
7201         * python/py-record-btrace.c: Update.
7202         * python/py-record.c: Update.
7203         * ravenscar-thread.c: Update.
7204         * regcache.c: Update.
7205         * remote-sim.c: Update.
7206         * remote.c: Update.
7207         * sol-thread.c: Update.
7208         * solib.c: Update.
7209         * target.c: Update.
7210         * tui/tui-stack.c: Update.
7211         * varobj.c: Update.
7212         * windows-nat.c: Update.
7213         * windows-tdep.c: Update.
7214
7215 2018-07-03  Tom Tromey  <tom@tromey.com>
7216
7217         * common/ptid.c (ptid_match): Remove.
7218         * common/ptid.h (ptid_match): Don't declare.
7219         * fbsd-nat.c: Update.
7220         * infcmd.c: Update.
7221         * infrun.c: Update.
7222         * linux-nat.c: Update.
7223         * record-btrace.c: Update.
7224         * regcache.c: Update.
7225         * remote.c: Update.
7226
7227 2018-07-03  Tom Tromey  <tom@tromey.com>
7228
7229         * common/ptid.c (ptid_tid_p): Remove.
7230         * common/ptid.h (ptid_tid_p): Don't declare.
7231         * sol-thread.c: Update.
7232
7233 2018-07-03  Tom Tromey  <tom@tromey.com>
7234
7235         * common/ptid.c (ptid_lwp_p): Remove.
7236         * common/ptid.h (ptid_lwp_p): Don't declare.
7237         * fbsd-nat.c: Update.
7238         * linux-nat.c: Update.
7239         * nat/linux-procfs.c: Update.
7240         * nat/x86-linux-dregs.c: Update.
7241         * sol-thread.c: Update.
7242
7243 2018-07-03  Tom Tromey  <tom@tromey.com>
7244
7245         * common/ptid.c (ptid_is_pid): Remove.
7246         * common/ptid.h (ptid_is_pid): Don't declare.
7247         * infrun.c: Update.
7248         * linux-nat.c: Update.
7249         * mi/mi-interp.c: Update.
7250         * remote.c: Update.
7251         * thread.c: Update.
7252
7253 2018-07-03  Tom Tromey  <tom@tromey.com>
7254
7255         * common/ptid.c (ptid_get_tid): Remove.
7256         * common/ptid.h (ptid_get_tid): Don't declare.
7257         * ada-tasks.c: Update.
7258         * aix-thread.c: Update.
7259         * bsd-uthread.c: Update.
7260         * darwin-nat.c: Update.
7261         * fbsd-nat.c: Update.
7262         * i386-darwin-nat.c: Update.
7263         * infrun.c: Update.
7264         * linux-tdep.c: Update.
7265         * nto-procfs.c: Update.
7266         * ppc-ravenscar-thread.c: Update.
7267         * python/py-infthread.c: Update.
7268         * ravenscar-thread.c: Update.
7269         * sol-thread.c: Update.
7270         * sparc-ravenscar-thread.c: Update.
7271         * windows-nat.c: Update.
7272
7273 2018-07-03  Tom Tromey  <tom@tromey.com>
7274
7275         * common/ptid.c (ptid_get_lwp): Remove.
7276         * common/ptid.h (ptid_get_lwp): Don't declare.
7277         * aarch64-linux-nat.c: Update.
7278         * ada-tasks.c: Update.
7279         * aix-thread.c: Update.
7280         * amd64-linux-nat.c: Update.
7281         * arm-linux-nat.c: Update.
7282         * corelow.c: Update.
7283         * fbsd-nat.c: Update.
7284         * fbsd-tdep.c: Update.
7285         * gnu-nat.c: Update.
7286         * i386-cygwin-tdep.c: Update.
7287         * i386-gnu-nat.c: Update.
7288         * i386-linux-nat.c: Update.
7289         * ia64-linux-nat.c: Update.
7290         * inf-ptrace.c: Update.
7291         * infrun.c: Update.
7292         * linux-fork.c: Update.
7293         * linux-nat.c: Update.
7294         * linux-tdep.c: Update.
7295         * linux-thread-db.c: Update.
7296         * mips-linux-nat.c: Update.
7297         * nat/aarch64-linux-hw-point.c: Update.
7298         * nat/aarch64-linux.c: Update.
7299         * nat/linux-btrace.c: Update.
7300         * nat/linux-osdata.c: Update.
7301         * nat/linux-procfs.c: Update.
7302         * nat/x86-linux-dregs.c: Update.
7303         * obsd-nat.c: Update.
7304         * ppc-fbsd-nat.c: Update.
7305         * ppc-linux-nat.c: Update.
7306         * procfs.c: Update.
7307         * python/py-infthread.c: Update.
7308         * ravenscar-thread.c: Update.
7309         * remote.c: Update.
7310         * s390-linux-nat.c: Update.
7311         * sol-thread.c: Update.
7312         * sol2-tdep.c: Update.
7313         * spu-linux-nat.c: Update.
7314         * x86-linux-nat.c: Update.
7315         * xtensa-linux-nat.c: Update.
7316
7317 2018-07-03  Tom Tromey  <tom@tromey.com>
7318
7319         * common/ptid.c (ptid_get_pid): Remove.
7320         * common/ptid.h (ptid_get_pid): Don't declare.
7321         * aarch64-linux-nat.c: Update.
7322         * ada-lang.c: Update.
7323         * aix-thread.c: Update.
7324         * alpha-bsd-nat.c: Update.
7325         * amd64-fbsd-nat.c: Update.
7326         * amd64-linux-nat.c: Update.
7327         * arm-linux-nat.c: Update.
7328         * arm-nbsd-nat.c: Update.
7329         * auxv.c: Update.
7330         * break-catch-syscall.c: Update.
7331         * breakpoint.c: Update.
7332         * bsd-uthread.c: Update.
7333         * corelow.c: Update.
7334         * ctf.c: Update.
7335         * darwin-nat.c: Update.
7336         * fbsd-nat.c: Update.
7337         * fbsd-tdep.c: Update.
7338         * gcore.c: Update.
7339         * gnu-nat.c: Update.
7340         * hppa-nbsd-nat.c: Update.
7341         * hppa-obsd-nat.c: Update.
7342         * i386-fbsd-nat.c: Update.
7343         * ia64-linux-nat.c: Update.
7344         * inf-ptrace.c: Update.
7345         * infcmd.c: Update.
7346         * inferior.c: Update.
7347         * inferior.h: Update.
7348         * inflow.c: Update.
7349         * infrun.c: Update.
7350         * linux-fork.c: Update.
7351         * linux-nat.c: Update.
7352         * linux-tdep.c: Update.
7353         * linux-thread-db.c: Update.
7354         * m68k-bsd-nat.c: Update.
7355         * mi/mi-interp.c: Update.
7356         * mi/mi-main.c: Update.
7357         * mips-linux-nat.c: Update.
7358         * mips-nbsd-nat.c: Update.
7359         * mips64-obsd-nat.c: Update.
7360         * nat/aarch64-linux-hw-point.c: Update.
7361         * nat/aarch64-linux.c: Update.
7362         * nat/linux-btrace.c: Update.
7363         * nat/linux-osdata.c: Update.
7364         * nat/linux-procfs.c: Update.
7365         * nat/x86-linux-dregs.c: Update.
7366         * nto-procfs.c: Update.
7367         * obsd-nat.c: Update.
7368         * ppc-linux-nat.c: Update.
7369         * ppc-nbsd-nat.c: Update.
7370         * ppc-obsd-nat.c: Update.
7371         * proc-service.c: Update.
7372         * procfs.c: Update.
7373         * python/py-inferior.c: Update.
7374         * python/py-infthread.c: Update.
7375         * ravenscar-thread.c: Update.
7376         * record.c: Update.
7377         * remote-sim.c: Update.
7378         * remote.c: Update.
7379         * rs6000-nat.c: Update.
7380         * s390-linux-nat.c: Update.
7381         * sh-nbsd-nat.c: Update.
7382         * sol-thread.c: Update.
7383         * sparc-nat.c: Update.
7384         * sparc64-tdep.c: Update.
7385         * spu-linux-nat.c: Update.
7386         * spu-tdep.c: Update.
7387         * target-debug.h: Update.
7388         * target.c: Update.
7389         * thread.c: Update.
7390         * tid-parse.c: Update.
7391         * tracefile-tfile.c: Update.
7392         * vax-bsd-nat.c: Update.
7393         * windows-nat.c: Update.
7394         * x86-linux-nat.c: Update.
7395         * x86-nat.c: Update.
7396
7397 2018-07-03  Tom Tromey  <tom@tromey.com>
7398
7399         * common/ptid.c (pid_to_ptid): Remove.
7400         * common/ptid.h (pid_to_ptid): Don't declare.
7401         * aix-thread.c: Update.
7402         * arm-linux-nat.c: Update.
7403         * common/ptid.c: Update.
7404         * common/ptid.h: Update.
7405         * corelow.c: Update.
7406         * ctf.c: Update.
7407         * darwin-nat.c: Update.
7408         * fbsd-nat.c: Update.
7409         * fork-child.c: Update.
7410         * gnu-nat.c: Update.
7411         * go32-nat.c: Update.
7412         * inf-ptrace.c: Update.
7413         * infcmd.c: Update.
7414         * inferior.c: Update.
7415         * infrun.c: Update.
7416         * linux-fork.c: Update.
7417         * linux-nat.c: Update.
7418         * nat/aarch64-linux-hw-point.c: Update.
7419         * nat/fork-inferior.c: Update.
7420         * nat/x86-linux-dregs.c: Update.
7421         * nto-procfs.c: Update.
7422         * obsd-nat.c: Update.
7423         * procfs.c: Update.
7424         * progspace.c: Update.
7425         * remote.c: Update.
7426         * rs6000-nat.c: Update.
7427         * s390-linux-nat.c: Update.
7428         * sol-thread.c: Update.
7429         * spu-linux-nat.c: Update.
7430         * target.c: Update.
7431         * top.c: Update.
7432         * tracefile-tfile.c: Update.
7433         * windows-nat.c: Update.
7434
7435 2018-07-03  Tom Tromey  <tom@tromey.com>
7436
7437         * common/ptid.h (ptid_build): Don't declare.
7438         * common/ptid.c (ptid_build): Remove.
7439         * aix-thread.c: Update.
7440         * bsd-kvm.c: Update.
7441         * bsd-uthread.c: Update.
7442         * common/agent.c: Update.
7443         * common/ptid.c: Update.
7444         * common/ptid.h: Update.
7445         * corelow.c: Update.
7446         * darwin-nat.c: Update.
7447         * fbsd-nat.c: Update.
7448         * gnu-nat.c: Update.
7449         * linux-fork.c: Update.
7450         * linux-nat.c: Update.
7451         * linux-thread-db.c: Update.
7452         * nat/linux-osdata.c: Update.
7453         * nat/linux-procfs.c: Update.
7454         * nto-procfs.c: Update.
7455         * obsd-nat.c: Update.
7456         * proc-service.c: Update.
7457         * procfs.c: Update.
7458         * ravenscar-thread.c: Update.
7459         * remote-sim.c: Update.
7460         * remote.c: Update.
7461         * sol-thread.c: Update.
7462         * target.c: Update.
7463         * windows-nat.c: Update.
7464
7465 2018-07-03  Tom Tromey  <tom@tromey.com>
7466
7467         * infrun.c (follow_exec): Use exit_inferior_silent.
7468         * inferior.c (exit_inferior_num_silent): Remove.
7469         * inferior.h (exit_inferior_num_silent): Don't declare.
7470
7471 2018-07-03  Tom Tromey  <tom@tromey.com>
7472
7473         PR cli/23340:
7474         * darwin-nat.c (darwin_attach_pid): Reset inferior and
7475         inferior_ptid on error.
7476
7477 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
7478             Simon Marchi  <simon.marchi@polymtl.ca>
7479
7480         PR tdep/8282
7481         * disasm.h (gdb_disassembler): Add
7482         `m_disassembler_options_holder'. member
7483         * disasm.c (get_all_disassembler_options): New function.
7484         (gdb_disassembler::gdb_disassembler): Use it.
7485         (gdb_buffered_insn_length_init_dis): Likewise.
7486         (gdb_buffered_insn_length): Adjust accordingly.
7487         (set_disassembler_options): Handle options with arguments.
7488         (show_disassembler_options_sfunc): Likewise.  Add a leading new
7489         line if showing options with descriptions.
7490         (disassembler_options_completer): Adapt to using the
7491         `disasm_options_and_args_t' structure.
7492         * mips-tdep.c (mips_disassembler_options): New variable.
7493         (mips_disassembler_options_o32): Likewise.
7494         (mips_disassembler_options_n32): Likewise.
7495         (mips_disassembler_options_n64): Likewise.
7496         (gdb_print_insn_mips): Don't set `disassembler_options'.
7497         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
7498         functions.
7499         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
7500         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
7501         `gdbarch_disassembler_options_implicit' and
7502         `gdbarch_valid_disassembler_options'.
7503         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
7504         `disasm_options_and_args_t' structure.
7505         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
7506         method.
7507         (valid_disassembler_options): Switch from `disasm_options_t' to
7508         the `disasm_options_and_args_t' structure.
7509         * NEWS: Document `set disassembler-options' support for the MIPS
7510         target.
7511         * gdbarch.h: Regenerate.
7512         * gdbarch.c: Regenerate.
7513
7514 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
7515
7516         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
7517
7518 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
7519
7520         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
7521         parameter in call to amd64_target_description.
7522         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
7523         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
7524         (amd64fbsd_init_abi): Likewise.
7525         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
7526         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
7527         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
7528         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
7529
7530 2018-06-29  Pedro Alves  <palves@redhat.com>
7531
7532         * gdb/amd64-tdep.h (amd64_create_target_description): Add
7533         "segments" parameter.
7534         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
7535         (_initialize_amd64_tdep): Update call to
7536         amd64_create_target_description.
7537         (amd64_target_description): Add "segments" parameter.  Adjust
7538         the implementation to use it.
7539         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
7540         call to amd64_create_target_description.
7541         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
7542         * gdb/arch/amd64.h (amd64_create_target_description): Add
7543         "segments" register.
7544         * gdb/arch/amd64.c (amd64_create_target_description): Add
7545         "segments" parameter.  Call create_feature_i386_64bit_segments
7546         only if SEGMENTS is true.
7547         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
7548         call to amd64_create_target_description.
7549
7550 2018-06-29  Pedro Alves  <palves@redhat.com>
7551
7552         * thread.c (thread_target_id_str): New, factored out from ...
7553         (print_thread_info_1): ... here.  Use it to compute the max
7554         "Target Id" column width.
7555
7556 2018-06-29  Pedro Alves  <palves@redhat.com>
7557
7558         * remote.c (remote_target::extra_thread_info): Delete
7559         'display_buf' and 'n' locals.  from the cache, regardless of
7560         packet mechanims is in use.  Use cache for qThreadExtra and qP
7561         methods too.
7562
7563 2018-06-29  Pedro Alves  <palves@redhat.com>
7564
7565         * blockframe.c (find_pc_sect_containing_function): New function.
7566         * breakpoint.c (print_breakpoint_location): Don't call
7567         find_pc_sect_function.
7568         * linespec.c (create_sals_line_offset): Record the location's
7569         symbol in the sal.
7570         * linespec.c (convert_address_location_to_sals): Fill in sal's
7571         symbol with find_pc_sect_containing_function.
7572         * symtab.c (find_function_start_sal): Rename to ...
7573         (find_function_start_sal_1): ... this.
7574         (find_function_start_sal): Reimplement as wrapper around
7575         find_function_start_sal_1, and use
7576         find_pc_sect_containing_function to fill in the sal's symbol.
7577         (find_function_start_sal(symbol*, bool)): Adjust.
7578         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
7579         comments.
7580         (find_pc_sect_containing_function): Declare.
7581
7582 2018-06-29  Pedro Alves  <palves@redhat.com>
7583
7584         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
7585         true if the the location has no symbol.
7586
7587 2018-06-28  Tom Tromey  <tom@tromey.com>
7588
7589         * NEWS: Mention --enable-codesign.
7590         * silent-rules.mk (ECHO_SIGN): New variable.
7591         * configure.ac: Add --enable-codesign.
7592         * configure: Rebuild.
7593         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
7594         (gdb$(EXEEXT)): Optionally invoke codesign.
7595
7596 2018-06-28  Pedro Alves  <palves@redhat.com>
7597
7598         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
7599         comments.
7600         (switch_to_thread_no_regs): Adjust comment.
7601         * infcmd.c (stop_pc): Delete.
7602         (post_create_inferior, info_program_command): Replace references
7603         to stop_pc with references to thread_info->suspend.stop_pc.
7604         * inferior.h (stop_pc): Delete declaration.
7605         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
7606         (handle_inferior_event_1, handle_signal_stop)
7607         (process_event_stop_test, keep_going_stepped_thread)
7608         (handle_step_into_function, handle_step_into_function_backward)
7609         (print_stop_location): Replace references to stop_pc with
7610         references to thread_info->suspend.stop_pc.
7611         (struct infcall_suspend_state) <stop_pc>: Delete field.
7612         (save_infcall_suspend_state, restore_infcall_suspend_state):
7613         Remove references to inf_stat->stop_pc.
7614         * linux-fork.c (fork_load_infrun_state): Likewise.
7615         * record-btrace.c (record_btrace_set_replay): Likewise.
7616         * record-full.c (record_full_goto_entry): Likewise.
7617         * remote.c (print_one_stopped_thread): Likewise.
7618         * target.c (target_resume): Extend comment.
7619         * thread.c (set_executing_thread): New.
7620         (set_executing): Use it.
7621         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
7622         Remove references to stop_pc.
7623
7624 2018-06-28  Pedro Alves  <palves@redhat.com>
7625
7626         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
7627         Moving fetching stop_pc until after ecs->event_thread is refreshed.
7628
7629 2018-06-28  Tom Tromey  <tom@tromey.com>
7630
7631         * coffread.c (coff_symfile_finish): Update.
7632         * xcoffread.c (xcoff_symfile_finish): Update.
7633         * elfread.c (elf_symfile_finish): Update.
7634         * symfile.h (dwarf2_free_objfile): Don't declare.
7635         * dwarf2read.c (_initialize_dwarf2_read): Use
7636         register_objfile_data_with_cleanup.
7637         (dwarf2_free_objfile): Now static.  Change signature.
7638
7639 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7640
7641         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
7642         option "-o" to add-symbol-file-load to add an offset to each
7643         section's load address.
7644         * symfile.c (set_objfile_default_section_offset): New function.
7645
7646 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7647
7648         * symfile.c (add_symbol_file_command): Make sure that sections
7649         with the same name are sorted in the same order.
7650
7651 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7652
7653         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
7654         require the second argument.  If omitted, load sections at the
7655         addresses specified in the file.
7656
7657 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7658
7659         * symfile.c (symbol_file_command, symbol_file_add_main_1)
7660         (_initialize_symfile): Add option "-o" to symbol-file to add an
7661         offset to each section of the symbol file.
7662
7663 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7664
7665         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
7666
7667 2018-06-27  Tom Tromey  <tom@tromey.com>
7668
7669         * stack.c (_initialize_stack): Update "func" help text.
7670
7671 2018-06-27  Tom Tromey  <tom@tromey.com>
7672
7673         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
7674         std::vector.
7675         (unwind_infopy_str, pyuw_create_unwind_info)
7676         (unwind_infopy_add_saved_register, pyuw_sniffer)
7677         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
7678         Update.
7679         (struct saved_reg): Add constructor.
7680         <value>: Now a gdbpy_ref<>.
7681
7682 2018-06-27  Tom Tromey  <tom@tromey.com>
7683
7684         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
7685
7686 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7687
7688         * gdb-gdb.py.in: Format using autopep8.
7689
7690 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7691
7692         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
7693         (type_lookup_function): Recognize CORE_ADDR values.
7694
7695 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7696
7697         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
7698         print tag_name.
7699
7700 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7701
7702         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
7703         <__lt__>: Add.
7704
7705 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7706
7707         * gdb-gdb.py: Move to...
7708         * gdb-gdb.py.in: ... here.
7709         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
7710         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
7711         dependencies.
7712         (distclean): Remove gdb-gdb.py when cleaning.
7713         (gdb-gdb.py, gdb-gdb.gdb): New rules.
7714         * configure: Re-generate.
7715
7716 2018-06-27  Pedro Alves  <palves@redhat.com>
7717
7718         * proc-service.c (get_ps_regcache): New.
7719         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
7720         (ps_lsetfpregs): Use it.
7721
7722 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
7723
7724         PR gdb/21695
7725         * dwarf2read.c (lnp_state_machine::check_line_address): Update
7726         declaration.
7727         (dwarf_decode_lines_1): Adjust.
7728
7729 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7730
7731         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
7732         override.
7733         <info_proc>: Likewise.
7734
7735 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
7736
7737         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
7738         to windows_fetch_one_register, and only handle the case of
7739         fetching one register.  Move the code that reloads the context
7740         and iterates over all registers if R is negative to...
7741         (windows_nat_target::fetch_registers): ... here.
7742         (do_windows_store_inferior_registers): Rename to
7743         windows_store_one_register, and only handle the case of storing
7744         one register.  Move the code that handles the case where r is
7745         negative to...
7746         (windows_nat_target::store_registers) ... here.
7747
7748 2018-06-26  Tom Tromey  <tom@tromey.com>
7749
7750         PR rust/22574:
7751         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
7752         * rust-lang.c (rust_print_struct_def): Add podata parameter.
7753         Update.
7754         (rust_internal_print_type): Add podata parameter.
7755         (rust_print_type): Update.
7756
7757 2018-06-26  Tom Tromey  <tom@tromey.com>
7758
7759         * typeprint.h (struct print_offset_data) <update, finish,
7760         maybe_print_hole>: New methods.
7761         <indentation>: New constant.
7762         * typeprint.c (print_offset_data::indentation): Define.
7763         (print_offset_data::maybe_print_hole, print_offset_data::update)
7764         (print_offset_data::finish): Move from c-typeprint.c and rename.
7765         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
7766         (print_spaces_filtered_with_print_options): Update.
7767         (c_print_type_union_field_offset, maybe_print_hole)
7768         (c_print_type_struct_field_offset): Move to typeprint.c and
7769         rename.
7770         (c_type_print_base_struct_union): Update.
7771
7772 2018-06-25  Pedro Alves  <palves@redhat.com>
7773
7774         * gdbthread.h (thread_info_ref, delete_thread)
7775         (delete_thread_silent, first_thread_of_inferior)
7776         (any_thread_of_inferior, switch_to_thread)
7777         (enable_thread_stack_temporaries)
7778         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7779         (get_last_thread_stack_temporary)
7780         (value_in_thread_stack_temporaries, can_access_registers_thread):
7781         Spell out "struct thread_info" instead of just "thread_info".
7782         * inferior.h (notice_new_inferior): Likewise.
7783
7784 2018-06-25  Pedro Alves  <palves@redhat.com>
7785
7786         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
7787         pass thread_info pointer to delete_thread.
7788         (windows_nat_target::detach): Pass inferior pointer to
7789         detach_inferior.
7790         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
7791         delete_thread.
7792         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
7793         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
7794         and pass a thread_info pointer to delete_thread.
7795         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
7796         pass thread_info pointer to delete_thread.
7797         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
7798         delete_thread_silent call.
7799         * procfs.c (procfs_target::detach): Pass inferior pointer to
7800         detach_inferior.
7801         (procfs_target::wait): Pass thread_info pointer to delete_thread.
7802         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
7803         delete_thread_silent call.
7804         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
7805         pass thread_info pointer to delete_thread.
7806         (windows_nat_target::detach): Pass inferior pointer to
7807         delete_inferior.
7808
7809 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
7810
7811         * regcache.c (readable_regcache::read_part): Fix asserts.
7812         (reg_buffer::raw_collect_part): New function.
7813         (regcache::write_part): Fix asserts.
7814         (reg_buffer::raw_supply_part): New function.
7815         (regcache::transfer_regset_register): New helper function.
7816         (regcache::transfer_regset): Call new functions.
7817         (regcache_supply_regset): Use gdb_byte*.
7818         (regcache::supply_regset): Likewise.
7819         (regcache_collect_regset): Likewise.
7820         (regcache::collect_regset): Likewise.
7821         * regcache.h (reg_buffer::raw_collect_part): New declaration.
7822         (reg_buffer::raw_supply_part): Likewise.
7823         (regcache::transfer_regset_register): Likewise.
7824         (regcache::transfer_regset): Use gdb_byte*.
7825
7826 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
7827
7828         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
7829
7830 2018-06-21  Pedro Alves  <palves@redhat.com>
7831
7832         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
7833         instead of a ptid_t.  All callers adjusted.
7834         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
7835         adjusted.
7836         (print_ada_task_info, display_current_task_id, task_command_1):
7837         Adjust.
7838         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
7839         inferior_thread.
7840         (breakpoint_kind): Adjust.
7841         (remove_breakpoints_pid): Rename to ...
7842         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
7843         pointer.  All callers adjusted.
7844         (bpstat_clear_actions): Use inferior_thread.
7845         (get_bpstat_thread): New.
7846         (bpstat_do_actions): Use it.
7847         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
7848         to take a thread_info pointer.  All callers adjusted.
7849         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
7850         (breakpoint_re_set_thread): Use inferior_thread.
7851         * breakpoint.h (struct inferior): Forward declare.
7852         (bpstat_stop_status): Update.
7853         (remove_breakpoints_pid): Delete.
7854         (remove_breakpoints_inf): New.
7855         * bsd-uthread.c (bsd_uthread_target::wait)
7856         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
7857         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
7858         (maint_btrace_packet_history_cmd)
7859         (maint_btrace_clear_packet_history_cmd): Adjust.
7860         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
7861         inferior_thread.
7862         * cli/cli-interp.c: Include "inferior.h".
7863         * common/refcounted-object.h (struct
7864         refcounted_object_ref_policy): New.
7865         * compile/compile-object-load.c: Include gdbthread.h.
7866         (store_regs): Use inferior_thread.
7867         * corelow.c (core_target::close): Use current_inferior.
7868         (core_target_open): Adjust to use first_thread_of_inferior and use
7869         the current inferior.
7870         * ctf.c (ctf_target::close): Adjust to use current_inferior.
7871         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
7872         <thread>: ... this new field.  All references adjusted.
7873         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
7874         Take a thread_info pointer instead of a ptid_t.
7875         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
7876         (dummy_frame_discard, register_dummy_frame_dtor): Take a
7877         thread_info pointer instead of a ptid_t.
7878         * elfread.c: Include "inferior.h".
7879         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
7880         Use inferior_thread.
7881         * eval.c (evaluate_subexp): Likewise.
7882         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
7883         inferior_thread.
7884         * gdb_proc_service.h (struct thread_info): Forward declare.
7885         (struct ps_prochandle) <ptid>: Delete, replaced by ...
7886         <thread>: ... this new field.  All references adjusted.
7887         * gdbarch.h, gdbarch.c: Regenerate.
7888         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
7889         'thread' parameter.  All implementations and callers adjusted.
7890         * gdbthread.h (thread_info) <set_running>: New method.
7891         (delete_thread, delete_thread_silent): Take a thread_info pointer
7892         instead of a ptid.
7893         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
7894         (first_thread_of_process): Delete, replaced by ...
7895         (first_thread_of_inferior): ... this new function.  All callers
7896         adjusted.
7897         (any_live_thread_of_process): Delete, replaced by ...
7898         (any_live_thread_of_inferior): ... this new function.  All callers
7899         adjusted.
7900         (switch_to_thread, switch_to_no_thread): Declare.
7901         (is_executing): Delete.
7902         (enable_thread_stack_temporaries): Update comment.
7903         <enable_thread_stack_temporaries>: Take a thread_info pointer
7904         instead of a ptid_t.  Incref the thread.
7905         <~enable_thread_stack_temporaries>: Decref the thread.
7906         <m_ptid>: Delete
7907         <m_thr>: New.
7908         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7909         (get_last_thread_stack_temporary)
7910         (value_in_thread_stack_temporaries, can_access_registers_thread):
7911         Take a thread_info pointer instead of a ptid_t.  All callers
7912         adjusted.
7913         * infcall.c (get_call_return_value): Use inferior_thread.
7914         (run_inferior_call): Work with thread pointers instead of ptid_t.
7915         (call_function_by_hand_dummy): Work with thread pointers instead
7916         of ptid_t.  Use thread_info_ref.
7917         * infcmd.c (proceed_thread_callback): Access thread's state
7918         directly.
7919         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
7920         access thread's state directly.
7921         (continue_command): Use inferior_thread.
7922         (info_program_command): Use find_thread_ptid and access thread
7923         state directly.
7924         (proceed_after_attach_callback): Use thread state directly.
7925         (notice_new_inferior): Take a thread_info pointer instead of a
7926         ptid_t.  All callers adjusted.
7927         (exit_inferior): Take an inferior pointer instead of a pid.  All
7928         callers adjusted.
7929         (exit_inferior_silent): New.
7930         (detach_inferior): Delete.
7931         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
7932         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
7933         (detach_inferior_command, kill_inferior_command): Use
7934         find_inferior_id instead of valid_gdb_inferior_id and
7935         gdb_inferior_id_to_pid.
7936         (inferior_command): Use inferior and thread pointers.
7937         * inferior.h (struct thread_info): Forward declare.
7938         (notice_new_inferior): Take a thread_info pointer instead of a
7939         ptid_t.  All callers adjusted.
7940         (detach_inferior): Delete declaration.
7941         (exit_inferior, exit_inferior_silent): Take an inferior pointer
7942         instead of a pid.  All callers adjusted.
7943         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
7944         (valid_gdb_inferior_id): Delete.
7945         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
7946         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
7947         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
7948         ...
7949         <inf>: ... this new field.
7950         <step_ptid>: Delete, replaced by ...
7951         <step_thread>: ... this new field.
7952         (get_displaced_stepping_state): Take an inferior pointer instead
7953         of a pid.  All callers adjusted.
7954         (displaced_step_in_progress_any_inferior): Adjust.
7955         (displaced_step_in_progress_thread): Take a thread pointer instead
7956         of a ptid_t.  All callers adjusted.
7957         (displaced_step_in_progress, add_displaced_stepping_state): Take
7958         an inferior pointer instead of a pid.  All callers adjusted.
7959         (get_displaced_step_closure_by_addr): Adjust.
7960         (remove_displaced_stepping_state): Take an inferior pointer
7961         instead of a pid.  All callers adjusted.
7962         (displaced_step_prepare_throw, displaced_step_prepare)
7963         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
7964         All callers adjusted.
7965         (start_step_over): Adjust.
7966         (infrun_thread_ptid_changed): Remove bit updating ptids in the
7967         displaced step queue.
7968         (do_target_resume): Adjust.
7969         (fetch_inferior_event): Use inferior_thread.
7970         (context_switch, get_inferior_stop_soon): Take an
7971         execution_control_state pointer instead of a ptid_t.  All callers
7972         adjusted.
7973         (switch_to_thread_cleanup): Delete.
7974         (stop_all_threads): Use scoped_restore_current_thread.
7975         * inline-frame.c: Include "gdbthread.h".
7976         (inline_state) <inline_state>: Take a thread pointer instead of a
7977         ptid_t.  All callers adjusted.
7978         <ptid>: Delete, replaced by ...
7979         <thread>: ... this new field.
7980         (find_inline_frame_state): Take a thread pointer instead of a
7981         ptid_t.  All callers adjusted.
7982         (skip_inline_frames, step_into_inline_frame)
7983         (inline_skipped_frames, inline_skipped_symbol): Take a thread
7984         pointer instead of a ptid_t.  All callers adjusted.
7985         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
7986         (inline_skipped_frames, inline_skipped_symbol): Likewise.
7987         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
7988         pointers directly.
7989         * linux-nat.c (get_detach_signal): Likewise.
7990         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
7991         (thread_db_notice_clone): Adjust.
7992         (thread_db_find_new_threads_silently)
7993         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
7994         a thread pointer instead of a ptid_t.  All callers adjusted.
7995         * mi/mi-cmd-var.c: Include "inferior.h".
7996         (mi_cmd_var_update_iter): Update to use thread pointers.
7997         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
7998         inferior directly.
7999         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
8000         out to ...
8001         (mi_output_running): ... this new function.
8002         (mi_on_resume_1): Adjust to use it.
8003         (mi_user_selected_context_changed): Adjust to use inferior_thread.
8004         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
8005         directly.
8006         (interrupt_thread_callback): : Adjust to use thread and inferior
8007         pointers.
8008         * proc-service.c: Include "gdbthread.h".
8009         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
8010         * progspace-and-thread.c: Include "inferior.h".
8011         * progspace.c: Include "inferior.h".
8012         * python/py-exitedevent.c (create_exited_event_object): Adjust to
8013         hold a reference to an inferior_object.
8014         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
8015         inferior_thread.
8016         * python/py-inferior.c (struct inferior_object): Give the type a
8017         tag name instead of a typedef.
8018         (python_on_normal_stop): No need to check if the current thread is
8019         listed.
8020         (inferior_to_inferior_object): Change return type to
8021         inferior_object.  All callers adjusted.
8022         (find_thread_object): Delete, bits factored out to ...
8023         (thread_to_thread_object): ... this new function.
8024         * python/py-infthread.c (create_thread_object): Use
8025         inferior_to_inferior_object.
8026         (thpy_is_stopped): Use thread pointer directly.
8027         (gdbpy_selected_thread): Use inferior_thread.
8028         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
8029         field, replaced with ...
8030         <thread>: ... this new field.  All users adjusted.
8031         (btpy_insn_or_gap_new): Drop const.
8032         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
8033         callers adjusted.
8034         * python/py-record.c: Include "gdbthread.h".
8035         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
8036         a ptid_t.  All callers adjusted.
8037         (gdbpy_current_recording): Use inferior_thread.
8038         * python/py-record.h (recpy_record_object) <ptid>: Delete
8039         field, replaced with ...
8040         <thread>: ... this new field.  All users adjusted.
8041         (recpy_element_object) <ptid>: Delete
8042         field, replaced with ...
8043         <thread>: ... this new field.  All users adjusted.
8044         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
8045         a ptid_t.  All callers adjusted.
8046         * python/py-threadevent.c: Include "gdbthread.h".
8047         (get_event_thread): Use thread_to_thread_object.
8048         * python/python-internal.h (struct inferior_object): Forward
8049         declare.
8050         (find_thread_object, find_inferior_object): Delete declarations.
8051         (thread_to_thread_object, inferior_to_inferior_object): New
8052         declarations.
8053         * record-btrace.c: Include "inferior.h".
8054         (require_btrace_thread): Use inferior_thread.
8055         (record_btrace_frame_sniffer)
8056         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
8057         (get_thread_current_frame): Use scoped_restore_current_thread and
8058         switch_to_thread.
8059         (get_thread_current_frame): Use thread pointer directly.
8060         (record_btrace_replay_at_breakpoint): Use thread's inferior
8061         pointer directly.
8062         * record-full.c: Include "inferior.h".
8063         * regcache.c: Include "gdbthread.h".
8064         (get_thread_arch_regcache): Use the inferior's address space
8065         directly.
8066         (get_thread_regcache, registers_changed_thread): New.
8067         * regcache.h (get_thread_regcache(thread_info *thread)): New
8068         overload.
8069         (registers_changed_thread): New.
8070         (remote_target) <remote_detach_1>: Swap order of parameters.
8071         (remote_add_thread): <remote_add_thread>: Return the new thread.
8072         (get_remote_thread_info(ptid_t)): New overload.
8073         (remote_target::remote_notice_new_inferior): Use thread pointers
8074         directly.
8075         (remote_target::process_initial_stop_replies): Use
8076         thread_info::set_running.
8077         (remote_target::remote_detach_1, remote_target::detach)
8078         (extended_remote_target::detach): Adjust.
8079         * stack.c (frame_show_address): Use inferior_thread.
8080         * target-debug.h (target_debug_print_thread_info_pp): New.
8081         * target-delegates.c: Regenerate.
8082         * target.c (default_thread_address_space): Delete.
8083         (memory_xfer_partial_1): Use current_inferior.
8084         (target_detach): Use current_inferior.
8085         (target_thread_address_space): Delete.
8086         (generic_mourn_inferior): Use current_inferior.
8087         * target.h (struct target_ops) <thread_address_space>: Delete.
8088         (target_thread_address_space): Delete.
8089         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
8090         pointers directly.
8091         (delete_thread_1, delete_thread, delete_thread_silent): Take a
8092         thread pointer instead of a ptid_t.  Adjust all callers.
8093         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
8094         (first_thread_of_process): Delete, replaced by ...
8095         (first_thread_of_inferior): ... this new function.  All callers
8096         adjusted.
8097         (any_thread_of_process): Rename to ...
8098         (any_thread_of_inferior): ... this, and take an inferior pointer.
8099         (any_live_thread_of_process): Rename to ...
8100         (any_live_thread_of_inferior): ... this, and take an inferior
8101         pointer.
8102         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
8103         (value_in_thread_stack_temporaries)
8104         (get_last_thread_stack_temporary): Take a thread pointer instead
8105         of a ptid_t.  Adjust all callers.
8106         (thread_info::set_running): New.
8107         (validate_registers_access): Use inferior_thread.
8108         (can_access_registers_ptid): Rename to ...
8109         (can_access_registers_thread): ... this, and take a thread
8110         pointer.
8111         (print_thread_info_1): Adjust to compare thread pointers instead
8112         of ptids.
8113         (switch_to_no_thread, switch_to_thread): Make extern.
8114         (scoped_restore_current_thread::~scoped_restore_current_thread):
8115         Use m_thread pointer directly.
8116         (scoped_restore_current_thread::scoped_restore_current_thread):
8117         Use inferior_thread.
8118         (thread_command): Use thread pointer directly.
8119         (thread_num_make_value_helper): Use inferior_thread.
8120         * top.c (execute_command): Use inferior_thread.
8121         * tui/tui-interp.c: Include "inferior.h".
8122         * varobj.c (varobj_create): Use inferior_thread.
8123         (value_of_root_1): Use find_thread_global_id instead of
8124         global_thread_id_to_ptid.
8125
8126 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
8127
8128         * regcache.c (readable_regcache::read_part): Avoid memcpy when
8129         possible.
8130         (regcache::write_part): Likewise.
8131         (readable_regcache::cooked_read_part): Update comment.
8132         (readable_regcache::cooked_write_part): Likewise.
8133         * regcache.h: (readable_regcache::read_part): Likewise.
8134         (regcache::write_part): Likewise.
8135
8136 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
8137             Dirk Schubert  <dirk.schubert@arm.com>
8138
8139         * aarch64-linux-nat.c (post_attach): New.
8140         (aarch64_linux_nat_target::post_attach): Override post_attach to
8141         record the number of hardware debug registers.
8142
8143 2018-06-20  Tom Tromey  <tom@tromey.com>
8144
8145         * python/py-param.c (add_setshow_generic): Make parameters const.
8146         (parmpy_init): Update.
8147
8148 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
8149
8150         * regcache.h (regcache_cooked_read_ftype): Rename to...
8151         (register_read_ftype): ...this, change type to function_view.
8152         (class reg_buffer) <save>: Remove src parameter.
8153         (readonly_detached_regcache) <readonly_detached_regcache>: Make
8154         parameter non-const in first overload.  Remove src parameter in
8155         second overload.
8156         * regcache.c (do_cooked_read): Remove.
8157         (readonly_detached_regcache::readonly_detached_regcache): Make
8158         parameter non-const, adjust call to other constructor.
8159         (reg_buffer::save): Remove src parameter.
8160         * frame.c (do_frame_register_read): Remove.
8161         (frame_save_as_regcache): Use lambda function.
8162         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
8163         parameter to ppu2spu_data *.
8164         (ppu2spu_sniffer): Use lambda function.
8165
8166 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
8167
8168         * record-full.c (record_full_target::insert_breakpoint): Remove
8169         "struct" keyword, add const.
8170
8171 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
8172
8173         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
8174         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
8175         * configure.ac: Remove AC_PREREQ, add missing quoting.
8176         * gnulib/configure.ac: Modernize usage of
8177         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
8178         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
8179         (AUTOMAKE_VERSION): Bump to 1.15.1.
8180         * configure: Re-generate.
8181         * config.in: Re-generate.
8182         * aclocal.m4: Re-generate.
8183         * gnulib/aclocal.m4: Re-generate.
8184         * gnulib/config.in: Re-generate.
8185         * gnulib/configure: Re-generate.
8186         * gnulib/import/Makefile.in: Re-generate.
8187
8188 2018-06-19  Pedro Alves  <palves@redhat.com>
8189
8190         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
8191         (lookup_minimal_symbol_by_pc_section): ... here with
8192         gdb_assert_not_reached added.
8193
8194 2018-06-19  Pedro Alves  <palves@redhat.com>
8195
8196         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
8197         parameter with a block parameter.  Compare location's block symbol
8198         with the frame's block instead of addresses.
8199         (skip_inline_frames): Pass the current block instead of the
8200         frame's address.  Break out as soon as we determine the frame
8201         should not be skipped.
8202
8203 2018-06-18  Tom Tromey  <tom@tromey.com>
8204
8205         * solib-aix.c (solib_aix_get_section_offsets): Return
8206         unique_xmalloc_ptr.
8207         (solib_aix_solib_create_inferior_hook): Update.
8208
8209 2018-06-18  Tom Tromey  <tom@tromey.com>
8210
8211         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
8212
8213 2018-06-18  Tom Tromey  <tom@tromey.com>
8214
8215         * solib-frv.c (frv_relocate_main_executable): Use
8216         unique_xmalloc_ptr.
8217         * solib-dsbt.c (dsbt_relocate_main_executable): Use
8218         unique_xmalloc_ptr.
8219
8220 2018-06-18  Tom Tromey  <tom@tromey.com>
8221
8222         * objfiles.h (inhibit_section_map_updates): Update.
8223         (resume_section_map_updates, resume_section_map_updates_cleanup):
8224         Remove.
8225         * solib-svr4.c (svr4_handle_solib_event): Update.
8226         * objfiles.c (inhibit_section_map_updates): Return
8227         scoped_restore_tmpl<int>.
8228         (resume_section_map_updates, resume_section_map_updates_cleanup):
8229         Remove.
8230
8231 2018-06-18  Tom Tromey  <tom@tromey.com>
8232
8233         * valprint.h (read_string): Update.
8234         * valprint.c (read_string): Change type of "buffer".
8235         (val_print_string): Update.
8236         * python/py-value.c (valpy_string): Update.
8237         * language.h (struct language_defn) <la_get_string>: Change
8238         type of "buffer".
8239         (default_get_string, c_get_string): Update.
8240         * language.c (default_get_string): Change type of "buffer".
8241         * guile/scm-value.c (gdbscm_value_to_string): Update.
8242         * c-lang.c (c_get_string): Change type of "buffer".
8243
8244 2018-06-18  Tom Tromey  <tom@tromey.com>
8245
8246         * ser-mingw.c (struct pipe_state_destroyer): New.
8247         (pipe_state_up): New typedef.
8248         (cleanup_pipe_state): Remove.
8249         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
8250
8251 2018-06-18  Tom Tromey  <tom@tromey.com>
8252
8253         * rust-lang.h (rust_yyerror): Don't declare.
8254         * rust-lang.c (rust_language_defn): Update.
8255         * rust-exp.y (yyerror): Now static.
8256         * parse.c (parse_exp_in_context_1): Update.
8257         * p-lang.h (p_yyerror): Don't declare.
8258         * p-lang.c (p_language_defn): Update.
8259         * p-exp.y (yyerror): Now static.
8260         * opencl-lang.c (opencl_language_defn): Update.
8261         * objc-lang.c (objc_language_defn): Update.
8262         * m2-lang.h (m2_yyerror): Don't declare.
8263         * m2-lang.c (m2_language_defn): Update.
8264         * m2-exp.y (yyerror): Now static.
8265         * language.h (struct language_defn) <la_error>: Remove.
8266         * language.c (unk_lang_error): Remove.
8267         (unknown_language_defn, auto_language_defn): Remove.
8268         * go-lang.h (go_yyerror): Don't declare.
8269         * go-lang.c (go_language_defn): Update.
8270         * go-exp.y (yyerror): Now static.
8271         * f-lang.h (f_yyerror): Don't declare.
8272         * f-lang.c (f_language_defn): Update.
8273         * f-exp.y (yyerror): Now static.
8274         * d-lang.h (d_yyerror): Don't declare.
8275         * d-lang.c (d_language_defn): Update.
8276         * d-exp.y (yyerror): Now static.
8277         * c-lang.h (c_yyerror): Don't declare.
8278         * c-lang.c (c_language_defn, cplus_language_defn)
8279         (asm_language_defn, minimal_language_defn): Update.
8280         * c-exp.y (yyerror): Now static.
8281         * ada-lang.h (ada_yyerror): Don't declare.
8282         * ada-lang.c (ada_language_defn): Update.
8283         * ada-exp.y (yyerror): Now static.
8284
8285 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
8286
8287         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
8288         (store_sveregs_to_thread): Likewise.
8289         (aarch64_linux_fetch_inferior_registers): Check for SVE.
8290         (aarch64_linux_store_inferior_registers): Likewise.
8291         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
8292         function.
8293         (aarch64_sve_regs_copy_to_regcache): Likewise.
8294         (aarch64_sve_regs_copy_from_regcache): Likewise.
8295         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
8296         declaration.
8297         (aarch64_sve_regs_copy_to_regcache): Likewise.
8298         (aarch64_sve_regs_copy_from_regcache): Likewise.
8299         (sve_context): Structure from Linux headers.
8300         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
8301         (SVE_SIG_ZREG_SIZE): Likewise.
8302         (SVE_SIG_PREG_SIZE): Likewise.
8303         (SVE_SIG_FFR_SIZE): Likewise.
8304         (SVE_SIG_REGS_OFFSET): Likewise.
8305         (SVE_SIG_ZREGS_OFFSET): Likewise.
8306         (SVE_SIG_ZREG_OFFSET): Likewise.
8307         (SVE_SIG_ZREGS_SIZE): Likewise.
8308         (SVE_SIG_PREGS_OFFSET): Likewise.
8309         (SVE_SIG_PREG_OFFSET): Likewise.
8310         (SVE_SIG_PREGS_SIZE): Likewise.
8311         (SVE_SIG_FFR_OFFSET): Likewise.
8312         (SVE_SIG_REGS_SIZE): Likewise.
8313         (SVE_SIG_CONTEXT_SIZE): Likewise.
8314         (SVE_PT_REGS_MASK): Likewise.
8315         (SVE_PT_REGS_FPSIMD): Likewise.
8316         (SVE_PT_REGS_SVE): Likewise.
8317         (SVE_PT_VL_INHERIT): Likewise.
8318         (SVE_PT_VL_ONEXEC): Likewise.
8319         (SVE_PT_REGS_OFFSET): Likewise.
8320         (SVE_PT_FPSIMD_OFFSET): Likewise.
8321         (SVE_PT_FPSIMD_SIZE): Likewise.
8322         (SVE_PT_SVE_ZREG_SIZE): Likewise.
8323         (SVE_PT_SVE_PREG_SIZE): Likewise.
8324         (SVE_PT_SVE_FFR_SIZE): Likewise.
8325         (SVE_PT_SVE_FPSR_SIZE): Likewise.
8326         (SVE_PT_SVE_FPCR_SIZE): Likewise.
8327         (__SVE_SIG_TO_PT): Likewise.
8328         (SVE_PT_SVE_OFFSET): Likewise.
8329         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
8330         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
8331         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
8332         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
8333         (SVE_PT_SVE_PREG_OFFSET): Likewise.
8334         (SVE_PT_SVE_PREGS_SIZE): Likewise.
8335         (SVE_PT_SVE_FFR_OFFSET): Likewise.
8336         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
8337         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
8338         (SVE_PT_SVE_SIZE): Likewise.
8339         (SVE_PT_SIZE): Likewise.
8340         (HAS_SVE_STATE): New define.
8341
8342 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
8343
8344         * nat/aarch64-sve-linux-sigcontext.h: New file.
8345         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
8346         new files.
8347         (SVE_VQ_MIN): Likewise.
8348         (SVE_VQ_MAX): Likewise.
8349         (SVE_VL_MIN): Likewise.
8350         (SVE_VL_MAX): Likewise.
8351         (SVE_NUM_ZREGS): Likewise.
8352         (SVE_NUM_PREGS): Likewise.
8353         (sve_vl_valid): Likewise.
8354         (struct user_sve_header): Likewise.
8355
8356 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
8357             Richard Bunt <Richard.Bunt@arm.com>
8358
8359         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
8360         was requested by GDB.
8361
8362 2018-06-15  Tom de Vries  <tdevries@suse.de>
8363
8364         * MAINTAINERS (Write After Approval): Add Tom de Vries.
8365
8366 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
8367
8368         * gnulib/update-gnulib.sh: Print expected versions of
8369         autoconf/aclocal.
8370
8371 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
8372
8373         * arch-utils.c (default_type_align): Use type_length_units.
8374         * gdbtypes.c (type_align): Use type_length_units.
8375
8376 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8377
8378         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
8379         of 'define' command.
8380
8381 2018-06-14  Tom de Vries  <tdevries@suse.de>
8382
8383         PR cli/22573
8384         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
8385         get_no_prettyformat_print_options.
8386
8387 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
8388
8389         * sparc-nat.h: Include target.h.
8390         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
8391         <fetch_registers>: Remove this argument in function call.
8392         <store_registers>: Remove this argument in function call, remove
8393         extra semicolon.
8394         <low_forget_process>: Call sparc64_forget_process instead of
8395         sparc_forget_process.
8396
8397 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
8398
8399         * procfs.c (_initialize_procfs): Use add_inf_child_target.
8400         (procfs_target::make_corefile_notes): Adjust to new
8401         target_read_alloc return type.
8402
8403 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
8404             Stephen Roberts  <stephen.roberts@arm.com>
8405
8406         PR gdb/22882
8407         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
8408         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
8409         Move should_notify_stop local into more inner scope.
8410
8411 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
8412             Stephen Roberts  <stephen.roberts@arm.com>
8413
8414         PR gdb/22882
8415         * infrun.c (resume_1): Add call to mark_async_event_handler.
8416
8417 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
8418
8419         * infrun.c (do_target_wait): Change old version of $pc printed.
8420
8421 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
8422
8423         * dwarf2read.c (read_index_from_section): Rename to...
8424         (read_gdb_index_from_section): ... this, update all callers.
8425         (dwarf2_read_index): Rename to...
8426         (dwarf2_read_gdb_index): ... this, update all callers.
8427
8428 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
8429
8430         * hppa-linux-nat.c
8431         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
8432         hppa_linux_nat_target::fetch_registers.
8433
8434 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
8435
8436         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
8437         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
8438         (AARCH64_DWARF_SVE_FFR): Likewise.
8439         (AARCH64_DWARF_SVE_P0): Likewise.
8440         (AARCH64_DWARF_SVE_Z0): Likewise.
8441
8442 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
8443
8444         * common/common-regcache.h (raw_compare): New function.
8445         * regcache.c (regcache::raw_compare): Likewise.
8446         * regcache.h (regcache::raw_compare): New declaration.
8447
8448 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
8449
8450         * common/common-regcache.h (reg_buffer_common): New structure.
8451         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
8452         (reg_buffer::raw_supply): Likewise.
8453         (reg_buffer::raw_supply_integer): Likewise.
8454         (reg_buffer::raw_supply_zeroed): Likewise.
8455         (reg_buffer::raw_collect): Likewise.
8456         (reg_buffer::raw_collect_integer): Likewise.
8457         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
8458         (reg_buffer::raw_supply): Likewise.
8459         (reg_buffer::raw_supply_integer): Likewise.
8460         (reg_buffer::raw_supply_zeroed): Likewise.
8461         (reg_buffer::raw_collect): Likewise.
8462         (reg_buffer::raw_collect_integer): Likewise.
8463
8464 2018-06-10  Tom Tromey  <tom@tromey.com>
8465
8466         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
8467         (class remote_state) <stop_reply_queue>: Now std::vector.
8468         (remote_state::~remote_state)
8469         (remote_target::stop_reply_queue_length): Update.
8470         (struct queue_iter_param, remove_child_of_pending_fork)
8471         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
8472         (check_pending_event_prevents_wildcard_vcont_callback)
8473         (remove_stop_reply_for_inferior)
8474         (remove_stop_reply_of_remote_state)
8475         (remote_notif_remove_once_on_match)
8476         (stop_reply_match_ptid_and_ws)
8477         (remote_kill_child_of_pending_fork): Remove.
8478         (remote_target::remove_new_fork_children)
8479         (remote_target::check_pending_events_prevent_wildcard_vcont)
8480         (remote_target::discard_pending_stop_replies)
8481         (remote_target::discard_pending_stop_replies_in_queue)
8482         (remote_target::remote_notif_remove_queued_reply)
8483         (remote_target::queued_stop_reply)
8484         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
8485         (remote_target::wait, remote_target::kill_new_fork_children)
8486         (remote_target::async): Update.
8487
8488 2018-06-10  Tom Tromey  <tom@tromey.com>
8489
8490         * record-full.c (record_full_arch_list_cleanups): Remove.
8491         (record_full_message): Use try/catch.
8492         (record_full_wait_cleanups): Remove.
8493         (record_full_wait_1): Use try/catch.
8494         (record_full_restore): Likewise.
8495
8496 2018-06-10  Tom Tromey  <tom@tromey.com>
8497
8498         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
8499         declare VEC.  Add constructor.
8500         <in_target_beneath>: Now bool.
8501         (record_full_breakpoints): Now a std::vector, static.
8502         (record_full_sync_record_breakpoints)
8503         (record_full_init_record_breakpoints)
8504         (record_full_target::insert_breakpoint)
8505         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
8506
8507 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
8508
8509         * dwarf2read.c (process_cu_includes): Remove struct keyword.
8510         * serial.c (serial_interface_lookup): Remove struct keyword.
8511
8512 2018-06-10  Tom Tromey  <tom@tromey.com>
8513
8514         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
8515         method.
8516         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
8517         a method.
8518         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
8519         method.
8520         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
8521         "beneath" as a method.
8522         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
8523         Use "beneath" as a method.
8524
8525 2018-06-10  Tom Tromey  <tom@tromey.com>
8526
8527         * tracefile.c (struct trace_file_writer_deleter): New.
8528         <operator()>: Rename from trace_file_writer_xfree.
8529         (trace_file_writer_up): New typedef.
8530         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
8531
8532 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
8533
8534         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
8535         <m_registers, m_register_status>: Change type to
8536         std::unique_ptr.
8537         * regcache.c (reg_buffer::reg_buffer): Use new instead of
8538         XCNEWVEC.
8539
8540 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
8541
8542         * common/common-regcache.h (enum register_status): Add
8543         underlying type "signed char".
8544         * regcache.h (reg_buffer) <m_register_status>: Change type to
8545         register_status *.
8546         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
8547         register_status instead of signed char.
8548         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
8549         (reg_buffer::get_register_status): Remove cast.
8550         (readable_regcache::raw_read): Remove cast.
8551         (readable_regcache::cooked_read): Remove cast.
8552
8553 2018-06-09  Tom Tromey  <tom@tromey.com>
8554
8555         * source.c (reverse_search_command, forward_search_command): Use
8556         scoped_fd.
8557
8558 2018-06-09  Tom Tromey  <tom@tromey.com>
8559
8560         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
8561         (serial_ops_list): Now static, std::vector.
8562         (serial_interface_lookup, serial_add_interface): Update.
8563
8564 2018-06-09  Tom Tromey  <tom@tromey.com>
8565
8566         * dwarf2read.c (process_cu_includes): Update.
8567         (process_full_comp_unit): Update.
8568         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
8569         std::vector.
8570
8571 2018-06-08  Paul Koning  <paul_koning@dell.com>
8572
8573         PR gdb/23252
8574
8575         * python/python.c (do_start_initialization):
8576         Avoid call to internal Python API.
8577         (init__gdb_module): New function.
8578
8579 2018-06-08  Gary Benson <gbenson@redhat.com>
8580
8581         * linux-thread-db.c (valprint.h): New include.
8582         (struct check_thread_db_info): New structure.
8583         (check_thread_db_on_load, tdb_testinfo): New static globals.
8584         (check_thread_db, check_thread_db_callback): New functions.
8585         (try_thread_db_load_1): Run integrity checks if requested.
8586         (maintenance_check_libthread_db): New function.
8587         (_initialize_thread_db): Register "maint check libthread-db"
8588         and "maint set/show check-libthread-db".
8589         * NEWS: Mention the above new commands.
8590
8591 2018-06-08  Tom Tromey  <tom@tromey.com>
8592
8593         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
8594         now a method.
8595
8596 2018-06-08  Tom Tromey  <tom@tromey.com>
8597
8598         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
8599
8600 2018-06-08  Tom Tromey  <tom@tromey.com>
8601
8602         * common/btrace-common.h (struct btrace_data): Add constructor,
8603         destructor, move assignment operator.
8604         <empty, clear, fini>: New methods.
8605         <format>: Initialize.
8606         (btrace_data_init, btrace_data_fini, btrace_data_clear)
8607         (btrace_data_empty): Don't declare.
8608         * common/btrace-common.c (btrace_data_init): Remove.
8609         (btrace_data::fini): Rename from btrace_data_fini.
8610         (btrace_data::empty): Rename from btrace_data_empty.
8611         (btrace_data::clear): Rename from btrace_data_clear.  Return
8612         bool.
8613         * btrace.h (make_cleanup_btrace_data): Don't declare.
8614         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
8615         (parse_xml_btrace): Update.
8616         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
8617         (maint_btrace_clear_packet_history_cmd): Update.
8618
8619 2018-06-07  Pedro Alves  <palves@redhat.com>
8620
8621         * target.h (target_ops) <beneath>: Now a method.  All references
8622         updated.
8623         (class target_stack): New.
8624         * target.c (g_target_stack): New.
8625         (g_current_top_target): Delete.
8626         (current_top_target): Get the top target out of g_target_stack.
8627         (target_stack::push, target_stack::unpush): New.
8628         (push_target, unpush_target): Reimplement.
8629         (target_is_pushed): Reimplement in terms of g_target_stack.
8630         (target_ops::beneath, target_stack::find_beneath): New.
8631
8632 2018-06-07  Pedro Alves  <palves@redhat.com>
8633
8634         * target.h (find_target_beneath): Delete declaration.
8635         * target.c (find_target_beneath): Delete definition.
8636         * aix-thread.c: All callers of find_target_beneath adjusted to
8637         call target_ops::beneath instead.
8638         * bsd-uthread.c: Likewise.
8639         * linux-thread-db.c: Likewise.
8640         * ravenscar-thread.c: Likewise.
8641         * sol-thread.c: Likewise.
8642         * spu-multiarch.c: Likewise.
8643
8644 2018-06-07  Pedro Alves  <palves@redhat.com>
8645
8646         * target.h (target_ops) <beneath>: Now a method.  All references
8647         updated.
8648         (target_ops) <m_beneath>: New.
8649         * target.c (target_ops::beneath): New.
8650         * corelow.c: Adjust all references to target_ops::beneath.
8651         * linux-thread-db.c: Likewise.
8652         * make-target-delegates: Likewise.
8653         * record-btrace.c: Likewise.
8654         * record-full.c: Likewise.
8655         * remote.c: Likewise.
8656         * target.c: Likewise.
8657         * target-delegates.c: Regenerate.
8658
8659 2018-06-07  Pedro Alves  <palves@redhat.com>
8660
8661         * target.h (target_stack): Delete.
8662         (current_top_target): Declare function.
8663         * target.c (target_stack): Delete.
8664         (g_current_top_target): New.
8665         (current_top_target): New function.
8666         * auxv.c: Use current_top_target instead of target_stack
8667         throughout.
8668         * avr-tdep.c: Likewise.
8669         * breakpoint.c: Likewise.
8670         * corefile.c: Likewise.
8671         * elfread.c: Likewise.
8672         * eval.c: Likewise.
8673         * exceptions.c: Likewise.
8674         * frame.c: Likewise.
8675         * gdbarch-selftests.c: Likewise.
8676         * gnu-v3-abi.c: Likewise.
8677         * ia64-tdep.c: Likewise.
8678         * ia64-vms-tdep.c: Likewise.
8679         * infcall.c: Likewise.
8680         * infcmd.c: Likewise.
8681         * infrun.c: Likewise.
8682         * linespec.c: Likewise.
8683         * linux-tdep.c: Likewise.
8684         * minsyms.c: Likewise.
8685         * ppc-linux-nat.c: Likewise.
8686         * ppc-linux-tdep.c: Likewise.
8687         * procfs.c: Likewise.
8688         * regcache.c: Likewise.
8689         * remote.c: Likewise.
8690         * rs6000-tdep.c: Likewise.
8691         * s390-linux-nat.c: Likewise.
8692         * s390-tdep.c: Likewise.
8693         * solib-aix.c: Likewise.
8694         * solib-darwin.c: Likewise.
8695         * solib-dsbt.c: Likewise.
8696         * solib-spu.c: Likewise.
8697         * solib-svr4.c: Likewise.
8698         * solib-target.c: Likewise.
8699         * sparc-tdep.c: Likewise.
8700         * sparc64-tdep.c: Likewise.
8701         * spu-tdep.c: Likewise.
8702         * symfile.c: Likewise.
8703         * symtab.c: Likewise.
8704         * target-descriptions.c: Likewise.
8705         * target-memory.c: Likewise.
8706         * target.c: Likewise.
8707         * target.h: Likewise.
8708         * tracefile-tfile.c: Likewise.
8709         * tracepoint.c: Likewise.
8710         * valops.c: Likewise.
8711         * valprint.c: Likewise.
8712         * value.c: Likewise.
8713         * windows-tdep.c: Likewise.
8714         * mi/mi-main.c: Likewise.
8715
8716 2018-06-07  Tom Tromey  <tom@tromey.com>
8717
8718         * valprint.h (build_address_symbolic): Declare.
8719         * printcmd.c (print_address_symbolic): Update.
8720         (build_address_symbolic): Change "name" and "filename" to
8721         std::string.
8722         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
8723         Update.
8724         * defs.h (build_address_symbolic): Remove declaration.
8725
8726 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
8727
8728         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
8729         (aarch64_vnv_type): Add function.
8730         (aarch64_pseudo_register_name): Add V regs for SVE.
8731         (aarch64_pseudo_register_type): Likewise.
8732         (aarch64_pseudo_register_reggroup_p): Likewise.
8733         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
8734         (aarch64_pseudo_read_value): Add V regs for SVE.
8735         (aarch64_pseudo_write_2): Use V0 offset for SVE
8736         (aarch64_pseudo_write): Add V regs for SVE.
8737         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
8738
8739 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
8740
8741         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
8742         (sve_vl_from_vq): Likewise.
8743
8744 2018-06-05  Tom Tromey  <tom@tromey.com>
8745
8746         * cli/cli-cmds.c (show_version): Update.
8747         * top.c (print_gdb_version): Add "interactive" parameter.
8748         Update.
8749         * main.c (captured_main_1): Update.
8750         * top.h (print_gdb_version): Add "interactive" parameter and a
8751         comment.
8752
8753 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
8754
8755         * common/enum-flags.h: Add trailing semicolon to example in
8756         comment.
8757
8758 2018-06-05  Tom Tromey  <tom@tromey.com>
8759
8760         PR cli/12326:
8761         * NEWS: Add entry about pager.
8762         * utils.c (pagination_disabled_for_command): New global.
8763         (prompt_for_continue): Allow "c" response to prompt.
8764         (reinitialize_more_filter): Clear
8765         pagination_disabled_for_command.
8766         (fputs_maybe_filtered): Check pagination_disabled_for_command.
8767
8768 2018-06-04  Tom Tromey  <tom@tromey.com>
8769
8770         * ada-lang.h (ada_lookup_symbol_list): Update.
8771         * ada-lang.c (resolve_subexp): Update.
8772         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
8773         parameter.
8774         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
8775         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
8776         results parameter to std::vector.
8777         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
8778         Update.
8779         * ada-exp.y (block_lookup): Update.
8780         (select_possible_type_sym): Change type of syms.  Remove nsyms
8781         parameter.
8782         (write_var_or_type, write_name_assoc): Update.
8783
8784 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
8785
8786         * windows-nat.c (windows_nat_target::xfer_partial): Return
8787         TARGET_XFER_E_IO if we need to delegate to the target beneath
8788         but BENEATH is NULL.
8789
8790 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
8791
8792         * Makefile.in (config.status): Add configure.nat as a
8793         dependency.
8794
8795 2018-06-04  Tom Tromey  <tom@tromey.com>
8796
8797         * cp-name-parser.y (cpname_state): Add method declarations.
8798         (HANDLE_QUAL): Update.
8799         (cpname_state::d_grab, cpname_state::fill_comp)
8800         (cpname_state::make_operator, cpname_state::make_dtor)
8801         (cpname_state::make_builtin_type, cpname_state::make_name)
8802         (cpname_state::d_qualify, cpname_state::d_int_type)
8803         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
8804         (%union): Move earlier.
8805
8806 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8807
8808         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
8809
8810 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8811
8812         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
8813         (aarch64_pseudo_write_1): Likewise.
8814         (aarch64_pseudo_read_value): Use helper.
8815         (aarch64_pseudo_write): Likewise.
8816
8817 2018-06-04  Pedro Alves  <palves@redhat.com>
8818
8819         * darwin-nat.c (darwin_ops): Delete.
8820         (darwin_attach_pid): Use get_native_target.
8821
8822 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8823
8824         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
8825         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
8826
8827 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8828
8829         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
8830         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
8831         (aarch64_gdbarch_init): Check for SVE.
8832         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
8833
8834 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8835
8836         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
8837         * aarch64-tdep.h (aarch64_read_description): Likewise.
8838         * arch/aarch64.c (aarch64_create_target_description): Likewise.
8839         * arch/aarch64.h (aarch64_create_target_description): Likewise.
8840         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
8841         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
8842         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
8843
8844 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
8845
8846         * value.c (value_fetch_lazy_bitfield): New.
8847         (value_fetch_lazy_memory): New.
8848         (value_fetch_lazy_register): New.
8849         (value_fetch_lazy): Factor out to smaller functions.
8850
8851 2018-06-01  Tom Tromey  <tom@tromey.com>
8852
8853         * cp-name-parser.y (backslashable, represented): Now const.
8854
8855 2018-06-01  Tom Tromey  <tom@tromey.com>
8856
8857         * cp-name-parser.y: Include parser-defs.h.
8858         (parser_fprintf): Remove declaration.
8859
8860 2018-06-01  Tom Tromey  <tom@tromey.com>
8861
8862         * cp-name-parser.y: Use %pure-parser, %lex-param, and
8863         %parse-param.
8864         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
8865         (global_result): Remove globals.
8866         (struct cpname_state): New.
8867         (yyparse): Don't declare.
8868         (yylex, yyerror): Move declarations after %union.
8869         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
8870         (make_name): Add state parameter.
8871         Update all callers.
8872         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
8873         parameter.
8874         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
8875         Update.
8876         (yylex): Add lvalp, state parameters.
8877         (yyerror): Add state parameter.
8878         (cp_demangled_name_to_comp): Update.
8879
8880 2018-06-01  Tom Tromey  <tom@tromey.com>
8881
8882         * cp-name-parser.y (parser_fprintf): Declare.
8883         (GDB_YY_REMAP_PREFIX): Define.
8884         Include yy-remap.h.  Don't redefine yy* identifiers.
8885
8886 2018-06-01  Tom Tromey  <tom@tromey.com>
8887
8888         * python/py-type.c (typy_legacy_template_argument): Update.
8889         * cp-support.h (cp_demangled_name_to_comp): Update.
8890         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
8891         parameter to be a "std::string *".
8892         (main): Update.
8893
8894 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
8895
8896         * ada-lex.l: Include "diagnostics.h" instead of
8897         "common/diagnostics.h".
8898         * unittests/environ-selftests.c: Likewise.
8899         * common/diagnostics.h: Moved to ../include.
8900
8901 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
8902
8903         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
8904         to language_mode_manual while calling breakpoint_re_set_one.
8905
8906 2018-06-01  Tom Tromey  <tom@tromey.com>
8907
8908         * valops.c (value_cast_structs, destructor_name_p): Update.
8909         * symtab.c (gdb_mangle_name): Update.
8910         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
8911         Update.
8912         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
8913         (pascal_object_print_value_fields, pascal_object_print_value):
8914         Update.
8915         * p-typeprint.c (pascal_type_print_derivation_info): Update.
8916         * linespec.c (find_methods): Update.
8917         * gdbtypes.h (type_name_no_tag): Remove.
8918         (type_name_or_error): Rename from type_name_no_tag_or_error.
8919         * gdbtypes.c (type_name_no_tag): Remove.
8920         (type_name_or_error): Rename from type_name_no_tag_or_error.
8921         (lookup_struct_elt_type, check_typedef): Update.
8922         * expprint.c (print_subexp_standard): Update.
8923         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
8924         * d-namespace.c (d_lookup_nested_symbol): Update.
8925         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
8926         (cp_print_class_member): Update.
8927         * cp-namespace.c (cp_lookup_nested_symbol): Update.
8928         * completer.c (add_struct_fields): Update.
8929         * c-typeprint.c (cp_type_print_derivation_info)
8930         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
8931         Update.
8932         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
8933         (ada_prefer_type, ada_is_exception_sym): Update.
8934
8935 2018-06-01  Tom Tromey  <tom@tromey.com>
8936
8937         * valops.c (enum_constant_from_type, value_namespace_elt)
8938         (value_maybe_namespace_elt): Update.
8939         * valarith.c (find_size_for_pointer_math): Update.
8940         * target-descriptions.c (make_gdb_type): Update.
8941         * symmisc.c (print_symbol): Update.
8942         * stabsread.c (define_symbol, read_type)
8943         (complain_about_struct_wipeout, add_undefined_type)
8944         (cleanup_undefined_types_1): Update.
8945         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
8946         (rust_range_type_p, val_print_struct, rust_print_struct_def)
8947         (rust_internal_print_type, rust_composite_type)
8948         (rust_evaluate_funcall, rust_evaluate_subexp)
8949         (rust_inclusive_range_type_p): Update.
8950         * python/py-type.c (typy_get_tag): Update.
8951         * p-typeprint.c (pascal_type_print_base): Update.
8952         * mdebugread.c (parse_symbol, parse_type): Update.
8953         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
8954         Update.
8955         * guile/scm-type.c (gdbscm_type_tag): Update.
8956         * go-lang.c (sixg_string_p): Update.
8957         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
8958         Update.
8959         * gdbtypes.h (struct main_type) <tag_name>: Remove.
8960         (TYPE_TAG_NAME): Remove.
8961         * gdbtypes.c (type_name_no_tag): Simplify.
8962         (check_typedef, check_types_equal, recursive_dump_type)
8963         (copy_type_recursive, arch_composite_type): Update.
8964         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
8965         in summary mode when needed.
8966         * eval.c (evaluate_funcall): Update.
8967         * dwarf2read.c (fixup_go_packaging, read_structure_type)
8968         (process_structure_scope, read_enumeration_type)
8969         (read_namespace_type, read_module_type, determine_prefix): Update.
8970         * cp-support.c (inspect_type): Update.
8971         * coffread.c (process_coff_symbol, decode_base_type): Update.
8972         * c-varobj.c (c_is_path_expr_parent): Update.
8973         * c-typeprint.c (c_type_print_base_struct_union): Update.
8974         (c_type_print_base_1): Update.  Print struct/class/union/enum in
8975         summary when using C language.
8976         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
8977         (gen_maybe_namespace_elt): Update.
8978         * ada-lang.c (ada_type_name): Simplify.
8979         (empty_record, ada_template_to_fixed_record_type_1)
8980         (template_to_static_fixed_type)
8981         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
8982
8983 2018-06-01  Tom Tromey  <tom@tromey.com>
8984
8985         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
8986         c_print_type.
8987         * c-typeprint.c (c_print_type_1): Add "language" parameter.
8988         (c_print_type): Update.
8989         (c_print_type): New overload.
8990         (c_type_print_varspec_prefix, c_type_print_args)
8991         (c_type_print_varspec_suffix, c_print_type_no_offsets)
8992         (c_type_print_base_struct_union, c_type_print_base_1)
8993         (cp_type_print_method_args): Add "language" parameter.
8994         (c_type_print_base): Update.
8995         * c-lang.h (c_print_type): Add new overload.
8996
8997 2018-06-01  Tom Tromey  <tom@tromey.com>
8998
8999         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
9000         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
9001
9002 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
9003
9004         * aarch64-tdep.c (aarch64_sve_register_names): New const
9005         var.
9006         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
9007         (AARCH64_SVE_Z_REGS_NUM): New define.
9008         (AARCH64_SVE_P_REGS_NUM): Likewise.
9009         (AARCH64_SVE_NUM_REGS): Likewise.
9010
9011 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
9012
9013         * nat/linux-ptrace.h [__alpha__]
9014         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
9015         definitions.
9016
9017 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
9018
9019         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
9020         the endianness selected.
9021         * NEWS: Document `set endian auto' mode operation update.
9022
9023 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
9024
9025         * Makefile.in: Add new header.
9026         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
9027         (sve_vl_from_vg): Likewise.
9028         (sve_vq_from_vl): Likewise.
9029         (sve_vl_from_vq): Likewise.
9030         (sve_vq_from_vg): Likewise.
9031         (sve_vg_from_vq): Likewise.
9032         * configure.nat: Add new c file.
9033         * nat/aarch64-sve-linux-ptrace.c: New file.
9034         * nat/aarch64-sve-linux-ptrace.h: New file.
9035
9036 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
9037
9038         * aarch64-linux-nat.c (aarch64_linux_read_description):
9039         Add parmeter zero.
9040         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
9041         Likewise.
9042         * aarch64-tdep.c (tdesc_aarch64_list): Add.
9043         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
9044         (aarch64_gdbarch_init): Add parmeter zero.
9045         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
9046         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
9047         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
9048         parmeter.
9049         * doc/gdb.texinfo: Describe SVE feature
9050         * features/aarch64-sve.c: New file.
9051
9052 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
9053
9054         PR gdb/23210
9055         * gdbarch.sh (significant_addr_bit): Default to zero when
9056         not set by target architecture.
9057         * gdbarch.c: Re-generated.
9058         * utils.c (address_significant): Update.
9059
9060 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
9061
9062         * stack.c (func_command): Remove trailing newline in call to error.
9063
9064 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9065
9066         * regcache.h (regcache_raw_collect): Remove, update callers to
9067         use regcache::raw_collect.
9068         * regcache.c (regcache_raw_collect): Remove.
9069
9070 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9071
9072         * regcache.h (regcache_raw_supply): Remove, update callers to
9073         use detached_regcache::raw_supply.
9074         * regcache.c (regcache_raw_supply): Remove.
9075
9076 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9077
9078         * regcache.h (regcache_cooked_write_part): Remove, update
9079         callers to use regcache::cooked_write_part.
9080         * regcache.c (regcache_cooked_write_part): Remove.
9081
9082 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9083
9084         * regcache.h (regcache_cooked_read_part): Remove, update callers
9085         to use readable_regcache::cooked_read_part.
9086         * regcache.c (regcache_cooked_read_part): Remove.
9087
9088 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9089
9090         * regcache.h (regcache_cooked_read_value): Remove, update
9091         callers to use readable_regcache::cooked_read_value.
9092         * regcache.c (regcache_cooked_read_value): Remove.
9093
9094 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9095
9096         * regcache.h (regcache_cooked_write): Remove, update callers to
9097         use regcache::cooked_write.
9098         * regcache.c (regcache_cooked_write): Remove.
9099
9100 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9101
9102         * regcache.h (regcache_invalidate): Remove, update callers to
9103         use detached_regcache::invalidate instead.
9104         * regcache.c (regcache_invalidate): Remove.
9105
9106 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9107
9108         * regcache.h (regcache_raw_write_part): Remove, update callers
9109         to use regcache::raw_write_part instead.
9110         * regcache.c (regcache_raw_write_part): Remove.
9111
9112 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9113
9114         * regcache.h (regcache_raw_read_part): Remove, update callers to
9115         use readable_regcache::raw_read_part instead.
9116         * regcache.c (regcache_raw_read_part): Remove.
9117
9118 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9119
9120         * regcache.h (regcache_cooked_read): Remove, update callers to
9121         use readable_regcache::cooked_read instead.
9122         * regcache.c (regcache_cooked_read): Remove.
9123
9124 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9125
9126         * regcache.h (regcache_raw_write): Remove, update callers to use
9127         regcache::raw_write instead.
9128         * regcache.c (regcache_raw_write): Remove.
9129
9130 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9131
9132         * regcache.h (regcache_raw_read): Remove, update callers to use
9133         readable_regcache::raw_read instead.
9134         * regcache.c (regcache_raw_read): Remove.
9135
9136 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9137
9138         * regcache.h (regcache_raw_update): Remove, update callers to
9139         use readable_regcache::raw_update instead.
9140         * regcache.c (regcache_raw_update): Remove.
9141
9142 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9143
9144         * regcache.h (regcache_register_status): Remove, update callers
9145         to use reg_buffer::get_register_status directly instead.
9146         * regcache.c (regcache_register_status): Remove.
9147
9148 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9149
9150         * regcache.h (regcache_get_ptid): Remove, update all callers to
9151         call regcache::ptid instead.
9152         * regcache.c (regcache_get_ptid): Remove.
9153
9154 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9155
9156         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
9157
9158 2018-05-30  Pedro Alves  <palves@redhat.com>
9159
9160         * common/common-exceptions.h (exception_rethrow): Use
9161         ATTRIBUTE_NORETURN.
9162
9163 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
9164
9165         * breakpoint.c (print_solib_event, check_status_catch_solib):
9166         Remove struct keyword in range-based for loops.
9167         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
9168         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
9169         Likewise.
9170         * linespec.c (find_superclass_methods, search_minsyms_for_name):
9171         Likewise.
9172         * symfile.c (addr_info_make_relative): Likewise.
9173         * thread.c (value_in_thread_stack_temporaries): Likewise.
9174
9175 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
9176
9177         PR gdb/16841
9178         * valops.c (value_struct_elt_for_reference): Call check_typedef on
9179         aggregate type to get its real type before accessing it.
9180
9181 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
9182
9183         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
9184         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
9185         * coff-pe-read.c (add_pe_forwarded_sym): Replace
9186         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
9187         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
9188         * jit.c (jit_breakpoint_re_set_internal): Likewise.
9189         * printcmd.c (info_address_command): Likewise.
9190
9191 2018-05-29  Tom Tromey  <tom@tromey.com>
9192
9193         * windows-nat.c (handle_exception): Update fall-through comment.
9194
9195 2018-05-29  Tom Tromey  <tom@tromey.com>
9196
9197         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
9198         (struct program_space) <added_solibs>: Now a std::vector.
9199         * breakpoint.c (print_solib_event): Update.
9200         (check_status_catch_solib): Update.
9201         * progspace.c (clear_program_space_solib_cache): Update.
9202         * solib.c (update_solib_list): Update.
9203
9204 2018-05-29  Tom Tromey  <tom@tromey.com>
9205
9206         * python/py-type.c (typy_richcompare): Update.
9207         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
9208         * gdbtypes.h (types_deeply_equal): Return bool.
9209         (types_equal): Likewise.
9210         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
9211         declare VEC.
9212         (check_types_equal): Change worklist to std::vector.  Return
9213         bool.
9214         (struct type_equality_entry): Add constructor.
9215         (compare_maybe_null_strings): Return bool.
9216         (check_types_worklist): Return bool.  Change worklist to
9217         std::vector.
9218         (types_deeply_equal): Use std::vector.
9219         (types_equal): Return bool.
9220         (compare_maybe_null_strings): Simplify.
9221
9222 2018-05-29  Tom Tromey  <tom@tromey.com>
9223
9224         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
9225
9226 2018-05-29  Tom Tromey  <tom@tromey.com>
9227
9228         * objc-lang.h: Don't include cp-support.h.
9229         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
9230         declare VEC.
9231
9232 2018-05-27  Tom Tromey  <tom@tromey.com>
9233
9234         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
9235
9236 2018-05-25  Tom Tromey  <tom@tromey.com>
9237
9238         * value.c (value::location): Initialize.
9239
9240 2018-05-25  Tom Tromey  <tom@tromey.com>
9241
9242         * dbxread.c (init_bincl_list): Remove.
9243         (bincl_list): Now a std::vector.
9244         (bincls_allocated, next_bincl): Remove.
9245         (free_bincl_list, do_free_bincl_list_cleanup)
9246         (make_cleanup_free_bincl_list): Remove.
9247         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
9248         unique_xmalloc_ptr.
9249         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
9250         (struct header_file_location): Add constructor.
9251         (add_bincl_to_list): Remove.
9252
9253 2018-05-25  Tom Tromey  <tom@tromey.com>
9254
9255         * tui/tui.c (tui_enable): Update.
9256         * mi/mi-interp.c (mi_interp::init): Update.
9257         * interps.h (class interp) <name>: New method.
9258         <m_name>: Rename from name.
9259         (~scoped_restore_interp): Update.
9260         * interps.c (interp::interp): Update.
9261         (interp_add, interp_set, interp_lookup_existing)
9262         (current_interp_named_p): Update.
9263
9264 2018-05-25  Tom Tromey  <tom@tromey.com>
9265
9266         * interps.c (interp_name): Remove.
9267         * mi/mi-interp.c (mi_interp::init): Update.
9268         * interps.h (interp_name): Remove.
9269         (~scoped_restore_interp): Update.
9270         * tui/tui.c (tui_enable): Update.
9271
9272 2018-05-25  Tom Tromey  <tom@tromey.com>
9273
9274         * utils.c (fputs_maybe_filtered): Update.
9275         * linespec.c (decode_line_full): Update.
9276         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
9277         (mi_print_breakpoint_for_event, mi_solib_loaded)
9278         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
9279         (mi_user_selected_context_changed): Update.
9280         * mi/mi-main.c (mi_execute_command): Update.
9281         * cli/cli-script.c (execute_control_command): Update.
9282         * python/python.c (execute_gdb_command): Update.
9283         * solib.c (info_sharedlibrary_command): Update.
9284         * interps.c (interp_ui_out): Remove.
9285         * interps.h (interp_ui_out): Remove.
9286
9287 2018-05-25  Tom Tromey  <tom@tromey.com>
9288
9289         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
9290         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
9291         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
9292
9293 2018-05-25  Tom Tromey  <tom@tromey.com>
9294
9295         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
9296         * interps.c (interp_exec): Use scoped_restore.
9297
9298 2018-05-25  Tom Tromey  <tom@tromey.com>
9299
9300         * remote.c (remote_target::remote_file_get): Use
9301         gdb::byte_vector.
9302         (remote_target::remote_file_put): Likewise.
9303
9304 2018-05-25  Tom Tromey  <tom@tromey.com>
9305
9306         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
9307         a std::string.
9308         (get_pe_section_index, add_pe_exported_sym): Update.
9309         (read_pe_exported_syms): Use gdb::def_vector.
9310
9311 2018-05-25  Tom Tromey  <tom@tromey.com>
9312
9313         * frame.c (remove_prev_frame): Remove.
9314         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
9315
9316 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
9317
9318         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
9319         Remove prototypes.
9320         * mips-linux-nat.c (supply_fpregset): Always call
9321         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
9322         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
9323         `mips_fill_fpregset'.
9324         * mips-linux-tdep.c (mips_supply_fpregset)
9325         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
9326         (mips_fill_fpregset_wrapper): Remove functions.
9327         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
9328         (mips_linux_fpregset): Remove variable.
9329         (mips_linux_iterate_over_regset_sections): Use
9330         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
9331         (mips_linux_o32_sigframe_init): Remove comment.
9332
9333 2018-05-25  Pedro Alves  <palves@redhat.com>
9334
9335         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
9336         (struct readahead_cache, struct packet_reg, struct
9337         remote_arch_state, class remote_state): Move higher up in the
9338         file.
9339         (remote_target::m_remote_state): Now an object instead of a pointer.
9340         (remote_target::get_remote_state): Adjust.
9341
9342 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
9343
9344         * stack.c (select_and_print_frame): Delete.
9345         (struct function_bounds): Move struct within function.
9346         (func_command): Most content moved into new function
9347         find_frame_for_function, use new function, print result, add
9348         function comment.
9349         (find_frame_for_function): New function, now returns a result.
9350
9351 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9352
9353         * stack.c (iterate_over_block_arg_vars): Fix comment.
9354         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
9355
9356 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
9357
9358         PR gdb/23203
9359         * frame.c
9360         (scoped_restore_selected_frame::scoped_restore_selected_frame):
9361         Define.
9362         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
9363         Define.
9364         * frame.h (class scoped_restore_selected_frame): New class.
9365         * stack.c (print_frame_local_vars): Remove catching and rethrowing
9366         of any exception, use scoped_restore_selected_frame to restore the
9367         frame instead.
9368
9369 2018-05-24  Pedro Alves  <palves@redhat.com>
9370
9371         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
9372         override.
9373
9374 2018-05-23  Tom Tromey  <tom@tromey.com>
9375
9376         * complaints.c (struct complaints): Remove.
9377         (symfile_complaint_book): Remove.
9378         (series): New global.
9379         (complaint_internal): Update.
9380         (clear_complaints): Update.
9381
9382 2018-05-23  Tom Tromey  <tom@tromey.com>
9383
9384         * complaints.c (counters): New global.
9385         (struct complain): Remove.
9386         (struct complaints) <root>: Remove.
9387         (complaint_sentinel): Remove.
9388         (symfile_complaint_book): Update.
9389         (find_complaint) Remove.
9390         (complaint_internal, clear_complaints): Update.
9391
9392 2018-05-23  Tom Tromey  <tom@tromey.com>
9393
9394         * complaints.c (struct complain) <file, line>: Remove.
9395         (find_complaint): Remove file, line parameters.
9396         (complaint_internal): Update.
9397
9398 2018-05-23  Tom Tromey  <tom@tromey.com>
9399
9400         * complaints.c (vcomplaint): Remove.
9401         (complaint_internal) Merge in contents of vcomplaint.
9402
9403 2018-05-23  Tom Tromey  <tom@tromey.com>
9404
9405         * complaints.c (struct complaints) <explanation>: Remove.
9406         (symfile_explanations): Remove.
9407         (symfile_complaint_book): Update.
9408         (vcomplaint): Update.
9409         (struct explanation): Remove.
9410
9411 2018-05-23  Tom Tromey  <tom@tromey.com>
9412
9413         * complaints.c (symfile_complaints): Remove.
9414         (complaint_internal): Remove "complaints" parameter.
9415         (clear_complaints, vcomplaint): Remove "c" parameter.
9416         (get_complaints): Remove.
9417         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
9418         (dwarf2_debug_line_missing_file_complaint)
9419         (dwarf2_debug_line_missing_end_sequence_complaint)
9420         (dwarf2_complex_location_expr_complaint)
9421         (dwarf2_const_value_length_mismatch_complaint)
9422         (dwarf2_section_buffer_overflow_complaint)
9423         (dwarf2_macro_malformed_definition_complaint)
9424         (dwarf2_invalid_attrib_class_complaint)
9425         (create_addrmap_from_index, dw2_symtab_iter_next)
9426         (dw2_expand_marked_cus)
9427         (dw2_debug_names_iterator::find_vec_in_debug_names)
9428         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
9429         (create_debug_type_hash_table, init_cutu_and_read_dies)
9430         (partial_die_parent_scope, add_partial_enumeration)
9431         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
9432         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
9433         (read_import_statement, read_file_scope, create_dwo_cu_reader)
9434         (create_cus_hash_table, create_dwp_hash_table)
9435         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
9436         (dwarf2_rnglists_process, dwarf2_ranges_process)
9437         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
9438         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
9439         (handle_struct_member_die, process_structure_scope)
9440         (read_array_type, read_common_block, read_module_type)
9441         (read_tag_pointer_type, read_typedef, read_base_type)
9442         (read_subrange_type, load_partial_dies, partial_die_info::read)
9443         (partial_die_info::read, partial_die_info::read)
9444         (partial_die_info::read, read_checked_initial_length_and_offset)
9445         (dwarf2_string_attr, read_formatted_entries)
9446         (dwarf_decode_line_header)
9447         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
9448         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
9449         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
9450         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
9451         (get_signatured_type, get_DW_AT_signature_type)
9452         (decode_locdesc, file_file_name, consume_improper_spaces)
9453         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
9454         (dwarf_decode_macro_bytes, dwarf_decode_macros)
9455         (dwarf2_symbol_mark_computed, set_die_type)
9456         (read_attribute_value): Update.
9457         * stap-probe.c (handle_stap_probe, get_stap_base_address):
9458         Update.
9459         * dbxread.c (unknown_symtype_complaint)
9460         (lbrac_mismatch_complaint, repeated_header_complaint)
9461         (set_namestring, function_outside_compilation_unit_complaint)
9462         (read_dbx_symtab, process_one_symbol): Update.
9463         * gdbtypes.c (stub_noname_complaint): Update.
9464         * windows-nat.c (handle_unload_dll): Update.
9465         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
9466         (decode_base_type): Update.
9467         * xcoffread.c (bf_notfound_complaint, ef_complaint)
9468         (eb_complaint, record_include_begin, record_include_end)
9469         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
9470         (process_xcoff_symbol, read_symbol)
9471         (function_outside_compilation_unit_complaint)
9472         (scan_xcoff_symtab): Update.
9473         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
9474         * buildsym.c (finish_block_internal, make_blockvector)
9475         (end_symtab_get_static_block, augment_type_symtab): Update.
9476         * dtrace-probe.c (dtrace_process_dof)
9477         (dtrace_static_probe_ops::get_probes): Update.
9478         * complaints.h (struct complaint): Don't declare.
9479         (symfile_complaints): Remove.
9480         (complaint_internal): Remove "complaints" parameter.
9481         (complaint): Likewise.
9482         (clear_complaints): Likewise.
9483         * symfile.c (syms_from_objfile_1, finish_new_objfile)
9484         (reread_symbols): Update.
9485         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
9486         (dwarf2_frame_cache, decode_frame_entry): Update.
9487         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
9488         * objc-lang.c (lookup_objc_class, lookup_child_selector)
9489         (info_selectors_command): Update.
9490         * macrotab.c (macro_include, check_for_redefinition)
9491         (macro_undef): Update.
9492         * objfiles.c (filter_overlapping_sections): Update.
9493         * stabsread.c (invalid_cpp_abbrev_complaint)
9494         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
9495         (define_symbol, error_type, read_type, rs6000_builtin_type)
9496         (stabs_method_name_from_physname, read_member_functions)
9497         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
9498         (attach_fields_to_type, complain_about_struct_wipeout)
9499         (read_range_type, read_args, common_block_start)
9500         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
9501         Update.
9502         * mdebugread.c (index_complaint, unknown_ext_complaint)
9503         (basic_type_complaint, bad_tag_guess_complaint)
9504         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
9505         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
9506         (parse_procedure, parse_lines)
9507         (function_outside_compilation_unit_complaint)
9508         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
9509         (bad_tag_guess_complaint, reg_value_complaint): Update.
9510         * cp-support.c (demangled_name_complaint): Update.
9511         * macroscope.c (sal_macro_scope): Update.
9512         * dwarf-index-write.c (class debug_names): Update.
9513
9514 2018-05-23  Tom Tromey  <tom@tromey.com>
9515
9516         * complaints.c (clear_complaints): Remove "noisy" parameter.
9517         * complaints.h (clear_complaints): Update.
9518         * symfile.c (syms_from_objfile_1, finish_new_objfile)
9519         (reread_symbols): Update.
9520
9521 2018-05-23  Tom Tromey  <tom@tromey.com>
9522
9523         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
9524         SUBSEQUENT_MESSAGE.
9525         (vcomplaint, clear_complaints): Update.
9526         (symfile_explanations): Remove some messages.
9527
9528 2018-05-23  Tom Tromey  <tom@tromey.com>
9529
9530         * complaints.c (internal_complaint): Remove.
9531         * complaints.h (internal_complaint): Remove.
9532
9533 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
9534
9535         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
9536
9537 2018-05-22  Pedro Alves  <palves@redhat.com>
9538
9539         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
9540         (remote_fileio_badfd, remote_fileio_return_errno)
9541         (remote_fileio_return_success, remote_fileio_func_open)
9542         (remote_fileio_func_open, remote_fileio_func_close)
9543         (remote_fileio_func_read, remote_fileio_func_write)
9544         (remote_fileio_func_lseek, remote_fileio_func_rename)
9545         (remote_fileio_func_unlink, remote_fileio_func_stat)
9546         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
9547         (remote_fileio_func_isatty, remote_fileio_func_system): Add
9548         remote_target parameter.
9549         (remote_fio_func_map) <func>: Add remote_target parameter.
9550         (do_remote_fileio_request, remote_fileio_request):
9551         * remote-fileio.h (remote_fileio_request):
9552         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
9553         remote_target parameter.
9554         (remote_notif_process, handle_notification): Adjust to pass down
9555         the remote.
9556         (remote_notif_state_allocate): Add remote_target parameter.  Save
9557         it.
9558         * remote-notif.h (struct remote_target): Forward declare.
9559         (struct notif_client) <parse, ack, can_get_pending_events>: Add
9560         remote_target parameter.
9561         (struct remote_notif_state) <remote>: New field.
9562         (remote_notif_ack, remote_notif_parse): Add remote_target
9563         parameter.
9564         (remote_notif_state_allocate, remote_notif_state_allocate): Add
9565         remote_target parameter.
9566         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
9567         (threads_listing_context, rmt_thread_action, protocol_feature)
9568         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
9569         (packet_result, struct threads_listing_context, remote_state):
9570         Move definitions and declarations higher up.
9571         (remote_target) <~remote_target>: Declare.
9572         (remote_download_command_source, remote_file_put, remote_file_get)
9573         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
9574         (remote_hostio_pread_vFile, remote_hostio_send_command)
9575         (remote_hostio_set_filesystem, remote_hostio_open)
9576         (remote_hostio_close, remote_hostio_unlink, remote_state)
9577         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
9578         (get_memory_write_packet_size, get_memory_read_packet_size)
9579         (append_pending_thread_resumptions, remote_detach_1)
9580         (append_resumption, remote_resume_with_vcont)
9581         (add_current_inferior_and_thread, wait_ns, wait_as)
9582         (process_stop_reply, remote_notice_new_inferior)
9583         (process_initial_stop_replies, remote_add_thread)
9584         (btrace_sync_conf, remote_btrace_maybe_reopen)
9585         (remove_new_fork_children, kill_new_fork_children)
9586         (discard_pending_stop_replies, stop_reply_queue_length)
9587         (check_pending_events_prevent_wildcard_vcont)
9588         (discard_pending_stop_replies_in_queue, stop_reply)
9589         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
9590         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
9591         (remote_interrupt_as, remote_interrupt_ns)
9592         (remote_get_noisy_reply, remote_query_attached)
9593         (remote_add_inferior, remote_current_thread, get_current_thread)
9594         (set_thread, set_general_thread, set_continue_thread)
9595         (set_general_process, write_ptid)
9596         (remote_unpack_thread_info_response, remote_get_threadinfo)
9597         (parse_threadlist_response, remote_get_threadlist)
9598         (remote_threadlist_iterator, remote_get_threads_with_ql)
9599         (remote_get_threads_with_qxfer)
9600         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
9601         (get_offsets, remote_check_symbols, remote_supported_packet)
9602         (remote_query_supported, remote_packet_size)
9603         (remote_serial_quit_handler, remote_detach_pid)
9604         (remote_vcont_probe, remote_resume_with_hc)
9605         (send_interrupt_sequence, interrupt_query)
9606         (remote_notif_get_pending_events, fetch_register_using_p)
9607         (send_g_packet, process_g_packet, fetch_registers_using_g)
9608         (store_register_using_P, store_registers_using_G)
9609         (set_remote_traceframe, check_binary_download)
9610         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
9611         (remote_xfer_live_readonly_partial, remote_read_bytes)
9612         (remote_send_printf, remote_flash_write, readchar)
9613         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
9614         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
9615         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
9616         (extended_remote_disable_randomization, extended_remote_run)
9617         (send_environment_packet, extended_remote_environment_support)
9618         (extended_remote_set_inferior_cwd, remote_write_qxfer)
9619         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
9620         (packet_command): Now methods of ...
9621         (remote_target): ... this class.
9622         (m_remote_state) <remote_target>: New field.
9623         (struct remote_state) <stop_reply_queue,
9624         remote_async_inferior_event_token, wait_forever_enabled_p>: New
9625         fields.
9626         (remote_state::remote_state): Allocate stop_reply_queue.
9627         (remote_state): Delete global.
9628         (get_remote_state_raw): Delete.
9629         (remote_target::get_remote_state): Allocate m_remote_state on
9630         demand.
9631         (get_current_remote_target): New.
9632         (remote_ops, extended_remote_ops): Delete.
9633         (wait_forever_enabled_p, remote_async_inferior_event_token):
9634         Delete, moved to struct remote_state.
9635         (remote_target::close): Delete self.  Destruction bits split to
9636         ...
9637         (remote_target::~remote_target): ... this.
9638         (show_memory_packet_size): Adjust to use
9639         get_current_remote_target.
9640         (struct protocol_feature) <func>: Add remote_target parameter.
9641         All callers adjusted.
9642         (curr_quit_handler_target): New.
9643         (remote_serial_quit_handler): Reimplement.
9644         (remote_target::open_1): Adjust to use get_current_remote_target.
9645         Heap-allocate remote_target/extended_remote_target instances.
9646         (vcont_builder::vcont_builder): Add remote_target parameter, and
9647         save it in m_remote.  All callers adjusted.
9648         (vcont_builder::m_remote): New field.
9649         (vcont_builder::restart, vcont_builder::flush)
9650         (vcont_builder::push_action): Use it.
9651         (remote_target::commit_resume): Use it.
9652         (struct queue_iter_param) <remote>: New field.
9653         (remote_target::remove_new_fork_children): Fill in 'remote' field.
9654         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
9655         (check_pending_event_prevents_wildcard_vcont_callback)
9656         (remote_target::check_pending_events_prevent_wildcard_vcont)
9657         (remote_target::discard_pending_stop_replies)
9658         (remote_target::discard_pending_stop_replies_in_queue)
9659         (remote_target::remote_notif_remove_queued_reply): Fill in
9660         'remote' field.
9661         (remote_notif_get_pending_events): New.
9662         (remote_target::readchar, remote_target::remote_serial_write):
9663         Save/restore curr_quit_handler_target.
9664         (putpkt): New.
9665         (kill_new_fork_children): Fill in 'remote' field.
9666         (packet_command): Use get_current_remote_target, defer to
9667         remote_target method of same name.
9668         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
9669         parameter, and save it in m_remote.  All callers adjusted.
9670         (scoped_remote_fd::release): Use m_remote.
9671         (scoped_remote_fd::m_remote): New field.
9672         (remote_file_put, remote_file_get, remote_file_delete): Use
9673         get_current_remote_target, defer to remote_target method of same
9674         name.
9675         (remote_btrace_reset): Add remote_state paremeter.  Update all
9676         callers.
9677         (remote_async_inferior_event_handler). Pass down 'data'.
9678         (remote_new_objfile): Use get_current_remote_target.
9679         (remote_target::vcont_r_supported): New.
9680         (set_range_stepping): Use get_current_remote_target and
9681         remote_target::vcont_r_supported.
9682         (_initialize_remote): Don't allocate 'remote_state' and
9683         'stop_reply_queue' globals.
9684         * remote.h (struct remote_target): Forward declare.
9685         (getpkt, putpkt, remote_notif_get_pending_events): Add
9686         'remote_target' parameter.
9687
9688 2018-05-22  Pedro Alves  <palves@redhat.com>
9689
9690         * remote.c (vcont_builder): Now a class.  Make all data members
9691         private.
9692         (vcont_builder) <vcont_builder, restart, flush, push_action>:
9693         Declare methods.
9694         (vcont_builder_restart): Rename to ...
9695         (vcont_builder::restart): ... this.
9696         (vcont_builder_flush): Rename to ...
9697         (vcont_builder::flush): ... this.
9698         (vcont_builder_push_action): Rename to ...
9699         (vcont_builder::push_action): ... this.
9700         (remote_target::commit_resume): Adjust.
9701
9702 2018-05-22  Pedro Alves  <palves@redhat.com>
9703
9704         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
9705         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
9706         (get_fixed_memory_packet_size): New.
9707         (get_memory_packet_size): Use it.
9708         (set_memory_packet_size): Don't override the config size with
9709         DEFAULT_MAX_MEMORY_PACKET_SIZE.
9710         (show_memory_packet_size): Use get_fixed_memory_packet_size.
9711         Don't refer to get_memory_packet_size if not connected to a remote
9712         target.  Show "(default)" if configured size is 0.
9713
9714 2018-05-22  Pedro Alves  <palves@redhat.com>
9715
9716         * remote.c (remote_target::mourn_inferior): Move
9717         discard_pending_stop_replies call here from ...
9718         (_initialize_remote): ... here.
9719
9720 2018-05-22  Pedro Alves  <palves@redhat.com>
9721
9722         * remote.c (compare_section_command): Remove set_general_process
9723         call.
9724
9725 2018-05-22  Pedro Alves  <palves@redhat.com>
9726
9727         * remote.c (struct packet_reg, struct remote_arch_state):
9728         Move higher up in the file.
9729         (remote_state) <m_arch_states>: Store remote_arch_state values
9730         instead of remote_arch_state pointers.
9731         (remote_state::get_remote_arch_state): Adjust.
9732
9733 2018-05-22  Pedro Alves  <palves@redhat.com>
9734
9735         * remote.c: Include <unordered_map>.
9736         (remote_state): Now a class.
9737         (remote_state) <get_remote_arch_state>: Declare method.
9738         <get_remote_arch_state>: New field.
9739         (remote_arch_state) <remote_arch_state>: Declare ctor.
9740         <regs>: Now a unique_ptr.
9741         (remote_gdbarch_data_handle): Delete.
9742         (get_remote_arch_state): Delete.
9743         (remote_state::get_remote_arch_state): New.
9744         (get_remote_state): Adjust to call remote_state's
9745         get_remote_arch_state method.
9746         (init_remote_state): Delete, bits factored out to ...
9747         (remote_arch_state::remote_arch_state): ... this new method.
9748         (get_remote_packet_size, get_memory_packet_size)
9749         (process_g_packet, remote_target::fetch_registers)
9750         (remote_target::prepare_to_store, store_registers_using_G)
9751         (remote_target::store_registers, remote_target::get_trace_status):
9752         Adjust to call remote_state's method.
9753         (_initialize_remote): Remove reference to
9754         remote_gdbarch_data_handle.
9755
9756 2018-05-22  Pedro Alves  <palves@redhat.com>
9757
9758         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
9759         pread>: New method declarations.
9760         (remote_target::open_1): Adjust.
9761         (readahead_cache_invalidate): Rename to ...
9762         (readahead_cache::invalidate): ... this, and adjust to be a class
9763         method.
9764         (readahead_cache_invalidate_fd): Rename to ...
9765         (readahead_cache::invalidate_fd): ... this, and adjust to be a
9766         class method.
9767         (remote_hostio_pwrite): Adjust.
9768         (remote_hostio_pread_from_cache): Rename to ...
9769         (readahead_cache::pread): ... this, and adjust to be a class
9770         method.
9771         (remote_hostio_close): Adjust.
9772
9773 2018-05-22  Pedro Alves  <palves@redhat.com>
9774
9775         * remote.c (remote_hostio_close_cleanup): Delete.
9776         (class scoped_remote_fd): New.
9777         (remote_file_put, remote_file_get): Use it.
9778
9779 2018-05-22  Pedro Alves  <palves@redhat.com>
9780
9781         (struct vCont_action_support): Use bool and initialize all fields.
9782         (struct readahead_cache): Initialize all fields.
9783         (remote_state): Use bool and initialize all fields.
9784         (remote_state::remote_state, remote_state::~remote_state): New.
9785         (new_remote_state): Delete.
9786         (_initialize_remote): Use new to allocate remote_state.
9787
9788 2018-05-22  Pedro Alves  <palves@redhat.com>
9789             張俊芝  <zjz@zjz.name>
9790
9791         PR gdb/22973
9792         * c-exp.y: Include "c-support.h".
9793         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
9794         of tolower.  Use c_ident_is_alpha to scan names.
9795         * c-lang.c: Include "c-support.h".
9796         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
9797         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
9798         * c-support.h: New file, with bits factored out from ...
9799         * cp-name-parser.y: ... this file.
9800         Include "c-support.h".
9801         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
9802         c-support.h and renamed.
9803         (symbol_end, yylex): Adjust.
9804
9805 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9806
9807         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
9808         parameter type to CORE_ADDR.
9809         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
9810         parameter type in declaration to CORE_ADDR.
9811         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
9812         target_auxv_search to get AT_HWCAP and use the result to get the
9813         target description.
9814         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
9815         to CORE_ADDR. Remove the cast of the return value to unsigned
9816         long. Fix error predicate of target_auxv_search.
9817         (ppc_linux_nat_target::read_description): Change the type of the
9818         hwcap variable to CORE_ADDR.
9819
9820 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9821
9822         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
9823         if the size of fpscr is larger than 32 bits.
9824
9825 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9826
9827         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
9828         (ppc32_linux_vsxregmap): New global.
9829         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
9830         regcache_supply_regset, and regcache_collect_regset.
9831         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
9832         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
9833         (fetch_vsx_register, store_vsx_register): Remove.
9834         (fetch_vsx_registers): Add regno parameter. Get regset using
9835         ppc_linux_vsxregset. Use regset to supply registers.
9836         (store_vsx_registers): Add regno parameter. Get regset using
9837         ppc_linux_vsxregset. Use regset to collect registers.
9838         (fetch_register): Call fetch_vsx_registers instead of
9839         fetch_vsx_register.
9840         (store_register): Call store_vsx_registers instead of
9841         store_vsx_register.
9842         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
9843         new regno parameter.
9844         (store_ppc_registers): Call store_vsx_registers with -1 for the
9845         new regno parameter.
9846         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
9847         (ppc_collect_vsxregset): Remove.
9848
9849 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9850
9851         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
9852         offset fields.
9853         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
9854         for vector register offset fields.
9855         (ppc64_fbsd_reg_offsets): Likewise.
9856         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
9857         to vector register offset fields.
9858         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
9859         to vector register offset fields.
9860         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
9861         vector register offset fields.
9862         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
9863         initializers for vector register offset fields.
9864         (rs6000_aix64_reg_offsets): Likewise.
9865         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
9866         (ppc_supply_vrregset): Remove.
9867         (ppc_collect_vrregset): Remove.
9868         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
9869         (ppc_linux_vrregset) : New function.
9870         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
9871         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
9872         (ppc32_linux_vrregset): Remove.
9873         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
9874         and use result instead of ppc32_linux_vrregset.
9875         (ppc32_linux_reg_offsets): Remove initializers for vector register
9876         offset fields.
9877         (ppc64_linux_reg_offsets): Likewise.
9878         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
9879         * ppc-linux-nat.c: Include regset.h.
9880         (gdb_vrregset_t): Adjust comment to account for little-endian
9881         mode.
9882         (supply_vrregset, fill_vrregset): Remove.
9883         (fetch_altivec_register, store_altivec_register): Remove.
9884         (fetch_altivec_registers): Add regno parameter. Get regset using
9885         ppc_linux_vrregset. Use regset to supply registers.
9886         (store_altivec_registers): Add regno parameter. Get regset using
9887         ppc_linux_vrregset. Use regset to collect registers.
9888         (fetch_register): Call fetch_altivec_registers instead of
9889         fetch_altivec_register.
9890         (store_register): Call store_altivec_registers instead of
9891         store_altivec_register.
9892         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
9893         the new regno parameter.
9894         (store_ppc_registers): Call store_altivec_registers with -1 for
9895         the new regno parameter.
9896
9897 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9898
9899         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
9900         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
9901         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
9902         (gdb_vrregset_t): Change array type size to
9903         PPC_LINUX_SIZEOF_VRREGSET.
9904         (gdb_vsxregset_t): Change array type size to
9905         PPC_LINUX_SIZEOF_VSXREGSET.
9906         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
9907         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
9908         PPC_LINUX_SIZEOF_VSXREGSET.
9909
9910 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9911
9912         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
9913         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
9914         nat/ppc-linux.c.
9915         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
9916         ppc_linux_target_wordsize with tid.
9917         (ppc_linux_nat_target::read_description): Call ppc_linux_target
9918         wordsize with tid.
9919         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
9920         (ppc64_64bit_inferior_p): Add static and inline specifiers.
9921         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
9922         tid parameter. Remove static specifier.
9923         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
9924         (ppc_linux_target_wordsize): New declaration.
9925
9926 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9927
9928         * arch/ppc-linux-common.c: New file.
9929         * arch/ppc-linux-common.h: New file.
9930         * arch/ppc-linux-tdesc.h: New file.
9931         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
9932         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
9933         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
9934         arch/ppc-linux-tdesc.h.
9935         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
9936         arch/ppc-linux-tdesc.h.
9937         (ppc_linux_nat_target::read_description): Remove target
9938         description matching code. Fill a ppc_linux_features struct and
9939         call ppc_linux_match_description with it. Move comment about ISA
9940         2.05 to ppc-linux-common.c.
9941         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
9942         arch/ppc-linux-tdesc.h.
9943         (ppc_linux_core_read_description): Remove target description
9944         matching code. Fill a ppc_linux_features struct and call
9945         ppc_linux_match_description with it.
9946         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
9947         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
9948         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
9949         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
9950         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
9951         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
9952         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
9953         (tdesc_powerpc_e500l): Remove.
9954
9955 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
9956
9957         * ada-lang.c (catch_assert_command): Pass empty string instead
9958         of NULL for excep_string argument.
9959
9960 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
9961
9962         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
9963         the width of the requested register exceeds the width of the
9964         `ptrace' data type.
9965
9966 2018-05-21  Tom Tromey  <tom@tromey.com>
9967
9968         * printcmd.c (output_command): Remove.
9969         (output_command_const): Rename to output_command.
9970         * valprint.h (output_command): Rename from output_command_const.
9971         * tracepoint.c (trace_dump_actions): Call output_command.
9972
9973 2018-05-21  Tom Tromey  <tom@tromey.com>
9974
9975         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
9976         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
9977         * ada-lang.h (create_ada_exception_catchpoint): Update.
9978         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
9979         std::string.
9980         (create_excep_cond_exprs, ~ada_catchpoint)
9981         (should_stop_exception, print_one_exception)
9982         (print_mention_exception, print_recreate_exception): Update.
9983         (ada_get_next_arg): Remove.
9984         (catch_ada_exception_command_split): Use std::string.  Change type
9985         of "excep_string", "cond_string".
9986         (catch_ada_exception_command): Update.
9987         (create_ada_exception_catchpoint): Change type of excep_string.
9988         (ada_exception_sal): Remove excep_string parameter.
9989         (~ada_catchpoint): Remove.
9990
9991 2018-05-21  Tom Tromey  <tom@tromey.com>
9992
9993         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
9994         cleanup.
9995
9996 2018-05-21  Tom Tromey  <tom@tromey.com>
9997
9998         * ada-lang.c (ada_exception_message_1, ada_exception_message):
9999         Return unique_xmalloc_ptr.
10000         (print_it_exception): Update.
10001
10002 2018-05-21  Tom Tromey  <tom@tromey.com>
10003
10004         * tracepoint.c (trace_dump_actions): Use std::string.
10005
10006 2018-05-21  Tom Tromey  <tom@tromey.com>
10007
10008         * symfile.c (reread_symbols): Use std::string for original_name.
10009
10010 2018-05-21  Tom Tromey  <tom@tromey.com>
10011
10012         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
10013         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
10014         constructor.
10015
10016 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
10017
10018         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
10019         instance to...
10020         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
10021         * objfiles.c (get_objfile_bfd_data): Allocate
10022         objfile_per_bfd_storage with obstack_new when allocating on
10023         obstack.
10024
10025 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
10026
10027         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
10028         OBSTACK_ZALLOC.
10029         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
10030         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
10031         * mdebugread.c (mdebug_build_psymtabs): Likewise.
10032         (add_pending): Likewise.
10033         (parse_symbol): Likewise.
10034         (parse_partial_symbols): Likewise.
10035         (psymtab_to_symtab_1): Likewise.
10036         (new_psymtab): Likewise.
10037         (elfmdebug_build_psymtabs): Likewise.
10038         * minsyms.c (terminate_minimal_symbol_table): Likewise.
10039         * objfiles.c (get_objfile_bfd_data): Likewise.
10040         (objfile_register_static_link): Likewise.
10041         * psymtab.c (allocate_psymtab): Likewise.
10042         * stabsread.c (read_member_functions): Likewise.
10043         * xcoffread.c (xcoff_end_psymtab): Likewise.
10044
10045 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
10046
10047         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
10048         compiler supports std::is_trivially_constructible.
10049         * common/poison.h: Include obstack.h.
10050         (IsMallocable): Define to is_trivially_constructible if the
10051         compiler supports it, define to true_type otherwise.
10052         (xobnew): New.
10053         (XOBNEW): Redefine.
10054         (xobnewvec): New.
10055         (XOBNEWVEC): Redefine.
10056         * gdb_obstack.h (obstack_zalloc): New.
10057         (OBSTACK_ZALLOC): Redefine.
10058         (obstack_calloc): New.
10059         (OBSTACK_CALLOC): Redefine.
10060         (obstack_new): New.
10061         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
10062         (gdbarch_obstack): New declaration in gdbarch.h, definition in
10063         gdbarch.c.
10064         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
10065         obstack_calloc/obstack_zalloc.
10066         (gdbarch_obstack_zalloc): Remove.
10067         * target-descriptions.c (tdesc_data_init): Use obstack_new.
10068
10069 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
10070
10071         * stack.c (backtrace_command_1): Remove useless variable int i.
10072
10073 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
10074
10075         * stack.c (print_frame_info): Fix comment.
10076
10077 2018-05-18  Tom Tromey  <tom@tromey.com>
10078
10079         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
10080         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
10081         (~dwarf2_per_objfile): Update
10082         (dwarf2_get_dwz_file): Use new.
10083         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
10084         unique_ptr.
10085
10086 2018-05-18  Tom Tromey  <tom@tromey.com>
10087
10088         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
10089         unique_ptr.
10090         * dwarf2read.c (struct dwp_file): Add constructor and
10091         initializers.
10092         (open_and_init_dwp_file): Return a unique_ptr.
10093         (dwarf2_per_objfile, create_dwp_hash_table)
10094         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
10095         (lookup_dwo_unit_in_dwp): Update.
10096         (open_and_init_dwp_file, get_dwp_file): Update.
10097
10098 2018-05-18  Tom Tromey  <tom@tromey.com>
10099
10100         * dwarf2read.c (dwarf2_per_objfile): Update.
10101         (struct mapped_index): Add initializers.
10102         (dwarf2_read_index): Use new.
10103         (dw2_symtab_iter_init): Update.
10104         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
10105         unique_ptr.
10106
10107 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
10108
10109         * dwarf2read.c (mapped_index) <total_size>: Remove.
10110
10111 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
10112
10113         * unittests/format_pieces-selftests.c (test_format_specifier):
10114         Add ARI comments.
10115
10116 2018-05-18  Tom Tromey  <tom@tromey.com>
10117
10118         * c-typeprint.c (maybe_print_hole): New function.
10119         (c_print_type_struct_field_offset): Update.
10120         (c_type_print_base_struct_union): Call maybe_print_hole.
10121
10122 2018-05-17  Keith Seitz  <keiths@redhat.com>
10123
10124         * breakpoint.c (build_bpstat_chain): New function, moved from
10125         bpstat_stop_status.
10126         (bpstat_stop_status): Add optional parameter, `stop_chain'.
10127         If no stop chain is passed, call build_bpstat_chain to build it.
10128         * breakpoint.h (build_bpstat_chain): Declare.
10129         (bpstat_stop_status): Move documentation here from breakpoint.c.
10130         * infrun.c (handle_signal_stop): Before eliding inlined frames,
10131         build the stop chain and pass it to skip_inline_frames.
10132         Pass this stop chain to bpstat_stop_status.
10133         * inline-frame.c: Include breakpoint.h.
10134         (stopped_by_user_bp_inline_frame): New function.
10135         (skip_inline_frames): Add parameter `stop_chain'.
10136         Move documention to inline-frame.h.
10137         If non-NULL, use stopped_by_user_bp_inline_frame to determine
10138         whether the frame should be elided.
10139         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
10140         Add moved documentation and update for new parameter.
10141
10142 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
10143
10144         PR cli/14975
10145         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
10146         unittests/format_pieces-selftests.c.
10147         * common/format.h (format_piece) <operator==>: New.
10148         (format_pieces) <operator[]>: Remove.
10149         * common/format.c (format_pieces::format_pieces): Handle \e.
10150         * unittests/format_pieces-selftests.c: New.
10151
10152 2018-05-17  Tom Tromey  <tom@tromey.com>
10153
10154         PR symtab/23010:
10155         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
10156         (dw2_instantiate_symtab): Add skip_partial parameter.
10157         (dw2_find_last_source_symtab, dw2_map_expand_apply)
10158         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
10159         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
10160         (dw2_expand_symtabs_matching_one)
10161         (dw2_find_pc_sect_compunit_symtab)
10162         (dw2_debug_names_lookup_symbol)
10163         (dw2_debug_names_expand_symtabs_for_function): Update.
10164         (init_cutu_and_read_dies): Add skip_partial parameter.
10165         (process_psymtab_comp_unit, build_type_psymtabs_1)
10166         (process_skeletonless_type_unit, load_partial_comp_unit)
10167         (psymtab_to_symtab_1): Update.
10168         (load_full_comp_unit): Add skip_partial parameter.
10169         (process_imported_unit_die, dwarf2_read_addr_index)
10170         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
10171         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
10172         (read_signatured_type): Update.
10173
10174 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
10175
10176         * value.c (release_value): Remove unused variable.
10177         (record_latest_value): Likewise.
10178         (access_value_history): Likewise.
10179         (preserve_values): Likewise.
10180
10181 2018-05-17  Tom Tromey  <tom@tromey.com>
10182
10183         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
10184         Initialize.
10185
10186 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
10187
10188         PR gdb/22286
10189         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
10190         Also handle registers whose width is not a multiple of
10191         PTRACE_TYPE_RET.
10192         (linux_nat_trad_target::store_register): Likewise.
10193
10194 2018-05-16  Tom Tromey  <tom@tromey.com>
10195
10196         * gdbcore.h (core_bfd): Redefine.
10197         * corelow.c (core_target::close): Update.
10198         (core_target_open): Update.
10199         * progspace.h (struct program_space) <cbfd>: Now a
10200         gdb_bfd_ref_ptr.
10201
10202 2018-05-16  Tom Tromey  <tom@tromey.com>
10203
10204         PR cli/19551:
10205         * symfile-add-flags.h (enum symfile_add_flags)
10206         <SYMFILE_NOT_FILENAME>: New constant.
10207         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
10208         objfile name from BFD.
10209         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
10210         * minidebug.c (find_separate_debug_file_in_section): Put
10211         ".gnu_debugdata" into BFD's file name.
10212
10213 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
10214
10215         * regcache.c (regcache_read_ftype, regcache_write_ftype):
10216         Remove.
10217
10218 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
10219
10220         PR binutils/21446
10221         * aarch64-tdep.c (aarch64_analyze_prologue,
10222         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
10223         Indicate not interested in errors.
10224
10225 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
10226
10227         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
10228         Supply the MIPS_ZERO_REGNUM register.
10229
10230 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
10231
10232         * mips-tdep.c (mask_address_var): Make variable static.
10233
10234 2018-05-14  Tom Tromey  <tom@tromey.com>
10235
10236         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
10237
10238 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
10239
10240         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
10241         FXSAVE_ADDR for the mxcsr register.
10242
10243 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
10244
10245         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
10246
10247 2018-05-11  Pedro Alves  <palves@redhat.com>
10248
10249         * corelow.c (core_target) <core_target>: No longer inline.
10250         Initialize m_core_gdbarch, m_core_vec and build the section table
10251         here.
10252         <~core_target>: New.
10253         <core_gdbarch, get_core_register_section>: New methods.
10254         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
10255         factored out from ...
10256         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
10257         (core_ops): Delete.
10258         (sniff_core_bfd): Add gdbarch parameter.
10259         (core_close): Delete, merged into ...
10260         (core_target::close): ... here.  Delete self.
10261         (core_close_cleanup): Delete.
10262         (core_target_open): Allocate a core_target on the heap.  Use a
10263         unique_ptr instead of a cleanup.  Bits moved into the core_target
10264         ctor.  Adjust to use core_target methods instead of globals.
10265         (get_core_register_section): Rename to ...
10266         (core_target::get_core_register_section): ... this and adjust.
10267         (struct get_core_registers_cb_data): New.
10268         (get_core_registers_cb): Use it.  Use bool.
10269         (core_target::fetch_registers, core_target::files_info)
10270         (core_target::xfer_partial, core_target::read_description)
10271         (core_target::pid_to, core_target::thread_name): Adjust to
10272         reference class fields instead of globals.
10273         * target.h (struct target_ops_deleter, target_ops_up): New.
10274
10275 2018-05-11  Pedro Alves  <palves@redhat.com>
10276
10277         * corefile.c (core_file_command): Move to corelow.c.
10278         * corelow.c (the_core_target): Delete.
10279         (core_file_command): Moved from corefile.c.  Check exec_bfd
10280         instead of the_core_target.  Use target_detach instead of calling
10281         into the_core_target directly.
10282         (maybe_say_no_core_file_now): New.
10283         (core_target::detach): Use it.
10284         (_initialize_corelow): Remove references to the_core_target.
10285         * gdbcore.h (the_core_target): Delete.
10286
10287 2018-05-11  Tom Tromey  <tromey@redhat.com>
10288             Pedro Alves  <palves@redhat.com>
10289
10290         * corefile.c (core_bfd): Remove.
10291         * gdbcore.h (core_bfd): Now a macro.
10292         * progspace.h (struct program_space) <cbfd>: New field.
10293
10294 2018-05-11  Tom Tromey  <tom@tromey.com>
10295
10296         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
10297         gdb::def_vector.
10298
10299 2018-05-10  Tom Tromey  <tom@tromey.com>
10300
10301         * configure: Rebuild.
10302         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
10303
10304 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
10305
10306         PR server/23158:
10307         * regformats/regdat.sh: Adjust script, following the addition
10308         of the new expedite_regs parameter to init_target_desc.
10309
10310 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
10311     
10312         PR gdb/23127
10313         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
10314         set_gdbarch_significant_addr_bit.
10315         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
10316         set_gdbarch_significant_addr_bit.
10317         * utils.c (address_significant): Update to sign extend addr.
10318
10319 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
10320
10321         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
10322         (xtensa_linux_init_abi): Limit tdep->num_regs by
10323         tdep->num_nopriv_regs.
10324         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
10325         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
10326         not initialized.
10327
10328 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
10329
10330         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
10331
10332 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
10333
10334         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
10335         (I387_MXCSR_INIT_VAL): New constant.
10336         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
10337         buffer if it was supplied by the inferior.
10338         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
10339         (i387_xsave_get_clear_bv): New function.
10340         (i387_supply_xsave): Only read x87 control registers from the
10341         xsave buffer if the feature is enabled, and the state will have
10342         been written, otherwise, provide a suitable default.
10343         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
10344         including x87 control registers.  Update control registers if they
10345         have changed from the default value, and mark features as enabled
10346         as required.
10347         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
10348
10349 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
10350
10351         * spu-tdep.c (info_spu_event_command): Fix output formatting.
10352
10353 2018-05-07  Tom Tromey  <tom@tromey.com>
10354
10355         * configure: Rebuild.
10356         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
10357
10358 2018-05-07  Tom Tromey  <tom@tromey.com>
10359
10360         PR tdep/20362:
10361         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
10362         bit.  Use correct value for VDIV.
10363
10364 2018-05-04  Tom Tromey  <tom@tromey.com>
10365
10366         * configure: Rebuild.
10367         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
10368
10369 2018-05-04  Tom Tromey  <tom@tromey.com>
10370
10371         * linux-record.c (record_linux_system_call) <case
10372         RECORD_SYS_RECVFROM>: Add "break".
10373
10374 2018-05-04  Tom Tromey  <tom@tromey.com>
10375
10376         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
10377         Add missing "break".
10378         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
10379         Add missing "break".
10380
10381 2018-05-04  Tom Tromey  <tom@tromey.com>
10382
10383         * rs6000-tdep.c (ppc_process_record_op4)
10384         (ppc_process_record_op63): Add fall-through comment.
10385
10386 2018-05-04  Tom Tromey  <tom@tromey.com>
10387
10388         * i386-tdep.c (i386_process_record): Add fall-through comment.
10389
10390 2018-05-04  Tom Tromey  <tom@tromey.com>
10391
10392         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
10393         comment.
10394
10395 2018-05-04  Tom Tromey  <tom@tromey.com>
10396
10397         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
10398         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
10399         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
10400         comment.
10401         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
10402         comment.
10403         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
10404         comment.
10405
10406 2018-05-04  Tom Tromey  <tom@tromey.com>
10407
10408         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
10409
10410 2018-05-04  Tom Tromey  <tom@tromey.com>
10411
10412         * s390-tdep.c (s390_process_record): Fix fall-through comments.
10413         * xcoffread.c (scan_xcoff_symtab): Move comment later.
10414         * symfile.c (section_is_mapped): Fix fall-through comment.
10415         * stabsread.c (define_symbol, read_member_functions): Fix
10416         fall-through comment.
10417         * s390-linux-tdep.c (s390_process_record): Fix fall-through
10418         comment.
10419         * remote.c (remote_wait_as): Fix fall-through comment.
10420         * p-exp.y (yylex): Fix fall-through comment.
10421         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
10422         comment.
10423         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
10424         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
10425         * jv-exp.y (yylex): Fix fall-through comment.
10426         * go-exp.y (lex_one_token): Fix fall-through comment.
10427         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
10428         fall-through comment.
10429         * f-exp.y (yylex): Fix fall-through comment.
10430         * dwarf2read.c (process_die): Fix fall-through comments.
10431         * dbxread.c (process_one_symbol): Fix fall-through comment.
10432         * d-exp.y (lex_one_token): Fix fall-through comment.
10433         * cp-name-parser.y (yylex): Fix fall-through comment.
10434         * coffread.c (coff_symtab_read): Fix fall-through comment.
10435         * c-exp.y (lex_one_token): Fix fall-through comment.
10436         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
10437         comment.
10438         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
10439         comment.
10440
10441 2018-05-04  Tom Tromey  <tom@tromey.com>
10442
10443         PR python/22730:
10444         * NEWS: Mention gdb.execute change.
10445         * gdbcmd.h (execute_control_command): Don't declare.
10446         * python/python.c (execute_gdb_command): Use read_command_lines_1,
10447         execute_control_commands, execute_control_commands_to_string.
10448         * cli/cli-script.h (execute_control_commands)
10449         (execute_control_commands_to_string): Declare.
10450         (execute_control_command): Add from_tty parameter.
10451         * cli/cli-script.c (execute_control_commands)
10452         (execute_control_commands_to_string): New functions.
10453         (execute_user_command): Use execute_control_commands.
10454         (execute_control_command_1): Add "from_tty" parameter.  Update.
10455         (execute_control_command): Likewise.
10456
10457 2018-05-04  Tom Tromey  <tom@tromey.com>
10458
10459         PR python/22731:
10460         * NEWS: Mention that breakpoint commands are writable.
10461         * python/py-breakpoint.c (bppy_set_commands): New function.
10462         (breakpoint_object_getset) <"commands">: Use it.
10463
10464 2018-05-04  Tom Tromey  <tom@tromey.com>
10465
10466         * tracepoint.c (actions_command): Update.
10467         * mi/mi-cmd-break.c (mi_command_line_array)
10468         (mi_command_line_array_cnt, mi_command_line_array_ptr)
10469         (mi_read_next_line): Remove.
10470         (mi_cmd_break_commands): Update.
10471         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
10472         function_view.
10473         * cli/cli-script.c (get_command_line): Update.
10474         (process_next_line): Use function_view.  Constify.
10475         (recurse_read_control_structure, read_command_lines)
10476         (read_command_lines_1): Change argument types to function_view.
10477         (do_define_command, document_command): Update.
10478         * breakpoint.h (check_tracepoint_command): Don't declare.
10479         * breakpoint.c (check_tracepoint_command): Remove.
10480         (commands_command_1, create_tracepoint_from_upload): Update.
10481
10482 2018-05-04  Tom Tromey  <tom@tromey.com>
10483
10484         PR gdb/11750:
10485         * cli/cli-script.h (enum command_control_type) <define_control>:
10486         New constant.
10487         * cli/cli-script.c (multi_line_command_p): Handle define_control.
10488         (build_command_line, execute_control_command_1)
10489         (process_next_line): Likewise.
10490         (do_define_command): New function, extracted from define_command.
10491         (define_command): Use it.
10492
10493 2018-05-04  Tom Tromey  <tom@tromey.com>
10494
10495         * tracepoint.c (actions_command): Update.
10496         * cli/cli-script.h (read_command_lines): Update.
10497         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
10498         (MAX_TMPBUF): Remove define.
10499         (define_command): Use string_printf.
10500         (document_command): Likewise.
10501         * breakpoint.c (commands_command_1): Update.
10502
10503 2018-05-04  Tom Tromey  <tom@tromey.com>
10504
10505         * top.c (execute_command): Update.
10506         * cli/cli-script.h (print_command_lines): Now varargs.
10507         * cli/cli-script.c (print_command_lines): Now varargs.
10508         (execute_control_command_1) <case while_control, case if_control>:
10509         Update.
10510
10511 2018-05-04  Tom Tromey  <tom@tromey.com>
10512
10513         * tracepoint.c (all_tracepoint_actions): Rename from
10514         all_tracepoint_actions_and_cleanup.  Change return type.
10515         (actions_command, encode_actions_1, encode_actions)
10516         (trace_dump_actions, tdump_command): Update.
10517         * remote.c (remote_download_command_source): Update.
10518         * python/python.c (gdbpy_eval_from_control_command)
10519         (python_command, python_interactive_command): Update.
10520         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
10521         * guile/guile.c (guile_command)
10522         (gdbscm_eval_from_control_command, guile_command): Update.
10523         * compile/compile.c (compile_code_command)
10524         (compile_print_command, compile_to_object): Update.
10525         * cli/cli-script.h (struct command_lines_deleter): New.
10526         (counted_command_line): New typedef.
10527         (struct command_line): Add constructor, destructor.
10528         <body_list>: Remove.
10529         <body_list_0, body_list_1>: New members.
10530         (command_line_up): Remove typedef.
10531         (read_command_lines, read_command_lines_1, get_command_line):
10532         Update.
10533         (copy_command_lines): Don't declare.
10534         * cli/cli-script.c (build_command_line): Use "new".
10535         (get_command_line): Return counted_command_line.
10536         (print_command_lines, execute_user_command)
10537         (execute_control_command_1, while_command, if_command): Update.
10538         (realloc_body_list): Remove.
10539         (process_next_line, recurse_read_control_structure): Update.
10540         (read_command_lines, read_command_lines_1): Return counted_command_line.
10541         (free_command_lines): Use "delete".
10542         (copy_command_lines): Remove.
10543         (define_command, document_command, show_user_1): Update.
10544         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
10545         a counted_command_line.
10546         * breakpoint.h (counted_command_line): Remove typedef.
10547         (breakpoint_set_commands): Update.
10548         * breakpoint.c (check_no_tracepoint_commands)
10549         (validate_commands_for_breakpoint): Update.
10550         (breakpoint_set_commands): Change commands to be a
10551         counted_command_line.
10552         (commands_command_1, update_dprintf_command_list)
10553         (create_tracepoint_from_upload): Update.
10554
10555 2018-05-04  Tom Tromey  <tom@tromey.com>
10556
10557         * cli/cli-decode.h (cmd_list_element): New constructor.
10558         (~cmd_list_element): New destructor.
10559         (struct cmd_list_element): Add initializers.
10560         * cli/cli-decode.c (do_add_cmd): Use "new".
10561         (delete_cmd): Use "delete".
10562
10563 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
10564             Pedro Alves <palves@redhat.com>
10565
10566         PR breakpoints/19806 and support for PR external/20207.
10567         * NEWS: Mention Aarch64 watchpoint improvements.
10568         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
10569         watchpoints and PR external/20207 watchpoints.
10570         * nat/aarch64-linux-hw-point.c
10571         (kernel_supports_any_contiguous_range): New.
10572         (aarch64_watchpoint_offset): New.
10573         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
10574         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
10575         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
10576         (aarch64_align_watchpoint): New parameters aligned_offset_p and
10577         next_addr_orig_p.  Support PR external/20207 watchpoints.
10578         (aarch64_downgrade_regs): New.
10579         (aarch64_dr_state_insert_one_point): New parameters offset and
10580         addr_orig.
10581         (aarch64_dr_state_remove_one_point): Likewise.
10582         (aarch64_handle_breakpoint): Update caller.
10583         (aarch64_handle_aligned_watchpoint): Likewise.
10584         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
10585         aligned_offset.
10586         (aarch64_linux_set_debug_regs): Remove const from state.  Call
10587         aarch64_downgrade_regs.
10588         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
10589         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
10590         (DR_CONTROL_MASK): ... this.
10591         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
10592         (unsigned int aarch64_watchpoint_offset): New prototype.
10593         (aarch64_linux_set_debug_regs): Remove const from state.
10594         * utils.c (align_up, align_down): Move to ...
10595         * common/common-utils.c (align_up, align_down): ... here.
10596         * utils.h (align_up, align_down): Move to ...
10597         * common/common-utils.h (align_up, align_down): ... here.
10598
10599 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
10600
10601         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
10602         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
10603         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
10604         Re-implement to match the ABI as summarized in GCC's
10605         gcc/config/sparc/sparc.c.  All callers updated.
10606         (sparc32_store_arguments): Remove assertion.
10607
10608 2018-05-04  Tom Tromey  <tom@tromey.com>
10609
10610         * printcmd.c: Don't include tui.h.
10611         (decode_format): Use skip_spaces.
10612
10613 2018-05-04  Tom Tromey  <tom@tromey.com>
10614
10615         PR gdb/22619:
10616         * printcmd.c (last_count): New global.
10617         (x_command): Use saved count when repeating.
10618
10619 2018-05-04  Tom Tromey  <tom@tromey.com>
10620
10621         * nto-procfs.c (do_closedir_cleanup): Remove.
10622         (procfs_pidlist): Use gdb_dir_up.
10623         * procfs.c (do_closedir_cleanup): Remove.
10624         (proc_update_threads): Use gdb_dir_up.
10625         * common/filestuff.h (struct gdb_dir_deleter): New.
10626         (gdb_dir_up): New typedef.
10627
10628 2018-05-04  Tom Tromey  <tom@tromey.com>
10629
10630         * ada-lang.c (print_mention_exception): Use std::string.
10631
10632 2018-05-04  Tom Tromey  <tom@tromey.com>
10633
10634         * ada-lang.c (create_excep_cond_exprs): Update.
10635         (ada_exception_catchpoint_cond_string): Use std::string.
10636
10637 2018-05-04  Tom Tromey  <tom@tromey.com>
10638
10639         * ada-lang.c (xget_renaming_scope): Return std::string.
10640         (old_renaming_is_invisible): Update.
10641
10642 2018-05-04  Tom Tromey  <tom@tromey.com>
10643
10644         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
10645         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
10646
10647 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
10648
10649         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
10650
10651 2018-05-04  Tom Tromey  <tom@tromey.com>
10652
10653         * remote.c (remote_query_supported_append): Change type.
10654         (remote_check_symbols): Update.
10655
10656 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
10657
10658         PR gdb/11420
10659         * configure.ac: Prepend libpython.
10660         * python/python-config.py: Likewise.
10661         * configure: Regenerate.
10662
10663 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
10664
10665         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
10666
10667 2018-05-03  Pedro Alves  <palves@redhat.com>
10668
10669         * s390-linux-nat.c
10670         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
10671         override.  Write 'true' instead of '1'.
10672         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
10673         declaration.
10674
10675 2018-05-02  Pedro Alves  <palves@redhat.com>
10676
10677         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
10678         add_inf_child_target.
10679         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
10680         add_inf_child_target.
10681         * aix-thread.c (aix_thread_target_info): New.
10682         (aix_thread_target) <shortname, longname, doc>: Delete.
10683         <info>: New.
10684         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
10685         add_inf_child_target.
10686         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
10687         add_inf_child_target.
10688         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
10689         add_inf_child_target.
10690         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
10691         add_inf_child_target.
10692         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
10693         add_inf_child_target.
10694         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
10695         add_inf_child_target.
10696         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
10697         add_inf_child_target.
10698         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
10699         add_inf_child_target.
10700         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
10701         add_inf_child_target.
10702         * bfd-target.c (target_bfd_target_info): New.
10703         (target_bfd) <shortname, longname, doc>: Delete.
10704         <info>: New.
10705         * bsd-kvm.c (bsd_kvm_target_info): New.
10706         (bsd_kvm_target) <shortname, longname, doc>: Delete.
10707         <info>: New.
10708         (bsd_kvm_target::open): Rename to ...
10709         (bsd_kvm_target_open): ... this.  Adjust.
10710         * bsd-uthread.c (bsd_uthread_target_info): New.
10711         (bsd_uthread_target) <shortname, longname, doc>: Delete.
10712         <info>: New.
10713         * corefile.c (core_file_command): Adjust.
10714         * corelow.c (core_target_info): New.
10715         (core_target) <shortname, longname, doc>: Delete.
10716         <info>: New.
10717         (core_target::open): Rename to ...
10718         (core_target_open): ... this.  Adjust.
10719         * ctf.c (ctf_target_info): New.
10720         (ctf_target) <shortname, longname, doc>: Delete.
10721         <info>: New.
10722         (ctf_target::open): Rename to ...
10723         (ctf_target_open): ... this.
10724         (_initialize_ctf): Adjust.
10725         * exec.c (exec_target_info): New.
10726         (exec_target) <shortname, longname, doc>: Delete.
10727         <info>: New.
10728         (exec_target::open): Rename to ...
10729         (exec_target_open): ... this.
10730         * gdbcore.h (core_target_open): Declare.
10731         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
10732         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
10733         add_inf_child_target.
10734         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
10735         add_inf_child_target.
10736         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
10737         add_inf_child_target.
10738         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
10739         add_inf_child_target.
10740         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
10741         add_inf_child_target.
10742         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
10743         add_inf_child_target.
10744         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
10745         add_inf_child_target.
10746         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
10747         add_inf_child_target.
10748         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
10749         add_inf_child_target.
10750         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
10751         add_inf_child_target.
10752         * inf-child.c (inf_child_target_info): New.
10753         (inf_child_target::info): New.
10754         (inf_child_open_target): Remove 'target' parameter.  Use
10755         get_native_target instead.
10756         (inf_child_target::open): Delete.
10757         (add_inf_child_target): New.
10758         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
10759         Delete.
10760         <info>: New.
10761         (add_inf_child_target): Declare.
10762         (inf_child_open_target): Declare.
10763         * linux-thread-db.c (thread_db_target_info): New.
10764         (thread_db_target) <shortname, longname, doc>: Delete.
10765         <info>: New.
10766         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
10767         add_inf_child_target.
10768         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
10769         add_inf_child_target.
10770         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
10771         add_inf_child_target.
10772         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
10773         add_inf_child_target.
10774         * make-target-delegates (print_class): Adjust.
10775         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
10776         add_inf_child_target.
10777         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
10778         add_inf_child_target.
10779         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
10780         add_inf_child_target.
10781         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
10782         add_inf_child_target.
10783         * nto-procfs.c (nto_native_target_info): New.
10784         (nto_procfs_target_native) <shortname, longname, doc>:
10785         Delete.
10786         <info>: New.
10787         (nto_procfs_target_info): New.
10788         (nto_procfs_target_procfs) <shortname, longname, doc>:
10789         Delete.
10790         <info>: New.
10791         (init_procfs_targets): Adjust.
10792         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
10793         add_inf_child_target.
10794         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
10795         add_inf_child_target.
10796         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
10797         add_inf_child_target.
10798         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
10799         add_inf_child_target.
10800         * ravenscar-thread.c (ravenscar_target_info): New.
10801         (ravenscar_thread_target) <shortname, longname, doc>:
10802         Delete.
10803         <info>: New.
10804         * record-btrace.c (record_btrace_target_info):
10805         (record_btrace_target) <shortname, longname, doc>: Delete.
10806         <info>: New.
10807         (record_btrace_target::open): Rename to ...
10808         (record_btrace_target_open): ... this.  Adjust.
10809         * record-full.c (record_longname, record_doc): New.
10810         (record_full_base_target) <shortname, longname, doc>: Delete.
10811         <info>: New.
10812         (record_full_target_info): New.
10813         (record_full_target): <shortname>: Delete.
10814         <info>: New.
10815         (record_full_core_open_1, record_full_open_1): Update comments.
10816         (record_full_base_target::open): Rename to ...
10817         (record_full_open): ... this.
10818         (cmd_record_full_restore): Update.
10819         (_initialize_record_full): Update.
10820         * remote-sim.c (remote_sim_target_info): New.
10821         (gdbsim_target) <shortname, longname, doc>: Delete.
10822         <info>: New.
10823         (gdbsim_target::open): Rename to ...
10824         (gdbsim_target_open): ... this.
10825         (_initialize_remote_sim): Adjust.
10826         * remote.c (remote_doc): New.
10827         (remote_target_info): New.
10828         (remote_target) <shortname, longname, doc>: Delete.
10829         <info>: New.
10830         (extended_remote_target_info): New.
10831         (extended_remote_target) <shortname, longname, doc>: Delete.
10832         <info>: New.
10833         (remote_target::open_1): Make static.  Adjust.
10834         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
10835         * s390-linux-nat.c (_initialize_s390_nat): Use
10836         add_inf_child_target.
10837         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
10838         add_inf_child_target.
10839         * sol-thread.c (thread_db_target_info): New.
10840         (sol_thread_target) <shortname, longname, doc>: Delete.
10841         <info>: New.
10842         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
10843         add_inf_child_target.
10844         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
10845         add_inf_child_target.
10846         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
10847         add_inf_child_target.
10848         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
10849         add_inf_child_target.
10850         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
10851         add_inf_child_target.
10852         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
10853         add_inf_child_target.
10854         * spu-linux-nat.c (_initialize_spu_nat): Use
10855         add_inf_child_target.
10856         * spu-multiarch.c (spu_multiarch_target_info): New.
10857         (spu_multiarch_target) <shortname, longname, doc>: Delete.
10858         <info>: New.
10859         * target-delegates.c: Regenerate.
10860         * target.c: Include <unordered_map>.
10861         (target_ops_p): Delete.
10862         (DEF_VEC_P(target_ops_p)): Delete.
10863         (target_factories): New.
10864         (test_target_info): New.
10865         (test_target_ops::info): New.
10866         (open_target): Adjust to use target_factories.
10867         (add_target_with_completer): Rename to ...
10868         (add_target): ... this.  Change prototype.  Register target_info
10869         and open callback in target_factories.  Register target_info in
10870         command context instead of target_ops.
10871         (add_target): Delete old implementation.
10872         (add_deprecated_target_alias): Change prototype.  Adjust.
10873         (the_native_target): New.
10874         (set_native_target, get_native_target): New.
10875         (find_default_run_target): Use the_native_target.
10876         (find_attach_target, find_run_target): Simplify.
10877         (target_ops::open): Delete.
10878         (dummy_target_info): New.
10879         (dummy_target::shortname, dummy_target::longname)
10880         (dummy_target::doc): Delete.
10881         (dummy_target::info): New.
10882         (debug_target::shortname, debug_target::longname)
10883         (debug_target::doc): Delete.
10884         (debug_target::info): New.
10885         * target.h (struct target_info): New.
10886         (target_ops::~target_ops): Add comment.
10887         (target_ops::info): New.
10888         (target_ops::shortname, target_ops::longname, target_ops::doc): No
10889         longer virtual.  Implement in terms of target_info.
10890         (set_native_target, get_native_target): Declare.
10891         (target_open_ftype): New.
10892         (add_target, add_target_with_completer)
10893         (add_deprecated_target_alias): Change prototype.
10894         (test_target) <shortname, longname, doc>: Delete.
10895         <info>: New.
10896         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
10897         add_inf_child_target.
10898         * tracefile-tfile.c (tfile_target_info): New.
10899         (tfile_target) <shortname, longname, doc>: Delete.
10900         <info>: New.
10901         (tfile_target::open): Rename to ...
10902         (tfile_target_open): ... this.
10903         (_initialize_tracefile_tfile): Adjust.
10904         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
10905         add_inf_child_target.
10906         * windows-nat.c (_initialize_windows_nat): Use
10907         add_inf_child_target.
10908         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
10909         add_inf_child_target.
10910
10911 2018-05-02  Pedro Alves  <palves@redhat.com>
10912
10913         * linux-nat.h (linux_nat_target) <low_new_thread,
10914         low_delete_thread, low_new_fork, low_forget_process,
10915         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
10916         New virtual methods.
10917         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
10918         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
10919         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
10920         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
10921         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
10922         Delete.
10923         * linux-fork.c (delete_fork): Adjust to call low method.
10924         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
10925         (linux_nat_new_fork, linux_nat_forget_process_hook)
10926         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
10927         (linux_nat_status_is_event):
10928         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
10929         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
10930         to call low method.
10931         (sigtrap_is_event): Rename to ...
10932         (linux_nat_target::low_status_is_event): ... this.
10933         (linux_nat_set_status_is_event): Delete.
10934         (save_stop_reason, linux_nat_wait_1)
10935         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
10936         low methods.
10937         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
10938         (linux_nat_set_new_fork, linux_nat_set_forget_process)
10939         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
10940         (linux_nat_set_prepare_to_resume): Delete.
10941         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
10942         low virtual methods.
10943         * amd64-linux-nat.c: Likewise.
10944         * arm-linux-nat.c: Likewise.
10945         * i386-linux-nat.c: Likewise.
10946         * ia64-linux-nat.c: Likewise.
10947         * mips-linux-nat.c: Likewise.
10948         * ppc-linux-nat.c: Likewise.
10949         * s390-linux-nat.c: Likewise.
10950         * sparc64-linux-nat.c: Likewise.
10951         * x86-linux-nat.c: Likewise.
10952         * x86-linux-nat.h: Include "nat/x86-linux.h".
10953         (x86_linux_nat_target) <low_new_fork, low_forget_process,
10954         low_prepare_to_resume, low_new_thread, low_delete_thread>:
10955         Override methods.
10956
10957 2018-05-02  Pedro Alves  <palves@redhat.com>
10958
10959         * target.h (target_ops)
10960         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
10961         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
10962         stopped_by_watchpoint, have_continuable_watchpoint,
10963         stopped_data_address, watchpoint_addr_within_range,
10964         can_accel_watchpoint_condition, can_run, thread_alive,
10965         has_all_memory, has_memory, has_stack, has_registers,
10966         has_execution, can_async_p, is_async_p, supports_non_stop,
10967         always_non_stop_p, can_execute_reverse, supports_multi_process,
10968         supports_enable_disable_tracepoint,
10969         supports_disable_randomization, supports_string_tracing,
10970         supports_evaluation_of_breakpoint_conditions,
10971         can_run_breakpoint_commands, filesystem_is_local,
10972         can_download_tracepoint, get_trace_state_variable_value,
10973         set_trace_notes, get_tib_address, use_agent, can_use_agent,
10974         record_is_replaying, record_will_replay,
10975         augmented_libraries_svr4_read>: Adjust to return bool.
10976         * aarch64-linux-nat.c: All implementations adjusted.
10977         * aix-thread.c: All implementations adjusted.
10978         * arm-linux-nat.c: All implementations adjusted.
10979         * breakpoint.c: All implementations adjusted.
10980         * bsd-kvm.c: All implementations adjusted.
10981         * bsd-uthread.c: All implementations adjusted.
10982         * corelow.c: All implementations adjusted.
10983         * ctf.c: All implementations adjusted.
10984         * darwin-nat.c: All implementations adjusted.
10985         * darwin-nat.h: All implementations adjusted.
10986         * exec.c: All implementations adjusted.
10987         * fbsd-nat.c: All implementations adjusted.
10988         * fbsd-nat.h: All implementations adjusted.
10989         * gnu-nat.c: All implementations adjusted.
10990         * gnu-nat.h: All implementations adjusted.
10991         * go32-nat.c: All implementations adjusted.
10992         * ia64-linux-nat.c: All implementations adjusted.
10993         * inf-child.c: All implementations adjusted.
10994         * inf-child.h: All implementations adjusted.
10995         * inf-ptrace.c: All implementations adjusted.
10996         * inf-ptrace.h: All implementations adjusted.
10997         * linux-nat.c: All implementations adjusted.
10998         * linux-nat.h: All implementations adjusted.
10999         * mips-linux-nat.c: All implementations adjusted.
11000         * nto-procfs.c: All implementations adjusted.
11001         * ppc-linux-nat.c: All implementations adjusted.
11002         * procfs.c: All implementations adjusted.
11003         * ravenscar-thread.c: All implementations adjusted.
11004         * record-btrace.c: All implementations adjusted.
11005         * record-full.c: All implementations adjusted.
11006         * remote-sim.c: All implementations adjusted.
11007         * remote.c: All implementations adjusted.
11008         * s390-linux-nat.c: All implementations adjusted.
11009         * sol-thread.c: All implementations adjusted.
11010         * spu-multiarch.c: All implementations adjusted.
11011         * target-delegates.c: All implementations adjusted.
11012         * target.c: All implementations adjusted.
11013         * target.h: All implementations adjusted.
11014         * tracefile-tfile.c: All implementations adjusted.
11015         * tracefile.c: All implementations adjusted.
11016         * tracefile.h: All implementations adjusted.
11017         * windows-nat.c: All implementations adjusted.
11018         * x86-linux-nat.h: All implementations adjusted.
11019         * x86-nat.h: All implementations adjusted.
11020
11021 2018-05-02  Pedro Alves  <palves@redhat.com>
11022
11023         * make-target-delegates (scan_target_h): Don't trim lines here.
11024         Replace sequences of tabs and/or whitespace with a single
11025         whitespace.
11026         (top level, parsing methods): Trim each line before processing it
11027         here.
11028
11029 2018-05-02  Pedro Alves  <palves@redhat.com>
11030             John Baldwin  <jhb@freebsd.org>
11031
11032         * target.h (enum strata) <debug_stratum>: New.
11033         (struct target_ops) <all delegation methods>: Replace by C++
11034         virtual methods, and drop "to_" prefix.  All references updated
11035         throughout.
11036         <to_shortname, to_longname, to_doc, to_data,
11037         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
11038         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
11039         virtual methods.  All references updated throughout.
11040         <can_attach, supports_terminal_ours, can_create_inferior,
11041         get_thread_control_capabilities, attach_no_wait>: New
11042         virtual methods.
11043         <insert_breakpoint, remove_breakpoint>: Now
11044         TARGET_DEFAULT_NORETURN methods.
11045         <info_proc>: Now returns bool.
11046         <to_magic>: Delete.
11047         (OPS_MAGIC): Delete.
11048         (current_target): Delete.  All references replaced by references
11049         to ...
11050         (target_stack): ... this.  New.
11051         (target_shortname, target_longname): Adjust.
11052         (target_can_run): Now a function declaration.
11053         (default_child_has_all_memory, default_child_has_memory)
11054         (default_child_has_stack, default_child_has_registers)
11055         (default_child_has_execution): Remove target_ops parameter.
11056         (complete_target_initialization): Delete.
11057         (memory_breakpoint_target): New template class.
11058         (test_target_ops): Refactor as a C++ class with virtual methods.
11059         * make-target-delegates (NAME_PART): Tighten.
11060         (POINTER_PART, CP_SYMBOL): New.
11061         (SIMPLE_RETURN_PART): Reimplement.
11062         (VEC_RETURN_PART): Expect less.
11063         (RETURN_PART, VIRTUAL_PART): New.
11064         (METHOD): Adjust to C++ virtual methods.
11065         (scan_target_h): Remove reference to C99.
11066         (dname): Output "target_ops::" prefix.
11067         (write_function_header): Adjust to output a C++ class method.
11068         (write_declaration): New.
11069         (write_delegator): Adjust to output a C++ class method.
11070         (tdname): Output "dummy_target::" prefix.
11071         (write_tdefault, write_debugmethod): Adjust to output a C++ class
11072         method.
11073         (tdefault_names, debug_names): Delete.
11074         (return_types, tdefaults, styles, argtypes_array): New.
11075         (top level): All methods are delegators.
11076         (print_class): New.
11077         (top level): Print dummy_target and debug_target classes.
11078         * target-delegates.c: Regenerate.
11079         * target-debug.h (target_debug_print_enum_info_proc_what)
11080         (target_debug_print_thread_control_capabilities)
11081         (target_debug_print_thread_info_p): New.
11082         * target.c (dummy_target): Delete.
11083         (the_dummy_target, the_debug_target): New.
11084         (target_stack): Now extern.
11085         (set_targetdebug): Push/unpush debug target.
11086         (default_child_has_all_memory, default_child_has_memory)
11087         (default_child_has_stack, default_child_has_registers)
11088         (default_child_has_execution): Remove target_ops parameter.
11089         (complete_target_initialization): Delete.
11090         (add_target_with_completer): No longer call
11091         complete_target_initialization.
11092         (target_supports_terminal_ours): Use regular delegation.
11093         (update_current_target): Delete.
11094         (push_target): No longer check magic number.  Don't call
11095         update_current_target.
11096         (unpush_target): Don't call update_current_target.
11097         (target_is_pushed): No longer check magic number.
11098         (target_require_runnable): Skip for all stratums over
11099         process_stratum.
11100         (target_ops::info_proc): New.
11101         (target_info_proc): Use find_target_at and
11102         find_default_run_target.
11103         (target_supports_disable_randomization): Use regular delegation.
11104         (target_get_osdata): Use find_target_at.
11105         (target_ops::open, target_ops::close, target_ops::can_attach)
11106         (target_ops::attach, target_ops::can_create_inferior)
11107         (target_ops::create_inferior, target_ops::can_run)
11108         (target_can_run): New.
11109         (default_fileio_target): Use regular delegation.
11110         (target_ops::fileio_open, target_ops::fileio_pwrite)
11111         (target_ops::fileio_pread, target_ops::fileio_fstat)
11112         (target_ops::fileio_close, target_ops::fileio_unlink)
11113         (target_ops::fileio_readlink): New.
11114         (target_fileio_open_1, target_fileio_unlink)
11115         (target_fileio_readlink): Always call the target method.  Handle
11116         FILEIO_ENOSYS.
11117         (return_zero, return_zero_has_execution): Delete.
11118         (init_dummy_target): Delete.
11119         (dummy_target::dummy_target, dummy_target::shortname)
11120         (dummy_target::longname, dummy_target::doc)
11121         (debug_target::debug_target, debug_target::shortname)
11122         (debug_target::longname, debug_target::doc): New.
11123         (target_supports_delete_record): Use regular delegation.
11124         (setup_target_debug): Delete.
11125         (maintenance_print_target_stack): Skip debug_stratum.
11126         (initialize_targets): Instantiate the_dummy_target and
11127         the_debug_target.
11128         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
11129         use target_stack.
11130         (target_auxv_search, fprint_target_auxv): Adjust.
11131         (info_auxv_command): Adjust to use target_stack.
11132         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
11133         * exceptions.c (print_flush): Handle a NULL target_stack.
11134         * regcache.c (target_ops_no_register): Refactor as class with
11135         virtual methods.
11136
11137         * exec.c (exec_target): New class.
11138         (exec_ops): Now an exec_target.
11139         (exec_open, exec_close_1, exec_get_section_table)
11140         (exec_xfer_partial, exec_files_info, exec_has_memory)
11141         (exec_make_note_section): Refactor as exec_target methods.
11142         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
11143         Delete.
11144         (exec_target::find_memory_regions): New.
11145         (_initialize_exec): Don't call init_exec_ops.
11146         * gdbcore.h (exec_file_clear): Delete.
11147
11148         * corefile.c (core_target): Delete.
11149         (core_file_command): Adjust.
11150         * corelow.c (core_target): New class.
11151         (the_core_target): New.
11152         (core_close): Remove target_ops parameter.
11153         (core_close_cleanup): Adjust.
11154         (core_target::close): New.
11155         (core_open, core_detach, get_core_registers, core_files_info)
11156         (core_xfer_partial, core_thread_alive, core_read_description)
11157         (core_pid_to_str, core_thread_name, core_has_memory)
11158         (core_has_stack, core_has_registers, core_info_proc): Rework as
11159         core_target methods.
11160         (ignore, core_remove_breakpoint, init_core_ops): Delete.
11161         (_initialize_corelow): Initialize the_core_target.
11162         * gdbcore.h (core_target): Delete.
11163         (the_core_target): New.
11164
11165         * ctf.c: (ctf_target): New class.
11166         (ctf_ops): Now a ctf_target.
11167         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
11168         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
11169         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
11170         methods.
11171         (init_ctf_ops): Delete.
11172         (_initialize_ctf): Don't call it.
11173         * tracefile-tfile.c (tfile_target): New class.
11174         (tfile_ops): Now a tfile_target.
11175         (tfile_open, tfile_close, tfile_files_info)
11176         (tfile_get_tracepoint_status, tfile_trace_find)
11177         (tfile_fetch_registers, tfile_xfer_partial)
11178         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
11179         Refactor as tfile_target methods.
11180         (tfile_xfer_partial_features): Remove target_ops parameter.
11181         (init_tfile_ops): Delete.
11182         (_initialize_tracefile_tfile): Don't call it.
11183         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
11184         (tracefile_has_stack, tracefile_has_registers)
11185         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
11186         tracefile_target methods.
11187         (init_tracefile_ops): Delete.
11188         (tracefile_target::tracefile_target): New.
11189         * tracefile.h: Include "target.h".
11190         (tracefile_target): New class.
11191         (init_tracefile_ops): Delete.
11192
11193         * spu-multiarch.c (spu_multiarch_target): New class.
11194         (spu_ops): Now a spu_multiarch_target.
11195         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
11196         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
11197         (spu_search_memory, spu_mourn_inferior): Refactor as
11198         spu_multiarch_target methods.
11199         (init_spu_ops): Delete.
11200         (_initialize_spu_multiarch): Remove references to init_spu_ops,
11201         complete_target_initialization.
11202
11203         * ravenscar-thread.c (ravenscar_thread_target): New class.
11204         (ravenscar_ops): Now a ravenscar_thread_target.
11205         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
11206         (ravenscar_thread_alive, ravenscar_pid_to_str)
11207         (ravenscar_fetch_registers, ravenscar_store_registers)
11208         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
11209         (ravenscar_stopped_by_hw_breakpoint)
11210         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
11211         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
11212         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
11213         methods.
11214         (init_ravenscar_thread_ops): Delete.
11215         (_initialize_ravenscar): Remove references to
11216         init_ravenscar_thread_ops and complete_target_initialization.
11217
11218         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
11219         (bsd_uthread_target): New class.
11220         (bsd_uthread_ops): Now a bsd_uthread_target.
11221         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
11222         (bsd_uthread_close, bsd_uthread_mourn_inferior)
11223         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
11224         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
11225         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
11226         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
11227         (bsd_uthread_target): Delete function.
11228         (_initialize_bsd_uthread): Remove reference to
11229         complete_target_initialization.
11230
11231         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
11232         (target_bfd): ... this new class.
11233         (target_bfd_xfer_partial, target_bfd_get_section_table)
11234         (target_bfd_close): Refactor as target_bfd methods.
11235         (target_bfd::~target_bfd): New.
11236         (target_bfd_reopen): Adjust.
11237         (target_bfd::close): New.
11238
11239         * record-btrace.c (record_btrace_target): New class.
11240         (record_btrace_ops): Now a record_btrace_target.
11241         (record_btrace_open, record_btrace_stop_recording)
11242         (record_btrace_disconnect, record_btrace_close)
11243         (record_btrace_async, record_btrace_info)
11244         (record_btrace_insn_history, record_btrace_insn_history_range)
11245         (record_btrace_insn_history_from, record_btrace_call_history)
11246         (record_btrace_call_history_range)
11247         (record_btrace_call_history_from, record_btrace_record_method)
11248         (record_btrace_is_replaying, record_btrace_will_replay)
11249         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
11250         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
11251         (record_btrace_store_registers, record_btrace_prepare_to_store)
11252         (record_btrace_to_get_unwinder)
11253         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
11254         (record_btrace_commit_resume, record_btrace_wait)
11255         (record_btrace_stop, record_btrace_can_execute_reverse)
11256         (record_btrace_stopped_by_sw_breakpoint)
11257         (record_btrace_supports_stopped_by_sw_breakpoint)
11258         (record_btrace_stopped_by_hw_breakpoint)
11259         (record_btrace_supports_stopped_by_hw_breakpoint)
11260         (record_btrace_update_thread_list, record_btrace_thread_alive)
11261         (record_btrace_goto_begin, record_btrace_goto_end)
11262         (record_btrace_goto, record_btrace_stop_replaying_all)
11263         (record_btrace_execution_direction)
11264         (record_btrace_prepare_to_generate_core)
11265         (record_btrace_done_generating_core): Refactor as
11266         record_btrace_target methods.
11267         (init_record_btrace_ops): Delete.
11268         (_initialize_record_btrace): Remove reference to
11269         init_record_btrace_ops.
11270         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
11271         the execution_direction global.
11272         (record_full_base_target, record_full_target)
11273         (record_full_core_target): New classes.
11274         (record_full_ops): Now a record_full_target.
11275         (record_full_core_ops): Now a record_full_core_target.
11276         (record_full_target::detach, record_full_target::disconnect)
11277         (record_full_core_target::disconnect)
11278         (record_full_target::mourn_inferior, record_full_target::kill):
11279         New.
11280         (record_full_open, record_full_close, record_full_async): Refactor
11281         as methods of the record_full_base_target class.
11282         (record_full_resume, record_full_commit_resume): Refactor
11283         as methods of the record_full_target class.
11284         (record_full_wait, record_full_stopped_by_watchpoint)
11285         (record_full_stopped_data_address)
11286         (record_full_stopped_by_sw_breakpoint)
11287         (record_full_supports_stopped_by_sw_breakpoint)
11288         (record_full_stopped_by_hw_breakpoint)
11289         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
11290         methods of the record_full_base_target class.
11291         (record_full_store_registers, record_full_xfer_partial)
11292         (record_full_insert_breakpoint, record_full_remove_breakpoint):
11293         Refactor as methods of the record_full_target class.
11294         (record_full_can_execute_reverse, record_full_get_bookmark)
11295         (record_full_goto_bookmark, record_full_execution_direction)
11296         (record_full_record_method, record_full_info, record_full_delete)
11297         (record_full_is_replaying, record_full_will_replay)
11298         (record_full_goto_begin, record_full_goto_end, record_full_goto)
11299         (record_full_stop_replaying): Refactor as methods of the
11300         record_full_base_target class.
11301         (record_full_core_resume, record_full_core_kill)
11302         (record_full_core_fetch_registers)
11303         (record_full_core_prepare_to_store)
11304         (record_full_core_store_registers, record_full_core_xfer_partial)
11305         (record_full_core_insert_breakpoint)
11306         (record_full_core_remove_breakpoint)
11307         (record_full_core_has_execution): Refactor
11308         as methods of the record_full_core_target class.
11309         (record_full_base_target::supports_delete_record): New.
11310         (init_record_full_ops): Delete.
11311         (init_record_full_core_ops): Delete.
11312         (record_full_save): Refactor as method of the
11313         record_full_base_target class.
11314         (_initialize_record_full): Remove references to
11315         init_record_full_ops and init_record_full_core_ops.
11316
11317         * remote.c (remote_target, extended_remote_target): New classes.
11318         (remote_ops): Now a remote_target.
11319         (extended_remote_ops): Now an extended_remote_target.
11320         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
11321         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
11322         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
11323         (remote_pass_signals, remote_set_syscall_catchpoint)
11324         (remote_program_signals, )
11325         (remote_thread_always_alive): Remove target_ops parameter.
11326         (remote_thread_alive, remote_thread_name)
11327         (remote_update_thread_list, remote_threads_extra_info)
11328         (remote_static_tracepoint_marker_at)
11329         (remote_static_tracepoint_markers_by_strid)
11330         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
11331         (remote_open): Refactor as methods of remote_target.
11332         (extended_remote_open, extended_remote_detach)
11333         (extended_remote_attach, extended_remote_post_attach):
11334         (extended_remote_supports_disable_randomization)
11335         (extended_remote_create_inferior): : Refactor as method of
11336         extended_remote_target.
11337         (remote_set_permissions, remote_open_1, remote_detach)
11338         (remote_follow_fork, remote_follow_exec, remote_disconnect)
11339         (remote_resume, remote_commit_resume, remote_stop)
11340         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
11341         (remote_terminal_ours, remote_wait, remote_fetch_registers)
11342         (remote_prepare_to_store, remote_store_registers)
11343         (remote_flash_erase, remote_flash_done, remote_files_info)
11344         (remote_kill, remote_mourn, remote_insert_breakpoint)
11345         (remote_remove_breakpoint, remote_insert_watchpoint)
11346         (remote_watchpoint_addr_within_range)
11347         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
11348         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
11349         (remote_supports_stopped_by_sw_breakpoint)
11350         (remote_stopped_by_hw_breakpoint)
11351         (remote_supports_stopped_by_hw_breakpoint)
11352         (remote_stopped_by_watchpoint, remote_stopped_data_address)
11353         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
11354         (remote_verify_memory): Refactor as methods of remote_target.
11355         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
11356         parameter.
11357         (remote_xfer_partial, remote_get_memory_xfer_limit)
11358         (remote_search_memory, remote_rcmd, remote_memory_map)
11359         (remote_pid_to_str, remote_get_thread_local_address)
11360         (remote_get_tib_address, remote_read_description): Refactor as
11361         methods of remote_target.
11362         (remote_target::fileio_open, remote_target::fileio_pwrite)
11363         (remote_target::fileio_pread, remote_target::fileio_close): New.
11364         (remote_hostio_readlink, remote_hostio_fstat)
11365         (remote_filesystem_is_local, remote_can_execute_reverse)
11366         (remote_supports_non_stop, remote_supports_disable_randomization)
11367         (remote_supports_multi_process, remote_supports_cond_breakpoints)
11368         (remote_supports_enable_disable_tracepoint)
11369         (remote_supports_string_tracing)
11370         (remote_can_run_breakpoint_commands, remote_trace_init)
11371         (remote_download_tracepoint, remote_can_download_tracepoint)
11372         (remote_download_trace_state_variable, remote_enable_tracepoint)
11373         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
11374         (remote_trace_start, remote_get_trace_status)
11375         (remote_get_tracepoint_status, remote_trace_stop)
11376         (remote_trace_find, remote_get_trace_state_variable_value)
11377         (remote_save_trace_data, remote_get_raw_trace_data)
11378         (remote_set_disconnected_tracing, remote_core_of_thread)
11379         (remote_set_circular_trace_buffer, remote_traceframe_info)
11380         (remote_get_min_fast_tracepoint_insn_len)
11381         (remote_set_trace_buffer_size, remote_set_trace_notes)
11382         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
11383         (remote_disable_btrace, remote_teardown_btrace)
11384         (remote_read_btrace, remote_btrace_conf)
11385         (remote_augmented_libraries_svr4_read, remote_load)
11386         (remote_pid_to_exec_file, remote_can_do_single_step)
11387         (remote_execution_direction, remote_thread_handle_to_thread_info):
11388         Refactor as methods of remote_target.
11389         (init_remote_ops, init_extended_remote_ops): Delete.
11390         (remote_can_async_p, remote_is_async_p, remote_async)
11391         (remote_thread_events, remote_upload_tracepoints)
11392         (remote_upload_trace_state_variables): Refactor as methods of
11393         remote_target.
11394         (_initialize_remote): Remove references to init_remote_ops and
11395         init_extended_remote_ops.
11396
11397         * remote-sim.c (gdbsim_target): New class.
11398         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
11399         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
11400         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
11401         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
11402         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
11403         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
11404         Refactor as methods of gdbsim_target.
11405         (gdbsim_ops): Now a gdbsim_target.
11406         (init_gdbsim_ops): Delete.
11407         (gdbsim_cntrl_c): Adjust.
11408         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
11409
11410         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
11411         (the_amd64_linux_nat_target): New.
11412         (amd64_linux_fetch_inferior_registers)
11413         (amd64_linux_store_inferior_registers): Refactor as methods of
11414         amd64_linux_nat_target.
11415         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
11416         * i386-linux-nat.c: Don't include "linux-nat.h".
11417         (i386_linux_nat_target): New class.
11418         (the_i386_linux_nat_target): New.
11419         (i386_linux_fetch_inferior_registers)
11420         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
11421         as methods of i386_linux_nat_target.
11422         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
11423         * inf-child.c (inf_child_ops): Delete.
11424         (inf_child_fetch_inferior_registers)
11425         (inf_child_store_inferior_registers): Delete.
11426         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
11427         methods of inf_child_target.
11428         (inf_child_target::supports_terminal_ours)
11429         (inf_child_target::terminal_init)
11430         (inf_child_target::terminal_inferior)
11431         (inf_child_target::terminal_ours_for_output)
11432         (inf_child_target::terminal_ours, inf_child_target::interrupt)
11433         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
11434         New.
11435         (inf_child_open, inf_child_disconnect, inf_child_close)
11436         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
11437         (inf_child_post_startup_inferior, inf_child_can_run)
11438         (inf_child_pid_to_exec_file): Refactor as methods of
11439         inf_child_target.
11440         (inf_child_follow_fork): Delete.
11441         (inf_child_target::can_create_inferior)
11442         (inf_child_target::can_attach): New.
11443         (inf_child_target::has_all_memory, inf_child_target::has_memory)
11444         (inf_child_target::has_stack, inf_child_target::has_registers)
11445         (inf_child_target::has_execution): New.
11446         (inf_child_fileio_open, inf_child_fileio_pwrite)
11447         (inf_child_fileio_pread, inf_child_fileio_fstat)
11448         (inf_child_fileio_close, inf_child_fileio_unlink)
11449         (inf_child_fileio_readlink, inf_child_use_agent)
11450         (inf_child_can_use_agent): Refactor as methods of
11451         inf_child_target.
11452         (return_zero, inf_child_target): Delete.
11453         (inf_child_target::inf_child_target): New.
11454         * inf-child.h: Include "target.h".
11455         (inf_child_target): Delete function prototype.
11456         (inf_child_target): New class.
11457         (inf_child_open_target, inf_child_mourn_inferior)
11458         (inf_child_maybe_unpush_target): Delete.
11459         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
11460         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
11461         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
11462         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
11463         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
11464         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
11465         (inf_ptrace_wait, inf_ptrace_xfer_partial)
11466         (inf_ptrace_thread_alive, inf_ptrace_files_info)
11467         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
11468         methods of inf_ptrace_target.
11469         (inf_ptrace_target): Delete function.
11470         * inf-ptrace.h: Include "inf-child.h".
11471         (inf_ptrace_target): Delete function declaration.
11472         (inf_ptrace_target): New class.
11473         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
11474         * linux-nat.c (linux_target): New.
11475         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
11476         (linux_nat_target::~linux_nat_target): New.
11477         (linux_child_post_attach, linux_child_post_startup_inferior)
11478         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
11479         (linux_child_remove_fork_catchpoint)
11480         (linux_child_insert_vfork_catchpoint)
11481         (linux_child_remove_vfork_catchpoint)
11482         (linux_child_insert_exec_catchpoint)
11483         (linux_child_remove_exec_catchpoint)
11484         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
11485         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
11486         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
11487         (linux_nat_stopped_data_address)
11488         (linux_nat_stopped_by_sw_breakpoint)
11489         (linux_nat_supports_stopped_by_sw_breakpoint)
11490         (linux_nat_stopped_by_hw_breakpoint)
11491         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
11492         (linux_nat_kill, linux_nat_mourn_inferior)
11493         (linux_nat_xfer_partial, linux_nat_thread_alive)
11494         (linux_nat_update_thread_list, linux_nat_pid_to_str)
11495         (linux_nat_thread_name, linux_child_pid_to_exec_file)
11496         (linux_child_static_tracepoint_markers_by_strid)
11497         (linux_nat_is_async_p, linux_nat_can_async_p)
11498         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
11499         (linux_nat_supports_multi_process)
11500         (linux_nat_supports_disable_randomization, linux_nat_async)
11501         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
11502         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
11503         (linux_nat_fileio_open, linux_nat_fileio_readlink)
11504         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
11505         methods of linux_nat_target.
11506         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
11507         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
11508         parameter.
11509         (check_stopped_by_watchpoint): Adjust.
11510         (linux_xfer_partial): Delete.
11511         (linux_target_install_ops, linux_target, linux_nat_add_target):
11512         Delete.
11513         (linux_nat_target::linux_nat_target): New.
11514         * linux-nat.h: Include "inf-ptrace.h".
11515         (linux_nat_target): New.
11516         (linux_target, linux_target_install_ops, linux_nat_add_target):
11517         Delete function declarations.
11518         (linux_target): Declare global.
11519         * linux-thread-db.c (thread_db_target): New.
11520         (thread_db_target::thread_db_target): New.
11521         (thread_db_ops): Delete.
11522         (the_thread_db_target): New.
11523         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
11524         (thread_db_update_thread_list, thread_db_pid_to_str)
11525         (thread_db_extra_thread_info)
11526         (thread_db_thread_handle_to_thread_info)
11527         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
11528         (thread_db_resume): Refactor as methods of thread_db_target.
11529         (init_thread_db_ops): Delete.
11530         (_initialize_thread_db): Remove reference to init_thread_db_ops.
11531         * x86-linux-nat.c: Don't include "linux-nat.h".
11532         (super_post_startup_inferior): Delete.
11533         (x86_linux_nat_target::~x86_linux_nat_target): New.
11534         (x86_linux_child_post_startup_inferior)
11535         (x86_linux_read_description, x86_linux_enable_btrace)
11536         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
11537         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
11538         methods of x86_linux_nat_target.
11539         (x86_linux_create_target): Delete.  Bits folded ...
11540         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
11541         pointer.
11542         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
11543         (x86_linux_nat_target): New class.
11544         (x86_linux_create_target): Delete.
11545         (x86_linux_add_target): Now takes a linux_nat_target pointer.
11546         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
11547         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
11548         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
11549         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
11550         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
11551         make extern.
11552         (x86_use_watchpoints): Delete.
11553         * x86-nat.h: Include "breakpoint.h" and "target.h".
11554         (x86_use_watchpoints): Delete.
11555         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
11556         (x86_stopped_by_watchpoint, x86_stopped_data_address)
11557         (x86_insert_watchpoint, x86_remove_watchpoint)
11558         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
11559         (x86_stopped_by_hw_breakpoint): New declarations.
11560         (x86_nat_target): New template class.
11561
11562         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
11563         (the_ppc_linux_nat_target): New.
11564         (ppc_linux_fetch_inferior_registers)
11565         (ppc_linux_can_use_hw_breakpoint)
11566         (ppc_linux_region_ok_for_hw_watchpoint)
11567         (ppc_linux_ranged_break_num_registers)
11568         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
11569         (ppc_linux_insert_mask_watchpoint)
11570         (ppc_linux_remove_mask_watchpoint)
11571         (ppc_linux_can_accel_watchpoint_condition)
11572         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
11573         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
11574         (ppc_linux_watchpoint_addr_within_range)
11575         (ppc_linux_masked_watch_num_registers)
11576         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
11577         (ppc_linux_read_description): Refactor as methods of
11578         ppc_linux_nat_target.
11579         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
11580
11581         * procfs.c (procfs_xfer_partial): Delete forward declaration.
11582         (procfs_target): New class.
11583         (the_procfs_target): New.
11584         (procfs_target): Delete function.
11585         (procfs_auxv_parse, procfs_attach, procfs_detach)
11586         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
11587         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
11588         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
11589         (procfs_create_inferior, procfs_update_thread_list)
11590         (procfs_thread_alive, procfs_pid_to_str)
11591         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
11592         (procfs_stopped_data_address, procfs_insert_watchpoint)
11593         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
11594         (proc_find_memory_regions, procfs_info_proc)
11595         (procfs_make_note_section): Refactor as methods of procfs_target.
11596         (_initialize_procfs): Adjust.
11597         * sol-thread.c (sol_thread_target): New class.
11598         (sol_thread_ops): Now a sol_thread_target.
11599         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
11600         (sol_thread_fetch_registers, sol_thread_store_registers)
11601         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
11602         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
11603         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
11604         (init_sol_thread_ops): Delete.
11605         (_initialize_sol_thread): Adjust.  Remove references to
11606         init_sol_thread_ops and complete_target_initialization.
11607
11608         * windows-nat.c (windows_nat_target): New class.
11609         (windows_fetch_inferior_registers)
11610         (windows_store_inferior_registers, windows_resume, windows_wait)
11611         (windows_attach, windows_detach, windows_pid_to_exec_file)
11612         (windows_files_info, windows_create_inferior)
11613         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
11614         (windows_close, windows_pid_to_str, windows_xfer_partial)
11615         (windows_get_tib_address, windows_get_ada_task_ptid)
11616         (windows_thread_name, windows_thread_alive): Refactor as
11617         windows_nat_target methods.
11618         (do_initial_windows_stuff): Adjust.
11619         (windows_target): Delete function.
11620         (_initialize_windows_nat): Adjust.
11621
11622         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
11623         (darwin_mourn_inferior, darwin_kill_inferior)
11624         (darwin_create_inferior, darwin_attach, darwin_detach)
11625         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
11626         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
11627         (darwin_supports_multi_process): Refactor as darwin_nat_target
11628         methods.
11629         (darwin_resume_to, darwin_files_info): Delete.
11630         (_initialize_darwin_inferior): Rename to ...
11631         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
11632         * darwin-nat.h: Include "inf-child.h".
11633         (darwin_nat_target): New class.
11634         (darwin_complete_target): Delete.
11635         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
11636         (darwin_target): New.
11637         (i386_darwin_fetch_inferior_registers)
11638         (i386_darwin_store_inferior_registers): Refactor as methods of
11639         darwin_nat_target.
11640         (darwin_complete_target): Delete, with ...
11641         (_initialize_i386_darwin_nat): ... bits factored out here.
11642
11643         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
11644         (the_alpha_linux_nat_target): New.
11645         (alpha_linux_register_u_offset): Refactor as
11646         alpha_linux_nat_target method.
11647         (_initialize_alpha_linux_nat): Adjust.
11648         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
11649         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
11650         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
11651         methods of linux_nat_trad_target.
11652         (linux_trad_target): Delete.
11653         * linux-nat-trad.h (linux_trad_target): Delete function.
11654         (linux_nat_trad_target): New class.
11655         * mips-linux-nat.c (mips_linux_nat_target): New class.
11656         (super_fetch_registers, super_store_registers, super_close):
11657         Delete.
11658         (the_mips_linux_nat_target): New.
11659         (mips64_linux_regsets_fetch_registers)
11660         (mips64_linux_regsets_store_registers)
11661         (mips64_linux_fetch_registers, mips64_linux_store_registers)
11662         (mips_linux_register_u_offset, mips_linux_read_description)
11663         (mips_linux_can_use_hw_breakpoint)
11664         (mips_linux_stopped_by_watchpoint)
11665         (mips_linux_stopped_data_address)
11666         (mips_linux_region_ok_for_hw_watchpoint)
11667         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
11668         (mips_linux_close): Refactor as methods of mips_linux_nat.
11669         (_initialize_mips_linux_nat): Adjust to C++ification.
11670
11671         * aix-thread.c (aix_thread_target): New class.
11672         (aix_thread_ops): Now an aix_thread_target.
11673         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
11674         (aix_thread_fetch_registers, aix_thread_store_registers)
11675         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
11676         (aix_thread_thread_alive, aix_thread_pid_to_str)
11677         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
11678         Refactor as methods of aix_thread_target.
11679         (init_aix_thread_ops): Delete.
11680         (_initialize_aix_thread): Remove references to init_aix_thread_ops
11681         and complete_target_initialization.
11682         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
11683         (rs6000_nat_target): New class.
11684         (the_rs6000_nat_target): New.
11685         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
11686         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
11687         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
11688         (super_create_inferior): Delete.
11689         (_initialize_rs6000_nat): Adjust to C++ification.
11690
11691         * arm-linux-nat.c (arm_linux_nat_target): New class.
11692         (the_arm_linux_nat_target): New.
11693         (arm_linux_fetch_inferior_registers)
11694         (arm_linux_store_inferior_registers, arm_linux_read_description)
11695         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
11696         (arm_linux_remove_hw_breakpoint)
11697         (arm_linux_region_ok_for_hw_watchpoint)
11698         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
11699         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
11700         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
11701         arm_linux_nat_target.
11702         (_initialize_arm_linux_nat): Adjust to C++ification.
11703
11704         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
11705         (the_aarch64_linux_nat_target): New.
11706         (aarch64_linux_fetch_inferior_registers)
11707         (aarch64_linux_store_inferior_registers)
11708         (aarch64_linux_child_post_startup_inferior)
11709         (aarch64_linux_read_description)
11710         (aarch64_linux_can_use_hw_breakpoint)
11711         (aarch64_linux_insert_hw_breakpoint)
11712         (aarch64_linux_remove_hw_breakpoint)
11713         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
11714         (aarch64_linux_region_ok_for_hw_watchpoint)
11715         (aarch64_linux_stopped_data_address)
11716         (aarch64_linux_stopped_by_watchpoint)
11717         (aarch64_linux_watchpoint_addr_within_range)
11718         (aarch64_linux_can_do_single_step): Refactor as methods of
11719         aarch64_linux_nat_target.
11720         (super_post_startup_inferior): Delete.
11721         (_initialize_aarch64_linux_nat): Adjust to C++ification.
11722
11723         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
11724         (the_hppa_linux_nat_target): New.
11725         (hppa_linux_fetch_inferior_registers)
11726         (hppa_linux_store_inferior_registers): Refactor as methods of
11727         hppa_linux_nat_target.
11728         (_initialize_hppa_linux_nat): Adjust to C++ification.
11729
11730         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
11731         (the_ia64_linux_nat_target): New.
11732         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
11733         (ia64_linux_stopped_data_address)
11734         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
11735         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
11736         ia64_linux_nat_target methods.
11737         (super_xfer_partial): Delete.
11738         (_initialize_ia64_linux_nat): Adjust to C++ification.
11739
11740         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
11741         (the_m32r_linux_nat_target): New.
11742         (m32r_linux_fetch_inferior_registers)
11743         (m32r_linux_store_inferior_registers): Refactor as
11744         m32r_linux_nat_target methods.
11745         (_initialize_m32r_linux_nat): Adjust to C++ification.
11746
11747         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
11748         (the_m68k_linux_nat_target): New.
11749         (m68k_linux_fetch_inferior_registers)
11750         (m68k_linux_store_inferior_registers): Refactor as
11751         m68k_linux_nat_target methods.
11752         (_initialize_m68k_linux_nat): Adjust to C++ification.
11753
11754         * s390-linux-nat.c (s390_linux_nat_target): New class.
11755         (the_s390_linux_nat_target): New.
11756         (s390_linux_fetch_inferior_registers)
11757         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
11758         (s390_insert_watchpoint, s390_remove_watchpoint)
11759         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
11760         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
11761         (s390_auxv_parse, s390_read_description): Refactor as methods of
11762         s390_linux_nat_target.
11763         (_initialize_s390_nat): Adjust to C++ification.
11764
11765         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
11766         (the_sparc_linux_nat_target): New.
11767         (_initialize_sparc_linux_nat): Adjust to C++ification.
11768         * sparc-nat.c (sparc_fetch_inferior_registers)
11769         (sparc_store_inferior_registers): Remove target_ops parameter.
11770         * sparc-nat.h (sparc_fetch_inferior_registers)
11771         (sparc_store_inferior_registers): Remove target_ops parameter.
11772         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
11773         (the_sparc64_linux_nat_target): New.
11774         (_initialize_sparc64_linux_nat): Adjust to C++ification.
11775
11776         * spu-linux-nat.c (spu_linux_nat_target): New class.
11777         (the_spu_linux_nat_target): New.
11778         (spu_child_post_startup_inferior, spu_child_post_attach)
11779         (spu_child_wait, spu_fetch_inferior_registers)
11780         (spu_store_inferior_registers, spu_xfer_partial)
11781         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
11782         methods.
11783         (_initialize_spu_nat): Adjust to C++ification.
11784
11785         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
11786         (the_tilegx_linux_nat_target): New.
11787         (fetch_inferior_registers, store_inferior_registers):
11788         Refactor as methods.
11789         (_initialize_tile_linux_nat): Adjust to C++ification.
11790
11791         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
11792         (the_xtensa_linux_nat_target): New.
11793         (xtensa_linux_fetch_inferior_registers)
11794         (xtensa_linux_store_inferior_registers): Refactor as
11795         xtensa_linux_nat_target methods.
11796         (_initialize_xtensa_linux_nat): Adjust to C++ification.
11797
11798         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
11799         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
11800         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
11801         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
11802         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
11803         (fbsd_stopped_by_sw_breakpoint)
11804         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
11805         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
11806         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
11807         (fbsd_post_startup_inferior, fbsd_post_attach)
11808         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
11809         (fbsd_set_syscall_catchpoint)
11810         (super_xfer_partial, super_resume, super_wait)
11811         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
11812         (fbsd_handle_debug_trap): Remove target_ops parameter.
11813         (fbsd_nat_add_target): Delete.
11814         * fbsd-nat.h: Include "inf-ptrace.h".
11815         (fbsd_nat_add_target): Delete.
11816         (USE_SIGTRAP_SIGINFO): Define.
11817         (fbsd_nat_target): New class.
11818
11819         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
11820         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
11821         (amd64bsd_target): Delete.
11822         * amd64-bsd-nat.h: New file.
11823         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
11824         "x86-bsd-nat.h".
11825         (amd64_fbsd_nat_target): New class.
11826         (the_amd64_fbsd_nat_target): New.
11827         (amd64fbsd_read_description): Refactor as method of
11828         amd64_fbsd_nat_target.
11829         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
11830         (_initialize_amd64fbsd_nat): Adjust to C++ification.
11831         * amd64-nat.h (amd64bsd_target): Delete function declaration.
11832         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
11833         (i386bsd_store_inferior_registers): Remove target_ops parameter.
11834         (i386bsd_target): Delete.
11835         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
11836         (i386bsd_fetch_inferior_registers)
11837         (i386bsd_store_inferior_registers): Declare.
11838         (i386_bsd_nat_target): New class.
11839         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
11840         (the_i386_fbsd_nat_target): New.
11841         (i386fbsd_resume, i386fbsd_read_description): Refactor as
11842         i386_fbsd_nat_target methods.
11843         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
11844         (_initialize_i386fbsd_nat): Adjust to C++ification.
11845         * x86-bsd-nat.c (super_mourn_inferior): Delete.
11846         (x86bsd_mourn_inferior, x86bsd_target): Delete.
11847         (_initialize_x86_bsd_nat): Adjust to C++ification.
11848         * x86-bsd-nat.h: Include "x86-nat.h".
11849         (x86bsd_target): Delete declaration.
11850         (x86bsd_nat_target): New class.
11851
11852         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
11853         (the_aarch64_fbsd_nat_target): New.
11854         (aarch64_fbsd_fetch_inferior_registers)
11855         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
11856         aarch64_fbsd_nat_target.
11857         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
11858         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
11859         (the_alpha_bsd_nat_target): New.
11860         (alphabsd_fetch_inferior_registers)
11861         (alphabsd_store_inferior_registers): Refactor as
11862         alpha_bsd_nat_target methods.
11863         (_initialize_alphabsd_nat): Refactor as methods of
11864         alpha_bsd_nat_target.
11865         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
11866         (the_amd64_nbsd_nat_target): New.
11867         (_initialize_amd64nbsd_nat): Adjust to C++ification.
11868         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
11869         (the_amd64_obsd_nat_target): New.
11870         (_initialize_amd64obsd_nat): Adjust to C++ification.
11871         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
11872         (the_arm_fbsd_nat_target): New.
11873         (arm_fbsd_fetch_inferior_registers)
11874         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
11875         (_initialize_arm_fbsd_nat): Refactor as methods of
11876         arm_fbsd_nat_target.
11877         (_initialize_arm_fbsd_nat): Adjust to C++ification.
11878         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
11879         (the_arm_netbsd_nat_target): New.
11880         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
11881         arm_netbsd_nat_target.
11882         (_initialize_arm_netbsd_nat): Adjust to C++ification.
11883         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
11884         (the_hppa_nbsd_nat_target): New.
11885         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
11886         hppa_nbsd_nat_target methods.
11887         (_initialize_hppanbsd_nat): Adjust to C++ification.
11888         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
11889         (the_hppa_obsd_nat_target): New.
11890         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
11891         methods of hppa_obsd_nat_target.
11892         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
11893         add_target.
11894         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
11895         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
11896         add_target.
11897         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
11898         (_initialize_i386obsd_nat): Use add_target.
11899         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
11900         (the_m68k_bsd_nat_target): New.
11901         (m68kbsd_fetch_inferior_registers)
11902         (m68kbsd_store_inferior_registers): Refactor as methods of
11903         m68k_bsd_nat_target.
11904         (_initialize_m68kbsd_nat): Adjust to C++ification.
11905         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
11906         (the_mips_fbsd_nat_target): New.
11907         (mips_fbsd_fetch_inferior_registers)
11908         (mips_fbsd_store_inferior_registers): Refactor as methods of
11909         mips_fbsd_nat_target.
11910         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
11911         add_target.
11912         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
11913         (the_mips_nbsd_nat_target): New.
11914         (mipsnbsd_fetch_inferior_registers)
11915         (mipsnbsd_store_inferior_registers): Refactor as methods of
11916         mips_nbsd_nat_target.
11917         (_initialize_mipsnbsd_nat): Adjust to C++ification.
11918         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
11919         (the_mips64_obsd_nat_target): New.
11920         (mips64obsd_fetch_inferior_registers)
11921         (mips64obsd_store_inferior_registers): Refactor as methods of
11922         mips64_obsd_nat_target.
11923         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
11924         add_target.
11925         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
11926         nbsd_nat_target.
11927         * nbsd-nat.h: Include "inf-ptrace.h".
11928         (nbsd_nat_target): New class.
11929         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
11930         (obsd_wait): Refactor as methods of obsd_nat_target.
11931         (obsd_add_target): Delete.
11932         * obsd-nat.h: Include "inf-ptrace.h".
11933         (obsd_nat_target): New class.
11934         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
11935         (the_ppc_fbsd_nat_target): New.
11936         (ppcfbsd_fetch_inferior_registers)
11937         (ppcfbsd_store_inferior_registers): Refactor as methods of
11938         ppc_fbsd_nat_target.
11939         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
11940         add_target.
11941         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
11942         (the_ppc_nbsd_nat_target): New.
11943         (ppcnbsd_fetch_inferior_registers)
11944         (ppcnbsd_store_inferior_registers): Refactor as methods of
11945         ppc_nbsd_nat_target.
11946         (_initialize_ppcnbsd_nat): Adjust to C++ification.
11947         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
11948         (the_ppc_obsd_nat_target): New.
11949         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
11950         methods of ppc_obsd_nat_target.
11951         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
11952         add_target.
11953         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
11954         (the_sh_nbsd_nat_target): New.
11955         (shnbsd_fetch_inferior_registers)
11956         (shnbsd_store_inferior_registers): Refactor as methods of
11957         sh_nbsd_nat_target.
11958         (_initialize_shnbsd_nat): Adjust to C++ification.
11959         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
11960         (inf_ptrace_xfer_partial): Delete.
11961         (sparc_xfer_partial, sparc_target): Delete.
11962         * sparc-nat.h (sparc_fetch_inferior_registers)
11963         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
11964         (sparc_target): Delete function declaration.
11965         (sparc_target): New template class.
11966         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
11967         (_initialize_sparcnbsd_nat): Adjust to C++ification.
11968         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
11969         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
11970         add_target.
11971         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
11972         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
11973         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
11974         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
11975         add_target.
11976         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
11977         (the_vax_bsd_nat_target): New.
11978         (vaxbsd_fetch_inferior_registers)
11979         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
11980         methods.
11981         (_initialize_vaxbsd_nat): Adjust to C++ification.
11982
11983         * bsd-kvm.c (bsd_kvm_target): New class.
11984         (bsd_kvm_ops): Now a bsd_kvm_target.
11985         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
11986         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
11987         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
11988         bsd_kvm_target.
11989         (bsd_kvm_return_one): Delete.
11990         (bsd_kvm_add_target): Adjust to C++ification.
11991
11992         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
11993         (nto_procfs_target_procfs): New classes.
11994         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
11995         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
11996         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
11997         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
11998         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
11999         (procfs_remove_hw_breakpoint, procfs_resume)
12000         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
12001         (procfs_kill_inferior, procfs_store_registers)
12002         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
12003         as methods of nto_procfs_target.
12004         (nto_procfs_ops): Now an nto_procfs_target_procfs.
12005         (nto_native_ops): Delete.
12006         (procfs_open, procfs_native_open): Delete.
12007         (nto_native_ops): Now an nto_procfs_target_native.
12008         (init_procfs_targets): Adjust to C++ification.
12009         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
12010         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
12011         Refactor as methods of nto_procfs_target.
12012
12013         * go32-nat.c (go32_nat_target): New class.
12014         (the_go32_nat_target): New.
12015         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
12016         (go32_store_registers, go32_xfer_partial, go32_files_info)
12017         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
12018         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
12019         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
12020         (go32_pid_to_str): Refactor as methods of go32_nat_target.
12021         (go32_target): Delete.
12022         (_initialize_go32_nat): Adjust to C++ification.
12023
12024         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
12025         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
12026         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
12027         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
12028         gnu_nat_target.
12029         (gnu_target): Delete.
12030         * gnu-nat.h (gnu_target): Delete.
12031         (gnu_nat_target): New class.
12032         * i386-gnu-nat.c (gnu_base_target): New.
12033         (i386_gnu_nat_target): New class.
12034         (the_i386_gnu_nat_target): New.
12035         (_initialize_i386gnu_nat): Adjust to C++ification.
12036
12037 2018-05-02  Pedro Alves  <palves@redhat.com>
12038
12039         * bfd-target.c (target_bfd_xclose): Rename to ...
12040         (target_bfd_close): ... this.
12041         (target_bfd_reopen): Adjust.
12042         * target.c (target_close): Remove references to to_xclose.
12043         * target.h (target_ops::to_xclose): Delete.
12044         (target_ops::to_close): Update comments.
12045
12046 2018-05-02  Pedro Alves  <palves@redhat.com>
12047
12048         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
12049         "linux-nat.h".
12050         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
12051         * inf-ptrace.c (inf_ptrace_register_u_offset)
12052         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
12053         (inf_ptrace_store_register, inf_ptrace_store_registers)
12054         (inf_ptrace_trad_target): Move to ...
12055         * linux-nat-trad.c: ... this new file.
12056         * linux-nat-trad.h: New file.
12057         * linux-nat.c (linux_target_install_ops): Make extern.
12058         (linux_trad_target): Delete.
12059         * linux-nat.h (linux_trad_target): Delete declaration.
12060         (linux_target_install_ops): Declare.
12061         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
12062         "linux-nat.h".
12063
12064 2018-05-02  Pedro Alves  <palves@redhat.com>
12065
12066         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
12067         procfs_target/add_target here.
12068         * procfs.c (procfs_target): Make static.
12069         (_initialize_procfs): Call add_target here.
12070         * procfs.h (struct target_ops): Remove forward declaration.
12071         (procfs_target): Remove declaration.
12072         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
12073
12074 2018-05-02  Pedro Alves  <palves@redhat.com>
12075
12076         * procfs.c (procfs_stopped_by_watchpoint)
12077         (procfs_insert_watchpoint, procfs_remove_watchpoint)
12078         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
12079         Forward declare.
12080         (procfs_use_watchpoints): Delete, move contents...
12081         (procfs_target): ... here.
12082         * procfs.h (procfs_use_watchpoints): Delete declaration.
12083         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
12084         procfs_use_watchpoints.
12085         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
12086         procfs_use_watchpoints.
12087
12088 2018-05-02  Tom Tromey  <tom@tromey.com>
12089
12090         PR python/20084:
12091         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
12092         and var_zuinteger_unlimited.
12093         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
12094         and PARAM_ZUINTEGER_UNLIMITED.
12095         (set_parameter_value): Handle var_zuinteger and
12096         var_zuinteger_unlimited.
12097         (add_setshow_generic): Likewise.
12098         (parmpy_init): Likewise.
12099
12100 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
12101
12102         PR rust/23124
12103         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
12104         pointer is not null before dereferencing it.
12105
12106 2018-04-30  Tom Tromey  <tom@tromey.com>
12107
12108         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
12109         is_mi_like_p.
12110
12111 2018-04-30  Tom Tromey  <tom@tromey.com>
12112
12113         * breakpoint.c (mention): Remove use of is_mi_like_p.
12114         (print_mention_ranged_breakpoint): Likewise.
12115         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
12116         of is_mi_like_p.
12117
12118 2018-04-30  Tom Tromey  <tom@tromey.com>
12119
12120         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
12121
12122 2018-04-30  Tom Tromey  <tom@tromey.com>
12123
12124         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
12125         (info_spu_event_command): Remove some uses of is_mi_like_p.
12126
12127 2018-04-30  Tom Tromey  <tom@tromey.com>
12128
12129         * python/py-framefilter.c (py_print_single_arg)
12130         (enumerate_locals, py_print_args, py_print_frame): Remove some
12131         uses of is_mi_like_p.
12132
12133 2018-04-30  Tom Tromey  <tom@tromey.com>
12134
12135         * ui-out.c: Update.
12136         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
12137         * ui-out.h (ui_out::is_mi_like_p): Now const.
12138         (ui_out::do_is_mi_like_p): Now const.
12139         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
12140
12141 2018-04-30  Tom Tromey  <tom@tromey.com>
12142
12143         * varobj.c (varobj_set_visualizer): Use new_reference.
12144         * python/python.c (gdbpy_decode_line): Use new_reference.
12145         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
12146         new_reference.
12147
12148 2018-04-30  Tom Tromey  <tom@tromey.com>
12149
12150         * varobj.c (install_new_value): Use new_reference.
12151         * value.h (value_incref): Return void.  Swap intro comment with
12152         value_decref.
12153         * value.c (set_value_parent): Use new_reference.
12154         (value_incref): Return void.  Update intro comment.
12155         (release_value): Use new_reference.
12156         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
12157
12158 2018-04-30  Tom Tromey  <tom@tromey.com>
12159
12160         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
12161         * gdb_bfd.h (new_bfd_ref): Remove.
12162         (gdb_bfd_open): Update comment.
12163         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
12164         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
12165         (gdb_bfd_fdopenr): Use new_reference.
12166         * exec.c (exec_file_attach): Use new_reference.
12167
12168 2018-04-30  Tom Tromey  <tom@tromey.com>
12169
12170         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
12171         method.
12172
12173 2018-04-30  Tom Tromey  <tom@tromey.com>
12174
12175         * jit.c (jit_read_code_entry): Use type_align.
12176         * i386-tdep.c (i386_gdbarch_init): Don't call
12177         set_gdbarch_long_long_align_bit.
12178         * gdbarch.sh: Remove long_long_align_bit.
12179         * gdbarch.c, gdbarch.h: Rebuild.
12180         * arc-tdep.c (arc_type_align): New function.
12181         (arc_gdbarch_init): Use arc_type_align.  Don't call
12182         set_gdbarch_long_long_align_bit.
12183
12184 2018-04-30  Tom Tromey  <tom@tromey.com>
12185
12186         * rust-lang.c (rust_type_alignment): Remove.
12187         (rust_composite_type): Use type_align.
12188
12189 2018-04-30  Tom Tromey  <tom@tromey.com>
12190
12191         * NEWS: Mention Type.align.
12192         * python/py-type.c (typy_get_alignof): New function.
12193         (type_object_getset): Add "alignof".
12194
12195 2018-04-30  Tom Tromey  <tom@tromey.com>
12196
12197         PR exp/17095:
12198         * NEWS: Update.
12199         * std-operator.def (UNOP_ALIGNOF): New operator.
12200         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
12201         New.
12202         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
12203         * c-lang.c (c_op_print_tab): Add alignof.
12204         * c-exp.y (ALIGNOF): New token.
12205         (exp): Add "ALIGNOF" production.
12206         (ident_tokens): Add _Alignof and alignof.
12207
12208 2018-04-30  Tom Tromey  <tom@tromey.com>
12209
12210         * i386-tdep.c (i386_type_align): New function.
12211         (i386_gdbarch_init): Update.
12212         * gdbarch.sh (type_align): New method.
12213         * gdbarch.c, gdbarch.h: Rebuild.
12214         * arch-utils.h (default_type_align): Declare.
12215         * arch-utils.c (default_type_align): New function.
12216         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
12217         (struct type) <align_log2>: New field.
12218         <instance_flags>: Now a bitfield.
12219         (TYPE_RAW_ALIGN): New macro.
12220         (type_align, type_raw_align, set_type_align): Declare.
12221         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
12222         functions.
12223         * dwarf2read.c (quirk_rust_enum): Set type alignment.
12224         (get_alignment, maybe_set_alignment): New functions.
12225         (read_structure_type, read_enumeration_type, read_array_type)
12226         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
12227         (read_subrange_type, read_base_type): Set type alignment.
12228
12229 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
12230
12231         * dwarf2read.c (read_index_from_section): Use bool.
12232
12233 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
12234
12235         PR gdb/22950
12236         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
12237         with #ifdef.
12238
12239 2018-04-29  John Reiser  <jreiser@BitWagon.com>
12240
12241         PR build/22873
12242         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
12243         last step, and do it atomically.
12244
12245 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
12246
12247         * compile/compile-c-types.c (convert_int, convert_float):
12248         Update for C FE v1.
12249
12250 2018-04-27  Tom Tromey  <tom@tromey.com>
12251
12252         PR rust/22545:
12253         * rust-lang.c (rust_inclusive_range_type_p): New function.
12254         (rust_range): Handle inclusive ranges.
12255         (rust_compute_range): Likewise.
12256         * rust-exp.y (struct rust_op) <inclusive>: New field.
12257         (DOTDOTEQ): New constant.
12258         (range_expr): Add "..=" productions.
12259         (operator_tokens): Add "..=" token.
12260         (ast_range): Add "inclusive" parameter.
12261         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
12262         ranges.
12263         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
12264         bounds values.
12265         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
12266         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
12267         Update comments.
12268         * expprint.c (print_subexp_standard): Handle new bounds values.
12269         (dump_subexp_body_standard): Likewise.
12270
12271 2018-04-27  Tom Tromey  <tom@tromey.com>
12272
12273         * configure: Rebuild.
12274         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
12275         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
12276         "OVERRIDE".
12277         (class symbol_needs_eval_context): Likewise.
12278         * dwarf2read.c (mock_mapped_index::symbol_name_count)
12279         (mock_mapped_index::symbol_name_at): Use "override".  Remove
12280         "virtual".
12281         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
12282         "override".
12283         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
12284         * aarch64-tdep.c (instruction_reader::read): Use "override".
12285         (instruction_reader_test::read): Likewise.
12286         * arm-tdep.c (instruction_reader::read): Use "override".
12287         (instruction_reader_thumb::read): Likewise.
12288
12289 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
12290
12291         PR remote/9665
12292         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
12293         instead of remote_send.
12294         (remote_send): Remove.
12295
12296 2018-04-26  Pedro Alves  <palves@redhat.com>
12297
12298         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
12299         find_function_start_sal instead of find_pc_line.
12300
12301 2018-04-26  Pedro Alves  <palves@redhat.com>
12302
12303         * breakpoint.c (set_breakpoint_location_function): Handle
12304         mst_data_gnu_ifunc.
12305         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
12306         * elfread.c (elf_symtab_read): Give data symbols with
12307         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
12308         (elf_rel_plt_read): Update comment.
12309         * linespec.c (convert_linespec_to_sals): Handle
12310         mst_data_gnu_ifunc.
12311         (minsym_found): Handle mst_data_gnu_ifunc.
12312         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
12313         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
12314         * parse.c (find_minsym_type_and_address): Handle
12315         mst_data_gnu_ifunc.
12316         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
12317         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
12318         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
12319         comment.
12320         <mst_data_gnu_ifunc>: New enumerator.
12321
12322 2018-04-26  Pedro Alves  <palves@redhat.com>
12323
12324         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
12325         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
12326         'want_trampoline' parameter by a lookup_msym_prefer parameter.
12327         Handle it.
12328         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
12329         (lookup_minimal_symbol_by_pc): Adjust.
12330         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
12331         (lookup_solib_trampoline_symbol_by_pc): Adjust.
12332         * minsyms.h (lookup_msym_prefer): New enum.
12333         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
12334         parameter by a lookup_msym_prefer parameter.
12335
12336 2018-04-26  Pedro Alves  <palves@redhat.com>
12337
12338         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
12339         ends in "@plt" instead of looking at the symbol's section.
12340
12341 2018-04-26  Pedro Alves  <palves@redhat.com>
12342
12343         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
12344         all references.
12345         (find_pc_partial_function_gnu_ifunc): Rename to ...
12346         (find_pc_partial_function): ... this, and remove references to
12347         'is_gnu_ifunc_p'.
12348         (find_pc_partial_function): Delete old implementation.
12349         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
12350
12351 2018-04-26  Pedro Alves  <palves@redhat.com>
12352
12353         * linespec.c (struct bound_minimal_symbol_search_key): New.
12354         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
12355         skip first line if we found a GNU ifunc minimal symbol by name.
12356         (compare_msymbols): Change parameters to work with a destructured
12357         lhs minsym.
12358         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
12359         functions.
12360
12361 2018-04-26  Pedro Alves  <palves@redhat.com>
12362
12363         * breakpoint.c (set_breakpoint_location_function): Don't resolve
12364         ifunc targets here.  Instead, if we have an ifunc minsym, use its
12365         address/name.
12366         (add_location_to_breakpoint): Store the minsym and the objfile in
12367         the breakpoint location.
12368         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
12369         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
12370         Record the minsym in the sal.
12371         * symtab.h (symtab_and_line) <msymbol>: New field.
12372
12373 2018-04-26  Pedro Alves  <palves@redhat.com>
12374
12375         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
12376         unless we actually resolved the ifunc.
12377
12378 2018-04-26  Pedro Alves  <palves@redhat.com>
12379
12380         * c-exp.y (variable production): Prefer ifunc minsyms over
12381         regular function symbols.
12382         * symtab.c (find_gnu_ifunc): New function.
12383         * minsyms.h (lookup_msym_prefer): New enum.
12384         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
12385         parameter by a lookup_msym_prefer parameter.
12386         * symtab.h (find_gnu_ifunc): New declaration.
12387
12388 2018-04-26  Pedro Alves  <palves@redhat.com>
12389
12390         * blockframe.c (find_gnu_ifunc_target_type): New function.
12391         (find_function_type): New.
12392         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
12393         return a value with a memory address.
12394         (eval_call): For calls to GNU ifunc functions, try to find the
12395         type of the target function from the type that the resolver
12396         returns.
12397         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
12398         symbols.
12399         * infcall.c (find_function_return_type): Delete.
12400         (find_function_addr): Add 'function_type' parameter.  For calls to
12401         GNU ifunc functions, try to find the type of the target function
12402         from the type that the resolver returns, and return it via
12403         FUNCTION_TYPE.
12404         (call_function_by_hand_dummy): Adjust to use the function type
12405         returned by find_function_addr.
12406         (find_function_addr): Add 'function_type' parameter and move
12407         description here.
12408         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
12409         declarations.
12410
12411 2018-04-26  Pedro Alves  <palves@redhat.com>
12412
12413         * c-exp.y (variable production): Skip finding an alias for ifunc
12414         symbols.
12415
12416 2018-04-26  Pedro Alves  <palves@redhat.com>
12417
12418         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
12419
12420 2018-04-25  Pedro Alves  <palves@redhat.com>
12421
12422         * infcmd.c (kill_command): Print the pid as string, not the whole
12423         thread's ptid.  Add comment.  s/has been killed/killed/ in output
12424         message.
12425         * remote.c (remote_detach_1): Print the pid as string, not the
12426         whole thread's ptid.
12427
12428 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
12429             Sergio Durigan Junior  <sergiodj@redhat.com>
12430             Pedro Alves  <palves@redhat.com>
12431
12432         * infcmd.c (kill_command): Print message when inferior has
12433         been killed.
12434         * inferior.c (print_inferior_events): Remove 'static'.  Set as
12435         '1'.
12436         (add_inferior): Improve message printed when
12437         'print_inferior_events' is on.
12438         (exit_inferior): Remove message printed when
12439         'print_inferior_events' is on.
12440         (detach_inferior): Improve message printed when
12441         'print_inferior_events' is on.
12442         (initialize_inferiors): Use 'add_inferior_silent' to set
12443         'current_inferior_'.
12444         * inferior.h (print_inferior_events): Declare here as
12445         'extern'.
12446         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
12447         '[Detaching...]' messages when 'print_inferior_events' is on.
12448         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
12449         as prefix/suffix for messages.  Remove periods.  Fix erroneous
12450         'Detaching after fork from child...', replace it by '... from
12451         parent...'.
12452         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
12453         prefix/suffix when printing 'Detaching...' messages.  Print
12454         them when 'print_inferior_events' is on.
12455         * remote.c (remote_detach_1): Print message when detaching
12456         from inferior and '!is_fork_parent'.
12457
12458 2018-04-24  Tom Tromey  <tom@tromey.com>
12459
12460         * cli-out.h: Reindent.
12461
12462 2018-04-24  Tom Tromey  <tom@tromey.com>
12463
12464         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
12465         (cli_ui_out::do_field_string): Use fputs_filtered.
12466         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
12467
12468 2018-04-23  Tom Tromey  <tom@tromey.com>
12469
12470         * guile/scm-frame.c (gdbscm_frame_read_var): Use
12471         gdb::unique_xmalloc_ptr.
12472
12473 2018-04-23  Tom Tromey  <tom@tromey.com>
12474
12475         * configure: Rebuild.
12476
12477 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
12478
12479         PR gdb/23095
12480         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
12481         prepare_for_testing.  Set normal_bp to r_debug_state if target
12482         is bsd.
12483
12484 2018-04-21  Pedro Alves  <palves@redhat.com>
12485             Rajendra SY  <rajendra.sy@gmail.com>
12486
12487         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
12488         * remote.c (extended_remote_attach): In all-stop mode, mark the
12489         thread as executing.
12490
12491 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
12492
12493         * thread.c (thread_apply_all_command): Fix comment.
12494         (thread_command): Fix comment.
12495
12496 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
12497
12498         * common/tdesc.h (tdesc_create_feature): Remove xml filename
12499         parameter.
12500         * features/aarch64-core.c (create_feature_aarch64_core):
12501         Regenerate.
12502         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
12503         Likewise.
12504         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
12505         Likewise.
12506         * features/i386/32bit-avx512.c
12507         (create_feature_i386_32bit_avx512): Likewise.
12508         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
12509         Likewise.
12510         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
12511         Likewise.
12512         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
12513         Likewise.
12514         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
12515         Likewise.
12516         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
12517         Likewise.
12518         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
12519         Likewise.
12520         * features/i386/64bit-avx512.c
12521         (create_feature_i386_64bit_avx512): Likewise.
12522         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
12523         Likewise.
12524         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
12525         Likewise.
12526         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
12527         Likewise.
12528         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
12529         Likewise.
12530         * features/i386/64bit-segments.c
12531         (create_feature_i386_64bit_segments): Likewise.
12532         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
12533         Likewise.
12534         * features/i386/x32-core.c
12535         (create_feature_i386_x32_core): Likewise.
12536         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
12537         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
12538         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
12539         * target-descriptions.c: In generated code, don't pass xml
12540         filename.
12541
12542 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12543
12544         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
12545         (print_xml_feature::visit_post): Likewise.
12546         (print_xml_feature::visit): Likewise.
12547         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
12548         (print_xml_feature): Add new class.
12549         * regformats/regdat.sh: Null xmltarget on feature targets.
12550         * target-descriptions.c (struct target_desc): Add xmltarget.
12551         (maintenance_check_tdesc_xml_convert): Add unittest function.
12552         (tdesc_get_features_xml): Add function to get xml.
12553         (maintenance_check_xml_descriptions): Test xml generation.
12554         * xml-tdesc.c (string_read_description_xml): Add function.
12555         * xml-tdesc.h (string_read_description_xml): Add declaration.
12556
12557 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12558
12559         * features/Makefile: Add feature marker to targets with new style
12560         target descriptions.
12561         * regformats/aarch64.dat: Regenerate.
12562         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
12563         * regformats/i386/amd64-avx-linux.dat: Likewise.
12564         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
12565         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
12566         * regformats/i386/amd64-linux.dat: Likewise.
12567         * regformats/i386/amd64-mpx-linux.dat: Likewise.
12568         * regformats/i386/amd64.dat: Likewise.
12569         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
12570         * regformats/i386/i386-avx-linux.dat: Likewise.
12571         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
12572         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
12573         * regformats/i386/i386-linux.dat: Likewise.
12574         * regformats/i386/i386-mmx-linux.dat: Likewise.
12575         * regformats/i386/i386-mpx-linux.dat: Likewise.
12576         * regformats/i386/i386.dat: Likewise.
12577         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
12578         * regformats/i386/x32-avx-linux.dat: Likewise.
12579         * regformats/i386/x32-linux.dat: Likewise.
12580         * regformats/tic6x-c62x-linux.dat: Likewise.
12581         * regformats/tic6x-c64x-linux.dat: Likewise.
12582         * regformats/tic6x-c64xp-linux.dat: Likewise.
12583         * regformats/regdat.sh: Parse feature marker.
12584
12585 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12586
12587         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
12588         (tdesc_osabi_name): Likewise.
12589         * target-descriptions.c (tdesc_architecture_name): Add new
12590         function.
12591         (tdesc_osabi_name): Likewise.
12592
12593 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12594
12595         * common/tdesc.c (tdesc_predefined_type): Move to here.
12596         (tdesc_named_type): Likewise.
12597         (tdesc_create_vector): Likewise.
12598         (tdesc_create_struct): Likewise.
12599         (tdesc_set_struct_size): Likewise.
12600         (tdesc_create_union): Likewise.
12601         (tdesc_create_flags): Likewise.
12602         (tdesc_create_enum): Likewise.
12603         (tdesc_add_field): Likewise.
12604         (tdesc_add_typed_bitfield): Likewise.
12605         (tdesc_add_bitfield): Likewise.
12606         (tdesc_add_flag): Likewise.
12607         (tdesc_add_enum_value): Likewise.
12608         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
12609         (struct tdesc_type_vector): Likewise.
12610         (struct tdesc_type_field): Likewise.
12611         (struct tdesc_type_with_fields): Likewise.
12612         (tdesc_create_enum): Add declaration.
12613         (tdesc_add_typed_bitfield): Likewise.
12614         (tdesc_add_enum_value): Likewise.
12615         * target-descriptions.c (tdesc_type_field): Move from here.
12616         (tdesc_type_builtin): Likewise.
12617         (tdesc_type_vector): Likewise.
12618         (tdesc_type_with_fields): Likewise.
12619         (tdesc_predefined_types): Likewise.
12620         (tdesc_named_type): Likewise.
12621         (tdesc_create_vector): Likewise.
12622         (tdesc_create_struct): Likewise.
12623         (tdesc_set_struct_size): Likewise.
12624         (tdesc_create_union): Likewise.
12625         (tdesc_create_flags): Likewise.
12626         (tdesc_create_enum): Likewise.
12627         (tdesc_add_field): Likewise.
12628         (tdesc_add_typed_bitfield): Likewise.
12629         (tdesc_add_bitfield): Likewise.
12630         (tdesc_add_flag): Likewise.
12631         (tdesc_add_enum_value): Likewise.
12632         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
12633         (tdesc_add_typed_bitfield): Likewise.
12634         (tdesc_add_enum_value): Likewise.
12635
12636 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12637
12638         * common/tdesc.c (tdesc_feature::accept): Move to here.
12639         (tdesc_feature::operator==): Likewise.
12640         (tdesc_create_reg): Likewise.
12641         * common/tdesc.h (tdesc_type_kind): Likewise.
12642         (struct tdesc_type): Likewise.
12643         (struct tdesc_feature): Likewise.
12644         * regformats/regdat.sh: Create a feature.
12645         * target-descriptions.c (tdesc_type_kind): Move from here.
12646         (tdesc_type): Likewise.
12647         (tdesc_type_up): Likewise.
12648         (tdesc_feature): Likewise.
12649         (tdesc_create_reg): Likewise.
12650
12651 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12652
12653         * Makefile.in: Add arch/tdesc.c
12654         * common/tdesc.c: New file.
12655         * common/tdesc.h (tdesc_element_visitor): Move to here.
12656         (tdesc_element): Likewise.
12657         (tdesc_reg): Likewise.
12658         (tdesc_reg_up): Likewise.
12659         * regformats/regdef.h (reg): Add offset to constructors.
12660         * target-descriptions.c (tdesc_element_visitor): Move from here.
12661         (tdesc_element): Likewise.
12662         (tdesc_reg): Likewise.
12663         (tdesc_reg_up): Likewise.
12664
12665 2018-04-17  Tom Tromey  <tom@tromey.com>
12666
12667         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
12668         discriminant field.
12669
12670 2018-04-17  Tom Tromey  <tom@tromey.com>
12671
12672         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
12673
12674 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12675
12676         * symtab.c (print_symbol_info): Skip printing filename and line
12677         number when `last' is NULL.
12678         (symtab_symbol_info): Use empty string instead of NULL for first
12679         invocation of print_symbol_info.
12680         (rbreak_command): Pass NULL to `last' parameter of
12681         print_symbol_info.
12682
12683 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
12684
12685         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
12686         instead of nullptr.
12687
12688 2018-04-16  Pedro Alves  <palves@redhat.com>
12689
12690         * MAINTAINERS (sh): Remove.
12691         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
12692         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
12693         (ALLDEPFILES): Remove sh64-tdep.c.
12694         * NEWS: Mentions that support for SH-5/SH64 is removed.
12695         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
12696         (sh*-*-openbsd*): Ditto.
12697         (sh64-*-elf*): Remove.
12698         (sh*): Remove.
12699         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
12700         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
12701         * sh-tdep.c: No longer include "sh64-tdep.h".
12702         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
12703         * sh64-tdep.c, sh64-tdep.h: Remove files.
12704
12705 2018-04-16  Pedro Alves  <palves@redhat.com>
12706
12707         * MAINTAINERS: Remove m88k.
12708         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
12709         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
12710         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
12711         * NEWS: Mention that support for m88k was removed.
12712         * configure.host (m88*-*-*): Remove support.
12713         * configure.nat (m88k-*-*): Remove support.
12714         * configure.tgt (m88*-*-openbsd*): Remove.
12715         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
12716
12717 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
12718
12719         * configure.tgt (x86_tobjs): New variable.
12720         (amd64_tobjs, i386_tobjs): Use it.
12721
12722 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12723
12724         * symtab.c (print_symbol_info): Precede the symbol definition by
12725         the line number when available.
12726         * NEWS: Advertise this enhancement.
12727
12728 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12729
12730         * NEWS (New options): announce set/show record btrace cpu.
12731         * btrace.c: Include record-btrace.h.
12732         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
12733         the vendor is unknown.
12734         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
12735         Maybe overwrite the btrace configuration's cpu.
12736         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
12737         (btrace_fetch): Add cpu parameter.  Update callers.
12738         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
12739         Maybe overwrite the btrace configuration's cpu.  Skip enabling
12740         errata workarounds if the vendor is unknown.
12741         * python/py-record-btrace.c: Include record-btrace.h.
12742         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
12743         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
12744         * record-btrace.c (record_btrace_cpu_state_kind): New.
12745         (record_btrace_cpu): New.
12746         (set_record_btrace_cpu_cmdlist): New.
12747         (record_btrace_get_cpu): New.
12748         (require_btrace_thread, record_btrace_info)
12749         (record_btrace_resume_thread): Call record_btrace_get_cpu.
12750         (cmd_set_record_btrace_cpu_none): New.
12751         (cmd_set_record_btrace_cpu_auto): New.
12752         (cmd_set_record_btrace_cpu): New.
12753         (cmd_show_record_btrace_cpu): New.
12754         (_initialize_record_btrace): Initialize set/show record btrace cpu
12755         commands.
12756         * record-btrace.h (record_btrace_get_cpu): New.
12757
12758 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12759
12760         * record.c (set_record_command): Fix typo in message.
12761
12762 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12763
12764         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
12765
12766 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12767
12768         * infrun.c (process_event_stop_test): Call
12769         gdbarch_in_indirect_branch_thunk.
12770         * gdbarch.sh (in_indirect_branch_thunk): New.
12771         * gdbarch.c: Regenerated.
12772         * gdbarch.h: Regenerated.
12773         * x86-tdep.h: New.
12774         * x86-tdep.c: New.
12775         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
12776         (HFILES_NO_SRCDIR): Add x86-tdep.h.
12777         (ALLDEPFILES): Add x86-tdep.c.
12778         * arch-utils.h (default_in_indirect_branch_thunk): New.
12779         * arch-utils.c (default_in_indirect_branch_thunk): New.
12780         * i386-tdep: Include x86-tdep.h.
12781         (i386_in_indirect_branch_thunk): New.
12782         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
12783         function.
12784         * amd64-tdep: Include x86-tdep.h.
12785         (amd64_in_indirect_branch_thunk): New.
12786         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
12787
12788 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
12789
12790         PR gdb/23053
12791         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
12792         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
12793         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
12794         regression.
12795
12796 2018-04-12  Tom Tromey  <tom@tromey.com>
12797
12798         * rust-lang.c (rust_print_struct_def): Remove univariant code.
12799         (rust_evaluate_subexp): Likewise.
12800
12801 2018-04-12  Pedro Alves  <palves@redhat.com>
12802
12803         * procfs.c (procfs_detach): Make forward declaration's prototype
12804         match definition's protototype.
12805         (proc_get_LDT_entry): Remove stale do_cleanups call.
12806
12807 2018-04-12  Pedro Alves  <palves@redhat.com>
12808
12809         * target.h (target_ops::to_has_exited): Delete.
12810         (target_has_exited): Delete.
12811         * target-delegates.c: Regenerate.
12812
12813 2018-04-11  Pedro Alves  <palves@redhat.com>
12814
12815         * target.c (fileio_fh_t::t): Add comment.
12816         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
12817         (target_fileio_close): Handle a NULL target.
12818         (invalidate_fileio_fh): New.
12819         (target_close): Call it.
12820         * remote.c (remote_hostio_send_command): No longer check whether
12821         remote_desc is open.
12822
12823 2018-04-11  Pedro Alves  <palves@redhat.com>
12824
12825         * target.c (fileio_fh_t): Make it a named struct instead of a
12826         typedef.
12827         (fileio_fh_t::is_closed): New method.
12828         (DEF_VEC_O (fileio_fh_t)): Remove.
12829         (fileio_fhandles): Now a std::vector.
12830         (is_closed_fileio_fh): Delete.
12831         (acquire_fileio_fd): Adjust.  Rename parameters.
12832         (release_fileio_fd): Adjust.
12833         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
12834         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
12835         (target_fileio_close): Adjust.
12836
12837 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
12838
12839         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
12840         index.
12841
12842 2018-04-10  Pedro Alves  <palves@redhat.com>
12843
12844         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
12845         (scoped_finish_thread_state): New class.
12846         * infcmd.c (run_command_1): Use it instead of finish_thread_state
12847         cleanup.
12848         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
12849         (fetch_inferior_event, normal_stop): Likewise.
12850         * thread.c (finish_thread_state_cleanup): Delete.
12851
12852 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12853             Pedro Alves  <palves@redhat.com>
12854
12855         * value.c: Include "selftest.h" and "common/array-view.h".
12856         (struct range) <operator ==>: New.
12857         (test_ranges_contain): New.
12858         (check_ranges_vector): New.
12859         (test_insert_into_bit_range_vector): New.
12860         (_initialize_values): Register selftests.
12861         * common/array-view.h (operator==, operator!=): New.
12862
12863 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12864
12865         * common/gdb_vecs.h (unordered_remove): Add overload that takes
12866         an iterator.
12867         * inline-frame.c: Include <algorithm>.
12868         (struct inline_state): Add constructor.
12869         (inline_state_s): Remove.
12870         (DEF_VEC_O(inline_state_s)): Remove.
12871         (inline_states): Change type to std::vector.
12872         (find_inline_frame_state): Adjust to std::vector.
12873         (allocate_inline_frame_state): Remove.
12874         (clear_inline_frame_state): Adjust to std::vector.
12875         (skip_inline_frames): Adjust to std::vector.
12876
12877 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12878
12879         * tracepoint.h (struct trace_state_variable): Add constructor.
12880         <name>: Change type to std::string.
12881         * tracepoint.c (tsv_s): Remove.
12882         (DEF_VEC_O(tsv_s)): Remove.
12883         (tvariables): Change to std::vector.
12884         (create_trace_state_variable): Adjust to std::vector.
12885         (find_trace_state_variable): Likewise.
12886         (find_trace_state_variable_by_number): Likewise.
12887         (delete_trace_state_variable): Likewise.
12888         (trace_variable_command): Adjust to std::string.
12889         (delete_trace_variable_command): Likewise.
12890         (tvariables_info_1): Adjust to std::vector.
12891         (save_trace_state_variables): Likewise.
12892         (start_tracing): Likewise.
12893         (merge_uploaded_trace_state_variables): Adjust to std::vector
12894         and std::string.
12895         * target.h (struct target_ops)
12896         <to_download_trace_state_variable>: Pass reference to
12897         trace_state_variable.
12898         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
12899         * target-delegates.c: Re-generate.
12900         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
12901         (mi_tsv_deleted): Likewise.
12902         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
12903         * remote.c (remote_download_trace_state_variable): Change
12904         pointer to reference and adjust.
12905         * make-target-delegates (parse_argtypes): Handle references.
12906         (write_function_header): Likewise.
12907         (munge_type): Likewise.
12908
12909 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12910
12911         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12912         string_view-selftests.c.
12913         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
12914         testsuite.
12915         * unittests/basic_string_view/cons/char/1.cc: Likewise.
12916         * unittests/basic_string_view/cons/char/2.cc: Likewise.
12917         * unittests/basic_string_view/cons/char/3.cc: Likewise.
12918         * unittests/basic_string_view/element_access/char/1.cc:
12919         Likewise.
12920         * unittests/basic_string_view/element_access/char/empty.cc:
12921         Likewise.
12922         * unittests/basic_string_view/element_access/char/front_back.cc:
12923         Likewise.
12924         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
12925         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
12926         Likewise.
12927         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
12928         Likewise.
12929         * unittests/basic_string_view/modifiers/swap/char/1.cc:
12930         Likewise.
12931         * unittests/basic_string_view/operations/compare/char/1.cc:
12932         Likewise.
12933         * unittests/basic_string_view/operations/compare/char/13650.cc:
12934         Likewise.
12935         * unittests/basic_string_view/operations/copy/char/1.cc:
12936         Likewise.
12937         * unittests/basic_string_view/operations/data/char/1.cc:
12938         Likewise.
12939         * unittests/basic_string_view/operations/find/char/1.cc:
12940         Likewise.
12941         * unittests/basic_string_view/operations/find/char/2.cc:
12942         Likewise.
12943         * unittests/basic_string_view/operations/find/char/3.cc:
12944         Likewise.
12945         * unittests/basic_string_view/operations/find/char/4.cc:
12946         Likewise.
12947         * unittests/basic_string_view/operations/rfind/char/1.cc:
12948         Likewise.
12949         * unittests/basic_string_view/operations/rfind/char/2.cc:
12950         Likewise.
12951         * unittests/basic_string_view/operations/rfind/char/3.cc:
12952         Likewise.
12953         * unittests/basic_string_view/operations/substr/char/1.cc:
12954         Likewise.
12955         * unittests/basic_string_view/operators/char/2.cc: Likewise.
12956         * unittests/string_view-selftests.c: New file.
12957
12958 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12959
12960         * unittests/basic_string_view/capacity/1.cc: New file.
12961         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
12962         * unittests/basic_string_view/cons/char/1.cc: New file.
12963         * unittests/basic_string_view/cons/char/2.cc: New file.
12964         * unittests/basic_string_view/cons/char/3.cc: New file.
12965         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
12966         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
12967         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
12968         * unittests/basic_string_view/element_access/char/1.cc: New file.
12969         * unittests/basic_string_view/element_access/char/2.cc: New file.
12970         * unittests/basic_string_view/element_access/char/empty.cc: New file.
12971         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
12972         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
12973         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
12974         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
12975         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
12976         * unittests/basic_string_view/include.cc: New file.
12977         * unittests/basic_string_view/inserters/char/1.cc: New file.
12978         * unittests/basic_string_view/inserters/char/2.cc: New file.
12979         * unittests/basic_string_view/inserters/char/3.cc: New file.
12980         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
12981         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
12982         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
12983         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
12984         * unittests/basic_string_view/literals/types.cc: New file.
12985         * unittests/basic_string_view/literals/values.cc: New file.
12986         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
12987         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
12988         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
12989         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
12990         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
12991         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
12992         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
12993         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
12994         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
12995         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
12996         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
12997         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
12998         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
12999         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
13000         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
13001         * unittests/basic_string_view/operations/data/char/1.cc: New file.
13002         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
13003         * unittests/basic_string_view/operations/find/char/1.cc: New file.
13004         * unittests/basic_string_view/operations/find/char/2.cc: New file.
13005         * unittests/basic_string_view/operations/find/char/3.cc: New file.
13006         * unittests/basic_string_view/operations/find/char/4.cc: New file.
13007         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
13008         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
13009         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
13010         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
13011         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
13012         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
13013         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
13014         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
13015         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
13016         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
13017         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
13018         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
13019         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
13020         * unittests/basic_string_view/operators/char/2.cc: New file.
13021         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
13022         * unittests/basic_string_view/range_access/char/1.cc: New file.
13023         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
13024         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
13025         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
13026         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
13027         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
13028         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
13029         * unittests/basic_string_view/requirements/typedefs.cc: New file.
13030         * unittests/basic_string_view/typedefs.cc: New file.
13031         * unittests/basic_string_view/types/1.cc: New file.
13032
13033 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
13034
13035         * common/gdb_string_view.h: Remove libstdc++ implementation
13036         details, adjust to gdb reality.
13037         * common/gdb_string_view.tcc: Likewise.
13038         * cli/cli-script.c (struct string_view): Remove.
13039         (user_args) <m_args>: Change element type to gdb::string_view.
13040         (user_args::insert_args): Adjust.
13041
13042 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
13043
13044         * common/gdb_string_view.h: New file.
13045         * common/gdb_string_view.tcc: New file.
13046
13047 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
13048
13049         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
13050         * configure: Re-generate.
13051
13052 2018-04-09  Pedro Alves  <palves@redhat.com>
13053
13054         * gdbarch.sh: Include "observable.h" instead of "observer.h".
13055         (set_target_gdbarch): Call
13056         gdb::observers::architecture_changed.notify instead of
13057         observer_notify_architecture_changed.
13058
13059 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13060
13061         * tracepoint.c (struct current_traceframe_cleanup): Remove.
13062         (do_restore_current_traceframe_cleanup): Remove.
13063         (restore_current_traceframe_cleanup_dtor): Remove.
13064         (make_cleanup_restore_current_traceframe): Remove.
13065         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
13066         New.
13067         * tracepoint.h (struct scoped_restore_current_traceframe): New.
13068         * infrun.c (fetch_inferior_event): Use
13069         scoped_restore_current_traceframe.
13070
13071 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13072
13073         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
13074         Remove.
13075         <n_allocated_type_units>: Remove.
13076         <all_type_units>: Change to std::vector.
13077         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
13078         to std::vector change.
13079         (dwarf2_per_objfile::get_cutu): Likewise.
13080         (dwarf2_per_objfile::get_tu): Likewise.
13081         (create_signatured_type_table_from_index): Likewise.
13082         (create_signatured_type_table_from_debug_names): Likewise.
13083         (dw2_symtab_iter_next): Likewise.
13084         (dw2_print_stats): Likewise.
13085         (dw2_expand_all_symtabs): Likewise.
13086         (dw2_expand_marked_cus): Likewise.
13087         (dw2_debug_names_iterator::next): Likewise.
13088         (dwarf2_initialize_objfile): Likewise.
13089         (add_signatured_type_cu_to_table): Likewise.
13090         (create_all_type_units): Likewise.
13091         (add_type_unit): Likewise.
13092         (struct tu_abbrev_offset): Add constructor.
13093         (build_type_psymtabs_1): Adjust to std::vector change.
13094         (print_tu_stats): Likewise.
13095         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
13096         (write_debug_names): Likewise.
13097
13098 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13099
13100         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
13101         Make an std::vector.
13102         <n_comp_units>: Remove.
13103         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
13104         to std::vector change.
13105         (dwarf2_per_objfile::get_cutu): Likewise.
13106         (dwarf2_per_objfile::get_cu): Likewise.
13107         (create_cus_from_index): Likewise.
13108         (create_addrmap_from_index): Likewise.
13109         (create_addrmap_from_aranges): Likewise.
13110         (dwarf2_read_index): Likewise.
13111         (dw2_find_last_source_symtab): Likewise.
13112         (dw2_map_symtabs_matching_filename): Likewise.
13113         (dw2_symtab_iter_next): Likewise.
13114         (dw2_print_stats): Likewise.
13115         (dw2_expand_all_symtabs): Likewise.
13116         (dw2_expand_symtabs_with_fullname): Likewise.
13117         (dw2_expand_marked_cus): Likewise.
13118         (dw2_map_symbol_filenames): Likewise.
13119         (create_cus_from_debug_names): Likewise.
13120         (dwarf2_read_debug_names): Likewise.
13121         (dw2_debug_names_iterator::next): Likewise.
13122         (dwarf2_initialize_objfile): Likewise.
13123         (set_partial_user): Likewise.
13124         (dwarf2_build_psymtabs_hard): Likewise.
13125         (read_comp_units_from_section): Remove arguments, adjust to
13126         std::vector change.
13127         (create_all_comp_units): Adjust to std::vector and
13128         read_comp_units_from_section changes.
13129         (dwarf2_find_containing_comp_unit): Adjust to std::vector
13130         change.
13131         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
13132         (psyms_seen_size): Likewise.
13133         (write_gdbindex): Likewise.
13134         (write_debug_names): Likewise.
13135
13136 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13137
13138         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
13139         with dwarf2_per_objfile.
13140         (create_cus_from_index): Likewise.
13141         (create_signatured_type_table_from_index): Likewise.
13142         (dwarf2_read_index): Likewise.
13143         (dwarf2_initialize_objfile): Likewise.
13144         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
13145         per_cu rather than get_dwarf2_per_objfile.
13146
13147 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13148
13149         * dwarf2read.h (struct signatured_type): Forward declare.
13150         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
13151         New methods.
13152         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
13153         (dw2_get_cutu): ...this.
13154         (dwarf2_per_objfile::get_cu): Rename from...
13155         (dw2_get_cu): ...this.
13156         (dwarf2_per_objfile::get_tu): New.
13157         (create_addrmap_from_index): Adjust.
13158         (create_addrmap_from_aranges): Adjust.
13159         (dw2_find_last_source_symtab): Adjust.
13160         (dw2_map_symtabs_matching_filename): Adjust.
13161         (dw2_symtab_iter_next): Adjust.
13162         (dw2_print_stats): Adjust.
13163         (dw2_expand_all_symtabs): Adjust.
13164         (dw2_expand_symtabs_with_fullname): Adjust.
13165         (dw2_expand_marked_cus): Adjust.
13166         (dw_expand_symtabs_matching_file_matcher): Adjust.
13167         (dw2_map_symbol_filenames): Adjust.
13168         (dw2_debug_names_iterator::next): Adjust.
13169         (dwarf2_initialize_objfile): Adjust.
13170         (set_partial_user): Adjust.
13171         (dwarf2_build_psymtabs_hard): Adjust.
13172
13173 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13174
13175         * dwarf2read.c (create_signatured_type_table_from_debug_names):
13176         Remove unused variables.
13177         (dw2_map_symtabs_matching_filename): Likewise.
13178         (dwarf2_record_block_ranges): Likewise.
13179         (dwarf2_read_addr_index): Likewise.
13180         (follow_die_offset): Likewise.
13181
13182 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13183
13184         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
13185         to symbol_file_add_main.
13186
13187 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13188
13189         PR mi/22299
13190         * mi/mi-console.c (do_fputc_async_safe): New.
13191         (mi_console_file::write_async_safe): New.
13192         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
13193         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
13194         New.
13195         * ui-file.c (ui_file::putstrn): Adjust call to
13196         fputstrn_unfiltered.
13197         * utils.c (printchar): Replace do_fputs and do_fprintf
13198         parameters by do_fputc.
13199         (fputstr_filtered): Adjust call to printchar.
13200         (fputstr_unfiltered): Likewise.
13201         (fputstrn_filtered): Likewise.
13202         (fputstrn_unfiltered): Add do_fputc parameter, pass to
13203         printchar.
13204         * utils.h (do_fputc_ftype): New typedef.
13205         (fputstrn_unfiltered): Add do_fputc parameter.
13206
13207 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13208
13209         * regformats/i386/i386-avx.dat: Remove.
13210
13211 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
13212
13213         PR gdb/22979
13214         * amd64-tdep.c (amd64_none_init_abi): New function.
13215         (amd64_x32_none_init_abi): New function.
13216         (_initialize_amd64_tdep): Register handlers for x86-64 and
13217         x64_32 with GDB_OSABI_NONE.
13218         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
13219         GDB_OSABI_NONE osabi.
13220
13221 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
13222
13223         PR gdb/22980
13224         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
13225         GDB_OSABI_NONE.
13226         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
13227         * osabi.c (gdb_osabi_names): Add "unknown" entry.
13228
13229 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
13230
13231         * common/byte-vector.h (char_vector): New type.
13232         * target.h (target_read_alloc): Return
13233         gdb::optional<byte_vector>.
13234         (target_read_stralloc): Return gdb::optional<char_vector>.
13235         (target_get_osdata): Return gdb::optional<char_vector>.
13236         * target.c (target_read_alloc_1): Templatize.  Replacement
13237         manual memory management with vector.
13238         (target_read_alloc): Change return type, adjust.
13239         (target_read_stralloc): Change return type, adjust.
13240         (target_get_osdata): Change return type, adjust.
13241         * auxv.c (struct auxv_info) <length>: Remove.
13242         <data>: Change type to gdb::optional<byte_vector>.
13243         (auxv_inferior_data_cleanup): Free auxv_info with delete.
13244         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
13245         (target_auxv_search): Adjust.
13246         (fprint_target_auxv): Adjust.
13247         * avr-tdep.c (avr_io_reg_read_command): Adjust.
13248         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
13249         (linux_make_corefile_notes): Adjust.
13250         * osdata.c (get_osdata): Adjust.
13251         * remote.c (remote_get_threads_with_qxfer): Adjust.
13252         (remote_memory_map): Adjust.
13253         (remote_traceframe_info): Adjust.
13254         (btrace_read_config): Adjust.
13255         (remote_read_btrace): Adjust.
13256         (remote_pid_to_exec_file): Adjust.
13257         * solib-aix.c (solib_aix_get_library_list): Adjust.
13258         * solib-dsbt.c (decode_loadmap): Don't free buf.
13259         (dsbt_get_initial_loadmaps): Adjust.
13260         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
13261         * solib-target.c (solib_target_current_sos): Adjust.
13262         * tracepoint.c (sdata_make_value): Adjust.
13263         * xml-support.c (xinclude_start_include): Adjust.
13264         (xml_fetch_content_from_file): Adjust.
13265         * xml-support.h (xml_fetch_another): Change return type.
13266         (xml_fetch_content_from_file): Change return type.
13267         * xml-syscall.c (xml_init_syscalls_info): Adjust.
13268         * xml-tdesc.c (file_read_description_xml): Adjust.
13269         (fetch_available_features_from_target): Change return type.
13270         (target_fetch_description_xml): Adjust.
13271         (target_read_description_xml): Adjust.
13272
13273 2018-04-06  Tom Tromey  <tom@tromey.com>
13274
13275         * value.c (~value): Update.
13276         (struct value) <contents>: Now unique_xmalloc_ptr.
13277         (value_contents_bits_eq, allocate_value_contents)
13278         (value_contents_raw, value_contents_all_raw)
13279         (value_contents_for_printing, value_contents_for_printing_const)
13280         (set_value_enclosing_type): Update.
13281
13282 2018-04-06  Tom Tromey  <tom@tromey.com>
13283
13284         * value.c (range_s): Remove typedef, VEC.
13285         (struct range): Add operator<.
13286         (range_lessthan): Remove.
13287         (ranges_contain): Change type.
13288         (~value): Update.
13289         (struct value) <unavailable, optimized_out>: Now std::vector.
13290         (value_entirely_available)
13291         (value_entirely_covered_by_range_vector)
13292         (value_entirely_unavailable, value_entirely_optimized_out):
13293         Update.
13294         (insert_into_bit_range_vector): Change argument type.
13295         (find_first_range_overlap): Likewise.
13296         (struct ranges_and_idx, value_contents_bits_eq)
13297         (require_not_optimized_out, require_available): Update.
13298         (ranges_copy_adjusted): Change argument types.
13299         (value_optimized_out, value_copy, value_fetch_lazy): Update.
13300
13301 2018-04-06  Tom Tromey  <tom@tromey.com>
13302
13303         * value.c (~value): Update.
13304         (struct value) <parent>: Now a value_ref_ptr.
13305         (value_parent, set_value_parent, value_address, value_copy):
13306         Update.
13307
13308 2018-04-06  Tom Tromey  <tom@tromey.com>
13309
13310         * value.c (struct value): Add constructor, destructor, and member
13311         initializers.
13312         (allocate_value_lazy, value_decref): Update.
13313
13314 2018-04-06  Tom Tromey  <tom@tromey.com>
13315
13316         * value.c (struct value) <released, next>: Remove.
13317         (all_values): Now a std::vector.
13318         (allocate_value_lazy): Update.
13319         (value_next): Remove.
13320         (value_mark, value_free_to_mark, release_value)
13321         (value_release_to_mark): Update.
13322
13323 2018-04-06  Tom Tromey  <tom@tromey.com>
13324
13325         * value.h (fetch_subexp_value, value_release_to_mark): Update.
13326         (free_value_chain): Remove.
13327         * value.c (free_value_chain): Remove.
13328         (value_release_to_mark): Return a std::vector.
13329         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
13330         std::vector.
13331         (check_condition): Update.
13332         * eval.c (fetch_subexp_value): Change "val_chain" to a
13333         std::vector.
13334         * breakpoint.c (update_watchpoint): Update.
13335         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
13336
13337 2018-04-06  Tom Tromey  <tom@tromey.com>
13338
13339         * value.h (free_all_values): Remove.
13340         * value.c (free_all_values): Remove.
13341
13342 2018-04-06  Tom Tromey  <tom@tromey.com>
13343
13344         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
13345         (value_history_chain, value_history_count): Remove.
13346         (value_history): New global.
13347         (record_latest_value, access_value_history, show_values)
13348         (preserve_values): Update.
13349
13350 2018-04-06  Tom Tromey  <tom@tromey.com>
13351
13352         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
13353         * varobj.c (varobj_set_display_format, varobj_set_value)
13354         (install_default_visualizer, construct_visualizer)
13355         (install_new_value, ~varobj, varobj_get_value_type)
13356         (my_value_of_variable, varobj_editable_p): Update.
13357         * c-varobj.c (c_describe_child, c_value_of_variable)
13358         (cplus_number_of_children, cplus_describe_child): Update.
13359         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
13360         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
13361         (ada_value_of_variable, ada_value_is_changeable_p): Update.
13362
13363 2018-04-06  Tom Tromey  <tom@tromey.com>
13364
13365         * printcmd.c (last_examine_address): Change type to
13366         value_ref_ptr.
13367         (do_examine, x_command): Update.
13368
13369 2018-04-06  Tom Tromey  <tom@tromey.com>
13370
13371         * value.c (release_value): Update.
13372         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
13373         (struct bpstats) <val>: Now a value_ref_ptr.
13374         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
13375         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
13376         (~watchpoint, print_it_watchpoint, watch_command_1)
13377         (invalidate_bp_value_on_memory_change): Update.
13378
13379 2018-04-06  Tom Tromey  <tom@tromey.com>
13380
13381         * varobj.c (varobj_clear_saved_item)
13382         (update_dynamic_varobj_children, install_new_value, ~varobj):
13383         Update.
13384         * value.h (value_incref): Move declaration earlier.
13385         (value_decref): Rename from value_free.
13386         (struct value_ref_policy): New.
13387         (value_ref_ptr): New typedef.
13388         (struct value_deleter): Remove.
13389         (gdb_value_up): Remove typedef.
13390         (release_value): Change return type.
13391         (release_value_or_incref): Remove.
13392         * value.c (set_value_parent): Update.
13393         (value_incref): Change return type.
13394         (value_decref): Rename from value_free.
13395         (value_free_to_mark, free_all_values, free_value_chain): Update.
13396         (release_value): Return value_ref_ptr.
13397         (release_value_or_incref): Remove.
13398         (record_latest_value, set_internalvar, clear_internalvar):
13399         Update.
13400         * stack.c (info_frame_command): Don't call value_free.
13401         * python/py-value.c (valpy_dealloc, valpy_new)
13402         (value_to_value_object): Update.
13403         * printcmd.c (do_examine): Update.
13404         * opencl-lang.c (lval_func_free_closure): Update.
13405         * mi/mi-main.c (register_changed_p): Don't call value_free.
13406         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
13407         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
13408         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
13409         value_free.
13410         * guile/scm-value.c (vlscm_free_value_smob)
13411         (vlscm_scm_from_value): Update.
13412         * frame.c (frame_register_unwind, frame_unwind_register_signed)
13413         (frame_unwind_register_unsigned, get_frame_register_bytes)
13414         (put_frame_register_bytes): Don't call value_free.
13415         * findvar.c (address_from_register): Don't call value_free.
13416         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
13417         * dwarf2loc.c (entry_data_value_free_closure)
13418         (value_of_dwarf_reg_entry, free_pieced_value_closure)
13419         (dwarf2_evaluate_loc_desc_full): Update.
13420         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
13421         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
13422         (~watchpoint, watch_command_1)
13423         (invalidate_bp_value_on_memory_change): Update.
13424         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
13425
13426 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
13427
13428         PR gdb/23022
13429         * warning.m4: Add -Wno-error=deprecated-register.
13430         * configure: Re-generate.
13431
13432 2018-04-05  Tom Tromey  <tom@tromey.com>
13433
13434         * linespec.h: Remove include of "vec.h".
13435
13436 2018-04-05  Tom Tromey  <tom@tromey.com>
13437
13438         * linespec.c (typep): Remove typedef.
13439         (find_methods, find_superclass_methods): Take a std::vector.
13440         (find_method): Use std::vector.
13441
13442 2018-04-05  Tom Tromey  <tom@tromey.com>
13443
13444         * utils.c (compare_strings): Remove.
13445         * utils.h (compare_strings): Remove.
13446         * objc-lang.h (find_imps): Update.
13447         * objc-lang.c (find_methods): Take a std::vector.
13448         (uniquify_strings, find_imps): Likewise.
13449         * linespec.c (find_methods): Take a std::vector.
13450         (decode_objc): Use std::vector.
13451         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
13452         a std::vector.
13453         (find_method, find_function_symbols): Use std::vector.
13454
13455 2018-04-05  Tom Tromey  <tom@tromey.com>
13456
13457         * completer.c (completion_tracker::completion_tracker): Remove
13458         cast.
13459         (completion_tracker::discard_completions): Likewise.
13460         * breakpoint.c (ambiguous_names_p): Remove cast.
13461         * ada-lang.c (_initialize_ada_language): Remove cast.
13462         * utils.h (streq): Update.
13463         (streq_hash): Add new declaration.
13464         * utils.c (streq): Return bool.
13465         (streq_hash): New function.
13466
13467 2018-04-05  Tom Tromey  <tom@tromey.com>
13468
13469         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
13470         Remove a string copy.
13471
13472 2018-04-05  Tom Tromey  <tom@tromey.com>
13473
13474         * linespec.c (filter_results): Use std::vector.
13475         (decode_line_2, decode_line_full): Update.
13476
13477 2018-04-05  Tom Tromey  <tom@tromey.com>
13478
13479         * linespec.c (canonical_to_fullform): Return std::string.
13480         (filter_results): Update.
13481         (struct decode_line_2_item): Add constructor.
13482         <fullform, displayform>: Now std::string.
13483         (decode_line_2_compare_items): Now a std::sort comparator.
13484         (decode_line_2): Update.
13485
13486 2018-04-05  Tom Tromey  <tom@tromey.com>
13487
13488         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
13489         (unexpected_linespec_error): Update.
13490         (linespec_parse_basic, parse_linespec): Update.
13491
13492 2018-04-05  Tom Tromey  <tom@tromey.com>
13493
13494         * linespec.c (linespec_parse_basic): Reindent.
13495
13496 2018-04-05  Tom Tromey  <tom@tromey.com>
13497
13498         * minsyms.h (iterate_over_minimal_symbols): Update.
13499         * minsyms.c (iterate_over_minimal_symbols): Take a
13500         gdb::function_view.
13501         * linespec.c (struct collect_minsyms): Remove.
13502         (compare_msyms): Now a std::sort comparator.
13503         (add_minsym): Add parameters.
13504         (search_minsyms_for_name): Update.  Use std::vector.
13505
13506 2018-04-03  Tom Tromey  <tom@tromey.com>
13507
13508         * mipsread.c (read_alphacoff_dynamic_symtab): Use
13509         gdb::byte_vector.
13510
13511 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
13512
13513         * MAINTAINERS (Write After Approval): Add Weimin Pan.
13514
13515 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
13516
13517         PR gdb/16959
13518         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
13519         printing static type.
13520
13521 2018-04-01  Tom Tromey  <tom@tromey.com>
13522
13523         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
13524         (rs6000_xfer_shared_libraries): Update.
13525
13526 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
13527
13528         * common/gdb_vecs.h (char_ptr): Remove.
13529         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
13530
13531 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
13532
13533         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
13534         with std::vector.
13535         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
13536
13537 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
13538
13539         * tracepoint.h (struct uploaded_tp): Initialize fields.
13540         <actions, step_actions, cmd_strings>: Change type to
13541         std::vector<char *>.
13542         * tracepoint.c (get_uploaded_tp): Allocate with new.
13543         (free_uploaded_tps): Free with delete.
13544         (parse_tracepoint_definition): Adjust to std::vector change.
13545         * breakpoint.c (read_uploaded_action): Likewise.
13546         (create_tracepoint_from_upload): Likewise.
13547         * ctf.c (ctf_write_uploaded_tp): Likewise.
13548         (SET_ARRAY_FIELD): Likewise.
13549         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
13550
13551 2018-03-30  Tom Tromey  <tom@tromey.com>
13552
13553         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
13554         std::unique_ptr.
13555         (svr4_keep_data_in_core): Update.
13556         (svr4_read_so_list): Update.
13557
13558 2018-03-30  Tom Tromey  <tom@tromey.com>
13559
13560         * windows-nat.c (handle_output_debug_string, handle_exception):
13561         Update.
13562         * target.h (target_read_string): Update.
13563         * target.c (target_read_string): Change "string" to
13564         unique_xmalloc_ptr.
13565         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
13566         Update.
13567         * solib-frv.c (frv_current_sos): Update.
13568         * solib-dsbt.c (dsbt_current_sos): Update.
13569         * solib-darwin.c (darwin_current_sos): Update.
13570         * linux-thread-db.c (inferior_has_bug): Update.
13571         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
13572         Update.  Remove alloca.
13573         * ada-lang.c (ada_main_name): Update.
13574
13575 2018-03-30  Tom Tromey  <tom@tromey.com>
13576
13577         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
13578         (struct dwo_file_deleter): New.
13579         (dwo_file_up): New typedef.
13580         (open_and_init_dwo_file): Use dwo_file_up.
13581         (free_dwo_file_cleanup): Remove.
13582
13583 2018-03-30  Tom Tromey  <tom@tromey.com>
13584
13585         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
13586         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
13587
13588 2018-03-30  Tom Tromey  <tom@tromey.com>
13589
13590         * dwarf2read.c (class free_cached_comp_units): New class.
13591         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
13592         (free_cached_comp_units): Remove function.
13593
13594 2018-03-30  Tom Tromey  <tom@tromey.com>
13595
13596         * utils.h (make_cleanup_unpush_target): Remove.
13597         * inf-ptrace.c (struct target_unpusher): New.
13598         (target_unpush_up) New typedef.
13599         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
13600         target_unpush_up.
13601         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
13602
13603 2018-03-27  Tom Tromey  <tom@tromey.com>
13604
13605         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
13606
13607 2018-03-27  Pedro Alves  <palves@redhat.com>
13608             Tom Tromey  <tom@tromey.com>
13609
13610         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
13611         destructor.  Now a class.
13612         (gdb_readline_wrapper_cleanup): Remove function.
13613         (gdb_readline_wrapper): Remove cleanups.
13614
13615 2018-03-27  Tom Tromey  <tom@tromey.com>
13616
13617         * typeprint.h (struct type_print_options) <local_typedefs,
13618         global_typedefs>: Remove "struct" keyword.
13619         (class typedef_hash_table): New class.
13620         (recursively_update_typedef_hash, add_template_parameters)
13621         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
13622         (find_typedef_in_hash): Don't declare.
13623         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
13624         (typedef_hash_table::recursively_update): Rename from
13625         recursively_update_typedef_hash.  Now a member.
13626         (typedef_hash_table::add_template_parameters): Rename from
13627         add_template_parameters.  Now a member.
13628         (typedef_hash_table::typedef_hash_table): Now a constructor;
13629         rename from create_typedef_hash.
13630         (typedef_hash_table::~typedef_hash_table): Now a destructor;
13631         rename from free_typedef_hash.
13632         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
13633         (do_free_global_table): Remove.
13634         (typedef_hash_table::typedef_hash_table): New constructor; renamed
13635         from copy_type_recursive.
13636         (create_global_typedef_table): Remove.
13637         (typedef_hash_table::find_global_typedef): Now a member of
13638         typedef_hash_table.
13639         (typedef_hash_table::find_typedef): Rename from
13640         find_typedef_in_hash; now a member.
13641         (whatis_exp): Update.
13642         * extension.h (struct ext_lang_type_printers): Add constructor and
13643         destructor.
13644         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
13645         declare.
13646         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
13647         Now a constructor; rename from start_ext_lang_type_printers.
13648         (ext_lang_type_printers): Now a destructor; rename from
13649         free_ext_lang_type_printers.
13650         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
13651         Update.
13652         (c_type_print_base_struct_union): Update.  Remove cleanups.
13653
13654 2018-03-27  Tom Tromey  <tom@tromey.com>
13655
13656         * dwarf-index-write.c: Include <cmath>.
13657
13658 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
13659
13660         * NEWS: Add entry describing new "set|show varsize-limit" command.
13661         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
13662         command.
13663         * printcmd.c (_initialize_printcmd): Add "set var" alias of
13664         "set variable".
13665
13666 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
13667
13668         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
13669         dwarf-index-write.c
13670         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
13671         * dwarf-index-common.c: New file.
13672         * dwarf-index-common.h: New file.
13673         * dwarf-index-write.c: New file.
13674         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
13675         (struct dwarf2_section_info): Move from here.
13676         (dwarf2_section_info_def): Likewise.
13677         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
13678         (offset_type): Likewise.
13679         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
13680         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
13681         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
13682         (byte_swap): Likewise.
13683         (MAYBE_SWAP): Likewise.
13684         (dwarf2_per_cu_ptr): Likewise.
13685         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
13686         (struct tu_stats): Likewise.
13687         (struct dwarf2_per_objfile): Likewise.
13688         (struct dwarf2_per_cu_data): Likewise.
13689         (struct signatured_type): Likewise.
13690         (sig_type_ptr): Likewise.
13691         (DEF_VEC_P (sig_type_ptr)): Likewise.
13692         (INDEX4_SUFFIX): Likewise.
13693         (INDEX5_SUFFIX): Likewise.
13694         (DEBUG_STR_SUFFIX): Likewise.
13695         (dwarf2_read_section): Make non-static.
13696         (mapped_index_string_hash): Move from here.
13697         (dwarf5_djb_hash): Likewise.
13698         (file_write): Likewise.
13699         (class data_buf): Likewise.
13700         (struct symtab_index_entry): Likewise.
13701         (struct mapped_symtab): Likewise.
13702         (find_slot): Likewise.
13703         (hash_expand): Likewise.
13704         (add_index_entry): Likewise.
13705         (uniquify_cu_indices): Likewise.
13706         (class c_str_view): Likewise.
13707         (class c_str_view_hasher): Likewise.
13708         (class vector_hasher): Likewise.
13709         (write_hash_table): Likewise.
13710         (psym_index_map): Likewise.
13711         (struct addrmap_index_data): Likewise.
13712         (add_address_entry): Likewise.
13713         (add_address_entry_worker): Likewise.
13714         (write_address_map): Likewise.
13715         (symbol_kind): Likewise.
13716         (write_psymbols): Likewise.
13717         (struct signatured_type_index_data): Likewise.
13718         (write_one_signatured_type): Likewise.
13719         (recursively_count_psymbols): Likewise.
13720         (recursively_write_psymbols): Likewise.
13721         (class debug_names): Likewise.
13722         (check_dwarf64_offsets): Likewise.
13723         (psyms_seen_size): Likewise.
13724         (write_gdbindex): Likewise.
13725         (write_debug_names): Likewise.
13726         (assert_file_size): Likewise.
13727         (write_psymtabs_to_index): Likewise.
13728         (save_gdb_index_command): Likewise.
13729         (_initialize_dwarf2_read): Don't register the "save gdb-index"
13730         command.
13731         * dwarf2read.h: New file.
13732
13733 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
13734
13735         PR gdb/22670
13736         * dwarf2read.c (dwarf2_physname): Do not return the demangled
13737         symbol name if the CU's language stores symbol names in linkage
13738         format.
13739         * language.h (struct language_defn)
13740         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
13741         all instances of this struct.
13742
13743 2018-03-26  Tom Tromey  <tom@tromey.com>
13744
13745         * stack.c (backtrace_command_1): Remove verbose code.
13746
13747 2018-03-26  Tom Tromey  <tom@tromey.com>
13748
13749         * python/py-framefilter.c (py_print_type): Don't catch
13750         exceptions.  Return void.
13751         (py_print_value): Likewise.
13752         (py_print_single_arg): Likewise.
13753         (enumerate_args): Don't catch exceptions.
13754         (py_print_args): Likewise.
13755         (py_print_frame): Likewise.
13756         (gdbpy_apply_frame_filter): Catch exceptions here.
13757
13758 2018-03-26  Tom Tromey  <tom@tromey.com>
13759
13760         * stack.c (_initialize_stack): Remove trailing newlines from help
13761         text.  Add "Usage" line to "backtrace" help.
13762
13763 2018-03-26  Tom Tromey  <tom@tromey.com>
13764
13765         PR python/16486:
13766         * python/py-framefilter.c (py_print_args): Call wrap_hint.
13767
13768 2018-03-26  Tom Tromey  <tom@tromey.com>
13769
13770         * python/py-framefilter.c (py_print_single_arg): Return
13771         EXT_LANG_BT_ERROR from catch.
13772
13773 2018-03-26  Tom Tromey  <tom@tromey.com>
13774
13775         PR backtrace/15584:
13776         * stack.c (backtrace_command_1): Move some code into no-filters
13777         "if".
13778
13779 2018-03-26  Tom Tromey  <tom@tromey.com>
13780
13781         * python/py-framefilter.c (throw_quit_or_print_exception): New
13782         function.
13783         (gdbpy_apply_frame_filter): Use it.
13784
13785 2018-03-26  Tom Tromey  <tom@tromey.com>
13786
13787         PR cli/17716:
13788         * python/py-framefilter.c (py_print_type, py_print_value)
13789         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
13790         RETURN_MASK_ERROR.
13791
13792 2018-03-26  Tom Tromey  <tom@tromey.com>
13793
13794         * python/py-framefilter.c (enumerate_args): Use
13795         gdb::unique_xmalloc_ptr.
13796
13797 2018-03-26  Tom Tromey  <tom@tromey.com>
13798
13799         * python/py-framefilter.c (py_print_frame): Return
13800         EXT_LANG_BT_OK.
13801         (gdbpy_apply_frame_filter): Update comment.
13802         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
13803         Remove.
13804         <EXT_LANG_BT_NO_FILTERS>: Change value.
13805
13806 2018-03-26  Tom Tromey  <tom@tromey.com>
13807
13808         PR backtrace/15582:
13809         * stack.c (backtrace_command): Parse "hide" argument.
13810         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
13811         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
13812         constant.
13813
13814 2018-03-26  Tom Tromey  <tom@tromey.com>
13815
13816         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
13817         add "flags".
13818         (backtrace_command): Remove "fulltrace", add "flags".
13819
13820 2018-03-26  Tom Tromey  <tom@tromey.com>
13821
13822         * stack.c (backtrace_command): Rewrite command line parsing.
13823
13824 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
13825
13826         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
13827
13828 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
13829
13830         * filename-seen-cache.h: Add include guard.
13831
13832 2018-03-26  Keith Seitz  <keiths@redhat.com>
13833
13834         * symfile.c (place_section): Remove "struct" from section_addr_info
13835         in comment.
13836         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
13837         "struct" keyword from section_addr_info.
13838
13839 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
13840
13841         * regformats/regdef.h (reg): Add constructors.
13842
13843 2018-03-25  Pedro Alves  <palves@redhat.com>
13844
13845         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
13846         if then/else bodies in var_func_name extraction.
13847
13848 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
13849
13850         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
13851         lookup_minimal_symbol() to find symbol entry.
13852         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
13853
13854 2018-03-23  Keith Seitz  <keiths@redhat.com>
13855
13856         PR c++/22968
13857         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
13858         nested type definitions for C++, too.
13859
13860 2018-03-23  Tom Tromey  <tom@tromey.com>
13861
13862         * machoread.c (struct oso_el): Add a constructor.  Don't define as
13863         a typedef.
13864         (macho_register_oso): Remove.
13865         (macho_symtab_read): Take a std::vector.
13866         (oso_el_compare_name): Now a std::sort comparator.
13867         (macho_symfile_read_all_oso): Take a std::vector.
13868         (macho_symfile_read): Use std::vector.  Remove cleanups.
13869
13870 2018-03-22  Tom Tromey  <tom@tromey.com>
13871
13872         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
13873         (record_full_goto_bookmark): Use std::string.
13874
13875 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13876
13877         PR tdep/18295
13878         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
13879         a single mask.
13880
13881 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13882
13883         * rs6000-tdep.c (store_insn_p): New function.
13884         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
13885         and cr_reg to their unshifted values. Use store_insn_p to
13886         match LR saves using either R1 or fdata->alloca_reg. Use
13887         store_insn_p to match CR saves. Set alloca_reg_offset
13888         when alloca_reg and framep are set. Remove lr_reg shift
13889         when assigning to fdata->lr_register.
13890
13891 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
13892
13893         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
13894         command line args instead of emitting a warning.
13895
13896 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
13897
13898         * tracepoint.h (struct static_tracepoint_marker): Initialize
13899         fields, define default constructor, move constructor and move
13900         assignment, disable the rest.
13901         <str_id, extra>: Make std::string.
13902         (release_static_tracepoint_marker): Remove.
13903         (free_current_marker): Remove.
13904         * tracepoint.c (free_current_marker): Remove.
13905         (parse_static_tracepoint_marker_definition): Adjust to
13906         std::string, use new hex2str overload.
13907         (release_static_tracepoint_marker): Remove.
13908         (print_one_static_tracepoint_marker): Get marker by reference
13909         and adjust to std::string.
13910         (info_static_tracepoint_markers_command): Adjust to std::vector
13911         changes
13912         * target.h (static_tracepoint_marker_p): Remove typedef.
13913         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
13914         (struct target_ops) <to_static_tracepoint_marker_at>: Return
13915         bool.
13916         <to_static_tracepoint_markers_by_strid>: Return std::vector.
13917         * target-debug.h
13918         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
13919         (target_debug_print_std_vector_static_tracepoint_marker): New.
13920         (target_debug_print_struct_static_tracepoint_marker_p): Rename
13921         to...
13922         (target_debug_print_static_tracepoint_marker_p): ... this.
13923         * target-delegates.c: Re-generate.
13924         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
13925         Make std::string.
13926         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
13927         (decode_static_tracepoint_spec): Adjust to std::vector.
13928         (tracepoint_print_one_detail): Adjust to std::string.
13929         (strace_marker_decode_location): Adjust to std::string.
13930         (update_static_tracepoint): Adjust to std::string, remove call
13931         to release_static_tracepoint_marker.
13932         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
13933         Adjust to std::vector.
13934         * remote.c (remote_static_tracepoint_marker_at): Return bool.
13935         (remote_static_tracepoint_markers_by_strid): Adjust to
13936         std::vector.
13937         * common/rsp-low.h (hex2str): New overload with explicit count
13938         of bytes.
13939         * common/rsp-low.c (hex2str): New overload with explicit count
13940         of bytes.
13941         * unittests/rsp-low-selftests.c (test_hex2str): New function.
13942         (_initialize_rsp_low_selftests): Add test_hex2str test.
13943         * unittests/tracepoint-selftests.c
13944         (test_parse_static_tracepoint_marker_definition): Adjust to
13945         std::string.
13946
13947 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
13948
13949         * tracepoint.c (parse_static_tracepoint_marker_definition):
13950         Consider case where the definition is followed by more
13951         definitions.
13952         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13953         tracepoint-selftests.c.
13954         * unittests/tracepoint-selftests.c: New.
13955
13956 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13957
13958         * MAINTAINERS (Write After Approval): Add Pedro Franco de
13959         Carvalho.
13960
13961 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
13962
13963         * symtab.c (find_pc_sect_line): fixed indentation.
13964
13965 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
13966
13967         * symtab.c (find_pc_sect_line): now uses binary search.
13968
13969 2018-03-19  Tom Tromey  <tom@tromey.com>
13970
13971         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
13972         "IDENT" production.
13973
13974 2018-03-19  Pedro Alves  <palves@redhat.com>
13975             Tom Tromey  <tom@tromey.com>
13976
13977         * unittests/observable-selftests.c: New file.
13978         * common/observable.h: New file.
13979         * observable.h: New file.
13980         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
13981         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
13982         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
13983         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
13984         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
13985         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
13986         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
13987         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
13988         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
13989         python/py-breakpoint.c, python/py-finishbreakpoint.c,
13990         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
13991         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
13992         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
13993         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
13994         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
13995         tui/tui-interp.c, valops.c: Update all users.
13996         * tui/tui-hooks.c (tui_bp_created_observer)
13997         (tui_bp_deleted_observer, tui_bp_modified_observer)
13998         (tui_inferior_exit_observer, tui_before_prompt_observer)
13999         (tui_normal_stop_observer, tui_register_changed_observer):
14000         Remove.
14001         (tui_observers_token): New global.
14002         (attach_or_detach, tui_attach_detach_observers): New functions.
14003         (tui_install_hooks, tui_remove_hooks): Use
14004         tui_attach_detach_observers.
14005         * record-btrace.c (record_btrace_thread_observer): Remove.
14006         (record_btrace_thread_observer_token): New global.
14007         * observer.sh: Remove.
14008         * observer.c: Rename to observable.c.
14009         * observable.c (namespace gdb_observers): Define new objects.
14010         (observer_debug): Move into gdb_observers namespace.
14011         (struct observer, struct observer_list, xalloc_observer_list_node)
14012         (xfree_observer_list_node, generic_observer_attach)
14013         (generic_observer_detach, generic_observer_notify): Remove.
14014         (_initialize_observer): Update.
14015         Don't include observer.inc.
14016         * Makefile.in (generated_files): Remove observer.h, observer.inc.
14017         (clean mostlyclean): Likewise.
14018         (observer.h, observer.inc): Remove targets.
14019         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
14020         (COMMON_SFILES): Use observable.c, not observer.c.
14021         * .gitignore: Remove observer.h.
14022
14023 2018-03-18  Tom Tromey  <tom@tromey.com>
14024
14025         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
14026         gdb::def_vector.
14027         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
14028
14029 2018-03-17  Tom Tromey  <tom@tromey.com>
14030
14031         * auto-load.c (auto_load_objfile_script_1): Use std::string.
14032
14033 2018-03-17  Tom Tromey  <tom@tromey.com>
14034
14035         * target.c (class scoped_target_fd): New.
14036         (target_fileio_close_cleanup): Remove.
14037         (target_fileio_read_alloc_1): Use scoped_target_fd.
14038
14039 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
14040
14041         * silent-rules.mk: New.
14042         * Makefile.in: Include silent-rules.mk
14043         (srcdir, VPATH, top_srcdir): Move up.
14044         (COMPILE): Add ECHO_CXX.
14045         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
14046         (init.c): Add ECHO_INIT_C.
14047         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
14048         (version.c): Add ECHO_GEN.
14049         (printcmd.o): Add ECHO_CXX.
14050         (target-float.o): Add ECHO_CXX.
14051         (ada-exp.o): Add ECHO_CXX.
14052         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
14053         (insight$(EXEEXT)): Add ECHO_CXXLD.
14054         * gnulib/configure.ac: Add AM_SILENT_RULES.
14055         * gnulib/aclocal.m4: Re-generate.
14056         * gnulib/configure: Re-generate.
14057         * gnulib/import/Makefile.in: Re-generate.
14058
14059 2018-03-16  Tom Tromey  <tom@tromey.com>
14060
14061         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
14062         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
14063         * utils.c (do_free_section_addr_info)
14064         (make_cleanup_free_section_addr_info): Remove.
14065         * symfile.h (struct other_sections): Add constructor.
14066         (struct section_addr_info): Remove.
14067         (section_addr_info): New typedef.
14068         (struct sym_fns) <sym_offsets>: Change type of parameter.
14069         (build_section_addr_info_from_objfile)
14070         (relative_addr_info_to_section_offsets, addr_info_make_relative)
14071         (default_symfile_offsets, symbol_file_add)
14072         (symbol_file_add_from_bfd)
14073         (build_section_addr_info_from_section_table): Update.
14074         (alloc_section_addr_info, free_section_addr_info): Don't declare.
14075         * symfile.c (alloc_section_addr_info): Remove.
14076         (build_section_addr_info_from_section_table): Change return type.
14077         Update.
14078         (build_section_addr_info_from_bfd)
14079         (build_section_addr_info_from_objfile): Likewise.
14080         (free_section_addr_info): Remove.
14081         (relative_addr_info_to_section_offsets): Change type of "addrs".
14082         (addrs_section_compar): Now a std::sort comparator.
14083         (addrs_section_sort): Change return type.
14084         (addr_info_make_relative): Change type of "addrs".  Update.
14085         (default_symfile_offsets, syms_from_objfile_1)
14086         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
14087         (symbol_file_add_separate): Update.
14088         (symbol_file_add): Change type of "addrs".  Update.
14089         (add_symbol_file_command): Update.  Remove cleanups.
14090         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
14091         cleanups.
14092         * symfile-debug.c (debug_sym_offsets): Change type of "info".
14093         * solib.c (solib_read_symbols): Update.
14094         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
14095         * machoread.c (macho_symfile_offsets): Update.
14096         * jit.c (jit_bfd_try_read_symtab): Update.
14097
14098 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
14099
14100         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14101         unittests/utils-selftests.c.
14102         * unittests/utils-selftests.c: New file.
14103
14104 2018-03-14  Tom Tromey  <tom@tromey.com>
14105
14106         PR cli/14977:
14107         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
14108         for NULL.
14109
14110 2018-03-14  Tom Tromey  <tom@tromey.com>
14111
14112         PR cli/19918:
14113         * printcmd.c (printf_pointer): Allow "-" in format.
14114
14115 2018-03-14  Tom Tromey  <tom@tromey.com>
14116
14117         * printcmd.c (_initialize_printcmd): Add usage to printf.
14118
14119 2018-03-14  Yao Qi  <qiyao@sourceware.org>
14120
14121         * MAINTAINERS: Update my email address.
14122
14123 2018-03-13  Tom Tromey  <tom@tromey.com>
14124
14125         * machoread.c (macho_check_dsym): Change filenamep to a
14126         std::string*.
14127         (macho_symfile_read): Update.
14128         * symfile.c (load_command): Use std::string.
14129
14130 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
14131
14132         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
14133         to error message string.
14134         (riscv_register_name): Use xsnprintf instead of sprintf.
14135         (riscv_insn::fetch_instruction): Use gdb_assert instead of
14136         internal_error.
14137         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
14138         error.
14139         (riscv_push_dummy_call): Likewise.
14140
14141 2018-03-12  Tom Tromey  <tom@tromey.com>
14142
14143         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
14144         Use gdb::byte_vector.
14145         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
14146
14147 2018-03-12  Yao Qi  <yao.qi@linaro.org>
14148
14149         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
14150         parameter type to readable_regcache.
14151         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
14152         the declaration.
14153
14154 2018-03-11  Tom Tromey  <tom@tromey.com>
14155
14156         * dwarf2read.c (struct nextfield): Add initializers.
14157         (struct nextfnfield): Remove.
14158         (struct fnfieldlist): Add initializers.  Remove "length" and
14159         "head", use std::vector.
14160         (struct decl_field_list): Remove.
14161         (struct field_info): Add initializers.
14162         <fields, baseclasses>: Now std::vector.
14163         <nbaseclasses, nfnfields, typedef_field_list_count,
14164         nested_types_list_count>: Remove.
14165         (dwarf2_add_field, dwarf2_add_type_defn)
14166         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
14167         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
14168         (process_structure_scope): Update.
14169
14170 2018-03-11  Tom Tromey  <tom@tromey.com>
14171
14172         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
14173         for use by std::sort.
14174         (build_type_psymtabs_1): Use std::vector.
14175
14176 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
14177
14178         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
14179         and LIBMPFR in the printed configuration.
14180
14181 2018-03-08  Tom Tromey  <tom@tromey.com>
14182
14183         * source.c (get_filename_and_charpos): Use scoped_fd.
14184         * nto-procfs.c (procfs_open_1): Use scoped_fd.
14185         (procfs_pidlist): Likewise.
14186         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
14187         (iterate_over_mappings): Likewise.
14188
14189 2018-03-08  Tom Tromey  <tom@tromey.com>
14190
14191         * infcall.c (struct call_return_meta_info)
14192         <stack_temporaries_enabled>: Remove.
14193         (get_call_return_value, call_function_by_hand_dummy): Update.
14194         * thread.c (disable_thread_stack_temporaries): Remove.
14195         (enable_thread_stack_temporaries): Remove.
14196         (thread_stack_temporaries_enabled_p): Return bool.
14197         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
14198         (get_last_thread_stack_temporary): Update.
14199         * eval.c (evaluate_subexp): Update.
14200         * gdbthread.h (class enable_thread_stack_temporaries): Now a
14201         class, not a function.
14202         (value_ptr, value_vec): Remove typedefs.
14203         (class thread_info) <stack_temporaries_enabled>: Now bool.
14204         <stack_temporaries>: Now a std::vector.
14205         (thread_stack_temporaries_enabled_p)
14206         (value_in_thread_stack_temporaries): Return bool.
14207
14208 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
14209
14210         * remote.c (putpkt_binary): Fix omitted bytes reporting.
14211         (getpkt_or_notif_sane_1): Likewise.
14212
14213 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
14214
14215         * build-id.c (build_id_to_debug_bfd): Use std::string.
14216
14217 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
14218
14219         * build-id.c (find_separate_debug_file_by_buildid): Return
14220         std::string.
14221         * build-id.h (find_separate_debug_file_by_buildid): Return
14222         std::string.
14223         * coffread.c (coff_symfile_read): Adjust to std::string.
14224         * elfread.c (elf_symfile_read): Adjust to std::string.
14225         * symfile.c (separate_debug_file_exists): Change parameter to
14226         std::string.
14227         (find_separate_debug_file): Return std::string.
14228         (find_separate_debug_file_by_debuglink): Return std::string.
14229         * symfile.h (find_separate_debug_file_by_debuglink): Return
14230         std::string.
14231
14232 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
14233
14234         * common/xml-utils.c (xml_escape_text): Move code to...
14235         (xml_escape_text_append): ... this new function.
14236         * common/xml-utils.h (xml_escape_text_append): New declaration.
14237         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
14238         New function.
14239         (_initialize_xml_utils): register test_xml_escape_text_append as
14240         a selftest.
14241
14242 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
14243
14244         * defs.h: Remove MAX_REGISTER_SIZE.
14245         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
14246         asserts.
14247         * python/py-unwind.c (pyuw_sniffer): Likewise.
14248
14249 2018-03-07  Tom Tromey  <tom@tromey.com>
14250
14251         * linux-tdep.c (linux_info_proc): Update.
14252         * target.h (struct target_ops) <to_fileio_readlink>: Return
14253         optional<string>.
14254         (target_fileio_readlink): Return optional<string>.
14255         * remote.c (remote_hostio_readlink): Return optional<string>.
14256         * inf-child.c (inf_child_fileio_readlink): Return
14257         optional<string>.
14258         * target.c (target_fileio_readlink): Return optional<string>.
14259
14260 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
14261
14262         * regcache.c (cooked_read_test): Add riscv to the list of
14263         architectures that have a save_reggroup.
14264
14265 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
14266
14267         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
14268         value is not a dynamic class object.
14269
14270 2018-03-06  Tom Tromey  <tom@tromey.com>
14271
14272         * rust-exp.y: Formatting fixes.
14273
14274 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14275
14276         * riscv-tdep.c (riscv_register_name): Remove target description
14277         support.
14278         (riscv_gdbarch_init): Remove target description check.
14279
14280 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14281
14282         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
14283         comment.
14284         * riscv-tdep.h: Likewise.
14285
14286 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14287
14288         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
14289         (riscv_pseudo_register_write): Delete.
14290         (riscv_gdbarch_init): Remove all use of pseudo registers.
14291
14292 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
14293
14294         * record-btrace.c (btrace_print_lines): Replace cleanup
14295         parameter with RAII equivalents.
14296         (btrace_insn_history): Replace cleanup with RAII equivalents.
14297         * ui-out.h (make_cleanup_ui_out_list_begin_end,
14298         make_cleanup_ui_out_tuple_begin_end): Remove.
14299         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
14300         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
14301         make_cleanup_ui_out_list_begin_end): Remove.
14302
14303 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
14304
14305         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
14306         parameter types to std::vector.  Use bool.
14307         (record_btrace_wait): Replace VEC(tp_t) with
14308         std::vector<thread_info *>.
14309         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
14310
14311 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
14312
14313         * record-btrace.c (record_btrace_disable_callback): Remove.
14314         (struct scoped_btrace_disable): New.
14315         (record_btrace_open): Use scoped_btrace_disable.
14316
14317 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14318
14319         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
14320         reading values from registers.
14321
14322 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14323
14324         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
14325         where appropriate.
14326
14327 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14328
14329         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
14330         change parameter type.  Use GDB's print functions, and use
14331         core_addr_to_string where appropriate.
14332         (riscv_push_dummy_call): Use core_addr_to_string where
14333         appropriate, update call to riscv_print_arg_location, and reindent
14334         a few lines.
14335         (riscv_return_value): Update call to riscv_print_arg_location.
14336
14337 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14338             Tim Newsome <tim@sifive.com>
14339             Albert Ou <a0u@eecs.berkeley.edu>
14340             Darius Rad <darius@bluespec.com>
14341
14342         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
14343         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
14344         (ALLDEPFILES): Add riscv-tdep.c
14345         * configure.tgt: Add riscv support.
14346         * riscv-tdep.c: New file.
14347         * riscv-tdep.h: New file.
14348         * NEWS: Mention new target.
14349         * MAINTAINERS: Add entry for riscv.
14350
14351 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14352
14353         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
14354         fields within aggregates.
14355
14356 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
14357
14358         * record-btrace.c (btrace_print_lines): Change type of flags to
14359         gdb_disassembly_flags.
14360
14361 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
14362
14363         * fbsd-nat.c: Include "inf-ptrace.h".
14364         (USE_SIGTRAP_SIGINFO): Conditionally define.
14365         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
14366         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
14367         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
14368         function.
14369         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
14370         Likewise.
14371         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
14372         Likewise.
14373         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
14374         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
14375         "supports_stopped_by_hw_breakpoint" target methods.
14376
14377 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
14378
14379         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
14380         * fbsd-nat.c (debug_fbsd_nat): New variable.
14381         (show_fbsd_nat_debug): New function.
14382         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
14383         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
14384
14385 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
14386
14387         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
14388         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
14389         prototype.
14390         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
14391         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
14392         method.
14393
14394 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14395
14396         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
14397         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
14398
14399 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14400
14401         * charset.c (struct charset_vector): New.
14402         (charsets): Change type to charset_vector.
14403         (find_charset_names): Adjust.
14404         (add_one): Adjust.
14405         (_initialize_charset): Adjust.
14406
14407 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14408
14409         * progspace.h (struct program_space) <deleted_solibs>: Change
14410         type to std::vector<std::string>.
14411         * progspace.c (clear_program_space_solib_cache): Adjust.
14412         * breakpoint.c (print_solib_event): Adjust.
14413         (check_status_catch_solib): Adjust.
14414         * solib.c (update_solib_list): Adjust.
14415         * ui-out.h (class ui_out) <field_string>: New overload.
14416         * ui-out.c (ui_out::field_string): New overload.
14417
14418 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14419
14420         * progspace.h (struct program_space): Add constructor and
14421         destructor, initialize fields.
14422         (add_program_space): Remove.
14423         * progspace.c (add_program_space): Rename to...
14424         (program_space::program_space): ... this.
14425         (release_program_space): Rename to...
14426         (program_space::~program_space): ... this.
14427         (delete_program_space): Use delete to delete program_space.
14428         (initialize_progspace): Use new to allocate program_space.
14429         * inferior.c (add_inferior_with_spaces): Likewise.
14430         (clone_inferior_command): Likewise.
14431         * infrun.c (follow_fork_inferior): Likewise.
14432         (handle_vfork_child_exec_or_exit): Likewise.
14433
14434 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14435
14436         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
14437         (delim_string_to_char_ptr_vec): Return std::vector of
14438         gdb::unique_xmalloc_ptr.
14439         (dirnames_to_char_ptr_vec_append): Take std::vector of
14440         gdb::unique_xmalloc_ptr.
14441         (dirnames_to_char_ptr_vec): Return std::vector of
14442         gdb::unique_xmalloc_ptr.
14443         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
14444         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
14445         (delim_string_to_char_ptr_vec): Return an std::vector of
14446         gdb::unique_xmalloc_ptr, adjust the code.
14447         (dirnames_to_char_ptr_vec_append): Take an std::vector of
14448         gdb::unique_xmalloc_ptr, adjust the code.
14449         (dirnames_to_char_ptr_vec): Return an std::vector of
14450         gdb::unique_xmalloc_ptr, adjust the code.
14451         * auto-load.c (auto_load_safe_path_vec): Change type to
14452         std::vector of gdb::unique_xmalloc_ptr.
14453         (auto_load_expand_dir_vars): Return an std::vector of
14454         gdb::unique_xmalloc_ptr, adjust the code.
14455         (auto_load_safe_path_vec_update): Adjust.
14456         (filename_is_in_auto_load_safe_path_vec): Adjust.
14457         (auto_load_objfile_script_1): Adjust.
14458         * build-id.c (build_id_to_debug_bfd): Adjust.
14459         * linux-thread-db.c (thread_db_load_search): Adjust.
14460         * source.c (add_path): Adjust.
14461         (openp): Adjust.
14462         * symfile.c (find_separate_debug_file): Adjust.
14463         * utils.c (do_free_char_ptr_vec): Remove.
14464         (make_cleanup_free_char_ptr_vec): Remove.
14465
14466 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
14467
14468         PR gdb/22907
14469         * common/pathstuff.c: Conditionally include "<windows.h>".
14470
14471 2018-03-01  Georg Sauthoff  <mail@georg.so>
14472
14473         PR gdb/22888
14474         * gcore.in: Quote variables and switch interpreter to bash.
14475
14476 2018-03-01  Tom Tromey  <tom@tromey.com>
14477
14478         * dwarf2read.c (alloc_discriminant_info): Fix default_index
14479         assertion.  Add assertion for discriminant_index.
14480         (quirk_rust_enum): Use correct base type name in univariant case.
14481
14482 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
14483
14484         * record.c (get_call_history_modifiers): Return a
14485         record_print_flags.
14486         (cmd_record_call_history): Adjust.
14487         * record-btrace.c (record_btrace_call_history): Adjust.
14488         (record_btrace_call_history_range): Adjust.
14489         (record_btrace_call_history_from): Adjust.
14490         * target-debug.h (target_debug_print_record_print_flags): New.
14491         * target-delegates.c: Re-generate.
14492         * target.c (target_call_history): Change flags type.
14493         (target_call_history_from): Likewise.
14494         (target_call_history_range): Likewise.
14495         * target.h (struct target_ops) <target_call_history>: Likewise.
14496         (target_call_history_from): Likewise.
14497         (target_call_history_range): Likewise.
14498
14499 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
14500             Simon Marchi  <simon.marchi@polymtl.ca>
14501
14502         * common/common-utils.c: Include "sys/stat.h".
14503         (is_regular_file): Move here from "source.c"; change return
14504         type to "bool".
14505         * common/common-utils.h (is_regular_file): New prototype.
14506         * common/pathstuff.c (contains_dir_separator): New function.
14507         * common/pathstuff.h (contains_dir_separator): New prototype.
14508         * source.c: Don't include "sys/stat.h".
14509         (is_regular_file): Move to "common/common-utils.c".
14510
14511 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
14512
14513         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
14514         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
14515         * auto-load.c: Include "common/pathstuff.h".
14516         * common/common-def.h (current_directory): Move here.
14517         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
14518         function.
14519         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
14520         prototype.
14521         * common/pathstuff.c: New file.
14522         * common/pathstuff.h: New file.
14523         * compile/compile.c: Include "common/pathstuff.h".
14524         * defs.h (current_directory): Move to "common/common-defs.h".
14525         * dwarf2read.c: Include "common/pathstuff.h".
14526         * exec.c: Likewise.
14527         * guile/scm-safe-call.c: Likewise.
14528         * linux-thread-db.c: Likewise.
14529         * main.c: Likewise.
14530         * nto-tdep.c: Likewise.
14531         * objfiles.c: Likewise.
14532         * source.c: Likewise.
14533         * symtab.c: Likewise.
14534         * utils.c: Include "common/pathstuff.h".
14535         (gdb_realpath): Move to "common/pathstuff.c".
14536         (gdb_realpath_keepfile): Likewise.
14537         (gdb_abspath): Likewise.
14538         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
14539         (gdb_realpath_keepfile): Likewise.
14540         (gdb_abspath): Likewise.
14541
14542 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
14543
14544         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
14545         wildcard process pid for super_resume for kernels with a
14546         specific bug.
14547
14548 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
14549
14550         * compile/compile.c (get_args): Add additional comments
14551         explaining function.
14552
14553 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
14554             Tom Tromey  <tom@tromey.com>
14555
14556         * target.h (memory_write_request_s): Remove typedef.  Don't define
14557         VEC.
14558         (target_write_memory_blocks): Change argument to std::vector.
14559         (struct memory_write_request): Add constructor.
14560         * target-memory.c (compare_block_starting_address): Return bool.
14561         Change argument types.
14562         (claim_memory): Change arguments to use std::vector.
14563         (split_regular_and_flash_blocks, blocks_to_erase)
14564         (compute_garbled_blocks): Likewise.
14565         (cleanup_request_data, cleanup_write_requests_vector): Remove.
14566         (target_write_memory_blocks): Change argument to std::vector.
14567         * symfile.c (struct load_section_data): Add constructor and
14568         destructor.  Use std::vector for "requests".
14569         (struct load_progress_data): Add initializers.
14570         (load_section_callback): Update.  Use "new".
14571         (clear_memory_write_data): Remove.
14572         (generic_load): Update.
14573
14574 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
14575
14576         * arch/aarch64.h: Use common/tdesc.h.
14577
14578 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
14579
14580         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
14581         architecture with a 64-bit ABI.
14582
14583 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
14584
14585         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
14586         ahead of target description loading.
14587
14588 2018-02-26  Tom Tromey  <tom@tromey.com>
14589
14590         * stack.c (backtrace_command_1): Update.
14591         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
14592         of "flags".
14593         * python/py-framefilter.c (py_print_frame)
14594         (gdbpy_apply_frame_filter): Change type of "flags".
14595         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
14596         of "flags".
14597         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
14598         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
14599         * extension.h (enum frame_filter_flag): Rename from
14600         frame_filter_flags.
14601         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
14602         (apply_ext_lang_frame_filter): Change type of "flags".
14603         * extension.c (apply_ext_lang_frame_filter): Change type of
14604         "flags".
14605         * extension-priv.h (struct extension_language_ops)
14606         <apply_frame_filter>: Change type of "flags".
14607
14608 2018-02-26  Tom Tromey  <tom@tromey.com>
14609
14610         PR python/16497:
14611         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
14612         off-by-one in py_end computation.
14613         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
14614         PRINT_MORE_FRAMES.
14615         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
14616         constant.
14617
14618 2018-02-26  Tom Tromey  <tom@tromey.com>
14619
14620         * dwarf2read.c (struct variant_field): New.
14621         (struct nextfield) <variant>: New field.
14622         (dwarf2_add_field): Handle DW_TAG_variant_part.
14623         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
14624         discriminated union.
14625         (read_structure_type): Handle DW_TAG_variant_part.
14626         (handle_struct_member_die): New function, extracted from
14627         process_structure_scope.  Handle DW_TAG_variant.
14628         (process_structure_scope): Handle discriminated unions.  Call
14629         handle_struct_member_die.
14630
14631 2018-02-26  Tom Tromey  <tom@tromey.com>
14632
14633         * rust-lang.h (rust_last_path_segment): Declare.
14634         * rust-lang.c (rust_last_path_segment): Now public.  Change
14635         contract.
14636         (struct disr_info): Remove.
14637         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
14638         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
14639         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
14640         (rust_enum_p, rust_enum_variant): New function.
14641         (rust_underscore_fields): Remove "offset" parameter.
14642         (rust_print_enum): New function.
14643         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
14644         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
14645         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
14646         enums.
14647         (rust_internal_print_type): New function, from rust_print_type.
14648         Remove enum code.
14649         (rust_print_type): Call rust_internal_print_type.
14650         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
14651         Update enum handling.
14652         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
14653         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
14654         (rust_union_quirks): New functions.
14655         (process_full_comp_unit, process_full_type_unit): Call
14656         rust_union_quirks.
14657         (process_structure_scope): Update rust_unions if necessary.
14658
14659 2018-02-26  Tom Tromey  <tom@tromey.com>
14660
14661         * value.h (value_union_variant): Declare.
14662         * valops.c (value_union_variant): New function.
14663         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
14664         (struct discriminant_info): New.
14665         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
14666         enumerator.
14667         (struct main_type) <flag_discriminated_union>: New field.
14668
14669 2018-02-26  Tom Tromey  <tom@tromey.com>
14670
14671         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14672         unittests/unpack-selftests.c.
14673         * unittests/unpack-selftests.c: New file.
14674         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
14675
14676 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14677
14678         * dwarf2read.c (struct partial_die_info) <read>: New method.
14679         (read_partial_die): Remove the declaration.
14680         (load_partial_dies): Update.
14681         (partial_die_info::partial_die_info):
14682         (read_partial_die): Change it to partial_die_info::read.
14683
14684 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14685
14686         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
14687         (fixup_partial_die): Remove declaration.
14688         (scan_partial_symbols): Update.
14689         (partial_die_parent_scope): Likewise.
14690         (partial_die_full_name): Likewise.
14691         (fixup_partial_die): Change it to partial_die_info::fixup.
14692
14693 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14694
14695         * dwarf2read.c (read_partial_die): Update the declaration.
14696         (load_partial_dies): Caller update.
14697         (read_partial_die): Remove one argument abbrev_len.
14698
14699 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14700
14701         * dwarf2read.c (struct partial_die_info): Add ctor, delete
14702         assignment operator.
14703         (load_partial_dies): Use ctor and copy ctor.
14704         (read_partial_die): Update.
14705         (dwarf2_cu::find_partial_die): Use ctor.
14706
14707 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14708
14709         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
14710         (find_partial_die_in_comp_unit): Change it to
14711         dwarf2_cu::find_partial_die.
14712         (find_partial_die): Update.
14713
14714 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14715
14716         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
14717         is NULL.
14718
14719 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14720
14721         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
14722
14723 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
14724
14725         * arch/amd64.h: Use common/tdesc.h.
14726         * arch/i386.c: Likewise.
14727         * arch/i386.h: Likewise.
14728         * arch/tic6x.c: Likewise.
14729         * arch/tdesc.h: Move file from here...
14730         * common/tdesc.h: ...to here.
14731         * features/aarch64-core.c: Regenerate.
14732         * features/aarch64-fpu.c: Regenerate.
14733         * features/i386/32bit-avx.c: Regenerate.
14734         * features/i386/32bit-avx512.c: Regenerate.
14735         * features/i386/32bit-core.c: Regenerate.
14736         * features/i386/32bit-linux.c: Regenerate.
14737         * features/i386/32bit-mpx.c: Regenerate.
14738         * features/i386/32bit-pkeys.c: Regenerate.
14739         * features/i386/32bit-sse.c: Regenerate.
14740         * features/i386/64bit-avx.c: Regenerate.
14741         * features/i386/64bit-avx512.c: Regenerate.
14742         * features/i386/64bit-core.c: Regenerate.
14743         * features/i386/64bit-linux.c: Regenerate.
14744         * features/i386/64bit-mpx.c: Regenerate.
14745         * features/i386/64bit-pkeys.c: Regenerate.
14746         * features/i386/64bit-segments.c: Regenerate.
14747         * features/i386/64bit-sse.c: Regenerate.
14748         * features/i386/x32-core.c: Regenerate.
14749         * features/tic6x-c6xp.c: Regenerate.
14750         * features/tic6x-core.c: Regenerate.
14751         * features/tic6x-gp.c: Regenerate.
14752         * target-descriptions.c: Use common/tdesc.h.
14753         * target-descriptions.h: Likewise.
14754
14755 2018-02-24  Tom Tromey  <tom@tromey.com>
14756
14757         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
14758         (try_thread_db_load_from_dir, thread_db_load_search): Use
14759         std::string.
14760         (info_auto_load_libthread_db_compare): Return bool.  Change
14761         argument types.
14762         (info_auto_load_libthread_db): Use std::vector, std::string.
14763         Remove cleanups.
14764
14765 2018-02-24  Tom Tromey  <tom@tromey.com>
14766
14767         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
14768         std::string.
14769         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
14770         std::string*.
14771         * gdbarch.c: Rebuild.
14772         * gdbarch.h: Rebuild.
14773         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
14774         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
14775         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
14776         std::string*.
14777
14778 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
14779
14780         * gdbtypes.h (sect_offset): Change type to uint64_t.
14781         (sect_offset_str): New function.
14782         * dwarf2read.c (create_addrmap_from_aranges): Use
14783         sect_offset_str.
14784         (error_check_comp_unit_head): Likewise.
14785         (create_debug_type_hash_table): Likewise.
14786         (read_cutu_die_from_dwo): Likewise.
14787         (init_cutu_and_read_dies): Likewise.
14788         (init_cutu_and_read_dies_no_follow): Likewise.
14789         (process_psymtab_comp_unit_reader): Likewise.
14790         (partial_die_parent_scope): Likewise.
14791         (peek_die_abbrev): Likewise.
14792         (process_queue): Likewise.
14793         (dwarf2_physname): Likewise.
14794         (read_namespace_alias): Likewise.
14795         (read_import_statement): Likewise.
14796         (create_dwo_cu_reader): Likewise.
14797         (create_cus_hash_table): Likewise.
14798         (lookup_dwo_cutu): Likewise.
14799         (inherit_abstract_dies): Likewise.
14800         (read_func_scope): Likewise.
14801         (read_call_site_scope): Likewise.
14802         (dwarf2_add_member_fn): Likewise.
14803         (read_common_block): Likewise.
14804         (read_module_type): Likewise.
14805         (read_typedef): Likewise.
14806         (read_subrange_type): Likewise.
14807         (load_partial_dies): Likewise.
14808         (read_partial_die): Likewise.
14809         (find_partial_die): Likewise.
14810         (read_str_index): Likewise.
14811         (dwarf2_string_attr): Likewise.
14812         (build_error_marker_type): Likewise.
14813         (lookup_die_type): Likewise.
14814         (dump_die_shallow): Likewise.
14815         (follow_die_ref): Likewise.
14816         (dwarf2_fetch_die_loc_sect_off): Likewise.
14817         (dwarf2_fetch_constant_bytes): Likewise.
14818         (follow_die_sig): Likewise.
14819         (get_signatured_type): Likewise.
14820         (get_DW_AT_signature_type): Likewise.
14821         (dwarf2_find_containing_comp_unit): Likewise.
14822         (set_die_type): Likewise.
14823
14824 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
14825
14826         * arch/aarch64.c: Include "common-defs.h".
14827         * arch/amd64.c: Likewise.
14828         * arch/i386.c: Likewise.
14829
14830 2018-02-21  Tom Tromey  <tom@tromey.com>
14831
14832         * value.h: (extract_field_op): Update.
14833         * eval.c (extract_field_op): Return a const char *.
14834         * expression.h (parse_expression_for_completion): Update.
14835         * completer.c (complete_expression): Update.
14836         (add_struct_fields): Make fieldname const.
14837         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
14838         (mark_completion_tag, parse_exp_in_context_1): Update.
14839         (parse_expression_for_completion): Change "name" to
14840         unique_xmalloc_ptr*.
14841
14842 2018-02-21  Tom Tromey  <tom@tromey.com>
14843
14844         * infcall.c (call_function_by_hand_dummy): Use std::vector.
14845
14846 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14847
14848         * avr-tdep.c (avr_read_pc): Change parameter type to
14849         readable_regcache.
14850         * gdbarch.sh (read_pc): Likewise.
14851         * gdbarch.c: Re-generated.
14852         * gdbarch.h: Re-generated.
14853         * hppa-tdep.c (hppa_read_pc): Change parameter type to
14854         readable_regcache.
14855         * ia64-tdep.c (ia64_read_pc): Likewise.
14856         * mips-tdep.c (mips_read_pc): Likewise.
14857         * spu-tdep.c (spu_read_pc): Likewise.
14858
14859 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14860
14861         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
14862         * regcache-dump.c: New file.
14863         * regcache.c: Move register_dump to regcache-dump.c.
14864         (maintenance_print_registers): Likewise.
14865         (maintenance_print_raw_registers): Likewise.
14866         (maintenance_print_cooked_registers): Likewise.
14867         (maintenance_print_register_groups): Likewise.
14868         (maintenance_print_remote_registers): Likewise.
14869         (_initialize_regcache): Likewise.
14870         * regcache.h (register_dump): Moved from regcache.c.
14871
14872 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14873
14874         * regcache.c (regcache::regcache): Update.
14875         (regcache::invalidate): Move it to detached_regcache::invalidate.
14876         (get_thread_arch_aspace_regcache): Update.
14877         (regcache::raw_update): Update.
14878         (regcache::cooked_read): Remove some code.
14879         (regcache::cooked_read_value): Likewise.
14880         (regcache::raw_write): Remove assert on m_readonly_p.
14881         (regcache::raw_supply_integer): Move it to
14882         detached_regcache::raw_supply_integer.
14883         (regcache::raw_supply_zeroed): Likewise.
14884         * regcache.h (detached_regcache) <raw_supply_integer>: New
14885         declaration.
14886         <raw_supply_zeroed, invalidate>: Likewise.
14887         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
14888         <invalidate>: Likewise.
14889         <m_readonly_p>: Removed.
14890
14891 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14892
14893         * infcmd.c (get_return_value): Let stop_regs point to
14894         get_current_regcache.
14895         * regcache.c (regcache::regcache): Remove.
14896         (register_dump_reg_buffer): New class.
14897         (regcache_print): Adjust.
14898         * regcache.h (regcache): Remove constructors.
14899
14900 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14901
14902         * regcache.c (class register_dump): New class.
14903         (register_dump_regcache, register_dump_none): New class.
14904         (register_dump_remote, register_dump_groups): New class.
14905         (regcache_print): Update.
14906         * regcache.h (regcache_dump_what): Move it to regcache.c.
14907         (regcache) <dump>: Remove.
14908
14909 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14910
14911         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
14912          reg_buffer_rw *.
14913         (jit_unwind_reg_set_impl): Call raw_supply.
14914         (jit_frame_sniffer): Use reg_buffer_rw.
14915         * record-full.c (record_full_core_regbuf): Change its type.
14916         (record_full_core_open_1): Use reg_buffer_rw.
14917         (record_full_close): Likewise.
14918         (record_full_core_fetch_registers): Use regcache->raw_supply.
14919         (record_full_core_store_registers): Likewise.
14920         * regcache.c (regcache::get_register_status): Move it to
14921         reg_buffer.
14922         (regcache_raw_set_cached_value): Remove.
14923         (regcache::raw_set_cached_value): Remove.
14924         (regcache::raw_write): Call raw_supply.
14925         (regcache::raw_supply): Move it to reg_buffer_rw.
14926         * regcache.h (regcache_raw_set_cached_value): Remove.
14927         (reg_buffer_rw): New class.
14928
14929 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14930
14931         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
14932         readonly_detached_regcache.
14933         (dummy_frame_prev_register): Use regcache->cooked_read.
14934         * frame.c (frame_save_as_regcache): Change return type.
14935         (frame_pop): Update.
14936         * frame.h (frame_save_as_regcache): Update declaration.
14937         * inferior.h (get_infcall_suspend_state_regcache): Update
14938         declaration.
14939         * infrun.c (infcall_suspend_state) <registers>: use
14940         readonly_detached_regcache.
14941         (save_infcall_suspend_state): Don't use regcache_dup.
14942         (get_infcall_suspend_state_regcache): Change return type.
14943         * linux-fork.c (struct fork_info) <savedregs>: Change to
14944         readonly_detached_regcache.
14945         <pc>: New field.
14946         (fork_save_infrun_state): Don't use regcache_dup.
14947         (info_checkpoints_command): Adjust.
14948         * mi/mi-main.c (register_changed_p): Update declaration.
14949         (mi_cmd_data_list_changed_registers): Use
14950         readonly_detached_regcache.
14951         (register_changed_p): Change parameter type to
14952         readonly_detached_regcache.
14953         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
14954         readonly_detached_regcache.
14955         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
14956         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
14957         New.
14958         (regcache::save): Move it to reg_buffer.
14959         (regcache::restore): Change parameter type.
14960         (regcache_dup): Remove.
14961         * regcache.h (reg_buffer) <save>: New method.
14962         (readonly_detached_regcache): New class.
14963         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
14964         readonly_detached_regcache.
14965         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
14966
14967 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14968
14969         * frame.c (frame_save_as_regcache): Use regcache method save.
14970         (frame_pop): Use regcache method restore.
14971         * infrun.c (restore_infcall_suspend_state): Likewise.
14972         * linux-fork.c (fork_load_infrun_state): Likewise.
14973         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
14974         save.
14975         * regcache.c (regcache_save): Remove.
14976         (regcache::restore): More asserts.
14977         (regcache_cpy): Remove.
14978         * regcache.h (regcache_save): Remove the declaration.
14979         (regcache::restore): Move from private to public.
14980         Remove the friend declaration of regcache_cpy.
14981         (regcache_cpy): Remove declaration.
14982
14983 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14984
14985         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
14986         parameter type to 'readable_regcache *'.
14987         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
14988         * arm-tdep.c (arm_neon_quad_read): Likewise.
14989         (arm_pseudo_read): Likewise.
14990         * avr-tdep.c (avr_pseudo_register_read): Likewise.
14991         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
14992         * frv-tdep.c (frv_pseudo_register_read): Likewise.
14993         * gdbarch.c: Re-generated.
14994         * gdbarch.h: Re-generated.
14995         * gdbarch.sh (pseudo_register_read): Change parameter type to
14996         'readable_regcache *'.
14997         (pseudo_register_read_value): Likewise.
14998         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
14999         (h8300_pseudo_register_read): Likewise.
15000         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
15001         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
15002         (i386_pseudo_register_read_into_value): Likewise.
15003         (i386_pseudo_register_read_value): Likewise.
15004         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
15005         declaration.
15006         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
15007         * m32c-tdep.c (m32c_raw_read): Likewise.
15008         (m32c_read_flg): Likewise.
15009         (m32c_banked_register): Likewise.
15010         (m32c_banked_read): Likewise.
15011         (m32c_sb_read): Likewise.
15012         (m32c_part_read): Likewise.
15013         (m32c_cat_read): Likewise.
15014         (m32c_r3r2r1r0_read): Likewise.
15015         (m32c_pseudo_register_read): Likewise.
15016         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
15017         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
15018         (mep_pseudo_cr64_read): Likewise.
15019         (mep_pseudo_register_read): Likewise.
15020         * mips-tdep.c (mips_pseudo_register_read): Likewise.
15021         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
15022         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
15023         * regcache.c (regcache::raw_read): Move it to readable_regcache.
15024         (regcache::cooked_read): Likewise.
15025         (regcache::cooked_read_value): Likewise.
15026         (regcache_cooked_read_signed):
15027         (regcache::cooked_read): Likewise.
15028         * regcache.h (readable_regcache): New class.
15029         (regcache): Inherit readable_regcache.  Move some methods to
15030         readable_regcache.
15031         * rl78-tdep.c (rl78_pseudo_register_read): Change
15032         parameter type to 'readable_regcache *'.
15033         * rs6000-tdep.c (do_regcache_raw_read): Remove.
15034         (e500_pseudo_register_read): Change parameter type to
15035         'readable_regcache *'.
15036         (dfp_pseudo_register_read): Likewise.
15037         (vsx_pseudo_register_read): Likewise.
15038         (efpr_pseudo_register_read): Likewise.
15039         * s390-tdep.c (s390_pseudo_register_read): Likewise.
15040         * sh-tdep.c (sh_pseudo_register_read): Likewise.
15041         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
15042         (sh64_pseudo_register_read): Likewise.
15043         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
15044         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
15045         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
15046         (spu_pseudo_register_read): Likewise.
15047         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
15048         (xtensa_pseudo_register_read): Likewise.
15049
15050 2018-02-21  Yao Qi  <yao.qi@linaro.org>
15051
15052         * regcache.c (regcache::regcache): Call reg_buffer ctor.
15053         (regcache::arch): Move it to reg_buffer::arch.
15054         (regcache::register_buffer): Likewise.
15055         (regcache::assert_regnum): Likewise.
15056         (regcache::num_raw_registers): Likewise.
15057         * regcache.h (reg_buffer): New class.
15058         (regcache): Inherit reg_buffer.
15059
15060 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
15061
15062         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
15063         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
15064
15065 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
15066
15067         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
15068
15069 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
15070
15071         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
15072         (SFILES): Remove common/*.c files.
15073         (COMMON_OBS): Remove some *.o files built from common/*.c files.
15074         * common/common.host: Add common reference.
15075         * configure.ac: Likewise.
15076         * configure: Regenerate.
15077
15078 2018-02-16  Yao Qi  <yao.qi@linaro.org>
15079
15080         * block.c (block_namespace_info): Inherit allocate_on_obstack.
15081         (block_initialize_namespace): Use new.
15082         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
15083         (dwarf2_free_objfile): Use delete.
15084         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
15085         (copy_type_recursive): Use new.
15086         * gdb_obstack.h (allocate_on_obstack): New.
15087
15088 2018-02-15  Yao Qi  <yao.qi@linaro.org>
15089
15090         PR gdb/22849
15091         * inferior.c (exit_inferior_1): Reset inf->control.
15092
15093 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
15094
15095         * ada-lang.c (ada_to_fixed_value_create): Delete advance
15096         declaration.
15097
15098 2018-02-14  Pedro Alves  <palves@redhat.com>
15099
15100         * frame-unwind.c (frame_unwind_try_unwinder): Always call
15101         frame_cleanup_after_sniffer on exception.
15102
15103 2018-02-14  Tom Tromey  <tom@tromey.com>
15104
15105         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
15106         const.
15107         (solib_bfd_open): Make pathname const.
15108         * solib.c (solib_bfd_open): Make pathname const.
15109         * solib-spu.c (spu_bfd_fopen): Make name const.
15110         (spu_bfd_open): Make pathname const.
15111         * solib-darwin.c (darwin_bfd_open): Make pathname const.
15112         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
15113
15114 2018-02-14  Tom Tromey  <tom@tromey.com>
15115
15116         * symfile.c (symfile_bfd_open): Update.
15117         * source.h (openp, source_full_path_of, find_and_open_source):
15118         Change argument type to unique_xmalloc_ptr.
15119         * source.c (openp): Take a unique_xmalloc_ptr.
15120         (source_full_path_of, find_and_open_source): Likewise.
15121         (open_source_file, symtab_to_fullname): Update.
15122         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
15123         unique_xmalloc_ptr.
15124         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
15125         (exec_file_find): Update.
15126         * psymtab.c (psymtab_to_fullname): Update.
15127         * nto-tdep.h (nto_find_and_open_solib): Update.
15128         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
15129         unique_xmalloc_ptr.
15130         * exec.c (exec_file_attach): Update.
15131         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
15132         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
15133
15134 2018-02-14  Tom Tromey  <tom@tromey.com>
15135
15136         * solib.c: Include source.h.
15137         * nto-tdep.c: Include source.h.
15138         * mi/mi-cmd-env.c: Include source.h.
15139         * infcmd.c: Include source.h.
15140         * exec.c: Include source.h.
15141         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
15142         (add_path, directory_switch, source_path, init_source_path): Move
15143         declarations...
15144         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
15145         (add_path, directory_switch, source_path, init_source_path):
15146         ...here.
15147
15148 2018-02-14  Tom Tromey  <tom@tromey.com>
15149
15150         * solist.h (exec_file_find, solib_find): Return
15151         unique_xmalloc_ptr.
15152         (solib_bfd_fopen): Take a const char *.
15153         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
15154         (exec_file_find, solib_find): Likewise.
15155         (solib_bfd_fopen): Do not take ownership of "pathname".
15156         (solib_bfd_open): Use unique_xmalloc_ptr.
15157         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
15158         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
15159         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
15160         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
15161
15162 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
15163
15164         * ada-lang.c (name_match_type_from_name): Remove reference to
15165         ada_name_for_lookup in function's documentation.
15166         * ada-lang.h (ada_name_for_lookup): Delete declaration.
15167
15168 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
15169
15170         * defs.h (enum openp_flags): New enum.
15171         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
15172         Move to enum openp_flags.
15173         (openp_flags): New enum flags.
15174         (openp): Change parameter type to openp_flags.
15175         * source.c (openp): Change parameter type to openp_flags.
15176         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
15177         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
15178
15179 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
15180
15181         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
15182         per-command.
15183
15184 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
15185
15186         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
15187         into...
15188         (class dwarf2_queue_guard): ...the destructor of this new class.
15189         (dw2_do_instantiate_symtab): Create instance of the new class
15190         dwarf2_queue_guard, remove cleanup.
15191
15192 2018-02-09  Tom Tromey  <tom@tromey.com>
15193
15194         * source.c (find_source_lines): Don't reference past the end of
15195         the vector.
15196
15197 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15198
15199         * remote.c (remote_btrace_maybe_reopen): Change error message.
15200         * btrace.c (btrace_enable): Likewise.
15201         (parse_xml_btrace): Likewise.
15202         (parse_xml_btrace_conf): Likewise.
15203
15204 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15205
15206         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
15207         (linux_enable_pt, linux_enable_bts): Call
15208         diagnose_perf_event_open_fail.
15209
15210 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15211
15212         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
15213         Remove parameter and change return type.  Update callers.  Move it.
15214         (linux_enable_bts, linux_enable_pt): Improve error message.
15215         (linux_enable_pt): Remove zero buffer size check.
15216         (linux_enable_btrace): Improve error messages.  Remove NULL return
15217         check.
15218
15219 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15220
15221         * btrace.c (btrace_enable): Remove target_supports_btrace call.
15222         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
15223         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
15224         (linux_supports_pt, linux_supports_btrace): Remove.
15225         (linux_enable_bts): Call cpu_supports_bts.
15226         * nat/linux-btrace.h (linux_supports_btrace): Remove.
15227         * remote.c (remote_supports_btrace): Remove.
15228         (init_remote_ops): Remove remote_supports_btrace.
15229         * target-delegates.c: Regenerated.
15230         * target.c (target_supports_btrace): Remove.
15231         * target.h (target_ops) <to_supports_btrace>: Remove
15232         (target_supports_btrace): Remove.
15233         * x86-linux-nat.c (x86_linux_create_target): Remove
15234         linux_supports_btrace.
15235
15236 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15237
15238         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
15239         btrace failed.
15240         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
15241         exception and use message in own exception.
15242
15243 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15244
15245         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
15246         (perf_event_pt_event_type): Use gdb_file_up.
15247         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
15248         scoped_fd, and scoped_mmap.
15249
15250 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15251
15252         * common/scoped_mmap.h: New.
15253         * unittests/scoped_mmap-selftest.c: New.
15254         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
15255         unittests/scoped_mmap-selftest.c.
15256
15257 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15258
15259         * common/scoped_fd.h: New.
15260         * unittests/scoped_fd-selftest.c: New.
15261         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
15262         unittests/scoped_fd-selftest.c.
15263
15264 2018-02-09  Tom Tromey  <tom@tromey.com>
15265
15266         * auto-load.c (auto_load_section_scripts): Use
15267         gdb::unique_xmalloc_ptr.
15268
15269 2018-02-09  Tom Tromey  <tom@tromey.com>
15270
15271         * auto-load.c (execute_script_contents): Use std::string.
15272
15273 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
15274
15275         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
15276         Python function, rather than a new command.
15277
15278 2018-02-08  Tom Tromey  <tom@tromey.com>
15279
15280         * solib.c (solib_find_1): Use std::string.
15281         (solib_bfd_fopen): Use unique_xmalloc_ptr.
15282
15283 2018-02-08  Tom Tromey  <tom@tromey.com>
15284
15285         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
15286
15287 2018-02-08  Tom Tromey  <tom@tromey.com>
15288
15289         * source.c (find_source_lines): Use gdb::def_vector.
15290
15291 2018-02-08  Tom Tromey  <tom@tromey.com>
15292
15293         * macrocmd.c (struct temporary_macro_definition): New.
15294         (macro_define_command): Use temporary_macro_definition.  Remove
15295         cleanups.
15296         (free_macro_definition_ptr): Remove.
15297
15298 2018-02-08  Tom Tromey  <tom@tromey.com>
15299
15300         * macroexp.c (maybe_expand): Use std::string.
15301
15302 2018-02-08  Tom Tromey  <tom@tromey.com>
15303
15304         * macroexp.c (struct macro_buffer): Add initializers for some
15305         members.
15306         (init_buffer, init_shared_buffer, free_buffer)
15307         (free_buffer_return_text): Remove.
15308         (macro_buffer): New constructors.
15309         (~macro_buffer): New destructor.
15310         (macro_buffer::set_shared): New method.
15311         (macro_buffer::resize_buffer, macro_buffer::appendc)
15312         (macro_buffer::appendmem): Now methods, not free functions.
15313         (set_token, append_tokens_without_splicing, stringify)
15314         (macro_stringify): Update.
15315         (gather_arguments): Change return type.  Remove argc_p argument,
15316         add args_ptr argument.  Use std::vector.
15317         (substitute_args): Remove argc argument.  Accept std::vector.
15318         (expand): Update.  Use std::vector.
15319         (scan, macro_expand, macro_expand_next): Update.
15320
15321 2018-02-08  Tom Tromey  <tom@tromey.com>
15322
15323         * symtab.c (default_collect_symbol_completion_matches_break_on):
15324         Use unique_xmalloc_ptr.
15325         * macroscope.h: (sal_macro_scope, user_macro_scope)
15326         (default_macro_scope): Return unique_xmalloc_ptr.
15327         * macroscope.c (sal_macro_scope, user_macro_scope)
15328         (default_macro_scope): Return unique_xmalloc_ptr.
15329         * macroexp.h (macro_expand, macro_expand_once): Return
15330         unique_xmalloc_ptr.
15331         * macroexp.c (macro_expand, macro_expand_once): Return
15332         unique_xmalloc_ptr.
15333         * macrocmd.c (macro_expand_command, macro_expand_once_command)
15334         (info_macro_command, info_macros_command): Use
15335         unique_xmalloc_ptr.
15336         * compile/compile-c-support.c (write_macro_definitions): Use
15337         unique_xmalloc_ptr.
15338         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
15339
15340 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
15341
15342         * value.c (value_static_field): Assign field type instead of
15343         containing type when returning an optimized out value.
15344
15345 2018-02-06  Yao Qi  <yao.qi@linaro.org>
15346
15347         * ft32-tdep.c (ft32_read_pc): Remove.
15348         (ft32_write_pc): Remove.
15349         (ft32_gdbarch_init): Update.
15350         * m32r-tdep.c (m32r_read_pc): Remove.
15351         (m32r_gdbarch_init): Update.
15352         * mep-tdep.c (mep_read_pc): Remove.
15353         (mep_gdbarch_init): Update.
15354         * microblaze-tdep.c (microblaze_write_pc): Remove.
15355         (microblaze_gdbarch_init): Update.
15356         * mn10300-tdep.c (mn10300_read_pc): Remove.
15357         (mn10300_write_pc): Remove.
15358         (mn10300_gdbarch_init): Update.
15359         * moxie-tdep.c (moxie_read_pc): Remove.
15360         (moxie_write_pc): Remove.
15361         (moxie_gdbarch_init): Update.
15362
15363 2018-02-06  Yao Qi  <yao.qi@linaro.org>
15364
15365         * expprint.c (print_subexp_standard): Handle
15366         OP_F77_UNDETERMINED_ARGLIST.
15367         (dump_subexp_body_standard): Likewise.
15368
15369 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
15370
15371         * target-descriptions.c (tdesc_element_visitor) Add empty
15372         implementations.
15373         (tdesc_type): Move make_gdb_type from here.
15374         (tdesc_type_builtin): Likewise.
15375         (tdesc_type_vector): Likewise.
15376         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
15377         (make_gdb_type_struct): Move from tdesc_type_with_fields.
15378         (make_gdb_type_union): Likewise.
15379         (make_gdb_type_flags): Likewise.
15380         (make_gdb_type_enum): Likewise.
15381         (make_gdb_type): New function.
15382         (tdesc_register_type): Use static make_gdb_type.
15383
15384 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
15385
15386         * infcmd.c (default_print_one_register_info): Align natural-format
15387         column values consistently one under another.
15388         (pad_to_column): New function.
15389
15390 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
15391
15392         * dwarf2read.c (dwarf2_physname): Move commment.
15393
15394 2018-02-01  Leszek Swirski  <leszeks@google.com>
15395
15396         * varobj.c (varobj_formatted_print_options): Allow recursive
15397         pretty printing if pretty printing is enabled.
15398
15399 2018-02-01  Leszek Swirski  <leszeks@google.com>
15400
15401         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
15402         names after a structop as a filename.
15403
15404 2018-02-01  Yao Qi  <yao.qi@linaro.org>
15405
15406         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
15407         (arm_record_coproc_data_proc): Likewise.
15408
15409 2018-02-01  Yao Qi  <yao.qi@linaro.org>
15410
15411         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
15412
15413 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
15414
15415         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
15416         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
15417
15418 2018-01-31  Pedro Alves  <palves@redhat.com>
15419
15420         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
15421         * inflow.c (child_terminal_save_inferior): Wrap reference to
15422         tcgetpgrp in HAVE_TERMIOS_H.
15423         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
15424         _WIN32.
15425         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
15426         always iterate over all inferiors.
15427         (gdbsim_cntrl_c): Adjust.
15428         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
15429
15430 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
15431
15432         * gdbtypes.c (lookup_array_range_type): Make sure the array's
15433         index type is objfile-owned if the element type is as well.
15434
15435 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
15436
15437         GDB 8.1 released.
15438
15439 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15440
15441         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
15442         "features/s390x-linux64.c".
15443         (_initialize_s390_linux_tdep): Remove initialization of tdescs
15444         s390_linux32 and s390x_linux64.
15445         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
15446         default tdesc.
15447         * s390-tdep.c: Include "features/s390-linux32.c" and
15448         "features/s390x-linux64.c".
15449         (s390_tdesc_valid): Add check for tdesc_has_registers.
15450         (s390_gdbarch_init): Make sure there is always a valid tdesc.
15451         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
15452         tdesc_s390x_linux64.
15453         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
15454         tdesc_s390x_linux64 to...
15455         * s390-tdep.h: ...here.
15456
15457 2018-01-30  Pedro Alves  <palves@redhat.com>
15458
15459         PR gdb/13211
15460         * config.in, configure: Regenerate.
15461         * configure.ac: Check for getpgid.
15462         * go32-nat.c (go32_pass_ctrlc): New.
15463         (go32_target): Install it.
15464         * inf-child.c (inf_child_target): Install
15465         child_terminal_save_inferior, child_pass_ctrlc and
15466         child_interrupt.
15467         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
15468         (inf_ptrace_target): No longer install it.
15469         * infcmd.c (interrupt_target_1): Adjust.
15470         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
15471         (child_interrupt): Declare.
15472         (inferior::terminal_state): New.
15473         * inflow.c (struct terminal_info): Update comments.
15474         (inferior_process_group): Delete.
15475         (terminal_is_ours): Delete.
15476         (gdb_tty_state): New.
15477         (child_terminal_init): Adjust.
15478         (is_gdb_terminal, sharing_input_terminal_1)
15479         (sharing_input_terminal): New functions.
15480         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
15481         Set the process's actual process group in the foreground if
15482         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
15483         mark terminal as the inferior's if not sharing GDB's terminal.
15484         Don't check attach_flag.
15485         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
15486         pass down a target_terminal_state.
15487         (child_terminal_save_inferior): New, factored out from ...
15488         (child_terminal_ours_1): ... this.  Handle
15489         target_terminal_state::is_ours_for_output.
15490         (child_interrupt, child_pass_ctrlc): New.
15491         (inflow_inferior_exit): Clear the inferior's terminal_state.
15492         (copy_terminal_info): Copy the inferior's terminal state.
15493         (_initialize_inflow): Remove reference to terminal_is_ours.
15494         * inflow.h (inferior_process_group): Delete.
15495         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
15496         * procfs.c (procfs_target): Don't install procfs_interrupt.
15497         (procfs_interrupt): Delete.
15498         * remote.c (remote_serial_quit_handler): Adjust.
15499         (remote_interrupt): Remove ptid parameter.  Adjust.
15500         * target-delegates.c: Regenerate.
15501         * target.c: Include "terminal.h".
15502         (target_terminal::terminal_state): Rename to ...
15503         (target_terminal::m_terminal_state): ... this.
15504         (target_terminal::init): Adjust.
15505         (target_terminal::inferior): Adjust to per-inferior
15506         terminal_state.
15507         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
15508         (target_terminal::ours, target_terminal::ours_for_output): Use
15509         target_terminal_is_ours_kind.
15510         (target_interrupt): Remove ptid parameter.  Adjust.
15511         (default_target_pass_ctrlc): Adjust.
15512         * target.h (target_ops::to_terminal_save_inferior): New field.
15513         (target_ops::to_interrupt): Remove ptid_t parameter.
15514         (target_interrupt): Remove ptid_t parameter.  Update comment.
15515         (target_pass_ctrlc): Update comment.
15516         * target/target.h (target_terminal_state): New scoped enum,
15517         factored out of ...
15518         (target_terminal::terminal_state): ... here.
15519         (target_terminal::inferior): Update comments.
15520         (target_terminal::restore_inferior): New.
15521         (target_terminal::is_inferior, target_terminal::is_ours)
15522         (target_terminal::is_ours_for_output): Adjust.
15523         (target_terminal::scoped_restore_terminal_state): Adjust to
15524         rename, and call restore_inferior() instead of inferior().
15525         (target_terminal::scoped_restore_terminal_state::m_state): Change
15526         type.
15527         (target_terminal::terminal_state): Rename to ...
15528         (target_terminal::m_terminal_state): ... this and change type.
15529
15530 2018-01-30  Pedro Alves  <palves@redhat.com>
15531
15532         * linux-nat.c (wait_for_signal): New function.
15533         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
15534         directly.
15535         (async_terminal_is_ours)
15536         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
15537         (linux_nat_add_target): Don't override
15538         to_terminal_inferior/to_terminal_ours.
15539
15540 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
15541
15542         * remote.c (remote_follow_fork): Don't call "detach_inferior".
15543
15544 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
15545
15546         * dwarf2read.c (free_dwo_files): Add forward-declaration.
15547         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
15548         dwarf2_per_objfile_free here.
15549         (dwarf2_per_objfile_free): Remove.
15550         (_initialize_dwarf2_read): Don't register
15551         dwarf2_per_objfile_free as a registry cleanup.
15552
15553 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
15554
15555         Avoid compilation errors in MinGW native builds
15556
15557         The error is triggered by including python-internal.h, and the
15558         error message is:
15559
15560              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
15561                       from build-gnulib/import/math.h:27,
15562                       from d:/usr/Python26/include/pyport.h:235,
15563                       from d:/usr/Python26/include/Python.h:58,
15564                       from python/python-internal.h:94,
15565                       from python/py-arch.c:24:
15566              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
15567         using ::hypot;
15568                 ^~~~~
15569
15570         This happens because Python headers define 'hypot' to expand t
15571         '_hypot' in the Windows builds.
15572         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
15573         'hypoth'.  This avoids a compilation error.
15574
15575 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
15576
15577         * MAINTAINERS (Write After Approval): Fix ordering.
15578
15579 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
15580
15581         * MAINTAINERS (Write After Approval): Add Alan Hayward.
15582
15583 2018-01-26  Alan Modra  <amodra@gmail.com>
15584
15585         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
15586         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
15587         Remove nop.  Make const.  Comment.
15588         (powerpc32_plt_stub_so_2): New.
15589         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
15590         Correct count.  Update uses.
15591         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
15592         Move common code reading PLT entry word.  Correct
15593         powerpc32_plt_stub PLT address calculation.
15594         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
15595         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
15596         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
15597         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
15598         (ppc64_standard_linkage8): Likewise.
15599         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
15600         Correct insns description.
15601         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
15602
15603 2018-01-24  Pedro Alves  <palves@redhat.com>
15604
15605         GCC PR libstdc++/83906
15606         * gdbtypes.c (operator==(const dynamic_prop &,
15607         const dynamic_prop &)): New.
15608         (operator==(const range_bounds &, const range_bounds &)): New.
15609         (check_types_equal): Use them instead of memcmp.
15610         * gdbtypes.h (operator==(const dynamic_prop &,
15611         const dynamic_prop &)): Declare.
15612         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
15613         (operator==(const range_bounds &, const range_bounds &)): Declare.
15614         (operator!=(const range_bounds &, const range_bounds &)): Declare.
15615
15616 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15617
15618         * s390-linux-tdep.c (s390_record_address_mask)
15619         (s390_record_calc_disp_common, s390_record_calc_disp)
15620         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
15621         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
15622         (s390_process_record): Move to s390-tdep.c.
15623         (s390_linux_init_abi_any): Adjust.
15624         * s390-tdep.c (s390_record_address_mask)
15625         (s390_record_calc_disp_common, s390_record_calc_disp)
15626         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
15627         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
15628         (s390_process_record): Moved from s390-linux-tdep.c
15629         (s390_gdbarch_init): Adjust.
15630
15631 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15632
15633         * s390-linux-nat.c (s390-tdep.h): New include.
15634         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
15635         (HFILES_NO_SRCDIR): Add s390-tdep.h.
15636         (ALLDEPFILES): Add s390-tdep.c.
15637         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
15638         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
15639         * s390-tdep.h: ...this.  New file.
15640         * s390-linux-tdep.c (s390-tdep.h): New include.
15641         (_initialize_s390_tdep): Rename to...
15642         (_initialize_s390_linux_tdep): ...this and adjust.
15643         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
15644         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
15645         s390-tdep.h.
15646         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
15647         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
15648         (s390_is_partial_instruction, s390_software_single_step)
15649         (is_non_branch_ril, s390_displaced_step_copy_insn)
15650         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
15651         (s390_prologue_data, s390_addr, s390_store, s390_load)
15652         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
15653         (s390_register_call_saved, s390_guess_tracepoint_registers)
15654         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
15655         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
15656         (s390_pseudo_register_name, s390_pseudo_register_type)
15657         (s390_pseudo_register_read, s390_pseudo_register_write)
15658         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
15659         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
15660         (s390_addr_bits_remove, s390_address_class_type_flags)
15661         (s390_address_class_type_flags_to_name)
15662         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
15663         (s390_function_arg_float, s390_function_arg_vector)
15664         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
15665         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
15666         (s390_frame_align, s390_register_return_value, s390_return_value)
15667         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
15668         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
15669         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
15670         (s390_trad_frame_prev_register, s390_unwind_cache)
15671         (s390_prologue_frame_unwind_cache)
15672         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
15673         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
15674         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
15675         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
15676         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
15677         (s390_frame_base_address, s390_local_base_address)
15678         (s390_frame_base, s390_gcc_target_options)
15679         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
15680         (s390_validate_reg_range, s390_tdesc_valid)
15681         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
15682         * s390-tdep.c: ...this.  New file.
15683
15684 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15685
15686         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
15687         (s390_process_record, s390_gdbarch_tdep_alloc)
15688         (s390_linux_init_abi_any): Use/set new hook.
15689
15690 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15691
15692         * s390-linux-tdep.c (osabi.h): New include.
15693         (s390_linux_init_abi_31, s390_linux_init_abi_64)
15694         (s390_linux_init_abi_any): New functions.
15695         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
15696
15697 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15698
15699         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
15700         tdesc_has_registers check
15701
15702 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15703
15704         * s390-linux-tdep.c (s390_tdesc_valid): New function.
15705         (s390_validate_reg_range): New macro.
15706         (s390_gdbarch_init): Adjust.
15707
15708 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15709
15710         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
15711         (s390_gdbarch_tdep_alloc): Adjust.
15712         (s390_gdbarch_init): Adjust.
15713
15714 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15715
15716         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
15717         <have_tdb>: Change type to bool.
15718         (s390_gdbarch_tdep_alloc): Adjust.
15719         (s390_gdbarch_init): Adjust.
15720
15721 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15722
15723         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
15724         (gdbarch_tdep) <have_upper, have_vx>: New fields.
15725         (s390_gdbarch_tdep_alloc): New function.
15726         (s390_gdbarch_init): Allocate tdep at start and use its fields
15727         instead of separate variables.
15728
15729 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15730
15731         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
15732         when looking for cached gdbarch and add comment for remaining.
15733
15734 2018-01-22  Pedro Alves  <palves@redhat.com>
15735             Sergio Durigan Junior  <sergiodj@redhat.com>
15736
15737         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
15738         case.
15739
15740 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
15741
15742         * MAINTAINERS: Update my company e-mail address.
15743
15744 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15745
15746         * regcache.c (cooked_write_test): New function.
15747         (_initialize_regcache): Register the test.
15748
15749 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15750
15751         * ia64-tdep.c (ia64_pseudo_register_read): Call
15752         regcache->cooked_read instead of regcache_cooked_read_unsigned.
15753         * m32c-tdep.c (m32c_cat_read): Likewise.
15754         (m32c_r3r2r1r0_read): Likewise.
15755         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
15756         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
15757
15758 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15759
15760         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
15761         method raw_read instead of regcache_raw_read.
15762         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
15763         * arm-tdep.c (arm_neon_quad_read): Likewise.
15764         * avr-tdep.c (avr_pseudo_register_read): Likewise.
15765         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
15766         * frv-tdep.c (frv_pseudo_register_read): Likewise.
15767         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
15768         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
15769         (i386_pseudo_register_read_into_value): Likewise.
15770         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
15771         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
15772         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
15773         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
15774         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
15775         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
15776         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
15777         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
15778         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
15779
15780 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15781
15782         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
15783         * configure.tgt: Remove target mt.
15784         * mt-tdep.c: Remove.
15785         * regcache.c (cooked_read_test): Remove the check for mt.
15786
15787 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15788
15789         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
15790         instead of gdbarch_pseudo_register_read_value.
15791
15792 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
15793
15794         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
15795         language is Ada.
15796
15797 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
15798
15799         * linespec.c (create_sals_line_offset): Remove code that preserved
15800         the symtab_and_line's line number.
15801
15802 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15803
15804         * varobj.c (varobj_create): Don't set valid_block when creating a
15805         floating varobj.
15806
15807 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15808
15809         * varobj.c (varobj_create): Remove out of date comment.
15810
15811 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15812
15813         PR mi/20395
15814         * ada-exp.y (write_var_from_sym): Pass extra parameter when
15815         updating innermost block.
15816         * parse.c (innermost_block_tracker::update): Take extra type
15817         parameter, and check types match before updating innermost block.
15818         (write_dollar_variable): Update innermost block for registers.
15819         * parser-defs.h (enum innermost_block_tracker_type): New enum.
15820         (innermost_block_tracker::innermost_block_tracker): Initialise
15821         m_types member.
15822         (innermost_block_tracker::reset): Take type parameter.
15823         (innermost_block_tracker::update): Take type parameter, and pass
15824         type through as needed.
15825         (innermost_block_tracker::m_types): New member.
15826         * varobj.c (varobj_create): Pass type when reseting innermost
15827         block.
15828
15829 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15830
15831         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
15832         * ada-lang.c (resolve_subexp): Likewise.
15833         * breakpoint.c (set_breakpoint_condition) Likewise.
15834         (watch_command_1) Likewise.
15835         * c-exp.y (variable): Likewise.
15836         * d-exp.y (PrimaryExpression): Likewise.
15837         * f-exp.y (variable): Likewise.
15838         * go-exp.y (variable): Likewise.
15839         * m2-exp.y (variable): Likewise.
15840         * objfiles.c (objfile::~objfile): Likewise.
15841         * p-exp.y (variable): Likewise.
15842         * parse.c (innermost_block): Change type.
15843         * parser-defs.h (class innermost_block_tracker): New.
15844         (innermost_block): Change to innermost_block_tracker.
15845         * printcmd.c (display_command): Switch to innermost_block API.
15846         (do_one_display): Likewise.
15847         * rust-exp.y (do_one_display): Likewise.
15848         * symfile.c (clear_symtab_users): Likewise.
15849         * varobj.c (varobj_create): Switch to innermost_block API, replace
15850         use of innermost_block with block stored on varobj object.
15851
15852 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15853
15854         * expression.h (innermost_block): Remove declaration.
15855         * varobj.c: Add 'parser-defs.h' include.
15856
15857 2018-01-19  Tom Tromey  <tom@tromey.com>
15858
15859         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
15860         symbols in the static and global blocks.
15861
15862 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
15863
15864         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
15865         gdb_ptrace.h, and move including gdb_wait.h ...
15866         * nat/linux-ptrace.h: ... to here.
15867
15868 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15869
15870         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
15871         inf_ptrace_detach_success.
15872         (inf_ptrace_detach_success): Add inferior parameter, use it
15873         instead of inferior_ptid, pass it to detach_inferior.
15874         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
15875         parameter.
15876         * inferior.c (detach_inferior): Add overload that takes an
15877         inferior object.
15878         * inferior.h (detach_inferior): Likewise.
15879         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
15880         use inferior_ptid, adjust call to inf_ptrace_detach_success.
15881         * linux-thread-db.c (thread_db_detach): Use inf parameter.
15882
15883 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15884
15885         * target.h (struct target_ops) <to_detach>: Add inferior
15886         parameter.
15887         (target_detach): Likewise.
15888         * target.c (dispose_inferior): Pass inferior down.
15889         (target_detach): Pass inferior down.  Assert that it is equal to
15890         the current inferior.
15891         * aix-thread.c (aix_thread_detach): Pass inferior down.
15892         * corefile.c (core_file_command): Pass current_inferior() down.
15893         * corelow.c (core_detach): Add inferior parameter.
15894         * darwin-nat.c (darwin_detach): Likewise.
15895         * gnu-nat.c (gnu_detach): Likewise.
15896         * inf-ptrace.c (inf_ptrace_detach): Likewise.
15897         * infcmd.c (detach_command): Pass current_inferior() down to
15898         target_detach.
15899         * infrun.c (follow_fork_inferior): Pass parent_inf to
15900         target_detach.
15901         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
15902         target_detach.
15903         * linux-nat.c (linux_nat_detach): Add inferior parameter.
15904         * linux-thread-db.c (thread_db_detach): Likewise.
15905         * nto-procfs.c (procfs_detach): Likewise.
15906         * procfs.c (procfs_detach): Likewise.
15907         * record.c (record_detach): Likewise.
15908         * record.h (struct inferior): Forward-declare.
15909         (record_detach): Add inferior parameter.
15910         * remote-sim.c (gdbsim_detach): Likewise.
15911         * remote.c (remote_detach_1): Likewise.
15912         (remote_detach): Likewise.
15913         (extended_remote_detach): Likewise.
15914         * sol-thread.c (sol_thread_detach): Likewise.
15915         * target-debug.h (target_debug_print_inferior_p): New macro.
15916         * target-delegates.c: Re-generate.
15917         * top.c (kill_or_detach): Pass inferior down to target_detach.
15918         * windows-nat.c (windows_detach): Add inferior parameter.
15919
15920 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15921
15922         * target.h (struct target_ops) <to_detach>: Remove args
15923         parameter.
15924         (target_detach): Likewise.
15925         * target.c (dispose_inferior): Adjust.
15926         (target_detach): Remove args parameter, adjust.
15927         * aix-thread.c (aix_thread_detach): Adjust.
15928         * corefile.c (core_file_command): Adjust.
15929         * corelow.c (core_detach): Adjust.
15930         * darwin-nat.c (darwin_detach): Adjust.
15931         * gnu-nat.c (gnu_detach): Adjust.
15932         * inf-ptrace.c (inf_ptrace_detach): Adjust.
15933         * infcmd.c (detach_command): Adjust
15934         * infrun.c (follow_fork_inferior): Adjust.
15935         (handle_vfork_child_exec_or_exit): Adjust.
15936         * linux-fork.c (linux_fork_detach): Remove args parameter.
15937         * linux-fork.h (linux_fork_detach): Likewise.
15938         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
15939         * linux-thread-db.c (thread_db_detach): Likewise.
15940         * nto-procfs.c (procfs_detach): Likewise.
15941         * procfs.c (procfs_detach): Likewise.
15942         (do_detach): Remove signo parameter.
15943         * record.c (record_detach): Remove args parameter.
15944         * record.h (record_detach): Likewise.
15945         * remote-sim.c (gdbsim_detach): Likewise.
15946         * remote.c (remote_detach_1): Likewise.
15947         (remote_detach): Likewise.
15948         (extended_remote_detach): Likewise.
15949         * sol-thread.c (sol_thread_detach): Likewise.
15950         * target-delegates.c: Re-generate.
15951         * top.c (struct qt_args) <args>: Remove field.
15952         (kill_or_detach): Don't pass args.
15953         (quit_force): Don't set args.
15954         * windows-nat.c (windows_detach): Remove args parameter.
15955
15956 2018-01-19  Yao Qi  <yao.qi@linaro.org>
15957
15958         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
15959         (arm_linux_init_abi): Install it.
15960
15961 2018-01-19  Yao Qi  <yao.qi@linaro.org>
15962
15963         * osabi.c (gdb_osabi_names): Extend the regexp for
15964         arm-linux-gnueabihf.
15965
15966 2018-01-18  Yao Qi  <yao.qi@linaro.org>
15967
15968         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
15969         m_abbrevs.
15970         (abbrev_table::add_abbrev): Update.
15971         (abbrev_table::lookup_abbrev): Update.
15972
15973 2018-01-18  Yao Qi  <yao.qi@linaro.org>
15974
15975         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
15976
15977 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
15978
15979         * compile/compile.c (compile_to_object): Convert "triplet_rx"
15980         to "std::string".
15981
15982 2018-01-17  Tom Tromey  <tom@tromey.com>
15983
15984         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
15985
15986 2018-01-17  Tom Tromey  <tom@tromey.com>
15987
15988         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
15989         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
15990         (create_array_type_with_stride): Update.
15991         * dwarf2read.c (set_die_type): Update.
15992
15993 2018-01-17  Tom Tromey  <tom@tromey.com>
15994
15995         * dwarf2read.c (delayed_method_info): Remove typedef.
15996         (dwarf2_cu::method_info): Now a std::vector.
15997         (add_to_method_list): Update.
15998         (free_delayed_list): Remove.
15999         (compute_delayed_physnames): Update.
16000         (process_full_comp_unit, process_full_type_unit): Clear the method
16001         list.  Remove cleanups.
16002         (psymtab_include_file_name): Add name_holder parameter.  Use
16003         unique_xmalloc_ptr.
16004         (dwarf_decode_lines): Update.
16005
16006 2018-01-17  Tom Tromey  <tom@tromey.com>
16007             Simon Marchi  <simon.marchi@ericsson.com>
16008
16009         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
16010         (dwarf2_per_objfile::free_cached_comp_units)
16011         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
16012         (init_cutu_and_read_dies_no_follow): Update.
16013         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
16014         (dwarf2_cu::~dwarf2_cu): New.
16015         (free_heap_comp_unit, free_stack_comp_unit): Remove.
16016         (age_cached_comp_units, free_one_cached_comp_unit): Update.
16017
16018 2018-01-17  Tom Tromey  <tom@tromey.com>
16019             Simon Marchi  <simon.marchi@ericsson.com>
16020
16021         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
16022         (struct die_reader_specs) <abbrev_table>: New member.
16023         (struct abbrev_table): Add constructor.
16024         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
16025         <abbrev_obstack>: Now an auto_obstack.
16026         (abbrev_table_up): New typedef.
16027         (init_cu_die_reader): Add abbrev_table parameter.
16028         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
16029         Add result_dwo_abbrev_table.
16030         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
16031         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
16032         Update.
16033         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
16034         parameter.
16035         (skip_children): Update.
16036         (abbrev_table::alloc_abbrev): Rename from
16037         abbrev_table_alloc_abbrev.
16038         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
16039         (abbrev_table::lookup_abbrev): Rename from
16040         abbrev_table_lookup_abbrev.
16041         (abbrev_table_read_table): Return abbrev_table_up.
16042         (abbrev_table_free, abbrev_table_free_cleanup)
16043         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
16044         (load_partial_dies): Update.
16045
16046 2018-01-17  Tom Tromey  <tom@tromey.com>
16047
16048         * dwarf2read.c (dwarf2_compute_name): Update comment.
16049         (read_func_scope, read_variable): Update.
16050         (new_symbol): Remove.
16051         (new_symbol_full): Rename to new_symbol.
16052
16053 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
16054
16055         PR gdb/16577
16056         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
16057         a warning instead of throwing an error, set section size to 0 and return
16058         NULL.
16059         * gdb_bfd.h (gdb_bfd_map_section): Update description.
16060
16061 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
16062
16063         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
16064         std::string.
16065         (linux_ptrace_attach_fail_reason_string): Likewise.
16066         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
16067         Likewise.
16068         (linux_ptrace_attach_fail_reason_string): Likewise.
16069         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
16070
16071 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
16072
16073         * linux-nat.c (linux_nat_attach): Remove xstrdup.
16074
16075 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
16076
16077         PR gdb/21559
16078         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
16079         checking for fs_base/gs_base fields in struct user_regs_struct.
16080         * configure: Regenerate.
16081
16082 2018-01-17  Yao Qi  <yao.qi@linaro.org>
16083
16084         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
16085         function.
16086         (aarch64_linux_init_abi): Install it to gdbarch hook
16087         gcc_target_options.
16088
16089 2018-01-15  Pedro Alves  <palves@redhat.com>
16090
16091         * common/signals-state-save-restore.c
16092         (save_original_signals_state): Fix typos.
16093
16094 2017-01-12  Tom Tromey  <tom@tromey.com>
16095             Sergio Durigan Junior  <sergiodj@redhat.com>
16096
16097         * Makefile.in (install-only): Install gdb-add-index.
16098
16099 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
16100
16101         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
16102
16103 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
16104
16105         * infrun.c (keep_going_pass_signal): Clear step-over info when
16106         insert_breakpoints fails.
16107
16108 2018-01-11  Pedro Alves  <palves@redhat.com>
16109
16110         PR gdb/22583
16111         * infrun.c (resume): Rename to ...
16112         (resume_1): ... this.
16113         (resume): Reimplement as wrapper around resume_1.
16114
16115 2018-01-11  Pedro Alves  <palves@redhat.com>
16116
16117         PR remote/22597
16118         * remote.c (remote_parse_stop_reply): Default to the last-set
16119         general thread instead of to 'magic_null_ptid'.
16120
16121 2018-01-10  Pedro Alves  <palves@redhat.com>
16122
16123         * language.h (language_get_symbol_name_matcher): Rename ...
16124         (get_symbol_name_matcher): ... this.
16125         * language.c (language_get_symbol_name_matcher): Ditto.
16126         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
16127         callers adjusted.
16128
16129 2018-01-10  Pedro Alves  <palves@redhat.com>
16130
16131         PR gdb/22670
16132         * dwarf2read.c
16133         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
16134         Adjust to use language_get_symbol_name_matcher instead of
16135         language_defn::la_get_symbol_name_matcher.
16136         * language.c (language_get_symbol_name_matcher): If in Ada mode
16137         and the lookup name is a verbatim match, return Ada's matcher.
16138         * language.h (language_get_symbol_name_matcher): Adjust comment.
16139         (ada_lookup_name_info::verbatim_p):: New method.
16140
16141 2018-01-10  Pedro Alves  <palves@redhat.com>
16142
16143         PR gdb/22670
16144         * ada-lang.c (ada_collect_symbol_completion_matches): If the
16145         minsym's language is language_auto or language_cplus, pass down
16146         language_ada instead.
16147         * symtab.c (compare_symbol_name): Don't frob symbol language here.
16148
16149 2018-01-10  Pedro Alves  <palves@redhat.com>
16150
16151         PR gdb/22670
16152         * minsyms.c (linkage_name_str): New function.
16153         (iterate_over_minimal_symbols): Use it.
16154
16155 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16156
16157         * NEWS: Document that 'info proc' now works on FreeBSD.
16158
16159 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16160
16161         * configure.ac: Check for kinfo_getfile in libutil.
16162         * configure: Regenerate.
16163         * config.in: Regenerate.
16164         * fbsd-nat.c: Include "fbsd-tdep.h".
16165         (fbsd_fetch_cmdline): New.
16166         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
16167         rather than calling error.
16168         (fbsd_info_proc): New.
16169         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
16170         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
16171         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
16172
16173 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16174
16175         * fbsd-nat.c (struct free_deleter): Remove.
16176         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
16177
16178 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16179
16180         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
16181         NULL for an empty pathname.
16182
16183 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16184
16185         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
16186         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
16187         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
16188         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
16189         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
16190         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
16191         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
16192         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
16193         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
16194         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
16195         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
16196         (fbsd_core_fetch_timeval, fbsd_print_sigset)
16197         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
16198         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
16199         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
16200
16201 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
16202
16203         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
16204         (gnu_xfer_auxv): New function.
16205         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
16206         TARGET_OBJECT_AUXV.
16207
16208 2018-01-08  Yao Qi  <yao.qi@linaro.org>
16209             Simon Marchi  <simon.marchi@ericsson.com>
16210
16211         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
16212         common/selftest.c.
16213         (COMMON_OBS): Remove selftest.o.
16214         * configure.ac: Append selftest-arch.c and common/selftest.c to
16215         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
16216         * configure: Re-generated.
16217         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
16218         GDB_SELF_TEST.
16219         (maintenance_info_selftests): Likewise.
16220
16221 2018-01-08  Xavier Roirand  <roirand@adacore.com>
16222
16223         * ada-valprint.c (val_print_packed_array_elements): Use
16224         proper number of elements when printing an array indexed
16225         by an enumeration type.
16226
16227 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16228
16229         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
16230         (dw2_get_file_names_reader): Adjust.
16231         (lookup_dwo_signatured_type): Adjust.
16232         (lookup_dwp_signatured_type): Adjust.
16233         (lookup_signatured_type): Adjust.
16234         (create_type_unit_group): Adjust.
16235         (get_type_unit_group): Adjust.
16236         (process_psymtab_comp_unit_reader): Adjust.
16237         (build_type_psymtabs_reader): Adjust.
16238         (scan_partial_symbols): Adjust.
16239         (add_partial_symbol): Adjust.
16240         (add_partial_subprogram): Adjust.
16241         (peek_die_abbrev): Adjust.
16242         (fixup_go_packaging): Adjust.
16243         (process_imported_unit_die): Adjust.
16244         (dwarf2_compute_name): Adjust.
16245         (dwarf2_physname): Adjust.
16246         (read_import_statement): Adjust.
16247         (handle_DW_AT_stmt_list): Adjust.
16248         (read_file_scope): Adjust.
16249         (read_func_scope): Adjust.
16250         (read_lexical_block_scope): Adjust.
16251         (read_call_site_scope): Adjust.
16252         (read_variable): Adjust.
16253         (dwarf2_rnglists_process): Adjust.
16254         (dwarf2_ranges_process): Adjust.
16255         (dwarf2_ranges_read): Adjust.
16256         (dwarf2_get_pc_bounds): Adjust.
16257         (dwarf2_record_block_ranges): Adjust.
16258         (dwarf2_add_field): Adjust.
16259         (dwarf2_add_member_fn): Adjust.
16260         (read_structure_type): Adjust.
16261         (process_structure_scope): Adjust.
16262         (read_enumeration_type): Adjust.
16263         (read_array_type): Adjust.
16264         (mark_common_block_symbol_computed): Adjust.
16265         (read_common_block): Adjust.
16266         (read_namespace_type): Adjust.
16267         (read_namespace): Adjust.
16268         (read_module_type): Adjust.
16269         (read_tag_pointer_type): Adjust.
16270         (read_tag_ptr_to_member_type): Adjust.
16271         (read_tag_string_type): Adjust.
16272         (read_subroutine_type): Adjust.
16273         (read_typedef): Adjust.
16274         (read_base_type): Adjust.
16275         (attr_to_dynamic_prop): Adjust.
16276         (read_subrange_type): Adjust.
16277         (read_unspecified_type): Adjust.
16278         (dwarf2_read_abbrevs): Adjust.
16279         (load_partial_dies): Adjust.
16280         (read_partial_die): Adjust.
16281         (find_partial_die): Adjust.
16282         (guess_partial_die_structure_name): Adjust.
16283         (fixup_partial_die): Adjust.
16284         (read_attribute_value): Adjust.
16285         (read_addr_index): Adjust.
16286         (read_addr_index_from_leb128): Adjust.
16287         (read_str_index): Adjust.
16288         (dwarf2_string_attr): Adjust.
16289         (get_debug_line_section): Adjust.
16290         (dwarf_decode_line_header): Adjust.
16291         (lnp_state_machine::check_line_address): Adjust.
16292         (dwarf_decode_lines_1): Adjust.
16293         (dwarf_decode_lines): Adjust.
16294         (dwarf2_start_symtab): Adjust.
16295         (var_decode_location): Adjust.
16296         (new_symbol_full): Adjust.
16297         (dwarf2_const_value_data): Adjust.
16298         (dwarf2_const_value_attr): Adjust.
16299         (dwarf2_const_value): Adjust.
16300         (die_type): Adjust.
16301         (die_containing_type): Adjust.
16302         (build_error_marker_type): Adjust.
16303         (lookup_die_type): Adjust.
16304         (guess_full_die_structure_name): Adjust.
16305         (anonymous_struct_prefix): Adjust.
16306         (determine_prefix): Adjust.
16307         (dwarf2_name): Adjust.
16308         (follow_die_ref_or_sig): Adjust.
16309         (follow_die_offset): Adjust.
16310         (follow_die_ref): Adjust.
16311         (follow_die_sig_1): Adjust.
16312         (follow_die_sig): Adjust.
16313         (get_signatured_type): Adjust.
16314         (get_DW_AT_signature_type): Adjust.
16315         (decode_locdesc): Adjust.
16316         (dwarf_decode_macros): Adjust.
16317         (cu_debug_loc_section): Adjust.
16318         (fill_in_loclist_baton): Adjust.
16319         (dwarf2_symbol_mark_computed): Adjust.
16320         (init_one_comp_unit): Don't assign
16321         dwarf2_cu::dwarf2_per_objfile.
16322         (set_die_type): Adjust.
16323
16324 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
16325
16326         * dwarf2read.c (struct mapped_debug_names): Add constructor.
16327         <dwarf2_per_objfile>: New field.
16328         (dwarf2_per_objfile): Remove global.
16329         (get_dwarf2_per_objfile): New function.
16330         (set_dwarf2_per_objfile): New function.
16331         (dwarf2_build_psymtabs_hard): Change objfile parameter to
16332         dwarf2_per_objfile.
16333         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
16334         (read_abbrev_offset): Likewise.
16335         (read_indirect_string): Likewise.
16336         (read_indirect_line_string): Likewise.
16337         (read_indirect_string_at_offset): Likewise.
16338         (read_indirect_string_from_dwz): Likewise.
16339         (dwarf2_find_containing_comp_unit): Change objfile parameter to
16340         dwarf2_per_objfile.
16341         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
16342         (create_all_comp_units): Change objfile parameter to
16343         dwarf2_per_objfile.
16344         (create_all_type_units): Likewise.
16345         (process_queue): Add dwarf2_per_objfile parameter.
16346         (read_and_check_comp_unit_head): Likewise.
16347         (lookup_dwo_unit_in_dwp): Likewise.
16348         (get_dwp_file): Likewise.
16349         (process_cu_includes): Likewise.
16350         (struct free_dwo_file_cleanup_data): New struct.
16351         (dwarf2_has_info): Use get_dwarf2_per_objfile and
16352         set_dwarf2_per_objfile.
16353         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
16354         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
16355         context, adjust calls.
16356         (dw2_instantiate_symtab): Likewise.
16357         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
16358         (dw2_get_cu): Likewise.
16359         (create_cu_from_index_list): Change objfile parameter to
16360         dwarf2_per_objfile.
16361         (create_cus_from_index_list): Get dwarf2_per_objfile from
16362         context, adjust calls.
16363         (create_cus_from_index): Likewise.
16364         (create_signatured_type_table_from_index): Change objfile
16365         parameter to dwarf2_per_objfile.
16366         (create_signatured_type_table_from_debug_names): Change objfile
16367         parameter to dwarf2_per_objfile.
16368         (create_addrmap_from_index): Likewise.
16369         (create_addrmap_from_aranges): Likewise.
16370         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
16371         (dw2_setup): Remove.
16372         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
16373         context.
16374         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
16375         get_dwarf2_per_objfile.
16376         (dw2_forget_cached_source_info): Likewise.
16377         (dw2_map_symtabs_matching_filename): Likewise.
16378         (struct dw2_symtab_iterator) <index>: Remove.
16379         <dwarf2_per_objfile>: New field.
16380         (dw2_symtab_iter_init): Replace index parameter with
16381         dwarf2_per_objfile.
16382         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
16383         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
16384         (dw2_print_stats): Likewise.
16385         (dw2_dump): Likewise.
16386         (dw2_expand_symtabs_for_function): Likewise.
16387         (dw2_expand_all_symtabs): Likewise.
16388         (dw2_expand_symtabs_with_fullname): Likewise.
16389         (dw2_expand_marked_cus): Replace index and objfile parameters
16390         with dwarf2_per_objfile.
16391         (dw_expand_symtabs_matching_file_matcher): Add
16392         dwarf2_per_objfile parameter and adjust calls.
16393         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
16394         adjust calls.
16395         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
16396         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
16397         adjust calls.
16398         (create_cus_from_debug_names_list): Replace objfile parameter
16399         with dwarf2_per_objfile and adjust calls.
16400         (create_cus_from_debug_names): Likewise.
16401         (dwarf2_read_debug_names): Likewise.
16402         (mapped_debug_names::namei_to_name): Adjust call.
16403         (dw2_debug_names_iterator::next): Likewise.
16404         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
16405         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
16406         (dw2_debug_names_dump): Likewise.
16407         (dw2_debug_names_expand_symtabs_for_function): Likewise.
16408         (dw2_debug_names_expand_symtabs_matching): Likewise.
16409         (dwarf2_initialize_objfile): Likewise.
16410         (dwarf2_build_psymtabs): Likewise.
16411         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
16412         this_cu.
16413         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
16414         (read_and_check_comp_unit_head): Likewise.
16415         (read_abbrev_offset): Likewise.
16416         (create_debug_type_hash_table): Likewise.
16417         (create_debug_types_hash_table): Likewise.
16418         (create_all_type_units): Replace objfile parameter with
16419         dwarf2_per_objfile.
16420         (add_type_unit): Add dwarf2_per_objfile parameter.
16421         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
16422         with dwarf2_per_objfile.
16423         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
16424         (lookup_dwp_signatured_type): Likewise.
16425         (lookup_signatured_type): Likewise.
16426         (read_cutu_die_from_dwo): Likewise.
16427         (init_tu_and_read_dwo_dies): Likewise.
16428         (init_cutu_and_read_dies): Likewise.
16429         (init_cutu_and_read_dies_no_follow): Likewise.
16430         (allocate_type_unit_groups_table): Add objfile parameter.
16431         (create_type_unit_group): Use dwarf2_per_objfile from cu.
16432         (get_type_unit_group): Likewise.
16433         (process_psymtab_comp_unit): Update call.
16434         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
16435         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
16436         (print_tu_stats): Likewise.
16437         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
16438         in void* parameter.
16439         (build_type_psymtabs): Change objfile parameter to
16440         dwarf2_per_objfile.
16441         (process_skeletonless_type_unit): Use dwarf2_per_objfile
16442         passed in void* parameter.
16443         (process_skeletonless_type_units): Change objfile parameter to
16444         dwarf2_per_objfile.
16445         (set_partial_user): Likewise.
16446         (dwarf2_build_psymtabs_hard): Likewise.
16447         (read_comp_units_from_section): Likewise.
16448         (create_all_comp_units): Likewise.
16449         (scan_partial_symbols): Update calls.
16450         (add_partial_symbol): Likewise.
16451         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
16452         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
16453         (process_queue): Add dwarf2_per_objfile parameter.
16454         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
16455         (compute_compunit_symtab_includes): Likewise.
16456         (process_cu_includes): Add dwarf2_per_objfile parameter.
16457         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
16458         (process_full_type_unit): Likewise.
16459         (process_imported_unit_die): Update call.
16460         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
16461         (read_file_scope): Likewise.
16462         (allocate_dwo_file_hash_table): Add objfile parameter.
16463         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
16464         (create_cus_hash_table): Likewise.
16465         (create_dwp_hash_table): Likewise.
16466         (create_dwo_unit_in_dwp_v1): Likewise.
16467         (create_dwp_v2_section): Likewise.
16468         (create_dwo_unit_in_dwp_v2): Likewise.
16469         (lookup_dwo_unit_in_dwp): Likewise.
16470         (try_open_dwop_file): Likewise.
16471         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
16472         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
16473         cleanup to include a reference to dwarf2_per_objfile.
16474         (open_dwp_file): Add dwarf2_per_objfile parameter.
16475         (open_and_init_dwp_file): Likewise.
16476         (get_dwp_file): Likewise.
16477         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
16478         (queue_and_load_all_dwo_tus): Update call.
16479         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
16480         data.
16481         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
16482         (dwarf2_ranges_process): Likewise.
16483         (dwarf2_get_pc_bounds): Likewise.
16484         (mark_common_block_symbol_computed): Likewise.
16485         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
16486         (dwarf2_read_abbrevs): Update call.
16487         (read_partial_die): Use dwarf2_per_objfile from cu.
16488         (find_partial_die): Likewise.
16489         (fixup_partial_die): Likewise.
16490         (read_attribute_value): Likewise.
16491         (read_indirect_string_at_offset_from): Add objfile parameter.
16492         (read_indirect_string_at_offset): Add dwarf2_per_objfile
16493         parameter.
16494         (read_indirect_string_from_dwz): Add objfile parameter.
16495         (read_indirect_string): Add objfile parameter.
16496         (read_addr_index_1): Add dwarf2_per_objfile parameter.
16497         (read_addr_index): Use dwarf2_per_objfile from cu.
16498         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
16499         call dw2_setup.
16500         (read_str_index): Use dwarf2_per_objfile from cu.
16501         (get_debug_line_section): Likewise.
16502         (read_formatted_entries): Add dwarf2_per_objfile parameter.
16503         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
16504         (new_symbol_full): Use dwarf2_per_objfile from cu.
16505         (build_error_marker_type): Likewise.
16506         (lookup_die_type): Likewise.
16507         (determine_prefix): Likewise.
16508         (follow_die_offset): Likewise.
16509         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
16510         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
16511         (dwarf2_fetch_die_type_sect_off): Likewise.
16512         (dwarf2_get_die_type): Likewise.
16513         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
16514         (get_signatured_type): Likewise.
16515         (get_DW_AT_signature_type): Likewise.
16516         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
16517         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
16518         (cu_debug_loc_section): Likewise.
16519         (fill_in_loclist_baton): Likewise.
16520         (dwarf2_symbol_mark_computed): Likewise.
16521         (dwarf2_find_containing_comp_unit): Change objfile parameter to
16522         dwarf2_per_objfile.
16523         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
16524         parameter.
16525         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
16526         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
16527         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
16528         (set_die_type): Use dwarf2_free_objfile from cu.
16529         (get_die_type_at_offset): Likewise.
16530         (dwarf2_per_objfile_free): Don't assign global variable.
16531         (debug_names) <constructor>: Add dwarf2_per_objfile
16532         parameter, update m_debugstrlookup construction.
16533         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
16534         parameter.
16535         <m_dwarf2_per_objfile>: New field.
16536         <lookup>: Use m_dwarf2_per_objfile.
16537         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
16538         (psyms_seen_size): Likewise.
16539         (write_gdbindex): Replace objfile parameter with
16540         dwarf2_per_objfile.
16541         (write_debug_names): Likewise.
16542         (write_psymtabs_to_index): Likewise.
16543         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
16544         calls.
16545
16546 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
16547
16548         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
16549         <dwarf2_per_objfile>: New field.
16550         (struct dwarf2_per_cu_data) <objfile>: Remove.
16551         <dwarf2_per_objfile>: New field.
16552         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
16553         of objfile.
16554         (create_signatured_type_table_from_index): Likewise.
16555         (create_debug_type_hash_table): Likewise.
16556         (fill_in_sig_entry_from_dwo_entry): Likewise.
16557         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
16558         (create_type_unit_group): Assign dwarf2_per_objfile instead of
16559         objfile.
16560         (create_partial_symtab): Access objfile through
16561         dwarf2_per_objfile.
16562         (process_psymtab_comp_unit_reader): Likewise.
16563         (read_comp_units_from_section): Likewise.
16564         (scan_partial_symbols): Likewise.
16565         (add_partial_symbol): Likewise.
16566         (add_partial_subprogram): Likewise.
16567         (peek_die_abbrev): Likewise.
16568         (fixup_go_packaging): Likewise.
16569         (process_full_comp_unit): Likewise.
16570         (process_full_type_unit): Likewise.
16571         (process_imported_unit_die): Likewise.
16572         (dwarf2_compute_name): Likewise.
16573         (dwarf2_physname): Likewise.
16574         (read_import_statement): Likewise.
16575         (create_cus_hash_table): Assign dwarf2_physname instead of
16576         objfile.
16577         (read_func_scope): Access objfile through dwarf2_per_objfile.
16578         (read_lexical_block_scope): Likewise.
16579         (read_call_site_scope): Likewise.
16580         (read_variable): Likewise.
16581         (dwarf2_rnglists_process): Likewise.
16582         (dwarf2_ranges_process): Likewise.
16583         (dwarf2_ranges_read): Likewise.
16584         (dwarf2_record_block_ranges): Likewise.
16585         (dwarf2_add_field): Likewise.
16586         (dwarf2_add_member_fn): Likewise.
16587         (read_structure_type): Likewise.
16588         (process_structure_scope): Likewise.
16589         (read_enumeration_type): Likewise.
16590         (read_array_type): Likewise.
16591         (read_common_block): Likewise.
16592         (read_namespace_type): Likewise.
16593         (read_namespace): Likewise.
16594         (read_module_type): Likewise.
16595         (read_tag_pointer_type): Likewise.
16596         (read_tag_ptr_to_member_type): Likewise.
16597         (read_tag_string_type): Likewise.
16598         (read_subroutine_type): Likewise.
16599         (read_typedef): Likewise.
16600         (read_base_type): Likewise.
16601         (attr_to_dynamic_prop): Likewise.
16602         (read_subrange_type): Likewise.
16603         (read_unspecified_type): Likewise.
16604         (load_partial_dies): Likewise.
16605         (read_partial_die): Likewise.
16606         (find_partial_die): Likewise.
16607         (guess_partial_die_structure_name): Likewise.
16608         (fixup_partial_die): Likewise.
16609         (read_attribute_value): Likewise.
16610         (read_addr_index_from_leb128): Likewise.
16611         (dwarf2_read_addr_index): Likewise.
16612         (dwarf2_string_attr): Likewise.
16613         (lnp_state_machine::check_line_address): Likewise.
16614         (dwarf_decode_lines_1): Likewise.
16615         (dwarf_decode_lines): Likewise.
16616         (dwarf2_start_symtab): Likewise.
16617         (var_decode_location): Likewise.
16618         (new_symbol_full): Likewise.
16619         (dwarf2_const_value_data): Likewise.
16620         (dwarf2_const_value_attr): Likewise.
16621         (dwarf2_const_value): Likewise.
16622         (die_type): Likewise.
16623         (die_containing_type): Likewise.
16624         (lookup_die_type): Likewise.
16625         (guess_full_die_structure_name): Likewise.
16626         (anonymous_struct_prefix): Likewise.
16627         (dwarf2_name): Likewise.
16628         (follow_die_ref_or_sig): Likewise.
16629         (follow_die_offset): Likewise.
16630         (follow_die_ref): Likewise.
16631         (dwarf2_fetch_die_loc_sect_off): Likewise.
16632         (dwarf2_fetch_constant_bytes): Likewise.
16633         (dwarf2_fetch_die_type_sect_off): Likewise.
16634         (dwarf2_get_die_type): Likewise.
16635         (follow_die_sig): Likewise.
16636         (decode_locdesc): Likewise.
16637         (dwarf2_per_cu_objfile): Likewise.
16638         (dwarf2_per_cu_text_offset): Likewise.
16639         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
16640         objfile.
16641         (set_die_type): Access objfile through
16642         dwarf2_per_objfile.
16643
16644 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
16645
16646         * valprint.c (converted_character_d): Remove typedef.
16647         (DEF_VEC_O (converted_character_d)): Remove.
16648         (count_next_character): Use std::vector.
16649         (print_converted_chars_to_obstack): Likewise.
16650         (generic_printstr): Likewise.
16651
16652 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16653
16654         * xml-support.h (struct gdb_xml_value): Add constructor.
16655         <value>: Change type to unique_xmalloc_ptr.
16656         (gdb_xml_value_s): Remove typedef.
16657         (DEF_VEC_O (gdb_xml_value_s)): Remove.
16658         (gdb_xml_element_start_handler): Change parameter type to
16659         std::vector.
16660         (xml_find_attribute): Likewise.
16661         * xml-support.c (xml_find_attribute): Change parameter type to
16662         std::vector and adjust.
16663         (gdb_xml_values_cleanup): Remove.
16664         (gdb_xml_parser::start_element): Adjust to std::vector.
16665         (xinclude_start_include): Change paraeter type to std::vector
16666         and adjust.
16667         * btrace.c (check_xml_btrace_version): Likewise.
16668         (parse_xml_btrace_block): Likewise.
16669         (parse_xml_btrace_pt_config_cpu): Likewise.
16670         (parse_xml_btrace_pt): Likewise.
16671         (parse_xml_btrace_conf_bts): Likewise.
16672         (parse_xml_btrace_conf_pt): Likewise.
16673         * memory-map.c (memory_map_start_memory): Likewise.
16674         (memory_map_start_property): Likewise.
16675         * osdata.c (osdata_start_osdata): Likewise.
16676         (osdata_start_item): Likewise.
16677         (osdata_start_column): Likewise.
16678         * remote.c (start_thread): Likewise.
16679         * solib-aix.c (library_list_start_library): Likewise.
16680         (library_list_start_list): Likewise.
16681         * solib-svr4.c (library_list_start_library): Likewise.
16682         (svr4_library_list_start_list): Likewise.
16683         * solib-target.c (library_list_start_segment): Likewise.
16684         (library_list_start_section): Likewise.
16685         (library_list_start_library): Likewise.
16686         (library_list_start_list): Likewise.
16687         * tracepoint.c (traceframe_info_start_memory): Likewise.
16688         (traceframe_info_start_tvar): Likewise.
16689         * xml-syscall.c (syscall_start_syscall): Likewise.
16690         * xml-tdesc.c (tdesc_start_target): Likewise.
16691         (tdesc_start_feature): Likewise.
16692         (tdesc_start_reg): Likewise.
16693         (tdesc_start_union): Likewise.
16694         (tdesc_start_struct): Likewise.
16695         (tdesc_start_flags): Likewise.
16696         (tdesc_start_enum): Likewise.
16697         (tdesc_start_field): Likewise.
16698         (tdesc_start_enum_value): Likewise.
16699         (tdesc_start_vector): Likewise.
16700
16701 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16702
16703         * extension.h (struct xmethod_worker) <clone>: Remove.
16704         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
16705         Remove.
16706         (python_xmethod_worker::clone): Remove.
16707         * valops.c (find_overload_match): Use std::move instead of
16708         clone.
16709
16710 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16711
16712         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
16713         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
16714         <free_xmethod_worker_data>: Remove.
16715         <get_matching_xmethod_workers>: Chance VEC to std::vector.
16716         <get_xmethod_arg_types>: Remove.
16717         <get_xmethod_result_type>: Remove.
16718         <invoke_xmethod>: Remove.
16719         * extension.c (new_xmethod_worker): Remove.
16720         (clone_xmethod_worker): Remove.
16721         (get_matching_xmethod_workers): Return void, pass std::vector by
16722         pointer.
16723         (get_xmethod_arg_types): Rename to...
16724         (xmethod_worker::get_arg_types): ... this, and adjust.
16725         (get_xmethod_result_type): Rename to...
16726         (xmethod_worker::get_result_type): ... this, and adjust.
16727         (invoke_xmethod): Remove.
16728         (free_xmethod_worker): Remove.
16729         (free_xmethod_worker_vec): Remove.
16730         * extension.h (enum ext_lang_rc): Move here from
16731         extension-priv.h.
16732         (struct xmethod_worker): Add constructor and destructor.
16733         <data>: Remove.
16734         <value>: Remove.
16735         <invoke, clone, do_get_result_type, do_get_arg_types>: New
16736         virtual pure methods.
16737         <get_arg_types, get_result_type>: New methods.
16738         (xmethod_worker_ptr): Remove typedef.
16739         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
16740         (xmethod_worker_vec): Remove typedef.
16741         (xmethod_worker_up): New typedef.
16742         (invoke_xmethod): Remove.
16743         (clone_xmethod_worker): Remove.
16744         (free_xmethod_worker): Remove.
16745         (free_xmethod_worker_vec): Remove.
16746         (get_xmethod_arg_types): Remove.
16747         (get_xmethod_result_type): Remove.
16748         * valops.c (find_method_list): Use std::vector, don't use
16749         intermediate vector.
16750         (value_find_oload_method_list): Use std::vector.
16751         (find_overload_match): Use std::vector.
16752         (find_oload_champ): Use std::vector.
16753         * value.c (value_free): Use operator delete.
16754         (value_of_xmethod): Rename to...
16755         (value_from_xmethod): ... this.  Don't assign
16756         xmethod_worker::value, take rvalue-reference.
16757         (result_type_of_xmethod): Adjust.
16758         (call_xmethod): Adjust.
16759         * value.h: Include extension.h.
16760         (struct xmethod_worker): Don't forward-declare.
16761         (value_of_xmethod): Rename to...
16762         (value_from_xmethod): ... this, take rvalue-reference.
16763         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
16764         (struct python_xmethod_worker): ... this, add constructor and
16765         destructor.
16766         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
16767         (gdbpy_free_xmethod_worker_data): Rename to...
16768         (python_xmethod_worker::~python_xmethod_worker): ... this and
16769         adjust.
16770         (gdbpy_clone_xmethod_worker_data): Rename to...
16771         (python_xmethod_worker::clone): ... this and adjust.
16772         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
16773         temporary vector.
16774         (gdbpy_get_xmethod_arg_types): Rename to...
16775         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
16776         (gdbpy_get_xmethod_result_type): Rename to...
16777         (python_xmethod_worker::do_get_result_type): ... this and
16778         adjust.
16779         (gdbpy_invoke_xmethod): Rename to...
16780         (python_xmethod_worker::invoke): ... this and adjust.
16781         (new_python_xmethod_worker): Rename to...
16782         (python_xmethod_worker::python_xmethod_worker): ... this and
16783         adjust.
16784         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
16785         Remove.
16786         (gdbpy_free_xmethod_worker_data): Remove.
16787         (gdbpy_get_matching_xmethod_workers): Use std::vector.
16788         (gdbpy_get_xmethod_arg_types): Remove.
16789         (gdbpy_get_xmethod_result_type): Remove.
16790         (gdbpy_invoke_xmethod): Remove.
16791         * python/python.c (python_extension_ops): Remove obsolete
16792         callbacks.
16793
16794 2018-01-05  Pedro Alves  <palves@redhat.com>
16795
16796         PR gdb/18653
16797         * common/signals-state-save-restore.c
16798         (save_original_signals_state): New parameter 'quiet'.  Warn if we
16799         find a custom handler preinstalled, instead of internal erroring.
16800         But only warn if !quiet.
16801         * common/signals-state-save-restore.h
16802         (save_original_signals_state): New parameter 'quiet'.
16803         * main.c (captured_main_1): Move save_original_signals_state call
16804         after option handling, and pass QUIET.
16805
16806 2018-01-05  Pedro Alves  <palves@redhat.com>
16807
16808         * spu-tdep.c (spu_catch_start): Pass
16809         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
16810
16811 2018-01-05  Pedro Alves  <palves@redhat.com>
16812
16813         PR gdb/22670
16814         * ada-lang.c (literal_symbol_name_matcher): New function.
16815         (ada_get_symbol_name_matcher): Use it for
16816         symbol_name_match_type::SEARCH_NAME.
16817         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
16818         it down instead of assuming symbol_name_match_type::FULL.
16819         * block.h (block_lookup_symbol): New parameter 'match_type'.
16820         * c-valprint.c (print_unpacked_pointer): Use
16821         lookup_symbol_search_name instead of lookup_symbol.
16822         * compile/compile-object-load.c (get_out_value_type): Pass down
16823         symbol_name_match_type::SEARCH_NAME.
16824         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
16825         symbol_name_match_type::FULL.
16826         * cp-support.c (cp_get_symbol_name_matcher): Handle
16827         symbol_name_match_type::SEARCH_NAME.
16828         * infrun.c (insert_exception_resume_breakpoint): Use
16829         lookup_symbol_search_name.
16830         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
16831         * psymtab.c (maintenance_check_psymtabs): Use
16832         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
16833         * stack.c (print_frame_args): Use lookup_symbol_search_name and
16834         SYMBOL_SEARCH_NAME.
16835         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
16836         if symbol_name_match_type::SEARCH_NAME.
16837         (lookup_symbol_in_language): Pass down
16838         symbol_name_match_type::FULL.
16839         (lookup_symbol_search_name): New.
16840         (lookup_language_this): Pass down
16841         symbol_name_match_type::SEARCH_NAME.
16842         (lookup_symbol_aux, lookup_local_symbol): New parameter
16843         'match_type'.  Pass it down.
16844         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
16845         (lookup_symbol_search_name): New declaration.
16846         (lookup_symbol_in_block): New 'match_type' parameter.
16847
16848 2018-01-05  Pedro Alves  <palves@redhat.com>
16849
16850         PR gdb/22670
16851         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
16852         ada_lookup_symbol.
16853         (ada_lookup_symbol): Reimplement in terms of
16854         ada_lookup_symbol_list, bits factored out from
16855         ada_lookup_encoded_symbol.
16856
16857 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16858
16859         * ada-exp.y (write_object_renaming): When subscripting an array
16860         using a symbol as the index, pass the block in call to
16861         ada_lookup_encoded_symbol when looking that symbol up.
16862
16863 2018-01-05  Jerome Guitton  <guitton@adacore.com>
16864
16865         * ada-lang.c (ada_array_length): Use ada_index_type instead of
16866         TYPE_INDEX_TYPE.
16867
16868 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16869
16870         * ada-lang.c (ada_to_fixed_value_create): Add handling of
16871         the case where VALUE_LVAL (val0) is not lval_memory.
16872
16873 2018-01-05  Xavier Roirand  <roirand@adacore.com>
16874
16875         * ada-valprint.c (print_optional_low_bound): Handle
16876         character-indexed array printing like boolean-indexed array
16877         printing.
16878
16879 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16880
16881         * NEWS: Create a new section for the next release branch.
16882         Rename the section of the current branch, now that it has
16883         been cut.
16884
16885 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16886
16887         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
16888         * version.in: Bump version to 8.1.50.DATE-git.
16889
16890 2018-01-03  Xavier Roirand  <roirand@adacore.com>
16891
16892         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
16893         Add field.
16894         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
16895         Add field.
16896         (default_exception_support_info) <catch_handlers_sym>: Add field.
16897         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
16898         (ada_exception_name_addr_1): Add "catch handlers" handling.
16899         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
16900         Update all callers.
16901         (create_excep_cond_exprs) <ex>: Add parameter.
16902         (re_set_exception): Update create_excep_cond_exprs call.
16903         (print_it_exception, print_one_exception, print_mention_exception)
16904         (print_recreate_exception): Add "catch handler" handling.
16905         (allocate_location_catch_handlers, re_set_catch_handlers)
16906         (check_status_catch_handlers, print_it_catch_handlers)
16907         (print_one_catch_handlers, print_mention_catch_handlers)
16908         (print_recreate_catch_handlers): New function.
16909         (catch_handlers_breakpoint_ops): New variable.
16910         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
16911         Add parameter.  Add "catch handler" handling.
16912         (ada_exception_sym_name, ada_exception_breakpoint_ops):
16913         Add "catch handler" handling.
16914         (ada_exception_catchpoint_cond_string): Add "catch handler"
16915         handling.
16916         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
16917         call.
16918         (catch_ada_handlers_command): New function.
16919         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
16920         operations structure.
16921         (_initialize_ada_language): Add "catch handlers" command entry.
16922         * NEWS: Document "catch handlers" feature.
16923
16924 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16925
16926         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
16927         account when creating the array type of the slice.
16928         (ada_value_slice): Likewise.
16929
16930 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16931
16932         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
16933         New enum value.
16934         (create_array_type_with_stride): Add byte_stride_prop parameter.
16935         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
16936         New parameter.  Update all callers in this file.
16937         (array_type_has_dynamic_stride): New function.
16938         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
16939         of arrays with dynamic byte strides.
16940         * dwarf2read.c (read_array_type): Add support for dynamic
16941         DW_AT_byte_stride attributes.
16942
16943 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16944
16945         * dwarf2read.c (read_unspecified_type): Treat
16946         DW_TAG_enumeration_type DIEs from Ada units as stubs.
16947
16948 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16949
16950         Update copyright year range in all GDB files.
16951
16952 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
16953
16954         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
16955         and gdb/testsuite/gdb.base/step-line.c.
16956
16957 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16958
16959         * copyright.py (main): Dump the contents of
16960         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
16961         even if BY_HAND is empty.
16962
16963 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16964
16965         * top.c (print_gdb_version): Update Copyright year in version
16966         message.
16967
16968 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16969
16970         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
16971
16972 For older changes see ChangeLog-2017.
16973 \f
16974 Local Variables:
16975 mode: change-log
16976 left-margin: 8
16977 fill-column: 74
16978 version-control: never
16979 coding: utf-8
16980 End: