(Ada) Fix printing of access to unconstrained arrays
[external/binutils.git] / gdb / ChangeLog
1 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2
3         * ada-valprint.c (ada_value_print): Use type instead of
4         enclosing type.
5
6 2018-09-10  Xavier Roirand  <roirand@adacore.com>
7
8         * ada-lang.c (ada_value_subscript): Handle case when parameter is
9         an array of access to unconstrained array.
10
11 2018-09-10  Xavier Roirand  <roirand@adacore.com>
12
13         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
14         (ada_check_typedef): Use it.
15
16 2018-09-10  Xavier Roirand  <roirand@adacore.com>
17
18         * ada-varobj.c (ada_varobj_describe_struct_child)
19         (ada_varobj_describe_child): Handle union case like struct one.
20
21 2018-09-10  Tom Tromey  <tom@tromey.com>
22
23         PR python/18380:
24         * python/python.c (_initialize_python): Make example in "python"
25         help work in Python 3.
26
27 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
28
29         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
30         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
31         $(EXEEXT) to the script, as it is not a program.
32
33 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
34
35         * python/py-prettyprint.c (pretty_print_one_value): Return
36         gdbpy_ref<>.
37         (print_string_repr): Adjust.
38         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
39         * python/python-internal.h (apply_varobj_pretty_printer): Return
40         gdbpy_ref<>.
41         * varobj.c (varobj_value_get_print_value): Adjust.
42
43 2018-09-08  Tom Tromey  <tom@tromey.com>
44
45         PR python/16047:
46         * python/py-prettyprint.c (pretty_print_one_value): Check for
47         to_string method.
48
49 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
50
51         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
52         replace_operator_with_call.
53
54 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
55
56         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
57
58 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
59
60         * ada-typeprint.c (print_range): Print the bounds using TYPE
61         rather than its TYPE_TARGET_TYPE.
62
63 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
64
65         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
66         call to ada_to_fixed_value_create.
67
68 2018-09-08  Jerome Guitton  <guitton@adacore.com>
69
70         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
71
72 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
73
74         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
75         by calls to error.
76
77 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
78
79         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
80         Move update of loop variable "fi".
81
82 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
83
84         * ada-lang.c (value_assign_to_component): In the case of
85         big-endian targets, extract the bits of the given VAL
86         using an src_offset of zero if container is not a scalar.
87
88 2018-09-06  Simon Ser  <contact@emersion.fr>
89
90         PR gdb/23105
91         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
92         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
93         * fbsd-tdep.c (fbsd_make_note_desc): New.
94         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
95         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
96         * target.h (enum target_object) Add FreeBSD-specific
97         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
98
99 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
100
101         * compile/compile-c.h (generate_c_for_variable_locations):
102         Change reference to pointer.
103         * compile/compile-c-support.c (compile_program) <compute>:
104         Likewise.
105         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
106         (generate_c_for_for_one_variable): Likewise
107         (generate_c_for_variable_locations): Likewise
108         * compile/compile-c-types.c (compile_c_instance::convert_type):
109         Likewise
110         * compile/compile-cplus-symbols.c (convert_one_symbol):
111         std::move the scope passed to enter_scope.
112         * compile/compile-cplus-types.c
113         (compile_cplus_instance::enter_scope): Make parameter
114         rvalue-reference.
115         (compile_cplus_instance::new_scope): Change reference to
116         pointer.
117         (compile_cplus_instance::convert_type): Likewise
118         (compile_cplus_convert_typedef): std::move the scope passed to
119         enter_scope.
120         (compile_cplus_convert_struct_or_union): Likewise.
121         (compile_cplus_convert_enum): Likewise.
122         (compile_cplus_convert_namespace): Likewise.
123         * compile/compile-cplus.h (compile_cplus_instance)
124         <enter_scope>: Make parameter rvalue-reference.
125         * compile/compile-internal.h (compile_instance)
126         <get_cached_type>: Likewise
127         * compile/compile-loc2c.c (push): Likewise
128         (pushf): Likewise
129         (unary): Likewise
130         (binary): Likewise
131         (print_label): Likewise
132         (pushf_register_address): Likewise
133         (pushf_register): Likewise
134         (do_compile_dwarf_expr_to_c): Likewise
135         (compile_dwarf_expr_to_c): Likewise
136         (compile_dwarf_bounds_to_c): Likewise
137         * compile/compile.c (compile_instance::get_cached_type):
138         Likewise
139         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
140         (compile_dwarf_bounds_to_c): Likewise
141         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
142         (dwarf2_compile_property_to_c): Likewise
143         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
144         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
145         Likewise
146
147 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
148
149         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
150         * tui/tui-data.c (init_content_element): Don't initialize it.
151
152 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
153
154         * tui/tui-data.h (struct tui_win_info)
155         <detail::opaque>: Remove.
156         * tui/tui-data.c (init_win_info): Remove assignment.
157
158 2018-09-05  Tom Tromey  <tom@tromey.com>
159
160         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
161         -Wformat-nonliteral.
162         * target-float.c (host_float_ops<T>::to_string)
163         (host_float_ops<T>::from_string): Use
164         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
165         * configure: Rebuild.
166
167 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
168
169         * printcmd.c (printf_c_string): Use
170         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
171         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
172
173 2018-09-05  Tom Tromey  <tom@tromey.com>
174
175         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
176
177 2018-09-05  Tom de Vries  <tdevries@suse.de>
178
179         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
180         with resolve_abstract_p == true.
181         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
182         defaulting to false. Propagate resolve_abstract_p to
183         dwarf2_fetch_die_loc_sect_off.
184         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
185         parameter, defaulting to false.
186         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
187         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
188         parameter.
189         * dwarf2read.h (struct die_info): Forward-declare.
190         (die_info_ptr): New typedef.
191         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
192
193 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
194
195         GDB 8.2 released.
196
197 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
198             Pedro Alves  <palves@redhat.com>
199
200         * gnulib/Makefile.in (aclocal_m4_deps): Move to
201         "aclocal-m4-deps.mk".  Include file here.
202         $(srcdir)/aclocal.m4: Add "configure.ac".
203         * gnulib/aclocal-m4-deps.mk: New file.
204         * gnulib/update-gnulib.sh: Automatically update
205         "aclocal-m4-deps.mk".
206
207 2018-09-04  Tom Tromey  <tom@tromey.com>
208
209         * configure: Rebuild.
210         * configure.ac: Remove multi-ice code.
211
212 2018-09-04  Tom Tromey  <tom@tromey.com>
213
214         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
215         (ada-exp.o): Update.
216
217 2018-09-04  Tom Tromey  <tom@tromey.com>
218
219         * Makefile.in (printcmd.o, target-float.o): Remove.
220         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
221
222 2018-09-04  Tom Tromey  <tom@tromey.com>
223
224         * gnulib/Makefile.in: Remove obsolete comment.
225         * Makefile.in: Remove obsolete comment.
226
227 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
228
229         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
230         line with '+'.
231
232 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
233
234         * riscv-tdep.c: Add 'prologue-value.h' include.
235         (struct riscv_unwind_cache): New struct.
236         (riscv_debug_unwinder): New global.
237         (riscv_scan_prologue): Update arguments, capture register details
238         from prologue scan.
239         (riscv_skip_prologue): Reformat arguments line, move end of
240         prologue calculation into riscv_scan_prologue.
241         (riscv_frame_cache): Update return type, create
242         riscv_unwind_cache, scan the prologue, and fill in remaining cache
243         details.
244         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
245         (riscv_frame_prev_register): Use the trad_frame within the
246         riscv_unwind_cache.
247         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
248         flag.
249
250 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
251
252         * trad-frame.h (trad_frame_set_realreg): Declare.
253         (trad_frame_set_addr): Declare.
254         * trad-frame.c (trad_frame_set_realreg): Define new function.
255         (trad_frame_set_addr): Define new function.
256         (trad_frame_set_reg_realreg): Use new function.
257         (trad_frame_set_reg_addr): Use new function.
258
259 2018-09-01  Keith Seitz  <keiths@redhat.com>
260
261         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
262         pulongest instead of "%lld".
263         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
264         ATTRIBUTE_UNUSED.
265
266 2018-08-31  Tom Tromey  <tom@tromey.com>
267
268         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
269         variant part type.
270
271 2018-08-31  Pedro Alves  <palves@redhat.com>
272
273         * gdbarch.h: Regenerate.
274
275 2018-08-31  Pedro Alves  <palves@redhat.com>
276
277         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
278         * target.h (Hardware watchpoint interfaces): Describe
279         continuable/steppable/non-steppable watchpoints.
280         * gdbarch.h, gdbarch.c: Regenerate.
281
282 2018-08-31  Pedro Alves  <palves@redhat.com>
283
284         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
285         Delete.
286         * s390-linux-nat.c
287         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
288         * target.h (target_ops::have_continuable_watchpoint): Delete.
289         (target_have_continuable_watchpoint): Delete.
290         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
291         * target-delegates.c: Regenerate.
292
293 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
294
295         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
296         the files present in "gnulib/import/m4/".
297
298 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
299
300         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
301         c.sw, c.swsp, and c.sdsp.
302
303 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
304
305         * riscv-tdep.c (struct riscv_inferior_data): Delete.
306         (riscv_read_misa_reg): Don't cache value read into inferior data.
307         (riscv_new_inferior_data): Delete.
308         (riscv_inferior_data_cleanup): Delete.
309         (riscv_inferior_data): Delete.
310         (riscv_invalidate_inferior_data): Delete.
311         (_initialize_riscv_tdep): Remove initialisation of inferior data.
312
313 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
314
315         * compile/compile-cplus-types.c
316         (compile_cplus_instance::leave_scope): Take the address of scope
317         object.
318         (compile_cplus_instance::convert_qualified_base): Compare quals
319         to 0.
320
321 2018-08-30  Keith Seitz  <keiths@redhat.com>
322
323         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
324         Use "%s" and host_address_to_string instead of "%p" in printf.
325
326 2018-08-29  Keith Seitz  <keiths@redhat.com>
327
328         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
329         and compile-cplus-types.c.
330         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
331         * c-lang.c (cplus_language_defn): Set C++ compile functions.
332         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
333         Declare.
334         * compile/compile-c-support.c: Include compile-cplus.h.
335         (load_libcompile): Templatize.
336         (get_compile_context): "New" function.
337         (c_get_compile_context): Use get_compile_context.
338         (cplus_get_compile_context): New function.
339         (cplus_push_user_expression, cplus_pop_user_expression)
340         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
341         (cplus_compute_program): Define new structs/functions.
342         * compile/compile-cplus-symmbols.c: New file.
343         * compile/compile-cplus-types.c: New file.
344         * compile/compile-cplus.h: New file.
345         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
346         Declare.
347         * compile/compile-object-load.c (get_out_value_type): Use
348         strncmp_iw when comparing symbol names.
349         (compile_object_load): Add mst_bss and mst_data.
350         * compile/compile.c (_initialize_compile): Remove
351         -Wno-implicit-function-declaration from `compile_args'.
352         * compile/gcc-cp-plugin.h: New file.
353         * NEWS: Mention C++ compile support and new debug options.
354
355 2018-08-29  Keith Seitz  <keiths@redhat.com>
356
357         * linespec.c (collect_info::add_symbol): Make virtual.
358         (struct symbol_searcher_collect_info): New struct.
359         (symbol_searcher::find_all_symbols): New method.
360         * symtab.h (class symbol_searcher): New class.
361
362 2018-08-29  Keith Seitz  <keiths@redhat.com>
363
364         * linespec.c (struct linespec) <function_symbols, label_symbols>:
365         Change to vector of block_symbol.  Update all users.
366         (struct collect_info) <symbols>: Likewise.
367         (collect_info::add_symbol): Take block_symbol as argument.
368         Update all callers.
369         (decode_compound_collector) <m_symbols>: Change type to vector
370         of block_symbol.  Update all users.
371         (decode_compound_collector::operator ()): Change parameter type
372         to block_symbol.
373         (find_method, find_function_symbols, find_linespec_symbols)
374         (find_label_symbols_in_block, find_label_symbols): Change symbol
375         vectors to block_symbol vectors.
376         * symtab.h (symbol_found_callback_ftype): Change parameter type to
377         block_symbol.
378
379 2018-08-29  Keith Seitz  <keiths@redhat.com>
380
381         * linespec.c (symbolp): Remove typedef and VEC definitions.
382         (bound_minimal_symbol_d): Likewise.
383
384 2018-08-29  Keith Seitz  <keiths@redhat.com>
385
386         * linespec.c (decode_compound_collector::decode_compound_collector):
387         Remove initialization for `m_symtabs'.
388         (decode_compound_collector::release_symbols): Change return type
389         to std::vector.  Update all callers.
390         (class decode_compound_collector) <m_symbols>: Change type to
391         std::vector.
392         (lookup_prefix_sym): Change return type to std::vector.  Update all
393         callers.
394         (compare_symbols): Remove.
395         (std_compare_symbols): Rename to `compare_symbols'.
396         (find_method): Change `sym_classes' parameter to std::vector.
397         Update all callers.  Use std::sort to sort sym_classes.
398         (find_linespec_symbols): Remove cleanup.
399
400 2018-08-29  Keith Seitz  <keiths@redhat.com>
401
402         * linespec.c (struct linespec) <minimal_symbols>: Change type to
403         std::vector.  Update all users.
404         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
405         (struct collect_info) <minimal_symbols>: Likewise.
406         (compare_msymbols): Return bool.  Change parameters to const
407         bound_minimal_symbol references.
408         (find_method, find_function_symbols, find_linespec_symbols): Change
409         `minsyms' parameter to std::vector.  Update all callers.
410
411 2018-08-29  Keith Seitz  <keiths@redhat.com>
412
413         * linespec.c (struct linespec) <label_symbols>: Change type to
414         std::vector.  Update all users.
415         (find_label_symbols_in_block): Change `result' parameter to
416         std::vector.  Update all callers.
417         (find_label_symbols): Return std::vector.  Update all callers.
418
419 2018-08-29  Keith Seitz  <keiths@redhat.com>
420
421         * linespec.c (struct linespec) <function_symbols>: Change type to
422         std::vector.  Update all users.
423         (struct collect_info) <function_symbols>: Likewise.
424         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
425         (std_compare_symbols): New function.
426         (find_method, find_function_symbols, find_linespec_symbols)
427         (find_label_symbols_in_block): Change `symbols' parameter to
428         std::vector.  Update all callers.
429         (find_label_symbols): Likewise for `function_symbols' and
430         `label_funcs_ret'.
431
432 2018-08-29  Keith Seitz  <keiths@redhat.com>
433
434         * linespec.c (symtab_vector_up): Define.
435         (struct linespec) <file_symtabs>: Change type to std::vector *.
436         Update all uses.
437         (struct collect_info) <file_symtabs>: Likewise.
438         (collect_symtabs_from_filename): Return symtab_vector_up.
439         Update all callers.
440         (decode_objc): Remove cleanup.
441         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
442         (symtab_collector::release_symtabs): Return symtab_vector_up.
443         Update all callers.
444         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
445         Update all users.
446         (collect_symtabs_from_filename, symtabs_from_filename): Return
447         symtab_vector_up.  Update all callers.
448
449 2018-08-29  Tom Tromey  <tom@tromey.com>
450
451         * csky-tdep.c (csky_analyze_prologue): Use
452         core_addr_to_string_nz.
453
454 2018-08-29  Tom Tromey  <tom@tromey.com>
455
456         * windows-nat.c (struct xlate_exception) <them>: Change type to
457         DWORD.
458         (xlate): Fix formatting.  Remove last entry.
459         (struct xlate_exception, xlate): Comment out.
460         (windows_nat_target::resume): Use ranged for.
461
462 2018-08-29  Jim Wilson  <jimw@sifive.com>
463
464         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
465         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
466         of NT_PRFPREG.
467         (riscv_linux_nat_target::store_registers): Likewise.
468
469 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
470
471         PR gdb/23555
472         PR gdb/23558
473         * gnulib/aclocal.m4: Regenerate.
474         * gnulib/config.in: Regenerate.
475         * gnulib/configure: Regenerate.
476         * gnulib/import/Makefile.am: Update.
477         * gnulib/import/Makefile.in: Update.
478         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
479         * gnulib/import/_Noreturn.h: ... this.
480         * gnulib/import/alloca.in.h: Update.
481         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
482         * gnulib/import/arg-nonnull.h: ... this.
483         * gnulib/import/assure.h: Update.
484         * gnulib/import/at-func.c: Update.
485         * gnulib/import/basename-lgpl.c: Update.
486         * gnulib/import/extra/snippet/c++defs.h: Rename to...
487         * gnulib/import/c++defs.h: ... this.
488         * gnulib/import/canonicalize-lgpl.c: Update.
489         * gnulib/import/cdefs.h: Update.
490         * gnulib/import/chdir-long.c: Update.
491         * gnulib/import/chdir-long.h: Update.
492         * gnulib/import/cloexec.c: Update.
493         * gnulib/import/cloexec.h: Update.
494         * gnulib/import/close.c: Update.
495         * gnulib/import/closedir.c: Update.
496         * gnulib/import/config.charset: Update.
497         * gnulib/import/dirent-private.h: Update.
498         * gnulib/import/dirent.in.h: Update.
499         * gnulib/import/dirfd.c: Update.
500         * gnulib/import/dirname-lgpl.c: Update.
501         * gnulib/import/dirname.h: Update.
502         * gnulib/import/dosname.h: Update.
503         * gnulib/import/dup-safer-flag.c: Update.
504         * gnulib/import/dup-safer.c: Update.
505         * gnulib/import/dup.c: Update.
506         * gnulib/import/dup2.c: Update.
507         * gnulib/import/errno.in.h: Update.
508         * gnulib/import/error.c: Update.
509         * gnulib/import/error.h: Update.
510         * gnulib/import/exitfail.c: Update.
511         * gnulib/import/exitfail.h: Update.
512         * gnulib/import/extra/update-copyright: Update.
513         * gnulib/import/fchdir.c: Update.
514         * gnulib/import/fcntl.c: Update.
515         * gnulib/import/fcntl.in.h: Update.
516         * gnulib/import/fd-hook.c: Update.
517         * gnulib/import/fd-hook.h: Update.
518         * gnulib/import/fd-safer-flag.c: Update.
519         * gnulib/import/fd-safer.c: Update.
520         * gnulib/import/fdopendir.c: Update.
521         * gnulib/import/filename.h: Update.
522         * gnulib/import/filenamecat-lgpl.c: Update.
523         * gnulib/import/filenamecat.h: Update.
524         * gnulib/import/flexmember.h: Update.
525         * gnulib/import/float+.h: Update.
526         * gnulib/import/float.c: Update.
527         * gnulib/import/float.in.h: Update.
528         * gnulib/import/fnmatch.c: Update.
529         * gnulib/import/fnmatch.in.h: Update.
530         * gnulib/import/fnmatch_loop.c: Update.
531         * gnulib/import/fpucw.h: Update.
532         * gnulib/import/frexp.c: Update.
533         * gnulib/import/frexpl.c: Update.
534         * gnulib/import/fstat.c: Update.
535         * gnulib/import/fstatat.c: Update.
536         * gnulib/import/getcwd-lgpl.c: Update.
537         * gnulib/import/getcwd.c: Update.
538         * gnulib/import/getdtablesize.c: Update.
539         * gnulib/import/getlogin_r.c: Update.
540         * gnulib/import/getprogname.c: Update.
541         * gnulib/import/getprogname.h: Update.
542         * gnulib/import/gettext.h: Update.
543         * gnulib/import/gettimeofday.c: Update.
544         * gnulib/import/glob-libc.h: Update.
545         * gnulib/import/glob.c: Update.
546         * gnulib/import/glob.in.h: Update.
547         * gnulib/import/glob_internal.h: Update.
548         * gnulib/import/glob_pattern_p.c: Update.
549         * gnulib/import/globfree.c: Update.
550         * gnulib/import/hard-locale.c: Update.
551         * gnulib/import/hard-locale.h: Update.
552         * gnulib/import/intprops.h: Update.
553         * gnulib/import/inttypes.in.h: Update.
554         * gnulib/import/isnan.c: Update.
555         * gnulib/import/isnand-nolibm.h: Update.
556         * gnulib/import/isnand.c: Update.
557         * gnulib/import/isnanl-nolibm.h: Update.
558         * gnulib/import/isnanl.c: Update.
559         * gnulib/import/itold.c: Update.
560         * gnulib/import/libc-config.h: Update.
561         * gnulib/import/limits.in.h: Update.
562         * gnulib/import/localcharset.c: Update.
563         * gnulib/import/localcharset.h: Update.
564         * gnulib/import/localtime-buffer.c: Update.
565         * gnulib/import/localtime-buffer.h: Update.
566         * gnulib/import/lstat.c: Update.
567         * gnulib/import/m4/00gnulib.m4: Update.
568         * gnulib/import/m4/__inline.m4: Update.
569         * gnulib/import/m4/absolute-header.m4: Update.
570         * gnulib/import/m4/alloca.m4: Update.
571         * gnulib/import/m4/builtin-expect.m4: Update.
572         * gnulib/import/m4/canonicalize.m4: Update.
573         * gnulib/import/m4/chdir-long.m4: Update.
574         * gnulib/import/m4/close.m4: Update.
575         * gnulib/import/m4/closedir.m4: Update.
576         * gnulib/import/m4/configmake.m4: Update.
577         * gnulib/import/m4/d-ino.m4: Update.
578         * gnulib/import/m4/d-type.m4: Update.
579         * gnulib/import/m4/dirent_h.m4: Update.
580         * gnulib/import/m4/dirfd.m4: Update.
581         * gnulib/import/m4/dirname.m4: Update.
582         * gnulib/import/m4/double-slash-root.m4: Update.
583         * gnulib/import/m4/dup.m4: Update.
584         * gnulib/import/m4/dup2.m4: Update.
585         * gnulib/import/m4/eealloc.m4: Update.
586         * gnulib/import/m4/environ.m4: Update.
587         * gnulib/import/m4/errno_h.m4: Update.
588         * gnulib/import/m4/error.m4: Update.
589         * gnulib/import/m4/exponentd.m4: Update.
590         * gnulib/import/m4/exponentl.m4: Update.
591         * gnulib/import/m4/extensions.m4: Update.
592         * gnulib/import/m4/extern-inline.m4: Update.
593         * gnulib/import/m4/fchdir.m4: Update.
594         * gnulib/import/m4/fcntl-o.m4: Update.
595         * gnulib/import/m4/fcntl.m4: Update.
596         * gnulib/import/m4/fcntl_h.m4: Update.
597         * gnulib/import/m4/fdopendir.m4: Update.
598         * gnulib/import/m4/filenamecat.m4: Update.
599         * gnulib/import/m4/flexmember.m4: Update.
600         * gnulib/import/m4/float_h.m4: Update.
601         * gnulib/import/m4/fnmatch.m4: Update.
602         * gnulib/import/m4/fnmatch_h.m4: Update.
603         * gnulib/import/m4/fpieee.m4: Update.
604         * gnulib/import/m4/frexp.m4: Update.
605         * gnulib/import/m4/frexpl.m4: Update.
606         * gnulib/import/m4/fstat.m4: Update.
607         * gnulib/import/m4/fstatat.m4: Update.
608         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
609         * gnulib/import/m4/getcwd-path-max.m4: Update.
610         * gnulib/import/m4/getcwd.m4: Update.
611         * gnulib/import/m4/getdtablesize.m4: Update.
612         * gnulib/import/m4/getlogin.m4: Update.
613         * gnulib/import/m4/getlogin_r.m4: Update.
614         * gnulib/import/m4/getpagesize.m4: Update.
615         * gnulib/import/m4/getprogname.m4: Update.
616         * gnulib/import/m4/gettimeofday.m4: Update.
617         * gnulib/import/m4/glibc21.m4: Update.
618         * gnulib/import/m4/glob.m4: Update.
619         * gnulib/import/m4/glob_h.m4: Update.
620         * gnulib/import/m4/gnulib-cache.m4: Update.
621         * gnulib/import/m4/gnulib-common.m4: Update.
622         * gnulib/import/m4/gnulib-comp.m4: Update.
623         * gnulib/import/m4/gnulib-tool.m4: Update.
624         * gnulib/import/m4/hard-locale.m4: Update.
625         * gnulib/import/m4/include_next.m4: Update.
626         * gnulib/import/m4/inttypes-pri.m4: Update.
627         * gnulib/import/m4/inttypes.m4: Update.
628         * gnulib/import/m4/isnand.m4: Update.
629         * gnulib/import/m4/isnanl.m4: Update.
630         * gnulib/import/m4/largefile.m4: Update.
631         * gnulib/import/m4/limits-h.m4: Update.
632         * gnulib/import/m4/localcharset.m4: Update.
633         * gnulib/import/m4/locale-fr.m4: Update.
634         * gnulib/import/m4/locale-ja.m4: Update.
635         * gnulib/import/m4/locale-zh.m4: Update.
636         * gnulib/import/m4/localtime-buffer.m4: Update.
637         * gnulib/import/m4/longlong.m4: Update.
638         * gnulib/import/m4/lstat.m4: Update.
639         * gnulib/import/m4/malloc.m4: Update.
640         * gnulib/import/m4/malloca.m4: Update.
641         * gnulib/import/m4/math_h.m4: Update.
642         * gnulib/import/m4/mbrtowc.m4: Update.
643         * gnulib/import/m4/mbsinit.m4: Update.
644         * gnulib/import/m4/mbsrtowcs.m4: Update.
645         * gnulib/import/m4/mbstate_t.m4: Update.
646         * gnulib/import/m4/memchr.m4: Update.
647         * gnulib/import/m4/memmem.m4: Update.
648         * gnulib/import/m4/mempcpy.m4: Update.
649         * gnulib/import/m4/memrchr.m4: Update.
650         * gnulib/import/m4/mkdir.m4: Update.
651         * gnulib/import/m4/mkstemp.m4: Update.
652         * gnulib/import/m4/mmap-anon.m4: Update.
653         * gnulib/import/m4/mode_t.m4: Update.
654         * gnulib/import/m4/msvc-inval.m4: Update.
655         * gnulib/import/m4/msvc-nothrow.m4: Update.
656         * gnulib/import/m4/multiarch.m4: Update.
657         * gnulib/import/m4/nocrash.m4: Update.
658         * gnulib/import/m4/off_t.m4: Update.
659         * gnulib/import/m4/onceonly.m4: Update.
660         * gnulib/import/m4/open-cloexec.m4: Update.
661         * gnulib/import/m4/open.m4: Update.
662         * gnulib/import/m4/openat.m4: Update.
663         * gnulib/import/m4/opendir.m4: Update.
664         * gnulib/import/m4/pathmax.m4: Update.
665         * gnulib/import/m4/rawmemchr.m4: Update.
666         * gnulib/import/m4/readdir.m4: Update.
667         * gnulib/import/m4/readlink.m4: Update.
668         * gnulib/import/m4/realloc.m4: Update.
669         * gnulib/import/m4/rename.m4: Update.
670         * gnulib/import/m4/rewinddir.m4: Update.
671         * gnulib/import/m4/rmdir.m4: Update.
672         * gnulib/import/m4/save-cwd.m4: Update.
673         * gnulib/import/m4/secure_getenv.m4: Update.
674         * gnulib/import/m4/setenv.m4: Update.
675         * gnulib/import/m4/signal_h.m4: Update.
676         * gnulib/import/m4/ssize_t.m4: Update.
677         * gnulib/import/m4/stat-time.m4: Update.
678         * gnulib/import/m4/stat.m4: Update.
679         * gnulib/import/m4/std-gnu11.m4: Update.
680         * gnulib/import/m4/stdbool.m4: Update.
681         * gnulib/import/m4/stddef_h.m4: Update.
682         * gnulib/import/m4/stdint.m4: Update.
683         * gnulib/import/m4/stdio_h.m4: Update.
684         * gnulib/import/m4/stdlib_h.m4: Update.
685         * gnulib/import/m4/strchrnul.m4: Update.
686         * gnulib/import/m4/strdup.m4: Update.
687         * gnulib/import/m4/strerror.m4: Update.
688         * gnulib/import/m4/string_h.m4: Update.
689         * gnulib/import/m4/strstr.m4: Update.
690         * gnulib/import/m4/strtok_r.m4: Update.
691         * gnulib/import/m4/sys_socket_h.m4: Update.
692         * gnulib/import/m4/sys_stat_h.m4: Update.
693         * gnulib/import/m4/sys_time_h.m4: Update.
694         * gnulib/import/m4/sys_types_h.m4: Update.
695         * gnulib/import/m4/tempname.m4: Update.
696         * gnulib/import/m4/time_h.m4: Update.
697         * gnulib/import/m4/unistd-safer.m4: Update.
698         * gnulib/import/m4/unistd_h.m4: Update.
699         * gnulib/import/m4/warn-on-use.m4: Update.
700         * gnulib/import/m4/wchar_h.m4: Update.
701         * gnulib/import/m4/wchar_t.m4: Update.
702         * gnulib/import/m4/wctype_h.m4: Update.
703         * gnulib/import/m4/wint_t.m4: Update.
704         * gnulib/import/malloc.c: Update.
705         * gnulib/import/malloc/scratch_buffer.h: Update.
706         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
707         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
708         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
709         * gnulib/import/malloca.c: Update.
710         * gnulib/import/malloca.h: Update.
711         * gnulib/import/malloca.valgrind: Update.
712         * gnulib/import/math.in.h: Update.
713         * gnulib/import/mbrtowc.c: Update.
714         * gnulib/import/mbsinit.c: Update.
715         * gnulib/import/mbsrtowcs-impl.h: Update.
716         * gnulib/import/mbsrtowcs-state.c: Update.
717         * gnulib/import/mbsrtowcs.c: Update.
718         * gnulib/import/memchr.c: Update.
719         * gnulib/import/memmem.c: Update.
720         * gnulib/import/mempcpy.c: Update.
721         * gnulib/import/memrchr.c: Update.
722         * gnulib/import/mkdir.c: Update.
723         * gnulib/import/mkstemp.c: Update.
724         * gnulib/import/msvc-inval.c: Update.
725         * gnulib/import/msvc-inval.h: Update.
726         * gnulib/import/msvc-nothrow.c: Update.
727         * gnulib/import/msvc-nothrow.h: Update.
728         * gnulib/import/open.c: Update.
729         * gnulib/import/openat-die.c: Update.
730         * gnulib/import/openat-priv.h: Update.
731         * gnulib/import/openat-proc.c: Update.
732         * gnulib/import/openat.c: Update.
733         * gnulib/import/openat.h: Update.
734         * gnulib/import/opendir.c: Update.
735         * gnulib/import/pathmax.h: Update.
736         * gnulib/import/pipe-safer.c: Update.
737         * gnulib/import/rawmemchr.c: Update.
738         * gnulib/import/readdir.c: Update.
739         * gnulib/import/readlink.c: Update.
740         * gnulib/import/realloc.c: Update.
741         * gnulib/import/ref-add.sin: Update.
742         * gnulib/import/ref-del.sin: Update.
743         * gnulib/import/rename.c: Update.
744         * gnulib/import/rewinddir.c: Update.
745         * gnulib/import/rmdir.c: Update.
746         * gnulib/import/same-inode.h: Update.
747         * gnulib/import/save-cwd.c: Update.
748         * gnulib/import/save-cwd.h: Update.
749         * gnulib/import/scratch_buffer.h: Update.
750         * gnulib/import/secure_getenv.c: Update.
751         * gnulib/import/setenv.c: Update.
752         * gnulib/import/signal.in.h: Update.
753         * gnulib/import/stat-time.c: Update.
754         * gnulib/import/stat-time.h: Update.
755         * gnulib/import/stat-w32.c: Update.
756         * gnulib/import/stat-w32.h: Update.
757         * gnulib/import/stat.c: Update.
758         * gnulib/import/stdbool.in.h: Update.
759         * gnulib/import/stddef.in.h: Update.
760         * gnulib/import/stdint.in.h: Update.
761         * gnulib/import/stdio.in.h: Update.
762         * gnulib/import/stdlib.in.h: Update.
763         * gnulib/import/str-two-way.h: Update.
764         * gnulib/import/strchrnul.c: Update.
765         * gnulib/import/strdup.c: Update.
766         * gnulib/import/streq.h: Update.
767         * gnulib/import/strerror-override.c: Update.
768         * gnulib/import/strerror-override.h: Update.
769         * gnulib/import/strerror.c: Update.
770         * gnulib/import/string.in.h: Update.
771         * gnulib/import/stripslash.c: Update.
772         * gnulib/import/strnlen1.c: Update.
773         * gnulib/import/strnlen1.h: Update.
774         * gnulib/import/strstr.c: Update.
775         * gnulib/import/strtok_r.c: Update.
776         * gnulib/import/sys_stat.in.h: Update.
777         * gnulib/import/sys_time.in.h: Update.
778         * gnulib/import/sys_types.in.h: Update.
779         * gnulib/import/tempname.c: Update.
780         * gnulib/import/tempname.h: Update.
781         * gnulib/import/time.in.h: Update.
782         * gnulib/import/unistd--.h: Update.
783         * gnulib/import/unistd-safer.h: Update.
784         * gnulib/import/unistd.in.h: Update.
785         * gnulib/import/unsetenv.c: Update.
786         * gnulib/import/verify.h: Update.
787         * gnulib/import/extra/snippet/warn-on-use.h: Update.
788         * gnulib/import/wchar.in.h: Update.
789         * gnulib/import/wctype.in.h: Update.
790         * gnulib/import/xalloc-oversized.h: Update.
791         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
792         "53e2c179f26a890fa6685af4b6c1397ee370433b".
793
794 2018-08-16  Gary Benson <gbenson@redhat.com>
795
796         PR gdb/13000:
797         * gdb/main.c (captured_main_1): Exit with nonzero status
798         in batch mode if the last command to be executed failed.
799         * NEWS: Mention the above.
800
801 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
802
803         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
804         end of warning message.
805
806 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
807
808         PR gdb/22943:
809         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
810         (aarch64_extract_return_value): Use
811         aapcs_is_vfp_call_or_return_candidate.
812         (aarch64_return_in_memory): Likewise.
813         (aarch64_store_return_value): Likewise.
814
815 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
816
817         * aarch64-tdep.c
818         (aapcs_is_vfp_call_or_return_candidate): Make static
819         (pass_in_v_or_stack): Remove function.
820         (pass_in_v_vfp_candidate): New function.
821         (aarch64_push_dummy_call): Check for float register candidates.
822
823 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
824
825         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
826         (aapcs_is_vfp_call_or_return_candidate_1): New function.
827         (aapcs_is_vfp_call_or_return_candidate): Likewise.
828
829 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
830
831         PR build/23399
832         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
833         (struct ipa_sym_addresses): Rename to...
834         (struct ipa_sym_addresses_common): ... this.
835         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
836
837 2018-08-28  Tom Tromey  <tom@tromey.com>
838
839         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
840         (token_fifo): Now a std::vector.
841         (yylex, c_parse): Update.
842         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
843         (token_fifo): Now a std::vector.
844         (yylex, d_parse): Update.
845         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
846         (token_fifo): Now a std::vector.
847         (yylex, go_parse): Update.
848
849 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
850
851         * parser-defs.h (struct type_stack) <elements>: Change type to
852         std::vector<union type_stack_elt>.
853         <depth, size>: Remove.
854         * parse.c (parse_exp_in_context_1): Adjust.
855         (type_stack_reserve): Remove.
856         (check_type_stack_depth): Remove.
857         (insert_into_type_stack): Adjust to std::vector.
858         (insert_type): Likewise.
859         (push_type): Likewise.
860         (push_type_int): Likewise.
861         (insert_type_address_space): Likewise.
862         (pop_type): Likewise.
863         (pop_type_int): Likewise.
864         (pop_typelist): Likewise.
865         (pop_type_stack): Likewise.
866         (append_type_stack): Likewise.
867         (push_type_stack): Likewise.
868         (get_type_stack): Likewise.
869         (type_stack_cleanup): Likewise.
870         (push_typelist): Likewise.
871         (follow_types): Likewise.
872         (_initialize_parse): Likewise.
873
874 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
875
876         * NEWS: Mention csky target.
877
878 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
879             Hafiz Abid Qadeer  <abidh@codesourcery.com>
880             Don Breazeal  <donb@codesourcery.com>
881
882         * csky-linux-tdep.c: New file.
883         * csky-tdep.c: Likewise.
884         * csky-tdep.h: Likewise.
885         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
886         csky-tdep.o.
887         (HFILES_NO_SRCDIR): Add csky-tdep.h.
888         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
889         * configure.tgt: Add csky support.
890
891 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
892
893         * python/py-framefilter.c (py_print_frame): Print frame architecture
894         when printing on an MI output.
895
896 2018-08-27  Tom Tromey  <tom@tromey.com>
897
898         PR build/23087:
899         * configure: Rebuild.
900         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
901
902 2018-08-27  Tom Tromey  <tom@tromey.com>
903
904         * aarch64-linux-tdep.c
905         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
906         casts to int.
907
908 2018-08-27  Tom Tromey  <tom@tromey.com>
909
910         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
911         unsigned.
912         (ppc64_standard_linkage1, ppc64_standard_linkage2)
913         (ppc64_standard_linkage3, ppc64_standard_linkage4)
914         (ppc64_standard_linkage5, ppc64_standard_linkage6)
915         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
916         unsigned.
917
918 2018-08-27  Tom Tromey  <tom@tromey.com>
919
920         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
921         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
922
923 2018-08-27  Tom Tromey  <tom@tromey.com>
924
925         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
926         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
927         ULONGEST_MAX.
928         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
929         ULONGEST_MAX.
930         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
931         ULONGEST_MAX.
932         * sparc-linux-tdep.c (sparc32_linux_sigframe)
933         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
934         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
935         ULONGEST_MAX.
936         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
937         (ppc64_linux_sigaction_tramp_frame)
938         (ppc32_linux_sighandler_tramp_frame)
939         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
940         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
941         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
942         * mn10300-linux-tdep.c (am33_linux_sigframe)
943         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
944         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
945         * mips-linux-tdep.c (mips_linux_o32_sigframe)
946         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
947         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
948         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
949         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
950         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
951         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
952         * microblaze-linux-tdep.c
953         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
954         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
955         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
956         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
957         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
958         * common/common-types.h (ULONGEST_MAX): New define.
959         (CORE_ADDR_MAX): Fix formatting.
960         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
961         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
962         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
963         (arm_linux_rt_sigreturn_tramp_frame)
964         (arm_eabi_linux_sigreturn_tramp_frame)
965         (arm_eabi_linux_rt_sigreturn_tramp_frame)
966         (thumb2_eabi_linux_sigreturn_tramp_frame)
967         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
968         (arm_linux_restart_syscall_tramp_frame)
969         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
970         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
971         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
972         ULONGEST_MAX.
973         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
974
975 2018-08-27  Tom Tromey  <tom@tromey.com>
976
977         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
978         CORE_ADDR_MAX.
979         * mips-tdep.c (mips_deal_with_atomic_sequence)
980         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
981         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
982         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
983         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
984         CORE_ADDR_MAX.
985         * aarch64-tdep.c (aarch64_software_single_step): Use
986         CORE_ADDR_MAX.
987
988 2018-08-27  Tom Tromey  <tom@tromey.com>
989
990         * linespec.c (complete_linespec_component): Add cast to "char".
991         * completer.c (completion_tracker::build_completion_result): Add
992         cast to "char".
993
994 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
995
996         * solist.h (struct solist, struct target_so_ops): Fix
997         indentation.
998
999 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
1000
1001         * ada-tasks.c (ada_task_info_s): Remove typedef.
1002         (DEF_VEC_O(ada_task_info_s)): Remove.
1003         (struct ada_tasks_inferior_data): Initialize fields.
1004         <task_list>: Make an std::vector.
1005         (get_ada_tasks_inferior_data): Allocate with new.
1006         (ada_get_task_number): Adjust.
1007         (get_task_number_from_id): Likewise.
1008         (valid_task_id): Likewise.
1009         (ada_get_task_info_from_ptid): Likewise.
1010         (iterate_over_live_ada_tasks): Likewise.
1011         (add_ada_task): Likewise.
1012         (read_known_tasks): Likewise.
1013         (ada_build_task_list): Likewise.
1014         (print_ada_task_info): Likewise.
1015         (info_task): Likewise.
1016         (task_command_1): Likewise.
1017
1018 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
1019
1020         * ada-lang.c (add_angle_brackets): Return std::string.
1021
1022 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
1023
1024         * python/py-threadevent.c (py_get_event_thread): Initialize
1025         pythread.
1026
1027 2018-08-24  Pedro Alves  <palves@redhat.com>
1028
1029         * python/py-bpevent.c (create_breakpoint_event_object): Use
1030         copy-initialization.
1031         * python/py-continueevent.c (emit_continue_event): Use
1032         copy-initialization.
1033         * python/py-exitedevent.c (create_exited_event_object): Return a
1034         gdbpy_ref<>.
1035         (emit_exited_event): Use copy-initialization.
1036         * python/py-inferior.c (python_new_inferior)
1037         (python_inferior_deleted, add_thread_object): Use
1038         copy-initialization.
1039         * python/py-infevents.c (create_inferior_call_event_object)
1040         (create_register_changed_event_object)
1041         (create_memory_changed_event_object): Return a gdbpy_ref<>.
1042         (emit_inferior_call_event, emit_memory_changed_event)
1043         (emit_register_changed_event): Use copy-initialization.
1044         * python/py-newobjfileevent.c (create_new_objfile_event_object):
1045         Return a gdbpy_ref<>.
1046         (emit_new_objfile_event): Use copy-initialization.
1047         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
1048         (emit_clear_objfiles_event): Use copy-initialization.
1049         * python/py-signalevent.c (create_signal_event_object): Use
1050         copy-initialization.
1051         * python/py-threadevent.c (create_thread_event_object): Use
1052         copy-initialization.
1053
1054 2018-08-24  Pedro Alves  <palves@redhat.com>
1055             Simon Marchi  <simon.marchi@ericsson.com>
1056
1057         PR gdb/23379
1058         * python/py-continueevent.c: Include "gdbthread.h".
1059         (create_continue_event_object): Add intro comment.  Add 'ptid'
1060         parameter.  Use it to find thread to pass to
1061         create_thread_event_object.
1062         (emit_continue_event): Pass PTID down to
1063         create_continue_event_object.
1064         * python/py-event.h (py_get_event_thread): Declare.
1065         (create_thread_event_object): Remove default from 'thread'
1066         parameter.
1067         * python/py-stopevent.c (create_stop_event_object): Use
1068         py_get_event_thread.
1069         * python/py-threadevent.c (get_event_thread): Rename to ...
1070         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
1071         and use it to find the thread.
1072         (create_thread_event_object): Assert that THREAD isn't null.
1073         Don't find the event thread here.
1074
1075 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
1076
1077         * block.h (blockrange, blockranges): New struct declarations.
1078         (struct block): Add new field named `ranges'.
1079         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
1080         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
1081         macros for accessing ranges in struct block.
1082         (make_blockranges): New declaration.
1083         block.c (make_blockranges): New function.
1084         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
1085         for block.
1086         * symtab.h (find_pc_partial_function): Add new parameter `block'.
1087         * blockframe.c (cache_pc_function_block): New static global.
1088         (clear_pc_function_cache): Clear cache_pc_function_block.
1089         (find_pc_partial_function): Move comment to symtab.h.  Add
1090         support for non-contiguous blocks.
1091         * cli/cli-cmds.c (block.h): Include.
1092         (print_disassembly): Handle printing of non-contiguous blocks.
1093         (disassemble_current_function): Likewise.
1094         (disassemble_command): Likewise.
1095
1096         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
1097         BLOCK_START.
1098         * blockframe.c (get_pc_function_start): Likewise.
1099         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
1100         (gcc_symbol_address): Likewise.
1101         * compile/compile-object-run.c (compile_object_run): Likewise.
1102         * compile/compile.c (get_expr_block_and_pc): Likewise.
1103         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
1104         (func_addr_to_tail_call_list): Likewise.
1105         * findvar.c (default_read_var_value): Likewise.
1106         * inline-frame.c (inline_frame_this_id): Likewise.
1107         (skip-inline_frames): Likewise.
1108         * infcmd.c (until_next_command): Likewise.
1109         * linespec.c (convert_linespec_to_sals): Likewise.
1110         * parse.c (parse_exp_in_context_1): Likewise.
1111         * printcmd.c (build_address_symbolic): likewise.
1112         (info_address_command): Likewise.
1113         symtab.c (find_function_start_sal): Likewise.
1114         (skip_prologue_sal): Likewise.
1115         (find_function_alias_target): Likewise.
1116         (find_gnu_ifunc): Likewise.
1117         * stack.c (find_frame_funname): Likewise.
1118         * symtab.c (fixup_symbol_section): Likewise.
1119         (find_function_start_sal): Likewise.
1120         (skip_prologue_sal): Likewsie.
1121         (find_function_alias_target): Likewise.
1122         (find_gnu_ifunc): Likewise.
1123         * tracepoint.c (info_scope_command): Likewise.
1124         * value.c (value_fn_field): Likewise.
1125
1126         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
1127         in place of find_pc_partial_function.
1128         * blockframe.c (find_function_entry_range_from_pc): New function.
1129         * symtab.h (find_function_entry_range_from_pc): Declare and document.
1130         * objfiles.c (objfile_relocate1): Relocate start and end addresses
1131         for each range in a block.
1132
1133
1134 2018-08-23  Xavier Roirand  <roirand@adacore.com>
1135
1136         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
1137         incrementation.
1138
1139 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
1140
1141         * solib-svr4.c (read_program_headers_from_bfd): Return
1142         gdb::optional<gdb::byte_vector>.
1143         (svr4_exec_displacement): Adjust.
1144
1145 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
1146
1147         * solib-svr4.c (read_program_header): Return
1148         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
1149         (find_program_interpreter): Return
1150         gdb::optional<gdb::byte_vector>.
1151         (scan_dyntag_auxv): Adjust.
1152         (enable_break): Adjust.
1153         (svr4_exec_displacement): Adjust.
1154
1155 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
1156
1157         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
1158         * inf-child.c (inf_child_target::terminal_save_inferior): New.
1159
1160 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
1161
1162         * guile/scm-string.c (gdbscm_scm_from_printf): Use
1163         string_vprintf.
1164         * guile/scm-utils.c (gdbscm_printf): Likewise.
1165         * serial.c (serial_printf): Likewise.
1166         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
1167
1168 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
1169
1170         * stack.c (print_frame): Print frame architecture when printing on
1171         an MI output.
1172         * NEWS: Mention new "arch" attribute in frame output.
1173
1174 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
1175
1176         * arch/aarch64.h (aarch64_regnum): Update comment.
1177
1178 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
1179
1180         * NEWS: Add SVE to 8.2 section.
1181
1182 2018-08-21  Pedro Alves  <palves@redhat.com>
1183
1184         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
1185         out from gdbscm_parse_function_args.
1186         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
1187         gdbscm_parse_function_args_1.
1188
1189 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
1190
1191         PR gdb/17816
1192         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
1193         operator.
1194
1195 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
1196
1197         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
1198
1199 2018-08-19  Michael Spang  <spang@google.com>
1200
1201         PR gdb/11786
1202         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
1203         for PT_TLS segments.
1204
1205 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
1206
1207         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
1208         dwarf_variable_value.
1209         * dwarf2-frame.c (class dwarf_expr_executor):
1210         Add override for dwarf_variable_value.
1211         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
1212         (class symbol_needs_eval_context): Likewise.
1213         (indirect_synthetic_pointer): Add forward declaration.
1214         (sect_variable_value): New function.
1215         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
1216         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
1217         for DW_OP_GNU_variable_value.
1218
1219 2018-08-16  Tom Tromey  <tom@tromey.com>
1220
1221         * top.c (read_command_file): Update.
1222         (command_line_input): Remove "repeat" argument.
1223         * ada-lang.c (get_selections): Update.
1224         * linespec.c (decode_line_2): Update.
1225         * defs.h (command_line_input): Remove argument.
1226         * cli/cli-script.c (read_next_line): Update.
1227         * python/py-gdb-readline.c: Update.
1228
1229 2018-08-17  Tom Tromey  <tom@tromey.com>
1230
1231         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
1232         command_line_input.
1233
1234 2018-08-15  Tom Tromey  <tom@tromey.com>
1235
1236         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
1237
1238 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
1239
1240         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
1241         If used, use find_pc_partial_function to find address range
1242         to disassemble.
1243         * mi/mi-main.c (mi_cmd_list_features): Report
1244         "data-disassemble-a-option" feature.
1245         * NEWS: Mention new -data-disassemble option -a.
1246
1247 2018-08-13  Tom Tromey  <tom@tromey.com>
1248
1249         * common/common-defs.h (_FORTIFY_SOURCE): Define.
1250
1251 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
1252
1253         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
1254         (aarch64_linux_collect_sve_regset): Likewise.
1255         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
1256         * regcache.h (regcache_map_entry_size): New function.
1257
1258 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
1259
1260         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
1261         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
1262         (SVE_HEADER_VL_LENGTH): Likewise.
1263         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
1264         (SVE_HEADER_FLAGS_LENGTH): Likewise.
1265         (SVE_HEADER_RESERVED_LENGTH): Likewise.
1266         (SVE_HEADER_SIZE_OFFSET): Likewise.
1267         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
1268         (SVE_HEADER_VL_OFFSET): Likewise.
1269         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
1270         (SVE_HEADER_FLAGS_OFFSET): Likewise.
1271         (SVE_HEADER_RESERVED_OFFSET): Likewise.
1272         (SVE_HEADER_SIZE): Likewise.
1273         (aarch64_linux_core_read_vq): Add function.
1274         (aarch64_linux_core_read_description): Check for SVE section.
1275
1276 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
1277
1278         * aarch64-fbsd-tdep.c
1279         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
1280         collect_size.
1281         * aarch64-linux-tdep.c
1282         (aarch64_linux_iterate_over_regset_sections): Likewise.
1283         * alpha-linux-tdep.c
1284         (alpha_linux_iterate_over_regset_sections):
1285         * alpha-nbsd-tdep.c
1286         (alphanbsd_iterate_over_regset_sections): Likewise.
1287         * amd64-fbsd-tdep.c
1288         (amd64fbsd_iterate_over_regset_sections): Likewise.
1289         * amd64-linux-tdep.c
1290         (amd64_linux_iterate_over_regset_sections): Likewise.
1291         * arm-bsd-tdep.c
1292         (armbsd_iterate_over_regset_sections): Likewise.
1293         * arm-fbsd-tdep.c
1294         (arm_fbsd_iterate_over_regset_sections): Likewise.
1295         * arm-linux-tdep.c
1296         (arm_linux_iterate_over_regset_sections): Likewise.
1297         * corelow.c (get_core_registers_cb): Likewise.
1298         (core_target::fetch_registers): Likewise.
1299         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
1300         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
1301         * gdbarch.h (void): Regenerate.
1302         * gdbarch.sh: Add supply_size and collect_size.
1303         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
1304         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
1305         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
1306         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
1307         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
1308         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
1309         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
1310         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
1311         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
1312         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
1313         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
1314         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
1315         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
1316         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
1317         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections): Likewise.
1318         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
1319         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
1320         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
1321         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
1322         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
1323         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
1324         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections): Likewise.
1325         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
1326         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
1327         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
1328         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
1329         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
1330         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
1331         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
1332         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
1333
1334 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
1335
1336         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
1337         with string_printf.
1338
1339 2018-08-10  Keith Seitz  <keiths@redhat.com>
1340
1341         * compile/compile-c-support.c (add_code_header, add_code_footer):
1342         Move into policy class.
1343         (c_push_user_expression, pop_user_expression_nop)
1344         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
1345         (compile_program): New host class.
1346         (c_compile_program): New typedef.
1347         (c_compute_porgram): Use c_compile_program.
1348
1349 2018-08-10  Keith Seitz  <keiths@redhat.com>
1350
1351         * compile/compile-internal.h (compile_instance::~compile_instance):
1352         Remove calls to htab_delete.
1353         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
1354         * compile.c (compile_instance::compile_instance): Initialize
1355         htab unique pointers.
1356         (compile_instance::get_cached_type, compile_instance::insert_type)
1357         (compile_instance::error_symbol_once): Update for unique_ptr.
1358
1359 2018-08-10  Keith Seitz  <keiths@redhat.com>
1360
1361         * compile/compile-c-symbols.c (struct symbol_error)
1362         (hash_symbol_error, eq_symbol_error, del_symbol_error)
1363         (compile_instance::insert_symbol_error)
1364         (compile_instance::error_symbol_once): Move to ...
1365         * compile/compile.c: ... here.
1366
1367 2018-08-10  Keith Seitz  <keiths@redhat.com>
1368
1369         * compile/compile-c-support.c (c_get_compile_context): Use `new'
1370         instead of `new_compile_instance'.
1371         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
1372         Update description.
1373         If the symbol error map is not initialized, create it.
1374         (generate_c_for_for_one_symbol): Do not check/initialize
1375         the symbol error map.
1376         * compile/compile-c-types.c (compile_c_instance): Make a class.
1377         Update all callers.
1378         (compile_instance::compile_instance): Initialize the type cache.
1379         (get_cached_type): New function.
1380         (insert_type): Update description.
1381         (compile_c_instance::m_default_cflags): Define.
1382         (convert_type): Update description.  Use get_cached_type.
1383         (delete_instance): Moved to destructor.
1384         (new_compile_instance): Moved to constructor.
1385         * compile/compile-c.h (compile_c_instance): Make class inheriting
1386         from compile_instance.
1387         <base>: Remove field.
1388         <type_map, symbol_err_map>: Move to base class.
1389         <c_plugin>: Rename to `m_plugin' and remove pointer type.
1390         * compile/compile-internal.h (compile_instance): Make class.
1391         <type_map_t, symbol_err_map_t>: Define.
1392         <fe>: Rename to `m_gcc_fe'.
1393         <scope, block, gcc_target_options>: Add `m_' prefix.
1394         <m_type_map, m_symbol_err_map>: New fields, moved from
1395         compile_c_instance.
1396         <destroy>: Remove.
1397         (convert_type, new_compile_instance): Remove.
1398         * compile/compile.c (cleanup_compile_instance): Remove.
1399         (compile_to_object): Use unique_ptr to eliminate cleanups.
1400         (compile_instance::set_print_callback, compile_instance::version)
1401         (compile_instance::set_verbose)
1402         (compile_instance::set_driver_filename)
1403         (compile_instance::set_triplet_regexp)
1404         (compile_instance::set_arguments)
1405         (compile_instance::set_source_file)
1406         (compile_instance::compile): Define.
1407
1408 2018-08-10  Keith Seitz  <keiths@redhat.com>
1409
1410         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
1411         * compile/compile-c-types.c: Define GCC_METHODN macros and include
1412         gcc-c-fe.def to define C plugin.
1413         (delete_instance): Delete `c_plugin'.
1414         (new_compile_instance): Initialize `c_plugin'.
1415         * compile/compile-c.h: Include gcc_c_plugin.h.
1416         (struct compile_c_instance) <c_plugin>: New member.
1417         * gcc-c-plugin.h: New file.
1418         Update all callers with API change.
1419
1420 2018-08-10  Keith Seitz  <keiths@redhat.com>
1421
1422         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
1423         (HFILES_NO_SRCDIR): ... to here.
1424         Add compile-internal.h and compile-c.h.
1425         * compile/compile-c-support.c: Include compile-c.h.
1426         * compile/compile-c-symbols.c: Include compile-c.h.
1427         (generate_c_for_variable_locations): Update comment.
1428         * compile/compile-c-types.c: Include compile-c.h.
1429         * compile/compile-c.h: New file -- moved C language declarations
1430         from other files here.
1431         * compile/compile-internal.h: Do not include hashtab.h or
1432         common/enum-flags.h.
1433         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
1434         (gcc_convert_symbol, gcc_symbol_address)
1435         (generate_c_for_variable_locations, c_get_mode_for_size)
1436         (c_get_range_decl_name): Definitions moved to compile-c.h.
1437         * compile/compile-loc2c.c: Include compile-c.h.
1438
1439 2018-08-10  Keith Seitz  <keiths@redhat.com>
1440
1441         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
1442         (c_symbol_substitution_name): ... this.
1443         Update all callers.
1444
1445 2018-08-10  Keith Seitz  <keiths@redhat.com>
1446
1447         * compile/compile-c-support.c (c_compute_program): Use
1448         unique_xmalloc_ptr to eliminate cleanup.
1449         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
1450         Return a unique_xmalloc_ptr and eliminate cleanup.
1451         * compile/compile-internal.h (generate_c_for_variable_locations):
1452         Return unique_xmalloc_ptr and update description.
1453
1454 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
1455
1456         * corelow.c (core_target::get_core_register_section): Rename
1457         min_size to section_min_size.
1458
1459 2018-08-09  Jim Wilson  <jimw@sifive.com>
1460
1461         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
1462         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
1463         * NEWS: Mention new GNU/Linux RISC-V target.
1464         * configure.host: Add riscv*-*-linux*.
1465         * configure.nat: Add riscv*.
1466         * configure.tgt: Add riscv*-*-linux*.
1467         * riscv-linux-nat.c: New file.
1468         * riscv-linux-tdep.c: New file.
1469
1470 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
1471
1472         * infrun.c (resume): Make static, add forward declaration.
1473         (proceed): Update header comment.
1474         * infrun.h (resume): Delete declaration.
1475
1476 2018-08-09  Tom Tromey  <tom@tromey.com>
1477
1478         * riscv-tdep.h: Minor formatting fixes.
1479
1480 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
1481
1482         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
1483         * dwarf-index-cache.c (create_dir_and_check): Likewise.
1484         (test_mkdir_recursive): Likewise.
1485         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
1486
1487 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
1488
1489         * valarith.c (value_subscripted_rvalue): If an array is not in
1490         memory, and we don't know the upper bound, then we can't know that
1491         the requested element exists or not.
1492
1493 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
1494
1495         * target.c (str_comma_list_concat_elem): Fix typo in comment.
1496         (target_options_to_string): Add comment.
1497
1498 2018-08-08  Tom Tromey  <tom@tromey.com>
1499
1500         * unittests/scoped_mmap-selftests.c: Check result of "write".
1501
1502 2018-08-08  Jim Wilson  <jimw@sifive.com>
1503
1504         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
1505         (decode_register_index_short): New.
1506         (decode_j_type_insn, decode_cj_type_insn): New.
1507         (decode_b_type_insn, decode_cb_type_insn): New.
1508         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
1509         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
1510         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
1511         is_c_sw_insn instead of is_sw_insn.
1512         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
1513         (riscv_software_single_step): New.
1514         * riscv-tdep.h (riscv_software_single_step): Declare.
1515
1516         * riscv-tdep.c (riscv_isa_xlen): Drop static.
1517         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
1518
1519 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
1520
1521         PR gdb/18050:
1522         * target.c (dispose_inferior): Don't dispose of inferiors that are
1523         already killed.
1524
1525 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
1526
1527         * remote.c (remote_target::download_tracepoint): Change char* to
1528         const char*.
1529
1530 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
1531
1532         * target.h (target_options_to_string): Return an std::string.
1533         * target.c (str_comma_list_concat_elem): Return void, use
1534         std::string.
1535         (do_option): Likewise.
1536         (target_options_to_string): Return an std::string.
1537         * linux-nat.c (linux_nat_target::wait): Adjust.
1538         * target-debug.h (target_debug_print_options): Adjust.
1539
1540 2018-08-07  Tom Tromey  <tom@tromey.com>
1541
1542         * Makefile.in (CPPFLAGS): New variable.
1543         (INTERNAL_CPPFLAGS): Use it.
1544
1545 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
1546
1547         * NEWS: Mention the index cache.
1548
1549 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
1550
1551         * common/pathstuff.h (get_standard_cache_dir): New.
1552         * common/pathstuff.c (get_standard_cache_dir): New.
1553         * build-id.h (build_id_to_string): New.
1554         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
1555         DEBUG_STR_SUFFIX): Move to here.
1556         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
1557         DEBUG_STR_SUFFIX): Move from there.
1558         (write_psymtabs_to_index): Make non-static, add basename
1559         parameter.  Write to temporary files, rename when done.
1560         (save_gdb_index_command): Adjust call to
1561         write_psymtabs_to_index.
1562         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
1563         field.
1564         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
1565         (get_gdb_index_contents_from_cache): New.
1566         (get_gdb_index_contents_from_cache_dwz): New.
1567         (dwarf2_initialize_objfile): Read index from cache.
1568         (dwarf2_build_psymtabs): Save to index.
1569         * dwarf-index-cache.h: New file.
1570         * dwarf-index-cache.c: New file.
1571         * dwarf-index-write.h: New file.
1572
1573 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
1574
1575         * gnulib/aclocal.m4: Re-generate.
1576         * gnulib/config.in: Re-generate.
1577         * gnulib/configure: Re-generate.
1578         * gnulib/import/Makefile.am: Re-generate.
1579         * gnulib/import/Makefile.in: Re-generate.
1580         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
1581         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
1582         * gnulib/import/m4/mkdir.m4: New file.
1583         * gnulib/import/mkdir.c: New file.
1584         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
1585         module.
1586
1587 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
1588
1589         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
1590         * common/scoped_mmap.c: New file.
1591         * common/scoped_mmap.h (destroy): New method.
1592         (~scoped_mmap, reset): Use destroy.
1593         (scoped_mmap): New move constructor.
1594         (mmap_file): New declaration.
1595         * unittests/scoped_mmap-selftests.c (test_normal,
1596         test_invalid_filename, run_tests): New functions.
1597         (_initialize_scoped_mmap_selftests): Register selftest.
1598
1599 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
1600
1601         * dwarf2read.c (read_gdb_index_from_section): Rename to...
1602         (read_gdb_index_from_buffer): ... this.  Remove section
1603         parameter, add buffer parameter.
1604         (get_gdb_index_contents_ftype,
1605         get_gdb_index_contents_dwz_ftype): New typedefs.
1606         (dwarf2_read_gdb_index): Add callback parameters to get the
1607         index contents.
1608         (get_gdb_index_contents_from_section): New.
1609         (dwarf2_initialize_objfile): Update call to
1610         dwarf2_read_gdb_index.
1611
1612 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
1613
1614         * common/filestuff.h (gdb_fopen_cloexec): New overload.
1615         (gdb_open_cloexec): Likewise.
1616         * nat/linux-osdata.c (command_from_pid): Use string_printf.
1617         (commandline_from_pid): Likewise.
1618         (linux_xfer_osdata_threads): Likewise.
1619         (linux_xfer_osdata_fds): Likewise.
1620         * ada-lang.c (is_package_name): Likewise.
1621         * auxv.c (procfs_xfer_auxv): Likewise.
1622         * breakpoint.c (print_one_breakpoint_location): Use
1623         uiout::field_fmt.
1624         (print_one_catch_solib): Use string_printf.
1625         * coff-pe-read.c (add_pe_exported_sym): Likewise.
1626         (add_pe_forwarded_sym): Likewise.
1627         * dwarf2read.c (create_type_unit_group): Likewise.
1628         (build_error_marker_type): Likewise.
1629         * infcall.c (get_function_name): Likewise.
1630         * valprint.c (print_converted_chars_to_obstack): Likewise.
1631         * xtensa-tdep.c (xtensa_register_type): Likewise.
1632
1633 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
1634
1635         * remote.c (remote_target::download_tracepoint): Fix format
1636         string errors.
1637
1638 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1639
1640         * tracefile.c: Include common/byte-vector.h.
1641         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
1642         with trace_regblock_size if needed.  Update uses of buf.
1643
1644 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1645
1646         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
1647         std::vector<unsigned char>.
1648         * tracepoint.c (collection_list::collection_list): Remove
1649         m_regs_mask initializer from initializer list.  Resize
1650         m_regs_mask using the largest remote register number.
1651         (collection_list::add_remote_register): Remove size check on
1652         m_regs_mask.  Use at to access element.
1653         (collection_list::stringify): Change type of temp_buf to
1654         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
1655         stringify the register mask.  Use pack_hex_byte for the register
1656         mask.
1657
1658 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1659
1660         * tracepoint.h (class collection_list) <add_register>: Remove.
1661         <add_remote_register, add_ax_registers, add_local_register>:
1662         Declare.
1663         <add_memrange>: Add scope parameter.
1664         * tracepoint.c (encode_actions_1): Likewise.
1665         (collection_list::add_register): Rename to ...
1666         (collection_list::add_remote_register): ... this.  Update
1667         comment.
1668         (collection_list::add_ax_registers, add_local_register): New
1669         methods.
1670         (collection_list::add_memrange): Add scope parameter.  Call
1671         add_local_register instead of add_register.
1672         (finalize_tracepoint_aexpr): New function.
1673         (collection_list::collect_symbol): Update calls to add_memrange.
1674         Call add_local_register instead of add_register.  Call
1675         add_ax_registers.  Call finalize_tracepoint_aexpr.
1676         (encode_actions_1): Get remote regnos for $reg action.  Call
1677         add_remote_register, add_ax_registers, and add_local_register.
1678         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
1679         (validate_actionline): Call finalize_tracepoint_aexpr.
1680
1681 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1682
1683         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
1684         Replace array buf with gdb::char_vector buf, of size
1685         get_remote_packet_size ().  Replace references to buf and
1686         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
1687         and xsnprintf with snprintf.  Raise errors if the buffer is too
1688         small.
1689
1690 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1691
1692         * remote.c (remote_target::download_tracepoint): Fix the has_more
1693         predicate in the QTDP action list iteration.
1694
1695 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1696
1697         * remote.c (remote_target::download_tracepoint): Fix indentation
1698         in for block.
1699
1700 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1701
1702         * proc-api.c (_initialize_proc_api): Remove c, unused.
1703         * procfs.c (procfs_init_inferior): Remove signals, unused.
1704         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
1705         unused.
1706
1707 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
1708             Andrew Burgess  <andrew.burgess@embecosm.com>
1709
1710         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
1711         'W_STOPCODE (0)' as this could be ambiguous.
1712
1713 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
1714
1715         * ser-tcp.c (net_open): Fix thinko when deciding whether to
1716         disable TCP's Nagle algorithm (use "ai_protocol" instead of
1717         "ai_socktype").
1718
1719 2018-08-02  Tom Tromey  <tom@tromey.com>
1720
1721         PR symtab/16842.
1722         * dwarf2read.c (read_func_scope): Set symtab on template parameter
1723         symbols.
1724         (process_structure_scope): Likewise.
1725
1726 2018-08-02  Xavier Roirand  <roirand@adacore.com>
1727
1728         PR gdb/22629:
1729         * darwin-nat.c (darwin_kill_inferior): Fix handling of
1730         kill inferior.
1731
1732 2018-08-02  Tom Tromey  <tom@tromey.com>
1733
1734         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
1735         (darwin_suspend_inferior, darwin_resume_inferior)
1736         (darwin_decode_notify_message, darwin_resume_inferior_threads)
1737         (darwin_check_new_threads): Check result of get_darwin_inferior.
1738
1739 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
1740
1741         GDB 8.1.1 released.
1742
1743 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
1744
1745         * varobj.c (varobj_get_path_expr_parent): Report an error if
1746         parent is a dynamic varobj.
1747
1748 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
1749
1750         * gnulib/aclocal.m4: Re-generate.
1751         * gnulib/config.in: Re-generate.
1752         * gnulib/configure: Re-generate.
1753         * gnulib/import/Makefile.in: Re-generate.
1754         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
1755         * gnulib/import/m4/onceonly.m4: Re-generate.
1756
1757 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
1758
1759         * target-descriptions.c (struct xml_test_tdesc): New.
1760         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
1761         (record_xml_tdesc): Update.
1762         (maintenance_check_xml_descriptions): Update.
1763         * target-descriptions.h (record_xml_tdesc): Update comment.
1764
1765 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
1766
1767         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
1768         checking array bounds are defined.
1769
1770 2018-07-30  Tom Tromey  <tom@tromey.com>
1771
1772         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
1773         irreflexivity violation.
1774
1775 2018-07-30  Tom Tromey  <tom@tromey.com>
1776
1777         * cli/cli-decode.c (lookup_cmd): Remove lint code.
1778         * value.c (unpack_long): Remove lint code.
1779         * valops.c (value_ind): Remove lint code.
1780         * valarith.c (value_x_binop, value_x_unop, value_equal)
1781         (value_pos): Remove lint code.
1782
1783 2018-07-28  Tom de Vries  <tdevries@suse.de>
1784
1785         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
1786         with undefined upper bound as <optimized out>.
1787
1788 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
1789
1790         * gcore.in: Rename variable "name" to "prefix".  Expand
1791         "usage" text.
1792
1793 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
1794
1795         * windows-nat.c (windows_nat_target::create_inferior): Update to
1796         call close() in global namespace.
1797
1798 2018-07-26  Tom Tromey  <tom@tromey.com>
1799
1800         * dwarf-index-write.c (add_address_entry): Don't add objfile
1801         offsets.
1802         * dbxread.c (find_stab_function): Rename from
1803         find_stab_function_addr.  Return a bound_minimal_symbol.
1804         (read_dbx_symtab): Use raw_text_low, raw_text_high.
1805         Don't add objfile offsets.
1806         (end_psymtab): Use raw_text_low, raw_text_high,
1807         MSYMBOL_VALUE_RAW_ADDRESS.
1808         (read_ofile_symtab): Update.
1809         (process_one_symbol): Update.
1810         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
1811         offsets.
1812         (dw2_relocate): Remove.
1813         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
1814         searching addrmap.
1815         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
1816         Update.
1817         (process_psymtab_comp_unit_reader, add_partial_symbol)
1818         (add_partial_subprogram, dwarf2_ranges_read): Update.
1819         (load_partial_dies): Update.
1820         (add_address_entry): Don't add objfile offsets.
1821         (dwarf2_build_include_psymtabs): Update.
1822         (create_addrmap_from_aranges): Don't add objfile offsets.
1823         (dw2_find_pc_sect_compunit_symtab): Update.
1824         * mdebugread.c (parse_symbol): Don't add objfile offsets.
1825         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
1826         Update.
1827         (parse_partial_symbols): Don't add objfile offsets.  Use
1828         raw_text_low, raw_text_high.  Update.
1829         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
1830         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
1831         or call 'relocate' quick function.  Clear psymbol_map.
1832         * psympriv.h (struct partial_symbol) <address>: Add section
1833         offset.
1834         <set_unrelocated_address>: Rename from set_address.
1835         <raw_text_low, raw_text_high>: New methods.
1836         <text_low, text_high>: Add objfile parameter.
1837         (add_psymbol_to_bcache): Add 'section' parameter.  Call
1838         set_unrelocated_address.
1839         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
1840         (find_pc_psymbol): Update.
1841         (fixup_psymbol_section, relocate_psymtabs): Remove.
1842         (dump_psymtab, psym_functions): Update.
1843         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
1844         parameter.
1845         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
1846         (start_psymtab_common): Update.
1847         * symfile-debug.c (debug_qf_relocate): Remove.
1848         (debug_sym_quick_functions): Update.
1849         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
1850         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
1851         Update.
1852
1853 2018-07-26  Tom Tromey  <tromey@redhat.com>
1854
1855         * dbxread.c (end_psymtab): Use text_high_valid and
1856         text_low_valid.
1857         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
1858         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
1859         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
1860         Update comment.
1861         <text_low_valid, text_high_valid>: New fields.
1862         <set_text_low, set_text_high>: Update.
1863         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
1864
1865 2018-07-26  Tom Tromey  <tom@tromey.com>
1866
1867         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
1868         Update.
1869         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
1870         textlow and texthigh fields.
1871         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
1872         Update.
1873         * mdebugread.c (parse_lines, parse_partial_symbols)
1874         (psymtab_to_symtab_1): Update.
1875         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
1876         Rename fields.  Update comment.  Now private.
1877         <text_low, text_high, set_text_low, set_text_high>: New methods.
1878         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
1879         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
1880         (start_psymtab_common, maintenance_info_psymtabs)
1881         (maintenance_check_psymtabs): Update.
1882         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
1883         texthigh fields.
1884         (scan_xcoff_symtab): Update.
1885
1886 2018-07-26  Tom Tromey  <tromey@redhat.com>
1887
1888         * psympriv.h (struct partial_symbol) <unrelocated_address,
1889         address, set_address>: New methods.
1890         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
1891         (fixup_psymbol_section, relocate_psymtabs): Update.
1892         (print_partial_symbols): Add 'objfile' parameter.  Update.
1893         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
1894         Update.
1895
1896 2018-07-26  Tom Tromey  <tom@tromey.com>
1897
1898         * dwarf-index-write.c (write_psymbols, debug_names::insert)
1899         (debug_names::write_psymbols): Update.
1900         * psympriv.h (struct partial_symbol): Derive from
1901         general_symbol_info.
1902         <obj_section>: New method.
1903         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
1904         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
1905         (find_pc_sect_psymbol, fixup_psymbol_section)
1906         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
1907         (print_partial_symbols, recursively_search_psymtabs)
1908         (compare_psymbols, psymbol_hash, psymbol_compare)
1909         (add_psymbol_to_bcache, maintenance_check_psymtabs)
1910         (psymbol_name_matches, psym_fill_psymbol_map): Update.
1911
1912 2018-07-26  Tom Tromey  <tromey@redhat.com>
1913
1914         * dbxread.c (end_psymtab): Remove dead code.
1915
1916 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
1917
1918         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
1919         DWARF unwinders are disabled.
1920         * dwarf2-frame.c: Add dwarf2read.h include.
1921         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
1922         disabled.
1923         (dwarf2_frame_unwinders_enabled_p): Define.
1924         (show_dwarf_unwinders_enabled_p): New function.
1925         (_initialize_dwarf2_frame): Register switch to control DWARF
1926         unwinder use.
1927         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
1928         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
1929         (show_dwarf_cmdlist): Remove static keyword.
1930         * dwarf2read.h (set_dwarf_cmdlist): Declare.
1931         (show_dwarf_cmdlist): Declare.
1932         * NEWS: Document new feature.
1933
1934 2018-07-26  Tom de Vries  <tdevries@suse.de>
1935
1936         PR breakpoints/23366
1937         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
1938
1939 2018-07-26  Tom de Vries  <tdevries@suse.de>
1940
1941         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
1942         DW_AT_count can't be translated to a dynamic prop.
1943
1944 2018-07-25  Tom de Vries  <tdevries@suse.de>
1945
1946         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
1947         try/catch.
1948
1949 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
1950
1951         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
1952
1953 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
1954
1955         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
1956
1957 2018-07-24  Keith Seitz  <keiths@redhat.comt
1958
1959         PR symtab/23010
1960         * dwarf2read.c (dw2_add_symbol_to_list): New function.
1961         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
1962         instead of add_symbol_to_list.
1963         (read_file_scope): Call prepare_one_comp_unit before reading
1964         any other DIEs.
1965
1966 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
1967
1968         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
1969
1970 2018-07-24  Tom Tromey  <tom@tromey.com>
1971
1972         * utils.c (malloc, realloc, free): Don't declare.
1973         * configure, config.in: Rebuild.
1974         * configure.ac: Don't check for declarations of free, malloc, or
1975         realloc.
1976
1977 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
1978
1979         * aarch64-linux-nat.c
1980         (aarch64_linux_nat_target::stopped_data_address): Remove unused
1981         variable.
1982         * arm-linux-nat.c (fetch_regs): Likewise.
1983         (store_regs): Likewise.
1984         (fetch_vfp_regs): Likewise.
1985         (store_vfp_regs): Likewise.
1986         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
1987         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
1988         (arm_linux_nat_target::insert_watchpoint): Likewise.
1989         (arm_linux_nat_target::remove_watchpoint): Likewise.
1990         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
1991         Likewise.
1992         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
1993         Likewise.
1994         * ppc-linux-nat.c (fetch_register): Likewise.
1995         (fetch_all_gp_regs): Likewise.
1996         (fetch_ppc_registers): Likewise.
1997         (store_all_gp_regs): Likewise.
1998         (store_ppc_registers): Likewise.
1999         (hwdebug_insert_point): Likewise.
2000         (can_use_watchpoint_cond_accel): Likewise.
2001         * remote-sim.c (gdb_os_write_stdout): Likewise.
2002
2003 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
2004             Tom Tromey  <tom@tromey.com>
2005
2006         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
2007         test for it.
2008         * configure: Rebuild.
2009
2010 2018-07-22  Tom Tromey  <tom@tromey.com>
2011
2012         * regformats/regdat.sh: Define xmltarget_${name} inside
2013         #ifndef IN_PROCESS_AGENT.
2014
2015 2018-07-22  Tom Tromey  <tom@tromey.com>
2016
2017         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
2018
2019 2018-07-22  Tom Tromey  <tom@tromey.com>
2020
2021         * symfile.c (reread_symbols): Notify iter, not objfile.
2022
2023 2018-07-22  Tom Tromey  <tom@tromey.com>
2024
2025         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
2026         Use arch_ops.
2027         (ravenscar_thread_target::prepare_to_store): Likewise.
2028
2029 2018-07-22  Tom Tromey  <tom@tromey.com>
2030
2031         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
2032         unused variable.  Call value_fetch_lazy when needed.
2033         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
2034         Remove unused variable.  Call value_fetch_lazy when needed.
2035
2036 2018-07-22  Tom Tromey  <tom@tromey.com>
2037
2038         * m32c-tdep.c (mark_dma): Return void.
2039         (make_regs): Remove unused declarations.
2040
2041 2018-07-22  Tom Tromey  <tom@tromey.com>
2042
2043         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
2044         cmdscm_get_valid_command_smob_arg_unsafe for effect.
2045         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
2046         bkscm_get_valid_block_smob_arg_unsafe for effect.
2047
2048 2018-07-22  Tom Tromey  <tom@tromey.com>
2049
2050         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
2051         value_type.
2052
2053 2018-07-22  Tom Tromey  <tom@tromey.com>
2054
2055         * windows-nat.c (saved_context): Conditionally define.
2056         * remote.c (remote_target::remote_btrace_maybe_reopen):
2057         Conditionally declare "warned".
2058         * inflow.c (sigquit_ours): Conditionally define.
2059         (new_tty): Move "tty" declaration inside #if.
2060         * guile/guile.c (guile_datadir): Conditionally define.
2061         * charset.c (set_be_le_names): Move some declarations inside #if.
2062         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
2063         #if.
2064         (parse_xml_btrace_conf): Likewise.
2065
2066 2018-07-22  Tom Tromey  <tom@tromey.com>
2067
2068         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
2069
2070 2018-07-22  Tom Tromey  <tom@tromey.com>
2071
2072         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
2073         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
2074         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
2075         * buildsym-legacy.c (get_macro_table): Remove unused variable.
2076         * stack.c (frame_apply_level_command): Remove unused variable.
2077         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
2078         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
2079         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
2080         unused variable.
2081         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
2082         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
2083         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
2084         variable.
2085         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
2086         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
2087         variable.
2088         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
2089         Remove unused variable.
2090         * cli/cli-script.c (recurse_read_control_structure): Remove unused
2091         variable.
2092         * common/tdesc.c (print_xml_feature::visit): Remove unused
2093         variable.
2094         * compile/compile-object-load.c (store_regs): Remove unused
2095         variables.
2096         * complaints.c (clear_complaints): Remove unused variable.
2097         * corelow.c (core_target_open): Remove unused variable.
2098         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
2099         variable.
2100         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
2101         variable.
2102         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
2103         variable.
2104         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
2105         variable.
2106         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
2107         variable.
2108         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
2109         variable.
2110         * ia64-tdep.c (examine_prologue): Remove unused variable.
2111         * infcall.c (run_inferior_call): Remove unused variable.
2112         * inferior.c (exit_inferior): Remove unused variable.
2113         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
2114         * linespec.c (decode_line_2): Remove unused variable.
2115         * linux-nat.c (super_close): Remove.
2116         * linux-tdep.c (linux_info_proc): Remove unused variable.
2117         * mi/mi-main.c (mi_execute_command): Remove unused variable.
2118         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
2119         Remove unused variable.
2120         * parse.c (find_minsym_type_and_address): Remove unused variable.
2121         * printcmd.c (info_symbol_command, printf_floating): Remove unused
2122         variable.
2123         * python/py-breakpoint.c (bppy_set_commands): Remove unused
2124         variable.
2125         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
2126         variables.
2127         * record-btrace.c (record_btrace_target::store_registers): Remove
2128         unused variable.
2129         (cmd_show_record_btrace_cpu): Remove unused variable.
2130         * riscv-tdep.c (riscv_register_reggroup_p)
2131         (riscv_push_dummy_call, riscv_return_value): Remove unused
2132         variable.
2133         * rust-exp.y (literal): Remove unused variable.
2134         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
2135         unused variable.
2136         <STRUCTOP_ANONYMOUS>: Likewise.
2137         * s390-linux-tdep.c (s390_linux_init_abi_31)
2138         (s390_linux_init_abi_64): Remove unused variable.
2139         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
2140         (file_select_thread, net_windows_open, _initialize_ser_windows):
2141         Remove unused variables.
2142         * symtab.c (find_pc_sect_line): Remove unused variable.
2143         * target-memory.c (compute_garbled_blocks): Remove unused
2144         variable.
2145         (target_write_memory_blocks): Remove unused variable.
2146         * target.c (target_stack::unpush): Remove unused variables.
2147         * tracepoint.c (start_tracing, all_tracepoint_actions)
2148         (merge_uploaded_trace_state_variables)
2149         (print_one_static_tracepoint_marker): Remove unused variable.
2150         * unittests/basic_string_view/element_access/char/1.cc (test01):
2151         Remove unused variable.
2152         * windows-nat.c (windows_continue, windows_add_all_dlls)
2153         (do_initial_windows_stuff, windows_nat_target::create_inferior):
2154         Remove unused variables.
2155
2156 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
2157
2158         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
2159         attr_profile in HAVE_ELF.
2160         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
2161         HAVE_ELF.
2162
2163 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
2164
2165         * frame.c (frame_register_unwind): Change parameter name.
2166         (frame_unwind_register): Likewise.
2167         (frame_unwind_register_value): Likewise.
2168         (frame_unwind_register_signed): Likewise.
2169         (frame_unwind_register_unsigned): Likewise.
2170         * frame.h (frame_register_unwind): Likewise.
2171         (frame_unwind_register): Likewise.
2172         (frame_unwind_register_value): Likewise.
2173         (frame_unwind_register_signed): Likewise.
2174         (frame_unwind_register_unsigned): Likewise.
2175         (frame_unwind_arch): Likewise.
2176
2177 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
2178
2179         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
2180         ISA maintenance.
2181
2182 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
2183
2184         * mips-linux-nat.c (mips_linux_nat_target::read_description):
2185         Call `get_ptrace_pid' rather than extracting the ptrace PID by
2186         hand.
2187
2188 2018-07-20  Keith Seitz  <keiths@redhat.com>
2189
2190         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
2191         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
2192         m_compunit_symtab, m_language>: Add "m_" prefix.
2193         Update all uses.
2194         * buildsym.c: Update all uses.
2195
2196 2018-07-20  Tom Tromey  <tom@tromey.com>
2197
2198         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
2199         * buildsym.h (record_line_ftype): Remove typedef.
2200
2201 2018-07-20  Tom Tromey  <tom@tromey.com>
2202
2203         * buildsym-legacy.h (augment_type_symtab): Don't declare.
2204         (end_expandable_symtab): Likewise.
2205         (end_symtab_get_static_block): Likewise.
2206         (end_symtab_from_static_block): Likewise.
2207         * buildsym-legacy.c (augment_type_symtab): Remove.
2208         (end_expandable_symtab): Remove.
2209         (end_symtab_get_static_block): Remove.
2210         (end_symtab_from_static_block): Remove.
2211
2212 2018-07-20  Tom Tromey  <tom@tromey.com>
2213
2214         * dwarf2read.c: Include buildsym.h.
2215         (struct dwarf2_cu) <builder>: New method.
2216         (fixup_go_packaging): Update.
2217         (process_full_comp_unit, process_full_type_unit): Update.  Don't
2218         use scoped_free_pendings.
2219         (using_directives): Add "cu" parameter, remove "language".
2220         (read_import_statement, setup_type_unit_groups, )
2221         (read_func_scope, read_lexical_block_scope)
2222         (dwarf2_record_block_ranges, read_namespace): Update.
2223         (lnp_state_machine::lnp_state_machine): Add cu parameter.
2224         (lnp_state_machine::handle_end_sequence): Update.
2225         (class lnp_state_machine) <m_cu>: New member.
2226         <m_record_line_callback>: Remove.
2227         <m_currently_recording_lines>: New member.
2228         (lnp_state_machine::handle_set_file): Update.
2229         (noop_record_line): Remove.
2230         (dwarf_record_line_p): Add cu parameter.
2231         (dwarf_record_line_1, dwarf_finish_line): Likewise.
2232         (lnp_state_machine::record_line)
2233         (lnp_state_machine::lnp_state_machine)
2234         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
2235         (dwarf_decode_lines): Update.
2236         (dwarf2_start_subfile): Add cu parameter.
2237         (dwarf2_start_symtab, new_symbol): Update.
2238         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
2239         Remove dwarf2_per_objfile parameter.
2240         (dwarf_decode_macros): Update.
2241
2242 2018-07-20  Tom Tromey  <tom@tromey.com>
2243
2244         * stabsread.c (define_symbol): Update.
2245         * buildsym-legacy.h (get_buildsym_compunit): Declare.
2246         * dwarf2read.c (new_symbol): Update.
2247         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
2248         * cp-namespace.c: Include buildsym.h.
2249         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
2250         * buildsym-legacy.c (get_buildsym_compunit): New function.
2251
2252 2018-07-20  Tom Tromey  <tom@tromey.com>
2253
2254         * xcoffread.c: Include buildsym-legacy.h.
2255         * windows-nat.c: Include buildsym-legacy.h.
2256         * stabsread.c: Include buildsym-legacy.h.
2257         * mdebugread.c: Include buildsym-legacy.h.
2258         * buildsym-legacy.h: New file.
2259         * buildsym-legacy.c: New file, from buildsym.c.
2260         * go32-nat.c: Include buildsym-legacy.h.
2261         * dwarf2read.c: Include buildsym-legacy.h.
2262         * dbxread.c: Include buildsym-legacy.h.
2263         * cp-namespace.c: Include buildsym-legacy.h.
2264         * coffread.c: Include buildsym-legacy.h.
2265         * buildsym.h: Move some contents to buildsym-legacy.h.
2266         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
2267         buildsym-legacy.c.
2268         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
2269
2270 2018-07-20  Tom Tromey  <tom@tromey.com>
2271
2272         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
2273         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
2274         (buildsym_compunit::buildsym_compunit)
2275         (buildsym_compunit::~buildsym_compunit)
2276         (buildsym_compunit::get_macro_table): Define.
2277
2278 2018-07-20  Tom Tromey  <tom@tromey.com>
2279
2280         * buildsym.c (reset_symtab_globals): Remove.
2281         (buildsym_compunit::end_symtab_from_static_block): Update.
2282         (buildsym_compunit::augment_type_symtab): Update.
2283         (end_symtab_from_static_block): Call free_buildsym_compunit.
2284         (augment_type_symtab, end_symtab, end_expandable_symtab):
2285         Likewise.
2286
2287 2018-07-20  Tom Tromey  <tom@tromey.com>
2288
2289         * arch-utils.c: Do not include buildsym.h.
2290         * mipsread.c: Do not include buildsym.h.
2291         * machoread.c: Do not include buildsym.h.
2292         * elfread.c: Do not include buildsym.h.
2293
2294 2018-07-20  Tom Tromey  <tom@tromey.com>
2295
2296         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
2297         initialization.
2298         (buildsym_compunit): Add new constructor.
2299         (struct buildsym_compunit) <get_last_source_file, finish_block,
2300         record_block_range, start_subfile, patch_subfile_names,
2301         push_subfile, pop_subfile, record_line, get_compunit_symtab,
2302         set_last_source_start_addr, get_last_source_start_addr,
2303         get_local_using_directives, set_local_using_directives,
2304         get_global_using_directives, outermost_context_p,
2305         get_current_context_stack, get_context_stack_depth,
2306         get_current_subfile, get_local_symbols, get_file_symbols,
2307         get_global_symbols, record_debugformat, record_producer,
2308         push_context, pop_context, end_symtab_get_static_block,
2309         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
2310         New public methods.
2311         <record_pending_block, finish_block_internal, make_blockvector,
2312         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
2313         private methods.
2314         Update all users.
2315
2316 2018-05-22  Tom Tromey  <tom@tromey.com>
2317
2318         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
2319         parameter.
2320         (finish_block_internal): Update.
2321
2322 2018-07-20  Tom Tromey  <tom@tromey.com>
2323
2324         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
2325         parameter.
2326         (finish_block_internal): Update.
2327
2328 2018-07-20  Tom Tromey  <tom@tromey.com>
2329
2330         * buildsym.h (EXTERN): Don't define or undef.
2331         * buildsym.c (EXTERN): Don't define.
2332
2333 2018-07-20  Tom Tromey  <tom@tromey.com>
2334
2335         * buildsym.c: Remove TODO comment.
2336
2337 2018-07-20  Tom Tromey  <tom@tromey.com>
2338
2339         * coffread.c (coff_symtab_read): Update.
2340         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
2341         (xcoff_new_init): Update.
2342         * mipsread.c (mipscoff_new_init): Update.
2343         * mdebugread.c (mdebug_build_psymtabs): Update.
2344         * elfread.c (elf_new_init): Update.
2345         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
2346         Update.
2347         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
2348         (coffstab_build_psymtabs, elfstab_build_psymtabs)
2349         (stabsect_build_psymtabs): Update.
2350         * buildsym.h (buildsym_init): Don't declare.
2351         * buildsym.c: Update comment.
2352         (prepare_for_building): Remove.
2353         (start_symtab, restart_symtab): Update.
2354         (reset_symtab_globals): Update comment.
2355         (buildsym_init): Remove.
2356
2357 2018-07-20  Tom Tromey  <tom@tromey.com>
2358
2359         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
2360         * stabsread.c (patch_block_stabs, define_symbol, read_type)
2361         (read_enum_type, common_block_start, common_block_end)
2362         (cleanup_undefined_types_1, finish_global_stabs): Update.
2363         * mdebugread.c (psymtab_to_symtab_1): Update.
2364         * dwarf2read.c (fixup_go_packaging, read_func_scope)
2365         (read_lexical_block_scope, new_symbol): Update.
2366         * dbxread.c (process_one_symbol): Update.
2367         * coffread.c (coff_symtab_read, process_coff_symbol)
2368         (coff_read_enum_type): Update.
2369         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
2370         declare.
2371         (get_local_symbols, get_file_symbols, get_global_symbols): New
2372         functions.
2373         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
2374         m_global_symbols.
2375         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
2376         (~scoped_free_pendings): Update.
2377         (finish_block, prepare_for_building, reset_symtab_globals)
2378         (end_symtab_get_static_block, end_symtab_with_blockvector)
2379         (augment_type_symtab, push_context): Update.
2380         (get_local_symbols, get_file_symbols, get_global_symbols): New
2381         functions.
2382         (buildsym_init): Update.
2383
2384 2018-07-20  Tom Tromey  <tom@tromey.com>
2385
2386         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
2387         (process_full_type_unit): Likewise.
2388         (dwarf2_start_symtab): Set list_in_scope.
2389
2390 2018-07-20  Tom Tromey  <tom@tromey.com>
2391
2392         * dwarf2read.c (process_psymtab_comp_unit_reader)
2393         (build_type_psymtabs_reader): Do not set list_in_scope.
2394
2395 2018-07-20  Tom Tromey  <tom@tromey.com>
2396
2397         * buildsym.c (free_pendings): Remove.
2398         (add_symbol_to_list, scoped_free_pendings)
2399         (finish_block_internal, buildsym_init): Update.
2400
2401 2018-07-20  Tom Tromey  <tom@tromey.com>
2402
2403         * xcoffread.c (read_xcoff_symtab): Update.
2404         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
2405         Update.
2406         * dbxread.c (process_one_symbol): Update.
2407         * coffread.c (coff_symtab_read): Update.
2408         * buildsym.h (finish_block): Update.
2409         * buildsym.c (finish_block): Remove "listhead" argument.
2410         (end_symtab_get_static_block): Update.
2411
2412 2018-07-20  Tom Tromey  <tom@tromey.com>
2413
2414         * buildsym.h (class scoped_free_pendings): Remove constructor.
2415         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
2416         method.
2417         <m_pending_block_obstack, m_pending_blocks>: New members.
2418         (pending_block_obstack, pending_blocks): Remove.
2419         (scoped_free_pendings::scoped_free_pendings): Default.
2420         (~scoped_free_pendings): Update.
2421         (free_pending_blocks): Remove.
2422         (finish_block_internal, record_pending_block, make_blockvector)
2423         (end_symtab_get_static_block, augment_type_symtab, push_context)
2424         (buildsym_init): Update.
2425
2426 2018-07-20  Tom Tromey  <tom@tromey.com>
2427
2428         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
2429         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
2430         members.
2431         (pending_addrmap, pending_addrmap_obstack)
2432         (pending_addrmap_interesting): Remove.
2433         (scoped_free_pendings, record_block_range, make_blockvector)
2434         (prepare_for_building, reset_symtab_globals, buildsym_init):
2435         Update.
2436
2437 2018-07-20  Tom Tromey  <tom@tromey.com>
2438
2439         * xcoffread.c (process_linenos): Update.
2440         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
2441         * mdebugread.c (psymtab_to_symtab_1): Update.
2442         * dwarf2read.c (setup_type_unit_groups)
2443         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
2444         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
2445         * dbxread.c (process_one_symbol): Update.
2446         * coffread.c (coff_symtab_read, enter_linenos)
2447         (process_coff_symbol): Update.
2448         * buildsym.h (current_subfile): Don't declare.
2449         (get_current_subfile): Declare.
2450         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
2451         member.
2452         (start_subfile, free_buildsym_compunit, push_subfile)
2453         (prepare_for_building, start_symtab): Update.
2454         (get_current_subfile): New function.
2455
2456 2018-07-20  Tom Tromey  <tom@tromey.com>
2457
2458         * coffread.c (coff_symtab_read): Update.
2459         * xcoffread.c (read_xcoff_symtab): Update.
2460         * dwarf2read.c (new_symbol): Update.
2461         (read_func_scope, read_lexical_block_scope): Update.
2462         * dbxread.c (process_one_symbol): Update.
2463         * buildsym.h (context_stack, context_stack_depth): Don't declare.
2464         (outermost_context_p): Remove macro.
2465         (outermost_context_p, get_current_context_stack)
2466         (get_context_stack_depth): Declare.
2467         (pop_context): Return struct context_stack.
2468         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
2469         member.
2470         (context_stack_size): Remove.
2471         (INITIAL_CONTEXT_STACK_SIZE): Remove.
2472         (prepare_for_building, end_symtab_get_static_block)
2473         (augment_type_symtab, push_context): Update.
2474         (pop_context): Return struct context_stack.
2475         (outermost_context_p, get_current_context_stack)
2476         (get_context_stack_depth): New functions.
2477         (buildsym_init): Update.
2478
2479 2018-07-20  Tom Tromey  <tom@tromey.com>
2480
2481         * rust-exp.y: Now a pure parser.  Update all rules.
2482         (%union): Move earlier.
2483         (current_parser, work_obstack): Remove globals.
2484         (rust_parser, ~rust_parser): Update.
2485         (class rust_parser) <copy_name, concat3, crate_name, super_name,
2486         lex_character, lex_number, lex_string, lex_identifier,
2487         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
2488         convert_name, convert_params_to_expression,
2489         convert_ast_to_expression, ast_basic_type, ast_operation,
2490         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
2491         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
2492         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
2493         ast_array_type, ast_slice_type, ast_reference_type,
2494         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
2495         (rust_parse): Update.
2496         (rustyyerror, rustyylex): Add parser parameter.
2497         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
2498         (rust_lex_stringish_test, rust_lex_test_sequence)
2499         (rust_lex_test_trailing_dot, rust_lex_test_completion)
2500         (rust_lex_test_push_back, rust_lex_tests): Update.
2501
2502 2018-07-19  Pedro Alves  <palves@redhat.com>
2503
2504         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
2505         gdb::unique_xmalloc_ptr.
2506         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
2507         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
2508         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
2509         copy-initialization.
2510         * guile/scm-pretty-print.c (ppscm_print_children): Use
2511         gdb::unique_xmalloc_ptr instead of cleanups.
2512         (gdbscm_apply_val_pretty_printer): Remove cleanups.
2513         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
2514         gdb::unique_xmalloc_ptr.
2515         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
2516         Adjust to use gdb::unique_xmalloc_ptr.
2517         * guile/scm-utils.c (extract_arg): Adjust.
2518         * guile/scm-value.c (gdbscm_value_field): Adjust to use
2519         gdb::unique_xmalloc_ptr instead of a cleanup.
2520
2521 2018-07-19  Tom Tromey  <tom@tromey.com>
2522
2523         * utils.c (do_value_free_to_mark)
2524         (make_cleanup_value_free_to_mark): Remove.
2525         * utils.h (make_cleanup_value_free_to_mark): Remove.
2526
2527 2018-07-19  Pedro Alves  <palves@redhat.com>
2528
2529         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
2530         forwarding reference.
2531
2532 2018-07-18  Pedro Alves  <palves@redhat.com>
2533
2534         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
2535         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
2536         cleanup.
2537
2538 2018-07-18  Pedro Alves  <palves@redhat.com>
2539
2540         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
2541         exceptions.
2542         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
2543         (gdbscm_wrap): New.
2544         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
2545         directly instead of a cleanup.
2546         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
2547         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
2548         (vlscm_binop_gdbthrow): New, factored out from ...
2549         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
2550         (vlscm_rich_compare): Use gdbscm_wrap.
2551         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
2552         instead of a cleanup.
2553         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
2554         cleanup.
2555         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
2556         Use xfree directly instead of a cleanup.
2557         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
2558         Adjust to use gdbscm_wrap and scoped_value_mark.
2559         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
2560         (gdbscm_value_address, gdbscm_value_dereference)
2561         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
2562         scoped_value_mark.
2563         (gdbscm_value_dynamic_type): Use scoped_value_mark.
2564         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
2565         scoped_value_mark.
2566         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
2567         gdbscm_wrap and scoped_value_mark.
2568         (gdbscm_value_to_string): Use xfree directly instead of a
2569         cleanup.  Move 'buffer' unique_ptr to TRY scope.
2570         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
2571         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
2572         scoped_value_mark.
2573         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
2574         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
2575         scoped_value_mark.
2576         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
2577         gdbscm_wrap.
2578
2579 2018-07-18  Tom de Vries  <tdevries@suse.de>
2580
2581         * findvar.c (default_read_var_value): Also resolve dynamic type for
2582         LOC_OPTIMIZED_OUT vars.
2583
2584 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
2585
2586         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
2587         decoding.
2588
2589 2018-07-17  Tom Tromey  <tom@tromey.com>
2590
2591         * guile/scm-param.c (pascm_set_func, pascm_show_func)
2592         (compute_enum_list, pascm_set_param_value_x)
2593         (gdbscm_parameter_value): Update.
2594         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
2595         (gdbscm_scm_to_host_string): Update.
2596         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
2597         Update.
2598         * guile/scm-cmd.c (cmdscm_add_completion): Update.
2599         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
2600         * guile/scm-string.c (gdbscm_scm_to_string): Return
2601         unique_xmalloc_ptr.
2602         (gdbscm_scm_to_host_string): Likewise.
2603
2604 2018-07-17  Tom Tromey  <tom@tromey.com>
2605
2606         * guile/guile.c (gdbscm_eval_from_control_command): Update.
2607         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
2608         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
2609         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
2610         unique_xmalloc_ptr.
2611
2612 2018-07-17  Tom Tromey  <tom@tromey.com>
2613
2614         * guile/scm-param.c (pascm_signal_setshow_error): Update.
2615         * guile/guile-internal.h (gdbscm_exception_message_to_string):
2616         Update.
2617         * guile/scm-cmd.c (cmdscm_function): Update.
2618         * guile/scm-pretty-print.c
2619         (ppscm_print_exception_unless_memory_error): Update.
2620         * guile/scm-exception.c (gdbscm_exception_message_to_string):
2621         Return unique_xmalloc_ptr.
2622
2623 2018-07-17  Tom Tromey  <tom@tromey.com>
2624
2625         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
2626         Use string_printf.
2627
2628 2018-07-17  Jim Wilson  <jimw@sifive.com>
2629
2630         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
2631         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
2632         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
2633         unecessary braces after EF_RISCV_RVC test.  Delete call to
2634         set_gdbarch_decr_pc_after_break.
2635
2636         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
2637         RISCV_LAST_FP_REGNUM + 1.
2638         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
2639
2640 2018-07-17  Tom Tromey  <tom@tromey.com>
2641
2642         * configure.ac: Remove --disable-gdbcli.
2643         * configure: Rebuild.
2644         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
2645         (SUBDIR_CLI_CFLAGS): Remove.
2646         (SFILES): Use SUBDIR_CLI_SRCS.
2647         (COMMON_OBS): Use SUBDIR_CLI_OBS.
2648
2649 2018-07-17  Tom Tromey  <tom@tromey.com>
2650
2651         PR gdb/18624:
2652         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
2653
2654 2018-07-16  Jim Wilson  <jimw@sifive.com>
2655
2656         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
2657
2658 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
2659
2660         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
2661         variable.
2662         (libunwind_frame_sniffer): Likewise.
2663         (libunwind_frame_prev_register): Likewise.
2664         (libunwind_sigtramp_frame_sniffer): Likewise.
2665         * ia64-tdep.c (ia64_access_reg): Likewise.
2666         (ia64_access_rse_reg): Likewise.
2667         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
2668         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
2669
2670 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
2671
2672         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
2673
2674 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
2675
2676         * remote-sim.c (gdbsim_target::close,
2677         gdbsim_target::mourn_inferior): Remove unused variables.
2678
2679 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
2680
2681         * ia64-tdep.c (ktab_buf): New global.
2682         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
2683         (get_kernel_table): Adjust.
2684
2685 2018-07-16  Tom Tromey  <tom@tromey.com>
2686
2687         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
2688         * dwarf2read.c (using_directives, new_symbol): Use
2689         outermost_context_p.
2690         * dbxread.c (process_one_symbol): Use outermost_context_p.
2691         * coffread.c (coff_symtab_read): Use outermost_context_p.
2692
2693 2018-07-16  Tom Tromey  <tom@tromey.com>
2694
2695         * dwarf2read.c (using_directives, read_func_scope)
2696         (read_lexical_block_scope): Update.
2697         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
2698         * buildsym.h (local_using_directives, global_using_directives):
2699         Don't declare.
2700         (get_local_using_directives, set_local_using_directives)
2701         (get_global_using_directives): Declare.
2702         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
2703         m_global_using_directives>: New members.
2704         (finish_block_internal, prepare_for_building)
2705         (reset_symtab_globals, end_symtab_get_static_block)
2706         (push_context): Update.
2707         (get_local_using_directives, set_local_using_directives)
2708         (get_global_using_directives): New functions.
2709         (buildsym_init): Update.
2710
2711 2018-07-16  Tom Tromey  <tom@tromey.com>
2712
2713         * xcoffread.c (xcoff_initial_scan): Don't call
2714         free_pending_blocks.
2715         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
2716         * buildsym.h (class scoped_free_pendings): Add constructor.
2717         (free_pending_blocks): Don't declare.
2718         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
2719         (free_pending_blocks): Now static.
2720
2721 2018-07-16  Tom Tromey  <tom@tromey.com>
2722
2723         * buildsym.h (push_subfile, pop_subfile): Update declarations.
2724         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
2725         member.
2726         (struct subfile_stack): Remove.
2727         (subfile_stack): Remove.
2728         (push_subfile, pop_subfile, buildsym_init): Update.
2729
2730 2018-07-16  Tom Tromey  <tom@tromey.com>
2731
2732         * buildsym.c (push_subfile): Use gdb_assert.
2733         (pop_subfile): Use gdb_assert.
2734
2735 2018-07-16  Tom Tromey  <tom@tromey.com>
2736
2737         * buildsym.h (merge_symbol_lists): Remove.
2738         * buildsym.c (merge_symbol_lists): Remove.
2739
2740 2018-07-16  Tom Tromey  <tom@tromey.com>
2741
2742         * stabsread.c (scan_file_globals): Update comment.
2743         * stabsread.h (scan_file_globals): Move from buildsym.h.
2744         * buildsym.h (scan_file_globals): Move to stabsread.h.
2745
2746 2018-07-16  Tom Tromey  <tom@tromey.com>
2747
2748         * xcoffread.c (xcoff_new_init): Update.
2749         * mipsread.c (mipscoff_new_init): Update.
2750         * mdebugread.c (mdebug_build_psymtabs): Update.
2751         * elfread.c (elf_new_init): Update.
2752         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
2753         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
2754         * buildsym.h (buildsym_new_init): Don't declare.
2755         * buildsym.c (buildsym_new_init): Remove.
2756
2757 2018-07-16  Tom Tromey  <tom@tromey.com>
2758
2759         * stabsread.h (within_function): Move from buildsym.h.
2760         * stabsread.c (start_stabs): Clear within_function.
2761         * coffread.c (coff_start_symtab): Clear within_function.
2762         * buildsym.h (within_function): Move to stabsread.h.
2763         * buildsym.c (prepare_for_building): Update.
2764
2765 2018-07-16  Tom Tromey  <tom@tromey.com>
2766
2767         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
2768         * dwarf2read.c (dwarf2_start_symtab): Don't set
2769         processing_gcc_compilation.
2770         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
2771
2772 2018-07-16  Tom Tromey  <tom@tromey.com>
2773
2774         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
2775         (next_symbol_text_func): Move from buildsym.h.
2776         * stabsread.c (hashname): Move from buildsym.c.
2777         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
2778         (next_symbol_text_func, hashname): Move to stabsread.h.
2779         * buildsym.c: Don't include bcache.h
2780         (hashname): Move to stasbread.c.
2781
2782 2018-07-16  Tom Tromey  <tom@tromey.com>
2783
2784         * buildsym.h (context_stack_size): Don't declare.
2785         * buildsym.c (context_stack_size): New global.
2786
2787 2018-07-16  Tom Tromey  <tom@tromey.com>
2788
2789         * dbxread.c (processing_acc_compilation): New global.
2790         * buildsym.h (processing_acc_compilation): Don't declare.
2791
2792 2018-07-16  Tom Tromey  <tom@tromey.com>
2793
2794         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
2795         * dbxread.c (read_ofile_symtab): Update.
2796         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
2797         * buildsym.h (last_source_start_addr): Remove.
2798         (set_last_source_start_addr, get_last_source_start_addr):
2799         Declare.
2800         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
2801         parameter.
2802         (struct buildsym_compunit) <m_last_source_start_addr>: New
2803         member.
2804         (prepare_for_building): Remove start_addr parameter.
2805         (start_symtab, restart_symtab, end_symtab_get_static_block)
2806         (end_symtab_with_blockvector): Update.
2807         (set_last_source_start_addr, get_last_source_start_addr): New
2808         functions.
2809
2810 2018-07-16  Tom Tromey  <tom@tromey.com>
2811
2812         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
2813         member.
2814         (have_line_numbers): Remove.
2815         (record_line, prepare_for_building, end_symtab_get_static_block)
2816         (augment_type_symtab): Update.
2817
2818 2018-07-16  Tom Tromey  <tom@tromey.com>
2819
2820         * buildsym.c (~buildsym_compunit): Free the macro table.
2821         (struct buildsym_compunit) <get_macro_table, release_macros>: New
2822         methods.
2823         <m_pending_macros>: New member.
2824         (pending_macros): Remove.
2825         (~scoped_free_pendings, get_macro_table, prepare_for_building)
2826         (reset_symtab_globals, end_symtab_get_static_block)
2827         (end_symtab_with_blockvector, augment_type_symtab)
2828         (buildsym_init): Update.
2829
2830 2018-07-16  Tom Tromey  <tom@tromey.com>
2831
2832         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
2833         parameter.
2834         (buildsym_compunit::set_last_source_file): New method.
2835         <m_last_source_file>: New member.
2836         (prepare_for_building): Remove "name" parameter.
2837         (start_symtab, restart_symtab, reset_symtab_globals): Update.
2838         (last_source_file): Remove.
2839         (set_last_source_file, get_last_source_file): Update.
2840
2841 2018-07-16  Tom Tromey  <tom@tromey.com>
2842
2843         * buildsym.c (prepare_for_building): Add assert.
2844
2845 2018-07-16  Tom Tromey  <tom@tromey.com>
2846
2847         * buildsym.c (~buildsym_compunit): Update.
2848         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
2849         (start_subfile, patch_subfile_names)
2850         (end_symtab_with_blockvector): Update.
2851
2852 2018-07-16  Tom Tromey  <tom@tromey.com>
2853
2854         * buildsym.c (struct buildsym_compunit): Add constructor,
2855         destructor, initializers.
2856         (start_buildsym_compunit): Remove.
2857         (free_buildsym_compunit): Use "delete".
2858         (start_symtab, restart_symtab): Use "new".
2859
2860 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
2861
2862         * symfile.c (set_objfile_default_section_offset): Remove struct
2863         keyword.
2864
2865 2018-07-14  Stafford Horne  <shorne@gmail.com>
2866
2867         * (Responsible Maintainers): Add myself as or1k maintainer.
2868
2869 2018-07-13  Tom Tromey  <tom@tromey.com>
2870
2871         * symfile.c (set_objfile_default_section_offset): Use extra braces
2872         around initializer.
2873
2874 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
2875
2876         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
2877         non-branching basr.
2878
2879 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2880
2881         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
2882         unittests/cli-utils-selftests.c
2883         * unittests/cli-utils-selftests.c: New file.
2884
2885 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2886
2887         * NEWS: Mention new commands. Mention change to 'thread apply'.
2888
2889 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2890
2891         * thread.c (thr_try_catch_cmd): New function.
2892         (thread_apply_all_command): Handle qcs flags.
2893         (thread_apply_command): Handle qcs flags.
2894         (taas_command): New function.
2895         (tfaas_command): New function.
2896         (_initialize_thread): Update to setup the new commands 'taas
2897         and 'tfaas'. Change doc string for 'thread apply'.
2898
2899 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2900
2901         * stack.c: (trailing_outermost_frame): New function, mostly
2902         extracted from backtrace_command_1.
2903         (leading_innermost_frame): New function.
2904         (backtrace_command_1): Update to call trailing_outermost_frame.
2905         (frame_apply_command_count): New function.
2906         (frame_apply_level_command): New function.
2907         (frame_apply_all_command): New function.
2908         (frame_apply_command): New function.
2909         (faas_command): New function.
2910         (frame_cmd_list): New variable.
2911         (_initialize_stack): Update to setup the new commands 'frame apply'
2912         and 'faas'.
2913
2914 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2915
2916         * cli-utils.c (number_or_range_parser::get_number): Only handle
2917         numbers or convenience var as numbers.
2918         (parse_flags): New function.
2919         (parse_flags_qcs): New function.
2920         (number_or_range_parser::finished): Ensure parsing end is detected
2921         before end of string.
2922         * cli-utils.h (parse_flags): New function.
2923         (parse_flags_qcs): New function.
2924         (number_or_range_parser): Remove m_finished bool.
2925         (number_or_range_parser::skip_range): Set m_in_range to false.
2926
2927 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
2928
2929         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
2930         on Windows.
2931
2932 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
2933             Jan Kratochvil  <jan.kratochvil@redhat.com>
2934             Paul Fertser  <fercerpav@gmail.com>
2935             Tsutomu Seki  <sekiriki@gmail.com>
2936             Pedro Alves  <palves@redhat.com>
2937
2938         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
2939         'unittests/parse-connection-spec-selftests.c'.
2940         (COMMON_SFILES): Add 'common/netstuff.c'.
2941         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
2942         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
2943         * common/netstuff.c: New file.
2944         * common/netstuff.h: New file.
2945         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
2946         (wait_for_connect): Update comment.  New parameter
2947         'gdb::optional<int> sock' instead of 'struct serial *scb'.
2948         Use 'sock' directly instead of 'scb->fd'.
2949         (try_connect): New function, with code from 'net_open'.
2950         (net_open): Rewrite main loop to deal with multiple
2951         sockets/addresses.  Handle IPv6-style hostnames; implement
2952         support for IPv6 connections.
2953         * unittests/parse-connection-spec-selftests.c: New file.
2954
2955 2018-07-11  Pedro Alves  <palves@redhat.com>
2956
2957         PR gdb/23377
2958         * remote.c (remote_target::remote_detach_pid): Call
2959         set_current_process.
2960
2961 2018-07-11  Pedro Alves  <palves@redhat.com>
2962
2963         * h8300-tdep.c (h8300_gdbarch_init): Remove
2964         set_gdbarch_ecoff_reg_to_regnum calls.
2965
2966 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
2967
2968         PR c++/23373
2969         * c-typeprint.c (c_type_print_base_struct_union): Don't print
2970         offsets/sizes for static members of a class/struct.
2971
2972 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
2973
2974         * target-descriptions.c (tdesc_register_bitsize): Rename.
2975         * target-descriptions.h (tdesc_register_bitsize): Likewise.
2976         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
2977         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
2978
2979 2018-07-10  Tom Tromey  <tom@tromey.com>
2980
2981         * breakpoint.c (moribund_locations): Now static and a
2982         std::vector.
2983         (breakpoint_init_inferior, moribund_breakpoint_here_p)
2984         (build_bpstat_chain, update_global_location_list)
2985         (breakpoint_retire_moribund): Update.
2986         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
2987         VEC.
2988
2989 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
2990
2991         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
2992         (riscv_register_reggroup_p): Use new function, remove unneeded
2993         parenthesis.
2994         (riscv_push_dummy_call): Extend assert to compare against xlen or
2995         flen based on register type.
2996
2997 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
2998
2999         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
3000
3001 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3002
3003         * remote.c (show_hardware_watchpoint_limit): New function.
3004         (show_hardware_watchpoint_length_limit): New function.
3005         (show_hardware_breakpoint_limit): New function.
3006         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
3007         where appropriate, update help text.
3008
3009 2018-07-09  Tom Tromey  <tom@tromey.com>
3010
3011         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
3012         (CLIBS): Don't mention NAT_CLIBS.
3013
3014 2018-07-09  Tom Tromey  <tom@tromey.com>
3015
3016         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
3017         (LIBGDB_OBS, clean mostlyclean): Update.
3018         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
3019
3020 2018-07-09  Tom Tromey  <tom@tromey.com>
3021
3022         * Makefile.in (%.c: %.y): Use ECHO_YACC.
3023         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
3024         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
3025
3026 2018-07-09  Tom Tromey  <tom@tromey.com>
3027
3028         * Makefile.in (ALLDEPFILES): Remove exec.c.
3029         (COMMON_OBS): Remove exec.o.
3030         (COMMON_SFILES): Add exec.c.
3031
3032 2018-07-09  Tom Tromey  <tom@tromey.com>
3033
3034         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
3035
3036 2018-07-09  Tom Tromey  <tom@tromey.com>
3037
3038         * Makefile.in (clean mostlyclean): Remove stamp-version.
3039         (version.c): Depend on stamp-version.
3040         (stamp-version): New rule, from version.c rule.
3041
3042 2018-07-09  Tom Tromey  <tom@tromey.com>
3043
3044         * Makefile.in (init.c): Depend on stamp-init.
3045         (stamp-init): New rule, from init.c rule.
3046         (clean mostlyclean): Remove stamp-init.
3047
3048 2018-07-09  Tom Tromey  <tom@tromey.com>
3049
3050         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
3051         SUBDIR_GCC_COMPILE_SRCS.
3052
3053 2018-07-09  Tom Tromey  <tom@tromey.com>
3054
3055         * Makefile.in (init.c): Remove some unused sed rules.
3056
3057 2018-07-09  Tom Tromey  <tom@tromey.com>
3058
3059         * Makefile.in (TSOBS): Remove.
3060         (INIT_FILES): Update.
3061         (LIBGDB_OBS): Update.
3062         (COMMON_SFILES): Add inflow.c.
3063         (SFILES): Remove inflow.c.
3064
3065 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
3066
3067         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
3068
3069 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
3070
3071         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
3072         get_saveloc_name, is_signal_frame_name, step_name,
3073         init_remote_name, create_addr_space_name,
3074         destroy_addr_space_name, search_unwind_table_name,
3075         find_dyn_list_name): Constify.
3076
3077 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
3078
3079         * darwin-nat.c (darwin_pthread_kill): New function.
3080         (darwin_resume_thread): Use darwin_pthread_kill.
3081
3082 2018-07-05  Tom de Vries  <tdevries@suse.de>
3083
3084         * macroexp.c (macro_buffer) <operator=>: New member function.
3085
3086 2018-07-04  Tom Tromey  <tom@tromey.com>
3087
3088         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
3089
3090 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
3091
3092         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
3093         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
3094         * maint.c: Likewise.
3095         * top.c: Likewise.
3096
3097 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
3098
3099         * NEWS: Create a new section for the next release branch.
3100         Rename the section of the current branch, now that it has
3101         been cut.
3102
3103 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
3104
3105         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
3106         * version.in: Bump version to 8.2.50.DATE-git.
3107
3108 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
3109             Pedro Alves  <palves@redhat.com>
3110
3111         * linux-nat.c (linux_init_ptrace): Rename to ...
3112         (linux_init_ptrace_procfs): ... this.  Call
3113         linux_proc_init_warnings.
3114         (linux_nat_target::post_attach)
3115         (linux_nat_target::post_startup_inferior): Adjust.
3116         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
3117         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
3118
3119 2018-07-04  Tom de Vries  <tdevries@suse.de>
3120
3121         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
3122         check ...
3123         (read_comp_unit_head): ... here.
3124
3125 2018-07-03  Tom Tromey  <tom@tromey.com>
3126
3127         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
3128         (stop_tracing, tstatus_command)
3129         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
3130         (print_one_static_tracepoint_marker): Update.
3131         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
3132         std::vector.
3133         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
3134         VEC.
3135         (all_tracepoints, static_tracepoints_here): Return std::vector.
3136
3137 2018-07-03  Tom Tromey  <tom@tromey.com>
3138
3139         * common/ptid.c (ptid_equal): Remove.
3140         * common/ptid.h (ptid_equal): Don't declare.
3141         * ada-tasks.c: Update.
3142         * breakpoint.c: Update.
3143         * common/agent.c: Update.
3144         * corelow.c: Update.
3145         * darwin-nat-info.c: Update.
3146         * darwin-nat.c: Update.
3147         * dcache.c: Update.
3148         * dtrace-probe.c: Update.
3149         * dummy-frame.c: Update.
3150         * fbsd-nat.c: Update.
3151         * frame.c: Update.
3152         * gdbthread.h: Update.
3153         * gnu-nat.c: Update.
3154         * go32-nat.c: Update.
3155         * inf-loop.c: Update.
3156         * inf-ptrace.c: Update.
3157         * infcall.c: Update.
3158         * infcmd.c: Update.
3159         * inflow.c: Update.
3160         * infrun.c: Update.
3161         * linux-fork.c: Update.
3162         * linux-nat.c: Update.
3163         * linux-thread-db.c: Update.
3164         * mi/mi-cmd-var.c: Update.
3165         * mi/mi-interp.c: Update.
3166         * mi/mi-main.c: Update.
3167         * nto-procfs.c: Update.
3168         * ppc-linux-tdep.c: Update.
3169         * procfs.c: Update.
3170         * python/py-inferior.c: Update.
3171         * python/py-record-btrace.c: Update.
3172         * python/py-record.c: Update.
3173         * ravenscar-thread.c: Update.
3174         * regcache.c: Update.
3175         * remote-sim.c: Update.
3176         * remote.c: Update.
3177         * sol-thread.c: Update.
3178         * solib.c: Update.
3179         * target.c: Update.
3180         * tui/tui-stack.c: Update.
3181         * varobj.c: Update.
3182         * windows-nat.c: Update.
3183         * windows-tdep.c: Update.
3184
3185 2018-07-03  Tom Tromey  <tom@tromey.com>
3186
3187         * common/ptid.c (ptid_match): Remove.
3188         * common/ptid.h (ptid_match): Don't declare.
3189         * fbsd-nat.c: Update.
3190         * infcmd.c: Update.
3191         * infrun.c: Update.
3192         * linux-nat.c: Update.
3193         * record-btrace.c: Update.
3194         * regcache.c: Update.
3195         * remote.c: Update.
3196
3197 2018-07-03  Tom Tromey  <tom@tromey.com>
3198
3199         * common/ptid.c (ptid_tid_p): Remove.
3200         * common/ptid.h (ptid_tid_p): Don't declare.
3201         * sol-thread.c: Update.
3202
3203 2018-07-03  Tom Tromey  <tom@tromey.com>
3204
3205         * common/ptid.c (ptid_lwp_p): Remove.
3206         * common/ptid.h (ptid_lwp_p): Don't declare.
3207         * fbsd-nat.c: Update.
3208         * linux-nat.c: Update.
3209         * nat/linux-procfs.c: Update.
3210         * nat/x86-linux-dregs.c: Update.
3211         * sol-thread.c: Update.
3212
3213 2018-07-03  Tom Tromey  <tom@tromey.com>
3214
3215         * common/ptid.c (ptid_is_pid): Remove.
3216         * common/ptid.h (ptid_is_pid): Don't declare.
3217         * infrun.c: Update.
3218         * linux-nat.c: Update.
3219         * mi/mi-interp.c: Update.
3220         * remote.c: Update.
3221         * thread.c: Update.
3222
3223 2018-07-03  Tom Tromey  <tom@tromey.com>
3224
3225         * common/ptid.c (ptid_get_tid): Remove.
3226         * common/ptid.h (ptid_get_tid): Don't declare.
3227         * ada-tasks.c: Update.
3228         * aix-thread.c: Update.
3229         * bsd-uthread.c: Update.
3230         * darwin-nat.c: Update.
3231         * fbsd-nat.c: Update.
3232         * i386-darwin-nat.c: Update.
3233         * infrun.c: Update.
3234         * linux-tdep.c: Update.
3235         * nto-procfs.c: Update.
3236         * ppc-ravenscar-thread.c: Update.
3237         * python/py-infthread.c: Update.
3238         * ravenscar-thread.c: Update.
3239         * sol-thread.c: Update.
3240         * sparc-ravenscar-thread.c: Update.
3241         * windows-nat.c: Update.
3242
3243 2018-07-03  Tom Tromey  <tom@tromey.com>
3244
3245         * common/ptid.c (ptid_get_lwp): Remove.
3246         * common/ptid.h (ptid_get_lwp): Don't declare.
3247         * aarch64-linux-nat.c: Update.
3248         * ada-tasks.c: Update.
3249         * aix-thread.c: Update.
3250         * amd64-linux-nat.c: Update.
3251         * arm-linux-nat.c: Update.
3252         * corelow.c: Update.
3253         * fbsd-nat.c: Update.
3254         * fbsd-tdep.c: Update.
3255         * gnu-nat.c: Update.
3256         * i386-cygwin-tdep.c: Update.
3257         * i386-gnu-nat.c: Update.
3258         * i386-linux-nat.c: Update.
3259         * ia64-linux-nat.c: Update.
3260         * inf-ptrace.c: Update.
3261         * infrun.c: Update.
3262         * linux-fork.c: Update.
3263         * linux-nat.c: Update.
3264         * linux-tdep.c: Update.
3265         * linux-thread-db.c: Update.
3266         * mips-linux-nat.c: Update.
3267         * nat/aarch64-linux-hw-point.c: Update.
3268         * nat/aarch64-linux.c: Update.
3269         * nat/linux-btrace.c: Update.
3270         * nat/linux-osdata.c: Update.
3271         * nat/linux-procfs.c: Update.
3272         * nat/x86-linux-dregs.c: Update.
3273         * obsd-nat.c: Update.
3274         * ppc-fbsd-nat.c: Update.
3275         * ppc-linux-nat.c: Update.
3276         * procfs.c: Update.
3277         * python/py-infthread.c: Update.
3278         * ravenscar-thread.c: Update.
3279         * remote.c: Update.
3280         * s390-linux-nat.c: Update.
3281         * sol-thread.c: Update.
3282         * sol2-tdep.c: Update.
3283         * spu-linux-nat.c: Update.
3284         * x86-linux-nat.c: Update.
3285         * xtensa-linux-nat.c: Update.
3286
3287 2018-07-03  Tom Tromey  <tom@tromey.com>
3288
3289         * common/ptid.c (ptid_get_pid): Remove.
3290         * common/ptid.h (ptid_get_pid): Don't declare.
3291         * aarch64-linux-nat.c: Update.
3292         * ada-lang.c: Update.
3293         * aix-thread.c: Update.
3294         * alpha-bsd-nat.c: Update.
3295         * amd64-fbsd-nat.c: Update.
3296         * amd64-linux-nat.c: Update.
3297         * arm-linux-nat.c: Update.
3298         * arm-nbsd-nat.c: Update.
3299         * auxv.c: Update.
3300         * break-catch-syscall.c: Update.
3301         * breakpoint.c: Update.
3302         * bsd-uthread.c: Update.
3303         * corelow.c: Update.
3304         * ctf.c: Update.
3305         * darwin-nat.c: Update.
3306         * fbsd-nat.c: Update.
3307         * fbsd-tdep.c: Update.
3308         * gcore.c: Update.
3309         * gnu-nat.c: Update.
3310         * hppa-nbsd-nat.c: Update.
3311         * hppa-obsd-nat.c: Update.
3312         * i386-fbsd-nat.c: Update.
3313         * ia64-linux-nat.c: Update.
3314         * inf-ptrace.c: Update.
3315         * infcmd.c: Update.
3316         * inferior.c: Update.
3317         * inferior.h: Update.
3318         * inflow.c: Update.
3319         * infrun.c: Update.
3320         * linux-fork.c: Update.
3321         * linux-nat.c: Update.
3322         * linux-tdep.c: Update.
3323         * linux-thread-db.c: Update.
3324         * m68k-bsd-nat.c: Update.
3325         * mi/mi-interp.c: Update.
3326         * mi/mi-main.c: Update.
3327         * mips-linux-nat.c: Update.
3328         * mips-nbsd-nat.c: Update.
3329         * mips64-obsd-nat.c: Update.
3330         * nat/aarch64-linux-hw-point.c: Update.
3331         * nat/aarch64-linux.c: Update.
3332         * nat/linux-btrace.c: Update.
3333         * nat/linux-osdata.c: Update.
3334         * nat/linux-procfs.c: Update.
3335         * nat/x86-linux-dregs.c: Update.
3336         * nto-procfs.c: Update.
3337         * obsd-nat.c: Update.
3338         * ppc-linux-nat.c: Update.
3339         * ppc-nbsd-nat.c: Update.
3340         * ppc-obsd-nat.c: Update.
3341         * proc-service.c: Update.
3342         * procfs.c: Update.
3343         * python/py-inferior.c: Update.
3344         * python/py-infthread.c: Update.
3345         * ravenscar-thread.c: Update.
3346         * record.c: Update.
3347         * remote-sim.c: Update.
3348         * remote.c: Update.
3349         * rs6000-nat.c: Update.
3350         * s390-linux-nat.c: Update.
3351         * sh-nbsd-nat.c: Update.
3352         * sol-thread.c: Update.
3353         * sparc-nat.c: Update.
3354         * sparc64-tdep.c: Update.
3355         * spu-linux-nat.c: Update.
3356         * spu-tdep.c: Update.
3357         * target-debug.h: Update.
3358         * target.c: Update.
3359         * thread.c: Update.
3360         * tid-parse.c: Update.
3361         * tracefile-tfile.c: Update.
3362         * vax-bsd-nat.c: Update.
3363         * windows-nat.c: Update.
3364         * x86-linux-nat.c: Update.
3365         * x86-nat.c: Update.
3366
3367 2018-07-03  Tom Tromey  <tom@tromey.com>
3368
3369         * common/ptid.c (pid_to_ptid): Remove.
3370         * common/ptid.h (pid_to_ptid): Don't declare.
3371         * aix-thread.c: Update.
3372         * arm-linux-nat.c: Update.
3373         * common/ptid.c: Update.
3374         * common/ptid.h: Update.
3375         * corelow.c: Update.
3376         * ctf.c: Update.
3377         * darwin-nat.c: Update.
3378         * fbsd-nat.c: Update.
3379         * fork-child.c: Update.
3380         * gnu-nat.c: Update.
3381         * go32-nat.c: Update.
3382         * inf-ptrace.c: Update.
3383         * infcmd.c: Update.
3384         * inferior.c: Update.
3385         * infrun.c: Update.
3386         * linux-fork.c: Update.
3387         * linux-nat.c: Update.
3388         * nat/aarch64-linux-hw-point.c: Update.
3389         * nat/fork-inferior.c: Update.
3390         * nat/x86-linux-dregs.c: Update.
3391         * nto-procfs.c: Update.
3392         * obsd-nat.c: Update.
3393         * procfs.c: Update.
3394         * progspace.c: Update.
3395         * remote.c: Update.
3396         * rs6000-nat.c: Update.
3397         * s390-linux-nat.c: Update.
3398         * sol-thread.c: Update.
3399         * spu-linux-nat.c: Update.
3400         * target.c: Update.
3401         * top.c: Update.
3402         * tracefile-tfile.c: Update.
3403         * windows-nat.c: Update.
3404
3405 2018-07-03  Tom Tromey  <tom@tromey.com>
3406
3407         * common/ptid.h (ptid_build): Don't declare.
3408         * common/ptid.c (ptid_build): Remove.
3409         * aix-thread.c: Update.
3410         * bsd-kvm.c: Update.
3411         * bsd-uthread.c: Update.
3412         * common/agent.c: Update.
3413         * common/ptid.c: Update.
3414         * common/ptid.h: Update.
3415         * corelow.c: Update.
3416         * darwin-nat.c: Update.
3417         * fbsd-nat.c: Update.
3418         * gnu-nat.c: Update.
3419         * linux-fork.c: Update.
3420         * linux-nat.c: Update.
3421         * linux-thread-db.c: Update.
3422         * nat/linux-osdata.c: Update.
3423         * nat/linux-procfs.c: Update.
3424         * nto-procfs.c: Update.
3425         * obsd-nat.c: Update.
3426         * proc-service.c: Update.
3427         * procfs.c: Update.
3428         * ravenscar-thread.c: Update.
3429         * remote-sim.c: Update.
3430         * remote.c: Update.
3431         * sol-thread.c: Update.
3432         * target.c: Update.
3433         * windows-nat.c: Update.
3434
3435 2018-07-03  Tom Tromey  <tom@tromey.com>
3436
3437         * infrun.c (follow_exec): Use exit_inferior_silent.
3438         * inferior.c (exit_inferior_num_silent): Remove.
3439         * inferior.h (exit_inferior_num_silent): Don't declare.
3440
3441 2018-07-03  Tom Tromey  <tom@tromey.com>
3442
3443         PR cli/23340:
3444         * darwin-nat.c (darwin_attach_pid): Reset inferior and
3445         inferior_ptid on error.
3446
3447 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
3448             Simon Marchi  <simon.marchi@polymtl.ca>
3449
3450         PR tdep/8282
3451         * disasm.h (gdb_disassembler): Add
3452         `m_disassembler_options_holder'. member
3453         * disasm.c (get_all_disassembler_options): New function.
3454         (gdb_disassembler::gdb_disassembler): Use it.
3455         (gdb_buffered_insn_length_init_dis): Likewise.
3456         (gdb_buffered_insn_length): Adjust accordingly.
3457         (set_disassembler_options): Handle options with arguments.
3458         (show_disassembler_options_sfunc): Likewise.  Add a leading new
3459         line if showing options with descriptions.
3460         (disassembler_options_completer): Adapt to using the
3461         `disasm_options_and_args_t' structure.
3462         * mips-tdep.c (mips_disassembler_options): New variable.
3463         (mips_disassembler_options_o32): Likewise.
3464         (mips_disassembler_options_n32): Likewise.
3465         (mips_disassembler_options_n64): Likewise.
3466         (gdb_print_insn_mips): Don't set `disassembler_options'.
3467         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
3468         functions.
3469         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
3470         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
3471         `gdbarch_disassembler_options_implicit' and
3472         `gdbarch_valid_disassembler_options'.
3473         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
3474         `disasm_options_and_args_t' structure.
3475         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
3476         method.
3477         (valid_disassembler_options): Switch from `disasm_options_t' to
3478         the `disasm_options_and_args_t' structure.
3479         * NEWS: Document `set disassembler-options' support for the MIPS
3480         target.
3481         * gdbarch.h: Regenerate.
3482         * gdbarch.c: Regenerate.
3483
3484 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
3485
3486         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
3487
3488 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
3489
3490         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
3491         parameter in call to amd64_target_description.
3492         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
3493         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
3494         (amd64fbsd_init_abi): Likewise.
3495         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
3496         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
3497         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
3498         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
3499
3500 2018-06-29  Pedro Alves  <palves@redhat.com>
3501
3502         * gdb/amd64-tdep.h (amd64_create_target_description): Add
3503         "segments" parameter.
3504         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
3505         (_initialize_amd64_tdep): Update call to
3506         amd64_create_target_description.
3507         (amd64_target_description): Add "segments" parameter.  Adjust
3508         the implementation to use it.
3509         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
3510         call to amd64_create_target_description.
3511         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
3512         * gdb/arch/amd64.h (amd64_create_target_description): Add
3513         "segments" register.
3514         * gdb/arch/amd64.c (amd64_create_target_description): Add
3515         "segments" parameter.  Call create_feature_i386_64bit_segments
3516         only if SEGMENTS is true.
3517         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
3518         call to amd64_create_target_description.
3519
3520 2018-06-29  Pedro Alves  <palves@redhat.com>
3521
3522         * thread.c (thread_target_id_str): New, factored out from ...
3523         (print_thread_info_1): ... here.  Use it to compute the max
3524         "Target Id" column width.
3525
3526 2018-06-29  Pedro Alves  <palves@redhat.com>
3527
3528         * remote.c (remote_target::extra_thread_info): Delete
3529         'display_buf' and 'n' locals.  from the cache, regardless of
3530         packet mechanims is in use.  Use cache for qThreadExtra and qP
3531         methods too.
3532
3533 2018-06-29  Pedro Alves  <palves@redhat.com>
3534
3535         * blockframe.c (find_pc_sect_containing_function): New function.
3536         * breakpoint.c (print_breakpoint_location): Don't call
3537         find_pc_sect_function.
3538         * linespec.c (create_sals_line_offset): Record the location's
3539         symbol in the sal.
3540         * linespec.c (convert_address_location_to_sals): Fill in sal's
3541         symbol with find_pc_sect_containing_function.
3542         * symtab.c (find_function_start_sal): Rename to ...
3543         (find_function_start_sal_1): ... this.
3544         (find_function_start_sal): Reimplement as wrapper around
3545         find_function_start_sal_1, and use
3546         find_pc_sect_containing_function to fill in the sal's symbol.
3547         (find_function_start_sal(symbol*, bool)): Adjust.
3548         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
3549         comments.
3550         (find_pc_sect_containing_function): Declare.
3551
3552 2018-06-29  Pedro Alves  <palves@redhat.com>
3553
3554         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
3555         true if the the location has no symbol.
3556
3557 2018-06-28  Tom Tromey  <tom@tromey.com>
3558
3559         * NEWS: Mention --enable-codesign.
3560         * silent-rules.mk (ECHO_SIGN): New variable.
3561         * configure.ac: Add --enable-codesign.
3562         * configure: Rebuild.
3563         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
3564         (gdb$(EXEEXT)): Optionally invoke codesign.
3565
3566 2018-06-28  Pedro Alves  <palves@redhat.com>
3567
3568         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
3569         comments.
3570         (switch_to_thread_no_regs): Adjust comment.
3571         * infcmd.c (stop_pc): Delete.
3572         (post_create_inferior, info_program_command): Replace references
3573         to stop_pc with references to thread_info->suspend.stop_pc.
3574         * inferior.h (stop_pc): Delete declaration.
3575         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
3576         (handle_inferior_event_1, handle_signal_stop)
3577         (process_event_stop_test, keep_going_stepped_thread)
3578         (handle_step_into_function, handle_step_into_function_backward)
3579         (print_stop_location): Replace references to stop_pc with
3580         references to thread_info->suspend.stop_pc.
3581         (struct infcall_suspend_state) <stop_pc>: Delete field.
3582         (save_infcall_suspend_state, restore_infcall_suspend_state):
3583         Remove references to inf_stat->stop_pc.
3584         * linux-fork.c (fork_load_infrun_state): Likewise.
3585         * record-btrace.c (record_btrace_set_replay): Likewise.
3586         * record-full.c (record_full_goto_entry): Likewise.
3587         * remote.c (print_one_stopped_thread): Likewise.
3588         * target.c (target_resume): Extend comment.
3589         * thread.c (set_executing_thread): New.
3590         (set_executing): Use it.
3591         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
3592         Remove references to stop_pc.
3593
3594 2018-06-28  Pedro Alves  <palves@redhat.com>
3595
3596         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
3597         Moving fetching stop_pc until after ecs->event_thread is refreshed.
3598
3599 2018-06-28  Tom Tromey  <tom@tromey.com>
3600
3601         * coffread.c (coff_symfile_finish): Update.
3602         * xcoffread.c (xcoff_symfile_finish): Update.
3603         * elfread.c (elf_symfile_finish): Update.
3604         * symfile.h (dwarf2_free_objfile): Don't declare.
3605         * dwarf2read.c (_initialize_dwarf2_read): Use
3606         register_objfile_data_with_cleanup.
3607         (dwarf2_free_objfile): Now static.  Change signature.
3608
3609 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
3610
3611         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
3612         option "-o" to add-symbol-file-load to add an offset to each
3613         section's load address.
3614         * symfile.c (set_objfile_default_section_offset): New function.
3615
3616 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
3617
3618         * symfile.c (add_symbol_file_command): Make sure that sections
3619         with the same name are sorted in the same order.
3620
3621 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
3622
3623         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
3624         require the second argument.  If omitted, load sections at the
3625         addresses specified in the file.
3626
3627 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
3628
3629         * symfile.c (symbol_file_command, symbol_file_add_main_1)
3630         (_initialize_symfile): Add option "-o" to symbol-file to add an
3631         offset to each section of the symbol file.
3632
3633 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
3634
3635         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
3636
3637 2018-06-27  Tom Tromey  <tom@tromey.com>
3638
3639         * stack.c (_initialize_stack): Update "func" help text.
3640
3641 2018-06-27  Tom Tromey  <tom@tromey.com>
3642
3643         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
3644         std::vector.
3645         (unwind_infopy_str, pyuw_create_unwind_info)
3646         (unwind_infopy_add_saved_register, pyuw_sniffer)
3647         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
3648         Update.
3649         (struct saved_reg): Add constructor.
3650         <value>: Now a gdbpy_ref<>.
3651
3652 2018-06-27  Tom Tromey  <tom@tromey.com>
3653
3654         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
3655
3656 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
3657
3658         * gdb-gdb.py.in: Format using autopep8.
3659
3660 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
3661
3662         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
3663         (type_lookup_function): Recognize CORE_ADDR values.
3664
3665 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
3666
3667         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
3668         print tag_name.
3669
3670 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
3671
3672         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
3673         <__lt__>: Add.
3674
3675 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
3676
3677         * gdb-gdb.py: Move to...
3678         * gdb-gdb.py.in: ... here.
3679         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
3680         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
3681         dependencies.
3682         (distclean): Remove gdb-gdb.py when cleaning.
3683         (gdb-gdb.py, gdb-gdb.gdb): New rules.
3684         * configure: Re-generate.
3685
3686 2018-06-27  Pedro Alves  <palves@redhat.com>
3687
3688         * proc-service.c (get_ps_regcache): New.
3689         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
3690         (ps_lsetfpregs): Use it.
3691
3692 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
3693
3694         PR gdb/21695
3695         * dwarf2read.c (lnp_state_machine::check_line_address): Update declaration.
3696         (dwarf_decode_lines_1): Adjust.
3697
3698 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
3699
3700         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
3701         override.
3702         <info_proc>: Likewise.
3703
3704 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
3705
3706         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
3707         to windows_fetch_one_register, and only handle the case of
3708         fetching one register.  Move the code that reloads the context
3709         and iterates over all registers if R is negative to...
3710         (windows_nat_target::fetch_registers): ... here.
3711         (do_windows_store_inferior_registers): Rename to
3712         windows_store_one_register, and only handle the case of storing
3713         one register.  Move the code that handles the case where r is
3714         negative to...
3715         (windows_nat_target::store_registers) ... here.
3716
3717 2018-06-26  Tom Tromey  <tom@tromey.com>
3718
3719         PR rust/22574:
3720         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
3721         * rust-lang.c (rust_print_struct_def): Add podata parameter.
3722         Update.
3723         (rust_internal_print_type): Add podata parameter.
3724         (rust_print_type): Update.
3725
3726 2018-06-26  Tom Tromey  <tom@tromey.com>
3727
3728         * typeprint.h (struct print_offset_data) <update, finish,
3729         maybe_print_hole>: New methods.
3730         <indentation>: New constant.
3731         * typeprint.c (print_offset_data::indentation): Define.
3732         (print_offset_data::maybe_print_hole, print_offset_data::update)
3733         (print_offset_data::finish): Move from c-typeprint.c and rename.
3734         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
3735         (print_spaces_filtered_with_print_options): Update.
3736         (c_print_type_union_field_offset, maybe_print_hole)
3737         (c_print_type_struct_field_offset): Move to typeprint.c and
3738         rename.
3739         (c_type_print_base_struct_union): Update.
3740
3741 2018-06-25  Pedro Alves  <palves@redhat.com>
3742
3743         * gdbthread.h (thread_info_ref, delete_thread)
3744         (delete_thread_silent, first_thread_of_inferior)
3745         (any_thread_of_inferior, switch_to_thread)
3746         (enable_thread_stack_temporaries)
3747         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
3748         (get_last_thread_stack_temporary)
3749         (value_in_thread_stack_temporaries, can_access_registers_thread):
3750         Spell out "struct thread_info" instead of just "thread_info".
3751         * inferior.h (notice_new_inferior): Likewise.
3752
3753 2018-06-25  Pedro Alves  <palves@redhat.com>
3754
3755         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
3756         pass thread_info pointer to delete_thread.
3757         (windows_nat_target::detach): Pass inferior pointer to
3758         detach_inferior.
3759         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
3760         delete_thread.
3761         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
3762         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
3763         and pass a thread_info pointer to delete_thread.
3764         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
3765         pass thread_info pointer to delete_thread.
3766         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
3767         delete_thread_silent call.
3768         * procfs.c (procfs_target::detach): Pass inferior pointer to
3769         detach_inferior.
3770         (procfs_target::wait): Pass thread_info pointer to delete_thread.
3771         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
3772         delete_thread_silent call.
3773         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
3774         pass thread_info pointer to delete_thread.
3775         (windows_nat_target::detach): Pass inferior pointer to
3776         delete_inferior.
3777
3778 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
3779
3780         * regcache.c (readable_regcache::read_part): Fix asserts.
3781         (reg_buffer::raw_collect_part): New function.
3782         (regcache::write_part): Fix asserts.
3783         (reg_buffer::raw_supply_part): New function.
3784         (regcache::transfer_regset_register): New helper function.
3785         (regcache::transfer_regset): Call new functions.
3786         (regcache_supply_regset): Use gdb_byte*.
3787         (regcache::supply_regset): Likewise.
3788         (regcache_collect_regset): Likewise.
3789         (regcache::collect_regset): Likewise.
3790         * regcache.h (reg_buffer::raw_collect_part): New declaration.
3791         (reg_buffer::raw_supply_part): Likewise.
3792         (regcache::transfer_regset_register): Likewise.
3793         (regcache::transfer_regset): Use gdb_byte*.
3794
3795 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
3796
3797         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
3798
3799 2018-06-21  Pedro Alves  <palves@redhat.com>
3800
3801         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
3802         instead of a ptid_t.  All callers adjusted.
3803         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
3804         adjusted.
3805         (print_ada_task_info, display_current_task_id, task_command_1):
3806         Adjust.
3807         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
3808         inferior_thread.
3809         (breakpoint_kind): Adjust.
3810         (remove_breakpoints_pid): Rename to ...
3811         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
3812         pointer.  All callers adjusted.
3813         (bpstat_clear_actions): Use inferior_thread.
3814         (get_bpstat_thread): New.
3815         (bpstat_do_actions): Use it.
3816         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
3817         to take a thread_info pointer.  All callers adjusted.
3818         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
3819         (breakpoint_re_set_thread): Use inferior_thread.
3820         * breakpoint.h (struct inferior): Forward declare.
3821         (bpstat_stop_status): Update.
3822         (remove_breakpoints_pid): Delete.
3823         (remove_breakpoints_inf): New.
3824         * bsd-uthread.c (bsd_uthread_target::wait)
3825         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
3826         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
3827         (maint_btrace_packet_history_cmd)
3828         (maint_btrace_clear_packet_history_cmd): Adjust.
3829         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
3830         inferior_thread.
3831         * cli/cli-interp.c: Include "inferior.h".
3832         * common/refcounted-object.h (struct
3833         refcounted_object_ref_policy): New.
3834         * compile/compile-object-load.c: Include gdbthread.h.
3835         (store_regs): Use inferior_thread.
3836         * corelow.c (core_target::close): Use current_inferior.
3837         (core_target_open): Adjust to use first_thread_of_inferior and use
3838         the current inferior.
3839         * ctf.c (ctf_target::close): Adjust to use current_inferior.
3840         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
3841         <thread>: ... this new field.  All references adjusted.
3842         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
3843         Take a thread_info pointer instead of a ptid_t.
3844         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
3845         (dummy_frame_discard, register_dummy_frame_dtor): Take a
3846         thread_info pointer instead of a ptid_t.
3847         * elfread.c: Include "inferior.h".
3848         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
3849         Use inferior_thread.
3850         * eval.c (evaluate_subexp): Likewise.
3851         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
3852         inferior_thread.
3853         * gdb_proc_service.h (struct thread_info): Forward declare.
3854         (struct ps_prochandle) <ptid>: Delete, replaced by ...
3855         <thread>: ... this new field.  All references adjusted.
3856         * gdbarch.h, gdbarch.c: Regenerate.
3857         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
3858         'thread' parameter.  All implementations and callers adjusted.
3859         * gdbthread.h (thread_info) <set_running>: New method.
3860         (delete_thread, delete_thread_silent): Take a thread_info pointer
3861         instead of a ptid.
3862         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
3863         (first_thread_of_process): Delete, replaced by ...
3864         (first_thread_of_inferior): ... this new function.  All callers
3865         adjusted.
3866         (any_live_thread_of_process): Delete, replaced by ...
3867         (any_live_thread_of_inferior): ... this new function.  All callers
3868         adjusted.
3869         (switch_to_thread, switch_to_no_thread): Declare.
3870         (is_executing): Delete.
3871         (enable_thread_stack_temporaries): Update comment.
3872         <enable_thread_stack_temporaries>: Take a thread_info pointer
3873         instead of a ptid_t.  Incref the thread.
3874         <~enable_thread_stack_temporaries>: Decref the thread.
3875         <m_ptid>: Delete
3876         <m_thr>: New.
3877         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
3878         (get_last_thread_stack_temporary)
3879         (value_in_thread_stack_temporaries, can_access_registers_thread):
3880         Take a thread_info pointer instead of a ptid_t.  All callers
3881         adjusted.
3882         * infcall.c (get_call_return_value): Use inferior_thread.
3883         (run_inferior_call): Work with thread pointers instead of ptid_t.
3884         (call_function_by_hand_dummy): Work with thread pointers instead
3885         of ptid_t.  Use thread_info_ref.
3886         * infcmd.c (proceed_thread_callback): Access thread's state
3887         directly.
3888         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
3889         access thread's state directly.
3890         (continue_command): Use inferior_thread.
3891         (info_program_command): Use find_thread_ptid and access thread
3892         state directly.
3893         (proceed_after_attach_callback): Use thread state directly.
3894         (notice_new_inferior): Take a thread_info pointer instead of a
3895         ptid_t.  All callers adjusted.
3896         (exit_inferior): Take an inferior pointer instead of a pid.  All
3897         callers adjusted.
3898         (exit_inferior_silent): New.
3899         (detach_inferior): Delete.
3900         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
3901         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
3902         (detach_inferior_command, kill_inferior_command): Use
3903         find_inferior_id instead of valid_gdb_inferior_id and
3904         gdb_inferior_id_to_pid.
3905         (inferior_command): Use inferior and thread pointers.
3906         * inferior.h (struct thread_info): Forward declare.
3907         (notice_new_inferior): Take a thread_info pointer instead of a
3908         ptid_t.  All callers adjusted.
3909         (detach_inferior): Delete declaration.
3910         (exit_inferior, exit_inferior_silent): Take an inferior pointer
3911         instead of a pid.  All callers adjusted.
3912         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
3913         (valid_gdb_inferior_id): Delete.
3914         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
3915         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
3916         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
3917         ...
3918         <inf>: ... this new field.
3919         <step_ptid>: Delete, replaced by ...
3920         <step_thread>: ... this new field.
3921         (get_displaced_stepping_state): Take an inferior pointer instead
3922         of a pid.  All callers adjusted.
3923         (displaced_step_in_progress_any_inferior): Adjust.
3924         (displaced_step_in_progress_thread): Take a thread pointer instead
3925         of a ptid_t.  All callers adjusted.
3926         (displaced_step_in_progress, add_displaced_stepping_state): Take
3927         an inferior pointer instead of a pid.  All callers adjusted.
3928         (get_displaced_step_closure_by_addr): Adjust.
3929         (remove_displaced_stepping_state): Take an inferior pointer
3930         instead of a pid.  All callers adjusted.
3931         (displaced_step_prepare_throw, displaced_step_prepare)
3932         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
3933         All callers adjusted.
3934         (start_step_over): Adjust.
3935         (infrun_thread_ptid_changed): Remove bit updating ptids in the
3936         displaced step queue.
3937         (do_target_resume): Adjust.
3938         (fetch_inferior_event): Use inferior_thread.
3939         (context_switch, get_inferior_stop_soon): Take an
3940         execution_control_state pointer instead of a ptid_t.  All callers
3941         adjusted.
3942         (switch_to_thread_cleanup): Delete.
3943         (stop_all_threads): Use scoped_restore_current_thread.
3944         * inline-frame.c: Include "gdbthread.h".
3945         (inline_state) <inline_state>: Take a thread pointer instead of a
3946         ptid_t.  All callers adjusted.
3947         <ptid>: Delete, replaced by ...
3948         <thread>: ... this new field.
3949         (find_inline_frame_state): Take a thread pointer instead of a
3950         ptid_t.  All callers adjusted.
3951         (skip_inline_frames, step_into_inline_frame)
3952         (inline_skipped_frames, inline_skipped_symbol): Take a thread
3953         pointer instead of a ptid_t.  All callers adjusted.
3954         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
3955         (inline_skipped_frames, inline_skipped_symbol): Likewise.
3956         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
3957         pointers directly.
3958         * linux-nat.c (get_detach_signal): Likewise.
3959         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
3960         (thread_db_notice_clone): Adjust.
3961         (thread_db_find_new_threads_silently)
3962         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
3963         a thread pointer instead of a ptid_t.  All callers adjusted.
3964         * mi/mi-cmd-var.c: Include "inferior.h".
3965         (mi_cmd_var_update_iter): Update to use thread pointers.
3966         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
3967         inferior directly.
3968         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
3969         out to ...
3970         (mi_output_running): ... this new function.
3971         (mi_on_resume_1): Adjust to use it.
3972         (mi_user_selected_context_changed): Adjust to use inferior_thread.
3973         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
3974         directly.
3975         (interrupt_thread_callback): : Adjust to use thread and inferior
3976         pointers.
3977         * proc-service.c: Include "gdbthread.h".
3978         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
3979         * progspace-and-thread.c: Include "inferior.h".
3980         * progspace.c: Include "inferior.h".
3981         * python/py-exitedevent.c (create_exited_event_object): Adjust to
3982         hold a reference to an inferior_object.
3983         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
3984         inferior_thread.
3985         * python/py-inferior.c (struct inferior_object): Give the type a
3986         tag name instead of a typedef.
3987         (python_on_normal_stop): No need to check if the current thread is
3988         listed.
3989         (inferior_to_inferior_object): Change return type to
3990         inferior_object.  All callers adjusted.
3991         (find_thread_object): Delete, bits factored out to ...
3992         (thread_to_thread_object): ... this new function.
3993         * python/py-infthread.c (create_thread_object): Use
3994         inferior_to_inferior_object.
3995         (thpy_is_stopped): Use thread pointer directly.
3996         (gdbpy_selected_thread): Use inferior_thread.
3997         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
3998         field, replaced with ...
3999         <thread>: ... this new field.  All users adjusted.
4000         (btpy_insn_or_gap_new): Drop const.
4001         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
4002         callers adjusted.
4003         * python/py-record.c: Include "gdbthread.h".
4004         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
4005         a ptid_t.  All callers adjusted.
4006         (gdbpy_current_recording): Use inferior_thread.
4007         * python/py-record.h (recpy_record_object) <ptid>: Delete
4008         field, replaced with ...
4009         <thread>: ... this new field.  All users adjusted.
4010         (recpy_element_object) <ptid>: Delete
4011         field, replaced with ...
4012         <thread>: ... this new field.  All users adjusted.
4013         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
4014         a ptid_t.  All callers adjusted.
4015         * python/py-threadevent.c: Include "gdbthread.h".
4016         (get_event_thread): Use thread_to_thread_object.
4017         * python/python-internal.h (struct inferior_object): Forward
4018         declare.
4019         (find_thread_object, find_inferior_object): Delete declarations.
4020         (thread_to_thread_object, inferior_to_inferior_object): New
4021         declarations.
4022         * record-btrace.c: Include "inferior.h".
4023         (require_btrace_thread): Use inferior_thread.
4024         (record_btrace_frame_sniffer)
4025         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
4026         (get_thread_current_frame): Use scoped_restore_current_thread and
4027         switch_to_thread.
4028         (get_thread_current_frame): Use thread pointer directly.
4029         (record_btrace_replay_at_breakpoint): Use thread's inferior
4030         pointer directly.
4031         * record-full.c: Include "inferior.h".
4032         * regcache.c: Include "gdbthread.h".
4033         (get_thread_arch_regcache): Use the inferior's address space
4034         directly.
4035         (get_thread_regcache, registers_changed_thread): New.
4036         * regcache.h (get_thread_regcache(thread_info *thread)): New
4037         overload.
4038         (registers_changed_thread): New.
4039         (remote_target) <remote_detach_1>: Swap order of parameters.
4040         (remote_add_thread): <remote_add_thread>: Return the new thread.
4041         (get_remote_thread_info(ptid_t)): New overload.
4042         (remote_target::remote_notice_new_inferior): Use thread pointers
4043         directly.
4044         (remote_target::process_initial_stop_replies): Use
4045         thread_info::set_running.
4046         (remote_target::remote_detach_1, remote_target::detach)
4047         (extended_remote_target::detach): Adjust.
4048         * stack.c (frame_show_address): Use inferior_thread.
4049         * target-debug.h (target_debug_print_thread_info_pp): New.
4050         * target-delegates.c: Regenerate.
4051         * target.c (default_thread_address_space): Delete.
4052         (memory_xfer_partial_1): Use current_inferior.
4053         (target_detach): Use current_inferior.
4054         (target_thread_address_space): Delete.
4055         (generic_mourn_inferior): Use current_inferior.
4056         * target.h (struct target_ops) <thread_address_space>: Delete.
4057         (target_thread_address_space): Delete.
4058         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
4059         pointers directly.
4060         (delete_thread_1, delete_thread, delete_thread_silent): Take a
4061         thread pointer instead of a ptid_t.  Adjust all callers.
4062         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
4063         (first_thread_of_process): Delete, replaced by ...
4064         (first_thread_of_inferior): ... this new function.  All callers
4065         adjusted.
4066         (any_thread_of_process): Rename to ...
4067         (any_thread_of_inferior): ... this, and take an inferior pointer.
4068         (any_live_thread_of_process): Rename to ...
4069         (any_live_thread_of_inferior): ... this, and take an inferior
4070         pointer.
4071         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
4072         (value_in_thread_stack_temporaries)
4073         (get_last_thread_stack_temporary): Take a thread pointer instead
4074         of a ptid_t.  Adjust all callers.
4075         (thread_info::set_running): New.
4076         (validate_registers_access): Use inferior_thread.
4077         (can_access_registers_ptid): Rename to ...
4078         (can_access_registers_thread): ... this, and take a thread
4079         pointer.
4080         (print_thread_info_1): Adjust to compare thread pointers instead
4081         of ptids.
4082         (switch_to_no_thread, switch_to_thread): Make extern.
4083         (scoped_restore_current_thread::~scoped_restore_current_thread):
4084         Use m_thread pointer directly.
4085         (scoped_restore_current_thread::scoped_restore_current_thread):
4086         Use inferior_thread.
4087         (thread_command): Use thread pointer directly.
4088         (thread_num_make_value_helper): Use inferior_thread.
4089         * top.c (execute_command): Use inferior_thread.
4090         * tui/tui-interp.c: Include "inferior.h".
4091         * varobj.c (varobj_create): Use inferior_thread.
4092         (value_of_root_1): Use find_thread_global_id instead of
4093         global_thread_id_to_ptid.
4094
4095 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
4096
4097         * regcache.c (readable_regcache::read_part): Avoid memcpy when
4098         possible.
4099         (regcache::write_part): Likewise.
4100         (readable_regcache::cooked_read_part): Update comment.
4101         (readable_regcache::cooked_write_part): Likewise.
4102         * regcache.h: (readable_regcache::read_part): Likewise.
4103         (regcache::write_part): Likewise.
4104
4105 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
4106             Dirk Schubert  <dirk.schubert@arm.com>
4107
4108         * aarch64-linux-nat.c (post_attach): New.
4109         (aarch64_linux_nat_target::post_attach): Override post_attach to
4110         record the number of hardware debug registers.
4111
4112 2018-06-20  Tom Tromey  <tom@tromey.com>
4113
4114         * python/py-param.c (add_setshow_generic): Make parameters const.
4115         (parmpy_init): Update.
4116
4117 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
4118
4119         * regcache.h (regcache_cooked_read_ftype): Rename to...
4120         (register_read_ftype): ...this, change type to function_view.
4121         (class reg_buffer) <save>: Remove src parameter.
4122         (readonly_detached_regcache) <readonly_detached_regcache>: Make
4123         parameter non-const in first overload.  Remove src parameter in
4124         second overload.
4125         * regcache.c (do_cooked_read): Remove.
4126         (readonly_detached_regcache::readonly_detached_regcache): Make
4127         parameter non-const, adjust call to other constructor.
4128         (reg_buffer::save): Remove src parameter.
4129         * frame.c (do_frame_register_read): Remove.
4130         (frame_save_as_regcache): Use lambda function.
4131         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
4132         parameter to ppu2spu_data *.
4133         (ppu2spu_sniffer): Use lambda function.
4134
4135 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
4136
4137         * record-full.c (record_full_target::insert_breakpoint): Remove
4138         "struct" keyword, add const.
4139
4140 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
4141
4142         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
4143         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
4144         * configure.ac: Remove AC_PREREQ, add missing quoting.
4145         * gnulib/configure.ac: Modernize usage of
4146         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
4147         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
4148         (AUTOMAKE_VERSION): Bump to 1.15.1.
4149         * configure: Re-generate.
4150         * config.in: Re-generate.
4151         * aclocal.m4: Re-generate.
4152         * gnulib/aclocal.m4: Re-generate.
4153         * gnulib/config.in: Re-generate.
4154         * gnulib/configure: Re-generate.
4155         * gnulib/import/Makefile.in: Re-generate.
4156
4157 2018-06-19  Pedro Alves  <palves@redhat.com>
4158
4159         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
4160         (lookup_minimal_symbol_by_pc_section): ... here with
4161         gdb_assert_not_reached added.
4162
4163 2018-06-19  Pedro Alves  <palves@redhat.com>
4164
4165         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
4166         parameter with a block parameter.  Compare location's block symbol
4167         with the frame's block instead of addresses.
4168         (skip_inline_frames): Pass the current block instead of the
4169         frame's address.  Break out as soon as we determine the frame
4170         should not be skipped.
4171
4172 2018-06-18  Tom Tromey  <tom@tromey.com>
4173
4174         * solib-aix.c (solib_aix_get_section_offsets): Return
4175         unique_xmalloc_ptr.
4176         (solib_aix_solib_create_inferior_hook): Update.
4177
4178 2018-06-18  Tom Tromey  <tom@tromey.com>
4179
4180         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
4181
4182 2018-06-18  Tom Tromey  <tom@tromey.com>
4183
4184         * solib-frv.c (frv_relocate_main_executable): Use
4185         unique_xmalloc_ptr.
4186         * solib-dsbt.c (dsbt_relocate_main_executable): Use
4187         unique_xmalloc_ptr.
4188
4189 2018-06-18  Tom Tromey  <tom@tromey.com>
4190
4191         * objfiles.h (inhibit_section_map_updates): Update.
4192         (resume_section_map_updates, resume_section_map_updates_cleanup):
4193         Remove.
4194         * solib-svr4.c (svr4_handle_solib_event): Update.
4195         * objfiles.c (inhibit_section_map_updates): Return
4196         scoped_restore_tmpl<int>.
4197         (resume_section_map_updates, resume_section_map_updates_cleanup):
4198         Remove.
4199
4200 2018-06-18  Tom Tromey  <tom@tromey.com>
4201
4202         * valprint.h (read_string): Update.
4203         * valprint.c (read_string): Change type of "buffer".
4204         (val_print_string): Update.
4205         * python/py-value.c (valpy_string): Update.
4206         * language.h (struct language_defn) <la_get_string>: Change
4207         type of "buffer".
4208         (default_get_string, c_get_string): Update.
4209         * language.c (default_get_string): Change type of "buffer".
4210         * guile/scm-value.c (gdbscm_value_to_string): Update.
4211         * c-lang.c (c_get_string): Change type of "buffer".
4212
4213 2018-06-18  Tom Tromey  <tom@tromey.com>
4214
4215         * ser-mingw.c (struct pipe_state_destroyer): New.
4216         (pipe_state_up): New typedef.
4217         (cleanup_pipe_state): Remove.
4218         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
4219
4220 2018-06-18  Tom Tromey  <tom@tromey.com>
4221
4222         * rust-lang.h (rust_yyerror): Don't declare.
4223         * rust-lang.c (rust_language_defn): Update.
4224         * rust-exp.y (yyerror): Now static.
4225         * parse.c (parse_exp_in_context_1): Update.
4226         * p-lang.h (p_yyerror): Don't declare.
4227         * p-lang.c (p_language_defn): Update.
4228         * p-exp.y (yyerror): Now static.
4229         * opencl-lang.c (opencl_language_defn): Update.
4230         * objc-lang.c (objc_language_defn): Update.
4231         * m2-lang.h (m2_yyerror): Don't declare.
4232         * m2-lang.c (m2_language_defn): Update.
4233         * m2-exp.y (yyerror): Now static.
4234         * language.h (struct language_defn) <la_error>: Remove.
4235         * language.c (unk_lang_error): Remove.
4236         (unknown_language_defn, auto_language_defn): Remove.
4237         * go-lang.h (go_yyerror): Don't declare.
4238         * go-lang.c (go_language_defn): Update.
4239         * go-exp.y (yyerror): Now static.
4240         * f-lang.h (f_yyerror): Don't declare.
4241         * f-lang.c (f_language_defn): Update.
4242         * f-exp.y (yyerror): Now static.
4243         * d-lang.h (d_yyerror): Don't declare.
4244         * d-lang.c (d_language_defn): Update.
4245         * d-exp.y (yyerror): Now static.
4246         * c-lang.h (c_yyerror): Don't declare.
4247         * c-lang.c (c_language_defn, cplus_language_defn)
4248         (asm_language_defn, minimal_language_defn): Update.
4249         * c-exp.y (yyerror): Now static.
4250         * ada-lang.h (ada_yyerror): Don't declare.
4251         * ada-lang.c (ada_language_defn): Update.
4252         * ada-exp.y (yyerror): Now static.
4253
4254 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
4255
4256         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
4257         (store_sveregs_to_thread): Likewise.
4258         (aarch64_linux_fetch_inferior_registers): Check for SVE.
4259         (aarch64_linux_store_inferior_registers): Likewise.
4260         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
4261         function.
4262         (aarch64_sve_regs_copy_to_regcache): Likewise.
4263         (aarch64_sve_regs_copy_from_regcache): Likewise.
4264         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
4265         declaration.
4266         (aarch64_sve_regs_copy_to_regcache): Likewise.
4267         (aarch64_sve_regs_copy_from_regcache): Likewise.
4268         (sve_context): Structure from Linux headers.
4269         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
4270         (SVE_SIG_ZREG_SIZE): Likewise.
4271         (SVE_SIG_PREG_SIZE): Likewise.
4272         (SVE_SIG_FFR_SIZE): Likewise.
4273         (SVE_SIG_REGS_OFFSET): Likewise.
4274         (SVE_SIG_ZREGS_OFFSET): Likewise.
4275         (SVE_SIG_ZREG_OFFSET): Likewise.
4276         (SVE_SIG_ZREGS_SIZE): Likewise.
4277         (SVE_SIG_PREGS_OFFSET): Likewise.
4278         (SVE_SIG_PREG_OFFSET): Likewise.
4279         (SVE_SIG_PREGS_SIZE): Likewise.
4280         (SVE_SIG_FFR_OFFSET): Likewise.
4281         (SVE_SIG_REGS_SIZE): Likewise.
4282         (SVE_SIG_CONTEXT_SIZE): Likewise.
4283         (SVE_PT_REGS_MASK): Likewise.
4284         (SVE_PT_REGS_FPSIMD): Likewise.
4285         (SVE_PT_REGS_SVE): Likewise.
4286         (SVE_PT_VL_INHERIT): Likewise.
4287         (SVE_PT_VL_ONEXEC): Likewise.
4288         (SVE_PT_REGS_OFFSET): Likewise.
4289         (SVE_PT_FPSIMD_OFFSET): Likewise.
4290         (SVE_PT_FPSIMD_SIZE): Likewise.
4291         (SVE_PT_SVE_ZREG_SIZE): Likewise.
4292         (SVE_PT_SVE_PREG_SIZE): Likewise.
4293         (SVE_PT_SVE_FFR_SIZE): Likewise.
4294         (SVE_PT_SVE_FPSR_SIZE): Likewise.
4295         (SVE_PT_SVE_FPCR_SIZE): Likewise.
4296         (__SVE_SIG_TO_PT): Likewise.
4297         (SVE_PT_SVE_OFFSET): Likewise.
4298         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
4299         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
4300         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
4301         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
4302         (SVE_PT_SVE_PREG_OFFSET): Likewise.
4303         (SVE_PT_SVE_PREGS_SIZE): Likewise.
4304         (SVE_PT_SVE_FFR_OFFSET): Likewise.
4305         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
4306         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
4307         (SVE_PT_SVE_SIZE): Likewise.
4308         (SVE_PT_SIZE): Likewise.
4309         (HAS_SVE_STATE): New define.
4310
4311 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
4312
4313         * nat/aarch64-sve-linux-sigcontext.h: New file.
4314         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
4315         new files.
4316         (SVE_VQ_MIN): Likewise.
4317         (SVE_VQ_MAX): Likewise.
4318         (SVE_VL_MIN): Likewise.
4319         (SVE_VL_MAX): Likewise.
4320         (SVE_NUM_ZREGS): Likewise.
4321         (SVE_NUM_PREGS): Likewise.
4322         (sve_vl_valid): Likewise.
4323         (struct user_sve_header): Likewise.
4324
4325 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
4326             Richard Bunt <Richard.Bunt@arm.com>
4327
4328         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
4329         was requested by GDB.
4330
4331 2018-06-15  Tom de Vries  <tdevries@suse.de>
4332
4333         * MAINTAINERS (Write After Approval): Add Tom de Vries.
4334
4335 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
4336
4337         * gnulib/update-gnulib.sh: Print expected versions of
4338         autoconf/aclocal.
4339
4340 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
4341
4342         * arch-utils.c (default_type_align): Use type_length_units.
4343         * gdbtypes.c (type_align): Use type_length_units.
4344
4345 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4346
4347         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
4348         of 'define' command.
4349
4350 2018-06-14  Tom de Vries  <tdevries@suse.de>
4351
4352         PR cli/22573
4353         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
4354         get_no_prettyformat_print_options.
4355
4356 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
4357
4358         * sparc-nat.h: Include target.h.
4359         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
4360         <fetch_registers>: Remove this argument in function call.
4361         <store_registers>: Remove this argument in function call, remove
4362         extra semicolon.
4363         <low_forget_process>: Call sparc64_forget_process instead of
4364         sparc_forget_process.
4365
4366 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4367
4368         * procfs.c (_initialize_procfs): Use add_inf_child_target.
4369         (procfs_target::make_corefile_notes): Adjust to new
4370         target_read_alloc return type.
4371
4372 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
4373             Stephen Roberts  <stephen.roberts@arm.com>
4374
4375         PR gdb/22882
4376         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
4377         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
4378         Move should_notify_stop local into more inner scope.
4379
4380 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
4381             Stephen Roberts  <stephen.roberts@arm.com>
4382
4383         PR gdb/22882
4384         * infrun.c (resume_1): Add call to mark_async_event_handler.
4385
4386 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
4387
4388         * infrun.c (do_target_wait): Change old version of $pc printed.
4389
4390 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
4391
4392         * dwarf2read.c (read_index_from_section): Rename to...
4393         (read_gdb_index_from_section): ... this, update all callers.
4394         (dwarf2_read_index): Rename to...
4395         (dwarf2_read_gdb_index): ... this, update all callers.
4396
4397 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
4398
4399         * gdb/hppa-linux-nat.c
4400         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
4401         hppa_linux_nat_target::fetch_registers.
4402
4403 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
4404
4405         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
4406         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
4407         (AARCH64_DWARF_SVE_FFR): Likewise.
4408         (AARCH64_DWARF_SVE_P0): Likewise.
4409         (AARCH64_DWARF_SVE_Z0): Likewise.
4410
4411 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
4412
4413         * common/common-regcache.h (raw_compare): New function.
4414         * regcache.c (regcache::raw_compare): Likewise.
4415         * regcache.h (regcache::raw_compare): New declaration.
4416
4417 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
4418
4419         * common/common-regcache.h (reg_buffer_common): New structure.
4420         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
4421         (reg_buffer::raw_supply): Likewise.
4422         (reg_buffer::raw_supply_integer): Likewise.
4423         (reg_buffer::raw_supply_zeroed): Likewise.
4424         (reg_buffer::raw_collect): Likewise.
4425         (reg_buffer::raw_collect_integer): Likewise.
4426         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
4427         (reg_buffer::raw_supply): Likewise.
4428         (reg_buffer::raw_supply_integer): Likewise.
4429         (reg_buffer::raw_supply_zeroed): Likewise.
4430         (reg_buffer::raw_collect): Likewise.
4431         (reg_buffer::raw_collect_integer): Likewise.
4432
4433 2018-06-10  Tom Tromey  <tom@tromey.com>
4434
4435         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
4436         (class remote_state) <stop_reply_queue>: Now std::vector.
4437         (remote_state::~remote_state)
4438         (remote_target::stop_reply_queue_length): Update.
4439         (struct queue_iter_param, remove_child_of_pending_fork)
4440         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
4441         (check_pending_event_prevents_wildcard_vcont_callback)
4442         (remove_stop_reply_for_inferior)
4443         (remove_stop_reply_of_remote_state)
4444         (remote_notif_remove_once_on_match)
4445         (stop_reply_match_ptid_and_ws)
4446         (remote_kill_child_of_pending_fork): Remove.
4447         (remote_target::remove_new_fork_children)
4448         (remote_target::check_pending_events_prevent_wildcard_vcont)
4449         (remote_target::discard_pending_stop_replies)
4450         (remote_target::discard_pending_stop_replies_in_queue)
4451         (remote_target::remote_notif_remove_queued_reply)
4452         (remote_target::queued_stop_reply)
4453         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
4454         (remote_target::wait, remote_target::kill_new_fork_children)
4455         (remote_target::async): Update.
4456
4457 2018-06-10  Tom Tromey  <tom@tromey.com>
4458
4459         * record-full.c (record_full_arch_list_cleanups): Remove.
4460         (record_full_message): Use try/catch.
4461         (record_full_wait_cleanups): Remove.
4462         (record_full_wait_1): Use try/catch.
4463         (record_full_restore): Likewise.
4464
4465 2018-06-10  Tom Tromey  <tom@tromey.com>
4466
4467         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
4468         declare VEC.  Add constructor.
4469         <in_target_beneath>: Now bool.
4470         (record_full_breakpoints): Now a std::vector, static.
4471         (record_full_sync_record_breakpoints)
4472         (record_full_init_record_breakpoints)
4473         (record_full_target::insert_breakpoint)
4474         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
4475
4476 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
4477
4478         * dwarf2read.c (process_cu_includes): Remove struct keyword.
4479         * serial.c (serial_interface_lookup): Remove struct keyword.
4480
4481 2018-06-10  Tom Tromey  <tom@tromey.com>
4482
4483         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
4484         method.
4485         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
4486         a method.
4487         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
4488         method.
4489         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
4490         "beneath" as a method.
4491         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
4492         Use "beneath" as a method.
4493
4494 2018-06-10  Tom Tromey  <tom@tromey.com>
4495
4496         * tracefile.c (struct trace_file_writer_deleter): New.
4497         <operator()>: Rename from trace_file_writer_xfree.
4498         (trace_file_writer_up): New typedef.
4499         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
4500
4501 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
4502
4503         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
4504         <m_registers, m_register_status>: Change type to
4505         std::unique_ptr.
4506         * regcache.c (reg_buffer::reg_buffer): Use new instead of
4507         XCNEWVEC.
4508
4509 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
4510
4511         * common/common-regcache.h (enum register_status): Add
4512         underlying type "signed char".
4513         * regcache.h (reg_buffer) <m_register_status>: Change type to
4514         register_status *.
4515         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
4516         register_status instead of signed char.
4517         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
4518         (reg_buffer::get_register_status): Remove cast.
4519         (readable_regcache::raw_read): Remove cast.
4520         (readable_regcache::cooked_read): Remove cast.
4521
4522 2018-06-09  Tom Tromey  <tom@tromey.com>
4523
4524         * source.c (reverse_search_command, forward_search_command): Use
4525         scoped_fd.
4526
4527 2018-06-09  Tom Tromey  <tom@tromey.com>
4528
4529         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
4530         (serial_ops_list): Now static, std::vector.
4531         (serial_interface_lookup, serial_add_interface): Update.
4532
4533 2018-06-09  Tom Tromey  <tom@tromey.com>
4534
4535         * dwarf2read.c (process_cu_includes): Update.
4536         (process_full_comp_unit): Update.
4537         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
4538         std::vector.
4539
4540 2018-06-08  Paul Koning  <paul_koning@dell.com>
4541
4542         PR gdb/23252
4543
4544         * python/python.c (do_start_initialization):
4545         Avoid call to internal Python API.
4546         (init__gdb_module): New function.
4547
4548 2018-06-08  Gary Benson <gbenson@redhat.com>
4549
4550         * linux-thread-db.c (valprint.h): New include.
4551         (struct check_thread_db_info): New structure.
4552         (check_thread_db_on_load, tdb_testinfo): New static globals.
4553         (check_thread_db, check_thread_db_callback): New functions.
4554         (try_thread_db_load_1): Run integrity checks if requested.
4555         (maintenance_check_libthread_db): New function.
4556         (_initialize_thread_db): Register "maint check libthread-db"
4557         and "maint set/show check-libthread-db".
4558         * NEWS: Mention the above new commands.
4559
4560 2018-06-08  Tom Tromey  <tom@tromey.com>
4561
4562         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
4563         now a method.
4564
4565 2018-06-08  Tom Tromey  <tom@tromey.com>
4566
4567         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
4568
4569 2018-06-08  Tom Tromey  <tom@tromey.com>
4570
4571         * common/btrace-common.h (struct btrace_data): Add constructor,
4572         destructor, move assignment operator.
4573         <empty, clear, fini>: New methods.
4574         <format>: Initialize.
4575         (btrace_data_init, btrace_data_fini, btrace_data_clear)
4576         (btrace_data_empty): Don't declare.
4577         * common/btrace-common.c (btrace_data_init): Remove.
4578         (btrace_data::fini): Rename from btrace_data_fini.
4579         (btrace_data::empty): Rename from btrace_data_empty.
4580         (btrace_data::clear): Rename from btrace_data_clear.  Return
4581         bool.
4582         * btrace.h (make_cleanup_btrace_data): Don't declare.
4583         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
4584         (parse_xml_btrace): Update.
4585         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
4586         (maint_btrace_clear_packet_history_cmd): Update.
4587
4588 2018-06-07  Pedro Alves  <palves@redhat.com>
4589
4590         * target.h (target_ops) <beneath>: Now a method.  All references
4591         updated.
4592         (class target_stack): New.
4593         * target.c (g_target_stack): New.
4594         (g_current_top_target): Delete.
4595         (current_top_target): Get the top target out of g_target_stack.
4596         (target_stack::push, target_stack::unpush): New.
4597         (push_target, unpush_target): Reimplement.
4598         (target_is_pushed): Reimplement in terms of g_target_stack.
4599         (target_ops::beneath, target_stack::find_beneath): New.
4600
4601 2018-06-07  Pedro Alves  <palves@redhat.com>
4602
4603         * target.h (find_target_beneath): Delete declaration.
4604         * target.c (find_target_beneath): Delete definition.
4605         * aix-thread.c: All callers of find_target_beneath adjusted to
4606         call target_ops::beneath instead.
4607         * bsd-uthread.c: Likewise.
4608         * linux-thread-db.c: Likewise.
4609         * ravenscar-thread.c: Likewise.
4610         * sol-thread.c: Likewise.
4611         * spu-multiarch.c: Likewise.
4612
4613 2018-06-07  Pedro Alves  <palves@redhat.com>
4614
4615         * target.h (target_ops) <beneath>: Now a method.  All references
4616         updated.
4617         (target_ops) <m_beneath>: New.
4618         * target.c (target_ops::beneath): New.
4619         * corelow.c: Adjust all references to target_ops::beneath.
4620         * linux-thread-db.c: Likewise.
4621         * make-target-delegates: Likewise.
4622         * record-btrace.c: Likewise.
4623         * record-full.c: Likewise.
4624         * remote.c: Likewise.
4625         * target.c: Likewise.
4626         * target-delegates.c: Regenerate.
4627
4628 2018-06-07  Pedro Alves  <palves@redhat.com>
4629
4630         * target.h (target_stack): Delete.
4631         (current_top_target): Declare function.
4632         * target.c (target_stack): Delete.
4633         (g_current_top_target): New.
4634         (current_top_target): New function.
4635         * auxv.c: Use current_top_target instead of target_stack
4636         throughout.
4637         * avr-tdep.c: Likewise.
4638         * breakpoint.c: Likewise.
4639         * corefile.c: Likewise.
4640         * elfread.c: Likewise.
4641         * eval.c: Likewise.
4642         * exceptions.c: Likewise.
4643         * frame.c: Likewise.
4644         * gdbarch-selftests.c: Likewise.
4645         * gnu-v3-abi.c: Likewise.
4646         * ia64-tdep.c: Likewise.
4647         * ia64-vms-tdep.c: Likewise.
4648         * infcall.c: Likewise.
4649         * infcmd.c: Likewise.
4650         * infrun.c: Likewise.
4651         * linespec.c: Likewise.
4652         * linux-tdep.c: Likewise.
4653         * minsyms.c: Likewise.
4654         * ppc-linux-nat.c: Likewise.
4655         * ppc-linux-tdep.c: Likewise.
4656         * procfs.c: Likewise.
4657         * regcache.c: Likewise.
4658         * remote.c: Likewise.
4659         * rs6000-tdep.c: Likewise.
4660         * s390-linux-nat.c: Likewise.
4661         * s390-tdep.c: Likewise.
4662         * solib-aix.c: Likewise.
4663         * solib-darwin.c: Likewise.
4664         * solib-dsbt.c: Likewise.
4665         * solib-spu.c: Likewise.
4666         * solib-svr4.c: Likewise.
4667         * solib-target.c: Likewise.
4668         * sparc-tdep.c: Likewise.
4669         * sparc64-tdep.c: Likewise.
4670         * spu-tdep.c: Likewise.
4671         * symfile.c: Likewise.
4672         * symtab.c: Likewise.
4673         * target-descriptions.c: Likewise.
4674         * target-memory.c: Likewise.
4675         * target.c: Likewise.
4676         * target.h: Likewise.
4677         * tracefile-tfile.c: Likewise.
4678         * tracepoint.c: Likewise.
4679         * valops.c: Likewise.
4680         * valprint.c: Likewise.
4681         * value.c: Likewise.
4682         * windows-tdep.c: Likewise.
4683         * mi/mi-main.c: Likewise.
4684
4685 2018-06-07  Tom Tromey  <tom@tromey.com>
4686
4687         * valprint.h (build_address_symbolic): Declare.
4688         * printcmd.c (print_address_symbolic): Update.
4689         (build_address_symbolic): Change "name" and "filename" to
4690         std::string.
4691         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
4692         Update.
4693         * defs.h (build_address_symbolic): Remove declaration.
4694
4695 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
4696
4697         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
4698         (aarch64_vnv_type): Add function.
4699         (aarch64_pseudo_register_name): Add V regs for SVE.
4700         (aarch64_pseudo_register_type): Likewise.
4701         (aarch64_pseudo_register_reggroup_p): Likewise.
4702         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
4703         (aarch64_pseudo_read_value): Add V regs for SVE.
4704         (aarch64_pseudo_write_2): Use V0 offset for SVE
4705         (aarch64_pseudo_write): Add V regs for SVE.
4706         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
4707
4708 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
4709
4710         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
4711         (sve_vl_from_vq): Likewise.
4712
4713 2018-06-05  Tom Tromey  <tom@tromey.com>
4714
4715         * cli/cli-cmds.c (show_version): Update.
4716         * top.c (print_gdb_version): Add "interactive" parameter.
4717         Update.
4718         * main.c (captured_main_1): Update.
4719         * top.h (print_gdb_version): Add "interactive" parameter and a
4720         comment.
4721
4722 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
4723
4724         * common/enum-flags.h: Add trailing semicolon to example in
4725         comment.
4726
4727 2018-06-05  Tom Tromey  <tom@tromey.com>
4728
4729         PR cli/12326:
4730         * NEWS: Add entry about pager.
4731         * utils.c (pagination_disabled_for_command): New global.
4732         (prompt_for_continue): Allow "c" response to prompt.
4733         (reinitialize_more_filter): Clear
4734         pagination_disabled_for_command.
4735         (fputs_maybe_filtered): Check pagination_disabled_for_command.
4736
4737 2018-06-04  Tom Tromey  <tom@tromey.com>
4738
4739         * ada-lang.h (ada_lookup_symbol_list): Update.
4740         * ada-lang.c (resolve_subexp): Update.
4741         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
4742         parameter.
4743         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
4744         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
4745         results parameter to std::vector.
4746         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
4747         Update.
4748         * ada-exp.y (block_lookup): Update.
4749         (select_possible_type_sym): Change type of syms.  Remove nsyms
4750         parameter.
4751         (write_var_or_type, write_name_assoc): Update.
4752
4753 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
4754
4755         * windows-nat.c (windows_nat_target::xfer_partial): Return
4756         TARGET_XFER_E_IO if we need to delegate to the target beneath
4757         but BENEATH is NULL.
4758
4759 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
4760
4761         * Makefile.in (config.status): Add configure.nat as a
4762         dependency.
4763
4764 2018-06-04  Tom Tromey  <tom@tromey.com>
4765
4766         * cp-name-parser.y (cpname_state): Add method declarations.
4767         (HANDLE_QUAL): Update.
4768         (cpname_state::d_grab, cpname_state::fill_comp)
4769         (cpname_state::make_operator, cpname_state::make_dtor)
4770         (cpname_state::make_builtin_type, cpname_state::make_name)
4771         (cpname_state::d_qualify, cpname_state::d_int_type)
4772         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
4773         (%union): Move earlier.
4774
4775 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
4776
4777         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
4778
4779 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
4780
4781         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
4782         (aarch64_pseudo_write_1): Likewise.
4783         (aarch64_pseudo_read_value): Use helper.
4784         (aarch64_pseudo_write): Likewise.
4785
4786 2018-06-04  Pedro Alves  <palves@redhat.com>
4787
4788         * darwin-nat.c (darwin_ops): Delete.
4789         (darwin_attach_pid): Use get_native_target.
4790
4791 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
4792
4793         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
4794         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
4795
4796 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
4797
4798         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
4799         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
4800         (aarch64_gdbarch_init): Check for SVE.
4801         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
4802
4803 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
4804
4805         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
4806         * aarch64-tdep.h (aarch64_read_description): Likewise.
4807         * arch/aarch64.c (aarch64_create_target_description): Likewise.
4808         * arch/aarch64.h (aarch64_create_target_description): Likewise.
4809         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
4810         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
4811         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
4812
4813 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
4814
4815         * value.c (value_fetch_lazy_bitfield): New.
4816         (value_fetch_lazy_memory): New.
4817         (value_fetch_lazy_register): New.
4818         (value_fetch_lazy): Factor out to smaller functions.
4819
4820 2018-06-01  Tom Tromey  <tom@tromey.com>
4821
4822         * cp-name-parser.y (backslashable, represented): Now const.
4823
4824 2018-06-01  Tom Tromey  <tom@tromey.com>
4825
4826         * cp-name-parser.y: Include parser-defs.h.
4827         (parser_fprintf): Remove declaration.
4828
4829 2018-06-01  Tom Tromey  <tom@tromey.com>
4830
4831         * cp-name-parser.y: Use %pure-parser, %lex-param, and
4832         %parse-param.
4833         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
4834         (global_result): Remove globals.
4835         (struct cpname_state): New.
4836         (yyparse): Don't declare.
4837         (yylex, yyerror): Move declarations after %union.
4838         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
4839         (make_name): Add state parameter.
4840         Update all callers.
4841         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
4842         parameter.
4843         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
4844         Update.
4845         (yylex): Add lvalp, state parameters.
4846         (yyerror): Add state parameter.
4847         (cp_demangled_name_to_comp): Update.
4848
4849 2018-06-01  Tom Tromey  <tom@tromey.com>
4850
4851         * cp-name-parser.y (parser_fprintf): Declare.
4852         (GDB_YY_REMAP_PREFIX): Define.
4853         Include yy-remap.h.  Don't redefine yy* identifiers.
4854
4855 2018-06-01  Tom Tromey  <tom@tromey.com>
4856
4857         * python/py-type.c (typy_legacy_template_argument): Update.
4858         * cp-support.h (cp_demangled_name_to_comp): Update.
4859         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
4860         parameter to be a "std::string *".
4861         (main): Update.
4862
4863 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
4864
4865         * ada-lex.l: Include "diagnostics.h" instead of
4866         "common/diagnostics.h".
4867         * unittests/environ-selftests.c: Likewise.
4868         * common/diagnostics.h: Moved to ../include.
4869
4870 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
4871
4872         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
4873         to language_mode_manual while calling breakpoint_re_set_one.
4874
4875 2018-06-01  Tom Tromey  <tom@tromey.com>
4876
4877         * valops.c (value_cast_structs, destructor_name_p): Update.
4878         * symtab.c (gdb_mangle_name): Update.
4879         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
4880         Update.
4881         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
4882         (pascal_object_print_value_fields, pascal_object_print_value):
4883         Update.
4884         * p-typeprint.c (pascal_type_print_derivation_info): Update.
4885         * linespec.c (find_methods): Update.
4886         * gdbtypes.h (type_name_no_tag): Remove.
4887         (type_name_or_error): Rename from type_name_no_tag_or_error.
4888         * gdbtypes.c (type_name_no_tag): Remove.
4889         (type_name_or_error): Rename from type_name_no_tag_or_error.
4890         (lookup_struct_elt_type, check_typedef): Update.
4891         * expprint.c (print_subexp_standard): Update.
4892         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
4893         * d-namespace.c (d_lookup_nested_symbol): Update.
4894         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
4895         (cp_print_class_member): Update.
4896         * cp-namespace.c (cp_lookup_nested_symbol): Update.
4897         * completer.c (add_struct_fields): Update.
4898         * c-typeprint.c (cp_type_print_derivation_info)
4899         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
4900         Update.
4901         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
4902         (ada_prefer_type, ada_is_exception_sym): Update.
4903
4904 2018-06-01  Tom Tromey  <tom@tromey.com>
4905
4906         * valops.c (enum_constant_from_type, value_namespace_elt)
4907         (value_maybe_namespace_elt): Update.
4908         * valarith.c (find_size_for_pointer_math): Update.
4909         * target-descriptions.c (make_gdb_type): Update.
4910         * symmisc.c (print_symbol): Update.
4911         * stabsread.c (define_symbol, read_type)
4912         (complain_about_struct_wipeout, add_undefined_type)
4913         (cleanup_undefined_types_1): Update.
4914         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
4915         (rust_range_type_p, val_print_struct, rust_print_struct_def)
4916         (rust_internal_print_type, rust_composite_type)
4917         (rust_evaluate_funcall, rust_evaluate_subexp)
4918         (rust_inclusive_range_type_p): Update.
4919         * python/py-type.c (typy_get_tag): Update.
4920         * p-typeprint.c (pascal_type_print_base): Update.
4921         * mdebugread.c (parse_symbol, parse_type): Update.
4922         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
4923         Update.
4924         * guile/scm-type.c (gdbscm_type_tag): Update.
4925         * go-lang.c (sixg_string_p): Update.
4926         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
4927         Update.
4928         * gdbtypes.h (struct main_type) <tag_name>: Remove.
4929         (TYPE_TAG_NAME): Remove.
4930         * gdbtypes.c (type_name_no_tag): Simplify.
4931         (check_typedef, check_types_equal, recursive_dump_type)
4932         (copy_type_recursive, arch_composite_type): Update.
4933         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
4934         in summary mode when needed.
4935         * eval.c (evaluate_funcall): Update.
4936         * dwarf2read.c (fixup_go_packaging, read_structure_type)
4937         (process_structure_scope, read_enumeration_type)
4938         (read_namespace_type, read_module_type, determine_prefix): Update.
4939         * cp-support.c (inspect_type): Update.
4940         * coffread.c (process_coff_symbol, decode_base_type): Update.
4941         * c-varobj.c (c_is_path_expr_parent): Update.
4942         * c-typeprint.c (c_type_print_base_struct_union): Update.
4943         (c_type_print_base_1): Update.  Print struct/class/union/enum in
4944         summary when using C language.
4945         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
4946         (gen_maybe_namespace_elt): Update.
4947         * ada-lang.c (ada_type_name): Simplify.
4948         (empty_record, ada_template_to_fixed_record_type_1)
4949         (template_to_static_fixed_type)
4950         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
4951
4952 2018-06-01  Tom Tromey  <tom@tromey.com>
4953
4954         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
4955         c_print_type.
4956         * c-typeprint.c (c_print_type_1): Add "language" parameter.
4957         (c_print_type): Update.
4958         (c_print_type): New overload.
4959         (c_type_print_varspec_prefix, c_type_print_args)
4960         (c_type_print_varspec_suffix, c_print_type_no_offsets)
4961         (c_type_print_base_struct_union, c_type_print_base_1)
4962         (cp_type_print_method_args): Add "language" parameter.
4963         (c_type_print_base): Update.
4964         * c-lang.h (c_print_type): Add new overload.
4965
4966 2018-06-01  Tom Tromey  <tom@tromey.com>
4967
4968         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
4969         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
4970
4971 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
4972
4973         * aarch64-tdep.c (aarch64_sve_register_names): New const
4974         var.
4975         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
4976         (AARCH64_SVE_Z_REGS_NUM): New define.
4977         (AARCH64_SVE_P_REGS_NUM): Likewise.
4978         (AARCH64_SVE_NUM_REGS): Likewise.
4979
4980 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
4981
4982         * nat/linux-ptrace.h [__alpha__]
4983         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
4984         definitions.
4985
4986 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
4987
4988         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
4989         the endianness selected.
4990         * NEWS: Document `set endian auto' mode operation update.
4991
4992 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
4993
4994         * Makefile.in: Add new header.
4995         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
4996         (sve_vl_from_vg): Likewise.
4997         (sve_vq_from_vl): Likewise.
4998         (sve_vl_from_vq): Likewise.
4999         (sve_vq_from_vg): Likewise.
5000         (sve_vg_from_vq): Likewise.
5001         * configure.nat: Add new c file.
5002         * nat/aarch64-sve-linux-ptrace.c: New file.
5003         * nat/aarch64-sve-linux-ptrace.h: New file.
5004
5005 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
5006
5007         * aarch64-linux-nat.c (aarch64_linux_read_description):
5008         Add parmeter zero.
5009         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
5010         Likewise.
5011         * aarch64-tdep.c (tdesc_aarch64_list): Add.
5012         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
5013         (aarch64_gdbarch_init): Add parmeter zero.
5014         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
5015         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
5016         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
5017         parmeter.
5018         * doc/gdb.texinfo: Describe SVE feature
5019         * features/aarch64-sve.c: New file.
5020
5021 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
5022
5023         PR gdb/23210
5024         * gdbarch.sh (significant_addr_bit): Default to zero when
5025         not set by target architecture.
5026         * gdbarch.c: Re-generated.
5027         * utils.c (address_significant): Update.
5028
5029 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
5030
5031         * stack.c (func_command): Remove trailing newline in call to error.
5032
5033 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5034
5035         * regcache.h (regcache_raw_collect): Remove, update callers to
5036         use regcache::raw_collect.
5037         * regcache.c (regcache_raw_collect): Remove.
5038
5039 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5040
5041         * regcache.h (regcache_raw_supply): Remove, update callers to
5042         use detached_regcache::raw_supply.
5043         * regcache.c (regcache_raw_supply): Remove.
5044
5045 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5046
5047         * regcache.h (regcache_cooked_write_part): Remove, update
5048         callers to use regcache::cooked_write_part.
5049         * regcache.c (regcache_cooked_write_part): Remove.
5050
5051 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5052
5053         * regcache.h (regcache_cooked_read_part): Remove, update callers
5054         to use readable_regcache::cooked_read_part.
5055         * regcache.c (regcache_cooked_read_part): Remove.
5056
5057 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5058
5059         * regcache.h (regcache_cooked_read_value): Remove, update
5060         callers to use readable_regcache::cooked_read_value.
5061         * regcache.c (regcache_cooked_read_value): Remove.
5062
5063 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5064
5065         * regcache.h (regcache_cooked_write): Remove, update callers to
5066         use regcache::cooked_write.
5067         * regcache.c (regcache_cooked_write): Remove.
5068
5069 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5070
5071         * regcache.h (regcache_invalidate): Remove, update callers to
5072         use detached_regcache::invalidate instead.
5073         * regcache.c (regcache_invalidate): Remove.
5074
5075 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5076
5077         * regcache.h (regcache_raw_write_part): Remove, update callers
5078         to use regcache::raw_write_part instead.
5079         * regcache.c (regcache_raw_write_part): Remove.
5080
5081 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5082
5083         * regcache.h (regcache_raw_read_part): Remove, update callers to
5084         use readable_regcache::raw_read_part instead.
5085         * regcache.c (regcache_raw_read_part): Remove.
5086
5087 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5088
5089         * regcache.h (regcache_cooked_read): Remove, update callers to
5090         use readable_regcache::cooked_read instead.
5091         * regcache.c (regcache_cooked_read): Remove.
5092
5093 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5094
5095         * regcache.h (regcache_raw_write): Remove, update callers to use
5096         regcache::raw_write instead.
5097         * regcache.c (regcache_raw_write): Remove.
5098
5099 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5100
5101         * regcache.h (regcache_raw_read): Remove, update callers to use
5102         readable_regcache::raw_read instead.
5103         * regcache.c (regcache_raw_read): Remove.
5104
5105 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5106
5107         * regcache.h (regcache_raw_update): Remove, update callers to
5108         use readable_regcache::raw_update instead.
5109         * regcache.c (regcache_raw_update): Remove.
5110
5111 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5112
5113         * regcache.h (regcache_register_status): Remove, update callers
5114         to use reg_buffer::get_register_status directly instead.
5115         * regcache.c (regcache_register_status): Remove.
5116
5117 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5118
5119         * regcache.h (regcache_get_ptid): Remove, update all callers to
5120         call regcache::ptid instead.
5121         * regcache.c (regcache_get_ptid): Remove.
5122
5123 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5124
5125         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
5126
5127 2018-05-30  Pedro Alves  <palves@redhat.com>
5128
5129         * common/common-exceptions.h (exception_rethrow): Use
5130         ATTRIBUTE_NORETURN.
5131
5132 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
5133
5134         * breakpoint.c (print_solib_event, check_status_catch_solib):
5135         Remove struct keyword in range-based for loops.
5136         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
5137         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
5138         Likewise.
5139         * linespec.c (find_superclass_methods, search_minsyms_for_name):
5140         Likewise.
5141         * symfile.c (addr_info_make_relative): Likewise.
5142         * thread.c (value_in_thread_stack_temporaries): Likewise.
5143
5144 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
5145
5146         PR gdb/16841
5147         * valops.c (value_struct_elt_for_reference): Call check_typedef on
5148         aggregate type to get its real type before accessing it.
5149
5150 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
5151
5152         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
5153         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
5154         * coff-pe-read.c (add_pe_forwarded_sym): Replace
5155         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
5156         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
5157         * jit.c (jit_breakpoint_re_set_internal): Likewise.
5158         * printcmd.c (info_address_command): Likewise.
5159
5160 2018-05-29  Tom Tromey  <tom@tromey.com>
5161
5162         * windows-nat.c (handle_exception): Update fall-through comment.
5163
5164 2018-05-29  Tom Tromey  <tom@tromey.com>
5165
5166         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
5167         (struct program_space) <added_solibs>: Now a std::vector.
5168         * breakpoint.c (print_solib_event): Update.
5169         (check_status_catch_solib): Update.
5170         * progspace.c (clear_program_space_solib_cache): Update.
5171         * solib.c (update_solib_list): Update.
5172
5173 2018-05-29  Tom Tromey  <tom@tromey.com>
5174
5175         * python/py-type.c (typy_richcompare): Update.
5176         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
5177         * gdbtypes.h (types_deeply_equal): Return bool.
5178         (types_equal): Likewise.
5179         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
5180         declare VEC.
5181         (check_types_equal): Change worklist to std::vector.  Return
5182         bool.
5183         (struct type_equality_entry): Add constructor.
5184         (compare_maybe_null_strings): Return bool.
5185         (check_types_worklist): Return bool.  Change worklist to
5186         std::vector.
5187         (types_deeply_equal): Use std::vector.
5188         (types_equal): Return bool.
5189         (compare_maybe_null_strings): Simplify.
5190
5191 2018-05-29  Tom Tromey  <tom@tromey.com>
5192
5193         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
5194
5195 2018-05-29  Tom Tromey  <tom@tromey.com>
5196
5197         * objc-lang.h: Don't include cp-support.h.
5198         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
5199         declare VEC.
5200
5201 2018-05-27  Tom Tromey  <tom@tromey.com>
5202
5203         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
5204
5205 2018-05-25  Tom Tromey  <tom@tromey.com>
5206
5207         * value.c (value::location): Initialize.
5208
5209 2018-05-25  Tom Tromey  <tom@tromey.com>
5210
5211         * dbxread.c (init_bincl_list): Remove.
5212         (bincl_list): Now a std::vector.
5213         (bincls_allocated, next_bincl): Remove.
5214         (free_bincl_list, do_free_bincl_list_cleanup)
5215         (make_cleanup_free_bincl_list): Remove.
5216         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
5217         unique_xmalloc_ptr.
5218         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
5219         (struct header_file_location): Add constructor.
5220         (add_bincl_to_list): Remove.
5221
5222 2018-05-25  Tom Tromey  <tom@tromey.com>
5223
5224         * tui/tui.c (tui_enable): Update.
5225         * mi/mi-interp.c (mi_interp::init): Update.
5226         * interps.h (class interp) <name>: New method.
5227         <m_name>: Rename from name.
5228         (~scoped_restore_interp): Update.
5229         * interps.c (interp::interp): Update.
5230         (interp_add, interp_set, interp_lookup_existing)
5231         (current_interp_named_p): Update.
5232
5233 2018-05-25  Tom Tromey  <tom@tromey.com>
5234
5235         * interps.c (interp_name): Remove.
5236         * mi/mi-interp.c (mi_interp::init): Update.
5237         * interps.h (interp_name): Remove.
5238         (~scoped_restore_interp): Update.
5239         * tui/tui.c (tui_enable): Update.
5240
5241 2018-05-25  Tom Tromey  <tom@tromey.com>
5242
5243         * utils.c (fputs_maybe_filtered): Update.
5244         * linespec.c (decode_line_full): Update.
5245         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
5246         (mi_print_breakpoint_for_event, mi_solib_loaded)
5247         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
5248         (mi_user_selected_context_changed): Update.
5249         * mi/mi-main.c (mi_execute_command): Update.
5250         * cli/cli-script.c (execute_control_command): Update.
5251         * python/python.c (execute_gdb_command): Update.
5252         * solib.c (info_sharedlibrary_command): Update.
5253         * interps.c (interp_ui_out): Remove.
5254         * interps.h (interp_ui_out): Remove.
5255
5256 2018-05-25  Tom Tromey  <tom@tromey.com>
5257
5258         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
5259         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
5260         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
5261
5262 2018-05-25  Tom Tromey  <tom@tromey.com>
5263
5264         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
5265         * interps.c (interp_exec): Use scoped_restore.
5266
5267 2018-05-25  Tom Tromey  <tom@tromey.com>
5268
5269         * remote.c (remote_target::remote_file_get): Use
5270         gdb::byte_vector.
5271         (remote_target::remote_file_put): Likewise.
5272
5273 2018-05-25  Tom Tromey  <tom@tromey.com>
5274
5275         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
5276         a std::string.
5277         (get_pe_section_index, add_pe_exported_sym): Update.
5278         (read_pe_exported_syms): Use gdb::def_vector.
5279
5280 2018-05-25  Tom Tromey  <tom@tromey.com>
5281
5282         * frame.c (remove_prev_frame): Remove.
5283         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
5284
5285 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
5286
5287         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
5288         Remove prototypes.
5289         * mips-linux-nat.c (supply_fpregset): Always call
5290         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
5291         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
5292         `mips_fill_fpregset'.
5293         * mips-linux-tdep.c (mips_supply_fpregset)
5294         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
5295         (mips_fill_fpregset_wrapper): Remove functions.
5296         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
5297         (mips_linux_fpregset): Remove variable.
5298         (mips_linux_iterate_over_regset_sections): Use
5299         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
5300         (mips_linux_o32_sigframe_init): Remove comment.
5301
5302 2018-05-25  Pedro Alves  <palves@redhat.com>
5303
5304         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
5305         (struct readahead_cache, struct packet_reg, struct
5306         remote_arch_state, class remote_state): Move higher up in the
5307         file.
5308         (remote_target::m_remote_state): Now an object instead of a pointer.
5309         (remote_target::get_remote_state): Adjust.
5310
5311 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
5312
5313         * stack.c (select_and_print_frame): Delete.
5314         (struct function_bounds): Move struct within function.
5315         (func_command): Most content moved into new function
5316         find_frame_for_function, use new function, print result, add
5317         function comment.
5318         (find_frame_for_function): New function, now returns a result.
5319
5320 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5321
5322         * stack.c (iterate_over_block_arg_vars): Fix comment.
5323         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
5324
5325 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
5326
5327         PR gdb/23203
5328         * frame.c
5329         (scoped_restore_selected_frame::scoped_restore_selected_frame):
5330         Define.
5331         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
5332         Define.
5333         * frame.h (class scoped_restore_selected_frame): New class.
5334         * stack.c (print_frame_local_vars): Remove catching and rethrowing
5335         of any exception, use scoped_restore_selected_frame to restore the
5336         frame instead.
5337
5338 2018-05-24  Pedro Alves  <palves@redhat.com>
5339
5340         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
5341         override.
5342
5343 2018-05-23  Tom Tromey  <tom@tromey.com>
5344
5345         * complaints.c (struct complaints): Remove.
5346         (symfile_complaint_book): Remove.
5347         (series): New global.
5348         (complaint_internal): Update.
5349         (clear_complaints): Update.
5350
5351 2018-05-23  Tom Tromey  <tom@tromey.com>
5352
5353         * complaints.c (counters): New global.
5354         (struct complain): Remove.
5355         (struct complaints) <root>: Remove.
5356         (complaint_sentinel): Remove.
5357         (symfile_complaint_book): Update.
5358         (find_complaint) Remove.
5359         (complaint_internal, clear_complaints): Update.
5360
5361 2018-05-23  Tom Tromey  <tom@tromey.com>
5362
5363         * complaints.c (struct complain) <file, line>: Remove.
5364         (find_complaint): Remove file, line parameters.
5365         (complaint_internal): Update.
5366
5367 2018-05-23  Tom Tromey  <tom@tromey.com>
5368
5369         * complaints.c (vcomplaint): Remove.
5370         (complaint_internal) Merge in contents of vcomplaint.
5371
5372 2018-05-23  Tom Tromey  <tom@tromey.com>
5373
5374         * complaints.c (struct complaints) <explanation>: Remove.
5375         (symfile_explanations): Remove.
5376         (symfile_complaint_book): Update.
5377         (vcomplaint): Update.
5378         (struct explanation): Remove.
5379
5380 2018-05-23  Tom Tromey  <tom@tromey.com>
5381
5382         * complaints.c (symfile_complaints): Remove.
5383         (complaint_internal): Remove "complaints" parameter.
5384         (clear_complaints, vcomplaint): Remove "c" parameter.
5385         (get_complaints): Remove.
5386         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
5387         (dwarf2_debug_line_missing_file_complaint)
5388         (dwarf2_debug_line_missing_end_sequence_complaint)
5389         (dwarf2_complex_location_expr_complaint)
5390         (dwarf2_const_value_length_mismatch_complaint)
5391         (dwarf2_section_buffer_overflow_complaint)
5392         (dwarf2_macro_malformed_definition_complaint)
5393         (dwarf2_invalid_attrib_class_complaint)
5394         (create_addrmap_from_index, dw2_symtab_iter_next)
5395         (dw2_expand_marked_cus)
5396         (dw2_debug_names_iterator::find_vec_in_debug_names)
5397         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
5398         (create_debug_type_hash_table, init_cutu_and_read_dies)
5399         (partial_die_parent_scope, add_partial_enumeration)
5400         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
5401         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
5402         (read_import_statement, read_file_scope, create_dwo_cu_reader)
5403         (create_cus_hash_table, create_dwp_hash_table)
5404         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
5405         (dwarf2_rnglists_process, dwarf2_ranges_process)
5406         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
5407         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
5408         (handle_struct_member_die, process_structure_scope)
5409         (read_array_type, read_common_block, read_module_type)
5410         (read_tag_pointer_type, read_typedef, read_base_type)
5411         (read_subrange_type, load_partial_dies, partial_die_info::read)
5412         (partial_die_info::read, partial_die_info::read)
5413         (partial_die_info::read, read_checked_initial_length_and_offset)
5414         (dwarf2_string_attr, read_formatted_entries)
5415         (dwarf_decode_line_header)
5416         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
5417         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
5418         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
5419         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
5420         (get_signatured_type, get_DW_AT_signature_type)
5421         (decode_locdesc, file_file_name, consume_improper_spaces)
5422         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
5423         (dwarf_decode_macro_bytes, dwarf_decode_macros)
5424         (dwarf2_symbol_mark_computed, set_die_type)
5425         (read_attribute_value): Update.
5426         * stap-probe.c (handle_stap_probe, get_stap_base_address):
5427         Update.
5428         * dbxread.c (unknown_symtype_complaint)
5429         (lbrac_mismatch_complaint, repeated_header_complaint)
5430         (set_namestring, function_outside_compilation_unit_complaint)
5431         (read_dbx_symtab, process_one_symbol): Update.
5432         * gdbtypes.c (stub_noname_complaint): Update.
5433         * windows-nat.c (handle_unload_dll): Update.
5434         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
5435         (decode_base_type): Update.
5436         * xcoffread.c (bf_notfound_complaint, ef_complaint)
5437         (eb_complaint, record_include_begin, record_include_end)
5438         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
5439         (process_xcoff_symbol, read_symbol)
5440         (function_outside_compilation_unit_complaint)
5441         (scan_xcoff_symtab): Update.
5442         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
5443         * buildsym.c (finish_block_internal, make_blockvector)
5444         (end_symtab_get_static_block, augment_type_symtab): Update.
5445         * dtrace-probe.c (dtrace_process_dof)
5446         (dtrace_static_probe_ops::get_probes): Update.
5447         * complaints.h (struct complaint): Don't declare.
5448         (symfile_complaints): Remove.
5449         (complaint_internal): Remove "complaints" parameter.
5450         (complaint): Likewise.
5451         (clear_complaints): Likewise.
5452         * symfile.c (syms_from_objfile_1, finish_new_objfile)
5453         (reread_symbols): Update.
5454         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
5455         (dwarf2_frame_cache, decode_frame_entry): Update.
5456         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
5457         * objc-lang.c (lookup_objc_class, lookup_child_selector)
5458         (info_selectors_command): Update.
5459         * macrotab.c (macro_include, check_for_redefinition)
5460         (macro_undef): Update.
5461         * objfiles.c (filter_overlapping_sections): Update.
5462         * stabsread.c (invalid_cpp_abbrev_complaint)
5463         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
5464         (define_symbol, error_type, read_type, rs6000_builtin_type)
5465         (stabs_method_name_from_physname, read_member_functions)
5466         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
5467         (attach_fields_to_type, complain_about_struct_wipeout)
5468         (read_range_type, read_args, common_block_start)
5469         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
5470         Update.
5471         * mdebugread.c (index_complaint, unknown_ext_complaint)
5472         (basic_type_complaint, bad_tag_guess_complaint)
5473         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
5474         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
5475         (parse_procedure, parse_lines)
5476         (function_outside_compilation_unit_complaint)
5477         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
5478         (bad_tag_guess_complaint, reg_value_complaint): Update.
5479         * cp-support.c (demangled_name_complaint): Update.
5480         * macroscope.c (sal_macro_scope): Update.
5481         * dwarf-index-write.c (class debug_names): Update.
5482
5483 2018-05-23  Tom Tromey  <tom@tromey.com>
5484
5485         * complaints.c (clear_complaints): Remove "noisy" parameter.
5486         * complaints.h (clear_complaints): Update.
5487         * symfile.c (syms_from_objfile_1, finish_new_objfile)
5488         (reread_symbols): Update.
5489
5490 2018-05-23  Tom Tromey  <tom@tromey.com>
5491
5492         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
5493         SUBSEQUENT_MESSAGE.
5494         (vcomplaint, clear_complaints): Update.
5495         (symfile_explanations): Remove some messages.
5496
5497 2018-05-23  Tom Tromey  <tom@tromey.com>
5498
5499         * complaints.c (internal_complaint): Remove.
5500         * complaints.h (internal_complaint): Remove.
5501
5502 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
5503
5504         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
5505
5506 2018-05-22  Pedro Alves  <palves@redhat.com>
5507
5508         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
5509         (remote_fileio_badfd, remote_fileio_return_errno)
5510         (remote_fileio_return_success, remote_fileio_func_open)
5511         (remote_fileio_func_open, remote_fileio_func_close)
5512         (remote_fileio_func_read, remote_fileio_func_write)
5513         (remote_fileio_func_lseek, remote_fileio_func_rename)
5514         (remote_fileio_func_unlink, remote_fileio_func_stat)
5515         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
5516         (remote_fileio_func_isatty, remote_fileio_func_system): Add
5517         remote_target parameter.
5518         (remote_fio_func_map) <func>: Add remote_target parameter.
5519         (do_remote_fileio_request, remote_fileio_request):
5520         * remote-fileio.h (remote_fileio_request):
5521         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
5522         remote_target parameter.
5523         (remote_notif_process, handle_notification): Adjust to pass down
5524         the remote.
5525         (remote_notif_state_allocate): Add remote_target parameter.  Save
5526         it.
5527         * remote-notif.h (struct remote_target): Forward declare.
5528         (struct notif_client) <parse, ack, can_get_pending_events>: Add
5529         remote_target parameter.
5530         (struct remote_notif_state) <remote>: New field.
5531         (remote_notif_ack, remote_notif_parse): Add remote_target
5532         parameter.
5533         (remote_notif_state_allocate, remote_notif_state_allocate): Add
5534         remote_target parameter.
5535         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
5536         (threads_listing_context, rmt_thread_action, protocol_feature)
5537         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
5538         (packet_result, struct threads_listing_context, remote_state):
5539         Move definitions and declarations higher up.
5540         (remote_target) <~remote_target>: Declare.
5541         (remote_download_command_source, remote_file_put, remote_file_get)
5542         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
5543         (remote_hostio_pread_vFile, remote_hostio_send_command)
5544         (remote_hostio_set_filesystem, remote_hostio_open)
5545         (remote_hostio_close, remote_hostio_unlink, remote_state)
5546         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
5547         (get_memory_write_packet_size, get_memory_read_packet_size)
5548         (append_pending_thread_resumptions, remote_detach_1)
5549         (append_resumption, remote_resume_with_vcont)
5550         (add_current_inferior_and_thread, wait_ns, wait_as)
5551         (process_stop_reply, remote_notice_new_inferior)
5552         (process_initial_stop_replies, remote_add_thread)
5553         (btrace_sync_conf, remote_btrace_maybe_reopen)
5554         (remove_new_fork_children, kill_new_fork_children)
5555         (discard_pending_stop_replies, stop_reply_queue_length)
5556         (check_pending_events_prevent_wildcard_vcont)
5557         (discard_pending_stop_replies_in_queue, stop_reply)
5558         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
5559         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
5560         (remote_interrupt_as, remote_interrupt_ns)
5561         (remote_get_noisy_reply, remote_query_attached)
5562         (remote_add_inferior, remote_current_thread, get_current_thread)
5563         (set_thread, set_general_thread, set_continue_thread)
5564         (set_general_process, write_ptid)
5565         (remote_unpack_thread_info_response, remote_get_threadinfo)
5566         (parse_threadlist_response, remote_get_threadlist)
5567         (remote_threadlist_iterator, remote_get_threads_with_ql)
5568         (remote_get_threads_with_qxfer)
5569         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
5570         (get_offsets, remote_check_symbols, remote_supported_packet)
5571         (remote_query_supported, remote_packet_size)
5572         (remote_serial_quit_handler, remote_detach_pid)
5573         (remote_vcont_probe, remote_resume_with_hc)
5574         (send_interrupt_sequence, interrupt_query)
5575         (remote_notif_get_pending_events, fetch_register_using_p)
5576         (send_g_packet, process_g_packet, fetch_registers_using_g)
5577         (store_register_using_P, store_registers_using_G)
5578         (set_remote_traceframe, check_binary_download)
5579         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
5580         (remote_xfer_live_readonly_partial, remote_read_bytes)
5581         (remote_send_printf, remote_flash_write, readchar)
5582         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
5583         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
5584         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
5585         (extended_remote_disable_randomization, extended_remote_run)
5586         (send_environment_packet, extended_remote_environment_support)
5587         (extended_remote_set_inferior_cwd, remote_write_qxfer)
5588         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
5589         (packet_command): Now methods of ...
5590         (remote_target): ... this class.
5591         (m_remote_state) <remote_target>: New field.
5592         (struct remote_state) <stop_reply_queue,
5593         remote_async_inferior_event_token, wait_forever_enabled_p>: New
5594         fields.
5595         (remote_state::remote_state): Allocate stop_reply_queue.
5596         (remote_state): Delete global.
5597         (get_remote_state_raw): Delete.
5598         (remote_target::get_remote_state): Allocate m_remote_state on
5599         demand.
5600         (get_current_remote_target): New.
5601         (remote_ops, extended_remote_ops): Delete.
5602         (wait_forever_enabled_p, remote_async_inferior_event_token):
5603         Delete, moved to struct remote_state.
5604         (remote_target::close): Delete self.  Destruction bits split to
5605         ...
5606         (remote_target::~remote_target): ... this.
5607         (show_memory_packet_size): Adjust to use
5608         get_current_remote_target.
5609         (struct protocol_feature) <func>: Add remote_target parameter.
5610         All callers adjusted.
5611         (curr_quit_handler_target): New.
5612         (remote_serial_quit_handler): Reimplement.
5613         (remote_target::open_1): Adjust to use get_current_remote_target.
5614         Heap-allocate remote_target/extended_remote_target instances.
5615         (vcont_builder::vcont_builder): Add remote_target parameter, and
5616         save it in m_remote.  All callers adjusted.
5617         (vcont_builder::m_remote): New field.
5618         (vcont_builder::restart, vcont_builder::flush)
5619         (vcont_builder::push_action): Use it.
5620         (remote_target::commit_resume): Use it.
5621         (struct queue_iter_param) <remote>: New field.
5622         (remote_target::remove_new_fork_children): Fill in 'remote' field.
5623         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
5624         (check_pending_event_prevents_wildcard_vcont_callback)
5625         (remote_target::check_pending_events_prevent_wildcard_vcont)
5626         (remote_target::discard_pending_stop_replies)
5627         (remote_target::discard_pending_stop_replies_in_queue)
5628         (remote_target::remote_notif_remove_queued_reply): Fill in
5629         'remote' field.
5630         (remote_notif_get_pending_events): New.
5631         (remote_target::readchar, remote_target::remote_serial_write):
5632         Save/restore curr_quit_handler_target.
5633         (putpkt): New.
5634         (kill_new_fork_children): Fill in 'remote' field.
5635         (packet_command): Use get_current_remote_target, defer to
5636         remote_target method of same name.
5637         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
5638         parameter, and save it in m_remote.  All callers adjusted.
5639         (scoped_remote_fd::release): Use m_remote.
5640         (scoped_remote_fd::m_remote): New field.
5641         (remote_file_put, remote_file_get, remote_file_delete): Use
5642         get_current_remote_target, defer to remote_target method of same
5643         name.
5644         (remote_btrace_reset): Add remote_state paremeter.  Update all
5645         callers.
5646         (remote_async_inferior_event_handler). Pass down 'data'.
5647         (remote_new_objfile): Use get_current_remote_target.
5648         (remote_target::vcont_r_supported): New.
5649         (set_range_stepping): Use get_current_remote_target and
5650         remote_target::vcont_r_supported.
5651         (_initialize_remote): Don't allocate 'remote_state' and
5652         'stop_reply_queue' globals.
5653         * remote.h (struct remote_target): Forward declare.
5654         (getpkt, putpkt, remote_notif_get_pending_events): Add
5655         'remote_target' parameter.
5656
5657 2018-05-22  Pedro Alves  <palves@redhat.com>
5658
5659         * remote.c (vcont_builder): Now a class.  Make all data members
5660         private.
5661         (vcont_builder) <vcont_builder, restart, flush, push_action>:
5662         Declare methods.
5663         (vcont_builder_restart): Rename to ...
5664         (vcont_builder::restart): ... this.
5665         (vcont_builder_flush): Rename to ...
5666         (vcont_builder::flush): ... this.
5667         (vcont_builder_push_action): Rename to ...
5668         (vcont_builder::push_action): ... this.
5669         (remote_target::commit_resume): Adjust.
5670
5671 2018-05-22  Pedro Alves  <palves@redhat.com>
5672
5673         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
5674         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
5675         (get_fixed_memory_packet_size): New.
5676         (get_memory_packet_size): Use it.
5677         (set_memory_packet_size): Don't override the config size with
5678         DEFAULT_MAX_MEMORY_PACKET_SIZE.
5679         (show_memory_packet_size): Use get_fixed_memory_packet_size.
5680         Don't refer to get_memory_packet_size if not connected to a remote
5681         target.  Show "(default)" if configured size is 0.
5682
5683 2018-05-22  Pedro Alves  <palves@redhat.com>
5684
5685         * remote.c (remote_target::mourn_inferior): Move
5686         discard_pending_stop_replies call here from ...
5687         (_initialize_remote): ... here.
5688
5689 2018-05-22  Pedro Alves  <palves@redhat.com>
5690
5691         * remote.c (compare_section_command): Remove set_general_process
5692         call.
5693
5694 2018-05-22  Pedro Alves  <palves@redhat.com>
5695
5696         * remote.c (struct packet_reg, struct remote_arch_state):
5697         Move higher up in the file.
5698         (remote_state) <m_arch_states>: Store remote_arch_state values
5699         instead of remote_arch_state pointers.
5700         (remote_state::get_remote_arch_state): Adjust.
5701
5702 2018-05-22  Pedro Alves  <palves@redhat.com>
5703
5704         * remote.c: Include <unordered_map>.
5705         (remote_state): Now a class.
5706         (remote_state) <get_remote_arch_state>: Declare method.
5707         <get_remote_arch_state>: New field.
5708         (remote_arch_state) <remote_arch_state>: Declare ctor.
5709         <regs>: Now a unique_ptr.
5710         (remote_gdbarch_data_handle): Delete.
5711         (get_remote_arch_state): Delete.
5712         (remote_state::get_remote_arch_state): New.
5713         (get_remote_state): Adjust to call remote_state's
5714         get_remote_arch_state method.
5715         (init_remote_state): Delete, bits factored out to ...
5716         (remote_arch_state::remote_arch_state): ... this new method.
5717         (get_remote_packet_size, get_memory_packet_size)
5718         (process_g_packet, remote_target::fetch_registers)
5719         (remote_target::prepare_to_store, store_registers_using_G)
5720         (remote_target::store_registers, remote_target::get_trace_status):
5721         Adjust to call remote_state's method.
5722         (_initialize_remote): Remove reference to
5723         remote_gdbarch_data_handle.
5724
5725 2018-05-22  Pedro Alves  <palves@redhat.com>
5726
5727         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
5728         pread>: New method declarations.
5729         (remote_target::open_1): Adjust.
5730         (readahead_cache_invalidate): Rename to ...
5731         (readahead_cache::invalidate): ... this, and adjust to be a class
5732         method.
5733         (readahead_cache_invalidate_fd): Rename to ...
5734         (readahead_cache::invalidate_fd): ... this, and adjust to be a
5735         class method.
5736         (remote_hostio_pwrite): Adjust.
5737         (remote_hostio_pread_from_cache): Rename to ...
5738         (readahead_cache::pread): ... this, and adjust to be a class
5739         method.
5740         (remote_hostio_close): Adjust.
5741
5742 2018-05-22  Pedro Alves  <palves@redhat.com>
5743
5744         * remote.c (remote_hostio_close_cleanup): Delete.
5745         (class scoped_remote_fd): New.
5746         (remote_file_put, remote_file_get): Use it.
5747
5748 2018-05-22  Pedro Alves  <palves@redhat.com>
5749
5750         (struct vCont_action_support): Use bool and initialize all fields.
5751         (struct readahead_cache): Initialize all fields.
5752         (remote_state): Use bool and initialize all fields.
5753         (remote_state::remote_state, remote_state::~remote_state): New.
5754         (new_remote_state): Delete.
5755         (_initialize_remote): Use new to allocate remote_state.
5756
5757 2018-05-22  Pedro Alves  <palves@redhat.com>
5758             張俊芝  <zjz@zjz.name>
5759
5760         PR gdb/22973
5761         * c-exp.y: Include "c-support.h".
5762         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
5763         of tolower.  Use c_ident_is_alpha to scan names.
5764         * c-lang.c: Include "c-support.h".
5765         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
5766         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
5767         * c-support.h: New file, with bits factored out from ...
5768         * cp-name-parser.y: ... this file.
5769         Include "c-support.h".
5770         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
5771         c-support.h and renamed.
5772         (symbol_end, yylex): Adjust.
5773
5774 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
5775
5776         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
5777         parameter type to CORE_ADDR.
5778         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
5779         parameter type in declaration to CORE_ADDR.
5780         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
5781         target_auxv_search to get AT_HWCAP and use the result to get the
5782         target description.
5783         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
5784         to CORE_ADDR. Remove the cast of the return value to unsigned
5785         long. Fix error predicate of target_auxv_search.
5786         (ppc_linux_nat_target::read_description): Change the type of the
5787         hwcap variable to CORE_ADDR.
5788
5789 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
5790
5791         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
5792         if the size of fpscr is larger than 32 bits.
5793
5794 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
5795
5796         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
5797         (ppc32_linux_vsxregmap): New global.
5798         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
5799         regcache_supply_regset, and regcache_collect_regset.
5800         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
5801         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
5802         (fetch_vsx_register, store_vsx_register): Remove.
5803         (fetch_vsx_registers): Add regno parameter. Get regset using
5804         ppc_linux_vsxregset. Use regset to supply registers.
5805         (store_vsx_registers): Add regno parameter. Get regset using
5806         ppc_linux_vsxregset. Use regset to collect registers.
5807         (fetch_register): Call fetch_vsx_registers instead of
5808         fetch_vsx_register.
5809         (store_register): Call store_vsx_registers instead of
5810         store_vsx_register.
5811         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
5812         new regno parameter.
5813         (store_ppc_registers): Call store_vsx_registers with -1 for the
5814         new regno parameter.
5815         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
5816         (ppc_collect_vsxregset): Remove.
5817
5818 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
5819
5820         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
5821         offset fields.
5822         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
5823         for vector register offset fields.
5824         (ppc64_fbsd_reg_offsets): Likewise.
5825         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
5826         to vector register offset fields.
5827         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
5828         to vector register offset fields.
5829         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
5830         vector register offset fields.
5831         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
5832         initializers for vector register offset fields.
5833         (rs6000_aix64_reg_offsets): Likewise.
5834         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
5835         (ppc_supply_vrregset): Remove.
5836         (ppc_collect_vrregset): Remove.
5837         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
5838         (ppc_linux_vrregset) : New function.
5839         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
5840         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
5841         (ppc32_linux_vrregset): Remove.
5842         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
5843         and use result instead of ppc32_linux_vrregset.
5844         (ppc32_linux_reg_offsets): Remove initializers for vector register
5845         offset fields.
5846         (ppc64_linux_reg_offsets): Likewise.
5847         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
5848         * ppc-linux-nat.c: Include regset.h.
5849         (gdb_vrregset_t): Adjust comment to account for little-endian
5850         mode.
5851         (supply_vrregset, fill_vrregset): Remove.
5852         (fetch_altivec_register, store_altivec_register): Remove.
5853         (fetch_altivec_registers): Add regno parameter. Get regset using
5854         ppc_linux_vrregset. Use regset to supply registers.
5855         (store_altivec_registers): Add regno parameter. Get regset using
5856         ppc_linux_vrregset. Use regset to collect registers.
5857         (fetch_register): Call fetch_altivec_registers instead of
5858         fetch_altivec_register.
5859         (store_register): Call store_altivec_registers instead of
5860         store_altivec_register.
5861         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
5862         the new regno parameter.
5863         (store_ppc_registers): Call store_altivec_registers with -1 for
5864         the new regno parameter.
5865
5866 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
5867
5868         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
5869         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
5870         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
5871         (gdb_vrregset_t): Change array type size to
5872         PPC_LINUX_SIZEOF_VRREGSET.
5873         (gdb_vsxregset_t): Change array type size to
5874         PPC_LINUX_SIZEOF_VSXREGSET.
5875         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
5876         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
5877         PPC_LINUX_SIZEOF_VSXREGSET.
5878
5879 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
5880
5881         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
5882         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
5883         nat/ppc-linux.c.
5884         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
5885         ppc_linux_target_wordsize with tid.
5886         (ppc_linux_nat_target::read_description): Call ppc_linux_target
5887         wordsize with tid.
5888         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
5889         (ppc64_64bit_inferior_p): Add static and inline specifiers.
5890         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
5891         tid parameter. Remove static specifier.
5892         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
5893         (ppc_linux_target_wordsize): New declaration.
5894
5895 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
5896
5897         * arch/ppc-linux-common.c: New file.
5898         * arch/ppc-linux-common.h: New file.
5899         * arch/ppc-linux-tdesc.h: New file.
5900         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
5901         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
5902         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
5903         arch/ppc-linux-tdesc.h.
5904         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
5905         arch/ppc-linux-tdesc.h.
5906         (ppc_linux_nat_target::read_description): Remove target
5907         description matching code. Fill a ppc_linux_features struct and
5908         call ppc_linux_match_description with it. Move comment about ISA
5909         2.05 to ppc-linux-common.c.
5910         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
5911         arch/ppc-linux-tdesc.h.
5912         (ppc_linux_core_read_description): Remove target description
5913         matching code. Fill a ppc_linux_features struct and call
5914         ppc_linux_match_description with it.
5915         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
5916         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
5917         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
5918         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
5919         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
5920         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
5921         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
5922         (tdesc_powerpc_e500l): Remove.
5923
5924 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
5925
5926         * ada-lang.c (catch_assert_command): Pass empty string instead
5927         of NULL for excep_string argument.
5928
5929 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
5930
5931         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
5932         the width of the requested register exceeds the width of the
5933         `ptrace' data type.
5934
5935 2018-05-21  Tom Tromey  <tom@tromey.com>
5936
5937         * printcmd.c (output_command): Remove.
5938         (output_command_const): Rename to output_command.
5939         * valprint.h (output_command): Rename from output_command_const.
5940         * tracepoint.c (trace_dump_actions): Call output_command.
5941
5942 2018-05-21  Tom Tromey  <tom@tromey.com>
5943
5944         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
5945         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
5946         * ada-lang.h (create_ada_exception_catchpoint): Update.
5947         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
5948         std::string.
5949         (create_excep_cond_exprs, ~ada_catchpoint)
5950         (should_stop_exception, print_one_exception)
5951         (print_mention_exception, print_recreate_exception): Update.
5952         (ada_get_next_arg): Remove.
5953         (catch_ada_exception_command_split): Use std::string.  Change type
5954         of "excep_string", "cond_string".
5955         (catch_ada_exception_command): Update.
5956         (create_ada_exception_catchpoint): Change type of excep_string.
5957         (ada_exception_sal): Remove excep_string parameter.
5958         (~ada_catchpoint): Remove.
5959
5960 2018-05-21  Tom Tromey  <tom@tromey.com>
5961
5962         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
5963         cleanup.
5964
5965 2018-05-21  Tom Tromey  <tom@tromey.com>
5966
5967         * ada-lang.c (ada_exception_message_1, ada_exception_message):
5968         Return unique_xmalloc_ptr.
5969         (print_it_exception): Update.
5970
5971 2018-05-21  Tom Tromey  <tom@tromey.com>
5972
5973         * tracepoint.c (trace_dump_actions): Use std::string.
5974
5975 2018-05-21  Tom Tromey  <tom@tromey.com>
5976
5977         * symfile.c (reread_symbols): Use std::string for original_name.
5978
5979 2018-05-21  Tom Tromey  <tom@tromey.com>
5980
5981         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
5982         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
5983         constructor.
5984
5985 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
5986
5987         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
5988         instance to...
5989         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
5990         * objfiles.c (get_objfile_bfd_data): Allocate
5991         objfile_per_bfd_storage with obstack_new when allocating on
5992         obstack.
5993
5994 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
5995
5996         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
5997         OBSTACK_ZALLOC.
5998         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
5999         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
6000         * mdebugread.c (mdebug_build_psymtabs): Likewise.
6001         (add_pending): Likewise.
6002         (parse_symbol): Likewise.
6003         (parse_partial_symbols): Likewise.
6004         (psymtab_to_symtab_1): Likewise.
6005         (new_psymtab): Likewise.
6006         (elfmdebug_build_psymtabs): Likewise.
6007         * minsyms.c (terminate_minimal_symbol_table): Likewise.
6008         * objfiles.c (get_objfile_bfd_data): Likewise.
6009         (objfile_register_static_link): Likewise.
6010         * psymtab.c (allocate_psymtab): Likewise.
6011         * stabsread.c (read_member_functions): Likewise.
6012         * xcoffread.c (xcoff_end_psymtab): Likewise.
6013
6014 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
6015
6016         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
6017         compiler supports std::is_trivially_constructible.
6018         * common/poison.h: Include obstack.h.
6019         (IsMallocable): Define to is_trivially_constructible if the
6020         compiler supports it, define to true_type otherwise.
6021         (xobnew): New.
6022         (XOBNEW): Redefine.
6023         (xobnewvec): New.
6024         (XOBNEWVEC): Redefine.
6025         * gdb_obstack.h (obstack_zalloc): New.
6026         (OBSTACK_ZALLOC): Redefine.
6027         (obstack_calloc): New.
6028         (OBSTACK_CALLOC): Redefine.
6029         (obstack_new): New.
6030         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
6031         (gdbarch_obstack): New declaration in gdbarch.h, definition in
6032         gdbarch.c.
6033         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
6034         obstack_calloc/obstack_zalloc.
6035         (gdbarch_obstack_zalloc): Remove.
6036         * target-descriptions.c (tdesc_data_init): Use obstack_new.
6037
6038 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6039
6040         * stack.c (backtrace_command_1): Remove useless variable int i.
6041
6042 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6043
6044         * stack.c (print_frame_info): Fix comment.
6045
6046 2018-05-18  Tom Tromey  <tom@tromey.com>
6047
6048         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
6049         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
6050         (~dwarf2_per_objfile): Update
6051         (dwarf2_get_dwz_file): Use new.
6052         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
6053         unique_ptr.
6054
6055 2018-05-18  Tom Tromey  <tom@tromey.com>
6056
6057         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
6058         unique_ptr.
6059         * dwarf2read.c (struct dwp_file): Add constructor and
6060         initializers.
6061         (open_and_init_dwp_file): Return a unique_ptr.
6062         (dwarf2_per_objfile, create_dwp_hash_table)
6063         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
6064         (lookup_dwo_unit_in_dwp): Update.
6065         (open_and_init_dwp_file, get_dwp_file): Update.
6066
6067 2018-05-18  Tom Tromey  <tom@tromey.com>
6068
6069         * dwarf2read.c (dwarf2_per_objfile): Update.
6070         (struct mapped_index): Add initializers.
6071         (dwarf2_read_index): Use new.
6072         (dw2_symtab_iter_init): Update.
6073         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
6074         unique_ptr.
6075
6076 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
6077
6078         * dwarf2read.c (mapped_index) <total_size>: Remove.
6079
6080 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
6081
6082         * unittests/format_pieces-selftests.c (test_format_specifier):
6083         Add ARI comments.
6084
6085 2018-05-18  Tom Tromey  <tom@tromey.com>
6086
6087         * c-typeprint.c (maybe_print_hole): New function.
6088         (c_print_type_struct_field_offset): Update.
6089         (c_type_print_base_struct_union): Call maybe_print_hole.
6090
6091 2018-05-17  Keith Seitz  <keiths@redhat.com>
6092
6093         * breakpoint.c (build_bpstat_chain): New function, moved from
6094         bpstat_stop_status.
6095         (bpstat_stop_status): Add optional parameter, `stop_chain'.
6096         If no stop chain is passed, call build_bpstat_chain to build it.
6097         * breakpoint.h (build_bpstat_chain): Declare.
6098         (bpstat_stop_status): Move documentation here from breakpoint.c.
6099         * infrun.c (handle_signal_stop): Before eliding inlined frames,
6100         build the stop chain and pass it to skip_inline_frames.
6101         Pass this stop chain to bpstat_stop_status.
6102         * inline-frame.c: Include breakpoint.h.
6103         (stopped_by_user_bp_inline_frame): New function.
6104         (skip_inline_frames): Add parameter `stop_chain'.
6105         Move documention to inline-frame.h.
6106         If non-NULL, use stopped_by_user_bp_inline_frame to determine
6107         whether the frame should be elided.
6108         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
6109         Add moved documentation and update for new parameter.
6110
6111 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
6112
6113         PR cli/14975
6114         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
6115         unittests/format_pieces-selftests.c.
6116         * common/format.h (format_piece) <operator==>: New.
6117         (format_pieces) <operator[]>: Remove.
6118         * common/format.c (format_pieces::format_pieces): Handle \e.
6119         * unittests/format_pieces-selftests.c: New.
6120
6121 2018-05-17  Tom Tromey  <tom@tromey.com>
6122
6123         PR symtab/23010:
6124         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
6125         (dw2_instantiate_symtab): Add skip_partial parameter.
6126         (dw2_find_last_source_symtab, dw2_map_expand_apply)
6127         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
6128         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
6129         (dw2_expand_symtabs_matching_one)
6130         (dw2_find_pc_sect_compunit_symtab)
6131         (dw2_debug_names_lookup_symbol)
6132         (dw2_debug_names_expand_symtabs_for_function): Update.
6133         (init_cutu_and_read_dies): Add skip_partial parameter.
6134         (process_psymtab_comp_unit, build_type_psymtabs_1)
6135         (process_skeletonless_type_unit, load_partial_comp_unit)
6136         (psymtab_to_symtab_1): Update.
6137         (load_full_comp_unit): Add skip_partial parameter.
6138         (process_imported_unit_die, dwarf2_read_addr_index)
6139         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
6140         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
6141         (read_signatured_type): Update.
6142
6143 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
6144
6145         * value.c (release_value): Remove unused variable.
6146         (record_latest_value): Likewise.
6147         (access_value_history): Likewise.
6148         (preserve_values): Likewise.
6149
6150 2018-05-17  Tom Tromey  <tom@tromey.com>
6151
6152         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
6153         Initialize.
6154
6155 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
6156
6157         PR gdb/22286
6158         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
6159         Also handle registers whose width is not a multiple of
6160         PTRACE_TYPE_RET.
6161         (linux_nat_trad_target::store_register): Likewise.
6162
6163 2018-05-16  Tom Tromey  <tom@tromey.com>
6164
6165         * gdbcore.h (core_bfd): Redefine.
6166         * corelow.c (core_target::close): Update.
6167         (core_target_open): Update.
6168         * progspace.h (struct program_space) <cbfd>: Now a
6169         gdb_bfd_ref_ptr.
6170
6171 2018-05-16  Tom Tromey  <tom@tromey.com>
6172
6173         PR cli/19551:
6174         * symfile-add-flags.h (enum symfile_add_flags)
6175         <SYMFILE_NOT_FILENAME>: New constant.
6176         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
6177         objfile name from BFD.
6178         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
6179         * minidebug.c (find_separate_debug_file_in_section): Put
6180         ".gnu_debugdata" into BFD's file name.
6181
6182 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
6183
6184         * regcache.c (regcache_read_ftype, regcache_write_ftype):
6185         Remove.
6186
6187 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
6188
6189         PR binutils/21446
6190         * aarch64-tdep.c (aarch64_analyze_prologue,
6191         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
6192         Indicate not interested in errors.
6193
6194 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
6195
6196         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
6197         Supply the MIPS_ZERO_REGNUM register.
6198
6199 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
6200
6201         * mips-tdep.c (mask_address_var): Make variable static.
6202
6203 2018-05-14  Tom Tromey  <tom@tromey.com>
6204
6205         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
6206
6207 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
6208
6209         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
6210         FXSAVE_ADDR for the mxcsr register.
6211
6212 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
6213
6214         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
6215
6216 2018-05-11  Pedro Alves  <palves@redhat.com>
6217
6218         * corelow.c (core_target) <core_target>: No longer inline.
6219         Initialize m_core_gdbarch, m_core_vec and build the section table
6220         here.
6221         <~core_target>: New.
6222         <core_gdbarch, get_core_register_section>: New methods.
6223         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
6224         factored out from ...
6225         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
6226         (core_ops): Delete.
6227         (sniff_core_bfd): Add gdbarch parameter.
6228         (core_close): Delete, merged into ...
6229         (core_target::close): ... here.  Delete self.
6230         (core_close_cleanup): Delete.
6231         (core_target_open): Allocate a core_target on the heap.  Use a
6232         unique_ptr instead of a cleanup.  Bits moved into the core_target
6233         ctor.  Adjust to use core_target methods instead of globals.
6234         (get_core_register_section): Rename to ...
6235         (core_target::get_core_register_section): ... this and adjust.
6236         (struct get_core_registers_cb_data): New.
6237         (get_core_registers_cb): Use it.  Use bool.
6238         (core_target::fetch_registers, core_target::files_info)
6239         (core_target::xfer_partial, core_target::read_description)
6240         (core_target::pid_to, core_target::thread_name): Adjust to
6241         reference class fields instead of globals.
6242         * target.h (struct target_ops_deleter, target_ops_up): New.
6243
6244 2018-05-11  Pedro Alves  <palves@redhat.com>
6245
6246         * corefile.c (core_file_command): Move to corelow.c.
6247         * corelow.c (the_core_target): Delete.
6248         (core_file_command): Moved from corefile.c.  Check exec_bfd
6249         instead of the_core_target.  Use target_detach instead of calling
6250         into the_core_target directly.
6251         (maybe_say_no_core_file_now): New.
6252         (core_target::detach): Use it.
6253         (_initialize_corelow): Remove references to the_core_target.
6254         * gdbcore.h (the_core_target): Delete.
6255
6256 2018-05-11  Tom Tromey  <tromey@redhat.com>
6257             Pedro Alves  <palves@redhat.com>
6258
6259         * corefile.c (core_bfd): Remove.
6260         * gdbcore.h (core_bfd): Now a macro.
6261         * progspace.h (struct program_space) <cbfd>: New field.
6262
6263 2018-05-11  Tom Tromey  <tom@tromey.com>
6264
6265         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
6266         gdb::def_vector.
6267
6268 2018-05-10  Tom Tromey  <tom@tromey.com>
6269
6270         * configure: Rebuild.
6271         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
6272
6273 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
6274
6275         PR server/23158:
6276         * regformats/regdat.sh: Adjust script, following the addition
6277         of the new expedite_regs parameter to init_target_desc.
6278
6279 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
6280     
6281         PR gdb/23127
6282         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
6283         set_gdbarch_significant_addr_bit.
6284         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
6285         set_gdbarch_significant_addr_bit.
6286         * utils.c (address_significant): Update to sign extend addr.
6287
6288 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
6289
6290         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
6291         (xtensa_linux_init_abi): Limit tdep->num_regs by
6292         tdep->num_nopriv_regs.
6293         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
6294         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
6295         not initialized.
6296
6297 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
6298
6299         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
6300
6301 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
6302
6303         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
6304         (I387_MXCSR_INIT_VAL): New constant.
6305         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
6306         buffer if it was supplied by the inferior.
6307         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
6308         (i387_xsave_get_clear_bv): New function.
6309         (i387_supply_xsave): Only read x87 control registers from the
6310         xsave buffer if the feature is enabled, and the state will have
6311         been written, otherwise, provide a suitable default.
6312         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
6313         including x87 control registers.  Update control registers if they
6314         have changed from the default value, and mark features as enabled
6315         as required.
6316         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
6317
6318 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
6319
6320         * spu-tdep.c (info_spu_event_command): Fix output formatting.
6321
6322 2018-05-07  Tom Tromey  <tom@tromey.com>
6323
6324         * configure: Rebuild.
6325         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
6326
6327 2018-05-07  Tom Tromey  <tom@tromey.com>
6328
6329         PR tdep/20362:
6330         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
6331         bit.  Use correct value for VDIV.
6332
6333 2018-05-04  Tom Tromey  <tom@tromey.com>
6334
6335         * configure: Rebuild.
6336         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
6337
6338 2018-05-04  Tom Tromey  <tom@tromey.com>
6339
6340         * linux-record.c (record_linux_system_call) <case
6341         RECORD_SYS_RECVFROM>: Add "break".
6342
6343 2018-05-04  Tom Tromey  <tom@tromey.com>
6344
6345         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
6346         Add missing "break".
6347         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
6348         Add missing "break".
6349
6350 2018-05-04  Tom Tromey  <tom@tromey.com>
6351
6352         * rs6000-tdep.c (ppc_process_record_op4)
6353         (ppc_process_record_op63): Add fall-through comment.
6354
6355 2018-05-04  Tom Tromey  <tom@tromey.com>
6356
6357         * i386-tdep.c (i386_process_record): Add fall-through comment.
6358
6359 2018-05-04  Tom Tromey  <tom@tromey.com>
6360
6361         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
6362         comment.
6363
6364 2018-05-04  Tom Tromey  <tom@tromey.com>
6365
6366         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
6367         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
6368         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
6369         comment.
6370         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
6371         comment.
6372         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
6373         comment.
6374
6375 2018-05-04  Tom Tromey  <tom@tromey.com>
6376
6377         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
6378
6379 2018-05-04  Tom Tromey  <tom@tromey.com>
6380
6381         * s390-tdep.c (s390_process_record): Fix fall-through comments.
6382         * xcoffread.c (scan_xcoff_symtab): Move comment later.
6383         * symfile.c (section_is_mapped): Fix fall-through comment.
6384         * stabsread.c (define_symbol, read_member_functions): Fix
6385         fall-through comment.
6386         * s390-linux-tdep.c (s390_process_record): Fix fall-through
6387         comment.
6388         * remote.c (remote_wait_as): Fix fall-through comment.
6389         * p-exp.y (yylex): Fix fall-through comment.
6390         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
6391         comment.
6392         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
6393         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
6394         * jv-exp.y (yylex): Fix fall-through comment.
6395         * go-exp.y (lex_one_token): Fix fall-through comment.
6396         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
6397         fall-through comment.
6398         * f-exp.y (yylex): Fix fall-through comment.
6399         * dwarf2read.c (process_die): Fix fall-through comments.
6400         * dbxread.c (process_one_symbol): Fix fall-through comment.
6401         * d-exp.y (lex_one_token): Fix fall-through comment.
6402         * cp-name-parser.y (yylex): Fix fall-through comment.
6403         * coffread.c (coff_symtab_read): Fix fall-through comment.
6404         * c-exp.y (lex_one_token): Fix fall-through comment.
6405         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
6406         comment.
6407         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
6408         comment.
6409
6410 2018-05-04  Tom Tromey  <tom@tromey.com>
6411
6412         PR python/22730:
6413         * NEWS: Mention gdb.execute change.
6414         * gdbcmd.h (execute_control_command): Don't declare.
6415         * python/python.c (execute_gdb_command): Use read_command_lines_1,
6416         execute_control_commands, execute_control_commands_to_string.
6417         * cli/cli-script.h (execute_control_commands)
6418         (execute_control_commands_to_string): Declare.
6419         (execute_control_command): Add from_tty parameter.
6420         * cli/cli-script.c (execute_control_commands)
6421         (execute_control_commands_to_string): New functions.
6422         (execute_user_command): Use execute_control_commands.
6423         (execute_control_command_1): Add "from_tty" parameter.  Update.
6424         (execute_control_command): Likewise.
6425
6426 2018-05-04  Tom Tromey  <tom@tromey.com>
6427
6428         PR python/22731:
6429         * NEWS: Mention that breakpoint commands are writable.
6430         * python/py-breakpoint.c (bppy_set_commands): New function.
6431         (breakpoint_object_getset) <"commands">: Use it.
6432
6433 2018-05-04  Tom Tromey  <tom@tromey.com>
6434
6435         * tracepoint.c (actions_command): Update.
6436         * mi/mi-cmd-break.c (mi_command_line_array)
6437         (mi_command_line_array_cnt, mi_command_line_array_ptr)
6438         (mi_read_next_line): Remove.
6439         (mi_cmd_break_commands): Update.
6440         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
6441         function_view.
6442         * cli/cli-script.c (get_command_line): Update.
6443         (process_next_line): Use function_view.  Constify.
6444         (recurse_read_control_structure, read_command_lines)
6445         (read_command_lines_1): Change argument types to function_view.
6446         (do_define_command, document_command): Update.
6447         * breakpoint.h (check_tracepoint_command): Don't declare.
6448         * breakpoint.c (check_tracepoint_command): Remove.
6449         (commands_command_1, create_tracepoint_from_upload): Update.
6450
6451 2018-05-04  Tom Tromey  <tom@tromey.com>
6452
6453         PR gdb/11750:
6454         * cli/cli-script.h (enum command_control_type) <define_control>:
6455         New constant.
6456         * cli/cli-script.c (multi_line_command_p): Handle define_control.
6457         (build_command_line, execute_control_command_1)
6458         (process_next_line): Likewise.
6459         (do_define_command): New function, extracted from define_command.
6460         (define_command): Use it.
6461
6462 2018-05-04  Tom Tromey  <tom@tromey.com>
6463
6464         * tracepoint.c (actions_command): Update.
6465         * cli/cli-script.h (read_command_lines): Update.
6466         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
6467         (MAX_TMPBUF): Remove define.
6468         (define_command): Use string_printf.
6469         (document_command): Likewise.
6470         * breakpoint.c (commands_command_1): Update.
6471
6472 2018-05-04  Tom Tromey  <tom@tromey.com>
6473
6474         * top.c (execute_command): Update.
6475         * cli/cli-script.h (print_command_lines): Now varargs.
6476         * cli/cli-script.c (print_command_lines): Now varargs.
6477         (execute_control_command_1) <case while_control, case if_control>:
6478         Update.
6479
6480 2018-05-04  Tom Tromey  <tom@tromey.com>
6481
6482         * tracepoint.c (all_tracepoint_actions): Rename from
6483         all_tracepoint_actions_and_cleanup.  Change return type.
6484         (actions_command, encode_actions_1, encode_actions)
6485         (trace_dump_actions, tdump_command): Update.
6486         * remote.c (remote_download_command_source): Update.
6487         * python/python.c (gdbpy_eval_from_control_command)
6488         (python_command, python_interactive_command): Update.
6489         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
6490         * guile/guile.c (guile_command)
6491         (gdbscm_eval_from_control_command, guile_command): Update.
6492         * compile/compile.c (compile_code_command)
6493         (compile_print_command, compile_to_object): Update.
6494         * cli/cli-script.h (struct command_lines_deleter): New.
6495         (counted_command_line): New typedef.
6496         (struct command_line): Add constructor, destructor.
6497         <body_list>: Remove.
6498         <body_list_0, body_list_1>: New members.
6499         (command_line_up): Remove typedef.
6500         (read_command_lines, read_command_lines_1, get_command_line):
6501         Update.
6502         (copy_command_lines): Don't declare.
6503         * cli/cli-script.c (build_command_line): Use "new".
6504         (get_command_line): Return counted_command_line.
6505         (print_command_lines, execute_user_command)
6506         (execute_control_command_1, while_command, if_command): Update.
6507         (realloc_body_list): Remove.
6508         (process_next_line, recurse_read_control_structure): Update.
6509         (read_command_lines, read_command_lines_1): Return counted_command_line.
6510         (free_command_lines): Use "delete".
6511         (copy_command_lines): Remove.
6512         (define_command, document_command, show_user_1): Update.
6513         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
6514         a counted_command_line.
6515         * breakpoint.h (counted_command_line): Remove typedef.
6516         (breakpoint_set_commands): Update.
6517         * breakpoint.c (check_no_tracepoint_commands)
6518         (validate_commands_for_breakpoint): Update.
6519         (breakpoint_set_commands): Change commands to be a
6520         counted_command_line.
6521         (commands_command_1, update_dprintf_command_list)
6522         (create_tracepoint_from_upload): Update.
6523
6524 2018-05-04  Tom Tromey  <tom@tromey.com>
6525
6526         * cli/cli-decode.h (cmd_list_element): New constructor.
6527         (~cmd_list_element): New destructor.
6528         (struct cmd_list_element): Add initializers.
6529         * cli/cli-decode.c (do_add_cmd): Use "new".
6530         (delete_cmd): Use "delete".
6531
6532 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
6533             Pedro Alves <palves@redhat.com>
6534
6535         PR breakpoints/19806 and support for PR external/20207.
6536         * NEWS: Mention Aarch64 watchpoint improvements.
6537         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
6538         watchpoints and PR external/20207 watchpoints.
6539         * nat/aarch64-linux-hw-point.c
6540         (kernel_supports_any_contiguous_range): New.
6541         (aarch64_watchpoint_offset): New.
6542         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
6543         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
6544         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
6545         (aarch64_align_watchpoint): New parameters aligned_offset_p and
6546         next_addr_orig_p.  Support PR external/20207 watchpoints.
6547         (aarch64_downgrade_regs): New.
6548         (aarch64_dr_state_insert_one_point): New parameters offset and
6549         addr_orig.
6550         (aarch64_dr_state_remove_one_point): Likewise.
6551         (aarch64_handle_breakpoint): Update caller.
6552         (aarch64_handle_aligned_watchpoint): Likewise.
6553         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
6554         aligned_offset.
6555         (aarch64_linux_set_debug_regs): Remove const from state.  Call
6556         aarch64_downgrade_regs.
6557         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
6558         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
6559         (DR_CONTROL_MASK): ... this.
6560         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
6561         (unsigned int aarch64_watchpoint_offset): New prototype.
6562         (aarch64_linux_set_debug_regs): Remove const from state.
6563         * utils.c (align_up, align_down): Move to ...
6564         * common/common-utils.c (align_up, align_down): ... here.
6565         * utils.h (align_up, align_down): Move to ...
6566         * common/common-utils.h (align_up, align_down): ... here.
6567
6568 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
6569
6570         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
6571         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
6572         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
6573         Re-implement to match the ABI as summarized in GCC's
6574         gcc/config/sparc/sparc.c.  All callers updated.
6575         (sparc32_store_arguments): Remove assertion.
6576
6577 2018-05-04  Tom Tromey  <tom@tromey.com>
6578
6579         * printcmd.c: Don't include tui.h.
6580         (decode_format): Use skip_spaces.
6581
6582 2018-05-04  Tom Tromey  <tom@tromey.com>
6583
6584         PR gdb/22619:
6585         * printcmd.c (last_count): New global.
6586         (x_command): Use saved count when repeating.
6587
6588 2018-05-04  Tom Tromey  <tom@tromey.com>
6589
6590         * nto-procfs.c (do_closedir_cleanup): Remove.
6591         (procfs_pidlist): Use gdb_dir_up.
6592         * procfs.c (do_closedir_cleanup): Remove.
6593         (proc_update_threads): Use gdb_dir_up.
6594         * common/filestuff.h (struct gdb_dir_deleter): New.
6595         (gdb_dir_up): New typedef.
6596
6597 2018-05-04  Tom Tromey  <tom@tromey.com>
6598
6599         * ada-lang.c (print_mention_exception): Use std::string.
6600
6601 2018-05-04  Tom Tromey  <tom@tromey.com>
6602
6603         * ada-lang.c (create_excep_cond_exprs): Update.
6604         (ada_exception_catchpoint_cond_string): Use std::string.
6605
6606 2018-05-04  Tom Tromey  <tom@tromey.com>
6607
6608         * ada-lang.c (xget_renaming_scope): Return std::string.
6609         (old_renaming_is_invisible): Update.
6610
6611 2018-05-04  Tom Tromey  <tom@tromey.com>
6612
6613         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
6614         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
6615
6616 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
6617
6618         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
6619
6620 2018-05-04  Tom Tromey  <tom@tromey.com>
6621
6622         * remote.c (remote_query_supported_append): Change type.
6623         (remote_check_symbols): Update.
6624
6625 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
6626
6627         PR gdb/11420
6628         * configure.ac: Prepend libpython.
6629         * python/python-config.py: Likewise.
6630         * configure: Regenerate.
6631
6632 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
6633
6634         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
6635
6636 2018-05-03  Pedro Alves  <palves@redhat.com>
6637
6638         * s390-linux-nat.c
6639         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
6640         override.  Write 'true' instead of '1'.
6641         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
6642         declaration.
6643
6644 2018-05-02  Pedro Alves  <palves@redhat.com>
6645
6646         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
6647         add_inf_child_target.
6648         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
6649         add_inf_child_target.
6650         * aix-thread.c (aix_thread_target_info): New.
6651         (aix_thread_target) <shortname, longname, doc>: Delete.
6652         <info>: New.
6653         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
6654         add_inf_child_target.
6655         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
6656         add_inf_child_target.
6657         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
6658         add_inf_child_target.
6659         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
6660         add_inf_child_target.
6661         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
6662         add_inf_child_target.
6663         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
6664         add_inf_child_target.
6665         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
6666         add_inf_child_target.
6667         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
6668         add_inf_child_target.
6669         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
6670         add_inf_child_target.
6671         * bfd-target.c (target_bfd_target_info): New.
6672         (target_bfd) <shortname, longname, doc>: Delete.
6673         <info>: New.
6674         * bsd-kvm.c (bsd_kvm_target_info): New.
6675         (bsd_kvm_target) <shortname, longname, doc>: Delete.
6676         <info>: New.
6677         (bsd_kvm_target::open): Rename to ...
6678         (bsd_kvm_target_open): ... this.  Adjust.
6679         * bsd-uthread.c (bsd_uthread_target_info): New.
6680         (bsd_uthread_target) <shortname, longname, doc>: Delete.
6681         <info>: New.
6682         * corefile.c (core_file_command): Adjust.
6683         * corelow.c (core_target_info): New.
6684         (core_target) <shortname, longname, doc>: Delete.
6685         <info>: New.
6686         (core_target::open): Rename to ...
6687         (core_target_open): ... this.  Adjust.
6688         * ctf.c (ctf_target_info): New.
6689         (ctf_target) <shortname, longname, doc>: Delete.
6690         <info>: New.
6691         (ctf_target::open): Rename to ...
6692         (ctf_target_open): ... this.
6693         (_initialize_ctf): Adjust.
6694         * exec.c (exec_target_info): New.
6695         (exec_target) <shortname, longname, doc>: Delete.
6696         <info>: New.
6697         (exec_target::open): Rename to ...
6698         (exec_target_open): ... this.
6699         * gdbcore.h (core_target_open): Declare.
6700         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
6701         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
6702         add_inf_child_target.
6703         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
6704         add_inf_child_target.
6705         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
6706         add_inf_child_target.
6707         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
6708         add_inf_child_target.
6709         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
6710         add_inf_child_target.
6711         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
6712         add_inf_child_target.
6713         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
6714         add_inf_child_target.
6715         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
6716         add_inf_child_target.
6717         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
6718         add_inf_child_target.
6719         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
6720         add_inf_child_target.
6721         * inf-child.c (inf_child_target_info): New.
6722         (inf_child_target::info): New.
6723         (inf_child_open_target): Remove 'target' parameter.  Use
6724         get_native_target instead.
6725         (inf_child_target::open): Delete.
6726         (add_inf_child_target): New.
6727         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
6728         Delete.
6729         <info>: New.
6730         (add_inf_child_target): Declare.
6731         (inf_child_open_target): Declare.
6732         * linux-thread-db.c (thread_db_target_info): New.
6733         (thread_db_target) <shortname, longname, doc>: Delete.
6734         <info>: New.
6735         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
6736         add_inf_child_target.
6737         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
6738         add_inf_child_target.
6739         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
6740         add_inf_child_target.
6741         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
6742         add_inf_child_target.
6743         * make-target-delegates (print_class): Adjust.
6744         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
6745         add_inf_child_target.
6746         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
6747         add_inf_child_target.
6748         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
6749         add_inf_child_target.
6750         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
6751         add_inf_child_target.
6752         * nto-procfs.c (nto_native_target_info): New.
6753         (nto_procfs_target_native) <shortname, longname, doc>:
6754         Delete.
6755         <info>: New.
6756         (nto_procfs_target_info): New.
6757         (nto_procfs_target_procfs) <shortname, longname, doc>:
6758         Delete.
6759         <info>: New.
6760         (init_procfs_targets): Adjust.
6761         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
6762         add_inf_child_target.
6763         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
6764         add_inf_child_target.
6765         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
6766         add_inf_child_target.
6767         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
6768         add_inf_child_target.
6769         * ravenscar-thread.c (ravenscar_target_info): New.
6770         (ravenscar_thread_target) <shortname, longname, doc>:
6771         Delete.
6772         <info>: New.
6773         * record-btrace.c (record_btrace_target_info):
6774         (record_btrace_target) <shortname, longname, doc>: Delete.
6775         <info>: New.
6776         (record_btrace_target::open): Rename to ...
6777         (record_btrace_target_open): ... this.  Adjust.
6778         * record-full.c (record_longname, record_doc): New.
6779         (record_full_base_target) <shortname, longname, doc>: Delete.
6780         <info>: New.
6781         (record_full_target_info): New.
6782         (record_full_target): <shortname>: Delete.
6783         <info>: New.
6784         (record_full_core_open_1, record_full_open_1): Update comments.
6785         (record_full_base_target::open): Rename to ...
6786         (record_full_open): ... this.
6787         (cmd_record_full_restore): Update.
6788         (_initialize_record_full): Update.
6789         * remote-sim.c (remote_sim_target_info): New.
6790         (gdbsim_target) <shortname, longname, doc>: Delete.
6791         <info>: New.
6792         (gdbsim_target::open): Rename to ...
6793         (gdbsim_target_open): ... this.
6794         (_initialize_remote_sim): Adjust.
6795         * remote.c (remote_doc): New.
6796         (remote_target_info): New.
6797         (remote_target) <shortname, longname, doc>: Delete.
6798         <info>: New.
6799         (extended_remote_target_info): New.
6800         (extended_remote_target) <shortname, longname, doc>: Delete.
6801         <info>: New.
6802         (remote_target::open_1): Make static.  Adjust.
6803         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
6804         * s390-linux-nat.c (_initialize_s390_nat): Use
6805         add_inf_child_target.
6806         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
6807         add_inf_child_target.
6808         * sol-thread.c (thread_db_target_info): New.
6809         (sol_thread_target) <shortname, longname, doc>: Delete.
6810         <info>: New.
6811         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
6812         add_inf_child_target.
6813         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
6814         add_inf_child_target.
6815         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
6816         add_inf_child_target.
6817         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
6818         add_inf_child_target.
6819         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
6820         add_inf_child_target.
6821         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
6822         add_inf_child_target.
6823         * spu-linux-nat.c (_initialize_spu_nat): Use
6824         add_inf_child_target.
6825         * spu-multiarch.c (spu_multiarch_target_info): New.
6826         (spu_multiarch_target) <shortname, longname, doc>: Delete.
6827         <info>: New.
6828         * target-delegates.c: Regenerate.
6829         * target.c: Include <unordered_map>.
6830         (target_ops_p): Delete.
6831         (DEF_VEC_P(target_ops_p)): Delete.
6832         (target_factories): New.
6833         (test_target_info): New.
6834         (test_target_ops::info): New.
6835         (open_target): Adjust to use target_factories.
6836         (add_target_with_completer): Rename to ...
6837         (add_target): ... this.  Change prototype.  Register target_info
6838         and open callback in target_factories.  Register target_info in
6839         command context instead of target_ops.
6840         (add_target): Delete old implementation.
6841         (add_deprecated_target_alias): Change prototype.  Adjust.
6842         (the_native_target): New.
6843         (set_native_target, get_native_target): New.
6844         (find_default_run_target): Use the_native_target.
6845         (find_attach_target, find_run_target): Simplify.
6846         (target_ops::open): Delete.
6847         (dummy_target_info): New.
6848         (dummy_target::shortname, dummy_target::longname)
6849         (dummy_target::doc): Delete.
6850         (dummy_target::info): New.
6851         (debug_target::shortname, debug_target::longname)
6852         (debug_target::doc): Delete.
6853         (debug_target::info): New.
6854         * target.h (struct target_info): New.
6855         (target_ops::~target_ops): Add comment.
6856         (target_ops::info): New.
6857         (target_ops::shortname, target_ops::longname, target_ops::doc): No
6858         longer virtual.  Implement in terms of target_info.
6859         (set_native_target, get_native_target): Declare.
6860         (target_open_ftype): New.
6861         (add_target, add_target_with_completer)
6862         (add_deprecated_target_alias): Change prototype.
6863         (test_target) <shortname, longname, doc>: Delete.
6864         <info>: New.
6865         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
6866         add_inf_child_target.
6867         * tracefile-tfile.c (tfile_target_info): New.
6868         (tfile_target) <shortname, longname, doc>: Delete.
6869         <info>: New.
6870         (tfile_target::open): Rename to ...
6871         (tfile_target_open): ... this.
6872         (_initialize_tracefile_tfile): Adjust.
6873         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
6874         add_inf_child_target.
6875         * windows-nat.c (_initialize_windows_nat): Use
6876         add_inf_child_target.
6877         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
6878         add_inf_child_target.
6879
6880 2018-05-02  Pedro Alves  <palves@redhat.com>
6881
6882         * linux-nat.h (linux_nat_target) <low_new_thread,
6883         low_delete_thread, low_new_fork, low_forget_process,
6884         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
6885         New virtual methods.
6886         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
6887         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
6888         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
6889         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
6890         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
6891         Delete.
6892         * linux-fork.c (delete_fork): Adjust to call low method.
6893         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
6894         (linux_nat_new_fork, linux_nat_forget_process_hook)
6895         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
6896         (linux_nat_status_is_event):
6897         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
6898         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
6899         to call low method.
6900         (sigtrap_is_event): Rename to ...
6901         (linux_nat_target::low_status_is_event): ... this.
6902         (linux_nat_set_status_is_event): Delete.
6903         (save_stop_reason, linux_nat_wait_1)
6904         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
6905         low methods.
6906         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
6907         (linux_nat_set_new_fork, linux_nat_set_forget_process)
6908         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
6909         (linux_nat_set_prepare_to_resume): Delete.
6910         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
6911         low virtual methods.
6912         * amd64-linux-nat.c: Likewise.
6913         * arm-linux-nat.c: Likewise.
6914         * i386-linux-nat.c: Likewise.
6915         * ia64-linux-nat.c: Likewise.
6916         * mips-linux-nat.c: Likewise.
6917         * ppc-linux-nat.c: Likewise.
6918         * s390-linux-nat.c: Likewise.
6919         * sparc64-linux-nat.c: Likewise.
6920         * x86-linux-nat.c: Likewise.
6921         * x86-linux-nat.h: Include "nat/x86-linux.h".
6922         (x86_linux_nat_target) <low_new_fork, low_forget_process,
6923         low_prepare_to_resume, low_new_thread, low_delete_thread>:
6924         Override methods.
6925
6926 2018-05-02  Pedro Alves  <palves@redhat.com>
6927
6928         * target.h (target_ops)
6929         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
6930         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
6931         stopped_by_watchpoint, have_continuable_watchpoint,
6932         stopped_data_address, watchpoint_addr_within_range,
6933         can_accel_watchpoint_condition, can_run, thread_alive,
6934         has_all_memory, has_memory, has_stack, has_registers,
6935         has_execution, can_async_p, is_async_p, supports_non_stop,
6936         always_non_stop_p, can_execute_reverse, supports_multi_process,
6937         supports_enable_disable_tracepoint,
6938         supports_disable_randomization, supports_string_tracing,
6939         supports_evaluation_of_breakpoint_conditions,
6940         can_run_breakpoint_commands, filesystem_is_local,
6941         can_download_tracepoint, get_trace_state_variable_value,
6942         set_trace_notes, get_tib_address, use_agent, can_use_agent,
6943         record_is_replaying, record_will_replay,
6944         augmented_libraries_svr4_read>: Adjust to return bool.
6945         * aarch64-linux-nat.c: All implementations adjusted.
6946         * aix-thread.c: All implementations adjusted.
6947         * arm-linux-nat.c: All implementations adjusted.
6948         * breakpoint.c: All implementations adjusted.
6949         * bsd-kvm.c: All implementations adjusted.
6950         * bsd-uthread.c: All implementations adjusted.
6951         * corelow.c: All implementations adjusted.
6952         * ctf.c: All implementations adjusted.
6953         * darwin-nat.c: All implementations adjusted.
6954         * darwin-nat.h: All implementations adjusted.
6955         * exec.c: All implementations adjusted.
6956         * fbsd-nat.c: All implementations adjusted.
6957         * fbsd-nat.h: All implementations adjusted.
6958         * gnu-nat.c: All implementations adjusted.
6959         * gnu-nat.h: All implementations adjusted.
6960         * go32-nat.c: All implementations adjusted.
6961         * ia64-linux-nat.c: All implementations adjusted.
6962         * inf-child.c: All implementations adjusted.
6963         * inf-child.h: All implementations adjusted.
6964         * inf-ptrace.c: All implementations adjusted.
6965         * inf-ptrace.h: All implementations adjusted.
6966         * linux-nat.c: All implementations adjusted.
6967         * linux-nat.h: All implementations adjusted.
6968         * mips-linux-nat.c: All implementations adjusted.
6969         * nto-procfs.c: All implementations adjusted.
6970         * ppc-linux-nat.c: All implementations adjusted.
6971         * procfs.c: All implementations adjusted.
6972         * ravenscar-thread.c: All implementations adjusted.
6973         * record-btrace.c: All implementations adjusted.
6974         * record-full.c: All implementations adjusted.
6975         * remote-sim.c: All implementations adjusted.
6976         * remote.c: All implementations adjusted.
6977         * s390-linux-nat.c: All implementations adjusted.
6978         * sol-thread.c: All implementations adjusted.
6979         * spu-multiarch.c: All implementations adjusted.
6980         * target-delegates.c: All implementations adjusted.
6981         * target.c: All implementations adjusted.
6982         * target.h: All implementations adjusted.
6983         * tracefile-tfile.c: All implementations adjusted.
6984         * tracefile.c: All implementations adjusted.
6985         * tracefile.h: All implementations adjusted.
6986         * windows-nat.c: All implementations adjusted.
6987         * x86-linux-nat.h: All implementations adjusted.
6988         * x86-nat.h: All implementations adjusted.
6989
6990 2018-05-02  Pedro Alves  <palves@redhat.com>
6991
6992         * make-target-delegates (scan_target_h): Don't trim lines here.
6993         Replace sequences of tabs and/or whitespace with a single
6994         whitespace.
6995         (top level, parsing methods): Trim each line before processing it
6996         here.
6997
6998 2018-05-02  Pedro Alves  <palves@redhat.com>
6999             John Baldwin  <jhb@freebsd.org>
7000
7001         * target.h (enum strata) <debug_stratum>: New.
7002         (struct target_ops) <all delegation methods>: Replace by C++
7003         virtual methods, and drop "to_" prefix.  All references updated
7004         throughout.
7005         <to_shortname, to_longname, to_doc, to_data,
7006         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
7007         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
7008         virtual methods.  All references updated throughout.
7009         <can_attach, supports_terminal_ours, can_create_inferior,
7010         get_thread_control_capabilities, attach_no_wait>: New
7011         virtual methods.
7012         <insert_breakpoint, remove_breakpoint>: Now
7013         TARGET_DEFAULT_NORETURN methods.
7014         <info_proc>: Now returns bool.
7015         <to_magic>: Delete.
7016         (OPS_MAGIC): Delete.
7017         (current_target): Delete.  All references replaced by references
7018         to ...
7019         (target_stack): ... this.  New.
7020         (target_shortname, target_longname): Adjust.
7021         (target_can_run): Now a function declaration.
7022         (default_child_has_all_memory, default_child_has_memory)
7023         (default_child_has_stack, default_child_has_registers)
7024         (default_child_has_execution): Remove target_ops parameter.
7025         (complete_target_initialization): Delete.
7026         (memory_breakpoint_target): New template class.
7027         (test_target_ops): Refactor as a C++ class with virtual methods.
7028         * make-target-delegates (NAME_PART): Tighten.
7029         (POINTER_PART, CP_SYMBOL): New.
7030         (SIMPLE_RETURN_PART): Reimplement.
7031         (VEC_RETURN_PART): Expect less.
7032         (RETURN_PART, VIRTUAL_PART): New.
7033         (METHOD): Adjust to C++ virtual methods.
7034         (scan_target_h): Remove reference to C99.
7035         (dname): Output "target_ops::" prefix.
7036         (write_function_header): Adjust to output a C++ class method.
7037         (write_declaration): New.
7038         (write_delegator): Adjust to output a C++ class method.
7039         (tdname): Output "dummy_target::" prefix.
7040         (write_tdefault, write_debugmethod): Adjust to output a C++ class
7041         method.
7042         (tdefault_names, debug_names): Delete.
7043         (return_types, tdefaults, styles, argtypes_array): New.
7044         (top level): All methods are delegators.
7045         (print_class): New.
7046         (top level): Print dummy_target and debug_target classes.
7047         * target-delegates.c: Regenerate.
7048         * target-debug.h (target_debug_print_enum_info_proc_what)
7049         (target_debug_print_thread_control_capabilities)
7050         (target_debug_print_thread_info_p): New.
7051         * target.c (dummy_target): Delete.
7052         (the_dummy_target, the_debug_target): New.
7053         (target_stack): Now extern.
7054         (set_targetdebug): Push/unpush debug target.
7055         (default_child_has_all_memory, default_child_has_memory)
7056         (default_child_has_stack, default_child_has_registers)
7057         (default_child_has_execution): Remove target_ops parameter.
7058         (complete_target_initialization): Delete.
7059         (add_target_with_completer): No longer call
7060         complete_target_initialization.
7061         (target_supports_terminal_ours): Use regular delegation.
7062         (update_current_target): Delete.
7063         (push_target): No longer check magic number.  Don't call
7064         update_current_target.
7065         (unpush_target): Don't call update_current_target.
7066         (target_is_pushed): No longer check magic number.
7067         (target_require_runnable): Skip for all stratums over
7068         process_stratum.
7069         (target_ops::info_proc): New.
7070         (target_info_proc): Use find_target_at and
7071         find_default_run_target.
7072         (target_supports_disable_randomization): Use regular delegation.
7073         (target_get_osdata): Use find_target_at.
7074         (target_ops::open, target_ops::close, target_ops::can_attach)
7075         (target_ops::attach, target_ops::can_create_inferior)
7076         (target_ops::create_inferior, target_ops::can_run)
7077         (target_can_run): New.
7078         (default_fileio_target): Use regular delegation.
7079         (target_ops::fileio_open, target_ops::fileio_pwrite)
7080         (target_ops::fileio_pread, target_ops::fileio_fstat)
7081         (target_ops::fileio_close, target_ops::fileio_unlink)
7082         (target_ops::fileio_readlink): New.
7083         (target_fileio_open_1, target_fileio_unlink)
7084         (target_fileio_readlink): Always call the target method.  Handle
7085         FILEIO_ENOSYS.
7086         (return_zero, return_zero_has_execution): Delete.
7087         (init_dummy_target): Delete.
7088         (dummy_target::dummy_target, dummy_target::shortname)
7089         (dummy_target::longname, dummy_target::doc)
7090         (debug_target::debug_target, debug_target::shortname)
7091         (debug_target::longname, debug_target::doc): New.
7092         (target_supports_delete_record): Use regular delegation.
7093         (setup_target_debug): Delete.
7094         (maintenance_print_target_stack): Skip debug_stratum.
7095         (initialize_targets): Instantiate the_dummy_target and
7096         the_debug_target.
7097         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
7098         use target_stack.
7099         (target_auxv_search, fprint_target_auxv): Adjust.
7100         (info_auxv_command): Adjust to use target_stack.
7101         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
7102         * exceptions.c (print_flush): Handle a NULL target_stack.
7103         * regcache.c (target_ops_no_register): Refactor as class with
7104         virtual methods.
7105
7106         * exec.c (exec_target): New class.
7107         (exec_ops): Now an exec_target.
7108         (exec_open, exec_close_1, exec_get_section_table)
7109         (exec_xfer_partial, exec_files_info, exec_has_memory)
7110         (exec_make_note_section): Refactor as exec_target methods.
7111         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
7112         Delete.
7113         (exec_target::find_memory_regions): New.
7114         (_initialize_exec): Don't call init_exec_ops.
7115         * gdbcore.h (exec_file_clear): Delete.
7116
7117         * corefile.c (core_target): Delete.
7118         (core_file_command): Adjust.
7119         * corelow.c (core_target): New class.
7120         (the_core_target): New.
7121         (core_close): Remove target_ops parameter.
7122         (core_close_cleanup): Adjust.
7123         (core_target::close): New.
7124         (core_open, core_detach, get_core_registers, core_files_info)
7125         (core_xfer_partial, core_thread_alive, core_read_description)
7126         (core_pid_to_str, core_thread_name, core_has_memory)
7127         (core_has_stack, core_has_registers, core_info_proc): Rework as
7128         core_target methods.
7129         (ignore, core_remove_breakpoint, init_core_ops): Delete.
7130         (_initialize_corelow): Initialize the_core_target.
7131         * gdbcore.h (core_target): Delete.
7132         (the_core_target): New.
7133
7134         * ctf.c: (ctf_target): New class.
7135         (ctf_ops): Now a ctf_target.
7136         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
7137         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
7138         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
7139         methods.
7140         (init_ctf_ops): Delete.
7141         (_initialize_ctf): Don't call it.
7142         * tracefile-tfile.c (tfile_target): New class.
7143         (tfile_ops): Now a tfile_target.
7144         (tfile_open, tfile_close, tfile_files_info)
7145         (tfile_get_tracepoint_status, tfile_trace_find)
7146         (tfile_fetch_registers, tfile_xfer_partial)
7147         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
7148         Refactor as tfile_target methods.
7149         (tfile_xfer_partial_features): Remove target_ops parameter.
7150         (init_tfile_ops): Delete.
7151         (_initialize_tracefile_tfile): Don't call it.
7152         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
7153         (tracefile_has_stack, tracefile_has_registers)
7154         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
7155         tracefile_target methods.
7156         (init_tracefile_ops): Delete.
7157         (tracefile_target::tracefile_target): New.
7158         * tracefile.h: Include "target.h".
7159         (tracefile_target): New class.
7160         (init_tracefile_ops): Delete.
7161
7162         * spu-multiarch.c (spu_multiarch_target): New class.
7163         (spu_ops): Now a spu_multiarch_target.
7164         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
7165         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
7166         (spu_search_memory, spu_mourn_inferior): Refactor as
7167         spu_multiarch_target methods.
7168         (init_spu_ops): Delete.
7169         (_initialize_spu_multiarch): Remove references to init_spu_ops,
7170         complete_target_initialization.
7171
7172         * ravenscar-thread.c (ravenscar_thread_target): New class.
7173         (ravenscar_ops): Now a ravenscar_thread_target.
7174         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
7175         (ravenscar_thread_alive, ravenscar_pid_to_str)
7176         (ravenscar_fetch_registers, ravenscar_store_registers)
7177         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
7178         (ravenscar_stopped_by_hw_breakpoint)
7179         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
7180         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
7181         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
7182         methods.
7183         (init_ravenscar_thread_ops): Delete.
7184         (_initialize_ravenscar): Remove references to
7185         init_ravenscar_thread_ops and complete_target_initialization.
7186
7187         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
7188         (bsd_uthread_target): New class.
7189         (bsd_uthread_ops): Now a bsd_uthread_target.
7190         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
7191         (bsd_uthread_close, bsd_uthread_mourn_inferior)
7192         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
7193         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
7194         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
7195         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
7196         (bsd_uthread_target): Delete function.
7197         (_initialize_bsd_uthread): Remove reference to
7198         complete_target_initialization.
7199
7200         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
7201         (target_bfd): ... this new class.
7202         (target_bfd_xfer_partial, target_bfd_get_section_table)
7203         (target_bfd_close): Refactor as target_bfd methods.
7204         (target_bfd::~target_bfd): New.
7205         (target_bfd_reopen): Adjust.
7206         (target_bfd::close): New.
7207
7208         * record-btrace.c (record_btrace_target): New class.
7209         (record_btrace_ops): Now a record_btrace_target.
7210         (record_btrace_open, record_btrace_stop_recording)
7211         (record_btrace_disconnect, record_btrace_close)
7212         (record_btrace_async, record_btrace_info)
7213         (record_btrace_insn_history, record_btrace_insn_history_range)
7214         (record_btrace_insn_history_from, record_btrace_call_history)
7215         (record_btrace_call_history_range)
7216         (record_btrace_call_history_from, record_btrace_record_method)
7217         (record_btrace_is_replaying, record_btrace_will_replay)
7218         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
7219         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
7220         (record_btrace_store_registers, record_btrace_prepare_to_store)
7221         (record_btrace_to_get_unwinder)
7222         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
7223         (record_btrace_commit_resume, record_btrace_wait)
7224         (record_btrace_stop, record_btrace_can_execute_reverse)
7225         (record_btrace_stopped_by_sw_breakpoint)
7226         (record_btrace_supports_stopped_by_sw_breakpoint)
7227         (record_btrace_stopped_by_hw_breakpoint)
7228         (record_btrace_supports_stopped_by_hw_breakpoint)
7229         (record_btrace_update_thread_list, record_btrace_thread_alive)
7230         (record_btrace_goto_begin, record_btrace_goto_end)
7231         (record_btrace_goto, record_btrace_stop_replaying_all)
7232         (record_btrace_execution_direction)
7233         (record_btrace_prepare_to_generate_core)
7234         (record_btrace_done_generating_core): Refactor as
7235         record_btrace_target methods.
7236         (init_record_btrace_ops): Delete.
7237         (_initialize_record_btrace): Remove reference to
7238         init_record_btrace_ops.
7239         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
7240         the execution_direction global.
7241         (record_full_base_target, record_full_target)
7242         (record_full_core_target): New classes.
7243         (record_full_ops): Now a record_full_target.
7244         (record_full_core_ops): Now a record_full_core_target.
7245         (record_full_target::detach, record_full_target::disconnect)
7246         (record_full_core_target::disconnect)
7247         (record_full_target::mourn_inferior, record_full_target::kill):
7248         New.
7249         (record_full_open, record_full_close, record_full_async): Refactor
7250         as methods of the record_full_base_target class.
7251         (record_full_resume, record_full_commit_resume): Refactor
7252         as methods of the record_full_target class.
7253         (record_full_wait, record_full_stopped_by_watchpoint)
7254         (record_full_stopped_data_address)
7255         (record_full_stopped_by_sw_breakpoint)
7256         (record_full_supports_stopped_by_sw_breakpoint)
7257         (record_full_stopped_by_hw_breakpoint)
7258         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
7259         methods of the record_full_base_target class.
7260         (record_full_store_registers, record_full_xfer_partial)
7261         (record_full_insert_breakpoint, record_full_remove_breakpoint):
7262         Refactor as methods of the record_full_target class.
7263         (record_full_can_execute_reverse, record_full_get_bookmark)
7264         (record_full_goto_bookmark, record_full_execution_direction)
7265         (record_full_record_method, record_full_info, record_full_delete)
7266         (record_full_is_replaying, record_full_will_replay)
7267         (record_full_goto_begin, record_full_goto_end, record_full_goto)
7268         (record_full_stop_replaying): Refactor as methods of the
7269         record_full_base_target class.
7270         (record_full_core_resume, record_full_core_kill)
7271         (record_full_core_fetch_registers)
7272         (record_full_core_prepare_to_store)
7273         (record_full_core_store_registers, record_full_core_xfer_partial)
7274         (record_full_core_insert_breakpoint)
7275         (record_full_core_remove_breakpoint)
7276         (record_full_core_has_execution): Refactor
7277         as methods of the record_full_core_target class.
7278         (record_full_base_target::supports_delete_record): New.
7279         (init_record_full_ops): Delete.
7280         (init_record_full_core_ops): Delete.
7281         (record_full_save): Refactor as method of the
7282         record_full_base_target class.
7283         (_initialize_record_full): Remove references to
7284         init_record_full_ops and init_record_full_core_ops.
7285
7286         * remote.c (remote_target, extended_remote_target): New classes.
7287         (remote_ops): Now a remote_target.
7288         (extended_remote_ops): Now an extended_remote_target.
7289         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
7290         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
7291         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
7292         (remote_pass_signals, remote_set_syscall_catchpoint)
7293         (remote_program_signals, )
7294         (remote_thread_always_alive): Remove target_ops parameter.
7295         (remote_thread_alive, remote_thread_name)
7296         (remote_update_thread_list, remote_threads_extra_info)
7297         (remote_static_tracepoint_marker_at)
7298         (remote_static_tracepoint_markers_by_strid)
7299         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
7300         (remote_open): Refactor as methods of remote_target.
7301         (extended_remote_open, extended_remote_detach)
7302         (extended_remote_attach, extended_remote_post_attach):
7303         (extended_remote_supports_disable_randomization)
7304         (extended_remote_create_inferior): : Refactor as method of
7305         extended_remote_target.
7306         (remote_set_permissions, remote_open_1, remote_detach)
7307         (remote_follow_fork, remote_follow_exec, remote_disconnect)
7308         (remote_resume, remote_commit_resume, remote_stop)
7309         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
7310         (remote_terminal_ours, remote_wait, remote_fetch_registers)
7311         (remote_prepare_to_store, remote_store_registers)
7312         (remote_flash_erase, remote_flash_done, remote_files_info)
7313         (remote_kill, remote_mourn, remote_insert_breakpoint)
7314         (remote_remove_breakpoint, remote_insert_watchpoint)
7315         (remote_watchpoint_addr_within_range)
7316         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
7317         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
7318         (remote_supports_stopped_by_sw_breakpoint)
7319         (remote_stopped_by_hw_breakpoint)
7320         (remote_supports_stopped_by_hw_breakpoint)
7321         (remote_stopped_by_watchpoint, remote_stopped_data_address)
7322         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
7323         (remote_verify_memory): Refactor as methods of remote_target.
7324         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
7325         parameter.
7326         (remote_xfer_partial, remote_get_memory_xfer_limit)
7327         (remote_search_memory, remote_rcmd, remote_memory_map)
7328         (remote_pid_to_str, remote_get_thread_local_address)
7329         (remote_get_tib_address, remote_read_description): Refactor as
7330         methods of remote_target.
7331         (remote_target::fileio_open, remote_target::fileio_pwrite)
7332         (remote_target::fileio_pread, remote_target::fileio_close): New.
7333         (remote_hostio_readlink, remote_hostio_fstat)
7334         (remote_filesystem_is_local, remote_can_execute_reverse)
7335         (remote_supports_non_stop, remote_supports_disable_randomization)
7336         (remote_supports_multi_process, remote_supports_cond_breakpoints)
7337         (remote_supports_enable_disable_tracepoint)
7338         (remote_supports_string_tracing)
7339         (remote_can_run_breakpoint_commands, remote_trace_init)
7340         (remote_download_tracepoint, remote_can_download_tracepoint)
7341         (remote_download_trace_state_variable, remote_enable_tracepoint)
7342         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
7343         (remote_trace_start, remote_get_trace_status)
7344         (remote_get_tracepoint_status, remote_trace_stop)
7345         (remote_trace_find, remote_get_trace_state_variable_value)
7346         (remote_save_trace_data, remote_get_raw_trace_data)
7347         (remote_set_disconnected_tracing, remote_core_of_thread)
7348         (remote_set_circular_trace_buffer, remote_traceframe_info)
7349         (remote_get_min_fast_tracepoint_insn_len)
7350         (remote_set_trace_buffer_size, remote_set_trace_notes)
7351         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
7352         (remote_disable_btrace, remote_teardown_btrace)
7353         (remote_read_btrace, remote_btrace_conf)
7354         (remote_augmented_libraries_svr4_read, remote_load)
7355         (remote_pid_to_exec_file, remote_can_do_single_step)
7356         (remote_execution_direction, remote_thread_handle_to_thread_info):
7357         Refactor as methods of remote_target.
7358         (init_remote_ops, init_extended_remote_ops): Delete.
7359         (remote_can_async_p, remote_is_async_p, remote_async)
7360         (remote_thread_events, remote_upload_tracepoints)
7361         (remote_upload_trace_state_variables): Refactor as methods of
7362         remote_target.
7363         (_initialize_remote): Remove references to init_remote_ops and
7364         init_extended_remote_ops.
7365
7366         * remote-sim.c (gdbsim_target): New class.
7367         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
7368         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
7369         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
7370         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
7371         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
7372         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
7373         Refactor as methods of gdbsim_target.
7374         (gdbsim_ops): Now a gdbsim_target.
7375         (init_gdbsim_ops): Delete.
7376         (gdbsim_cntrl_c): Adjust.
7377         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
7378
7379         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
7380         (the_amd64_linux_nat_target): New.
7381         (amd64_linux_fetch_inferior_registers)
7382         (amd64_linux_store_inferior_registers): Refactor as methods of
7383         amd64_linux_nat_target.
7384         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
7385         * i386-linux-nat.c: Don't include "linux-nat.h".
7386         (i386_linux_nat_target): New class.
7387         (the_i386_linux_nat_target): New.
7388         (i386_linux_fetch_inferior_registers)
7389         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
7390         as methods of i386_linux_nat_target.
7391         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
7392         * inf-child.c (inf_child_ops): Delete.
7393         (inf_child_fetch_inferior_registers)
7394         (inf_child_store_inferior_registers): Delete.
7395         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
7396         methods of inf_child_target.
7397         (inf_child_target::supports_terminal_ours)
7398         (inf_child_target::terminal_init)
7399         (inf_child_target::terminal_inferior)
7400         (inf_child_target::terminal_ours_for_output)
7401         (inf_child_target::terminal_ours, inf_child_target::interrupt)
7402         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
7403         New.
7404         (inf_child_open, inf_child_disconnect, inf_child_close)
7405         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
7406         (inf_child_post_startup_inferior, inf_child_can_run)
7407         (inf_child_pid_to_exec_file): Refactor as methods of
7408         inf_child_target.
7409         (inf_child_follow_fork): Delete.
7410         (inf_child_target::can_create_inferior)
7411         (inf_child_target::can_attach): New.
7412         (inf_child_target::has_all_memory, inf_child_target::has_memory)
7413         (inf_child_target::has_stack, inf_child_target::has_registers)
7414         (inf_child_target::has_execution): New.
7415         (inf_child_fileio_open, inf_child_fileio_pwrite)
7416         (inf_child_fileio_pread, inf_child_fileio_fstat)
7417         (inf_child_fileio_close, inf_child_fileio_unlink)
7418         (inf_child_fileio_readlink, inf_child_use_agent)
7419         (inf_child_can_use_agent): Refactor as methods of
7420         inf_child_target.
7421         (return_zero, inf_child_target): Delete.
7422         (inf_child_target::inf_child_target): New.
7423         * inf-child.h: Include "target.h".
7424         (inf_child_target): Delete function prototype.
7425         (inf_child_target): New class.
7426         (inf_child_open_target, inf_child_mourn_inferior)
7427         (inf_child_maybe_unpush_target): Delete.
7428         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
7429         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
7430         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
7431         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
7432         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
7433         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
7434         (inf_ptrace_wait, inf_ptrace_xfer_partial)
7435         (inf_ptrace_thread_alive, inf_ptrace_files_info)
7436         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
7437         methods of inf_ptrace_target.
7438         (inf_ptrace_target): Delete function.
7439         * inf-ptrace.h: Include "inf-child.h".
7440         (inf_ptrace_target): Delete function declaration.
7441         (inf_ptrace_target): New class.
7442         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
7443         * linux-nat.c (linux_target): New.
7444         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
7445         (linux_nat_target::~linux_nat_target): New.
7446         (linux_child_post_attach, linux_child_post_startup_inferior)
7447         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
7448         (linux_child_remove_fork_catchpoint)
7449         (linux_child_insert_vfork_catchpoint)
7450         (linux_child_remove_vfork_catchpoint)
7451         (linux_child_insert_exec_catchpoint)
7452         (linux_child_remove_exec_catchpoint)
7453         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
7454         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
7455         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
7456         (linux_nat_stopped_data_address)
7457         (linux_nat_stopped_by_sw_breakpoint)
7458         (linux_nat_supports_stopped_by_sw_breakpoint)
7459         (linux_nat_stopped_by_hw_breakpoint)
7460         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
7461         (linux_nat_kill, linux_nat_mourn_inferior)
7462         (linux_nat_xfer_partial, linux_nat_thread_alive)
7463         (linux_nat_update_thread_list, linux_nat_pid_to_str)
7464         (linux_nat_thread_name, linux_child_pid_to_exec_file)
7465         (linux_child_static_tracepoint_markers_by_strid)
7466         (linux_nat_is_async_p, linux_nat_can_async_p)
7467         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
7468         (linux_nat_supports_multi_process)
7469         (linux_nat_supports_disable_randomization, linux_nat_async)
7470         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
7471         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
7472         (linux_nat_fileio_open, linux_nat_fileio_readlink)
7473         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
7474         methods of linux_nat_target.
7475         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
7476         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
7477         parameter.
7478         (check_stopped_by_watchpoint): Adjust.
7479         (linux_xfer_partial): Delete.
7480         (linux_target_install_ops, linux_target, linux_nat_add_target):
7481         Delete.
7482         (linux_nat_target::linux_nat_target): New.
7483         * linux-nat.h: Include "inf-ptrace.h".
7484         (linux_nat_target): New.
7485         (linux_target, linux_target_install_ops, linux_nat_add_target):
7486         Delete function declarations.
7487         (linux_target): Declare global.
7488         * linux-thread-db.c (thread_db_target): New.
7489         (thread_db_target::thread_db_target): New.
7490         (thread_db_ops): Delete.
7491         (the_thread_db_target): New.
7492         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
7493         (thread_db_update_thread_list, thread_db_pid_to_str)
7494         (thread_db_extra_thread_info)
7495         (thread_db_thread_handle_to_thread_info)
7496         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
7497         (thread_db_resume): Refactor as methods of thread_db_target.
7498         (init_thread_db_ops): Delete.
7499         (_initialize_thread_db): Remove reference to init_thread_db_ops.
7500         * x86-linux-nat.c: Don't include "linux-nat.h".
7501         (super_post_startup_inferior): Delete.
7502         (x86_linux_nat_target::~x86_linux_nat_target): New.
7503         (x86_linux_child_post_startup_inferior)
7504         (x86_linux_read_description, x86_linux_enable_btrace)
7505         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
7506         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
7507         methods of x86_linux_nat_target.
7508         (x86_linux_create_target): Delete.  Bits folded ...
7509         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
7510         pointer.
7511         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
7512         (x86_linux_nat_target): New class.
7513         (x86_linux_create_target): Delete.
7514         (x86_linux_add_target): Now takes a linux_nat_target pointer.
7515         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
7516         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
7517         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
7518         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
7519         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
7520         make extern.
7521         (x86_use_watchpoints): Delete.
7522         * x86-nat.h: Include "breakpoint.h" and "target.h".
7523         (x86_use_watchpoints): Delete.
7524         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
7525         (x86_stopped_by_watchpoint, x86_stopped_data_address)
7526         (x86_insert_watchpoint, x86_remove_watchpoint)
7527         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
7528         (x86_stopped_by_hw_breakpoint): New declarations.
7529         (x86_nat_target): New template class.
7530
7531         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
7532         (the_ppc_linux_nat_target): New.
7533         (ppc_linux_fetch_inferior_registers)
7534         (ppc_linux_can_use_hw_breakpoint)
7535         (ppc_linux_region_ok_for_hw_watchpoint)
7536         (ppc_linux_ranged_break_num_registers)
7537         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
7538         (ppc_linux_insert_mask_watchpoint)
7539         (ppc_linux_remove_mask_watchpoint)
7540         (ppc_linux_can_accel_watchpoint_condition)
7541         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
7542         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
7543         (ppc_linux_watchpoint_addr_within_range)
7544         (ppc_linux_masked_watch_num_registers)
7545         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
7546         (ppc_linux_read_description): Refactor as methods of
7547         ppc_linux_nat_target.
7548         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
7549
7550         * procfs.c (procfs_xfer_partial): Delete forward declaration.
7551         (procfs_target): New class.
7552         (the_procfs_target): New.
7553         (procfs_target): Delete function.
7554         (procfs_auxv_parse, procfs_attach, procfs_detach)
7555         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
7556         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
7557         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
7558         (procfs_create_inferior, procfs_update_thread_list)
7559         (procfs_thread_alive, procfs_pid_to_str)
7560         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
7561         (procfs_stopped_data_address, procfs_insert_watchpoint)
7562         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
7563         (proc_find_memory_regions, procfs_info_proc)
7564         (procfs_make_note_section): Refactor as methods of procfs_target.
7565         (_initialize_procfs): Adjust.
7566         * sol-thread.c (sol_thread_target): New class.
7567         (sol_thread_ops): Now a sol_thread_target.
7568         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
7569         (sol_thread_fetch_registers, sol_thread_store_registers)
7570         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
7571         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
7572         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
7573         (init_sol_thread_ops): Delete.
7574         (_initialize_sol_thread): Adjust.  Remove references to
7575         init_sol_thread_ops and complete_target_initialization.
7576
7577         * windows-nat.c (windows_nat_target): New class.
7578         (windows_fetch_inferior_registers)
7579         (windows_store_inferior_registers, windows_resume, windows_wait)
7580         (windows_attach, windows_detach, windows_pid_to_exec_file)
7581         (windows_files_info, windows_create_inferior)
7582         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
7583         (windows_close, windows_pid_to_str, windows_xfer_partial)
7584         (windows_get_tib_address, windows_get_ada_task_ptid)
7585         (windows_thread_name, windows_thread_alive): Refactor as
7586         windows_nat_target methods.
7587         (do_initial_windows_stuff): Adjust.
7588         (windows_target): Delete function.
7589         (_initialize_windows_nat): Adjust.
7590
7591         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
7592         (darwin_mourn_inferior, darwin_kill_inferior)
7593         (darwin_create_inferior, darwin_attach, darwin_detach)
7594         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
7595         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
7596         (darwin_supports_multi_process): Refactor as darwin_nat_target
7597         methods.
7598         (darwin_resume_to, darwin_files_info): Delete.
7599         (_initialize_darwin_inferior): Rename to ...
7600         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
7601         * darwin-nat.h: Include "inf-child.h".
7602         (darwin_nat_target): New class.
7603         (darwin_complete_target): Delete.
7604         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
7605         (darwin_target): New.
7606         (i386_darwin_fetch_inferior_registers)
7607         (i386_darwin_store_inferior_registers): Refactor as methods of
7608         darwin_nat_target.
7609         (darwin_complete_target): Delete, with ...
7610         (_initialize_i386_darwin_nat): ... bits factored out here.
7611
7612         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
7613         (the_alpha_linux_nat_target): New.
7614         (alpha_linux_register_u_offset): Refactor as
7615         alpha_linux_nat_target method.
7616         (_initialize_alpha_linux_nat): Adjust.
7617         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
7618         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
7619         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
7620         methods of linux_nat_trad_target.
7621         (linux_trad_target): Delete.
7622         * linux-nat-trad.h (linux_trad_target): Delete function.
7623         (linux_nat_trad_target): New class.
7624         * mips-linux-nat.c (mips_linux_nat_target): New class.
7625         (super_fetch_registers, super_store_registers, super_close):
7626         Delete.
7627         (the_mips_linux_nat_target): New.
7628         (mips64_linux_regsets_fetch_registers)
7629         (mips64_linux_regsets_store_registers)
7630         (mips64_linux_fetch_registers, mips64_linux_store_registers)
7631         (mips_linux_register_u_offset, mips_linux_read_description)
7632         (mips_linux_can_use_hw_breakpoint)
7633         (mips_linux_stopped_by_watchpoint)
7634         (mips_linux_stopped_data_address)
7635         (mips_linux_region_ok_for_hw_watchpoint)
7636         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
7637         (mips_linux_close): Refactor as methods of mips_linux_nat.
7638         (_initialize_mips_linux_nat): Adjust to C++ification.
7639
7640         * aix-thread.c (aix_thread_target): New class.
7641         (aix_thread_ops): Now an aix_thread_target.
7642         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
7643         (aix_thread_fetch_registers, aix_thread_store_registers)
7644         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
7645         (aix_thread_thread_alive, aix_thread_pid_to_str)
7646         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
7647         Refactor as methods of aix_thread_target.
7648         (init_aix_thread_ops): Delete.
7649         (_initialize_aix_thread): Remove references to init_aix_thread_ops
7650         and complete_target_initialization.
7651         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
7652         (rs6000_nat_target): New class.
7653         (the_rs6000_nat_target): New.
7654         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
7655         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
7656         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
7657         (super_create_inferior): Delete.
7658         (_initialize_rs6000_nat): Adjust to C++ification.
7659
7660         * arm-linux-nat.c (arm_linux_nat_target): New class.
7661         (the_arm_linux_nat_target): New.
7662         (arm_linux_fetch_inferior_registers)
7663         (arm_linux_store_inferior_registers, arm_linux_read_description)
7664         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
7665         (arm_linux_remove_hw_breakpoint)
7666         (arm_linux_region_ok_for_hw_watchpoint)
7667         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
7668         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
7669         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
7670         arm_linux_nat_target.
7671         (_initialize_arm_linux_nat): Adjust to C++ification.
7672
7673         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
7674         (the_aarch64_linux_nat_target): New.
7675         (aarch64_linux_fetch_inferior_registers)
7676         (aarch64_linux_store_inferior_registers)
7677         (aarch64_linux_child_post_startup_inferior)
7678         (aarch64_linux_read_description)
7679         (aarch64_linux_can_use_hw_breakpoint)
7680         (aarch64_linux_insert_hw_breakpoint)
7681         (aarch64_linux_remove_hw_breakpoint)
7682         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
7683         (aarch64_linux_region_ok_for_hw_watchpoint)
7684         (aarch64_linux_stopped_data_address)
7685         (aarch64_linux_stopped_by_watchpoint)
7686         (aarch64_linux_watchpoint_addr_within_range)
7687         (aarch64_linux_can_do_single_step): Refactor as methods of
7688         aarch64_linux_nat_target.
7689         (super_post_startup_inferior): Delete.
7690         (_initialize_aarch64_linux_nat): Adjust to C++ification.
7691
7692         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
7693         (the_hppa_linux_nat_target): New.
7694         (hppa_linux_fetch_inferior_registers)
7695         (hppa_linux_store_inferior_registers): Refactor as methods of
7696         hppa_linux_nat_target.
7697         (_initialize_hppa_linux_nat): Adjust to C++ification.
7698
7699         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
7700         (the_ia64_linux_nat_target): New.
7701         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
7702         (ia64_linux_stopped_data_address)
7703         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
7704         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
7705         ia64_linux_nat_target methods.
7706         (super_xfer_partial): Delete.
7707         (_initialize_ia64_linux_nat): Adjust to C++ification.
7708
7709         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
7710         (the_m32r_linux_nat_target): New.
7711         (m32r_linux_fetch_inferior_registers)
7712         (m32r_linux_store_inferior_registers): Refactor as
7713         m32r_linux_nat_target methods.
7714         (_initialize_m32r_linux_nat): Adjust to C++ification.
7715
7716         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
7717         (the_m68k_linux_nat_target): New.
7718         (m68k_linux_fetch_inferior_registers)
7719         (m68k_linux_store_inferior_registers): Refactor as
7720         m68k_linux_nat_target methods.
7721         (_initialize_m68k_linux_nat): Adjust to C++ification.
7722
7723         * s390-linux-nat.c (s390_linux_nat_target): New class.
7724         (the_s390_linux_nat_target): New.
7725         (s390_linux_fetch_inferior_registers)
7726         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
7727         (s390_insert_watchpoint, s390_remove_watchpoint)
7728         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
7729         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
7730         (s390_auxv_parse, s390_read_description): Refactor as methods of
7731         s390_linux_nat_target.
7732         (_initialize_s390_nat): Adjust to C++ification.
7733
7734         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
7735         (the_sparc_linux_nat_target): New.
7736         (_initialize_sparc_linux_nat): Adjust to C++ification.
7737         * sparc-nat.c (sparc_fetch_inferior_registers)
7738         (sparc_store_inferior_registers): Remove target_ops parameter.
7739         * sparc-nat.h (sparc_fetch_inferior_registers)
7740         (sparc_store_inferior_registers): Remove target_ops parameter.
7741         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
7742         (the_sparc64_linux_nat_target): New.
7743         (_initialize_sparc64_linux_nat): Adjust to C++ification.
7744
7745         * spu-linux-nat.c (spu_linux_nat_target): New class.
7746         (the_spu_linux_nat_target): New.
7747         (spu_child_post_startup_inferior, spu_child_post_attach)
7748         (spu_child_wait, spu_fetch_inferior_registers)
7749         (spu_store_inferior_registers, spu_xfer_partial)
7750         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
7751         methods.
7752         (_initialize_spu_nat): Adjust to C++ification.
7753
7754         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
7755         (the_tilegx_linux_nat_target): New.
7756         (fetch_inferior_registers, store_inferior_registers):
7757         Refactor as methods.
7758         (_initialize_tile_linux_nat): Adjust to C++ification.
7759
7760         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
7761         (the_xtensa_linux_nat_target): New.
7762         (xtensa_linux_fetch_inferior_registers)
7763         (xtensa_linux_store_inferior_registers): Refactor as
7764         xtensa_linux_nat_target methods.
7765         (_initialize_xtensa_linux_nat): Adjust to C++ification.
7766
7767         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
7768         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
7769         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
7770         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
7771         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
7772         (fbsd_stopped_by_sw_breakpoint)
7773         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
7774         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
7775         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
7776         (fbsd_post_startup_inferior, fbsd_post_attach)
7777         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
7778         (fbsd_set_syscall_catchpoint)
7779         (super_xfer_partial, super_resume, super_wait)
7780         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
7781         (fbsd_handle_debug_trap): Remove target_ops parameter.
7782         (fbsd_nat_add_target): Delete.
7783         * fbsd-nat.h: Include "inf-ptrace.h".
7784         (fbsd_nat_add_target): Delete.
7785         (USE_SIGTRAP_SIGINFO): Define.
7786         (fbsd_nat_target): New class.
7787
7788         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
7789         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
7790         (amd64bsd_target): Delete.
7791         * amd64-bsd-nat.h: New file.
7792         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
7793         "x86-bsd-nat.h".
7794         (amd64_fbsd_nat_target): New class.
7795         (the_amd64_fbsd_nat_target): New.
7796         (amd64fbsd_read_description): Refactor as method of
7797         amd64_fbsd_nat_target.
7798         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
7799         (_initialize_amd64fbsd_nat): Adjust to C++ification.
7800         * amd64-nat.h (amd64bsd_target): Delete function declaration.
7801         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
7802         (i386bsd_store_inferior_registers): Remove target_ops parameter.
7803         (i386bsd_target): Delete.
7804         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
7805         (i386bsd_fetch_inferior_registers)
7806         (i386bsd_store_inferior_registers): Declare.
7807         (i386_bsd_nat_target): New class.
7808         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
7809         (the_i386_fbsd_nat_target): New.
7810         (i386fbsd_resume, i386fbsd_read_description): Refactor as
7811         i386_fbsd_nat_target methods.
7812         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
7813         (_initialize_i386fbsd_nat): Adjust to C++ification.
7814         * x86-bsd-nat.c (super_mourn_inferior): Delete.
7815         (x86bsd_mourn_inferior, x86bsd_target): Delete.
7816         (_initialize_x86_bsd_nat): Adjust to C++ification.
7817         * x86-bsd-nat.h: Include "x86-nat.h".
7818         (x86bsd_target): Delete declaration.
7819         (x86bsd_nat_target): New class.
7820
7821         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
7822         (the_aarch64_fbsd_nat_target): New.
7823         (aarch64_fbsd_fetch_inferior_registers)
7824         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
7825         aarch64_fbsd_nat_target.
7826         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
7827         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
7828         (the_alpha_bsd_nat_target): New.
7829         (alphabsd_fetch_inferior_registers)
7830         (alphabsd_store_inferior_registers): Refactor as
7831         alpha_bsd_nat_target methods.
7832         (_initialize_alphabsd_nat): Refactor as methods of
7833         alpha_bsd_nat_target.
7834         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
7835         (the_amd64_nbsd_nat_target): New.
7836         (_initialize_amd64nbsd_nat): Adjust to C++ification.
7837         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
7838         (the_amd64_obsd_nat_target): New.
7839         (_initialize_amd64obsd_nat): Adjust to C++ification.
7840         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
7841         (the_arm_fbsd_nat_target): New.
7842         (arm_fbsd_fetch_inferior_registers)
7843         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
7844         (_initialize_arm_fbsd_nat): Refactor as methods of
7845         arm_fbsd_nat_target.
7846         (_initialize_arm_fbsd_nat): Adjust to C++ification.
7847         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
7848         (the_arm_netbsd_nat_target): New.
7849         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
7850         arm_netbsd_nat_target.
7851         (_initialize_arm_netbsd_nat): Adjust to C++ification.
7852         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
7853         (the_hppa_nbsd_nat_target): New.
7854         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
7855         hppa_nbsd_nat_target methods.
7856         (_initialize_hppanbsd_nat): Adjust to C++ification.
7857         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
7858         (the_hppa_obsd_nat_target): New.
7859         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
7860         methods of hppa_obsd_nat_target.
7861         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
7862         add_target.
7863         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
7864         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
7865         add_target.
7866         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
7867         (_initialize_i386obsd_nat): Use add_target.
7868         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
7869         (the_m68k_bsd_nat_target): New.
7870         (m68kbsd_fetch_inferior_registers)
7871         (m68kbsd_store_inferior_registers): Refactor as methods of
7872         m68k_bsd_nat_target.
7873         (_initialize_m68kbsd_nat): Adjust to C++ification.
7874         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
7875         (the_mips_fbsd_nat_target): New.
7876         (mips_fbsd_fetch_inferior_registers)
7877         (mips_fbsd_store_inferior_registers): Refactor as methods of
7878         mips_fbsd_nat_target.
7879         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
7880         add_target.
7881         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
7882         (the_mips_nbsd_nat_target): New.
7883         (mipsnbsd_fetch_inferior_registers)
7884         (mipsnbsd_store_inferior_registers): Refactor as methods of
7885         mips_nbsd_nat_target.
7886         (_initialize_mipsnbsd_nat): Adjust to C++ification.
7887         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
7888         (the_mips64_obsd_nat_target): New.
7889         (mips64obsd_fetch_inferior_registers)
7890         (mips64obsd_store_inferior_registers): Refactor as methods of
7891         mips64_obsd_nat_target.
7892         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
7893         add_target.
7894         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
7895         nbsd_nat_target.
7896         * nbsd-nat.h: Include "inf-ptrace.h".
7897         (nbsd_nat_target): New class.
7898         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
7899         (obsd_wait): Refactor as methods of obsd_nat_target.
7900         (obsd_add_target): Delete.
7901         * obsd-nat.h: Include "inf-ptrace.h".
7902         (obsd_nat_target): New class.
7903         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
7904         (the_ppc_fbsd_nat_target): New.
7905         (ppcfbsd_fetch_inferior_registers)
7906         (ppcfbsd_store_inferior_registers): Refactor as methods of
7907         ppc_fbsd_nat_target.
7908         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
7909         add_target.
7910         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
7911         (the_ppc_nbsd_nat_target): New.
7912         (ppcnbsd_fetch_inferior_registers)
7913         (ppcnbsd_store_inferior_registers): Refactor as methods of
7914         ppc_nbsd_nat_target.
7915         (_initialize_ppcnbsd_nat): Adjust to C++ification.
7916         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
7917         (the_ppc_obsd_nat_target): New.
7918         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
7919         methods of ppc_obsd_nat_target.
7920         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
7921         add_target.
7922         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
7923         (the_sh_nbsd_nat_target): New.
7924         (shnbsd_fetch_inferior_registers)
7925         (shnbsd_store_inferior_registers): Refactor as methods of
7926         sh_nbsd_nat_target.
7927         (_initialize_shnbsd_nat): Adjust to C++ification.
7928         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
7929         (inf_ptrace_xfer_partial): Delete.
7930         (sparc_xfer_partial, sparc_target): Delete.
7931         * sparc-nat.h (sparc_fetch_inferior_registers)
7932         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
7933         (sparc_target): Delete function declaration.
7934         (sparc_target): New template class.
7935         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
7936         (_initialize_sparcnbsd_nat): Adjust to C++ification.
7937         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
7938         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
7939         add_target.
7940         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
7941         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
7942         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
7943         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
7944         add_target.
7945         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
7946         (the_vax_bsd_nat_target): New.
7947         (vaxbsd_fetch_inferior_registers)
7948         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
7949         methods.
7950         (_initialize_vaxbsd_nat): Adjust to C++ification.
7951
7952         * bsd-kvm.c (bsd_kvm_target): New class.
7953         (bsd_kvm_ops): Now a bsd_kvm_target.
7954         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
7955         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
7956         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
7957         bsd_kvm_target.
7958         (bsd_kvm_return_one): Delete.
7959         (bsd_kvm_add_target): Adjust to C++ification.
7960
7961         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
7962         (nto_procfs_target_procfs): New classes.
7963         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
7964         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
7965         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
7966         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
7967         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
7968         (procfs_remove_hw_breakpoint, procfs_resume)
7969         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
7970         (procfs_kill_inferior, procfs_store_registers)
7971         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
7972         as methods of nto_procfs_target.
7973         (nto_procfs_ops): Now an nto_procfs_target_procfs.
7974         (nto_native_ops): Delete.
7975         (procfs_open, procfs_native_open): Delete.
7976         (nto_native_ops): Now an nto_procfs_target_native.
7977         (init_procfs_targets): Adjust to C++ification.
7978         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
7979         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
7980         Refactor as methods of nto_procfs_target.
7981
7982         * go32-nat.c (go32_nat_target): New class.
7983         (the_go32_nat_target): New.
7984         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
7985         (go32_store_registers, go32_xfer_partial, go32_files_info)
7986         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
7987         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
7988         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
7989         (go32_pid_to_str): Refactor as methods of go32_nat_target.
7990         (go32_target): Delete.
7991         (_initialize_go32_nat): Adjust to C++ification.
7992
7993         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
7994         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
7995         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
7996         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
7997         gnu_nat_target.
7998         (gnu_target): Delete.
7999         * gnu-nat.h (gnu_target): Delete.
8000         (gnu_nat_target): New class.
8001         * i386-gnu-nat.c (gnu_base_target): New.
8002         (i386_gnu_nat_target): New class.
8003         (the_i386_gnu_nat_target): New.
8004         (_initialize_i386gnu_nat): Adjust to C++ification.
8005
8006 2018-05-02  Pedro Alves  <palves@redhat.com>
8007
8008         * bfd-target.c (target_bfd_xclose): Rename to ...
8009         (target_bfd_close): ... this.
8010         (target_bfd_reopen): Adjust.
8011         * target.c (target_close): Remove references to to_xclose.
8012         * target.h (target_ops::to_xclose): Delete.
8013         (target_ops::to_close): Update comments.
8014
8015 2018-05-02  Pedro Alves  <palves@redhat.com>
8016
8017         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
8018         "linux-nat.h".
8019         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
8020         * inf-ptrace.c (inf_ptrace_register_u_offset)
8021         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
8022         (inf_ptrace_store_register, inf_ptrace_store_registers)
8023         (inf_ptrace_trad_target): Move to ...
8024         * linux-nat-trad.c: ... this new file.
8025         * linux-nat-trad.h: New file.
8026         * linux-nat.c (linux_target_install_ops): Make extern.
8027         (linux_trad_target): Delete.
8028         * linux-nat.h (linux_trad_target): Delete declaration.
8029         (linux_target_install_ops): Declare.
8030         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
8031         "linux-nat.h".
8032
8033 2018-05-02  Pedro Alves  <palves@redhat.com>
8034
8035         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
8036         procfs_target/add_target here.
8037         * procfs.c (procfs_target): Make static.
8038         (_initialize_procfs): Call add_target here.
8039         * procfs.h (struct target_ops): Remove forward declaration.
8040         (procfs_target): Remove declaration.
8041         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
8042
8043 2018-05-02  Pedro Alves  <palves@redhat.com>
8044
8045         * procfs.c (procfs_stopped_by_watchpoint)
8046         (procfs_insert_watchpoint, procfs_remove_watchpoint)
8047         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
8048         Forward declare.
8049         (procfs_use_watchpoints): Delete, move contents...
8050         (procfs_target): ... here.
8051         * procfs.h (procfs_use_watchpoints): Delete declaration.
8052         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
8053         procfs_use_watchpoints.
8054         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
8055         procfs_use_watchpoints.
8056
8057 2018-05-02  Tom Tromey  <tom@tromey.com>
8058
8059         PR python/20084:
8060         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
8061         and var_zuinteger_unlimited.
8062         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
8063         and PARAM_ZUINTEGER_UNLIMITED.
8064         (set_parameter_value): Handle var_zuinteger and
8065         var_zuinteger_unlimited.
8066         (add_setshow_generic): Likewise.
8067         (parmpy_init): Likewise.
8068
8069 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
8070
8071         PR rust/23124
8072         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
8073         pointer is not null before dereferencing it.
8074
8075 2018-04-30  Tom Tromey  <tom@tromey.com>
8076
8077         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
8078         is_mi_like_p.
8079
8080 2018-04-30  Tom Tromey  <tom@tromey.com>
8081
8082         * breakpoint.c (mention): Remove use of is_mi_like_p.
8083         (print_mention_ranged_breakpoint): Likewise.
8084         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
8085         of is_mi_like_p.
8086
8087 2018-04-30  Tom Tromey  <tom@tromey.com>
8088
8089         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
8090
8091 2018-04-30  Tom Tromey  <tom@tromey.com>
8092
8093         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
8094         (info_spu_event_command): Remove some uses of is_mi_like_p.
8095
8096 2018-04-30  Tom Tromey  <tom@tromey.com>
8097
8098         * python/py-framefilter.c (py_print_single_arg)
8099         (enumerate_locals, py_print_args, py_print_frame): Remove some
8100         uses of is_mi_like_p.
8101
8102 2018-04-30  Tom Tromey  <tom@tromey.com>
8103
8104         * ui-out.c: Update.
8105         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
8106         * ui-out.h (ui_out::is_mi_like_p): Now const.
8107         (ui_out::do_is_mi_like_p): Now const.
8108         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
8109
8110 2018-04-30  Tom Tromey  <tom@tromey.com>
8111
8112         * varobj.c (varobj_set_visualizer): Use new_reference.
8113         * python/python.c (gdbpy_decode_line): Use new_reference.
8114         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
8115         new_reference.
8116
8117 2018-04-30  Tom Tromey  <tom@tromey.com>
8118
8119         * varobj.c (install_new_value): Use new_reference.
8120         * value.h (value_incref): Return void.  Swap intro comment with
8121         value_decref.
8122         * value.c (set_value_parent): Use new_reference.
8123         (value_incref): Return void.  Update intro comment.
8124         (release_value): Use new_reference.
8125         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
8126
8127 2018-04-30  Tom Tromey  <tom@tromey.com>
8128
8129         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
8130         * gdb_bfd.h (new_bfd_ref): Remove.
8131         (gdb_bfd_open): Update comment.
8132         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
8133         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
8134         (gdb_bfd_fdopenr): Use new_reference.
8135         * exec.c (exec_file_attach): Use new_reference.
8136
8137 2018-04-30  Tom Tromey  <tom@tromey.com>
8138
8139         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
8140         method.
8141
8142 2018-04-30  Tom Tromey  <tom@tromey.com>
8143
8144         * jit.c (jit_read_code_entry): Use type_align.
8145         * i386-tdep.c (i386_gdbarch_init): Don't call
8146         set_gdbarch_long_long_align_bit.
8147         * gdbarch.sh: Remove long_long_align_bit.
8148         * gdbarch.c, gdbarch.h: Rebuild.
8149         * arc-tdep.c (arc_type_align): New function.
8150         (arc_gdbarch_init): Use arc_type_align.  Don't call
8151         set_gdbarch_long_long_align_bit.
8152
8153 2018-04-30  Tom Tromey  <tom@tromey.com>
8154
8155         * rust-lang.c (rust_type_alignment): Remove.
8156         (rust_composite_type): Use type_align.
8157
8158 2018-04-30  Tom Tromey  <tom@tromey.com>
8159
8160         * NEWS: Mention Type.align.
8161         * python/py-type.c (typy_get_alignof): New function.
8162         (type_object_getset): Add "alignof".
8163
8164 2018-04-30  Tom Tromey  <tom@tromey.com>
8165
8166         PR exp/17095:
8167         * NEWS: Update.
8168         * std-operator.def (UNOP_ALIGNOF): New operator.
8169         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
8170         New.
8171         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
8172         * c-lang.c (c_op_print_tab): Add alignof.
8173         * c-exp.y (ALIGNOF): New token.
8174         (exp): Add "ALIGNOF" production.
8175         (ident_tokens): Add _Alignof and alignof.
8176
8177 2018-04-30  Tom Tromey  <tom@tromey.com>
8178
8179         * i386-tdep.c (i386_type_align): New function.
8180         (i386_gdbarch_init): Update.
8181         * gdbarch.sh (type_align): New method.
8182         * gdbarch.c, gdbarch.h: Rebuild.
8183         * arch-utils.h (default_type_align): Declare.
8184         * arch-utils.c (default_type_align): New function.
8185         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
8186         (struct type) <align_log2>: New field.
8187         <instance_flags>: Now a bitfield.
8188         (TYPE_RAW_ALIGN): New macro.
8189         (type_align, type_raw_align, set_type_align): Declare.
8190         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
8191         functions.
8192         * dwarf2read.c (quirk_rust_enum): Set type alignment.
8193         (get_alignment, maybe_set_alignment): New functions.
8194         (read_structure_type, read_enumeration_type, read_array_type)
8195         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
8196         (read_subrange_type, read_base_type): Set type alignment.
8197
8198 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
8199
8200         * dwarf2read.c (read_index_from_section): Use bool.
8201
8202 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
8203
8204         PR gdb/22950
8205         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
8206         with #ifdef.
8207
8208 2018-04-29  John Reiser  <jreiser@BitWagon.com>
8209
8210         PR build/22873
8211         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
8212         last step, and do it atomically.
8213
8214 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
8215
8216         * compile/compile-c-types.c (convert_int, convert_float):
8217         Update for C FE v1.
8218
8219 2018-04-27  Tom Tromey  <tom@tromey.com>
8220
8221         PR rust/22545:
8222         * rust-lang.c (rust_inclusive_range_type_p): New function.
8223         (rust_range): Handle inclusive ranges.
8224         (rust_compute_range): Likewise.
8225         * rust-exp.y (struct rust_op) <inclusive>: New field.
8226         (DOTDOTEQ): New constant.
8227         (range_expr): Add "..=" productions.
8228         (operator_tokens): Add "..=" token.
8229         (ast_range): Add "inclusive" parameter.
8230         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
8231         ranges.
8232         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
8233         bounds values.
8234         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
8235         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
8236         Update comments.
8237         * expprint.c (print_subexp_standard): Handle new bounds values.
8238         (dump_subexp_body_standard): Likewise.
8239
8240 2018-04-27  Tom Tromey  <tom@tromey.com>
8241
8242         * configure: Rebuild.
8243         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
8244         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
8245         "OVERRIDE".
8246         (class symbol_needs_eval_context): Likewise.
8247         * dwarf2read.c (mock_mapped_index::symbol_name_count)
8248         (mock_mapped_index::symbol_name_at): Use "override".  Remove
8249         "virtual".
8250         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
8251         "override".
8252         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
8253         * aarch64-tdep.c (instruction_reader::read): Use "override".
8254         (instruction_reader_test::read): Likewise.
8255         * arm-tdep.c (instruction_reader::read): Use "override".
8256         (instruction_reader_thumb::read): Likewise.
8257
8258 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
8259
8260         PR remote/9665
8261         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
8262         instead of remote_send.
8263         (remote_send): Remove.
8264
8265 2018-04-26  Pedro Alves  <palves@redhat.com>
8266
8267         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
8268         find_function_start_sal instead of find_pc_line.
8269
8270 2018-04-26  Pedro Alves  <palves@redhat.com>
8271
8272         * breakpoint.c (set_breakpoint_location_function): Handle
8273         mst_data_gnu_ifunc.
8274         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
8275         * elfread.c (elf_symtab_read): Give data symbols with
8276         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
8277         (elf_rel_plt_read): Update comment.
8278         * linespec.c (convert_linespec_to_sals): Handle
8279         mst_data_gnu_ifunc.
8280         (minsym_found): Handle mst_data_gnu_ifunc.
8281         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
8282         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
8283         * parse.c (find_minsym_type_and_address): Handle
8284         mst_data_gnu_ifunc.
8285         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
8286         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
8287         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
8288         comment.
8289         <mst_data_gnu_ifunc>: New enumerator.
8290
8291 2018-04-26  Pedro Alves  <palves@redhat.com>
8292
8293         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
8294         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
8295         'want_trampoline' parameter by a lookup_msym_prefer parameter.
8296         Handle it.
8297         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
8298         (lookup_minimal_symbol_by_pc): Adjust.
8299         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
8300         (lookup_solib_trampoline_symbol_by_pc): Adjust.
8301         * minsyms.h (lookup_msym_prefer): New enum.
8302         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
8303         parameter by a lookup_msym_prefer parameter.
8304
8305 2018-04-26  Pedro Alves  <palves@redhat.com>
8306
8307         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
8308         ends in "@plt" instead of looking at the symbol's section.
8309
8310 2018-04-26  Pedro Alves  <palves@redhat.com>
8311
8312         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
8313         all references.
8314         (find_pc_partial_function_gnu_ifunc): Rename to ...
8315         (find_pc_partial_function): ... this, and remove references to
8316         'is_gnu_ifunc_p'.
8317         (find_pc_partial_function): Delete old implementation.
8318         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
8319
8320 2018-04-26  Pedro Alves  <palves@redhat.com>
8321
8322         * linespec.c (struct bound_minimal_symbol_search_key): New.
8323         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
8324         skip first line if we found a GNU ifunc minimal symbol by name.
8325         (compare_msymbols): Change parameters to work with a destructured
8326         lhs minsym.
8327         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
8328         functions.
8329
8330 2018-04-26  Pedro Alves  <palves@redhat.com>
8331
8332         * breakpoint.c (set_breakpoint_location_function): Don't resolve
8333         ifunc targets here.  Instead, if we have an ifunc minsym, use its
8334         address/name.
8335         (add_location_to_breakpoint): Store the minsym and the objfile in
8336         the breakpoint location.
8337         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
8338         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
8339         Record the minsym in the sal.
8340         * symtab.h (symtab_and_line) <msymbol>: New field.
8341
8342 2018-04-26  Pedro Alves  <palves@redhat.com>
8343
8344         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
8345         unless we actually resolved the ifunc.
8346
8347 2018-04-26  Pedro Alves  <palves@redhat.com>
8348
8349         * c-exp.y (variable production): Prefer ifunc minsyms over
8350         regular function symbols.
8351         * symtab.c (find_gnu_ifunc): New function.
8352         * minsyms.h (lookup_msym_prefer): New enum.
8353         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
8354         parameter by a lookup_msym_prefer parameter.
8355         * symtab.h (find_gnu_ifunc): New declaration.
8356
8357 2018-04-26  Pedro Alves  <palves@redhat.com>
8358
8359         * blockframe.c (find_gnu_ifunc_target_type): New function.
8360         (find_function_type): New.
8361         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
8362         return a value with a memory address.
8363         (eval_call): For calls to GNU ifunc functions, try to find the
8364         type of the target function from the type that the resolver
8365         returns.
8366         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
8367         symbols.
8368         * infcall.c (find_function_return_type): Delete.
8369         (find_function_addr): Add 'function_type' parameter.  For calls to
8370         GNU ifunc functions, try to find the type of the target function
8371         from the type that the resolver returns, and return it via
8372         FUNCTION_TYPE.
8373         (call_function_by_hand_dummy): Adjust to use the function type
8374         returned by find_function_addr.
8375         (find_function_addr): Add 'function_type' parameter and move
8376         description here.
8377         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
8378         declarations.
8379
8380 2018-04-26  Pedro Alves  <palves@redhat.com>
8381
8382         * c-exp.y (variable production): Skip finding an alias for ifunc
8383         symbols.
8384
8385 2018-04-26  Pedro Alves  <palves@redhat.com>
8386
8387         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
8388
8389 2018-04-25  Pedro Alves  <palves@redhat.com>
8390
8391         * infcmd.c (kill_command): Print the pid as string, not the whole
8392         thread's ptid.  Add comment.  s/has been killed/killed/ in output
8393         message.
8394         * remote.c (remote_detach_1): Print the pid as string, not the
8395         whole thread's ptid.
8396
8397 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
8398             Sergio Durigan Junior  <sergiodj@redhat.com>
8399             Pedro Alves  <palves@redhat.com>
8400
8401         * infcmd.c (kill_command): Print message when inferior has
8402         been killed.
8403         * inferior.c (print_inferior_events): Remove 'static'.  Set as
8404         '1'.
8405         (add_inferior): Improve message printed when
8406         'print_inferior_events' is on.
8407         (exit_inferior): Remove message printed when
8408         'print_inferior_events' is on.
8409         (detach_inferior): Improve message printed when
8410         'print_inferior_events' is on.
8411         (initialize_inferiors): Use 'add_inferior_silent' to set
8412         'current_inferior_'.
8413         * inferior.h (print_inferior_events): Declare here as
8414         'extern'.
8415         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
8416         '[Detaching...]' messages when 'print_inferior_events' is on.
8417         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
8418         as prefix/suffix for messages.  Remove periods.  Fix erroneous
8419         'Detaching after fork from child...', replace it by '... from
8420         parent...'.
8421         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
8422         prefix/suffix when printing 'Detaching...' messages.  Print
8423         them when 'print_inferior_events' is on.
8424         * remote.c (remote_detach_1): Print message when detaching
8425         from inferior and '!is_fork_parent'.
8426
8427 2018-04-24  Tom Tromey  <tom@tromey.com>
8428
8429         * cli-out.h: Reindent.
8430
8431 2018-04-24  Tom Tromey  <tom@tromey.com>
8432
8433         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
8434         (cli_ui_out::do_field_string): Use fputs_filtered.
8435         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
8436
8437 2018-04-23  Tom Tromey  <tom@tromey.com>
8438
8439         * guile/scm-frame.c (gdbscm_frame_read_var): Use
8440         gdb::unique_xmalloc_ptr.
8441
8442 2018-04-23  Tom Tromey  <tom@tromey.com>
8443
8444         * configure: Rebuild.
8445
8446 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
8447
8448         PR gdb/23095
8449         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
8450         prepare_for_testing.  Set normal_bp to r_debug_state if target
8451         is bsd.
8452
8453 2018-04-21  Pedro Alves  <palves@redhat.com>
8454             Rajendra SY  <rajendra.sy@gmail.com>
8455
8456         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
8457         * remote.c (extended_remote_attach): In all-stop mode, mark the
8458         thread as executing.
8459
8460 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8461
8462         * thread.c (thread_apply_all_command): Fix comment.
8463         (thread_command): Fix comment.
8464
8465 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
8466
8467         * common/tdesc.h (tdesc_create_feature): Remove xml filename
8468         parameter.
8469         * features/aarch64-core.c (create_feature_aarch64_core):
8470         Regenerate.
8471         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
8472         Likewise.
8473         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
8474         Likewise.
8475         * features/i386/32bit-avx512.c
8476         (create_feature_i386_32bit_avx512): Likewise.
8477         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
8478         Likewise.
8479         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
8480         Likewise.
8481         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
8482         Likewise.
8483         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
8484         Likewise.
8485         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
8486         Likewise.
8487         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
8488         Likewise.
8489         * features/i386/64bit-avx512.c
8490         (create_feature_i386_64bit_avx512): Likewise.
8491         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
8492         Likewise.
8493         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
8494         Likewise.
8495         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
8496         Likewise.
8497         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
8498         Likewise.
8499         * features/i386/64bit-segments.c
8500         (create_feature_i386_64bit_segments): Likewise.
8501         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
8502         Likewise.
8503         * features/i386/x32-core.c
8504         (create_feature_i386_x32_core): Likewise.
8505         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
8506         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
8507         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
8508         * target-descriptions.c: In generated code, don't pass xml
8509         filename.
8510
8511 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
8512
8513         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
8514         (print_xml_feature::visit_post): Likewise.
8515         (print_xml_feature::visit): Likewise.
8516         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
8517         (print_xml_feature): Add new class.
8518         * regformats/regdat.sh: Null xmltarget on feature targets.
8519         * target-descriptions.c (struct target_desc): Add xmltarget.
8520         (maintenance_check_tdesc_xml_convert): Add unittest function.
8521         (tdesc_get_features_xml): Add function to get xml.
8522         (maintenance_check_xml_descriptions): Test xml generation.
8523         * xml-tdesc.c (string_read_description_xml): Add function.
8524         * xml-tdesc.h (string_read_description_xml): Add declaration.
8525
8526 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
8527
8528         * features/Makefile: Add feature marker to targets with new style
8529         target descriptions.
8530         * regformats/aarch64.dat: Regenerate.
8531         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
8532         * regformats/i386/amd64-avx-linux.dat: Likewise.
8533         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
8534         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
8535         * regformats/i386/amd64-linux.dat: Likewise.
8536         * regformats/i386/amd64-mpx-linux.dat: Likewise.
8537         * regformats/i386/amd64.dat: Likewise.
8538         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
8539         * regformats/i386/i386-avx-linux.dat: Likewise.
8540         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
8541         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
8542         * regformats/i386/i386-linux.dat: Likewise.
8543         * regformats/i386/i386-mmx-linux.dat: Likewise.
8544         * regformats/i386/i386-mpx-linux.dat: Likewise.
8545         * regformats/i386/i386.dat: Likewise.
8546         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
8547         * regformats/i386/x32-avx-linux.dat: Likewise.
8548         * regformats/i386/x32-linux.dat: Likewise.
8549         * regformats/tic6x-c62x-linux.dat: Likewise.
8550         * regformats/tic6x-c64x-linux.dat: Likewise.
8551         * regformats/tic6x-c64xp-linux.dat: Likewise.
8552         * regformats/regdat.sh: Parse feature marker.
8553
8554 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
8555
8556         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
8557         (tdesc_osabi_name): Likewise.
8558         * target-descriptions.c (tdesc_architecture_name): Add new
8559         function.
8560         (tdesc_osabi_name): Likewise.
8561
8562 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
8563
8564         * common/tdesc.c (tdesc_predefined_type): Move to here.
8565         (tdesc_named_type): Likewise.
8566         (tdesc_create_vector): Likewise.
8567         (tdesc_create_struct): Likewise.
8568         (tdesc_set_struct_size): Likewise.
8569         (tdesc_create_union): Likewise.
8570         (tdesc_create_flags): Likewise.
8571         (tdesc_create_enum): Likewise.
8572         (tdesc_add_field): Likewise.
8573         (tdesc_add_typed_bitfield): Likewise.
8574         (tdesc_add_bitfield): Likewise.
8575         (tdesc_add_flag): Likewise.
8576         (tdesc_add_enum_value): Likewise.
8577         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
8578         (struct tdesc_type_vector): Likewise.
8579         (struct tdesc_type_field): Likewise.
8580         (struct tdesc_type_with_fields): Likewise.
8581         (tdesc_create_enum): Add declaration.
8582         (tdesc_add_typed_bitfield): Likewise.
8583         (tdesc_add_enum_value): Likewise.
8584         * target-descriptions.c (tdesc_type_field): Move from here.
8585         (tdesc_type_builtin): Likewise.
8586         (tdesc_type_vector): Likewise.
8587         (tdesc_type_with_fields): Likewise.
8588         (tdesc_predefined_types): Likewise.
8589         (tdesc_named_type): Likewise.
8590         (tdesc_create_vector): Likewise.
8591         (tdesc_create_struct): Likewise.
8592         (tdesc_set_struct_size): Likewise.
8593         (tdesc_create_union): Likewise.
8594         (tdesc_create_flags): Likewise.
8595         (tdesc_create_enum): Likewise.
8596         (tdesc_add_field): Likewise.
8597         (tdesc_add_typed_bitfield): Likewise.
8598         (tdesc_add_bitfield): Likewise.
8599         (tdesc_add_flag): Likewise.
8600         (tdesc_add_enum_value): Likewise.
8601         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
8602         (tdesc_add_typed_bitfield): Likewise.
8603         (tdesc_add_enum_value): Likewise.
8604
8605 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
8606
8607         * common/tdesc.c (tdesc_feature::accept): Move to here.
8608         (tdesc_feature::operator==): Likewise.
8609         (tdesc_create_reg): Likewise.
8610         * common/tdesc.h (tdesc_type_kind): Likewise.
8611         (struct tdesc_type): Likewise.
8612         (struct tdesc_feature): Likewise.
8613         * regformats/regdat.sh: Create a feature.
8614         * target-descriptions.c (tdesc_type_kind): Move from here.
8615         (tdesc_type): Likewise.
8616         (tdesc_type_up): Likewise.
8617         (tdesc_feature): Likewise.
8618         (tdesc_create_reg): Likewise.
8619
8620 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
8621
8622         * Makefile.in: Add arch/tdesc.c
8623         * common/tdesc.c: New file.
8624         * common/tdesc.h (tdesc_element_visitor): Move to here.
8625         (tdesc_element): Likewise.
8626         (tdesc_reg): Likewise.
8627         (tdesc_reg_up): Likewise.
8628         * regformats/regdef.h (reg): Add offset to constructors.
8629         * target-descriptions.c (tdesc_element_visitor): Move from here.
8630         (tdesc_element): Likewise.
8631         (tdesc_reg): Likewise.
8632         (tdesc_reg_up): Likewise.
8633
8634 2018-04-17  Tom Tromey  <tom@tromey.com>
8635
8636         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
8637         discriminant field.
8638
8639 2018-04-17  Tom Tromey  <tom@tromey.com>
8640
8641         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
8642
8643 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
8644
8645         * symtab.c (print_symbol_info): Skip printing filename and line
8646         number when `last' is NULL.
8647         (symtab_symbol_info): Use empty string instead of NULL for first
8648         invocation of print_symbol_info.
8649         (rbreak_command): Pass NULL to `last' parameter of
8650         print_symbol_info.
8651
8652 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
8653
8654         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
8655         instead of nullptr.
8656
8657 2018-04-16  Pedro Alves  <palves@redhat.com>
8658
8659         * MAINTAINERS (sh): Remove.
8660         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
8661         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
8662         (ALLDEPFILES): Remove sh64-tdep.c.
8663         * NEWS: Mentions that support for SH-5/SH64 is removed.
8664         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
8665         (sh*-*-openbsd*): Ditto.
8666         (sh64-*-elf*): Remove.
8667         (sh*): Remove.
8668         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
8669         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
8670         * sh-tdep.c: No longer include "sh64-tdep.h".
8671         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
8672         * sh64-tdep.c, sh64-tdep.h: Remove files.
8673
8674 2018-04-16  Pedro Alves  <palves@redhat.com>
8675
8676         * MAINTAINERS: Remove m88k.
8677         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
8678         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
8679         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
8680         * NEWS: Mention that support for m88k was removed.
8681         * configure.host (m88*-*-*): Remove support.
8682         * configure.nat (m88k-*-*): Remove support.
8683         * configure.tgt (m88*-*-openbsd*): Remove.
8684         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
8685
8686 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
8687
8688         * configure.tgt (x86_tobjs): New variable.
8689         (amd64_tobjs, i386_tobjs): Use it.
8690
8691 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
8692
8693         * symtab.c (print_symbol_info): Precede the symbol definition by
8694         the line number when available.
8695         * NEWS: Advertise this enhancement.
8696
8697 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
8698
8699         * NEWS (New options): announce set/show record btrace cpu.
8700         * btrace.c: Include record-btrace.h.
8701         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
8702         the vendor is unknown.
8703         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
8704         Maybe overwrite the btrace configuration's cpu.
8705         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
8706         (btrace_fetch): Add cpu parameter.  Update callers.
8707         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
8708         Maybe overwrite the btrace configuration's cpu.  Skip enabling
8709         errata workarounds if the vendor is unknown.
8710         * python/py-record-btrace.c: Include record-btrace.h.
8711         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
8712         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
8713         * record-btrace.c (record_btrace_cpu_state_kind): New.
8714         (record_btrace_cpu): New.
8715         (set_record_btrace_cpu_cmdlist): New.
8716         (record_btrace_get_cpu): New.
8717         (require_btrace_thread, record_btrace_info)
8718         (record_btrace_resume_thread): Call record_btrace_get_cpu.
8719         (cmd_set_record_btrace_cpu_none): New.
8720         (cmd_set_record_btrace_cpu_auto): New.
8721         (cmd_set_record_btrace_cpu): New.
8722         (cmd_show_record_btrace_cpu): New.
8723         (_initialize_record_btrace): Initialize set/show record btrace cpu
8724         commands.
8725         * record-btrace.h (record_btrace_get_cpu): New.
8726
8727 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
8728
8729         * record.c (set_record_command): Fix typo in message.
8730
8731 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
8732
8733         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
8734
8735 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
8736
8737         * infrun.c (process_event_stop_test): Call
8738         gdbarch_in_indirect_branch_thunk.
8739         * gdbarch.sh (in_indirect_branch_thunk): New.
8740         * gdbarch.c: Regenerated.
8741         * gdbarch.h: Regenerated.
8742         * x86-tdep.h: New.
8743         * x86-tdep.c: New.
8744         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
8745         (HFILES_NO_SRCDIR): Add x86-tdep.h.
8746         (ALLDEPFILES): Add x86-tdep.c.
8747         * arch-utils.h (default_in_indirect_branch_thunk): New.
8748         * arch-utils.c (default_in_indirect_branch_thunk): New.
8749         * i386-tdep: Include x86-tdep.h.
8750         (i386_in_indirect_branch_thunk): New.
8751         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
8752         function.
8753         * amd64-tdep: Include x86-tdep.h.
8754         (amd64_in_indirect_branch_thunk): New.
8755         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
8756
8757 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
8758
8759         PR gdb/23053
8760         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
8761         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
8762         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
8763         regression.
8764
8765 2018-04-12  Tom Tromey  <tom@tromey.com>
8766
8767         * rust-lang.c (rust_print_struct_def): Remove univariant code.
8768         (rust_evaluate_subexp): Likewise.
8769
8770 2018-04-12  Pedro Alves  <palves@redhat.com>
8771
8772         * procfs.c (procfs_detach): Make forward declaration's prototype
8773         match definition's protototype.
8774         (proc_get_LDT_entry): Remove stale do_cleanups call.
8775
8776 2018-04-12  Pedro Alves  <palves@redhat.com>
8777
8778         * target.h (target_ops::to_has_exited): Delete.
8779         (target_has_exited): Delete.
8780         * target-delegates.c: Regenerate.
8781
8782 2018-04-11  Pedro Alves  <palves@redhat.com>
8783
8784         * target.c (fileio_fh_t::t): Add comment.
8785         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
8786         (target_fileio_close): Handle a NULL target.
8787         (invalidate_fileio_fh): New.
8788         (target_close): Call it.
8789         * remote.c (remote_hostio_send_command): No longer check whether
8790         remote_desc is open.
8791
8792 2018-04-11  Pedro Alves  <palves@redhat.com>
8793
8794         * target.c (fileio_fh_t): Make it a named struct instead of a
8795         typedef.
8796         (fileio_fh_t::is_closed): New method.
8797         (DEF_VEC_O (fileio_fh_t)): Remove.
8798         (fileio_fhandles): Now a std::vector.
8799         (is_closed_fileio_fh): Delete.
8800         (acquire_fileio_fd): Adjust.  Rename parameters.
8801         (release_fileio_fd): Adjust.
8802         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
8803         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
8804         (target_fileio_close): Adjust.
8805
8806 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
8807
8808         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
8809         index.
8810
8811 2018-04-10  Pedro Alves  <palves@redhat.com>
8812
8813         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
8814         (scoped_finish_thread_state): New class.
8815         * infcmd.c (run_command_1): Use it instead of finish_thread_state
8816         cleanup.
8817         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
8818         (fetch_inferior_event, normal_stop): Likewise.
8819         * thread.c (finish_thread_state_cleanup): Delete.
8820
8821 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
8822             Pedro Alves  <palves@redhat.com>
8823
8824         * value.c: Include "selftest.h" and "common/array-view.h".
8825         (struct range) <operator ==>: New.
8826         (test_ranges_contain): New.
8827         (check_ranges_vector): New.
8828         (test_insert_into_bit_range_vector): New.
8829         (_initialize_values): Register selftests.
8830         * common/array-view.h (operator==, operator!=): New.
8831
8832 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
8833
8834         * common/gdb_vecs.h (unordered_remove): Add overload that takes
8835         an iterator.
8836         * inline-frame.c: Include <algorithm>.
8837         (struct inline_state): Add constructor.
8838         (inline_state_s): Remove.
8839         (DEF_VEC_O(inline_state_s)): Remove.
8840         (inline_states): Change type to std::vector.
8841         (find_inline_frame_state): Adjust to std::vector.
8842         (allocate_inline_frame_state): Remove.
8843         (clear_inline_frame_state): Adjust to std::vector.
8844         (skip_inline_frames): Adjust to std::vector.
8845
8846 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
8847
8848         * tracepoint.h (struct trace_state_variable): Add constructor.
8849         <name>: Change type to std::string.
8850         * tracepoint.c (tsv_s): Remove.
8851         (DEF_VEC_O(tsv_s)): Remove.
8852         (tvariables): Change to std::vector.
8853         (create_trace_state_variable): Adjust to std::vector.
8854         (find_trace_state_variable): Likewise.
8855         (find_trace_state_variable_by_number): Likewise.
8856         (delete_trace_state_variable): Likewise.
8857         (trace_variable_command): Adjust to std::string.
8858         (delete_trace_variable_command): Likewise.
8859         (tvariables_info_1): Adjust to std::vector.
8860         (save_trace_state_variables): Likewise.
8861         (start_tracing): Likewise.
8862         (merge_uploaded_trace_state_variables): Adjust to std::vector
8863         and std::string.
8864         * target.h (struct target_ops)
8865         <to_download_trace_state_variable>: Pass reference to
8866         trace_state_variable.
8867         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
8868         * target-delegates.c: Re-generate.
8869         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
8870         (mi_tsv_deleted): Likewise.
8871         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
8872         * remote.c (remote_download_trace_state_variable): Change
8873         pointer to reference and adjust.
8874         * make-target-delegates (parse_argtypes): Handle references.
8875         (write_function_header): Likewise.
8876         (munge_type): Likewise.
8877
8878 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
8879
8880         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
8881         string_view-selftests.c.
8882         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
8883         testsuite.
8884         * unittests/basic_string_view/cons/char/1.cc: Likewise.
8885         * unittests/basic_string_view/cons/char/2.cc: Likewise.
8886         * unittests/basic_string_view/cons/char/3.cc: Likewise.
8887         * unittests/basic_string_view/element_access/char/1.cc:
8888         Likewise.
8889         * unittests/basic_string_view/element_access/char/empty.cc:
8890         Likewise.
8891         * unittests/basic_string_view/element_access/char/front_back.cc:
8892         Likewise.
8893         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
8894         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
8895         Likewise.
8896         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
8897         Likewise.
8898         * unittests/basic_string_view/modifiers/swap/char/1.cc:
8899         Likewise.
8900         * unittests/basic_string_view/operations/compare/char/1.cc:
8901         Likewise.
8902         * unittests/basic_string_view/operations/compare/char/13650.cc:
8903         Likewise.
8904         * unittests/basic_string_view/operations/copy/char/1.cc:
8905         Likewise.
8906         * unittests/basic_string_view/operations/data/char/1.cc:
8907         Likewise.
8908         * unittests/basic_string_view/operations/find/char/1.cc:
8909         Likewise.
8910         * unittests/basic_string_view/operations/find/char/2.cc:
8911         Likewise.
8912         * unittests/basic_string_view/operations/find/char/3.cc:
8913         Likewise.
8914         * unittests/basic_string_view/operations/find/char/4.cc:
8915         Likewise.
8916         * unittests/basic_string_view/operations/rfind/char/1.cc:
8917         Likewise.
8918         * unittests/basic_string_view/operations/rfind/char/2.cc:
8919         Likewise.
8920         * unittests/basic_string_view/operations/rfind/char/3.cc:
8921         Likewise.
8922         * unittests/basic_string_view/operations/substr/char/1.cc:
8923         Likewise.
8924         * unittests/basic_string_view/operators/char/2.cc: Likewise.
8925         * unittests/string_view-selftests.c: New file.
8926
8927 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
8928
8929         * unittests/basic_string_view/capacity/1.cc: New file.
8930         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
8931         * unittests/basic_string_view/cons/char/1.cc: New file.
8932         * unittests/basic_string_view/cons/char/2.cc: New file.
8933         * unittests/basic_string_view/cons/char/3.cc: New file.
8934         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
8935         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
8936         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
8937         * unittests/basic_string_view/element_access/char/1.cc: New file.
8938         * unittests/basic_string_view/element_access/char/2.cc: New file.
8939         * unittests/basic_string_view/element_access/char/empty.cc: New file.
8940         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
8941         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
8942         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
8943         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
8944         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
8945         * unittests/basic_string_view/include.cc: New file.
8946         * unittests/basic_string_view/inserters/char/1.cc: New file.
8947         * unittests/basic_string_view/inserters/char/2.cc: New file.
8948         * unittests/basic_string_view/inserters/char/3.cc: New file.
8949         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
8950         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
8951         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
8952         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
8953         * unittests/basic_string_view/literals/types.cc: New file.
8954         * unittests/basic_string_view/literals/values.cc: New file.
8955         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
8956         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
8957         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
8958         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
8959         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
8960         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
8961         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
8962         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
8963         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
8964         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
8965         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
8966         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
8967         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
8968         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
8969         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
8970         * unittests/basic_string_view/operations/data/char/1.cc: New file.
8971         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
8972         * unittests/basic_string_view/operations/find/char/1.cc: New file.
8973         * unittests/basic_string_view/operations/find/char/2.cc: New file.
8974         * unittests/basic_string_view/operations/find/char/3.cc: New file.
8975         * unittests/basic_string_view/operations/find/char/4.cc: New file.
8976         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
8977         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
8978         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
8979         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
8980         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
8981         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
8982         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
8983         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
8984         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
8985         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
8986         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
8987         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
8988         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
8989         * unittests/basic_string_view/operators/char/2.cc: New file.
8990         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
8991         * unittests/basic_string_view/range_access/char/1.cc: New file.
8992         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
8993         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
8994         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
8995         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
8996         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
8997         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
8998         * unittests/basic_string_view/requirements/typedefs.cc: New file.
8999         * unittests/basic_string_view/typedefs.cc: New file.
9000         * unittests/basic_string_view/types/1.cc: New file.
9001
9002 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
9003
9004         * common/gdb_string_view.h: Remove libstdc++ implementation
9005         details, adjust to gdb reality.
9006         * common/gdb_string_view.tcc: Likewise.
9007         * cli/cli-script.c (struct string_view): Remove.
9008         (user_args) <m_args>: Change element type to gdb::string_view.
9009         (user_args::insert_args): Adjust.
9010
9011 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
9012
9013         * common/gdb_string_view.h: New file.
9014         * common/gdb_string_view.tcc: New file.
9015
9016 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
9017
9018         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
9019         * configure: Re-generate.
9020
9021 2018-04-09  Pedro Alves  <palves@redhat.com>
9022
9023         * gdbarch.sh: Include "observable.h" instead of "observer.h".
9024         (set_target_gdbarch): Call
9025         gdb::observers::architecture_changed.notify instead of
9026         observer_notify_architecture_changed.
9027
9028 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9029
9030         * tracepoint.c (struct current_traceframe_cleanup): Remove.
9031         (do_restore_current_traceframe_cleanup): Remove.
9032         (restore_current_traceframe_cleanup_dtor): Remove.
9033         (make_cleanup_restore_current_traceframe): Remove.
9034         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
9035         New.
9036         * tracepoint.h (struct scoped_restore_current_traceframe): New.
9037         * infrun.c (fetch_inferior_event): Use
9038         scoped_restore_current_traceframe.
9039
9040 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9041
9042         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
9043         Remove.
9044         <n_allocated_type_units>: Remove.
9045         <all_type_units>: Change to std::vector.
9046         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
9047         to std::vector change.
9048         (dwarf2_per_objfile::get_cutu): Likewise.
9049         (dwarf2_per_objfile::get_tu): Likewise.
9050         (create_signatured_type_table_from_index): Likewise.
9051         (create_signatured_type_table_from_debug_names): Likewise.
9052         (dw2_symtab_iter_next): Likewise.
9053         (dw2_print_stats): Likewise.
9054         (dw2_expand_all_symtabs): Likewise.
9055         (dw2_expand_marked_cus): Likewise.
9056         (dw2_debug_names_iterator::next): Likewise.
9057         (dwarf2_initialize_objfile): Likewise.
9058         (add_signatured_type_cu_to_table): Likewise.
9059         (create_all_type_units): Likewise.
9060         (add_type_unit): Likewise.
9061         (struct tu_abbrev_offset): Add constructor.
9062         (build_type_psymtabs_1): Adjust to std::vector change.
9063         (print_tu_stats): Likewise.
9064         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
9065         (write_debug_names): Likewise.
9066
9067 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9068
9069         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
9070         Make an std::vector.
9071         <n_comp_units>: Remove.
9072         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
9073         to std::vector change.
9074         (dwarf2_per_objfile::get_cutu): Likewise.
9075         (dwarf2_per_objfile::get_cu): Likewise.
9076         (create_cus_from_index): Likewise.
9077         (create_addrmap_from_index): Likewise.
9078         (create_addrmap_from_aranges): Likewise.
9079         (dwarf2_read_index): Likewise.
9080         (dw2_find_last_source_symtab): Likewise.
9081         (dw2_map_symtabs_matching_filename): Likewise.
9082         (dw2_symtab_iter_next): Likewise.
9083         (dw2_print_stats): Likewise.
9084         (dw2_expand_all_symtabs): Likewise.
9085         (dw2_expand_symtabs_with_fullname): Likewise.
9086         (dw2_expand_marked_cus): Likewise.
9087         (dw2_map_symbol_filenames): Likewise.
9088         (create_cus_from_debug_names): Likewise.
9089         (dwarf2_read_debug_names): Likewise.
9090         (dw2_debug_names_iterator::next): Likewise.
9091         (dwarf2_initialize_objfile): Likewise.
9092         (set_partial_user): Likewise.
9093         (dwarf2_build_psymtabs_hard): Likewise.
9094         (read_comp_units_from_section): Remove arguments, adjust to
9095         std::vector change.
9096         (create_all_comp_units): Adjust to std::vector and
9097         read_comp_units_from_section changes.
9098         (dwarf2_find_containing_comp_unit): Adjust to std::vector
9099         change.
9100         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
9101         (psyms_seen_size): Likewise.
9102         (write_gdbindex): Likewise.
9103         (write_debug_names): Likewise.
9104
9105 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9106
9107         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
9108         with dwarf2_per_objfile.
9109         (create_cus_from_index): Likewise.
9110         (create_signatured_type_table_from_index): Likewise.
9111         (dwarf2_read_index): Likewise.
9112         (dwarf2_initialize_objfile): Likewise.
9113         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
9114         per_cu rather than get_dwarf2_per_objfile.
9115
9116 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9117
9118         * dwarf2read.h (struct signatured_type): Forward declare.
9119         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
9120         New methods.
9121         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
9122         (dw2_get_cutu): ...this.
9123         (dwarf2_per_objfile::get_cu): Rename from...
9124         (dw2_get_cu): ...this.
9125         (dwarf2_per_objfile::get_tu): New.
9126         (create_addrmap_from_index): Adjust.
9127         (create_addrmap_from_aranges): Adjust.
9128         (dw2_find_last_source_symtab): Adjust.
9129         (dw2_map_symtabs_matching_filename): Adjust.
9130         (dw2_symtab_iter_next): Adjust.
9131         (dw2_print_stats): Adjust.
9132         (dw2_expand_all_symtabs): Adjust.
9133         (dw2_expand_symtabs_with_fullname): Adjust.
9134         (dw2_expand_marked_cus): Adjust.
9135         (dw_expand_symtabs_matching_file_matcher): Adjust.
9136         (dw2_map_symbol_filenames): Adjust.
9137         (dw2_debug_names_iterator::next): Adjust.
9138         (dwarf2_initialize_objfile): Adjust.
9139         (set_partial_user): Adjust.
9140         (dwarf2_build_psymtabs_hard): Adjust.
9141
9142 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9143
9144         * dwarf2read.c (create_signatured_type_table_from_debug_names):
9145         Remove unused variables.
9146         (dw2_map_symtabs_matching_filename): Likewise.
9147         (dwarf2_record_block_ranges): Likewise.
9148         (dwarf2_read_addr_index): Likewise.
9149         (follow_die_offset): Likewise.
9150
9151 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9152
9153         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
9154         to symbol_file_add_main.
9155
9156 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9157
9158         PR mi/22299
9159         * mi/mi-console.c (do_fputc_async_safe): New.
9160         (mi_console_file::write_async_safe): New.
9161         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
9162         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
9163         New.
9164         * ui-file.c (ui_file::putstrn): Adjust call to
9165         fputstrn_unfiltered.
9166         * utils.c (printchar): Replace do_fputs and do_fprintf
9167         parameters by do_fputc.
9168         (fputstr_filtered): Adjust call to printchar.
9169         (fputstr_unfiltered): Likewise.
9170         (fputstrn_filtered): Likewise.
9171         (fputstrn_unfiltered): Add do_fputc parameter, pass to
9172         printchar.
9173         * utils.h (do_fputc_ftype): New typedef.
9174         (fputstrn_unfiltered): Add do_fputc parameter.
9175
9176 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9177
9178         * regformats/i386/i386-avx.dat: Remove.
9179
9180 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
9181
9182         PR gdb/22979
9183         * amd64-tdep.c (amd64_none_init_abi): New function.
9184         (amd64_x32_none_init_abi): New function.
9185         (_initialize_amd64_tdep): Register handlers for x86-64 and
9186         x64_32 with GDB_OSABI_NONE.
9187         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
9188         GDB_OSABI_NONE osabi.
9189
9190 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
9191
9192         PR gdb/22980
9193         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
9194         GDB_OSABI_NONE.
9195         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
9196         * osabi.c (gdb_osabi_names): Add "unknown" entry.
9197
9198 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
9199
9200         * common/byte-vector.h (char_vector): New type.
9201         * target.h (target_read_alloc): Return
9202         gdb::optional<byte_vector>.
9203         (target_read_stralloc): Return gdb::optional<char_vector>.
9204         (target_get_osdata): Return gdb::optional<char_vector>.
9205         * target.c (target_read_alloc_1): Templatize.  Replacement
9206         manual memory management with vector.
9207         (target_read_alloc): Change return type, adjust.
9208         (target_read_stralloc): Change return type, adjust.
9209         (target_get_osdata): Change return type, adjust.
9210         * auxv.c (struct auxv_info) <length>: Remove.
9211         <data>: Change type to gdb::optional<byte_vector>.
9212         (auxv_inferior_data_cleanup): Free auxv_info with delete.
9213         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
9214         (target_auxv_search): Adjust.
9215         (fprint_target_auxv): Adjust.
9216         * avr-tdep.c (avr_io_reg_read_command): Adjust.
9217         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
9218         (linux_make_corefile_notes): Adjust.
9219         * osdata.c (get_osdata): Adjust.
9220         * remote.c (remote_get_threads_with_qxfer): Adjust.
9221         (remote_memory_map): Adjust.
9222         (remote_traceframe_info): Adjust.
9223         (btrace_read_config): Adjust.
9224         (remote_read_btrace): Adjust.
9225         (remote_pid_to_exec_file): Adjust.
9226         * solib-aix.c (solib_aix_get_library_list): Adjust.
9227         * solib-dsbt.c (decode_loadmap): Don't free buf.
9228         (dsbt_get_initial_loadmaps): Adjust.
9229         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
9230         * solib-target.c (solib_target_current_sos): Adjust.
9231         * tracepoint.c (sdata_make_value): Adjust.
9232         * xml-support.c (xinclude_start_include): Adjust.
9233         (xml_fetch_content_from_file): Adjust.
9234         * xml-support.h (xml_fetch_another): Change return type.
9235         (xml_fetch_content_from_file): Change return type.
9236         * xml-syscall.c (xml_init_syscalls_info): Adjust.
9237         * xml-tdesc.c (file_read_description_xml): Adjust.
9238         (fetch_available_features_from_target): Change return type.
9239         (target_fetch_description_xml): Adjust.
9240         (target_read_description_xml): Adjust.
9241
9242 2018-04-06  Tom Tromey  <tom@tromey.com>
9243
9244         * value.c (~value): Update.
9245         (struct value) <contents>: Now unique_xmalloc_ptr.
9246         (value_contents_bits_eq, allocate_value_contents)
9247         (value_contents_raw, value_contents_all_raw)
9248         (value_contents_for_printing, value_contents_for_printing_const)
9249         (set_value_enclosing_type): Update.
9250
9251 2018-04-06  Tom Tromey  <tom@tromey.com>
9252
9253         * value.c (range_s): Remove typedef, VEC.
9254         (struct range): Add operator<.
9255         (range_lessthan): Remove.
9256         (ranges_contain): Change type.
9257         (~value): Update.
9258         (struct value) <unavailable, optimized_out>: Now std::vector.
9259         (value_entirely_available)
9260         (value_entirely_covered_by_range_vector)
9261         (value_entirely_unavailable, value_entirely_optimized_out):
9262         Update.
9263         (insert_into_bit_range_vector): Change argument type.
9264         (find_first_range_overlap): Likewise.
9265         (struct ranges_and_idx, value_contents_bits_eq)
9266         (require_not_optimized_out, require_available): Update.
9267         (ranges_copy_adjusted): Change argument types.
9268         (value_optimized_out, value_copy, value_fetch_lazy): Update.
9269
9270 2018-04-06  Tom Tromey  <tom@tromey.com>
9271
9272         * value.c (~value): Update.
9273         (struct value) <parent>: Now a value_ref_ptr.
9274         (value_parent, set_value_parent, value_address, value_copy):
9275         Update.
9276
9277 2018-04-06  Tom Tromey  <tom@tromey.com>
9278
9279         * value.c (struct value): Add constructor, destructor, and member
9280         initializers.
9281         (allocate_value_lazy, value_decref): Update.
9282
9283 2018-04-06  Tom Tromey  <tom@tromey.com>
9284
9285         * value.c (struct value) <released, next>: Remove.
9286         (all_values): Now a std::vector.
9287         (allocate_value_lazy): Update.
9288         (value_next): Remove.
9289         (value_mark, value_free_to_mark, release_value)
9290         (value_release_to_mark): Update.
9291
9292 2018-04-06  Tom Tromey  <tom@tromey.com>
9293
9294         * value.h (fetch_subexp_value, value_release_to_mark): Update.
9295         (free_value_chain): Remove.
9296         * value.c (free_value_chain): Remove.
9297         (value_release_to_mark): Return a std::vector.
9298         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
9299         std::vector.
9300         (check_condition): Update.
9301         * eval.c (fetch_subexp_value): Change "val_chain" to a
9302         std::vector.
9303         * breakpoint.c (update_watchpoint): Update.
9304         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
9305
9306 2018-04-06  Tom Tromey  <tom@tromey.com>
9307
9308         * value.h (free_all_values): Remove.
9309         * value.c (free_all_values): Remove.
9310
9311 2018-04-06  Tom Tromey  <tom@tromey.com>
9312
9313         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
9314         (value_history_chain, value_history_count): Remove.
9315         (value_history): New global.
9316         (record_latest_value, access_value_history, show_values)
9317         (preserve_values): Update.
9318
9319 2018-04-06  Tom Tromey  <tom@tromey.com>
9320
9321         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
9322         * varobj.c (varobj_set_display_format, varobj_set_value)
9323         (install_default_visualizer, construct_visualizer)
9324         (install_new_value, ~varobj, varobj_get_value_type)
9325         (my_value_of_variable, varobj_editable_p): Update.
9326         * c-varobj.c (c_describe_child, c_value_of_variable)
9327         (cplus_number_of_children, cplus_describe_child): Update.
9328         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
9329         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
9330         (ada_value_of_variable, ada_value_is_changeable_p): Update.
9331
9332 2018-04-06  Tom Tromey  <tom@tromey.com>
9333
9334         * printcmd.c (last_examine_address): Change type to
9335         value_ref_ptr.
9336         (do_examine, x_command): Update.
9337
9338 2018-04-06  Tom Tromey  <tom@tromey.com>
9339
9340         * value.c (release_value): Update.
9341         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
9342         (struct bpstats) <val>: Now a value_ref_ptr.
9343         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
9344         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
9345         (~watchpoint, print_it_watchpoint, watch_command_1)
9346         (invalidate_bp_value_on_memory_change): Update.
9347
9348 2018-04-06  Tom Tromey  <tom@tromey.com>
9349
9350         * varobj.c (varobj_clear_saved_item)
9351         (update_dynamic_varobj_children, install_new_value, ~varobj):
9352         Update.
9353         * value.h (value_incref): Move declaration earlier.
9354         (value_decref): Rename from value_free.
9355         (struct value_ref_policy): New.
9356         (value_ref_ptr): New typedef.
9357         (struct value_deleter): Remove.
9358         (gdb_value_up): Remove typedef.
9359         (release_value): Change return type.
9360         (release_value_or_incref): Remove.
9361         * value.c (set_value_parent): Update.
9362         (value_incref): Change return type.
9363         (value_decref): Rename from value_free.
9364         (value_free_to_mark, free_all_values, free_value_chain): Update.
9365         (release_value): Return value_ref_ptr.
9366         (release_value_or_incref): Remove.
9367         (record_latest_value, set_internalvar, clear_internalvar):
9368         Update.
9369         * stack.c (info_frame_command): Don't call value_free.
9370         * python/py-value.c (valpy_dealloc, valpy_new)
9371         (value_to_value_object): Update.
9372         * printcmd.c (do_examine): Update.
9373         * opencl-lang.c (lval_func_free_closure): Update.
9374         * mi/mi-main.c (register_changed_p): Don't call value_free.
9375         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
9376         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
9377         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
9378         value_free.
9379         * guile/scm-value.c (vlscm_free_value_smob)
9380         (vlscm_scm_from_value): Update.
9381         * frame.c (frame_register_unwind, frame_unwind_register_signed)
9382         (frame_unwind_register_unsigned, get_frame_register_bytes)
9383         (put_frame_register_bytes): Don't call value_free.
9384         * findvar.c (address_from_register): Don't call value_free.
9385         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
9386         * dwarf2loc.c (entry_data_value_free_closure)
9387         (value_of_dwarf_reg_entry, free_pieced_value_closure)
9388         (dwarf2_evaluate_loc_desc_full): Update.
9389         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
9390         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
9391         (~watchpoint, watch_command_1)
9392         (invalidate_bp_value_on_memory_change): Update.
9393         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
9394
9395 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
9396
9397         PR gdb/23022
9398         * warning.m4: Add -Wno-error=deprecated-register.
9399         * configure: Re-generate.
9400
9401 2018-04-05  Tom Tromey  <tom@tromey.com>
9402
9403         * linespec.h: Remove include of "vec.h".
9404
9405 2018-04-05  Tom Tromey  <tom@tromey.com>
9406
9407         * linespec.c (typep): Remove typedef.
9408         (find_methods, find_superclass_methods): Take a std::vector.
9409         (find_method): Use std::vector.
9410
9411 2018-04-05  Tom Tromey  <tom@tromey.com>
9412
9413         * utils.c (compare_strings): Remove.
9414         * utils.h (compare_strings): Remove.
9415         * objc-lang.h (find_imps): Update.
9416         * objc-lang.c (find_methods): Take a std::vector.
9417         (uniquify_strings, find_imps): Likewise.
9418         * linespec.c (find_methods): Take a std::vector.
9419         (decode_objc): Use std::vector.
9420         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
9421         a std::vector.
9422         (find_method, find_function_symbols): Use std::vector.
9423
9424 2018-04-05  Tom Tromey  <tom@tromey.com>
9425
9426         * completer.c (completion_tracker::completion_tracker): Remove
9427         cast.
9428         (completion_tracker::discard_completions): Likewise.
9429         * breakpoint.c (ambiguous_names_p): Remove cast.
9430         * ada-lang.c (_initialize_ada_language): Remove cast.
9431         * utils.h (streq): Update.
9432         (streq_hash): Add new declaration.
9433         * utils.c (streq): Return bool.
9434         (streq_hash): New function.
9435
9436 2018-04-05  Tom Tromey  <tom@tromey.com>
9437
9438         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
9439         Remove a string copy.
9440
9441 2018-04-05  Tom Tromey  <tom@tromey.com>
9442
9443         * linespec.c (filter_results): Use std::vector.
9444         (decode_line_2, decode_line_full): Update.
9445
9446 2018-04-05  Tom Tromey  <tom@tromey.com>
9447
9448         * linespec.c (canonical_to_fullform): Return std::string.
9449         (filter_results): Update.
9450         (struct decode_line_2_item): Add constructor.
9451         <fullform, displayform>: Now std::string.
9452         (decode_line_2_compare_items): Now a std::sort comparator.
9453         (decode_line_2): Update.
9454
9455 2018-04-05  Tom Tromey  <tom@tromey.com>
9456
9457         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
9458         (unexpected_linespec_error): Update.
9459         (linespec_parse_basic, parse_linespec): Update.
9460
9461 2018-04-05  Tom Tromey  <tom@tromey.com>
9462
9463         * linespec.c (linespec_parse_basic): Reindent.
9464
9465 2018-04-05  Tom Tromey  <tom@tromey.com>
9466
9467         * minsyms.h (iterate_over_minimal_symbols): Update.
9468         * minsyms.c (iterate_over_minimal_symbols): Take a
9469         gdb::function_view.
9470         * linespec.c (struct collect_minsyms): Remove.
9471         (compare_msyms): Now a std::sort comparator.
9472         (add_minsym): Add parameters.
9473         (search_minsyms_for_name): Update.  Use std::vector.
9474
9475 2018-04-03  Tom Tromey  <tom@tromey.com>
9476
9477         * mipsread.c (read_alphacoff_dynamic_symtab): Use
9478         gdb::byte_vector.
9479
9480 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
9481
9482         * MAINTAINERS (Write After Approval): Add Weimin Pan.
9483
9484 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
9485
9486         PR gdb/16959
9487         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
9488         printing static type.
9489
9490 2018-04-01  Tom Tromey  <tom@tromey.com>
9491
9492         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
9493         (rs6000_xfer_shared_libraries): Update.
9494
9495 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
9496
9497         * common/gdb_vecs.h (char_ptr): Remove.
9498         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
9499
9500 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
9501
9502         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
9503         with std::vector.
9504         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
9505
9506 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
9507
9508         * tracepoint.h (struct uploaded_tp): Initialize fields.
9509         <actions, step_actions, cmd_strings>: Change type to
9510         std::vector<char *>.
9511         * tracepoint.c (get_uploaded_tp): Allocate with new.
9512         (free_uploaded_tps): Free with delete.
9513         (parse_tracepoint_definition): Adjust to std::vector change.
9514         * breakpoint.c (read_uploaded_action): Likewise.
9515         (create_tracepoint_from_upload): Likewise.
9516         * ctf.c (ctf_write_uploaded_tp): Likewise.
9517         (SET_ARRAY_FIELD): Likewise.
9518         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
9519
9520 2018-03-30  Tom Tromey  <tom@tromey.com>
9521
9522         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
9523         std::unique_ptr.
9524         (svr4_keep_data_in_core): Update.
9525         (svr4_read_so_list): Update.
9526
9527 2018-03-30  Tom Tromey  <tom@tromey.com>
9528
9529         * windows-nat.c (handle_output_debug_string, handle_exception):
9530         Update.
9531         * target.h (target_read_string): Update.
9532         * target.c (target_read_string): Change "string" to
9533         unique_xmalloc_ptr.
9534         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
9535         Update.
9536         * solib-frv.c (frv_current_sos): Update.
9537         * solib-dsbt.c (dsbt_current_sos): Update.
9538         * solib-darwin.c (darwin_current_sos): Update.
9539         * linux-thread-db.c (inferior_has_bug): Update.
9540         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
9541         Update.  Remove alloca.
9542         * ada-lang.c (ada_main_name): Update.
9543
9544 2018-03-30  Tom Tromey  <tom@tromey.com>
9545
9546         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
9547         (struct dwo_file_deleter): New.
9548         (dwo_file_up): New typedef.
9549         (open_and_init_dwo_file): Use dwo_file_up.
9550         (free_dwo_file_cleanup): Remove.
9551
9552 2018-03-30  Tom Tromey  <tom@tromey.com>
9553
9554         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
9555         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
9556
9557 2018-03-30  Tom Tromey  <tom@tromey.com>
9558
9559         * dwarf2read.c (class free_cached_comp_units): New class.
9560         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
9561         (free_cached_comp_units): Remove function.
9562
9563 2018-03-30  Tom Tromey  <tom@tromey.com>
9564
9565         * utils.h (make_cleanup_unpush_target): Remove.
9566         * inf-ptrace.c (struct target_unpusher): New.
9567         (target_unpush_up) New typedef.
9568         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
9569         target_unpush_up.
9570         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
9571
9572 2018-03-27  Tom Tromey  <tom@tromey.com>
9573
9574         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
9575
9576 2018-03-27  Pedro Alves  <palves@redhat.com>
9577             Tom Tromey  <tom@tromey.com>
9578
9579         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
9580         destructor.  Now a class.
9581         (gdb_readline_wrapper_cleanup): Remove function.
9582         (gdb_readline_wrapper): Remove cleanups.
9583
9584 2018-03-27  Tom Tromey  <tom@tromey.com>
9585
9586         * typeprint.h (struct type_print_options) <local_typedefs,
9587         global_typedefs>: Remove "struct" keyword.
9588         (class typedef_hash_table): New class.
9589         (recursively_update_typedef_hash, add_template_parameters)
9590         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
9591         (find_typedef_in_hash): Don't declare.
9592         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
9593         (typedef_hash_table::recursively_update): Rename from
9594         recursively_update_typedef_hash.  Now a member.
9595         (typedef_hash_table::add_template_parameters): Rename from
9596         add_template_parameters.  Now a member.
9597         (typedef_hash_table::typedef_hash_table): Now a constructor;
9598         rename from create_typedef_hash.
9599         (typedef_hash_table::~typedef_hash_table): Now a destructor;
9600         rename from free_typedef_hash.
9601         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
9602         (do_free_global_table): Remove.
9603         (typedef_hash_table::typedef_hash_table): New constructor; renamed
9604         from copy_type_recursive.
9605         (create_global_typedef_table): Remove.
9606         (typedef_hash_table::find_global_typedef): Now a member of
9607         typedef_hash_table.
9608         (typedef_hash_table::find_typedef): Rename from
9609         find_typedef_in_hash; now a member.
9610         (whatis_exp): Update.
9611         * extension.h (struct ext_lang_type_printers): Add constructor and
9612         destructor.
9613         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
9614         declare.
9615         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
9616         Now a constructor; rename from start_ext_lang_type_printers.
9617         (ext_lang_type_printers): Now a destructor; rename from
9618         free_ext_lang_type_printers.
9619         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
9620         Update.
9621         (c_type_print_base_struct_union): Update.  Remove cleanups.
9622
9623 2018-03-27  Tom Tromey  <tom@tromey.com>
9624
9625         * dwarf-index-write.c: Include <cmath>.
9626
9627 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
9628
9629         * NEWS: Add entry describing new "set|show varsize-limit" command.
9630         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
9631         command.
9632         * printcmd.c (_initialize_printcmd): Add "set var" alias of
9633         "set variable".
9634
9635 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
9636
9637         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
9638         dwarf-index-write.c
9639         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
9640         * dwarf-index-common.c: New file.
9641         * dwarf-index-common.h: New file.
9642         * dwarf-index-write.c: New file.
9643         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
9644         (struct dwarf2_section_info): Move from here.
9645         (dwarf2_section_info_def): Likewise.
9646         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
9647         (offset_type): Likewise.
9648         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
9649         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
9650         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
9651         (byte_swap): Likewise.
9652         (MAYBE_SWAP): Likewise.
9653         (dwarf2_per_cu_ptr): Likewise.
9654         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
9655         (struct tu_stats): Likewise.
9656         (struct dwarf2_per_objfile): Likewise.
9657         (struct dwarf2_per_cu_data): Likewise.
9658         (struct signatured_type): Likewise.
9659         (sig_type_ptr): Likewise.
9660         (DEF_VEC_P (sig_type_ptr)): Likewise.
9661         (INDEX4_SUFFIX): Likewise.
9662         (INDEX5_SUFFIX): Likewise.
9663         (DEBUG_STR_SUFFIX): Likewise.
9664         (dwarf2_read_section): Make non-static.
9665         (mapped_index_string_hash): Move from here.
9666         (dwarf5_djb_hash): Likewise.
9667         (file_write): Likewise.
9668         (class data_buf): Likewise.
9669         (struct symtab_index_entry): Likewise.
9670         (struct mapped_symtab): Likewise.
9671         (find_slot): Likewise.
9672         (hash_expand): Likewise.
9673         (add_index_entry): Likewise.
9674         (uniquify_cu_indices): Likewise.
9675         (class c_str_view): Likewise.
9676         (class c_str_view_hasher): Likewise.
9677         (class vector_hasher): Likewise.
9678         (write_hash_table): Likewise.
9679         (psym_index_map): Likewise.
9680         (struct addrmap_index_data): Likewise.
9681         (add_address_entry): Likewise.
9682         (add_address_entry_worker): Likewise.
9683         (write_address_map): Likewise.
9684         (symbol_kind): Likewise.
9685         (write_psymbols): Likewise.
9686         (struct signatured_type_index_data): Likewise.
9687         (write_one_signatured_type): Likewise.
9688         (recursively_count_psymbols): Likewise.
9689         (recursively_write_psymbols): Likewise.
9690         (class debug_names): Likewise.
9691         (check_dwarf64_offsets): Likewise.
9692         (psyms_seen_size): Likewise.
9693         (write_gdbindex): Likewise.
9694         (write_debug_names): Likewise.
9695         (assert_file_size): Likewise.
9696         (write_psymtabs_to_index): Likewise.
9697         (save_gdb_index_command): Likewise.
9698         (_initialize_dwarf2_read): Don't register the "save gdb-index"
9699         command.
9700         * dwarf2read.h: New file.
9701
9702 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
9703
9704         PR gdb/22670
9705         * dwarf2read.c (dwarf2_physname): Do not return the demangled
9706         symbol name if the CU's language stores symbol names in linkage
9707         format.
9708         * language.h (struct language_defn)
9709         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
9710         all instances of this struct.
9711
9712 2018-03-26  Tom Tromey  <tom@tromey.com>
9713
9714         * stack.c (backtrace_command_1): Remove verbose code.
9715
9716 2018-03-26  Tom Tromey  <tom@tromey.com>
9717
9718         * python/py-framefilter.c (py_print_type): Don't catch
9719         exceptions.  Return void.
9720         (py_print_value): Likewise.
9721         (py_print_single_arg): Likewise.
9722         (enumerate_args): Don't catch exceptions.
9723         (py_print_args): Likewise.
9724         (py_print_frame): Likewise.
9725         (gdbpy_apply_frame_filter): Catch exceptions here.
9726
9727 2018-03-26  Tom Tromey  <tom@tromey.com>
9728
9729         * stack.c (_initialize_stack): Remove trailing newlines from help
9730         text.  Add "Usage" line to "backtrace" help.
9731
9732 2018-03-26  Tom Tromey  <tom@tromey.com>
9733
9734         PR python/16486:
9735         * python/py-framefilter.c (py_print_args): Call wrap_hint.
9736
9737 2018-03-26  Tom Tromey  <tom@tromey.com>
9738
9739         * python/py-framefilter.c (py_print_single_arg): Return
9740         EXT_LANG_BT_ERROR from catch.
9741
9742 2018-03-26  Tom Tromey  <tom@tromey.com>
9743
9744         PR backtrace/15584:
9745         * stack.c (backtrace_command_1): Move some code into no-filters
9746         "if".
9747
9748 2018-03-26  Tom Tromey  <tom@tromey.com>
9749
9750         * python/py-framefilter.c (throw_quit_or_print_exception): New
9751         function.
9752         (gdbpy_apply_frame_filter): Use it.
9753
9754 2018-03-26  Tom Tromey  <tom@tromey.com>
9755
9756         PR cli/17716:
9757         * python/py-framefilter.c (py_print_type, py_print_value)
9758         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
9759         RETURN_MASK_ERROR.
9760
9761 2018-03-26  Tom Tromey  <tom@tromey.com>
9762
9763         * python/py-framefilter.c (enumerate_args): Use
9764         gdb::unique_xmalloc_ptr.
9765
9766 2018-03-26  Tom Tromey  <tom@tromey.com>
9767
9768         * python/py-framefilter.c (py_print_frame): Return
9769         EXT_LANG_BT_OK.
9770         (gdbpy_apply_frame_filter): Update comment.
9771         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
9772         Remove.
9773         <EXT_LANG_BT_NO_FILTERS>: Change value.
9774
9775 2018-03-26  Tom Tromey  <tom@tromey.com>
9776
9777         PR backtrace/15582:
9778         * stack.c (backtrace_command): Parse "hide" argument.
9779         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
9780         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
9781         constant.
9782
9783 2018-03-26  Tom Tromey  <tom@tromey.com>
9784
9785         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
9786         add "flags".
9787         (backtrace_command): Remove "fulltrace", add "flags".
9788
9789 2018-03-26  Tom Tromey  <tom@tromey.com>
9790
9791         * stack.c (backtrace_command): Rewrite command line parsing.
9792
9793 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
9794
9795         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
9796
9797 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
9798
9799         * filename-seen-cache.h: Add include guard.
9800
9801 2018-03-26  Keith Seitz  <keiths@redhat.com>
9802
9803         * symfile.c (place_section): Remove "struct" from section_addr_info
9804         in comment.
9805         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
9806         "struct" keyword from section_addr_info.
9807
9808 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
9809
9810         * regformats/regdef.h (reg): Add constructors.
9811
9812 2018-03-25  Pedro Alves  <palves@redhat.com>
9813
9814         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
9815         if then/else bodies in var_func_name extraction.
9816
9817 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
9818
9819         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
9820         lookup_minimal_symbol() to find symbol entry.
9821         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
9822
9823 2018-03-23  Keith Seitz  <keiths@redhat.com>
9824
9825         PR c++/22968
9826         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
9827         nested type definitions for C++, too.
9828
9829 2018-03-23  Tom Tromey  <tom@tromey.com>
9830
9831         * machoread.c (struct oso_el): Add a constructor.  Don't define as
9832         a typedef.
9833         (macho_register_oso): Remove.
9834         (macho_symtab_read): Take a std::vector.
9835         (oso_el_compare_name): Now a std::sort comparator.
9836         (macho_symfile_read_all_oso): Take a std::vector.
9837         (macho_symfile_read): Use std::vector.  Remove cleanups.
9838
9839 2018-03-22  Tom Tromey  <tom@tromey.com>
9840
9841         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
9842         (record_full_goto_bookmark): Use std::string.
9843
9844 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9845
9846         PR tdep/18295
9847         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
9848         a single mask.
9849
9850 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9851
9852         * rs6000-tdep.c (store_insn_p): New function.
9853         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
9854         and cr_reg to their unshifted values. Use store_insn_p to
9855         match LR saves using either R1 or fdata->alloca_reg. Use
9856         store_insn_p to match CR saves. Set alloca_reg_offset
9857         when alloca_reg and framep are set. Remove lr_reg shift
9858         when assigning to fdata->lr_register.
9859
9860 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
9861
9862         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
9863         command line args instead of emitting a warning.
9864
9865 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
9866
9867         * tracepoint.h (struct static_tracepoint_marker): Initialize
9868         fields, define default constructor, move constructor and move
9869         assignment, disable the rest.
9870         <str_id, extra>: Make std::string.
9871         (release_static_tracepoint_marker): Remove.
9872         (free_current_marker): Remove.
9873         * tracepoint.c (free_current_marker): Remove.
9874         (parse_static_tracepoint_marker_definition): Adjust to
9875         std::string, use new hex2str overload.
9876         (release_static_tracepoint_marker): Remove.
9877         (print_one_static_tracepoint_marker): Get marker by reference
9878         and adjust to std::string.
9879         (info_static_tracepoint_markers_command): Adjust to std::vector
9880         changes
9881         * target.h (static_tracepoint_marker_p): Remove typedef.
9882         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
9883         (struct target_ops) <to_static_tracepoint_marker_at>: Return
9884         bool.
9885         <to_static_tracepoint_markers_by_strid>: Return std::vector.
9886         * target-debug.h
9887         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
9888         (target_debug_print_std_vector_static_tracepoint_marker): New.
9889         (target_debug_print_struct_static_tracepoint_marker_p): Rename
9890         to...
9891         (target_debug_print_static_tracepoint_marker_p): ... this.
9892         * target-delegates.c: Re-generate.
9893         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
9894         Make std::string.
9895         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
9896         (decode_static_tracepoint_spec): Adjust to std::vector.
9897         (tracepoint_print_one_detail): Adjust to std::string.
9898         (strace_marker_decode_location): Adjust to std::string.
9899         (update_static_tracepoint): Adjust to std::string, remove call
9900         to release_static_tracepoint_marker.
9901         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
9902         Adjust to std::vector.
9903         * remote.c (remote_static_tracepoint_marker_at): Return bool.
9904         (remote_static_tracepoint_markers_by_strid): Adjust to
9905         std::vector.
9906         * common/rsp-low.h (hex2str): New overload with explicit count
9907         of bytes.
9908         * common/rsp-low.c (hex2str): New overload with explicit count
9909         of bytes.
9910         * unittests/rsp-low-selftests.c (test_hex2str): New function.
9911         (_initialize_rsp_low_selftests): Add test_hex2str test.
9912         * unittests/tracepoint-selftests.c
9913         (test_parse_static_tracepoint_marker_definition): Adjust to
9914         std::string.
9915
9916 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
9917
9918         * tracepoint.c (parse_static_tracepoint_marker_definition):
9919         Consider case where the definition is followed by more
9920         definitions.
9921         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
9922         tracepoint-selftests.c.
9923         * unittests/tracepoint-selftests.c: New.
9924
9925 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9926
9927         * MAINTAINERS (Write After Approval): Add Pedro Franco de
9928         Carvalho.
9929
9930 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
9931
9932         * symtab.c (find_pc_sect_line): fixed indentation.
9933
9934 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
9935
9936         * symtab.c (find_pc_sect_line): now uses binary search.
9937
9938 2018-03-19  Tom Tromey  <tom@tromey.com>
9939
9940         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
9941         "IDENT" production.
9942
9943 2018-03-19  Pedro Alves  <palves@redhat.com>
9944             Tom Tromey  <tom@tromey.com>
9945
9946         * unittests/observable-selftests.c: New file.
9947         * common/observable.h: New file.
9948         * observable.h: New file.
9949         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
9950         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
9951         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
9952         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
9953         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
9954         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
9955         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
9956         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
9957         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
9958         python/py-breakpoint.c, python/py-finishbreakpoint.c,
9959         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
9960         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
9961         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
9962         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
9963         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
9964         tui/tui-interp.c, valops.c: Update all users.
9965         * tui/tui-hooks.c (tui_bp_created_observer)
9966         (tui_bp_deleted_observer, tui_bp_modified_observer)
9967         (tui_inferior_exit_observer, tui_before_prompt_observer)
9968         (tui_normal_stop_observer, tui_register_changed_observer):
9969         Remove.
9970         (tui_observers_token): New global.
9971         (attach_or_detach, tui_attach_detach_observers): New functions.
9972         (tui_install_hooks, tui_remove_hooks): Use
9973         tui_attach_detach_observers.
9974         * record-btrace.c (record_btrace_thread_observer): Remove.
9975         (record_btrace_thread_observer_token): New global.
9976         * observer.sh: Remove.
9977         * observer.c: Rename to observable.c.
9978         * observable.c (namespace gdb_observers): Define new objects.
9979         (observer_debug): Move into gdb_observers namespace.
9980         (struct observer, struct observer_list, xalloc_observer_list_node)
9981         (xfree_observer_list_node, generic_observer_attach)
9982         (generic_observer_detach, generic_observer_notify): Remove.
9983         (_initialize_observer): Update.
9984         Don't include observer.inc.
9985         * Makefile.in (generated_files): Remove observer.h, observer.inc.
9986         (clean mostlyclean): Likewise.
9987         (observer.h, observer.inc): Remove targets.
9988         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
9989         (COMMON_SFILES): Use observable.c, not observer.c.
9990         * .gitignore: Remove observer.h.
9991
9992 2018-03-18  Tom Tromey  <tom@tromey.com>
9993
9994         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
9995         gdb::def_vector.
9996         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
9997
9998 2018-03-17  Tom Tromey  <tom@tromey.com>
9999
10000         * auto-load.c (auto_load_objfile_script_1): Use std::string.
10001
10002 2018-03-17  Tom Tromey  <tom@tromey.com>
10003
10004         * target.c (class scoped_target_fd): New.
10005         (target_fileio_close_cleanup): Remove.
10006         (target_fileio_read_alloc_1): Use scoped_target_fd.
10007
10008 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
10009
10010         * silent-rules.mk: New.
10011         * Makefile.in: Include silent-rules.mk
10012         (srcdir, VPATH, top_srcdir): Move up.
10013         (COMPILE): Add ECHO_CXX.
10014         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
10015         (init.c): Add ECHO_INIT_C.
10016         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
10017         (version.c): Add ECHO_GEN.
10018         (printcmd.o): Add ECHO_CXX.
10019         (target-float.o): Add ECHO_CXX.
10020         (ada-exp.o): Add ECHO_CXX.
10021         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
10022         (insight$(EXEEXT)): Add ECHO_CXXLD.
10023         * gnulib/configure.ac: Add AM_SILENT_RULES.
10024         * gnulib/aclocal.m4: Re-generate.
10025         * gnulib/configure: Re-generate.
10026         * gnulib/import/Makefile.in: Re-generate.
10027
10028 2018-03-16  Tom Tromey  <tom@tromey.com>
10029
10030         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
10031         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
10032         * utils.c (do_free_section_addr_info)
10033         (make_cleanup_free_section_addr_info): Remove.
10034         * symfile.h (struct other_sections): Add constructor.
10035         (struct section_addr_info): Remove.
10036         (section_addr_info): New typedef.
10037         (struct sym_fns) <sym_offsets>: Change type of parameter.
10038         (build_section_addr_info_from_objfile)
10039         (relative_addr_info_to_section_offsets, addr_info_make_relative)
10040         (default_symfile_offsets, symbol_file_add)
10041         (symbol_file_add_from_bfd)
10042         (build_section_addr_info_from_section_table): Update.
10043         (alloc_section_addr_info, free_section_addr_info): Don't declare.
10044         * symfile.c (alloc_section_addr_info): Remove.
10045         (build_section_addr_info_from_section_table): Change return type.
10046         Update.
10047         (build_section_addr_info_from_bfd)
10048         (build_section_addr_info_from_objfile): Likewise.
10049         (free_section_addr_info): Remove.
10050         (relative_addr_info_to_section_offsets): Change type of "addrs".
10051         (addrs_section_compar): Now a std::sort comparator.
10052         (addrs_section_sort): Change return type.
10053         (addr_info_make_relative): Change type of "addrs".  Update.
10054         (default_symfile_offsets, syms_from_objfile_1)
10055         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
10056         (symbol_file_add_separate): Update.
10057         (symbol_file_add): Change type of "addrs".  Update.
10058         (add_symbol_file_command): Update.  Remove cleanups.
10059         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
10060         cleanups.
10061         * symfile-debug.c (debug_sym_offsets): Change type of "info".
10062         * solib.c (solib_read_symbols): Update.
10063         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
10064         * machoread.c (macho_symfile_offsets): Update.
10065         * jit.c (jit_bfd_try_read_symtab): Update.
10066
10067 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
10068
10069         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
10070         unittests/utils-selftests.c.
10071         * unittests/utils-selftests.c: New file.
10072
10073 2018-03-14  Tom Tromey  <tom@tromey.com>
10074
10075         PR cli/14977:
10076         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
10077         for NULL.
10078
10079 2018-03-14  Tom Tromey  <tom@tromey.com>
10080
10081         PR cli/19918:
10082         * printcmd.c (printf_pointer): Allow "-" in format.
10083
10084 2018-03-14  Tom Tromey  <tom@tromey.com>
10085
10086         * printcmd.c (_initialize_printcmd): Add usage to printf.
10087
10088 2018-03-14  Yao Qi  <qiyao@sourceware.org>
10089
10090         * MAINTAINERS: Update my email address.
10091
10092 2018-03-13  Tom Tromey  <tom@tromey.com>
10093
10094         * machoread.c (macho_check_dsym): Change filenamep to a
10095         std::string*.
10096         (macho_symfile_read): Update.
10097         * symfile.c (load_command): Use std::string.
10098
10099 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
10100
10101         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
10102         to error message string.
10103         (riscv_register_name): Use xsnprintf instead of sprintf.
10104         (riscv_insn::fetch_instruction): Use gdb_assert instead of
10105         internal_error.
10106         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
10107         error.
10108         (riscv_push_dummy_call): Likewise.
10109
10110 2018-03-12  Tom Tromey  <tom@tromey.com>
10111
10112         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
10113         Use gdb::byte_vector.
10114         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
10115
10116 2018-03-12  Yao Qi  <yao.qi@linaro.org>
10117
10118         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
10119         parameter type to readable_regcache.
10120         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
10121         the declaration.
10122
10123 2018-03-11  Tom Tromey  <tom@tromey.com>
10124
10125         * dwarf2read.c (struct nextfield): Add initializers.
10126         (struct nextfnfield): Remove.
10127         (struct fnfieldlist): Add initializers.  Remove "length" and
10128         "head", use std::vector.
10129         (struct decl_field_list): Remove.
10130         (struct field_info): Add initializers.
10131         <fields, baseclasses>: Now std::vector.
10132         <nbaseclasses, nfnfields, typedef_field_list_count,
10133         nested_types_list_count>: Remove.
10134         (dwarf2_add_field, dwarf2_add_type_defn)
10135         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
10136         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
10137         (process_structure_scope): Update.
10138
10139 2018-03-11  Tom Tromey  <tom@tromey.com>
10140
10141         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
10142         for use by std::sort.
10143         (build_type_psymtabs_1): Use std::vector.
10144
10145 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
10146
10147         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
10148         and LIBMPFR in the printed configuration.
10149
10150 2018-03-08  Tom Tromey  <tom@tromey.com>
10151
10152         * source.c (get_filename_and_charpos): Use scoped_fd.
10153         * nto-procfs.c (procfs_open_1): Use scoped_fd.
10154         (procfs_pidlist): Likewise.
10155         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
10156         (iterate_over_mappings): Likewise.
10157
10158 2018-03-08  Tom Tromey  <tom@tromey.com>
10159
10160         * infcall.c (struct call_return_meta_info)
10161         <stack_temporaries_enabled>: Remove.
10162         (get_call_return_value, call_function_by_hand_dummy): Update.
10163         * thread.c (disable_thread_stack_temporaries): Remove.
10164         (enable_thread_stack_temporaries): Remove.
10165         (thread_stack_temporaries_enabled_p): Return bool.
10166         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
10167         (get_last_thread_stack_temporary): Update.
10168         * eval.c (evaluate_subexp): Update.
10169         * gdbthread.h (class enable_thread_stack_temporaries): Now a
10170         class, not a function.
10171         (value_ptr, value_vec): Remove typedefs.
10172         (class thread_info) <stack_temporaries_enabled>: Now bool.
10173         <stack_temporaries>: Now a std::vector.
10174         (thread_stack_temporaries_enabled_p)
10175         (value_in_thread_stack_temporaries): Return bool.
10176
10177 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
10178
10179         * remote.c (putpkt_binary): Fix omitted bytes reporting.
10180         (getpkt_or_notif_sane_1): Likewise.
10181
10182 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
10183
10184         * build-id.c (build_id_to_debug_bfd): Use std::string.
10185
10186 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
10187
10188         * build-id.c (find_separate_debug_file_by_buildid): Return
10189         std::string.
10190         * build-id.h (find_separate_debug_file_by_buildid): Return
10191         std::string.
10192         * coffread.c (coff_symfile_read): Adjust to std::string.
10193         * elfread.c (elf_symfile_read): Adjust to std::string.
10194         * symfile.c (separate_debug_file_exists): Change parameter to
10195         std::string.
10196         (find_separate_debug_file): Return std::string.
10197         (find_separate_debug_file_by_debuglink): Return std::string.
10198         * symfile.h (find_separate_debug_file_by_debuglink): Return
10199         std::string.
10200
10201 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
10202
10203         * common/xml-utils.c (xml_escape_text): Move code to...
10204         (xml_escape_text_append): ... this new function.
10205         * common/xml-utils.h (xml_escape_text_append): New declaration.
10206         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
10207         New function.
10208         (_initialize_xml_utils): register test_xml_escape_text_append as
10209         a selftest.
10210
10211 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
10212
10213         * defs.h: Remove MAX_REGISTER_SIZE.
10214         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
10215         asserts.
10216         * python/py-unwind.c (pyuw_sniffer): Likewise.
10217
10218 2018-03-07  Tom Tromey  <tom@tromey.com>
10219
10220         * linux-tdep.c (linux_info_proc): Update.
10221         * target.h (struct target_ops) <to_fileio_readlink>: Return
10222         optional<string>.
10223         (target_fileio_readlink): Return optional<string>.
10224         * remote.c (remote_hostio_readlink): Return optional<string>.
10225         * inf-child.c (inf_child_fileio_readlink): Return
10226         optional<string>.
10227         * target.c (target_fileio_readlink): Return optional<string>.
10228
10229 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
10230
10231         * regcache.c (cooked_read_test): Add riscv to the list of
10232         architectures that have a save_reggroup.
10233
10234 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
10235
10236         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
10237         value is not a dynamic class object.
10238
10239 2018-03-06  Tom Tromey  <tom@tromey.com>
10240
10241         * rust-exp.y: Formatting fixes.
10242
10243 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10244
10245         * riscv-tdep.c (riscv_register_name): Remove target description
10246         support.
10247         (riscv_gdbarch_init): Remove target description check.
10248
10249 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10250
10251         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
10252         comment.
10253         * riscv-tdep.h: Likewise.
10254
10255 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10256
10257         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
10258         (riscv_pseudo_register_write): Delete.
10259         (riscv_gdbarch_init): Remove all use of pseudo registers.
10260
10261 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
10262
10263         * record-btrace.c (btrace_print_lines): Replace cleanup
10264         parameter with RAII equivalents.
10265         (btrace_insn_history): Replace cleanup with RAII equivalents.
10266         * ui-out.h (make_cleanup_ui_out_list_begin_end,
10267         make_cleanup_ui_out_tuple_begin_end): Remove.
10268         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
10269         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
10270         make_cleanup_ui_out_list_begin_end): Remove.
10271
10272 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
10273
10274         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
10275         parameter types to std::vector.  Use bool.
10276         (record_btrace_wait): Replace VEC(tp_t) with
10277         std::vector<thread_info *>.
10278         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
10279
10280 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
10281
10282         * record-btrace.c (record_btrace_disable_callback): Remove.
10283         (struct scoped_btrace_disable): New.
10284         (record_btrace_open): Use scoped_btrace_disable.
10285
10286 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10287
10288         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
10289         reading values from registers.
10290
10291 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10292
10293         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
10294         where appropriate.
10295
10296 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10297
10298         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
10299         change parameter type.  Use GDB's print functions, and use
10300         core_addr_to_string where appropriate.
10301         (riscv_push_dummy_call): Use core_addr_to_string where
10302         appropriate, update call to riscv_print_arg_location, and reindent
10303         a few lines.
10304         (riscv_return_value): Update call to riscv_print_arg_location.
10305
10306 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10307             Tim Newsome <tim@sifive.com>
10308             Albert Ou <a0u@eecs.berkeley.edu>
10309             Darius Rad <darius@bluespec.com>
10310
10311         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
10312         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
10313         (ALLDEPFILES): Add riscv-tdep.c
10314         * configure.tgt: Add riscv support.
10315         * riscv-tdep.c: New file.
10316         * riscv-tdep.h: New file.
10317         * NEWS: Mention new target.
10318         * MAINTAINERS: Add entry for riscv.
10319
10320 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10321
10322         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
10323         fields within aggregates.
10324
10325 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
10326
10327         * record-btrace.c (btrace_print_lines): Change type of flags to
10328         gdb_disassembly_flags.
10329
10330 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
10331
10332         * fbsd-nat.c: Include "inf-ptrace.h".
10333         (USE_SIGTRAP_SIGINFO): Conditionally define.
10334         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
10335         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
10336         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
10337         function.
10338         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
10339         Likewise.
10340         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
10341         Likewise.
10342         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
10343         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
10344         "supports_stopped_by_hw_breakpoint" target methods.
10345
10346 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
10347
10348         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
10349         * fbsd-nat.c (debug_fbsd_nat): New variable.
10350         (show_fbsd_nat_debug): New function.
10351         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
10352         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
10353
10354 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
10355
10356         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
10357         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
10358         prototype.
10359         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
10360         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
10361         method.
10362
10363 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
10364
10365         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
10366         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
10367
10368 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
10369
10370         * charset.c (struct charset_vector): New.
10371         (charsets): Change type to charset_vector.
10372         (find_charset_names): Adjust.
10373         (add_one): Adjust.
10374         (_initialize_charset): Adjust.
10375
10376 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
10377
10378         * progspace.h (struct program_space) <deleted_solibs>: Change
10379         type to std::vector<std::string>.
10380         * progspace.c (clear_program_space_solib_cache): Adjust.
10381         * breakpoint.c (print_solib_event): Adjust.
10382         (check_status_catch_solib): Adjust.
10383         * solib.c (update_solib_list): Adjust.
10384         * ui-out.h (class ui_out) <field_string>: New overload.
10385         * ui-out.c (ui_out::field_string): New overload.
10386
10387 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
10388
10389         * progspace.h (struct program_space): Add constructor and
10390         destructor, initialize fields.
10391         (add_program_space): Remove.
10392         * progspace.c (add_program_space): Rename to...
10393         (program_space::program_space): ... this.
10394         (release_program_space): Rename to...
10395         (program_space::~program_space): ... this.
10396         (delete_program_space): Use delete to delete program_space.
10397         (initialize_progspace): Use new to allocate program_space.
10398         * inferior.c (add_inferior_with_spaces): Likewise.
10399         (clone_inferior_command): Likewise.
10400         * infrun.c (follow_fork_inferior): Likewise.
10401         (handle_vfork_child_exec_or_exit): Likewise.
10402
10403 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
10404
10405         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
10406         (delim_string_to_char_ptr_vec): Return std::vector of
10407         gdb::unique_xmalloc_ptr.
10408         (dirnames_to_char_ptr_vec_append): Take std::vector of
10409         gdb::unique_xmalloc_ptr.
10410         (dirnames_to_char_ptr_vec): Return std::vector of
10411         gdb::unique_xmalloc_ptr.
10412         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
10413         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
10414         (delim_string_to_char_ptr_vec): Return an std::vector of
10415         gdb::unique_xmalloc_ptr, adjust the code.
10416         (dirnames_to_char_ptr_vec_append): Take an std::vector of
10417         gdb::unique_xmalloc_ptr, adjust the code.
10418         (dirnames_to_char_ptr_vec): Return an std::vector of
10419         gdb::unique_xmalloc_ptr, adjust the code.
10420         * auto-load.c (auto_load_safe_path_vec): Change type to
10421         std::vector of gdb::unique_xmalloc_ptr.
10422         (auto_load_expand_dir_vars): Return an std::vector of
10423         gdb::unique_xmalloc_ptr, adjust the code.
10424         (auto_load_safe_path_vec_update): Adjust.
10425         (filename_is_in_auto_load_safe_path_vec): Adjust.
10426         (auto_load_objfile_script_1): Adjust.
10427         * build-id.c (build_id_to_debug_bfd): Adjust.
10428         * linux-thread-db.c (thread_db_load_search): Adjust.
10429         * source.c (add_path): Adjust.
10430         (openp): Adjust.
10431         * symfile.c (find_separate_debug_file): Adjust.
10432         * utils.c (do_free_char_ptr_vec): Remove.
10433         (make_cleanup_free_char_ptr_vec): Remove.
10434
10435 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
10436
10437         PR gdb/22907
10438         * common/pathstuff.c: Conditionally include "<windows.h>".
10439
10440 2018-03-01  Georg Sauthoff  <mail@georg.so>
10441
10442         PR gdb/22888
10443         * gcore.in: Quote variables and switch interpreter to bash.
10444
10445 2018-03-01  Tom Tromey  <tom@tromey.com>
10446
10447         * dwarf2read.c (alloc_discriminant_info): Fix default_index
10448         assertion.  Add assertion for discriminant_index.
10449         (quirk_rust_enum): Use correct base type name in univariant case.
10450
10451 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
10452
10453         * record.c (get_call_history_modifiers): Return a
10454         record_print_flags.
10455         (cmd_record_call_history): Adjust.
10456         * record-btrace.c (record_btrace_call_history): Adjust.
10457         (record_btrace_call_history_range): Adjust.
10458         (record_btrace_call_history_from): Adjust.
10459         * target-debug.h (target_debug_print_record_print_flags): New.
10460         * target-delegates.c: Re-generate.
10461         * target.c (target_call_history): Change flags type.
10462         (target_call_history_from): Likewise.
10463         (target_call_history_range): Likewise.
10464         * target.h (struct target_ops) <target_call_history>: Likewise.
10465         (target_call_history_from): Likewise.
10466         (target_call_history_range): Likewise.
10467
10468 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
10469             Simon Marchi  <simon.marchi@polymtl.ca>
10470
10471         * common/common-utils.c: Include "sys/stat.h".
10472         (is_regular_file): Move here from "source.c"; change return
10473         type to "bool".
10474         * common/common-utils.h (is_regular_file): New prototype.
10475         * common/pathstuff.c (contains_dir_separator): New function.
10476         * common/pathstuff.h (contains_dir_separator): New prototype.
10477         * source.c: Don't include "sys/stat.h".
10478         (is_regular_file): Move to "common/common-utils.c".
10479
10480 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
10481
10482         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
10483         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
10484         * auto-load.c: Include "common/pathstuff.h".
10485         * common/common-def.h (current_directory): Move here.
10486         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
10487         function.
10488         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
10489         prototype.
10490         * common/pathstuff.c: New file.
10491         * common/pathstuff.h: New file.
10492         * compile/compile.c: Include "common/pathstuff.h".
10493         * defs.h (current_directory): Move to "common/common-defs.h".
10494         * dwarf2read.c: Include "common/pathstuff.h".
10495         * exec.c: Likewise.
10496         * guile/scm-safe-call.c: Likewise.
10497         * linux-thread-db.c: Likewise.
10498         * main.c: Likewise.
10499         * nto-tdep.c: Likewise.
10500         * objfiles.c: Likewise.
10501         * source.c: Likewise.
10502         * symtab.c: Likewise.
10503         * utils.c: Include "common/pathstuff.h".
10504         (gdb_realpath): Move to "common/pathstuff.c".
10505         (gdb_realpath_keepfile): Likewise.
10506         (gdb_abspath): Likewise.
10507         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
10508         (gdb_realpath_keepfile): Likewise.
10509         (gdb_abspath): Likewise.
10510
10511 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
10512
10513         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
10514         wildcard process pid for super_resume for kernels with a
10515         specific bug.
10516
10517 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
10518
10519         * compile/compile.c (get_args): Add additional comments
10520         explaining function.
10521
10522 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
10523             Tom Tromey  <tom@tromey.com>
10524
10525         * target.h (memory_write_request_s): Remove typedef.  Don't define
10526         VEC.
10527         (target_write_memory_blocks): Change argument to std::vector.
10528         (struct memory_write_request): Add constructor.
10529         * target-memory.c (compare_block_starting_address): Return bool.
10530         Change argument types.
10531         (claim_memory): Change arguments to use std::vector.
10532         (split_regular_and_flash_blocks, blocks_to_erase)
10533         (compute_garbled_blocks): Likewise.
10534         (cleanup_request_data, cleanup_write_requests_vector): Remove.
10535         (target_write_memory_blocks): Change argument to std::vector.
10536         * symfile.c (struct load_section_data): Add constructor and
10537         destructor.  Use std::vector for "requests".
10538         (struct load_progress_data): Add initializers.
10539         (load_section_callback): Update.  Use "new".
10540         (clear_memory_write_data): Remove.
10541         (generic_load): Update.
10542
10543 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
10544
10545         * arch/aarch64.h: Use common/tdesc.h.
10546
10547 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
10548
10549         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
10550         architecture with a 64-bit ABI.
10551
10552 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
10553
10554         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
10555         ahead of target description loading.
10556
10557 2018-02-26  Tom Tromey  <tom@tromey.com>
10558
10559         * stack.c (backtrace_command_1): Update.
10560         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
10561         of "flags".
10562         * python/py-framefilter.c (py_print_frame)
10563         (gdbpy_apply_frame_filter): Change type of "flags".
10564         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
10565         of "flags".
10566         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
10567         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
10568         * extension.h (enum frame_filter_flag): Rename from
10569         frame_filter_flags.
10570         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
10571         (apply_ext_lang_frame_filter): Change type of "flags".
10572         * extension.c (apply_ext_lang_frame_filter): Change type of
10573         "flags".
10574         * extension-priv.h (struct extension_language_ops)
10575         <apply_frame_filter>: Change type of "flags".
10576
10577 2018-02-26  Tom Tromey  <tom@tromey.com>
10578
10579         PR python/16497:
10580         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
10581         off-by-one in py_end computation.
10582         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
10583         PRINT_MORE_FRAMES.
10584         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
10585         constant.
10586
10587 2018-02-26  Tom Tromey  <tom@tromey.com>
10588
10589         * dwarf2read.c (struct variant_field): New.
10590         (struct nextfield) <variant>: New field.
10591         (dwarf2_add_field): Handle DW_TAG_variant_part.
10592         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
10593         discriminated union.
10594         (read_structure_type): Handle DW_TAG_variant_part.
10595         (handle_struct_member_die): New function, extracted from
10596         process_structure_scope.  Handle DW_TAG_variant.
10597         (process_structure_scope): Handle discriminated unions.  Call
10598         handle_struct_member_die.
10599
10600 2018-02-26  Tom Tromey  <tom@tromey.com>
10601
10602         * rust-lang.h (rust_last_path_segment): Declare.
10603         * rust-lang.c (rust_last_path_segment): Now public.  Change
10604         contract.
10605         (struct disr_info): Remove.
10606         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
10607         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
10608         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
10609         (rust_enum_p, rust_enum_variant): New function.
10610         (rust_underscore_fields): Remove "offset" parameter.
10611         (rust_print_enum): New function.
10612         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
10613         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
10614         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
10615         enums.
10616         (rust_internal_print_type): New function, from rust_print_type.
10617         Remove enum code.
10618         (rust_print_type): Call rust_internal_print_type.
10619         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
10620         Update enum handling.
10621         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
10622         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
10623         (rust_union_quirks): New functions.
10624         (process_full_comp_unit, process_full_type_unit): Call
10625         rust_union_quirks.
10626         (process_structure_scope): Update rust_unions if necessary.
10627
10628 2018-02-26  Tom Tromey  <tom@tromey.com>
10629
10630         * value.h (value_union_variant): Declare.
10631         * valops.c (value_union_variant): New function.
10632         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
10633         (struct discriminant_info): New.
10634         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
10635         enumerator.
10636         (struct main_type) <flag_discriminated_union>: New field.
10637
10638 2018-02-26  Tom Tromey  <tom@tromey.com>
10639
10640         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
10641         unittests/unpack-selftests.c.
10642         * unittests/unpack-selftests.c: New file.
10643         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
10644
10645 2018-02-26  Yao Qi  <yao.qi@linaro.org>
10646
10647         * dwarf2read.c (struct partial_die_info) <read>: New method.
10648         (read_partial_die): Remove the declaration.
10649         (load_partial_dies): Update.
10650         (partial_die_info::partial_die_info):
10651         (read_partial_die): Change it to partial_die_info::read.
10652
10653 2018-02-26  Yao Qi  <yao.qi@linaro.org>
10654
10655         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
10656         (fixup_partial_die): Remove declaration.
10657         (scan_partial_symbols): Update.
10658         (partial_die_parent_scope): Likewise.
10659         (partial_die_full_name): Likewise.
10660         (fixup_partial_die): Change it to partial_die_info::fixup.
10661
10662 2018-02-26  Yao Qi  <yao.qi@linaro.org>
10663
10664         * dwarf2read.c (read_partial_die): Update the declaration.
10665         (load_partial_dies): Caller update.
10666         (read_partial_die): Remove one argument abbrev_len.
10667
10668 2018-02-26  Yao Qi  <yao.qi@linaro.org>
10669
10670         * dwarf2read.c (struct partial_die_info): Add ctor, delete
10671         assignment operator.
10672         (load_partial_dies): Use ctor and copy ctor.
10673         (read_partial_die): Update.
10674         (dwarf2_cu::find_partial_die): Use ctor.
10675
10676 2018-02-26  Yao Qi  <yao.qi@linaro.org>
10677
10678         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
10679         (find_partial_die_in_comp_unit): Change it to
10680         dwarf2_cu::find_partial_die.
10681         (find_partial_die): Update.
10682
10683 2018-02-26  Yao Qi  <yao.qi@linaro.org>
10684
10685         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
10686         is NULL.
10687
10688 2018-02-26  Yao Qi  <yao.qi@linaro.org>
10689
10690         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
10691
10692 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
10693
10694         * arch/amd64.h: Use common/tdesc.h.
10695         * arch/i386.c: Likewise.
10696         * arch/i386.h: Likewise.
10697         * arch/tic6x.c: Likewise.
10698         * arch/tdesc.h: Move file from here...
10699         * common/tdesc.h: ...to here.
10700         * features/aarch64-core.c: Regenerate.
10701         * features/aarch64-fpu.c: Regenerate.
10702         * features/i386/32bit-avx.c: Regenerate.
10703         * features/i386/32bit-avx512.c: Regenerate.
10704         * features/i386/32bit-core.c: Regenerate.
10705         * features/i386/32bit-linux.c: Regenerate.
10706         * features/i386/32bit-mpx.c: Regenerate.
10707         * features/i386/32bit-pkeys.c: Regenerate.
10708         * features/i386/32bit-sse.c: Regenerate.
10709         * features/i386/64bit-avx.c: Regenerate.
10710         * features/i386/64bit-avx512.c: Regenerate.
10711         * features/i386/64bit-core.c: Regenerate.
10712         * features/i386/64bit-linux.c: Regenerate.
10713         * features/i386/64bit-mpx.c: Regenerate.
10714         * features/i386/64bit-pkeys.c: Regenerate.
10715         * features/i386/64bit-segments.c: Regenerate.
10716         * features/i386/64bit-sse.c: Regenerate.
10717         * features/i386/x32-core.c: Regenerate.
10718         * features/tic6x-c6xp.c: Regenerate.
10719         * features/tic6x-core.c: Regenerate.
10720         * features/tic6x-gp.c: Regenerate.
10721         * target-descriptions.c: Use common/tdesc.h.
10722         * target-descriptions.h: Likewise.
10723
10724 2018-02-24  Tom Tromey  <tom@tromey.com>
10725
10726         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
10727         (try_thread_db_load_from_dir, thread_db_load_search): Use
10728         std::string.
10729         (info_auto_load_libthread_db_compare): Return bool.  Change
10730         argument types.
10731         (info_auto_load_libthread_db): Use std::vector, std::string.
10732         Remove cleanups.
10733
10734 2018-02-24  Tom Tromey  <tom@tromey.com>
10735
10736         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
10737         std::string.
10738         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
10739         std::string*.
10740         * gdbarch.c: Rebuild.
10741         * gdbarch.h: Rebuild.
10742         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
10743         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
10744         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
10745         std::string*.
10746
10747 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
10748
10749         * gdbtypes.h (sect_offset): Change type to uint64_t.
10750         (sect_offset_str): New function.
10751         * dwarf2read.c (create_addrmap_from_aranges): Use
10752         sect_offset_str.
10753         (error_check_comp_unit_head): Likewise.
10754         (create_debug_type_hash_table): Likewise.
10755         (read_cutu_die_from_dwo): Likewise.
10756         (init_cutu_and_read_dies): Likewise.
10757         (init_cutu_and_read_dies_no_follow): Likewise.
10758         (process_psymtab_comp_unit_reader): Likewise.
10759         (partial_die_parent_scope): Likewise.
10760         (peek_die_abbrev): Likewise.
10761         (process_queue): Likewise.
10762         (dwarf2_physname): Likewise.
10763         (read_namespace_alias): Likewise.
10764         (read_import_statement): Likewise.
10765         (create_dwo_cu_reader): Likewise.
10766         (create_cus_hash_table): Likewise.
10767         (lookup_dwo_cutu): Likewise.
10768         (inherit_abstract_dies): Likewise.
10769         (read_func_scope): Likewise.
10770         (read_call_site_scope): Likewise.
10771         (dwarf2_add_member_fn): Likewise.
10772         (read_common_block): Likewise.
10773         (read_module_type): Likewise.
10774         (read_typedef): Likewise.
10775         (read_subrange_type): Likewise.
10776         (load_partial_dies): Likewise.
10777         (read_partial_die): Likewise.
10778         (find_partial_die): Likewise.
10779         (read_str_index): Likewise.
10780         (dwarf2_string_attr): Likewise.
10781         (build_error_marker_type): Likewise.
10782         (lookup_die_type): Likewise.
10783         (dump_die_shallow): Likewise.
10784         (follow_die_ref): Likewise.
10785         (dwarf2_fetch_die_loc_sect_off): Likewise.
10786         (dwarf2_fetch_constant_bytes): Likewise.
10787         (follow_die_sig): Likewise.
10788         (get_signatured_type): Likewise.
10789         (get_DW_AT_signature_type): Likewise.
10790         (dwarf2_find_containing_comp_unit): Likewise.
10791         (set_die_type): Likewise.
10792
10793 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
10794
10795         * arch/aarch64.c: Include "common-defs.h".
10796         * arch/amd64.c: Likewise.
10797         * arch/i386.c: Likewise.
10798
10799 2018-02-21  Tom Tromey  <tom@tromey.com>
10800
10801         * value.h: (extract_field_op): Update.
10802         * eval.c (extract_field_op): Return a const char *.
10803         * expression.h (parse_expression_for_completion): Update.
10804         * completer.c (complete_expression): Update.
10805         (add_struct_fields): Make fieldname const.
10806         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
10807         (mark_completion_tag, parse_exp_in_context_1): Update.
10808         (parse_expression_for_completion): Change "name" to
10809         unique_xmalloc_ptr*.
10810
10811 2018-02-21  Tom Tromey  <tom@tromey.com>
10812
10813         * infcall.c (call_function_by_hand_dummy): Use std::vector.
10814
10815 2018-02-21  Yao Qi  <yao.qi@linaro.org>
10816
10817         * avr-tdep.c (avr_read_pc): Change parameter type to
10818         readable_regcache.
10819         * gdbarch.sh (read_pc): Likewise.
10820         * gdbarch.c: Re-generated.
10821         * gdbarch.h: Re-generated.
10822         * hppa-tdep.c (hppa_read_pc): Change parameter type to
10823         readable_regcache.
10824         * ia64-tdep.c (ia64_read_pc): Likewise.
10825         * mips-tdep.c (mips_read_pc): Likewise.
10826         * spu-tdep.c (spu_read_pc): Likewise.
10827
10828 2018-02-21  Yao Qi  <yao.qi@linaro.org>
10829
10830         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
10831         * regcache-dump.c: New file.
10832         * regcache.c: Move register_dump to regcache-dump.c.
10833         (maintenance_print_registers): Likewise.
10834         (maintenance_print_raw_registers): Likewise.
10835         (maintenance_print_cooked_registers): Likewise.
10836         (maintenance_print_register_groups): Likewise.
10837         (maintenance_print_remote_registers): Likewise.
10838         (_initialize_regcache): Likewise.
10839         * regcache.h (register_dump): Moved from regcache.c.
10840
10841 2018-02-21  Yao Qi  <yao.qi@linaro.org>
10842
10843         * regcache.c (regcache::regcache): Update.
10844         (regcache::invalidate): Move it to detached_regcache::invalidate.
10845         (get_thread_arch_aspace_regcache): Update.
10846         (regcache::raw_update): Update.
10847         (regcache::cooked_read): Remove some code.
10848         (regcache::cooked_read_value): Likewise.
10849         (regcache::raw_write): Remove assert on m_readonly_p.
10850         (regcache::raw_supply_integer): Move it to
10851         detached_regcache::raw_supply_integer.
10852         (regcache::raw_supply_zeroed): Likewise.
10853         * regcache.h (detached_regcache) <raw_supply_integer>: New
10854         declaration.
10855         <raw_supply_zeroed, invalidate>: Likewise.
10856         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
10857         <invalidate>: Likewise.
10858         <m_readonly_p>: Removed.
10859
10860 2018-02-21  Yao Qi  <yao.qi@linaro.org>
10861
10862         * infcmd.c (get_return_value): Let stop_regs point to
10863         get_current_regcache.
10864         * regcache.c (regcache::regcache): Remove.
10865         (register_dump_reg_buffer): New class.
10866         (regcache_print): Adjust.
10867         * regcache.h (regcache): Remove constructors.
10868
10869 2018-02-21  Yao Qi  <yao.qi@linaro.org>
10870
10871         * regcache.c (class register_dump): New class.
10872         (register_dump_regcache, register_dump_none): New class.
10873         (register_dump_remote, register_dump_groups): New class.
10874         (regcache_print): Update.
10875         * regcache.h (regcache_dump_what): Move it to regcache.c.
10876         (regcache) <dump>: Remove.
10877
10878 2018-02-21  Yao Qi  <yao.qi@linaro.org>
10879
10880         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
10881          reg_buffer_rw *.
10882         (jit_unwind_reg_set_impl): Call raw_supply.
10883         (jit_frame_sniffer): Use reg_buffer_rw.
10884         * record-full.c (record_full_core_regbuf): Change its type.
10885         (record_full_core_open_1): Use reg_buffer_rw.
10886         (record_full_close): Likewise.
10887         (record_full_core_fetch_registers): Use regcache->raw_supply.
10888         (record_full_core_store_registers): Likewise.
10889         * regcache.c (regcache::get_register_status): Move it to
10890         reg_buffer.
10891         (regcache_raw_set_cached_value): Remove.
10892         (regcache::raw_set_cached_value): Remove.
10893         (regcache::raw_write): Call raw_supply.
10894         (regcache::raw_supply): Move it to reg_buffer_rw.
10895         * regcache.h (regcache_raw_set_cached_value): Remove.
10896         (reg_buffer_rw): New class.
10897
10898 2018-02-21  Yao Qi  <yao.qi@linaro.org>
10899
10900         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
10901         readonly_detached_regcache.
10902         (dummy_frame_prev_register): Use regcache->cooked_read.
10903         * frame.c (frame_save_as_regcache): Change return type.
10904         (frame_pop): Update.
10905         * frame.h (frame_save_as_regcache): Update declaration.
10906         * inferior.h (get_infcall_suspend_state_regcache): Update
10907         declaration.
10908         * infrun.c (infcall_suspend_state) <registers>: use
10909         readonly_detached_regcache.
10910         (save_infcall_suspend_state): Don't use regcache_dup.
10911         (get_infcall_suspend_state_regcache): Change return type.
10912         * linux-fork.c (struct fork_info) <savedregs>: Change to
10913         readonly_detached_regcache.
10914         <pc>: New field.
10915         (fork_save_infrun_state): Don't use regcache_dup.
10916         (info_checkpoints_command): Adjust.
10917         * mi/mi-main.c (register_changed_p): Update declaration.
10918         (mi_cmd_data_list_changed_registers): Use
10919         readonly_detached_regcache.
10920         (register_changed_p): Change parameter type to
10921         readonly_detached_regcache.
10922         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
10923         readonly_detached_regcache.
10924         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
10925         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
10926         New.
10927         (regcache::save): Move it to reg_buffer.
10928         (regcache::restore): Change parameter type.
10929         (regcache_dup): Remove.
10930         * regcache.h (reg_buffer) <save>: New method.
10931         (readonly_detached_regcache): New class.
10932         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
10933         readonly_detached_regcache.
10934         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
10935
10936 2018-02-21  Yao Qi  <yao.qi@linaro.org>
10937
10938         * frame.c (frame_save_as_regcache): Use regcache method save.
10939         (frame_pop): Use regcache method restore.
10940         * infrun.c (restore_infcall_suspend_state): Likewise.
10941         * linux-fork.c (fork_load_infrun_state): Likewise.
10942         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
10943         save.
10944         * regcache.c (regcache_save): Remove.
10945         (regcache::restore): More asserts.
10946         (regcache_cpy): Remove.
10947         * regcache.h (regcache_save): Remove the declaration.
10948         (regcache::restore): Move from private to public.
10949         Remove the friend declaration of regcache_cpy.
10950         (regcache_cpy): Remove declaration.
10951
10952 2018-02-21  Yao Qi  <yao.qi@linaro.org>
10953
10954         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
10955         parameter type to 'readable_regcache *'.
10956         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
10957         * arm-tdep.c (arm_neon_quad_read): Likewise.
10958         (arm_pseudo_read): Likewise.
10959         * avr-tdep.c (avr_pseudo_register_read): Likewise.
10960         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
10961         * frv-tdep.c (frv_pseudo_register_read): Likewise.
10962         * gdbarch.c: Re-generated.
10963         * gdbarch.h: Re-generated.
10964         * gdbarch.sh (pseudo_register_read): Change parameter type to
10965         'readable_regcache *'.
10966         (pseudo_register_read_value): Likewise.
10967         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
10968         (h8300_pseudo_register_read): Likewise.
10969         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
10970         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
10971         (i386_pseudo_register_read_into_value): Likewise.
10972         (i386_pseudo_register_read_value): Likewise.
10973         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
10974         declaration.
10975         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
10976         * m32c-tdep.c (m32c_raw_read): Likewise.
10977         (m32c_read_flg): Likewise.
10978         (m32c_banked_register): Likewise.
10979         (m32c_banked_read): Likewise.
10980         (m32c_sb_read): Likewise.
10981         (m32c_part_read): Likewise.
10982         (m32c_cat_read): Likewise.
10983         (m32c_r3r2r1r0_read): Likewise.
10984         (m32c_pseudo_register_read): Likewise.
10985         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
10986         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
10987         (mep_pseudo_cr64_read): Likewise.
10988         (mep_pseudo_register_read): Likewise.
10989         * mips-tdep.c (mips_pseudo_register_read): Likewise.
10990         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
10991         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
10992         * regcache.c (regcache::raw_read): Move it to readable_regcache.
10993         (regcache::cooked_read): Likewise.
10994         (regcache::cooked_read_value): Likewise.
10995         (regcache_cooked_read_signed):
10996         (regcache::cooked_read): Likewise.
10997         * regcache.h (readable_regcache): New class.
10998         (regcache): Inherit readable_regcache.  Move some methods to
10999         readable_regcache.
11000         * rl78-tdep.c (rl78_pseudo_register_read): Change
11001         parameter type to 'readable_regcache *'.
11002         * rs6000-tdep.c (do_regcache_raw_read): Remove.
11003         (e500_pseudo_register_read): Change parameter type to
11004         'readable_regcache *'.
11005         (dfp_pseudo_register_read): Likewise.
11006         (vsx_pseudo_register_read): Likewise.
11007         (efpr_pseudo_register_read): Likewise.
11008         * s390-tdep.c (s390_pseudo_register_read): Likewise.
11009         * sh-tdep.c (sh_pseudo_register_read): Likewise.
11010         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
11011         (sh64_pseudo_register_read): Likewise.
11012         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
11013         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
11014         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
11015         (spu_pseudo_register_read): Likewise.
11016         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
11017         (xtensa_pseudo_register_read): Likewise.
11018
11019 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11020
11021         * regcache.c (regcache::regcache): Call reg_buffer ctor.
11022         (regcache::arch): Move it to reg_buffer::arch.
11023         (regcache::register_buffer): Likewise.
11024         (regcache::assert_regnum): Likewise.
11025         (regcache::num_raw_registers): Likewise.
11026         * regcache.h (reg_buffer): New class.
11027         (regcache): Inherit reg_buffer.
11028
11029 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
11030
11031         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
11032         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
11033
11034 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
11035
11036         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
11037
11038 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
11039
11040         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
11041         (SFILES): Remove common/*.c files.
11042         (COMMON_OBS): Remove some *.o files built from common/*.c files.
11043         * common/common.host: Add common reference.
11044         * configure.ac: Likewise.
11045         * configure: Regenerate.
11046
11047 2018-02-16  Yao Qi  <yao.qi@linaro.org>
11048
11049         * block.c (block_namespace_info): Inherit allocate_on_obstack.
11050         (block_initialize_namespace): Use new.
11051         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
11052         (dwarf2_free_objfile): Use delete.
11053         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
11054         (copy_type_recursive): Use new.
11055         * gdb_obstack.h (allocate_on_obstack): New.
11056
11057 2018-02-15  Yao Qi  <yao.qi@linaro.org>
11058
11059         PR gdb/22849
11060         * inferior.c (exit_inferior_1): Reset inf->control.
11061
11062 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
11063
11064         * ada-lang.c (ada_to_fixed_value_create): Delete advance
11065         declaration.
11066
11067 2018-02-14  Pedro Alves  <palves@redhat.com>
11068
11069         * frame-unwind.c (frame_unwind_try_unwinder): Always call
11070         frame_cleanup_after_sniffer on exception.
11071
11072 2018-02-14  Tom Tromey  <tom@tromey.com>
11073
11074         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
11075         const.
11076         (solib_bfd_open): Make pathname const.
11077         * solib.c (solib_bfd_open): Make pathname const.
11078         * solib-spu.c (spu_bfd_fopen): Make name const.
11079         (spu_bfd_open): Make pathname const.
11080         * solib-darwin.c (darwin_bfd_open): Make pathname const.
11081         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
11082
11083 2018-02-14  Tom Tromey  <tom@tromey.com>
11084
11085         * symfile.c (symfile_bfd_open): Update.
11086         * source.h (openp, source_full_path_of, find_and_open_source):
11087         Change argument type to unique_xmalloc_ptr.
11088         * source.c (openp): Take a unique_xmalloc_ptr.
11089         (source_full_path_of, find_and_open_source): Likewise.
11090         (open_source_file, symtab_to_fullname): Update.
11091         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
11092         unique_xmalloc_ptr.
11093         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
11094         (exec_file_find): Update.
11095         * psymtab.c (psymtab_to_fullname): Update.
11096         * nto-tdep.h (nto_find_and_open_solib): Update.
11097         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
11098         unique_xmalloc_ptr.
11099         * exec.c (exec_file_attach): Update.
11100         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
11101         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
11102
11103 2018-02-14  Tom Tromey  <tom@tromey.com>
11104
11105         * solib.c: Include source.h.
11106         * nto-tdep.c: Include source.h.
11107         * mi/mi-cmd-env.c: Include source.h.
11108         * infcmd.c: Include source.h.
11109         * exec.c: Include source.h.
11110         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
11111         (add_path, directory_switch, source_path, init_source_path): Move
11112         declarations...
11113         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
11114         (add_path, directory_switch, source_path, init_source_path):
11115         ...here.
11116
11117 2018-02-14  Tom Tromey  <tom@tromey.com>
11118
11119         * solist.h (exec_file_find, solib_find): Return
11120         unique_xmalloc_ptr.
11121         (solib_bfd_fopen): Take a const char *.
11122         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
11123         (exec_file_find, solib_find): Likewise.
11124         (solib_bfd_fopen): Do not take ownership of "pathname".
11125         (solib_bfd_open): Use unique_xmalloc_ptr.
11126         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
11127         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
11128         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
11129         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
11130
11131 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
11132
11133         * ada-lang.c (name_match_type_from_name): Remove reference to
11134         ada_name_for_lookup in function's documentation.
11135         * ada-lang.h (ada_name_for_lookup): Delete declaration.
11136
11137 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
11138
11139         * defs.h (enum openp_flags): New enum.
11140         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
11141         Move to enum openp_flags.
11142         (openp_flags): New enum flags.
11143         (openp): Change parameter type to openp_flags.
11144         * source.c (openp): Change parameter type to openp_flags.
11145         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
11146         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
11147
11148 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
11149
11150         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
11151         per-command.
11152
11153 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
11154
11155         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
11156         into...
11157         (class dwarf2_queue_guard): ...the destructor of this new class.
11158         (dw2_do_instantiate_symtab): Create instance of the new class
11159         dwarf2_queue_guard, remove cleanup.
11160
11161 2018-02-09  Tom Tromey  <tom@tromey.com>
11162
11163         * source.c (find_source_lines): Don't reference past the end of
11164         the vector.
11165
11166 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11167
11168         * remote.c (remote_btrace_maybe_reopen): Change error message.
11169         * btrace.c (btrace_enable): Likewise.
11170         (parse_xml_btrace): Likewise.
11171         (parse_xml_btrace_conf): Likewise.
11172
11173 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11174
11175         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
11176         (linux_enable_pt, linux_enable_bts): Call
11177         diagnose_perf_event_open_fail.
11178
11179 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11180
11181         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
11182         Remove parameter and change return type.  Update callers.  Move it.
11183         (linux_enable_bts, linux_enable_pt): Improve error message.
11184         (linux_enable_pt): Remove zero buffer size check.
11185         (linux_enable_btrace): Improve error messages.  Remove NULL return
11186         check.
11187
11188 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11189
11190         * btrace.c (btrace_enable): Remove target_supports_btrace call.
11191         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
11192         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
11193         (linux_supports_pt, linux_supports_btrace): Remove.
11194         (linux_enable_bts): Call cpu_supports_bts.
11195         * nat/linux-btrace.h (linux_supports_btrace): Remove.
11196         * remote.c (remote_supports_btrace): Remove.
11197         (init_remote_ops): Remove remote_supports_btrace.
11198         * target-delegates.c: Regenerated.
11199         * target.c (target_supports_btrace): Remove.
11200         * target.h (target_ops) <to_supports_btrace>: Remove
11201         (target_supports_btrace): Remove.
11202         * x86-linux-nat.c (x86_linux_create_target): Remove
11203         linux_supports_btrace.
11204
11205 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11206
11207         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
11208         btrace failed.
11209         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
11210         exception and use message in own exception.
11211
11212 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11213
11214         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
11215         (perf_event_pt_event_type): Use gdb_file_up.
11216         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
11217         scoped_fd, and scoped_mmap.
11218
11219 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11220
11221         * common/scoped_mmap.h: New.
11222         * unittests/scoped_mmap-selftest.c: New.
11223         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11224         unittests/scoped_mmap-selftest.c.
11225
11226 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11227
11228         * common/scoped_fd.h: New.
11229         * unittests/scoped_fd-selftest.c: New.
11230         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11231         unittests/scoped_fd-selftest.c.
11232
11233 2018-02-09  Tom Tromey  <tom@tromey.com>
11234
11235         * auto-load.c (auto_load_section_scripts): Use
11236         gdb::unique_xmalloc_ptr.
11237
11238 2018-02-09  Tom Tromey  <tom@tromey.com>
11239
11240         * auto-load.c (execute_script_contents): Use std::string.
11241
11242 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
11243
11244         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
11245         Python function, rather than a new command.
11246
11247 2018-02-08  Tom Tromey  <tom@tromey.com>
11248
11249         * solib.c (solib_find_1): Use std::string.
11250         (solib_bfd_fopen): Use unique_xmalloc_ptr.
11251
11252 2018-02-08  Tom Tromey  <tom@tromey.com>
11253
11254         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
11255
11256 2018-02-08  Tom Tromey  <tom@tromey.com>
11257
11258         * source.c (find_source_lines): Use gdb::def_vector.
11259
11260 2018-02-08  Tom Tromey  <tom@tromey.com>
11261
11262         * macrocmd.c (struct temporary_macro_definition): New.
11263         (macro_define_command): Use temporary_macro_definition.  Remove
11264         cleanups.
11265         (free_macro_definition_ptr): Remove.
11266
11267 2018-02-08  Tom Tromey  <tom@tromey.com>
11268
11269         * macroexp.c (maybe_expand): Use std::string.
11270
11271 2018-02-08  Tom Tromey  <tom@tromey.com>
11272
11273         * macroexp.c (struct macro_buffer): Add initializers for some
11274         members.
11275         (init_buffer, init_shared_buffer, free_buffer)
11276         (free_buffer_return_text): Remove.
11277         (macro_buffer): New constructors.
11278         (~macro_buffer): New destructor.
11279         (macro_buffer::set_shared): New method.
11280         (macro_buffer::resize_buffer, macro_buffer::appendc)
11281         (macro_buffer::appendmem): Now methods, not free functions.
11282         (set_token, append_tokens_without_splicing, stringify)
11283         (macro_stringify): Update.
11284         (gather_arguments): Change return type.  Remove argc_p argument,
11285         add args_ptr argument.  Use std::vector.
11286         (substitute_args): Remove argc argument.  Accept std::vector.
11287         (expand): Update.  Use std::vector.
11288         (scan, macro_expand, macro_expand_next): Update.
11289
11290 2018-02-08  Tom Tromey  <tom@tromey.com>
11291
11292         * symtab.c (default_collect_symbol_completion_matches_break_on):
11293         Use unique_xmalloc_ptr.
11294         * macroscope.h: (sal_macro_scope, user_macro_scope)
11295         (default_macro_scope): Return unique_xmalloc_ptr.
11296         * macroscope.c (sal_macro_scope, user_macro_scope)
11297         (default_macro_scope): Return unique_xmalloc_ptr.
11298         * macroexp.h (macro_expand, macro_expand_once): Return
11299         unique_xmalloc_ptr.
11300         * macroexp.c (macro_expand, macro_expand_once): Return
11301         unique_xmalloc_ptr.
11302         * macrocmd.c (macro_expand_command, macro_expand_once_command)
11303         (info_macro_command, info_macros_command): Use
11304         unique_xmalloc_ptr.
11305         * compile/compile-c-support.c (write_macro_definitions): Use
11306         unique_xmalloc_ptr.
11307         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
11308
11309 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
11310
11311         * value.c (value_static_field): Assign field type instead of
11312         containing type when returning an optimized out value.
11313
11314 2018-02-06  Yao Qi  <yao.qi@linaro.org>
11315
11316         * ft32-tdep.c (ft32_read_pc): Remove.
11317         (ft32_write_pc): Remove.
11318         (ft32_gdbarch_init): Update.
11319         * m32r-tdep.c (m32r_read_pc): Remove.
11320         (m32r_gdbarch_init): Update.
11321         * mep-tdep.c (mep_read_pc): Remove.
11322         (mep_gdbarch_init): Update.
11323         * microblaze-tdep.c (microblaze_write_pc): Remove.
11324         (microblaze_gdbarch_init): Update.
11325         * mn10300-tdep.c (mn10300_read_pc): Remove.
11326         (mn10300_write_pc): Remove.
11327         (mn10300_gdbarch_init): Update.
11328         * moxie-tdep.c (moxie_read_pc): Remove.
11329         (moxie_write_pc): Remove.
11330         (moxie_gdbarch_init): Update.
11331
11332 2018-02-06  Yao Qi  <yao.qi@linaro.org>
11333
11334         * expprint.c (print_subexp_standard): Handle
11335         OP_F77_UNDETERMINED_ARGLIST.
11336         (dump_subexp_body_standard): Likewise.
11337
11338 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
11339
11340         * target-descriptions.c (tdesc_element_visitor) Add empty
11341         implementations.
11342         (tdesc_type): Move make_gdb_type from here.
11343         (tdesc_type_builtin): Likewise.
11344         (tdesc_type_vector): Likewise.
11345         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
11346         (make_gdb_type_struct): Move from tdesc_type_with_fields.
11347         (make_gdb_type_union): Likewise.
11348         (make_gdb_type_flags): Likewise.
11349         (make_gdb_type_enum): Likewise.
11350         (make_gdb_type): New function.
11351         (tdesc_register_type): Use static make_gdb_type.
11352
11353 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
11354
11355         * infcmd.c (default_print_one_register_info): Align natural-format
11356         column values consistently one under another.
11357         (pad_to_column): New function.
11358
11359 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
11360
11361         * dwarf2read.c (dwarf2_physname): Move commment.
11362
11363 2018-02-01  Leszek Swirski  <leszeks@google.com>
11364
11365         * varobj.c (varobj_formatted_print_options): Allow recursive
11366         pretty printing if pretty printing is enabled.
11367
11368 2018-02-01  Leszek Swirski  <leszeks@google.com>
11369
11370         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
11371         names after a structop as a filename.
11372
11373 2018-02-01  Yao Qi  <yao.qi@linaro.org>
11374
11375         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
11376         (arm_record_coproc_data_proc): Likewise.
11377
11378 2018-02-01  Yao Qi  <yao.qi@linaro.org>
11379
11380         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
11381
11382 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
11383
11384         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
11385         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
11386
11387 2018-01-31  Pedro Alves  <palves@redhat.com>
11388
11389         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
11390         * inflow.c (child_terminal_save_inferior): Wrap reference to
11391         tcgetpgrp in HAVE_TERMIOS_H.
11392         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
11393         _WIN32.
11394         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
11395         always iterate over all inferiors.
11396         (gdbsim_cntrl_c): Adjust.
11397         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
11398
11399 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
11400
11401         * gdbtypes.c (lookup_array_range_type): Make sure the array's
11402         index type is objfile-owned if the element type is as well.
11403
11404 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
11405
11406         GDB 8.1 released.
11407
11408 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
11409
11410         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
11411         "features/s390x-linux64.c".
11412         (_initialize_s390_linux_tdep): Remove initialization of tdescs
11413         s390_linux32 and s390x_linux64.
11414         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
11415         default tdesc.
11416         * s390-tdep.c: Include "features/s390-linux32.c" and
11417         "features/s390x-linux64.c".
11418         (s390_tdesc_valid): Add check for tdesc_has_registers.
11419         (s390_gdbarch_init): Make sure there is always a valid tdesc.
11420         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
11421         tdesc_s390x_linux64.
11422         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
11423         tdesc_s390x_linux64 to...
11424         * s390-tdep.h: ...here.
11425
11426 2018-01-30  Pedro Alves  <palves@redhat.com>
11427
11428         PR gdb/13211
11429         * config.in, configure: Regenerate.
11430         * configure.ac: Check for getpgid.
11431         * go32-nat.c (go32_pass_ctrlc): New.
11432         (go32_target): Install it.
11433         * inf-child.c (inf_child_target): Install
11434         child_terminal_save_inferior, child_pass_ctrlc and
11435         child_interrupt.
11436         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
11437         (inf_ptrace_target): No longer install it.
11438         * infcmd.c (interrupt_target_1): Adjust.
11439         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
11440         (child_interrupt): Declare.
11441         (inferior::terminal_state): New.
11442         * inflow.c (struct terminal_info): Update comments.
11443         (inferior_process_group): Delete.
11444         (terminal_is_ours): Delete.
11445         (gdb_tty_state): New.
11446         (child_terminal_init): Adjust.
11447         (is_gdb_terminal, sharing_input_terminal_1)
11448         (sharing_input_terminal): New functions.
11449         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
11450         Set the process's actual process group in the foreground if
11451         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
11452         mark terminal as the inferior's if not sharing GDB's terminal.
11453         Don't check attach_flag.
11454         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
11455         pass down a target_terminal_state.
11456         (child_terminal_save_inferior): New, factored out from ...
11457         (child_terminal_ours_1): ... this.  Handle
11458         target_terminal_state::is_ours_for_output.
11459         (child_interrupt, child_pass_ctrlc): New.
11460         (inflow_inferior_exit): Clear the inferior's terminal_state.
11461         (copy_terminal_info): Copy the inferior's terminal state.
11462         (_initialize_inflow): Remove reference to terminal_is_ours.
11463         * inflow.h (inferior_process_group): Delete.
11464         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
11465         * procfs.c (procfs_target): Don't install procfs_interrupt.
11466         (procfs_interrupt): Delete.
11467         * remote.c (remote_serial_quit_handler): Adjust.
11468         (remote_interrupt): Remove ptid parameter.  Adjust.
11469         * target-delegates.c: Regenerate.
11470         * target.c: Include "terminal.h".
11471         (target_terminal::terminal_state): Rename to ...
11472         (target_terminal::m_terminal_state): ... this.
11473         (target_terminal::init): Adjust.
11474         (target_terminal::inferior): Adjust to per-inferior
11475         terminal_state.
11476         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
11477         (target_terminal::ours, target_terminal::ours_for_output): Use
11478         target_terminal_is_ours_kind.
11479         (target_interrupt): Remove ptid parameter.  Adjust.
11480         (default_target_pass_ctrlc): Adjust.
11481         * target.h (target_ops::to_terminal_save_inferior): New field.
11482         (target_ops::to_interrupt): Remove ptid_t parameter.
11483         (target_interrupt): Remove ptid_t parameter.  Update comment.
11484         (target_pass_ctrlc): Update comment.
11485         * target/target.h (target_terminal_state): New scoped enum,
11486         factored out of ...
11487         (target_terminal::terminal_state): ... here.
11488         (target_terminal::inferior): Update comments.
11489         (target_terminal::restore_inferior): New.
11490         (target_terminal::is_inferior, target_terminal::is_ours)
11491         (target_terminal::is_ours_for_output): Adjust.
11492         (target_terminal::scoped_restore_terminal_state): Adjust to
11493         rename, and call restore_inferior() instead of inferior().
11494         (target_terminal::scoped_restore_terminal_state::m_state): Change
11495         type.
11496         (target_terminal::terminal_state): Rename to ...
11497         (target_terminal::m_terminal_state): ... this and change type.
11498
11499 2018-01-30  Pedro Alves  <palves@redhat.com>
11500
11501         * linux-nat.c (wait_for_signal): New function.
11502         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
11503         directly.
11504         (async_terminal_is_ours)
11505         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
11506         (linux_nat_add_target): Don't override
11507         to_terminal_inferior/to_terminal_ours.
11508
11509 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
11510
11511         * remote.c (remote_follow_fork): Don't call "detach_inferior".
11512
11513 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
11514
11515         * dwarf2read.c (free_dwo_files): Add forward-declaration.
11516         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
11517         dwarf2_per_objfile_free here.
11518         (dwarf2_per_objfile_free): Remove.
11519         (_initialize_dwarf2_read): Don't register
11520         dwarf2_per_objfile_free as a registry cleanup.
11521
11522 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
11523
11524         Avoid compilation errors in MinGW native builds
11525
11526         The error is triggered by including python-internal.h, and the
11527         error message is:
11528
11529              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
11530                       from build-gnulib/import/math.h:27,
11531                       from d:/usr/Python26/include/pyport.h:235,
11532                       from d:/usr/Python26/include/Python.h:58,
11533                       from python/python-internal.h:94,
11534                       from python/py-arch.c:24:
11535              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
11536         using ::hypot;
11537                 ^~~~~
11538
11539         This happens because Python headers define 'hypot' to expand t
11540         '_hypot' in the Windows builds.
11541         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
11542         'hypoth'.  This avoids a compilation error.
11543
11544 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
11545
11546         * MAINTAINERS (Write After Approval): Fix ordering.
11547
11548 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
11549
11550         * MAINTAINERS (Write After Approval): Add Alan Hayward.
11551
11552 2018-01-26  Alan Modra  <amodra@gmail.com>
11553
11554         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
11555         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
11556         Remove nop.  Make const.  Comment.
11557         (powerpc32_plt_stub_so_2): New.
11558         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
11559         Correct count.  Update uses.
11560         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
11561         Move common code reading PLT entry word.  Correct
11562         powerpc32_plt_stub PLT address calculation.
11563         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
11564         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
11565         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
11566         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
11567         (ppc64_standard_linkage8): Likewise.
11568         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
11569         Correct insns description.
11570         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
11571
11572 2018-01-24  Pedro Alves  <palves@redhat.com>
11573
11574         GCC PR libstdc++/83906
11575         * gdbtypes.c (operator==(const dynamic_prop &,
11576         const dynamic_prop &)): New.
11577         (operator==(const range_bounds &, const range_bounds &)): New.
11578         (check_types_equal): Use them instead of memcmp.
11579         * gdbtypes.h (operator==(const dynamic_prop &,
11580         const dynamic_prop &)): Declare.
11581         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
11582         (operator==(const range_bounds &, const range_bounds &)): Declare.
11583         (operator!=(const range_bounds &, const range_bounds &)): Declare.
11584
11585 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
11586
11587         * s390-linux-tdep.c (s390_record_address_mask)
11588         (s390_record_calc_disp_common, s390_record_calc_disp)
11589         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
11590         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
11591         (s390_process_record): Move to s390-tdep.c.
11592         (s390_linux_init_abi_any): Adjust.
11593         * s390-tdep.c (s390_record_address_mask)
11594         (s390_record_calc_disp_common, s390_record_calc_disp)
11595         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
11596         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
11597         (s390_process_record): Moved from s390-linux-tdep.c
11598         (s390_gdbarch_init): Adjust.
11599
11600 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
11601
11602         * s390-linux-nat.c (s390-tdep.h): New include.
11603         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
11604         (HFILES_NO_SRCDIR): Add s390-tdep.h.
11605         (ALLDEPFILES): Add s390-tdep.c.
11606         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
11607         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
11608         * s390-tdep.h: ...this.  New file.
11609         * s390-linux-tdep.c (s390-tdep.h): New include.
11610         (_initialize_s390_tdep): Rename to...
11611         (_initialize_s390_linux_tdep): ...this and adjust.
11612         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
11613         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
11614         s390-tdep.h.
11615         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
11616         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
11617         (s390_is_partial_instruction, s390_software_single_step)
11618         (is_non_branch_ril, s390_displaced_step_copy_insn)
11619         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
11620         (s390_prologue_data, s390_addr, s390_store, s390_load)
11621         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
11622         (s390_register_call_saved, s390_guess_tracepoint_registers)
11623         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
11624         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
11625         (s390_pseudo_register_name, s390_pseudo_register_type)
11626         (s390_pseudo_register_read, s390_pseudo_register_write)
11627         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
11628         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
11629         (s390_addr_bits_remove, s390_address_class_type_flags)
11630         (s390_address_class_type_flags_to_name)
11631         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
11632         (s390_function_arg_float, s390_function_arg_vector)
11633         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
11634         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
11635         (s390_frame_align, s390_register_return_value, s390_return_value)
11636         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
11637         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
11638         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
11639         (s390_trad_frame_prev_register, s390_unwind_cache)
11640         (s390_prologue_frame_unwind_cache)
11641         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
11642         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
11643         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
11644         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
11645         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
11646         (s390_frame_base_address, s390_local_base_address)
11647         (s390_frame_base, s390_gcc_target_options)
11648         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
11649         (s390_validate_reg_range, s390_tdesc_valid)
11650         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
11651         * s390-tdep.c: ...this.  New file.
11652
11653 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
11654
11655         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
11656         (s390_process_record, s390_gdbarch_tdep_alloc)
11657         (s390_linux_init_abi_any): Use/set new hook.
11658
11659 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
11660
11661         * s390-linux-tdep.c (osabi.h): New include.
11662         (s390_linux_init_abi_31, s390_linux_init_abi_64)
11663         (s390_linux_init_abi_any): New functions.
11664         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
11665
11666 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
11667
11668         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
11669         tdesc_has_registers check
11670
11671 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
11672
11673         * s390-linux-tdep.c (s390_tdesc_valid): New function.
11674         (s390_validate_reg_range): New macro.
11675         (s390_gdbarch_init): Adjust.
11676
11677 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
11678
11679         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
11680         (s390_gdbarch_tdep_alloc): Adjust.
11681         (s390_gdbarch_init): Adjust.
11682
11683 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
11684
11685         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
11686         <have_tdb>: Change type to bool.
11687         (s390_gdbarch_tdep_alloc): Adjust.
11688         (s390_gdbarch_init): Adjust.
11689
11690 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
11691
11692         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
11693         (gdbarch_tdep) <have_upper, have_vx>: New fields.
11694         (s390_gdbarch_tdep_alloc): New function.
11695         (s390_gdbarch_init): Allocate tdep at start and use its fields
11696         instead of separate variables.
11697
11698 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
11699
11700         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
11701         when looking for cached gdbarch and add comment for remaining.
11702
11703 2018-01-22  Pedro Alves  <palves@redhat.com>
11704             Sergio Durigan Junior  <sergiodj@redhat.com>
11705
11706         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
11707         case.
11708
11709 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
11710
11711         * MAINTAINERS: Update my company e-mail address.
11712
11713 2018-01-22  Yao Qi  <yao.qi@linaro.org>
11714
11715         * regcache.c (cooked_write_test): New function.
11716         (_initialize_regcache): Register the test.
11717
11718 2018-01-22  Yao Qi  <yao.qi@linaro.org>
11719
11720         * ia64-tdep.c (ia64_pseudo_register_read): Call
11721         regcache->cooked_read instead of regcache_cooked_read_unsigned.
11722         * m32c-tdep.c (m32c_cat_read): Likewise.
11723         (m32c_r3r2r1r0_read): Likewise.
11724         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
11725         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
11726
11727 2018-01-22  Yao Qi  <yao.qi@linaro.org>
11728
11729         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
11730         method raw_read instead of regcache_raw_read.
11731         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
11732         * arm-tdep.c (arm_neon_quad_read): Likewise.
11733         * avr-tdep.c (avr_pseudo_register_read): Likewise.
11734         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
11735         * frv-tdep.c (frv_pseudo_register_read): Likewise.
11736         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
11737         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
11738         (i386_pseudo_register_read_into_value): Likewise.
11739         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
11740         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
11741         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
11742         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
11743         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
11744         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
11745         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
11746         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
11747         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
11748
11749 2018-01-22  Yao Qi  <yao.qi@linaro.org>
11750
11751         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
11752         * configure.tgt: Remove target mt.
11753         * mt-tdep.c: Remove.
11754         * regcache.c (cooked_read_test): Remove the check for mt.
11755
11756 2018-01-22  Yao Qi  <yao.qi@linaro.org>
11757
11758         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
11759         instead of gdbarch_pseudo_register_read_value.
11760
11761 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
11762
11763         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
11764         language is Ada.
11765
11766 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
11767
11768         * linespec.c (create_sals_line_offset): Remove code that preserved
11769         the symtab_and_line's line number.
11770
11771 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
11772
11773         * varobj.c (varobj_create): Don't set valid_block when creating a
11774         floating varobj.
11775
11776 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
11777
11778         * varobj.c (varobj_create): Remove out of date comment.
11779
11780 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
11781
11782         PR mi/20395
11783         * ada-exp.y (write_var_from_sym): Pass extra parameter when
11784         updating innermost block.
11785         * parse.c (innermost_block_tracker::update): Take extra type
11786         parameter, and check types match before updating innermost block.
11787         (write_dollar_variable): Update innermost block for registers.
11788         * parser-defs.h (enum innermost_block_tracker_type): New enum.
11789         (innermost_block_tracker::innermost_block_tracker): Initialise
11790         m_types member.
11791         (innermost_block_tracker::reset): Take type parameter.
11792         (innermost_block_tracker::update): Take type parameter, and pass
11793         type through as needed.
11794         (innermost_block_tracker::m_types): New member.
11795         * varobj.c (varobj_create): Pass type when reseting innermost
11796         block.
11797
11798 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
11799
11800         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
11801         * ada-lang.c (resolve_subexp): Likewise.
11802         * breakpoint.c (set_breakpoint_condition) Likewise.
11803         (watch_command_1) Likewise.
11804         * c-exp.y (variable): Likewise.
11805         * d-exp.y (PrimaryExpression): Likewise.
11806         * f-exp.y (variable): Likewise.
11807         * go-exp.y (variable): Likewise.
11808         * m2-exp.y (variable): Likewise.
11809         * objfiles.c (objfile::~objfile): Likewise.
11810         * p-exp.y (variable): Likewise.
11811         * parse.c (innermost_block): Change type.
11812         * parser-defs.h (class innermost_block_tracker): New.
11813         (innermost_block): Change to innermost_block_tracker.
11814         * printcmd.c (display_command): Switch to innermost_block API.
11815         (do_one_display): Likewise.
11816         * rust-exp.y (do_one_display): Likewise.
11817         * symfile.c (clear_symtab_users): Likewise.
11818         * varobj.c (varobj_create): Switch to innermost_block API, replace
11819         use of innermost_block with block stored on varobj object.
11820
11821 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
11822
11823         * expression.h (innermost_block): Remove declaration.
11824         * varobj.c: Add 'parser-defs.h' include.
11825
11826 2018-01-19  Tom Tromey  <tom@tromey.com>
11827
11828         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
11829         symbols in the static and global blocks.
11830
11831 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
11832
11833         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
11834         gdb_ptrace.h, and move including gdb_wait.h ...
11835         * nat/linux-ptrace.h: ... to here.
11836
11837 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
11838
11839         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
11840         inf_ptrace_detach_success.
11841         (inf_ptrace_detach_success): Add inferior parameter, use it
11842         instead of inferior_ptid, pass it to detach_inferior.
11843         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
11844         parameter.
11845         * inferior.c (detach_inferior): Add overload that takes an
11846         inferior object.
11847         * inferior.h (detach_inferior): Likewise.
11848         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
11849         use inferior_ptid, adjust call to inf_ptrace_detach_success.
11850         * linux-thread-db.c (thread_db_detach): Use inf parameter.
11851
11852 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
11853
11854         * target.h (struct target_ops) <to_detach>: Add inferior
11855         parameter.
11856         (target_detach): Likewise.
11857         * target.c (dispose_inferior): Pass inferior down.
11858         (target_detach): Pass inferior down.  Assert that it is equal to
11859         the current inferior.
11860         * aix-thread.c (aix_thread_detach): Pass inferior down.
11861         * corefile.c (core_file_command): Pass current_inferior() down.
11862         * corelow.c (core_detach): Add inferior parameter.
11863         * darwin-nat.c (darwin_detach): Likewise.
11864         * gnu-nat.c (gnu_detach): Likewise.
11865         * inf-ptrace.c (inf_ptrace_detach): Likewise.
11866         * infcmd.c (detach_command): Pass current_inferior() down to
11867         target_detach.
11868         * infrun.c (follow_fork_inferior): Pass parent_inf to
11869         target_detach.
11870         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
11871         target_detach.
11872         * linux-nat.c (linux_nat_detach): Add inferior parameter.
11873         * linux-thread-db.c (thread_db_detach): Likewise.
11874         * nto-procfs.c (procfs_detach): Likewise.
11875         * procfs.c (procfs_detach): Likewise.
11876         * record.c (record_detach): Likewise.
11877         * record.h (struct inferior): Forward-declare.
11878         (record_detach): Add inferior parameter.
11879         * remote-sim.c (gdbsim_detach): Likewise.
11880         * remote.c (remote_detach_1): Likewise.
11881         (remote_detach): Likewise.
11882         (extended_remote_detach): Likewise.
11883         * sol-thread.c (sol_thread_detach): Likewise.
11884         * target-debug.h (target_debug_print_inferior_p): New macro.
11885         * target-delegates.c: Re-generate.
11886         * top.c (kill_or_detach): Pass inferior down to target_detach.
11887         * windows-nat.c (windows_detach): Add inferior parameter.
11888
11889 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
11890
11891         * target.h (struct target_ops) <to_detach>: Remove args
11892         parameter.
11893         (target_detach): Likewise.
11894         * target.c (dispose_inferior): Adjust.
11895         (target_detach): Remove args parameter, adjust.
11896         * aix-thread.c (aix_thread_detach): Adjust.
11897         * corefile.c (core_file_command): Adjust.
11898         * corelow.c (core_detach): Adjust.
11899         * darwin-nat.c (darwin_detach): Adjust.
11900         * gnu-nat.c (gnu_detach): Adjust.
11901         * inf-ptrace.c (inf_ptrace_detach): Adjust.
11902         * infcmd.c (detach_command): Adjust
11903         * infrun.c (follow_fork_inferior): Adjust.
11904         (handle_vfork_child_exec_or_exit): Adjust.
11905         * linux-fork.c (linux_fork_detach): Remove args parameter.
11906         * linux-fork.h (linux_fork_detach): Likewise.
11907         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
11908         * linux-thread-db.c (thread_db_detach): Likewise.
11909         * nto-procfs.c (procfs_detach): Likewise.
11910         * procfs.c (procfs_detach): Likewise.
11911         (do_detach): Remove signo parameter.
11912         * record.c (record_detach): Remove args parameter.
11913         * record.h (record_detach): Likewise.
11914         * remote-sim.c (gdbsim_detach): Likewise.
11915         * remote.c (remote_detach_1): Likewise.
11916         (remote_detach): Likewise.
11917         (extended_remote_detach): Likewise.
11918         * sol-thread.c (sol_thread_detach): Likewise.
11919         * target-delegates.c: Re-generate.
11920         * top.c (struct qt_args) <args>: Remove field.
11921         (kill_or_detach): Don't pass args.
11922         (quit_force): Don't set args.
11923         * windows-nat.c (windows_detach): Remove args parameter.
11924
11925 2018-01-19  Yao Qi  <yao.qi@linaro.org>
11926
11927         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
11928         (arm_linux_init_abi): Install it.
11929
11930 2018-01-19  Yao Qi  <yao.qi@linaro.org>
11931
11932         * osabi.c (gdb_osabi_names): Extend the regexp for
11933         arm-linux-gnueabihf.
11934
11935 2018-01-18  Yao Qi  <yao.qi@linaro.org>
11936
11937         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
11938         m_abbrevs.
11939         (abbrev_table::add_abbrev): Update.
11940         (abbrev_table::lookup_abbrev): Update.
11941
11942 2018-01-18  Yao Qi  <yao.qi@linaro.org>
11943
11944         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
11945
11946 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
11947
11948         * compile/compile.c (compile_to_object): Convert "triplet_rx"
11949         to "std::string".
11950
11951 2018-01-17  Tom Tromey  <tom@tromey.com>
11952
11953         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
11954
11955 2018-01-17  Tom Tromey  <tom@tromey.com>
11956
11957         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
11958         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
11959         (create_array_type_with_stride): Update.
11960         * dwarf2read.c (set_die_type): Update.
11961
11962 2018-01-17  Tom Tromey  <tom@tromey.com>
11963
11964         * dwarf2read.c (delayed_method_info): Remove typedef.
11965         (dwarf2_cu::method_info): Now a std::vector.
11966         (add_to_method_list): Update.
11967         (free_delayed_list): Remove.
11968         (compute_delayed_physnames): Update.
11969         (process_full_comp_unit, process_full_type_unit): Clear the method
11970         list.  Remove cleanups.
11971         (psymtab_include_file_name): Add name_holder parameter.  Use
11972         unique_xmalloc_ptr.
11973         (dwarf_decode_lines): Update.
11974
11975 2018-01-17  Tom Tromey  <tom@tromey.com>
11976             Simon Marchi  <simon.marchi@ericsson.com>
11977
11978         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
11979         (dwarf2_per_objfile::free_cached_comp_units)
11980         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
11981         (init_cutu_and_read_dies_no_follow): Update.
11982         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
11983         (dwarf2_cu::~dwarf2_cu): New.
11984         (free_heap_comp_unit, free_stack_comp_unit): Remove.
11985         (age_cached_comp_units, free_one_cached_comp_unit): Update.
11986
11987 2018-01-17  Tom Tromey  <tom@tromey.com>
11988             Simon Marchi  <simon.marchi@ericsson.com>
11989
11990         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
11991         (struct die_reader_specs) <abbrev_table>: New member.
11992         (struct abbrev_table): Add constructor.
11993         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
11994         <abbrev_obstack>: Now an auto_obstack.
11995         (abbrev_table_up): New typedef.
11996         (init_cu_die_reader): Add abbrev_table parameter.
11997         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
11998         Add result_dwo_abbrev_table.
11999         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
12000         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
12001         Update.
12002         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
12003         parameter.
12004         (skip_children): Update.
12005         (abbrev_table::alloc_abbrev): Rename from
12006         abbrev_table_alloc_abbrev.
12007         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
12008         (abbrev_table::lookup_abbrev): Rename from
12009         abbrev_table_lookup_abbrev.
12010         (abbrev_table_read_table): Return abbrev_table_up.
12011         (abbrev_table_free, abbrev_table_free_cleanup)
12012         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
12013         (load_partial_dies): Update.
12014
12015 2018-01-17  Tom Tromey  <tom@tromey.com>
12016
12017         * dwarf2read.c (dwarf2_compute_name): Update comment.
12018         (read_func_scope, read_variable): Update.
12019         (new_symbol): Remove.
12020         (new_symbol_full): Rename to new_symbol.
12021
12022 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
12023
12024         PR gdb/16577
12025         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
12026         a warning instead of throwing an error, set section size to 0 and return
12027         NULL.
12028         * gdb_bfd.h (gdb_bfd_map_section): Update description.
12029
12030 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
12031
12032         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
12033         std::string.
12034         (linux_ptrace_attach_fail_reason_string): Likewise.
12035         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
12036         Likewise.
12037         (linux_ptrace_attach_fail_reason_string): Likewise.
12038         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
12039
12040 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
12041
12042         * linux-nat.c (linux_nat_attach): Remove xstrdup.
12043
12044 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
12045
12046         PR gdb/21559
12047         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
12048         checking for fs_base/gs_base fields in struct user_regs_struct.
12049         * configure: Regenerate.
12050
12051 2018-01-17  Yao Qi  <yao.qi@linaro.org>
12052
12053         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
12054         function.
12055         (aarch64_linux_init_abi): Install it to gdbarch hook
12056         gcc_target_options.
12057
12058 2018-01-15  Pedro Alves  <palves@redhat.com>
12059
12060         * common/signals-state-save-restore.c
12061         (save_original_signals_state): Fix typos.
12062
12063 2017-01-12  Tom Tromey  <tom@tromey.com>
12064             Sergio Durigan Junior  <sergiodj@redhat.com>
12065
12066         * Makefile.in (install-only): Install gdb-add-index.
12067
12068 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
12069
12070         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
12071
12072 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12073
12074         * infrun.c (keep_going_pass_signal): Clear step-over info when
12075         insert_breakpoints fails.
12076
12077 2018-01-11  Pedro Alves  <palves@redhat.com>
12078
12079         PR gdb/22583
12080         * infrun.c (resume): Rename to ...
12081         (resume_1): ... this.
12082         (resume): Reimplement as wrapper around resume_1.
12083
12084 2018-01-11  Pedro Alves  <palves@redhat.com>
12085
12086         PR remote/22597
12087         * remote.c (remote_parse_stop_reply): Default to the last-set
12088         general thread instead of to 'magic_null_ptid'.
12089
12090 2018-01-10  Pedro Alves  <palves@redhat.com>
12091
12092         * language.h (language_get_symbol_name_matcher): Rename ...
12093         (get_symbol_name_matcher): ... this.
12094         * language.c (language_get_symbol_name_matcher): Ditto.
12095         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
12096         callers adjusted.
12097
12098 2018-01-10  Pedro Alves  <palves@redhat.com>
12099
12100         PR gdb/22670
12101         * dwarf2read.c
12102         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
12103         Adjust to use language_get_symbol_name_matcher instead of
12104         language_defn::la_get_symbol_name_matcher.
12105         * language.c (language_get_symbol_name_matcher): If in Ada mode
12106         and the lookup name is a verbatim match, return Ada's matcher.
12107         * language.h (language_get_symbol_name_matcher): Adjust comment.
12108         (ada_lookup_name_info::verbatim_p):: New method.
12109
12110 2018-01-10  Pedro Alves  <palves@redhat.com>
12111
12112         PR gdb/22670
12113         * ada-lang.c (ada_collect_symbol_completion_matches): If the
12114         minsym's language is language_auto or language_cplus, pass down
12115         language_ada instead.
12116         * symtab.c (compare_symbol_name): Don't frob symbol language here.
12117
12118 2018-01-10  Pedro Alves  <palves@redhat.com>
12119
12120         PR gdb/22670
12121         * minsyms.c (linkage_name_str): New function.
12122         (iterate_over_minimal_symbols): Use it.
12123
12124 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
12125
12126         * NEWS: Document that 'info proc' now works on FreeBSD.
12127
12128 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
12129
12130         * configure.ac: Check for kinfo_getfile in libutil.
12131         * configure: Regenerate.
12132         * config.in: Regenerate.
12133         * fbsd-nat.c: Include "fbsd-tdep.h".
12134         (fbsd_fetch_cmdline): New.
12135         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
12136         rather than calling error.
12137         (fbsd_info_proc): New.
12138         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
12139         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
12140         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
12141
12142 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
12143
12144         * fbsd-nat.c (struct free_deleter): Remove.
12145         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
12146
12147 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
12148
12149         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
12150         NULL for an empty pathname.
12151
12152 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
12153
12154         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
12155         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
12156         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
12157         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
12158         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
12159         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
12160         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
12161         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
12162         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
12163         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
12164         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
12165         (fbsd_core_fetch_timeval, fbsd_print_sigset)
12166         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
12167         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
12168         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
12169
12170 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
12171
12172         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
12173         (gnu_xfer_auxv): New function.
12174         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
12175         TARGET_OBJECT_AUXV.
12176
12177 2018-01-08  Yao Qi  <yao.qi@linaro.org>
12178             Simon Marchi  <simon.marchi@ericsson.com>
12179
12180         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
12181         common/selftest.c.
12182         (COMMON_OBS): Remove selftest.o.
12183         * configure.ac: Append selftest-arch.c and common/selftest.c to
12184         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
12185         * configure: Re-generated.
12186         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
12187         GDB_SELF_TEST.
12188         (maintenance_info_selftests): Likewise.
12189
12190 2018-01-08  Xavier Roirand  <roirand@adacore.com>
12191
12192         * ada-valprint.c (val_print_packed_array_elements): Use
12193         proper number of elements when printing an array indexed
12194         by an enumeration type.
12195
12196 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
12197
12198         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
12199         (dw2_get_file_names_reader): Adjust.
12200         (lookup_dwo_signatured_type): Adjust.
12201         (lookup_dwp_signatured_type): Adjust.
12202         (lookup_signatured_type): Adjust.
12203         (create_type_unit_group): Adjust.
12204         (get_type_unit_group): Adjust.
12205         (process_psymtab_comp_unit_reader): Adjust.
12206         (build_type_psymtabs_reader): Adjust.
12207         (scan_partial_symbols): Adjust.
12208         (add_partial_symbol): Adjust.
12209         (add_partial_subprogram): Adjust.
12210         (peek_die_abbrev): Adjust.
12211         (fixup_go_packaging): Adjust.
12212         (process_imported_unit_die): Adjust.
12213         (dwarf2_compute_name): Adjust.
12214         (dwarf2_physname): Adjust.
12215         (read_import_statement): Adjust.
12216         (handle_DW_AT_stmt_list): Adjust.
12217         (read_file_scope): Adjust.
12218         (read_func_scope): Adjust.
12219         (read_lexical_block_scope): Adjust.
12220         (read_call_site_scope): Adjust.
12221         (read_variable): Adjust.
12222         (dwarf2_rnglists_process): Adjust.
12223         (dwarf2_ranges_process): Adjust.
12224         (dwarf2_ranges_read): Adjust.
12225         (dwarf2_get_pc_bounds): Adjust.
12226         (dwarf2_record_block_ranges): Adjust.
12227         (dwarf2_add_field): Adjust.
12228         (dwarf2_add_member_fn): Adjust.
12229         (read_structure_type): Adjust.
12230         (process_structure_scope): Adjust.
12231         (read_enumeration_type): Adjust.
12232         (read_array_type): Adjust.
12233         (mark_common_block_symbol_computed): Adjust.
12234         (read_common_block): Adjust.
12235         (read_namespace_type): Adjust.
12236         (read_namespace): Adjust.
12237         (read_module_type): Adjust.
12238         (read_tag_pointer_type): Adjust.
12239         (read_tag_ptr_to_member_type): Adjust.
12240         (read_tag_string_type): Adjust.
12241         (read_subroutine_type): Adjust.
12242         (read_typedef): Adjust.
12243         (read_base_type): Adjust.
12244         (attr_to_dynamic_prop): Adjust.
12245         (read_subrange_type): Adjust.
12246         (read_unspecified_type): Adjust.
12247         (dwarf2_read_abbrevs): Adjust.
12248         (load_partial_dies): Adjust.
12249         (read_partial_die): Adjust.
12250         (find_partial_die): Adjust.
12251         (guess_partial_die_structure_name): Adjust.
12252         (fixup_partial_die): Adjust.
12253         (read_attribute_value): Adjust.
12254         (read_addr_index): Adjust.
12255         (read_addr_index_from_leb128): Adjust.
12256         (read_str_index): Adjust.
12257         (dwarf2_string_attr): Adjust.
12258         (get_debug_line_section): Adjust.
12259         (dwarf_decode_line_header): Adjust.
12260         (lnp_state_machine::check_line_address): Adjust.
12261         (dwarf_decode_lines_1): Adjust.
12262         (dwarf_decode_lines): Adjust.
12263         (dwarf2_start_symtab): Adjust.
12264         (var_decode_location): Adjust.
12265         (new_symbol_full): Adjust.
12266         (dwarf2_const_value_data): Adjust.
12267         (dwarf2_const_value_attr): Adjust.
12268         (dwarf2_const_value): Adjust.
12269         (die_type): Adjust.
12270         (die_containing_type): Adjust.
12271         (build_error_marker_type): Adjust.
12272         (lookup_die_type): Adjust.
12273         (guess_full_die_structure_name): Adjust.
12274         (anonymous_struct_prefix): Adjust.
12275         (determine_prefix): Adjust.
12276         (dwarf2_name): Adjust.
12277         (follow_die_ref_or_sig): Adjust.
12278         (follow_die_offset): Adjust.
12279         (follow_die_ref): Adjust.
12280         (follow_die_sig_1): Adjust.
12281         (follow_die_sig): Adjust.
12282         (get_signatured_type): Adjust.
12283         (get_DW_AT_signature_type): Adjust.
12284         (decode_locdesc): Adjust.
12285         (dwarf_decode_macros): Adjust.
12286         (cu_debug_loc_section): Adjust.
12287         (fill_in_loclist_baton): Adjust.
12288         (dwarf2_symbol_mark_computed): Adjust.
12289         (init_one_comp_unit): Don't assign
12290         dwarf2_cu::dwarf2_per_objfile.
12291         (set_die_type): Adjust.
12292
12293 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
12294
12295         * dwarf2read.c (struct mapped_debug_names): Add constructor.
12296         <dwarf2_per_objfile>: New field.
12297         (dwarf2_per_objfile): Remove global.
12298         (get_dwarf2_per_objfile): New function.
12299         (set_dwarf2_per_objfile): New function.
12300         (dwarf2_build_psymtabs_hard): Change objfile parameter to
12301         dwarf2_per_objfile.
12302         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
12303         (read_abbrev_offset): Likewise.
12304         (read_indirect_string): Likewise.
12305         (read_indirect_line_string): Likewise.
12306         (read_indirect_string_at_offset): Likewise.
12307         (read_indirect_string_from_dwz): Likewise.
12308         (dwarf2_find_containing_comp_unit): Change objfile parameter to
12309         dwarf2_per_objfile.
12310         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
12311         (create_all_comp_units): Change objfile parameter to
12312         dwarf2_per_objfile.
12313         (create_all_type_units): Likewise.
12314         (process_queue): Add dwarf2_per_objfile parameter.
12315         (read_and_check_comp_unit_head): Likewise.
12316         (lookup_dwo_unit_in_dwp): Likewise.
12317         (get_dwp_file): Likewise.
12318         (process_cu_includes): Likewise.
12319         (struct free_dwo_file_cleanup_data): New struct.
12320         (dwarf2_has_info): Use get_dwarf2_per_objfile and
12321         set_dwarf2_per_objfile.
12322         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
12323         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
12324         context, adjust calls.
12325         (dw2_instantiate_symtab): Likewise.
12326         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
12327         (dw2_get_cu): Likewise.
12328         (create_cu_from_index_list): Change objfile parameter to
12329         dwarf2_per_objfile.
12330         (create_cus_from_index_list): Get dwarf2_per_objfile from
12331         context, adjust calls.
12332         (create_cus_from_index): Likewise.
12333         (create_signatured_type_table_from_index): Change objfile
12334         parameter to dwarf2_per_objfile.
12335         (create_signatured_type_table_from_debug_names): Change objfile
12336         parameter to dwarf2_per_objfile.
12337         (create_addrmap_from_index): Likewise.
12338         (create_addrmap_from_aranges): Likewise.
12339         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
12340         (dw2_setup): Remove.
12341         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
12342         context.
12343         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
12344         get_dwarf2_per_objfile.
12345         (dw2_forget_cached_source_info): Likewise.
12346         (dw2_map_symtabs_matching_filename): Likewise.
12347         (struct dw2_symtab_iterator) <index>: Remove.
12348         <dwarf2_per_objfile>: New field.
12349         (dw2_symtab_iter_init): Replace index parameter with
12350         dwarf2_per_objfile.
12351         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
12352         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
12353         (dw2_print_stats): Likewise.
12354         (dw2_dump): Likewise.
12355         (dw2_expand_symtabs_for_function): Likewise.
12356         (dw2_expand_all_symtabs): Likewise.
12357         (dw2_expand_symtabs_with_fullname): Likewise.
12358         (dw2_expand_marked_cus): Replace index and objfile parameters
12359         with dwarf2_per_objfile.
12360         (dw_expand_symtabs_matching_file_matcher): Add
12361         dwarf2_per_objfile parameter and adjust calls.
12362         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
12363         adjust calls.
12364         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
12365         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
12366         adjust calls.
12367         (create_cus_from_debug_names_list): Replace objfile parameter
12368         with dwarf2_per_objfile and adjust calls.
12369         (create_cus_from_debug_names): Likewise.
12370         (dwarf2_read_debug_names): Likewise.
12371         (mapped_debug_names::namei_to_name): Adjust call.
12372         (dw2_debug_names_iterator::next): Likewise.
12373         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
12374         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
12375         (dw2_debug_names_dump): Likewise.
12376         (dw2_debug_names_expand_symtabs_for_function): Likewise.
12377         (dw2_debug_names_expand_symtabs_matching): Likewise.
12378         (dwarf2_initialize_objfile): Likewise.
12379         (dwarf2_build_psymtabs): Likewise.
12380         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
12381         this_cu.
12382         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
12383         (read_and_check_comp_unit_head): Likewise.
12384         (read_abbrev_offset): Likewise.
12385         (create_debug_type_hash_table): Likewise.
12386         (create_debug_types_hash_table): Likewise.
12387         (create_all_type_units): Replace objfile parameter with
12388         dwarf2_per_objfile.
12389         (add_type_unit): Add dwarf2_per_objfile parameter.
12390         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
12391         with dwarf2_per_objfile.
12392         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
12393         (lookup_dwp_signatured_type): Likewise.
12394         (lookup_signatured_type): Likewise.
12395         (read_cutu_die_from_dwo): Likewise.
12396         (init_tu_and_read_dwo_dies): Likewise.
12397         (init_cutu_and_read_dies): Likewise.
12398         (init_cutu_and_read_dies_no_follow): Likewise.
12399         (allocate_type_unit_groups_table): Add objfile parameter.
12400         (create_type_unit_group): Use dwarf2_per_objfile from cu.
12401         (get_type_unit_group): Likewise.
12402         (process_psymtab_comp_unit): Update call.
12403         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
12404         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
12405         (print_tu_stats): Likewise.
12406         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
12407         in void* parameter.
12408         (build_type_psymtabs): Change objfile parameter to
12409         dwarf2_per_objfile.
12410         (process_skeletonless_type_unit): Use dwarf2_per_objfile
12411         passed in void* parameter.
12412         (process_skeletonless_type_units): Change objfile parameter to
12413         dwarf2_per_objfile.
12414         (set_partial_user): Likewise.
12415         (dwarf2_build_psymtabs_hard): Likewise.
12416         (read_comp_units_from_section): Likewise.
12417         (create_all_comp_units): Likewise.
12418         (scan_partial_symbols): Update calls.
12419         (add_partial_symbol): Likewise.
12420         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
12421         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
12422         (process_queue): Add dwarf2_per_objfile parameter.
12423         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
12424         (compute_compunit_symtab_includes): Likewise.
12425         (process_cu_includes): Add dwarf2_per_objfile parameter.
12426         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
12427         (process_full_type_unit): Likewise.
12428         (process_imported_unit_die): Update call.
12429         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
12430         (read_file_scope): Likewise.
12431         (allocate_dwo_file_hash_table): Add objfile parameter.
12432         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
12433         (create_cus_hash_table): Likewise.
12434         (create_dwp_hash_table): Likewise.
12435         (create_dwo_unit_in_dwp_v1): Likewise.
12436         (create_dwp_v2_section): Likewise.
12437         (create_dwo_unit_in_dwp_v2): Likewise.
12438         (lookup_dwo_unit_in_dwp): Likewise.
12439         (try_open_dwop_file): Likewise.
12440         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
12441         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
12442         cleanup to include a reference to dwarf2_per_objfile.
12443         (open_dwp_file): Add dwarf2_per_objfile parameter.
12444         (open_and_init_dwp_file): Likewise.
12445         (get_dwp_file): Likewise.
12446         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
12447         (queue_and_load_all_dwo_tus): Update call.
12448         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
12449         data.
12450         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
12451         (dwarf2_ranges_process): Likewise.
12452         (dwarf2_get_pc_bounds): Likewise.
12453         (mark_common_block_symbol_computed): Likewise.
12454         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
12455         (dwarf2_read_abbrevs): Update call.
12456         (read_partial_die): Use dwarf2_per_objfile from cu.
12457         (find_partial_die): Likewise.
12458         (fixup_partial_die): Likewise.
12459         (read_attribute_value): Likewise.
12460         (read_indirect_string_at_offset_from): Add objfile parameter.
12461         (read_indirect_string_at_offset): Add dwarf2_per_objfile
12462         parameter.
12463         (read_indirect_string_from_dwz): Add objfile parameter.
12464         (read_indirect_string): Add objfile parameter.
12465         (read_addr_index_1): Add dwarf2_per_objfile parameter.
12466         (read_addr_index): Use dwarf2_per_objfile from cu.
12467         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
12468         call dw2_setup.
12469         (read_str_index): Use dwarf2_per_objfile from cu.
12470         (get_debug_line_section): Likewise.
12471         (read_formatted_entries): Add dwarf2_per_objfile parameter.
12472         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
12473         (new_symbol_full): Use dwarf2_per_objfile from cu.
12474         (build_error_marker_type): Likewise.
12475         (lookup_die_type): Likewise.
12476         (determine_prefix): Likewise.
12477         (follow_die_offset): Likewise.
12478         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
12479         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
12480         (dwarf2_fetch_die_type_sect_off): Likewise.
12481         (dwarf2_get_die_type): Likewise.
12482         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
12483         (get_signatured_type): Likewise.
12484         (get_DW_AT_signature_type): Likewise.
12485         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
12486         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
12487         (cu_debug_loc_section): Likewise.
12488         (fill_in_loclist_baton): Likewise.
12489         (dwarf2_symbol_mark_computed): Likewise.
12490         (dwarf2_find_containing_comp_unit): Change objfile parameter to
12491         dwarf2_per_objfile.
12492         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
12493         parameter.
12494         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
12495         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
12496         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
12497         (set_die_type): Use dwarf2_free_objfile from cu.
12498         (get_die_type_at_offset): Likewise.
12499         (dwarf2_per_objfile_free): Don't assign global variable.
12500         (debug_names) <constructor>: Add dwarf2_per_objfile
12501         parameter, update m_debugstrlookup construction.
12502         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
12503         parameter.
12504         <m_dwarf2_per_objfile>: New field.
12505         <lookup>: Use m_dwarf2_per_objfile.
12506         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
12507         (psyms_seen_size): Likewise.
12508         (write_gdbindex): Replace objfile parameter with
12509         dwarf2_per_objfile.
12510         (write_debug_names): Likewise.
12511         (write_psymtabs_to_index): Likewise.
12512         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
12513         calls.
12514
12515 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
12516
12517         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
12518         <dwarf2_per_objfile>: New field.
12519         (struct dwarf2_per_cu_data) <objfile>: Remove.
12520         <dwarf2_per_objfile>: New field.
12521         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
12522         of objfile.
12523         (create_signatured_type_table_from_index): Likewise.
12524         (create_debug_type_hash_table): Likewise.
12525         (fill_in_sig_entry_from_dwo_entry): Likewise.
12526         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
12527         (create_type_unit_group): Assign dwarf2_per_objfile instead of
12528         objfile.
12529         (create_partial_symtab): Access objfile through
12530         dwarf2_per_objfile.
12531         (process_psymtab_comp_unit_reader): Likewise.
12532         (read_comp_units_from_section): Likewise.
12533         (scan_partial_symbols): Likewise.
12534         (add_partial_symbol): Likewise.
12535         (add_partial_subprogram): Likewise.
12536         (peek_die_abbrev): Likewise.
12537         (fixup_go_packaging): Likewise.
12538         (process_full_comp_unit): Likewise.
12539         (process_full_type_unit): Likewise.
12540         (process_imported_unit_die): Likewise.
12541         (dwarf2_compute_name): Likewise.
12542         (dwarf2_physname): Likewise.
12543         (read_import_statement): Likewise.
12544         (create_cus_hash_table): Assign dwarf2_physname instead of
12545         objfile.
12546         (read_func_scope): Access objfile through dwarf2_per_objfile.
12547         (read_lexical_block_scope): Likewise.
12548         (read_call_site_scope): Likewise.
12549         (read_variable): Likewise.
12550         (dwarf2_rnglists_process): Likewise.
12551         (dwarf2_ranges_process): Likewise.
12552         (dwarf2_ranges_read): Likewise.
12553         (dwarf2_record_block_ranges): Likewise.
12554         (dwarf2_add_field): Likewise.
12555         (dwarf2_add_member_fn): Likewise.
12556         (read_structure_type): Likewise.
12557         (process_structure_scope): Likewise.
12558         (read_enumeration_type): Likewise.
12559         (read_array_type): Likewise.
12560         (read_common_block): Likewise.
12561         (read_namespace_type): Likewise.
12562         (read_namespace): Likewise.
12563         (read_module_type): Likewise.
12564         (read_tag_pointer_type): Likewise.
12565         (read_tag_ptr_to_member_type): Likewise.
12566         (read_tag_string_type): Likewise.
12567         (read_subroutine_type): Likewise.
12568         (read_typedef): Likewise.
12569         (read_base_type): Likewise.
12570         (attr_to_dynamic_prop): Likewise.
12571         (read_subrange_type): Likewise.
12572         (read_unspecified_type): Likewise.
12573         (load_partial_dies): Likewise.
12574         (read_partial_die): Likewise.
12575         (find_partial_die): Likewise.
12576         (guess_partial_die_structure_name): Likewise.
12577         (fixup_partial_die): Likewise.
12578         (read_attribute_value): Likewise.
12579         (read_addr_index_from_leb128): Likewise.
12580         (dwarf2_read_addr_index): Likewise.
12581         (dwarf2_string_attr): Likewise.
12582         (lnp_state_machine::check_line_address): Likewise.
12583         (dwarf_decode_lines_1): Likewise.
12584         (dwarf_decode_lines): Likewise.
12585         (dwarf2_start_symtab): Likewise.
12586         (var_decode_location): Likewise.
12587         (new_symbol_full): Likewise.
12588         (dwarf2_const_value_data): Likewise.
12589         (dwarf2_const_value_attr): Likewise.
12590         (dwarf2_const_value): Likewise.
12591         (die_type): Likewise.
12592         (die_containing_type): Likewise.
12593         (lookup_die_type): Likewise.
12594         (guess_full_die_structure_name): Likewise.
12595         (anonymous_struct_prefix): Likewise.
12596         (dwarf2_name): Likewise.
12597         (follow_die_ref_or_sig): Likewise.
12598         (follow_die_offset): Likewise.
12599         (follow_die_ref): Likewise.
12600         (dwarf2_fetch_die_loc_sect_off): Likewise.
12601         (dwarf2_fetch_constant_bytes): Likewise.
12602         (dwarf2_fetch_die_type_sect_off): Likewise.
12603         (dwarf2_get_die_type): Likewise.
12604         (follow_die_sig): Likewise.
12605         (decode_locdesc): Likewise.
12606         (dwarf2_per_cu_objfile): Likewise.
12607         (dwarf2_per_cu_text_offset): Likewise.
12608         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
12609         objfile.
12610         (set_die_type): Access objfile through
12611         dwarf2_per_objfile.
12612
12613 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
12614
12615         * valprint.c (converted_character_d): Remove typedef.
12616         (DEF_VEC_O (converted_character_d)): Remove.
12617         (count_next_character): Use std::vector.
12618         (print_converted_chars_to_obstack): Likewise.
12619         (generic_printstr): Likewise.
12620
12621 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
12622
12623         * xml-support.h (struct gdb_xml_value): Add constructor.
12624         <value>: Change type to unique_xmalloc_ptr.
12625         (gdb_xml_value_s): Remove typedef.
12626         (DEF_VEC_O (gdb_xml_value_s)): Remove.
12627         (gdb_xml_element_start_handler): Change parameter type to
12628         std::vector.
12629         (xml_find_attribute): Likewise.
12630         * xml-support.c (xml_find_attribute): Change parameter type to
12631         std::vector and adjust.
12632         (gdb_xml_values_cleanup): Remove.
12633         (gdb_xml_parser::start_element): Adjust to std::vector.
12634         (xinclude_start_include): Change paraeter type to std::vector
12635         and adjust.
12636         * btrace.c (check_xml_btrace_version): Likewise.
12637         (parse_xml_btrace_block): Likewise.
12638         (parse_xml_btrace_pt_config_cpu): Likewise.
12639         (parse_xml_btrace_pt): Likewise.
12640         (parse_xml_btrace_conf_bts): Likewise.
12641         (parse_xml_btrace_conf_pt): Likewise.
12642         * memory-map.c (memory_map_start_memory): Likewise.
12643         (memory_map_start_property): Likewise.
12644         * osdata.c (osdata_start_osdata): Likewise.
12645         (osdata_start_item): Likewise.
12646         (osdata_start_column): Likewise.
12647         * remote.c (start_thread): Likewise.
12648         * solib-aix.c (library_list_start_library): Likewise.
12649         (library_list_start_list): Likewise.
12650         * solib-svr4.c (library_list_start_library): Likewise.
12651         (svr4_library_list_start_list): Likewise.
12652         * solib-target.c (library_list_start_segment): Likewise.
12653         (library_list_start_section): Likewise.
12654         (library_list_start_library): Likewise.
12655         (library_list_start_list): Likewise.
12656         * tracepoint.c (traceframe_info_start_memory): Likewise.
12657         (traceframe_info_start_tvar): Likewise.
12658         * xml-syscall.c (syscall_start_syscall): Likewise.
12659         * xml-tdesc.c (tdesc_start_target): Likewise.
12660         (tdesc_start_feature): Likewise.
12661         (tdesc_start_reg): Likewise.
12662         (tdesc_start_union): Likewise.
12663         (tdesc_start_struct): Likewise.
12664         (tdesc_start_flags): Likewise.
12665         (tdesc_start_enum): Likewise.
12666         (tdesc_start_field): Likewise.
12667         (tdesc_start_enum_value): Likewise.
12668         (tdesc_start_vector): Likewise.
12669
12670 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
12671
12672         * extension.h (struct xmethod_worker) <clone>: Remove.
12673         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
12674         Remove.
12675         (python_xmethod_worker::clone): Remove.
12676         * valops.c (find_overload_match): Use std::move instead of
12677         clone.
12678
12679 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
12680
12681         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
12682         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
12683         <free_xmethod_worker_data>: Remove.
12684         <get_matching_xmethod_workers>: Chance VEC to std::vector.
12685         <get_xmethod_arg_types>: Remove.
12686         <get_xmethod_result_type>: Remove.
12687         <invoke_xmethod>: Remove.
12688         * extension.c (new_xmethod_worker): Remove.
12689         (clone_xmethod_worker): Remove.
12690         (get_matching_xmethod_workers): Return void, pass std::vector by
12691         pointer.
12692         (get_xmethod_arg_types): Rename to...
12693         (xmethod_worker::get_arg_types): ... this, and adjust.
12694         (get_xmethod_result_type): Rename to...
12695         (xmethod_worker::get_result_type): ... this, and adjust.
12696         (invoke_xmethod): Remove.
12697         (free_xmethod_worker): Remove.
12698         (free_xmethod_worker_vec): Remove.
12699         * extension.h (enum ext_lang_rc): Move here from
12700         extension-priv.h.
12701         (struct xmethod_worker): Add constructor and destructor.
12702         <data>: Remove.
12703         <value>: Remove.
12704         <invoke, clone, do_get_result_type, do_get_arg_types>: New
12705         virtual pure methods.
12706         <get_arg_types, get_result_type>: New methods.
12707         (xmethod_worker_ptr): Remove typedef.
12708         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
12709         (xmethod_worker_vec): Remove typedef.
12710         (xmethod_worker_up): New typedef.
12711         (invoke_xmethod): Remove.
12712         (clone_xmethod_worker): Remove.
12713         (free_xmethod_worker): Remove.
12714         (free_xmethod_worker_vec): Remove.
12715         (get_xmethod_arg_types): Remove.
12716         (get_xmethod_result_type): Remove.
12717         * valops.c (find_method_list): Use std::vector, don't use
12718         intermediate vector.
12719         (value_find_oload_method_list): Use std::vector.
12720         (find_overload_match): Use std::vector.
12721         (find_oload_champ): Use std::vector.
12722         * value.c (value_free): Use operator delete.
12723         (value_of_xmethod): Rename to...
12724         (value_from_xmethod): ... this.  Don't assign
12725         xmethod_worker::value, take rvalue-reference.
12726         (result_type_of_xmethod): Adjust.
12727         (call_xmethod): Adjust.
12728         * value.h: Include extension.h.
12729         (struct xmethod_worker): Don't forward-declare.
12730         (value_of_xmethod): Rename to...
12731         (value_from_xmethod): ... this, take rvalue-reference.
12732         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
12733         (struct python_xmethod_worker): ... this, add constructor and
12734         destructor.
12735         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
12736         (gdbpy_free_xmethod_worker_data): Rename to...
12737         (python_xmethod_worker::~python_xmethod_worker): ... this and
12738         adjust.
12739         (gdbpy_clone_xmethod_worker_data): Rename to...
12740         (python_xmethod_worker::clone): ... this and adjust.
12741         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
12742         temporary vector.
12743         (gdbpy_get_xmethod_arg_types): Rename to...
12744         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
12745         (gdbpy_get_xmethod_result_type): Rename to...
12746         (python_xmethod_worker::do_get_result_type): ... this and
12747         adjust.
12748         (gdbpy_invoke_xmethod): Rename to...
12749         (python_xmethod_worker::invoke): ... this and adjust.
12750         (new_python_xmethod_worker): Rename to...
12751         (python_xmethod_worker::python_xmethod_worker): ... this and
12752         adjust.
12753         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
12754         Remove.
12755         (gdbpy_free_xmethod_worker_data): Remove.
12756         (gdbpy_get_matching_xmethod_workers): Use std::vector.
12757         (gdbpy_get_xmethod_arg_types): Remove.
12758         (gdbpy_get_xmethod_result_type): Remove.
12759         (gdbpy_invoke_xmethod): Remove.
12760         * python/python.c (python_extension_ops): Remove obsolete
12761         callbacks.
12762
12763 2018-01-05  Pedro Alves  <palves@redhat.com>
12764
12765         PR gdb/18653
12766         * common/signals-state-save-restore.c
12767         (save_original_signals_state): New parameter 'quiet'.  Warn if we
12768         find a custom handler preinstalled, instead of internal erroring.
12769         But only warn if !quiet.
12770         * common/signals-state-save-restore.h
12771         (save_original_signals_state): New parameter 'quiet'.
12772         * main.c (captured_main_1): Move save_original_signals_state call
12773         after option handling, and pass QUIET.
12774
12775 2018-01-05  Pedro Alves  <palves@redhat.com>
12776
12777         * spu-tdep.c (spu_catch_start): Pass
12778         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
12779
12780 2018-01-05  Pedro Alves  <palves@redhat.com>
12781
12782         PR gdb/22670
12783         * ada-lang.c (literal_symbol_name_matcher): New function.
12784         (ada_get_symbol_name_matcher): Use it for
12785         symbol_name_match_type::SEARCH_NAME.
12786         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
12787         it down instead of assuming symbol_name_match_type::FULL.
12788         * block.h (block_lookup_symbol): New parameter 'match_type'.
12789         * c-valprint.c (print_unpacked_pointer): Use
12790         lookup_symbol_search_name instead of lookup_symbol.
12791         * compile/compile-object-load.c (get_out_value_type): Pass down
12792         symbol_name_match_type::SEARCH_NAME.
12793         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
12794         symbol_name_match_type::FULL.
12795         * cp-support.c (cp_get_symbol_name_matcher): Handle
12796         symbol_name_match_type::SEARCH_NAME.
12797         * infrun.c (insert_exception_resume_breakpoint): Use
12798         lookup_symbol_search_name.
12799         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
12800         * psymtab.c (maintenance_check_psymtabs): Use
12801         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
12802         * stack.c (print_frame_args): Use lookup_symbol_search_name and
12803         SYMBOL_SEARCH_NAME.
12804         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
12805         if symbol_name_match_type::SEARCH_NAME.
12806         (lookup_symbol_in_language): Pass down
12807         symbol_name_match_type::FULL.
12808         (lookup_symbol_search_name): New.
12809         (lookup_language_this): Pass down
12810         symbol_name_match_type::SEARCH_NAME.
12811         (lookup_symbol_aux, lookup_local_symbol): New parameter
12812         'match_type'.  Pass it down.
12813         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
12814         (lookup_symbol_search_name): New declaration.
12815         (lookup_symbol_in_block): New 'match_type' parameter.
12816
12817 2018-01-05  Pedro Alves  <palves@redhat.com>
12818
12819         PR gdb/22670
12820         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
12821         ada_lookup_symbol.
12822         (ada_lookup_symbol): Reimplement in terms of
12823         ada_lookup_symbol_list, bits factored out from
12824         ada_lookup_encoded_symbol.
12825
12826 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
12827
12828         * ada-exp.y (write_object_renaming): When subscripting an array
12829         using a symbol as the index, pass the block in call to
12830         ada_lookup_encoded_symbol when looking that symbol up.
12831
12832 2018-01-05  Jerome Guitton  <guitton@adacore.com>
12833
12834         * ada-lang.c (ada_array_length): Use ada_index_type instead of
12835         TYPE_INDEX_TYPE.
12836
12837 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
12838
12839         * ada-lang.c (ada_to_fixed_value_create): Add handling of
12840         the case where VALUE_LVAL (val0) is not lval_memory.
12841
12842 2018-01-05  Xavier Roirand  <roirand@adacore.com>
12843
12844         * ada-valprint.c (print_optional_low_bound): Handle
12845         character-indexed array printing like boolean-indexed array
12846         printing.
12847
12848 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
12849
12850         * NEWS: Create a new section for the next release branch.
12851         Rename the section of the current branch, now that it has
12852         been cut.
12853
12854 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
12855
12856         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
12857         * version.in: Bump version to 8.1.50.DATE-git.
12858
12859 2018-01-03  Xavier Roirand  <roirand@adacore.com>
12860
12861         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
12862         Add field.
12863         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
12864         Add field.
12865         (default_exception_support_info) <catch_handlers_sym>: Add field.
12866         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
12867         (ada_exception_name_addr_1): Add "catch handlers" handling.
12868         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
12869         Update all callers.
12870         (create_excep_cond_exprs) <ex>: Add parameter.
12871         (re_set_exception): Update create_excep_cond_exprs call.
12872         (print_it_exception, print_one_exception, print_mention_exception)
12873         (print_recreate_exception): Add "catch handler" handling.
12874         (allocate_location_catch_handlers, re_set_catch_handlers)
12875         (check_status_catch_handlers, print_it_catch_handlers)
12876         (print_one_catch_handlers, print_mention_catch_handlers)
12877         (print_recreate_catch_handlers): New function.
12878         (catch_handlers_breakpoint_ops): New variable.
12879         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
12880         Add parameter.  Add "catch handler" handling.
12881         (ada_exception_sym_name, ada_exception_breakpoint_ops):
12882         Add "catch handler" handling.
12883         (ada_exception_catchpoint_cond_string): Add "catch handler"
12884         handling.
12885         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
12886         call.
12887         (catch_ada_handlers_command): New function.
12888         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
12889         operations structure.
12890         (_initialize_ada_language): Add "catch handlers" command entry.
12891         * NEWS: Document "catch handlers" feature.
12892
12893 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
12894
12895         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
12896         account when creating the array type of the slice.
12897         (ada_value_slice): Likewise.
12898
12899 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
12900
12901         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
12902         New enum value.
12903         (create_array_type_with_stride): Add byte_stride_prop parameter.
12904         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
12905         New parameter.  Update all callers in this file.
12906         (array_type_has_dynamic_stride): New function.
12907         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
12908         of arrays with dynamic byte strides.
12909         * dwarf2read.c (read_array_type): Add support for dynamic
12910         DW_AT_byte_stride attributes.
12911
12912 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
12913
12914         * dwarf2read.c (read_unspecified_type): Treat
12915         DW_TAG_enumeration_type DIEs from Ada units as stubs.
12916
12917 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
12918
12919         Update copyright year range in all GDB files.
12920
12921 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
12922
12923         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
12924         and gdb/testsuite/gdb.base/step-line.c.
12925
12926 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
12927
12928         * copyright.py (main): Dump the contents of
12929         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
12930         even if BY_HAND is empty.
12931
12932 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
12933
12934         * top.c (print_gdb_version): Update Copyright year in version
12935         message.
12936
12937 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
12938
12939         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
12940
12941 For older changes see ChangeLog-2017.
12942 \f
12943 Local Variables:
12944 mode: change-log
12945 left-margin: 8
12946 fill-column: 74
12947 version-control: never
12948 coding: utf-8
12949 End: