Remove unused tui_win_info::detail::opaque
[external/binutils.git] / gdb / ChangeLog
1 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2
3         * tui/tui-data.h (struct tui_win_info)
4         <detail::opaque>: Remove.
5         * tui/tui-data.c (init_win_info): Remove assignment.
6
7 2018-09-05  Tom Tromey  <tom@tromey.com>
8
9         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
10         -Wformat-nonliteral.
11         * target-float.c (host_float_ops<T>::to_string)
12         (host_float_ops<T>::from_string): Use
13         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
14         * configure: Rebuild.
15
16 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
17
18         * printcmd.c (printf_c_string): Use
19         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
20         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
21
22 2018-09-05  Tom Tromey  <tom@tromey.com>
23
24         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
25
26 2018-09-05  Tom de Vries  <tdevries@suse.de>
27
28         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
29         with resolve_abstract_p == true.
30         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
31         defaulting to false. Propagate resolve_abstract_p to
32         dwarf2_fetch_die_loc_sect_off.
33         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
34         parameter, defaulting to false.
35         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
36         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
37         parameter.
38         * dwarf2read.h (struct die_info): Forward-declare.
39         (die_info_ptr): New typedef.
40         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
41
42 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
43
44         GDB 8.2 released.
45
46 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
47             Pedro Alves  <palves@redhat.com>
48
49         * gnulib/Makefile.in (aclocal_m4_deps): Move to
50         "aclocal-m4-deps.mk".  Include file here.
51         $(srcdir)/aclocal.m4: Add "configure.ac".
52         * gnulib/aclocal-m4-deps.mk: New file.
53         * gnulib/update-gnulib.sh: Automatically update
54         "aclocal-m4-deps.mk".
55
56 2018-09-04  Tom Tromey  <tom@tromey.com>
57
58         * configure: Rebuild.
59         * configure.ac: Remove multi-ice code.
60
61 2018-09-04  Tom Tromey  <tom@tromey.com>
62
63         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
64         (ada-exp.o): Update.
65
66 2018-09-04  Tom Tromey  <tom@tromey.com>
67
68         * Makefile.in (printcmd.o, target-float.o): Remove.
69         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
70
71 2018-09-04  Tom Tromey  <tom@tromey.com>
72
73         * gnulib/Makefile.in: Remove obsolete comment.
74         * Makefile.in: Remove obsolete comment.
75
76 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
77
78         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
79         line with '+'.
80
81 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
82
83         * riscv-tdep.c: Add 'prologue-value.h' include.
84         (struct riscv_unwind_cache): New struct.
85         (riscv_debug_unwinder): New global.
86         (riscv_scan_prologue): Update arguments, capture register details
87         from prologue scan.
88         (riscv_skip_prologue): Reformat arguments line, move end of
89         prologue calculation into riscv_scan_prologue.
90         (riscv_frame_cache): Update return type, create
91         riscv_unwind_cache, scan the prologue, and fill in remaining cache
92         details.
93         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
94         (riscv_frame_prev_register): Use the trad_frame within the
95         riscv_unwind_cache.
96         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
97         flag.
98
99 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
100
101         * trad-frame.h (trad_frame_set_realreg): Declare.
102         (trad_frame_set_addr): Declare.
103         * trad-frame.c (trad_frame_set_realreg): Define new function.
104         (trad_frame_set_addr): Define new function.
105         (trad_frame_set_reg_realreg): Use new function.
106         (trad_frame_set_reg_addr): Use new function.
107
108 2018-09-01  Keith Seitz  <keiths@redhat.com>
109
110         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
111         pulongest instead of "%lld".
112         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
113         ATTRIBUTE_UNUSED.
114
115 2018-08-31  Tom Tromey  <tom@tromey.com>
116
117         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
118         variant part type.
119
120 2018-08-31  Pedro Alves  <palves@redhat.com>
121
122         * gdbarch.h: Regenerate.
123
124 2018-08-31  Pedro Alves  <palves@redhat.com>
125
126         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
127         * target.h (Hardware watchpoint interfaces): Describe
128         continuable/steppable/non-steppable watchpoints.
129         * gdbarch.h, gdbarch.c: Regenerate.
130
131 2018-08-31  Pedro Alves  <palves@redhat.com>
132
133         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
134         Delete.
135         * s390-linux-nat.c
136         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
137         * target.h (target_ops::have_continuable_watchpoint): Delete.
138         (target_have_continuable_watchpoint): Delete.
139         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
140         * target-delegates.c: Regenerate.
141
142 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
143
144         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
145         the files present in "gnulib/import/m4/".
146
147 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
148
149         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
150         c.sw, c.swsp, and c.sdsp.
151
152 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
153
154         * riscv-tdep.c (struct riscv_inferior_data): Delete.
155         (riscv_read_misa_reg): Don't cache value read into inferior data.
156         (riscv_new_inferior_data): Delete.
157         (riscv_inferior_data_cleanup): Delete.
158         (riscv_inferior_data): Delete.
159         (riscv_invalidate_inferior_data): Delete.
160         (_initialize_riscv_tdep): Remove initialisation of inferior data.
161
162 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
163
164         * compile/compile-cplus-types.c
165         (compile_cplus_instance::leave_scope): Take the address of scope
166         object.
167         (compile_cplus_instance::convert_qualified_base): Compare quals
168         to 0.
169
170 2018-08-30  Keith Seitz  <keiths@redhat.com>
171
172         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
173         Use "%s" and host_address_to_string instead of "%p" in printf.
174
175 2018-08-29  Keith Seitz  <keiths@redhat.com>
176
177         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
178         and compile-cplus-types.c.
179         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
180         * c-lang.c (cplus_language_defn): Set C++ compile functions.
181         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
182         Declare.
183         * compile/compile-c-support.c: Include compile-cplus.h.
184         (load_libcompile): Templatize.
185         (get_compile_context): "New" function.
186         (c_get_compile_context): Use get_compile_context.
187         (cplus_get_compile_context): New function.
188         (cplus_push_user_expression, cplus_pop_user_expression)
189         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
190         (cplus_compute_program): Define new structs/functions.
191         * compile/compile-cplus-symmbols.c: New file.
192         * compile/compile-cplus-types.c: New file.
193         * compile/compile-cplus.h: New file.
194         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
195         Declare.
196         * compile/compile-object-load.c (get_out_value_type): Use
197         strncmp_iw when comparing symbol names.
198         (compile_object_load): Add mst_bss and mst_data.
199         * compile/compile.c (_initialize_compile): Remove
200         -Wno-implicit-function-declaration from `compile_args'.
201         * compile/gcc-cp-plugin.h: New file.
202         * NEWS: Mention C++ compile support and new debug options.
203
204 2018-08-29  Keith Seitz  <keiths@redhat.com>
205
206         * linespec.c (collect_info::add_symbol): Make virtual.
207         (struct symbol_searcher_collect_info): New struct.
208         (symbol_searcher::find_all_symbols): New method.
209         * symtab.h (class symbol_searcher): New class.
210
211 2018-08-29  Keith Seitz  <keiths@redhat.com>
212
213         * linespec.c (struct linespec) <function_symbols, label_symbols>:
214         Change to vector of block_symbol.  Update all users.
215         (struct collect_info) <symbols>: Likewise.
216         (collect_info::add_symbol): Take block_symbol as argument.
217         Update all callers.
218         (decode_compound_collector) <m_symbols>: Change type to vector
219         of block_symbol.  Update all users.
220         (decode_compound_collector::operator ()): Change parameter type
221         to block_symbol.
222         (find_method, find_function_symbols, find_linespec_symbols)
223         (find_label_symbols_in_block, find_label_symbols): Change symbol
224         vectors to block_symbol vectors.
225         * symtab.h (symbol_found_callback_ftype): Change parameter type to
226         block_symbol.
227
228 2018-08-29  Keith Seitz  <keiths@redhat.com>
229
230         * linespec.c (symbolp): Remove typedef and VEC definitions.
231         (bound_minimal_symbol_d): Likewise.
232
233 2018-08-29  Keith Seitz  <keiths@redhat.com>
234
235         * linespec.c (decode_compound_collector::decode_compound_collector):
236         Remove initialization for `m_symtabs'.
237         (decode_compound_collector::release_symbols): Change return type
238         to std::vector.  Update all callers.
239         (class decode_compound_collector) <m_symbols>: Change type to
240         std::vector.
241         (lookup_prefix_sym): Change return type to std::vector.  Update all
242         callers.
243         (compare_symbols): Remove.
244         (std_compare_symbols): Rename to `compare_symbols'.
245         (find_method): Change `sym_classes' parameter to std::vector.
246         Update all callers.  Use std::sort to sort sym_classes.
247         (find_linespec_symbols): Remove cleanup.
248
249 2018-08-29  Keith Seitz  <keiths@redhat.com>
250
251         * linespec.c (struct linespec) <minimal_symbols>: Change type to
252         std::vector.  Update all users.
253         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
254         (struct collect_info) <minimal_symbols>: Likewise.
255         (compare_msymbols): Return bool.  Change parameters to const
256         bound_minimal_symbol references.
257         (find_method, find_function_symbols, find_linespec_symbols): Change
258         `minsyms' parameter to std::vector.  Update all callers.
259
260 2018-08-29  Keith Seitz  <keiths@redhat.com>
261
262         * linespec.c (struct linespec) <label_symbols>: Change type to
263         std::vector.  Update all users.
264         (find_label_symbols_in_block): Change `result' parameter to
265         std::vector.  Update all callers.
266         (find_label_symbols): Return std::vector.  Update all callers.
267
268 2018-08-29  Keith Seitz  <keiths@redhat.com>
269
270         * linespec.c (struct linespec) <function_symbols>: Change type to
271         std::vector.  Update all users.
272         (struct collect_info) <function_symbols>: Likewise.
273         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
274         (std_compare_symbols): New function.
275         (find_method, find_function_symbols, find_linespec_symbols)
276         (find_label_symbols_in_block): Change `symbols' parameter to
277         std::vector.  Update all callers.
278         (find_label_symbols): Likewise for `function_symbols' and
279         `label_funcs_ret'.
280
281 2018-08-29  Keith Seitz  <keiths@redhat.com>
282
283         * linespec.c (symtab_vector_up): Define.
284         (struct linespec) <file_symtabs>: Change type to std::vector *.
285         Update all uses.
286         (struct collect_info) <file_symtabs>: Likewise.
287         (collect_symtabs_from_filename): Return symtab_vector_up.
288         Update all callers.
289         (decode_objc): Remove cleanup.
290         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
291         (symtab_collector::release_symtabs): Return symtab_vector_up.
292         Update all callers.
293         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
294         Update all users.
295         (collect_symtabs_from_filename, symtabs_from_filename): Return
296         symtab_vector_up.  Update all callers.
297
298 2018-08-29  Tom Tromey  <tom@tromey.com>
299
300         * csky-tdep.c (csky_analyze_prologue): Use
301         core_addr_to_string_nz.
302
303 2018-08-29  Tom Tromey  <tom@tromey.com>
304
305         * windows-nat.c (struct xlate_exception) <them>: Change type to
306         DWORD.
307         (xlate): Fix formatting.  Remove last entry.
308         (struct xlate_exception, xlate): Comment out.
309         (windows_nat_target::resume): Use ranged for.
310
311 2018-08-29  Jim Wilson  <jimw@sifive.com>
312
313         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
314         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
315         of NT_PRFPREG.
316         (riscv_linux_nat_target::store_registers): Likewise.
317
318 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
319
320         PR gdb/23555
321         PR gdb/23558
322         * gnulib/aclocal.m4: Regenerate.
323         * gnulib/config.in: Regenerate.
324         * gnulib/configure: Regenerate.
325         * gnulib/import/Makefile.am: Update.
326         * gnulib/import/Makefile.in: Update.
327         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
328         * gnulib/import/_Noreturn.h: ... this.
329         * gnulib/import/alloca.in.h: Update.
330         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
331         * gnulib/import/arg-nonnull.h: ... this.
332         * gnulib/import/assure.h: Update.
333         * gnulib/import/at-func.c: Update.
334         * gnulib/import/basename-lgpl.c: Update.
335         * gnulib/import/extra/snippet/c++defs.h: Rename to...
336         * gnulib/import/c++defs.h: ... this.
337         * gnulib/import/canonicalize-lgpl.c: Update.
338         * gnulib/import/cdefs.h: Update.
339         * gnulib/import/chdir-long.c: Update.
340         * gnulib/import/chdir-long.h: Update.
341         * gnulib/import/cloexec.c: Update.
342         * gnulib/import/cloexec.h: Update.
343         * gnulib/import/close.c: Update.
344         * gnulib/import/closedir.c: Update.
345         * gnulib/import/config.charset: Update.
346         * gnulib/import/dirent-private.h: Update.
347         * gnulib/import/dirent.in.h: Update.
348         * gnulib/import/dirfd.c: Update.
349         * gnulib/import/dirname-lgpl.c: Update.
350         * gnulib/import/dirname.h: Update.
351         * gnulib/import/dosname.h: Update.
352         * gnulib/import/dup-safer-flag.c: Update.
353         * gnulib/import/dup-safer.c: Update.
354         * gnulib/import/dup.c: Update.
355         * gnulib/import/dup2.c: Update.
356         * gnulib/import/errno.in.h: Update.
357         * gnulib/import/error.c: Update.
358         * gnulib/import/error.h: Update.
359         * gnulib/import/exitfail.c: Update.
360         * gnulib/import/exitfail.h: Update.
361         * gnulib/import/extra/update-copyright: Update.
362         * gnulib/import/fchdir.c: Update.
363         * gnulib/import/fcntl.c: Update.
364         * gnulib/import/fcntl.in.h: Update.
365         * gnulib/import/fd-hook.c: Update.
366         * gnulib/import/fd-hook.h: Update.
367         * gnulib/import/fd-safer-flag.c: Update.
368         * gnulib/import/fd-safer.c: Update.
369         * gnulib/import/fdopendir.c: Update.
370         * gnulib/import/filename.h: Update.
371         * gnulib/import/filenamecat-lgpl.c: Update.
372         * gnulib/import/filenamecat.h: Update.
373         * gnulib/import/flexmember.h: Update.
374         * gnulib/import/float+.h: Update.
375         * gnulib/import/float.c: Update.
376         * gnulib/import/float.in.h: Update.
377         * gnulib/import/fnmatch.c: Update.
378         * gnulib/import/fnmatch.in.h: Update.
379         * gnulib/import/fnmatch_loop.c: Update.
380         * gnulib/import/fpucw.h: Update.
381         * gnulib/import/frexp.c: Update.
382         * gnulib/import/frexpl.c: Update.
383         * gnulib/import/fstat.c: Update.
384         * gnulib/import/fstatat.c: Update.
385         * gnulib/import/getcwd-lgpl.c: Update.
386         * gnulib/import/getcwd.c: Update.
387         * gnulib/import/getdtablesize.c: Update.
388         * gnulib/import/getlogin_r.c: Update.
389         * gnulib/import/getprogname.c: Update.
390         * gnulib/import/getprogname.h: Update.
391         * gnulib/import/gettext.h: Update.
392         * gnulib/import/gettimeofday.c: Update.
393         * gnulib/import/glob-libc.h: Update.
394         * gnulib/import/glob.c: Update.
395         * gnulib/import/glob.in.h: Update.
396         * gnulib/import/glob_internal.h: Update.
397         * gnulib/import/glob_pattern_p.c: Update.
398         * gnulib/import/globfree.c: Update.
399         * gnulib/import/hard-locale.c: Update.
400         * gnulib/import/hard-locale.h: Update.
401         * gnulib/import/intprops.h: Update.
402         * gnulib/import/inttypes.in.h: Update.
403         * gnulib/import/isnan.c: Update.
404         * gnulib/import/isnand-nolibm.h: Update.
405         * gnulib/import/isnand.c: Update.
406         * gnulib/import/isnanl-nolibm.h: Update.
407         * gnulib/import/isnanl.c: Update.
408         * gnulib/import/itold.c: Update.
409         * gnulib/import/libc-config.h: Update.
410         * gnulib/import/limits.in.h: Update.
411         * gnulib/import/localcharset.c: Update.
412         * gnulib/import/localcharset.h: Update.
413         * gnulib/import/localtime-buffer.c: Update.
414         * gnulib/import/localtime-buffer.h: Update.
415         * gnulib/import/lstat.c: Update.
416         * gnulib/import/m4/00gnulib.m4: Update.
417         * gnulib/import/m4/__inline.m4: Update.
418         * gnulib/import/m4/absolute-header.m4: Update.
419         * gnulib/import/m4/alloca.m4: Update.
420         * gnulib/import/m4/builtin-expect.m4: Update.
421         * gnulib/import/m4/canonicalize.m4: Update.
422         * gnulib/import/m4/chdir-long.m4: Update.
423         * gnulib/import/m4/close.m4: Update.
424         * gnulib/import/m4/closedir.m4: Update.
425         * gnulib/import/m4/configmake.m4: Update.
426         * gnulib/import/m4/d-ino.m4: Update.
427         * gnulib/import/m4/d-type.m4: Update.
428         * gnulib/import/m4/dirent_h.m4: Update.
429         * gnulib/import/m4/dirfd.m4: Update.
430         * gnulib/import/m4/dirname.m4: Update.
431         * gnulib/import/m4/double-slash-root.m4: Update.
432         * gnulib/import/m4/dup.m4: Update.
433         * gnulib/import/m4/dup2.m4: Update.
434         * gnulib/import/m4/eealloc.m4: Update.
435         * gnulib/import/m4/environ.m4: Update.
436         * gnulib/import/m4/errno_h.m4: Update.
437         * gnulib/import/m4/error.m4: Update.
438         * gnulib/import/m4/exponentd.m4: Update.
439         * gnulib/import/m4/exponentl.m4: Update.
440         * gnulib/import/m4/extensions.m4: Update.
441         * gnulib/import/m4/extern-inline.m4: Update.
442         * gnulib/import/m4/fchdir.m4: Update.
443         * gnulib/import/m4/fcntl-o.m4: Update.
444         * gnulib/import/m4/fcntl.m4: Update.
445         * gnulib/import/m4/fcntl_h.m4: Update.
446         * gnulib/import/m4/fdopendir.m4: Update.
447         * gnulib/import/m4/filenamecat.m4: Update.
448         * gnulib/import/m4/flexmember.m4: Update.
449         * gnulib/import/m4/float_h.m4: Update.
450         * gnulib/import/m4/fnmatch.m4: Update.
451         * gnulib/import/m4/fnmatch_h.m4: Update.
452         * gnulib/import/m4/fpieee.m4: Update.
453         * gnulib/import/m4/frexp.m4: Update.
454         * gnulib/import/m4/frexpl.m4: Update.
455         * gnulib/import/m4/fstat.m4: Update.
456         * gnulib/import/m4/fstatat.m4: Update.
457         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
458         * gnulib/import/m4/getcwd-path-max.m4: Update.
459         * gnulib/import/m4/getcwd.m4: Update.
460         * gnulib/import/m4/getdtablesize.m4: Update.
461         * gnulib/import/m4/getlogin.m4: Update.
462         * gnulib/import/m4/getlogin_r.m4: Update.
463         * gnulib/import/m4/getpagesize.m4: Update.
464         * gnulib/import/m4/getprogname.m4: Update.
465         * gnulib/import/m4/gettimeofday.m4: Update.
466         * gnulib/import/m4/glibc21.m4: Update.
467         * gnulib/import/m4/glob.m4: Update.
468         * gnulib/import/m4/glob_h.m4: Update.
469         * gnulib/import/m4/gnulib-cache.m4: Update.
470         * gnulib/import/m4/gnulib-common.m4: Update.
471         * gnulib/import/m4/gnulib-comp.m4: Update.
472         * gnulib/import/m4/gnulib-tool.m4: Update.
473         * gnulib/import/m4/hard-locale.m4: Update.
474         * gnulib/import/m4/include_next.m4: Update.
475         * gnulib/import/m4/inttypes-pri.m4: Update.
476         * gnulib/import/m4/inttypes.m4: Update.
477         * gnulib/import/m4/isnand.m4: Update.
478         * gnulib/import/m4/isnanl.m4: Update.
479         * gnulib/import/m4/largefile.m4: Update.
480         * gnulib/import/m4/limits-h.m4: Update.
481         * gnulib/import/m4/localcharset.m4: Update.
482         * gnulib/import/m4/locale-fr.m4: Update.
483         * gnulib/import/m4/locale-ja.m4: Update.
484         * gnulib/import/m4/locale-zh.m4: Update.
485         * gnulib/import/m4/localtime-buffer.m4: Update.
486         * gnulib/import/m4/longlong.m4: Update.
487         * gnulib/import/m4/lstat.m4: Update.
488         * gnulib/import/m4/malloc.m4: Update.
489         * gnulib/import/m4/malloca.m4: Update.
490         * gnulib/import/m4/math_h.m4: Update.
491         * gnulib/import/m4/mbrtowc.m4: Update.
492         * gnulib/import/m4/mbsinit.m4: Update.
493         * gnulib/import/m4/mbsrtowcs.m4: Update.
494         * gnulib/import/m4/mbstate_t.m4: Update.
495         * gnulib/import/m4/memchr.m4: Update.
496         * gnulib/import/m4/memmem.m4: Update.
497         * gnulib/import/m4/mempcpy.m4: Update.
498         * gnulib/import/m4/memrchr.m4: Update.
499         * gnulib/import/m4/mkdir.m4: Update.
500         * gnulib/import/m4/mkstemp.m4: Update.
501         * gnulib/import/m4/mmap-anon.m4: Update.
502         * gnulib/import/m4/mode_t.m4: Update.
503         * gnulib/import/m4/msvc-inval.m4: Update.
504         * gnulib/import/m4/msvc-nothrow.m4: Update.
505         * gnulib/import/m4/multiarch.m4: Update.
506         * gnulib/import/m4/nocrash.m4: Update.
507         * gnulib/import/m4/off_t.m4: Update.
508         * gnulib/import/m4/onceonly.m4: Update.
509         * gnulib/import/m4/open-cloexec.m4: Update.
510         * gnulib/import/m4/open.m4: Update.
511         * gnulib/import/m4/openat.m4: Update.
512         * gnulib/import/m4/opendir.m4: Update.
513         * gnulib/import/m4/pathmax.m4: Update.
514         * gnulib/import/m4/rawmemchr.m4: Update.
515         * gnulib/import/m4/readdir.m4: Update.
516         * gnulib/import/m4/readlink.m4: Update.
517         * gnulib/import/m4/realloc.m4: Update.
518         * gnulib/import/m4/rename.m4: Update.
519         * gnulib/import/m4/rewinddir.m4: Update.
520         * gnulib/import/m4/rmdir.m4: Update.
521         * gnulib/import/m4/save-cwd.m4: Update.
522         * gnulib/import/m4/secure_getenv.m4: Update.
523         * gnulib/import/m4/setenv.m4: Update.
524         * gnulib/import/m4/signal_h.m4: Update.
525         * gnulib/import/m4/ssize_t.m4: Update.
526         * gnulib/import/m4/stat-time.m4: Update.
527         * gnulib/import/m4/stat.m4: Update.
528         * gnulib/import/m4/std-gnu11.m4: Update.
529         * gnulib/import/m4/stdbool.m4: Update.
530         * gnulib/import/m4/stddef_h.m4: Update.
531         * gnulib/import/m4/stdint.m4: Update.
532         * gnulib/import/m4/stdio_h.m4: Update.
533         * gnulib/import/m4/stdlib_h.m4: Update.
534         * gnulib/import/m4/strchrnul.m4: Update.
535         * gnulib/import/m4/strdup.m4: Update.
536         * gnulib/import/m4/strerror.m4: Update.
537         * gnulib/import/m4/string_h.m4: Update.
538         * gnulib/import/m4/strstr.m4: Update.
539         * gnulib/import/m4/strtok_r.m4: Update.
540         * gnulib/import/m4/sys_socket_h.m4: Update.
541         * gnulib/import/m4/sys_stat_h.m4: Update.
542         * gnulib/import/m4/sys_time_h.m4: Update.
543         * gnulib/import/m4/sys_types_h.m4: Update.
544         * gnulib/import/m4/tempname.m4: Update.
545         * gnulib/import/m4/time_h.m4: Update.
546         * gnulib/import/m4/unistd-safer.m4: Update.
547         * gnulib/import/m4/unistd_h.m4: Update.
548         * gnulib/import/m4/warn-on-use.m4: Update.
549         * gnulib/import/m4/wchar_h.m4: Update.
550         * gnulib/import/m4/wchar_t.m4: Update.
551         * gnulib/import/m4/wctype_h.m4: Update.
552         * gnulib/import/m4/wint_t.m4: Update.
553         * gnulib/import/malloc.c: Update.
554         * gnulib/import/malloc/scratch_buffer.h: Update.
555         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
556         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
557         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
558         * gnulib/import/malloca.c: Update.
559         * gnulib/import/malloca.h: Update.
560         * gnulib/import/malloca.valgrind: Update.
561         * gnulib/import/math.in.h: Update.
562         * gnulib/import/mbrtowc.c: Update.
563         * gnulib/import/mbsinit.c: Update.
564         * gnulib/import/mbsrtowcs-impl.h: Update.
565         * gnulib/import/mbsrtowcs-state.c: Update.
566         * gnulib/import/mbsrtowcs.c: Update.
567         * gnulib/import/memchr.c: Update.
568         * gnulib/import/memmem.c: Update.
569         * gnulib/import/mempcpy.c: Update.
570         * gnulib/import/memrchr.c: Update.
571         * gnulib/import/mkdir.c: Update.
572         * gnulib/import/mkstemp.c: Update.
573         * gnulib/import/msvc-inval.c: Update.
574         * gnulib/import/msvc-inval.h: Update.
575         * gnulib/import/msvc-nothrow.c: Update.
576         * gnulib/import/msvc-nothrow.h: Update.
577         * gnulib/import/open.c: Update.
578         * gnulib/import/openat-die.c: Update.
579         * gnulib/import/openat-priv.h: Update.
580         * gnulib/import/openat-proc.c: Update.
581         * gnulib/import/openat.c: Update.
582         * gnulib/import/openat.h: Update.
583         * gnulib/import/opendir.c: Update.
584         * gnulib/import/pathmax.h: Update.
585         * gnulib/import/pipe-safer.c: Update.
586         * gnulib/import/rawmemchr.c: Update.
587         * gnulib/import/readdir.c: Update.
588         * gnulib/import/readlink.c: Update.
589         * gnulib/import/realloc.c: Update.
590         * gnulib/import/ref-add.sin: Update.
591         * gnulib/import/ref-del.sin: Update.
592         * gnulib/import/rename.c: Update.
593         * gnulib/import/rewinddir.c: Update.
594         * gnulib/import/rmdir.c: Update.
595         * gnulib/import/same-inode.h: Update.
596         * gnulib/import/save-cwd.c: Update.
597         * gnulib/import/save-cwd.h: Update.
598         * gnulib/import/scratch_buffer.h: Update.
599         * gnulib/import/secure_getenv.c: Update.
600         * gnulib/import/setenv.c: Update.
601         * gnulib/import/signal.in.h: Update.
602         * gnulib/import/stat-time.c: Update.
603         * gnulib/import/stat-time.h: Update.
604         * gnulib/import/stat-w32.c: Update.
605         * gnulib/import/stat-w32.h: Update.
606         * gnulib/import/stat.c: Update.
607         * gnulib/import/stdbool.in.h: Update.
608         * gnulib/import/stddef.in.h: Update.
609         * gnulib/import/stdint.in.h: Update.
610         * gnulib/import/stdio.in.h: Update.
611         * gnulib/import/stdlib.in.h: Update.
612         * gnulib/import/str-two-way.h: Update.
613         * gnulib/import/strchrnul.c: Update.
614         * gnulib/import/strdup.c: Update.
615         * gnulib/import/streq.h: Update.
616         * gnulib/import/strerror-override.c: Update.
617         * gnulib/import/strerror-override.h: Update.
618         * gnulib/import/strerror.c: Update.
619         * gnulib/import/string.in.h: Update.
620         * gnulib/import/stripslash.c: Update.
621         * gnulib/import/strnlen1.c: Update.
622         * gnulib/import/strnlen1.h: Update.
623         * gnulib/import/strstr.c: Update.
624         * gnulib/import/strtok_r.c: Update.
625         * gnulib/import/sys_stat.in.h: Update.
626         * gnulib/import/sys_time.in.h: Update.
627         * gnulib/import/sys_types.in.h: Update.
628         * gnulib/import/tempname.c: Update.
629         * gnulib/import/tempname.h: Update.
630         * gnulib/import/time.in.h: Update.
631         * gnulib/import/unistd--.h: Update.
632         * gnulib/import/unistd-safer.h: Update.
633         * gnulib/import/unistd.in.h: Update.
634         * gnulib/import/unsetenv.c: Update.
635         * gnulib/import/verify.h: Update.
636         * gnulib/import/extra/snippet/warn-on-use.h: Update.
637         * gnulib/import/wchar.in.h: Update.
638         * gnulib/import/wctype.in.h: Update.
639         * gnulib/import/xalloc-oversized.h: Update.
640         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
641         "53e2c179f26a890fa6685af4b6c1397ee370433b".
642
643 2018-08-16  Gary Benson <gbenson@redhat.com>
644
645         PR gdb/13000:
646         * gdb/main.c (captured_main_1): Exit with nonzero status
647         in batch mode if the last command to be executed failed.
648         * NEWS: Mention the above.
649
650 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
651
652         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
653         end of warning message.
654
655 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
656
657         PR gdb/22943:
658         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
659         (aarch64_extract_return_value): Use
660         aapcs_is_vfp_call_or_return_candidate.
661         (aarch64_return_in_memory): Likewise.
662         (aarch64_store_return_value): Likewise.
663
664 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
665
666         * aarch64-tdep.c
667         (aapcs_is_vfp_call_or_return_candidate): Make static
668         (pass_in_v_or_stack): Remove function.
669         (pass_in_v_vfp_candidate): New function.
670         (aarch64_push_dummy_call): Check for float register candidates.
671
672 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
673
674         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
675         (aapcs_is_vfp_call_or_return_candidate_1): New function.
676         (aapcs_is_vfp_call_or_return_candidate): Likewise.
677
678 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
679
680         PR build/23399
681         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
682         (struct ipa_sym_addresses): Rename to...
683         (struct ipa_sym_addresses_common): ... this.
684         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
685
686 2018-08-28  Tom Tromey  <tom@tromey.com>
687
688         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
689         (token_fifo): Now a std::vector.
690         (yylex, c_parse): Update.
691         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
692         (token_fifo): Now a std::vector.
693         (yylex, d_parse): Update.
694         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
695         (token_fifo): Now a std::vector.
696         (yylex, go_parse): Update.
697
698 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
699
700         * parser-defs.h (struct type_stack) <elements>: Change type to
701         std::vector<union type_stack_elt>.
702         <depth, size>: Remove.
703         * parse.c (parse_exp_in_context_1): Adjust.
704         (type_stack_reserve): Remove.
705         (check_type_stack_depth): Remove.
706         (insert_into_type_stack): Adjust to std::vector.
707         (insert_type): Likewise.
708         (push_type): Likewise.
709         (push_type_int): Likewise.
710         (insert_type_address_space): Likewise.
711         (pop_type): Likewise.
712         (pop_type_int): Likewise.
713         (pop_typelist): Likewise.
714         (pop_type_stack): Likewise.
715         (append_type_stack): Likewise.
716         (push_type_stack): Likewise.
717         (get_type_stack): Likewise.
718         (type_stack_cleanup): Likewise.
719         (push_typelist): Likewise.
720         (follow_types): Likewise.
721         (_initialize_parse): Likewise.
722
723 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
724
725         * NEWS: Mention csky target.
726
727 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
728             Hafiz Abid Qadeer  <abidh@codesourcery.com>
729             Don Breazeal  <donb@codesourcery.com>
730
731         * csky-linux-tdep.c: New file.
732         * csky-tdep.c: Likewise.
733         * csky-tdep.h: Likewise.
734         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
735         csky-tdep.o.
736         (HFILES_NO_SRCDIR): Add csky-tdep.h.
737         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
738         * configure.tgt: Add csky support.
739
740 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
741
742         * python/py-framefilter.c (py_print_frame): Print frame architecture
743         when printing on an MI output.
744
745 2018-08-27  Tom Tromey  <tom@tromey.com>
746
747         PR build/23087:
748         * configure: Rebuild.
749         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
750
751 2018-08-27  Tom Tromey  <tom@tromey.com>
752
753         * aarch64-linux-tdep.c
754         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
755         casts to int.
756
757 2018-08-27  Tom Tromey  <tom@tromey.com>
758
759         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
760         unsigned.
761         (ppc64_standard_linkage1, ppc64_standard_linkage2)
762         (ppc64_standard_linkage3, ppc64_standard_linkage4)
763         (ppc64_standard_linkage5, ppc64_standard_linkage6)
764         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
765         unsigned.
766
767 2018-08-27  Tom Tromey  <tom@tromey.com>
768
769         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
770         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
771
772 2018-08-27  Tom Tromey  <tom@tromey.com>
773
774         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
775         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
776         ULONGEST_MAX.
777         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
778         ULONGEST_MAX.
779         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
780         ULONGEST_MAX.
781         * sparc-linux-tdep.c (sparc32_linux_sigframe)
782         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
783         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
784         ULONGEST_MAX.
785         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
786         (ppc64_linux_sigaction_tramp_frame)
787         (ppc32_linux_sighandler_tramp_frame)
788         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
789         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
790         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
791         * mn10300-linux-tdep.c (am33_linux_sigframe)
792         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
793         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
794         * mips-linux-tdep.c (mips_linux_o32_sigframe)
795         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
796         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
797         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
798         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
799         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
800         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
801         * microblaze-linux-tdep.c
802         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
803         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
804         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
805         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
806         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
807         * common/common-types.h (ULONGEST_MAX): New define.
808         (CORE_ADDR_MAX): Fix formatting.
809         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
810         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
811         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
812         (arm_linux_rt_sigreturn_tramp_frame)
813         (arm_eabi_linux_sigreturn_tramp_frame)
814         (arm_eabi_linux_rt_sigreturn_tramp_frame)
815         (thumb2_eabi_linux_sigreturn_tramp_frame)
816         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
817         (arm_linux_restart_syscall_tramp_frame)
818         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
819         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
820         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
821         ULONGEST_MAX.
822         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
823
824 2018-08-27  Tom Tromey  <tom@tromey.com>
825
826         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
827         CORE_ADDR_MAX.
828         * mips-tdep.c (mips_deal_with_atomic_sequence)
829         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
830         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
831         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
832         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
833         CORE_ADDR_MAX.
834         * aarch64-tdep.c (aarch64_software_single_step): Use
835         CORE_ADDR_MAX.
836
837 2018-08-27  Tom Tromey  <tom@tromey.com>
838
839         * linespec.c (complete_linespec_component): Add cast to "char".
840         * completer.c (completion_tracker::build_completion_result): Add
841         cast to "char".
842
843 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
844
845         * solist.h (struct solist, struct target_so_ops): Fix
846         indentation.
847
848 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
849
850         * ada-tasks.c (ada_task_info_s): Remove typedef.
851         (DEF_VEC_O(ada_task_info_s)): Remove.
852         (struct ada_tasks_inferior_data): Initialize fields.
853         <task_list>: Make an std::vector.
854         (get_ada_tasks_inferior_data): Allocate with new.
855         (ada_get_task_number): Adjust.
856         (get_task_number_from_id): Likewise.
857         (valid_task_id): Likewise.
858         (ada_get_task_info_from_ptid): Likewise.
859         (iterate_over_live_ada_tasks): Likewise.
860         (add_ada_task): Likewise.
861         (read_known_tasks): Likewise.
862         (ada_build_task_list): Likewise.
863         (print_ada_task_info): Likewise.
864         (info_task): Likewise.
865         (task_command_1): Likewise.
866
867 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
868
869         * ada-lang.c (add_angle_brackets): Return std::string.
870
871 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
872
873         * python/py-threadevent.c (py_get_event_thread): Initialize
874         pythread.
875
876 2018-08-24  Pedro Alves  <palves@redhat.com>
877
878         * python/py-bpevent.c (create_breakpoint_event_object): Use
879         copy-initialization.
880         * python/py-continueevent.c (emit_continue_event): Use
881         copy-initialization.
882         * python/py-exitedevent.c (create_exited_event_object): Return a
883         gdbpy_ref<>.
884         (emit_exited_event): Use copy-initialization.
885         * python/py-inferior.c (python_new_inferior)
886         (python_inferior_deleted, add_thread_object): Use
887         copy-initialization.
888         * python/py-infevents.c (create_inferior_call_event_object)
889         (create_register_changed_event_object)
890         (create_memory_changed_event_object): Return a gdbpy_ref<>.
891         (emit_inferior_call_event, emit_memory_changed_event)
892         (emit_register_changed_event): Use copy-initialization.
893         * python/py-newobjfileevent.c (create_new_objfile_event_object):
894         Return a gdbpy_ref<>.
895         (emit_new_objfile_event): Use copy-initialization.
896         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
897         (emit_clear_objfiles_event): Use copy-initialization.
898         * python/py-signalevent.c (create_signal_event_object): Use
899         copy-initialization.
900         * python/py-threadevent.c (create_thread_event_object): Use
901         copy-initialization.
902
903 2018-08-24  Pedro Alves  <palves@redhat.com>
904             Simon Marchi  <simon.marchi@ericsson.com>
905
906         PR gdb/23379
907         * python/py-continueevent.c: Include "gdbthread.h".
908         (create_continue_event_object): Add intro comment.  Add 'ptid'
909         parameter.  Use it to find thread to pass to
910         create_thread_event_object.
911         (emit_continue_event): Pass PTID down to
912         create_continue_event_object.
913         * python/py-event.h (py_get_event_thread): Declare.
914         (create_thread_event_object): Remove default from 'thread'
915         parameter.
916         * python/py-stopevent.c (create_stop_event_object): Use
917         py_get_event_thread.
918         * python/py-threadevent.c (get_event_thread): Rename to ...
919         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
920         and use it to find the thread.
921         (create_thread_event_object): Assert that THREAD isn't null.
922         Don't find the event thread here.
923
924 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
925
926         * block.h (blockrange, blockranges): New struct declarations.
927         (struct block): Add new field named `ranges'.
928         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
929         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
930         macros for accessing ranges in struct block.
931         (make_blockranges): New declaration.
932         block.c (make_blockranges): New function.
933         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
934         for block.
935         * symtab.h (find_pc_partial_function): Add new parameter `block'.
936         * blockframe.c (cache_pc_function_block): New static global.
937         (clear_pc_function_cache): Clear cache_pc_function_block.
938         (find_pc_partial_function): Move comment to symtab.h.  Add
939         support for non-contiguous blocks.
940         * cli/cli-cmds.c (block.h): Include.
941         (print_disassembly): Handle printing of non-contiguous blocks.
942         (disassemble_current_function): Likewise.
943         (disassemble_command): Likewise.
944
945         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
946         BLOCK_START.
947         * blockframe.c (get_pc_function_start): Likewise.
948         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
949         (gcc_symbol_address): Likewise.
950         * compile/compile-object-run.c (compile_object_run): Likewise.
951         * compile/compile.c (get_expr_block_and_pc): Likewise.
952         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
953         (func_addr_to_tail_call_list): Likewise.
954         * findvar.c (default_read_var_value): Likewise.
955         * inline-frame.c (inline_frame_this_id): Likewise.
956         (skip-inline_frames): Likewise.
957         * infcmd.c (until_next_command): Likewise.
958         * linespec.c (convert_linespec_to_sals): Likewise.
959         * parse.c (parse_exp_in_context_1): Likewise.
960         * printcmd.c (build_address_symbolic): likewise.
961         (info_address_command): Likewise.
962         symtab.c (find_function_start_sal): Likewise.
963         (skip_prologue_sal): Likewise.
964         (find_function_alias_target): Likewise.
965         (find_gnu_ifunc): Likewise.
966         * stack.c (find_frame_funname): Likewise.
967         * symtab.c (fixup_symbol_section): Likewise.
968         (find_function_start_sal): Likewise.
969         (skip_prologue_sal): Likewsie.
970         (find_function_alias_target): Likewise.
971         (find_gnu_ifunc): Likewise.
972         * tracepoint.c (info_scope_command): Likewise.
973         * value.c (value_fn_field): Likewise.
974
975         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
976         in place of find_pc_partial_function.
977         * blockframe.c (find_function_entry_range_from_pc): New function.
978         * symtab.h (find_function_entry_range_from_pc): Declare and document.
979         * objfiles.c (objfile_relocate1): Relocate start and end addresses
980         for each range in a block.
981
982
983 2018-08-23  Xavier Roirand  <roirand@adacore.com>
984
985         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
986         incrementation.
987
988 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
989
990         * solib-svr4.c (read_program_headers_from_bfd): Return
991         gdb::optional<gdb::byte_vector>.
992         (svr4_exec_displacement): Adjust.
993
994 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
995
996         * solib-svr4.c (read_program_header): Return
997         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
998         (find_program_interpreter): Return
999         gdb::optional<gdb::byte_vector>.
1000         (scan_dyntag_auxv): Adjust.
1001         (enable_break): Adjust.
1002         (svr4_exec_displacement): Adjust.
1003
1004 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
1005
1006         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
1007         * inf-child.c (inf_child_target::terminal_save_inferior): New.
1008
1009 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
1010
1011         * guile/scm-string.c (gdbscm_scm_from_printf): Use
1012         string_vprintf.
1013         * guile/scm-utils.c (gdbscm_printf): Likewise.
1014         * serial.c (serial_printf): Likewise.
1015         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
1016
1017 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
1018
1019         * stack.c (print_frame): Print frame architecture when printing on
1020         an MI output.
1021         * NEWS: Mention new "arch" attribute in frame output.
1022
1023 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
1024
1025         * arch/aarch64.h (aarch64_regnum): Update comment.
1026
1027 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
1028
1029         * NEWS: Add SVE to 8.2 section.
1030
1031 2018-08-21  Pedro Alves  <palves@redhat.com>
1032
1033         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
1034         out from gdbscm_parse_function_args.
1035         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
1036         gdbscm_parse_function_args_1.
1037
1038 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
1039
1040         PR gdb/17816
1041         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
1042         operator.
1043
1044 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
1045
1046         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
1047
1048 2018-08-19  Michael Spang  <spang@google.com>
1049
1050         PR gdb/11786
1051         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
1052         for PT_TLS segments.
1053
1054 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
1055
1056         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
1057         dwarf_variable_value.
1058         * dwarf2-frame.c (class dwarf_expr_executor):
1059         Add override for dwarf_variable_value.
1060         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
1061         (class symbol_needs_eval_context): Likewise.
1062         (indirect_synthetic_pointer): Add forward declaration.
1063         (sect_variable_value): New function.
1064         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
1065         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
1066         for DW_OP_GNU_variable_value.
1067
1068 2018-08-16  Tom Tromey  <tom@tromey.com>
1069
1070         * top.c (read_command_file): Update.
1071         (command_line_input): Remove "repeat" argument.
1072         * ada-lang.c (get_selections): Update.
1073         * linespec.c (decode_line_2): Update.
1074         * defs.h (command_line_input): Remove argument.
1075         * cli/cli-script.c (read_next_line): Update.
1076         * python/py-gdb-readline.c: Update.
1077
1078 2018-08-17  Tom Tromey  <tom@tromey.com>
1079
1080         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
1081         command_line_input.
1082
1083 2018-08-15  Tom Tromey  <tom@tromey.com>
1084
1085         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
1086
1087 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
1088
1089         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
1090         If used, use find_pc_partial_function to find address range
1091         to disassemble.
1092         * mi/mi-main.c (mi_cmd_list_features): Report
1093         "data-disassemble-a-option" feature.
1094         * NEWS: Mention new -data-disassemble option -a.
1095
1096 2018-08-13  Tom Tromey  <tom@tromey.com>
1097
1098         * common/common-defs.h (_FORTIFY_SOURCE): Define.
1099
1100 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
1101
1102         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
1103         (aarch64_linux_collect_sve_regset): Likewise.
1104         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
1105         * regcache.h (regcache_map_entry_size): New function.
1106
1107 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
1108
1109         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
1110         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
1111         (SVE_HEADER_VL_LENGTH): Likewise.
1112         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
1113         (SVE_HEADER_FLAGS_LENGTH): Likewise.
1114         (SVE_HEADER_RESERVED_LENGTH): Likewise.
1115         (SVE_HEADER_SIZE_OFFSET): Likewise.
1116         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
1117         (SVE_HEADER_VL_OFFSET): Likewise.
1118         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
1119         (SVE_HEADER_FLAGS_OFFSET): Likewise.
1120         (SVE_HEADER_RESERVED_OFFSET): Likewise.
1121         (SVE_HEADER_SIZE): Likewise.
1122         (aarch64_linux_core_read_vq): Add function.
1123         (aarch64_linux_core_read_description): Check for SVE section.
1124
1125 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
1126
1127         * aarch64-fbsd-tdep.c
1128         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
1129         collect_size.
1130         * aarch64-linux-tdep.c
1131         (aarch64_linux_iterate_over_regset_sections): Likewise.
1132         * alpha-linux-tdep.c
1133         (alpha_linux_iterate_over_regset_sections):
1134         * alpha-nbsd-tdep.c
1135         (alphanbsd_iterate_over_regset_sections): Likewise.
1136         * amd64-fbsd-tdep.c
1137         (amd64fbsd_iterate_over_regset_sections): Likewise.
1138         * amd64-linux-tdep.c
1139         (amd64_linux_iterate_over_regset_sections): Likewise.
1140         * arm-bsd-tdep.c
1141         (armbsd_iterate_over_regset_sections): Likewise.
1142         * arm-fbsd-tdep.c
1143         (arm_fbsd_iterate_over_regset_sections): Likewise.
1144         * arm-linux-tdep.c
1145         (arm_linux_iterate_over_regset_sections): Likewise.
1146         * corelow.c (get_core_registers_cb): Likewise.
1147         (core_target::fetch_registers): Likewise.
1148         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
1149         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
1150         * gdbarch.h (void): Regenerate.
1151         * gdbarch.sh: Add supply_size and collect_size.
1152         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
1153         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
1154         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
1155         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
1156         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
1157         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
1158         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
1159         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
1160         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
1161         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
1162         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
1163         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
1164         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
1165         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
1166         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections): Likewise.
1167         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
1168         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
1169         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
1170         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
1171         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
1172         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
1173         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections): Likewise.
1174         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
1175         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
1176         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
1177         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
1178         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
1179         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
1180         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
1181         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
1182
1183 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
1184
1185         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
1186         with string_printf.
1187
1188 2018-08-10  Keith Seitz  <keiths@redhat.com>
1189
1190         * compile/compile-c-support.c (add_code_header, add_code_footer):
1191         Move into policy class.
1192         (c_push_user_expression, pop_user_expression_nop)
1193         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
1194         (compile_program): New host class.
1195         (c_compile_program): New typedef.
1196         (c_compute_porgram): Use c_compile_program.
1197
1198 2018-08-10  Keith Seitz  <keiths@redhat.com>
1199
1200         * compile/compile-internal.h (compile_instance::~compile_instance):
1201         Remove calls to htab_delete.
1202         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
1203         * compile.c (compile_instance::compile_instance): Initialize
1204         htab unique pointers.
1205         (compile_instance::get_cached_type, compile_instance::insert_type)
1206         (compile_instance::error_symbol_once): Update for unique_ptr.
1207
1208 2018-08-10  Keith Seitz  <keiths@redhat.com>
1209
1210         * compile/compile-c-symbols.c (struct symbol_error)
1211         (hash_symbol_error, eq_symbol_error, del_symbol_error)
1212         (compile_instance::insert_symbol_error)
1213         (compile_instance::error_symbol_once): Move to ...
1214         * compile/compile.c: ... here.
1215
1216 2018-08-10  Keith Seitz  <keiths@redhat.com>
1217
1218         * compile/compile-c-support.c (c_get_compile_context): Use `new'
1219         instead of `new_compile_instance'.
1220         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
1221         Update description.
1222         If the symbol error map is not initialized, create it.
1223         (generate_c_for_for_one_symbol): Do not check/initialize
1224         the symbol error map.
1225         * compile/compile-c-types.c (compile_c_instance): Make a class.
1226         Update all callers.
1227         (compile_instance::compile_instance): Initialize the type cache.
1228         (get_cached_type): New function.
1229         (insert_type): Update description.
1230         (compile_c_instance::m_default_cflags): Define.
1231         (convert_type): Update description.  Use get_cached_type.
1232         (delete_instance): Moved to destructor.
1233         (new_compile_instance): Moved to constructor.
1234         * compile/compile-c.h (compile_c_instance): Make class inheriting
1235         from compile_instance.
1236         <base>: Remove field.
1237         <type_map, symbol_err_map>: Move to base class.
1238         <c_plugin>: Rename to `m_plugin' and remove pointer type.
1239         * compile/compile-internal.h (compile_instance): Make class.
1240         <type_map_t, symbol_err_map_t>: Define.
1241         <fe>: Rename to `m_gcc_fe'.
1242         <scope, block, gcc_target_options>: Add `m_' prefix.
1243         <m_type_map, m_symbol_err_map>: New fields, moved from
1244         compile_c_instance.
1245         <destroy>: Remove.
1246         (convert_type, new_compile_instance): Remove.
1247         * compile/compile.c (cleanup_compile_instance): Remove.
1248         (compile_to_object): Use unique_ptr to eliminate cleanups.
1249         (compile_instance::set_print_callback, compile_instance::version)
1250         (compile_instance::set_verbose)
1251         (compile_instance::set_driver_filename)
1252         (compile_instance::set_triplet_regexp)
1253         (compile_instance::set_arguments)
1254         (compile_instance::set_source_file)
1255         (compile_instance::compile): Define.
1256
1257 2018-08-10  Keith Seitz  <keiths@redhat.com>
1258
1259         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
1260         * compile/compile-c-types.c: Define GCC_METHODN macros and include
1261         gcc-c-fe.def to define C plugin.
1262         (delete_instance): Delete `c_plugin'.
1263         (new_compile_instance): Initialize `c_plugin'.
1264         * compile/compile-c.h: Include gcc_c_plugin.h.
1265         (struct compile_c_instance) <c_plugin>: New member.
1266         * gcc-c-plugin.h: New file.
1267         Update all callers with API change.
1268
1269 2018-08-10  Keith Seitz  <keiths@redhat.com>
1270
1271         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
1272         (HFILES_NO_SRCDIR): ... to here.
1273         Add compile-internal.h and compile-c.h.
1274         * compile/compile-c-support.c: Include compile-c.h.
1275         * compile/compile-c-symbols.c: Include compile-c.h.
1276         (generate_c_for_variable_locations): Update comment.
1277         * compile/compile-c-types.c: Include compile-c.h.
1278         * compile/compile-c.h: New file -- moved C language declarations
1279         from other files here.
1280         * compile/compile-internal.h: Do not include hashtab.h or
1281         common/enum-flags.h.
1282         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
1283         (gcc_convert_symbol, gcc_symbol_address)
1284         (generate_c_for_variable_locations, c_get_mode_for_size)
1285         (c_get_range_decl_name): Definitions moved to compile-c.h.
1286         * compile/compile-loc2c.c: Include compile-c.h.
1287
1288 2018-08-10  Keith Seitz  <keiths@redhat.com>
1289
1290         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
1291         (c_symbol_substitution_name): ... this.
1292         Update all callers.
1293
1294 2018-08-10  Keith Seitz  <keiths@redhat.com>
1295
1296         * compile/compile-c-support.c (c_compute_program): Use
1297         unique_xmalloc_ptr to eliminate cleanup.
1298         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
1299         Return a unique_xmalloc_ptr and eliminate cleanup.
1300         * compile/compile-internal.h (generate_c_for_variable_locations):
1301         Return unique_xmalloc_ptr and update description.
1302
1303 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
1304
1305         * corelow.c (core_target::get_core_register_section): Rename
1306         min_size to section_min_size.
1307
1308 2018-08-09  Jim Wilson  <jimw@sifive.com>
1309
1310         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
1311         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
1312         * NEWS: Mention new GNU/Linux RISC-V target.
1313         * configure.host: Add riscv*-*-linux*.
1314         * configure.nat: Add riscv*.
1315         * configure.tgt: Add riscv*-*-linux*.
1316         * riscv-linux-nat.c: New file.
1317         * riscv-linux-tdep.c: New file.
1318
1319 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
1320
1321         * infrun.c (resume): Make static, add forward declaration.
1322         (proceed): Update header comment.
1323         * infrun.h (resume): Delete declaration.
1324
1325 2018-08-09  Tom Tromey  <tom@tromey.com>
1326
1327         * riscv-tdep.h: Minor formatting fixes.
1328
1329 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
1330
1331         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
1332         * dwarf-index-cache.c (create_dir_and_check): Likewise.
1333         (test_mkdir_recursive): Likewise.
1334         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
1335
1336 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
1337
1338         * valarith.c (value_subscripted_rvalue): If an array is not in
1339         memory, and we don't know the upper bound, then we can't know that
1340         the requested element exists or not.
1341
1342 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
1343
1344         * target.c (str_comma_list_concat_elem): Fix typo in comment.
1345         (target_options_to_string): Add comment.
1346
1347 2018-08-08  Tom Tromey  <tom@tromey.com>
1348
1349         * unittests/scoped_mmap-selftests.c: Check result of "write".
1350
1351 2018-08-08  Jim Wilson  <jimw@sifive.com>
1352
1353         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
1354         (decode_register_index_short): New.
1355         (decode_j_type_insn, decode_cj_type_insn): New.
1356         (decode_b_type_insn, decode_cb_type_insn): New.
1357         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
1358         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
1359         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
1360         is_c_sw_insn instead of is_sw_insn.
1361         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
1362         (riscv_software_single_step): New.
1363         * riscv-tdep.h (riscv_software_single_step): Declare.
1364
1365         * riscv-tdep.c (riscv_isa_xlen): Drop static.
1366         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
1367
1368 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
1369
1370         PR gdb/18050:
1371         * target.c (dispose_inferior): Don't dispose of inferiors that are
1372         already killed.
1373
1374 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
1375
1376         * remote.c (remote_target::download_tracepoint): Change char* to
1377         const char*.
1378
1379 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
1380
1381         * target.h (target_options_to_string): Return an std::string.
1382         * target.c (str_comma_list_concat_elem): Return void, use
1383         std::string.
1384         (do_option): Likewise.
1385         (target_options_to_string): Return an std::string.
1386         * linux-nat.c (linux_nat_target::wait): Adjust.
1387         * target-debug.h (target_debug_print_options): Adjust.
1388
1389 2018-08-07  Tom Tromey  <tom@tromey.com>
1390
1391         * Makefile.in (CPPFLAGS): New variable.
1392         (INTERNAL_CPPFLAGS): Use it.
1393
1394 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
1395
1396         * NEWS: Mention the index cache.
1397
1398 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
1399
1400         * common/pathstuff.h (get_standard_cache_dir): New.
1401         * common/pathstuff.c (get_standard_cache_dir): New.
1402         * build-id.h (build_id_to_string): New.
1403         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
1404         DEBUG_STR_SUFFIX): Move to here.
1405         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
1406         DEBUG_STR_SUFFIX): Move from there.
1407         (write_psymtabs_to_index): Make non-static, add basename
1408         parameter.  Write to temporary files, rename when done.
1409         (save_gdb_index_command): Adjust call to
1410         write_psymtabs_to_index.
1411         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
1412         field.
1413         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
1414         (get_gdb_index_contents_from_cache): New.
1415         (get_gdb_index_contents_from_cache_dwz): New.
1416         (dwarf2_initialize_objfile): Read index from cache.
1417         (dwarf2_build_psymtabs): Save to index.
1418         * dwarf-index-cache.h: New file.
1419         * dwarf-index-cache.c: New file.
1420         * dwarf-index-write.h: New file.
1421
1422 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
1423
1424         * gnulib/aclocal.m4: Re-generate.
1425         * gnulib/config.in: Re-generate.
1426         * gnulib/configure: Re-generate.
1427         * gnulib/import/Makefile.am: Re-generate.
1428         * gnulib/import/Makefile.in: Re-generate.
1429         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
1430         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
1431         * gnulib/import/m4/mkdir.m4: New file.
1432         * gnulib/import/mkdir.c: New file.
1433         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
1434         module.
1435
1436 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
1437
1438         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
1439         * common/scoped_mmap.c: New file.
1440         * common/scoped_mmap.h (destroy): New method.
1441         (~scoped_mmap, reset): Use destroy.
1442         (scoped_mmap): New move constructor.
1443         (mmap_file): New declaration.
1444         * unittests/scoped_mmap-selftests.c (test_normal,
1445         test_invalid_filename, run_tests): New functions.
1446         (_initialize_scoped_mmap_selftests): Register selftest.
1447
1448 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
1449
1450         * dwarf2read.c (read_gdb_index_from_section): Rename to...
1451         (read_gdb_index_from_buffer): ... this.  Remove section
1452         parameter, add buffer parameter.
1453         (get_gdb_index_contents_ftype,
1454         get_gdb_index_contents_dwz_ftype): New typedefs.
1455         (dwarf2_read_gdb_index): Add callback parameters to get the
1456         index contents.
1457         (get_gdb_index_contents_from_section): New.
1458         (dwarf2_initialize_objfile): Update call to
1459         dwarf2_read_gdb_index.
1460
1461 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
1462
1463         * common/filestuff.h (gdb_fopen_cloexec): New overload.
1464         (gdb_open_cloexec): Likewise.
1465         * nat/linux-osdata.c (command_from_pid): Use string_printf.
1466         (commandline_from_pid): Likewise.
1467         (linux_xfer_osdata_threads): Likewise.
1468         (linux_xfer_osdata_fds): Likewise.
1469         * ada-lang.c (is_package_name): Likewise.
1470         * auxv.c (procfs_xfer_auxv): Likewise.
1471         * breakpoint.c (print_one_breakpoint_location): Use
1472         uiout::field_fmt.
1473         (print_one_catch_solib): Use string_printf.
1474         * coff-pe-read.c (add_pe_exported_sym): Likewise.
1475         (add_pe_forwarded_sym): Likewise.
1476         * dwarf2read.c (create_type_unit_group): Likewise.
1477         (build_error_marker_type): Likewise.
1478         * infcall.c (get_function_name): Likewise.
1479         * valprint.c (print_converted_chars_to_obstack): Likewise.
1480         * xtensa-tdep.c (xtensa_register_type): Likewise.
1481
1482 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
1483
1484         * remote.c (remote_target::download_tracepoint): Fix format
1485         string errors.
1486
1487 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1488
1489         * tracefile.c: Include common/byte-vector.h.
1490         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
1491         with trace_regblock_size if needed.  Update uses of buf.
1492
1493 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1494
1495         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
1496         std::vector<unsigned char>.
1497         * tracepoint.c (collection_list::collection_list): Remove
1498         m_regs_mask initializer from initializer list.  Resize
1499         m_regs_mask using the largest remote register number.
1500         (collection_list::add_remote_register): Remove size check on
1501         m_regs_mask.  Use at to access element.
1502         (collection_list::stringify): Change type of temp_buf to
1503         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
1504         stringify the register mask.  Use pack_hex_byte for the register
1505         mask.
1506
1507 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1508
1509         * tracepoint.h (class collection_list) <add_register>: Remove.
1510         <add_remote_register, add_ax_registers, add_local_register>:
1511         Declare.
1512         <add_memrange>: Add scope parameter.
1513         * tracepoint.c (encode_actions_1): Likewise.
1514         (collection_list::add_register): Rename to ...
1515         (collection_list::add_remote_register): ... this.  Update
1516         comment.
1517         (collection_list::add_ax_registers, add_local_register): New
1518         methods.
1519         (collection_list::add_memrange): Add scope parameter.  Call
1520         add_local_register instead of add_register.
1521         (finalize_tracepoint_aexpr): New function.
1522         (collection_list::collect_symbol): Update calls to add_memrange.
1523         Call add_local_register instead of add_register.  Call
1524         add_ax_registers.  Call finalize_tracepoint_aexpr.
1525         (encode_actions_1): Get remote regnos for $reg action.  Call
1526         add_remote_register, add_ax_registers, and add_local_register.
1527         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
1528         (validate_actionline): Call finalize_tracepoint_aexpr.
1529
1530 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1531
1532         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
1533         Replace array buf with gdb::char_vector buf, of size
1534         get_remote_packet_size ().  Replace references to buf and
1535         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
1536         and xsnprintf with snprintf.  Raise errors if the buffer is too
1537         small.
1538
1539 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1540
1541         * remote.c (remote_target::download_tracepoint): Fix the has_more
1542         predicate in the QTDP action list iteration.
1543
1544 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1545
1546         * remote.c (remote_target::download_tracepoint): Fix indentation
1547         in for block.
1548
1549 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1550
1551         * proc-api.c (_initialize_proc_api): Remove c, unused.
1552         * procfs.c (procfs_init_inferior): Remove signals, unused.
1553         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
1554         unused.
1555
1556 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
1557             Andrew Burgess  <andrew.burgess@embecosm.com>
1558
1559         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
1560         'W_STOPCODE (0)' as this could be ambiguous.
1561
1562 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
1563
1564         * ser-tcp.c (net_open): Fix thinko when deciding whether to
1565         disable TCP's Nagle algorithm (use "ai_protocol" instead of
1566         "ai_socktype").
1567
1568 2018-08-02  Tom Tromey  <tom@tromey.com>
1569
1570         PR symtab/16842.
1571         * dwarf2read.c (read_func_scope): Set symtab on template parameter
1572         symbols.
1573         (process_structure_scope): Likewise.
1574
1575 2018-08-02  Xavier Roirand  <roirand@adacore.com>
1576
1577         PR gdb/22629:
1578         * darwin-nat.c (darwin_kill_inferior): Fix handling of
1579         kill inferior.
1580
1581 2018-08-02  Tom Tromey  <tom@tromey.com>
1582
1583         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
1584         (darwin_suspend_inferior, darwin_resume_inferior)
1585         (darwin_decode_notify_message, darwin_resume_inferior_threads)
1586         (darwin_check_new_threads): Check result of get_darwin_inferior.
1587
1588 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
1589
1590         GDB 8.1.1 released.
1591
1592 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
1593
1594         * varobj.c (varobj_get_path_expr_parent): Report an error if
1595         parent is a dynamic varobj.
1596
1597 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
1598
1599         * gnulib/aclocal.m4: Re-generate.
1600         * gnulib/config.in: Re-generate.
1601         * gnulib/configure: Re-generate.
1602         * gnulib/import/Makefile.in: Re-generate.
1603         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
1604         * gnulib/import/m4/onceonly.m4: Re-generate.
1605
1606 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
1607
1608         * target-descriptions.c (struct xml_test_tdesc): New.
1609         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
1610         (record_xml_tdesc): Update.
1611         (maintenance_check_xml_descriptions): Update.
1612         * target-descriptions.h (record_xml_tdesc): Update comment.
1613
1614 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
1615
1616         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
1617         checking array bounds are defined.
1618
1619 2018-07-30  Tom Tromey  <tom@tromey.com>
1620
1621         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
1622         irreflexivity violation.
1623
1624 2018-07-30  Tom Tromey  <tom@tromey.com>
1625
1626         * cli/cli-decode.c (lookup_cmd): Remove lint code.
1627         * value.c (unpack_long): Remove lint code.
1628         * valops.c (value_ind): Remove lint code.
1629         * valarith.c (value_x_binop, value_x_unop, value_equal)
1630         (value_pos): Remove lint code.
1631
1632 2018-07-28  Tom de Vries  <tdevries@suse.de>
1633
1634         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
1635         with undefined upper bound as <optimized out>.
1636
1637 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
1638
1639         * gcore.in: Rename variable "name" to "prefix".  Expand
1640         "usage" text.
1641
1642 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
1643
1644         * windows-nat.c (windows_nat_target::create_inferior): Update to
1645         call close() in global namespace.
1646
1647 2018-07-26  Tom Tromey  <tom@tromey.com>
1648
1649         * dwarf-index-write.c (add_address_entry): Don't add objfile
1650         offsets.
1651         * dbxread.c (find_stab_function): Rename from
1652         find_stab_function_addr.  Return a bound_minimal_symbol.
1653         (read_dbx_symtab): Use raw_text_low, raw_text_high.
1654         Don't add objfile offsets.
1655         (end_psymtab): Use raw_text_low, raw_text_high,
1656         MSYMBOL_VALUE_RAW_ADDRESS.
1657         (read_ofile_symtab): Update.
1658         (process_one_symbol): Update.
1659         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
1660         offsets.
1661         (dw2_relocate): Remove.
1662         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
1663         searching addrmap.
1664         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
1665         Update.
1666         (process_psymtab_comp_unit_reader, add_partial_symbol)
1667         (add_partial_subprogram, dwarf2_ranges_read): Update.
1668         (load_partial_dies): Update.
1669         (add_address_entry): Don't add objfile offsets.
1670         (dwarf2_build_include_psymtabs): Update.
1671         (create_addrmap_from_aranges): Don't add objfile offsets.
1672         (dw2_find_pc_sect_compunit_symtab): Update.
1673         * mdebugread.c (parse_symbol): Don't add objfile offsets.
1674         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
1675         Update.
1676         (parse_partial_symbols): Don't add objfile offsets.  Use
1677         raw_text_low, raw_text_high.  Update.
1678         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
1679         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
1680         or call 'relocate' quick function.  Clear psymbol_map.
1681         * psympriv.h (struct partial_symbol) <address>: Add section
1682         offset.
1683         <set_unrelocated_address>: Rename from set_address.
1684         <raw_text_low, raw_text_high>: New methods.
1685         <text_low, text_high>: Add objfile parameter.
1686         (add_psymbol_to_bcache): Add 'section' parameter.  Call
1687         set_unrelocated_address.
1688         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
1689         (find_pc_psymbol): Update.
1690         (fixup_psymbol_section, relocate_psymtabs): Remove.
1691         (dump_psymtab, psym_functions): Update.
1692         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
1693         parameter.
1694         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
1695         (start_psymtab_common): Update.
1696         * symfile-debug.c (debug_qf_relocate): Remove.
1697         (debug_sym_quick_functions): Update.
1698         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
1699         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
1700         Update.
1701
1702 2018-07-26  Tom Tromey  <tromey@redhat.com>
1703
1704         * dbxread.c (end_psymtab): Use text_high_valid and
1705         text_low_valid.
1706         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
1707         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
1708         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
1709         Update comment.
1710         <text_low_valid, text_high_valid>: New fields.
1711         <set_text_low, set_text_high>: Update.
1712         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
1713
1714 2018-07-26  Tom Tromey  <tom@tromey.com>
1715
1716         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
1717         Update.
1718         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
1719         textlow and texthigh fields.
1720         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
1721         Update.
1722         * mdebugread.c (parse_lines, parse_partial_symbols)
1723         (psymtab_to_symtab_1): Update.
1724         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
1725         Rename fields.  Update comment.  Now private.
1726         <text_low, text_high, set_text_low, set_text_high>: New methods.
1727         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
1728         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
1729         (start_psymtab_common, maintenance_info_psymtabs)
1730         (maintenance_check_psymtabs): Update.
1731         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
1732         texthigh fields.
1733         (scan_xcoff_symtab): Update.
1734
1735 2018-07-26  Tom Tromey  <tromey@redhat.com>
1736
1737         * psympriv.h (struct partial_symbol) <unrelocated_address,
1738         address, set_address>: New methods.
1739         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
1740         (fixup_psymbol_section, relocate_psymtabs): Update.
1741         (print_partial_symbols): Add 'objfile' parameter.  Update.
1742         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
1743         Update.
1744
1745 2018-07-26  Tom Tromey  <tom@tromey.com>
1746
1747         * dwarf-index-write.c (write_psymbols, debug_names::insert)
1748         (debug_names::write_psymbols): Update.
1749         * psympriv.h (struct partial_symbol): Derive from
1750         general_symbol_info.
1751         <obj_section>: New method.
1752         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
1753         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
1754         (find_pc_sect_psymbol, fixup_psymbol_section)
1755         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
1756         (print_partial_symbols, recursively_search_psymtabs)
1757         (compare_psymbols, psymbol_hash, psymbol_compare)
1758         (add_psymbol_to_bcache, maintenance_check_psymtabs)
1759         (psymbol_name_matches, psym_fill_psymbol_map): Update.
1760
1761 2018-07-26  Tom Tromey  <tromey@redhat.com>
1762
1763         * dbxread.c (end_psymtab): Remove dead code.
1764
1765 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
1766
1767         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
1768         DWARF unwinders are disabled.
1769         * dwarf2-frame.c: Add dwarf2read.h include.
1770         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
1771         disabled.
1772         (dwarf2_frame_unwinders_enabled_p): Define.
1773         (show_dwarf_unwinders_enabled_p): New function.
1774         (_initialize_dwarf2_frame): Register switch to control DWARF
1775         unwinder use.
1776         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
1777         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
1778         (show_dwarf_cmdlist): Remove static keyword.
1779         * dwarf2read.h (set_dwarf_cmdlist): Declare.
1780         (show_dwarf_cmdlist): Declare.
1781         * NEWS: Document new feature.
1782
1783 2018-07-26  Tom de Vries  <tdevries@suse.de>
1784
1785         PR breakpoints/23366
1786         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
1787
1788 2018-07-26  Tom de Vries  <tdevries@suse.de>
1789
1790         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
1791         DW_AT_count can't be translated to a dynamic prop.
1792
1793 2018-07-25  Tom de Vries  <tdevries@suse.de>
1794
1795         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
1796         try/catch.
1797
1798 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
1799
1800         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
1801
1802 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
1803
1804         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
1805
1806 2018-07-24  Keith Seitz  <keiths@redhat.comt
1807
1808         PR symtab/23010
1809         * dwarf2read.c (dw2_add_symbol_to_list): New function.
1810         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
1811         instead of add_symbol_to_list.
1812         (read_file_scope): Call prepare_one_comp_unit before reading
1813         any other DIEs.
1814
1815 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
1816
1817         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
1818
1819 2018-07-24  Tom Tromey  <tom@tromey.com>
1820
1821         * utils.c (malloc, realloc, free): Don't declare.
1822         * configure, config.in: Rebuild.
1823         * configure.ac: Don't check for declarations of free, malloc, or
1824         realloc.
1825
1826 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
1827
1828         * aarch64-linux-nat.c
1829         (aarch64_linux_nat_target::stopped_data_address): Remove unused
1830         variable.
1831         * arm-linux-nat.c (fetch_regs): Likewise.
1832         (store_regs): Likewise.
1833         (fetch_vfp_regs): Likewise.
1834         (store_vfp_regs): Likewise.
1835         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
1836         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
1837         (arm_linux_nat_target::insert_watchpoint): Likewise.
1838         (arm_linux_nat_target::remove_watchpoint): Likewise.
1839         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
1840         Likewise.
1841         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
1842         Likewise.
1843         * ppc-linux-nat.c (fetch_register): Likewise.
1844         (fetch_all_gp_regs): Likewise.
1845         (fetch_ppc_registers): Likewise.
1846         (store_all_gp_regs): Likewise.
1847         (store_ppc_registers): Likewise.
1848         (hwdebug_insert_point): Likewise.
1849         (can_use_watchpoint_cond_accel): Likewise.
1850         * remote-sim.c (gdb_os_write_stdout): Likewise.
1851
1852 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
1853             Tom Tromey  <tom@tromey.com>
1854
1855         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
1856         test for it.
1857         * configure: Rebuild.
1858
1859 2018-07-22  Tom Tromey  <tom@tromey.com>
1860
1861         * regformats/regdat.sh: Define xmltarget_${name} inside
1862         #ifndef IN_PROCESS_AGENT.
1863
1864 2018-07-22  Tom Tromey  <tom@tromey.com>
1865
1866         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
1867
1868 2018-07-22  Tom Tromey  <tom@tromey.com>
1869
1870         * symfile.c (reread_symbols): Notify iter, not objfile.
1871
1872 2018-07-22  Tom Tromey  <tom@tromey.com>
1873
1874         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
1875         Use arch_ops.
1876         (ravenscar_thread_target::prepare_to_store): Likewise.
1877
1878 2018-07-22  Tom Tromey  <tom@tromey.com>
1879
1880         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
1881         unused variable.  Call value_fetch_lazy when needed.
1882         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
1883         Remove unused variable.  Call value_fetch_lazy when needed.
1884
1885 2018-07-22  Tom Tromey  <tom@tromey.com>
1886
1887         * m32c-tdep.c (mark_dma): Return void.
1888         (make_regs): Remove unused declarations.
1889
1890 2018-07-22  Tom Tromey  <tom@tromey.com>
1891
1892         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
1893         cmdscm_get_valid_command_smob_arg_unsafe for effect.
1894         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
1895         bkscm_get_valid_block_smob_arg_unsafe for effect.
1896
1897 2018-07-22  Tom Tromey  <tom@tromey.com>
1898
1899         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
1900         value_type.
1901
1902 2018-07-22  Tom Tromey  <tom@tromey.com>
1903
1904         * windows-nat.c (saved_context): Conditionally define.
1905         * remote.c (remote_target::remote_btrace_maybe_reopen):
1906         Conditionally declare "warned".
1907         * inflow.c (sigquit_ours): Conditionally define.
1908         (new_tty): Move "tty" declaration inside #if.
1909         * guile/guile.c (guile_datadir): Conditionally define.
1910         * charset.c (set_be_le_names): Move some declarations inside #if.
1911         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
1912         #if.
1913         (parse_xml_btrace_conf): Likewise.
1914
1915 2018-07-22  Tom Tromey  <tom@tromey.com>
1916
1917         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
1918
1919 2018-07-22  Tom Tromey  <tom@tromey.com>
1920
1921         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
1922         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
1923         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
1924         * buildsym-legacy.c (get_macro_table): Remove unused variable.
1925         * stack.c (frame_apply_level_command): Remove unused variable.
1926         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
1927         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
1928         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
1929         unused variable.
1930         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
1931         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
1932         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
1933         variable.
1934         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
1935         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
1936         variable.
1937         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
1938         Remove unused variable.
1939         * cli/cli-script.c (recurse_read_control_structure): Remove unused
1940         variable.
1941         * common/tdesc.c (print_xml_feature::visit): Remove unused
1942         variable.
1943         * compile/compile-object-load.c (store_regs): Remove unused
1944         variables.
1945         * complaints.c (clear_complaints): Remove unused variable.
1946         * corelow.c (core_target_open): Remove unused variable.
1947         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
1948         variable.
1949         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
1950         variable.
1951         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
1952         variable.
1953         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
1954         variable.
1955         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
1956         variable.
1957         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
1958         variable.
1959         * ia64-tdep.c (examine_prologue): Remove unused variable.
1960         * infcall.c (run_inferior_call): Remove unused variable.
1961         * inferior.c (exit_inferior): Remove unused variable.
1962         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
1963         * linespec.c (decode_line_2): Remove unused variable.
1964         * linux-nat.c (super_close): Remove.
1965         * linux-tdep.c (linux_info_proc): Remove unused variable.
1966         * mi/mi-main.c (mi_execute_command): Remove unused variable.
1967         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
1968         Remove unused variable.
1969         * parse.c (find_minsym_type_and_address): Remove unused variable.
1970         * printcmd.c (info_symbol_command, printf_floating): Remove unused
1971         variable.
1972         * python/py-breakpoint.c (bppy_set_commands): Remove unused
1973         variable.
1974         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
1975         variables.
1976         * record-btrace.c (record_btrace_target::store_registers): Remove
1977         unused variable.
1978         (cmd_show_record_btrace_cpu): Remove unused variable.
1979         * riscv-tdep.c (riscv_register_reggroup_p)
1980         (riscv_push_dummy_call, riscv_return_value): Remove unused
1981         variable.
1982         * rust-exp.y (literal): Remove unused variable.
1983         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
1984         unused variable.
1985         <STRUCTOP_ANONYMOUS>: Likewise.
1986         * s390-linux-tdep.c (s390_linux_init_abi_31)
1987         (s390_linux_init_abi_64): Remove unused variable.
1988         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
1989         (file_select_thread, net_windows_open, _initialize_ser_windows):
1990         Remove unused variables.
1991         * symtab.c (find_pc_sect_line): Remove unused variable.
1992         * target-memory.c (compute_garbled_blocks): Remove unused
1993         variable.
1994         (target_write_memory_blocks): Remove unused variable.
1995         * target.c (target_stack::unpush): Remove unused variables.
1996         * tracepoint.c (start_tracing, all_tracepoint_actions)
1997         (merge_uploaded_trace_state_variables)
1998         (print_one_static_tracepoint_marker): Remove unused variable.
1999         * unittests/basic_string_view/element_access/char/1.cc (test01):
2000         Remove unused variable.
2001         * windows-nat.c (windows_continue, windows_add_all_dlls)
2002         (do_initial_windows_stuff, windows_nat_target::create_inferior):
2003         Remove unused variables.
2004
2005 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
2006
2007         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
2008         attr_profile in HAVE_ELF.
2009         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
2010         HAVE_ELF.
2011
2012 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
2013
2014         * frame.c (frame_register_unwind): Change parameter name.
2015         (frame_unwind_register): Likewise.
2016         (frame_unwind_register_value): Likewise.
2017         (frame_unwind_register_signed): Likewise.
2018         (frame_unwind_register_unsigned): Likewise.
2019         * frame.h (frame_register_unwind): Likewise.
2020         (frame_unwind_register): Likewise.
2021         (frame_unwind_register_value): Likewise.
2022         (frame_unwind_register_signed): Likewise.
2023         (frame_unwind_register_unsigned): Likewise.
2024         (frame_unwind_arch): Likewise.
2025
2026 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
2027
2028         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
2029         ISA maintenance.
2030
2031 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
2032
2033         * mips-linux-nat.c (mips_linux_nat_target::read_description):
2034         Call `get_ptrace_pid' rather than extracting the ptrace PID by
2035         hand.
2036
2037 2018-07-20  Keith Seitz  <keiths@redhat.com>
2038
2039         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
2040         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
2041         m_compunit_symtab, m_language>: Add "m_" prefix.
2042         Update all uses.
2043         * buildsym.c: Update all uses.
2044
2045 2018-07-20  Tom Tromey  <tom@tromey.com>
2046
2047         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
2048         * buildsym.h (record_line_ftype): Remove typedef.
2049
2050 2018-07-20  Tom Tromey  <tom@tromey.com>
2051
2052         * buildsym-legacy.h (augment_type_symtab): Don't declare.
2053         (end_expandable_symtab): Likewise.
2054         (end_symtab_get_static_block): Likewise.
2055         (end_symtab_from_static_block): Likewise.
2056         * buildsym-legacy.c (augment_type_symtab): Remove.
2057         (end_expandable_symtab): Remove.
2058         (end_symtab_get_static_block): Remove.
2059         (end_symtab_from_static_block): Remove.
2060
2061 2018-07-20  Tom Tromey  <tom@tromey.com>
2062
2063         * dwarf2read.c: Include buildsym.h.
2064         (struct dwarf2_cu) <builder>: New method.
2065         (fixup_go_packaging): Update.
2066         (process_full_comp_unit, process_full_type_unit): Update.  Don't
2067         use scoped_free_pendings.
2068         (using_directives): Add "cu" parameter, remove "language".
2069         (read_import_statement, setup_type_unit_groups, )
2070         (read_func_scope, read_lexical_block_scope)
2071         (dwarf2_record_block_ranges, read_namespace): Update.
2072         (lnp_state_machine::lnp_state_machine): Add cu parameter.
2073         (lnp_state_machine::handle_end_sequence): Update.
2074         (class lnp_state_machine) <m_cu>: New member.
2075         <m_record_line_callback>: Remove.
2076         <m_currently_recording_lines>: New member.
2077         (lnp_state_machine::handle_set_file): Update.
2078         (noop_record_line): Remove.
2079         (dwarf_record_line_p): Add cu parameter.
2080         (dwarf_record_line_1, dwarf_finish_line): Likewise.
2081         (lnp_state_machine::record_line)
2082         (lnp_state_machine::lnp_state_machine)
2083         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
2084         (dwarf_decode_lines): Update.
2085         (dwarf2_start_subfile): Add cu parameter.
2086         (dwarf2_start_symtab, new_symbol): Update.
2087         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
2088         Remove dwarf2_per_objfile parameter.
2089         (dwarf_decode_macros): Update.
2090
2091 2018-07-20  Tom Tromey  <tom@tromey.com>
2092
2093         * stabsread.c (define_symbol): Update.
2094         * buildsym-legacy.h (get_buildsym_compunit): Declare.
2095         * dwarf2read.c (new_symbol): Update.
2096         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
2097         * cp-namespace.c: Include buildsym.h.
2098         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
2099         * buildsym-legacy.c (get_buildsym_compunit): New function.
2100
2101 2018-07-20  Tom Tromey  <tom@tromey.com>
2102
2103         * xcoffread.c: Include buildsym-legacy.h.
2104         * windows-nat.c: Include buildsym-legacy.h.
2105         * stabsread.c: Include buildsym-legacy.h.
2106         * mdebugread.c: Include buildsym-legacy.h.
2107         * buildsym-legacy.h: New file.
2108         * buildsym-legacy.c: New file, from buildsym.c.
2109         * go32-nat.c: Include buildsym-legacy.h.
2110         * dwarf2read.c: Include buildsym-legacy.h.
2111         * dbxread.c: Include buildsym-legacy.h.
2112         * cp-namespace.c: Include buildsym-legacy.h.
2113         * coffread.c: Include buildsym-legacy.h.
2114         * buildsym.h: Move some contents to buildsym-legacy.h.
2115         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
2116         buildsym-legacy.c.
2117         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
2118
2119 2018-07-20  Tom Tromey  <tom@tromey.com>
2120
2121         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
2122         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
2123         (buildsym_compunit::buildsym_compunit)
2124         (buildsym_compunit::~buildsym_compunit)
2125         (buildsym_compunit::get_macro_table): Define.
2126
2127 2018-07-20  Tom Tromey  <tom@tromey.com>
2128
2129         * buildsym.c (reset_symtab_globals): Remove.
2130         (buildsym_compunit::end_symtab_from_static_block): Update.
2131         (buildsym_compunit::augment_type_symtab): Update.
2132         (end_symtab_from_static_block): Call free_buildsym_compunit.
2133         (augment_type_symtab, end_symtab, end_expandable_symtab):
2134         Likewise.
2135
2136 2018-07-20  Tom Tromey  <tom@tromey.com>
2137
2138         * arch-utils.c: Do not include buildsym.h.
2139         * mipsread.c: Do not include buildsym.h.
2140         * machoread.c: Do not include buildsym.h.
2141         * elfread.c: Do not include buildsym.h.
2142
2143 2018-07-20  Tom Tromey  <tom@tromey.com>
2144
2145         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
2146         initialization.
2147         (buildsym_compunit): Add new constructor.
2148         (struct buildsym_compunit) <get_last_source_file, finish_block,
2149         record_block_range, start_subfile, patch_subfile_names,
2150         push_subfile, pop_subfile, record_line, get_compunit_symtab,
2151         set_last_source_start_addr, get_last_source_start_addr,
2152         get_local_using_directives, set_local_using_directives,
2153         get_global_using_directives, outermost_context_p,
2154         get_current_context_stack, get_context_stack_depth,
2155         get_current_subfile, get_local_symbols, get_file_symbols,
2156         get_global_symbols, record_debugformat, record_producer,
2157         push_context, pop_context, end_symtab_get_static_block,
2158         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
2159         New public methods.
2160         <record_pending_block, finish_block_internal, make_blockvector,
2161         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
2162         private methods.
2163         Update all users.
2164
2165 2018-05-22  Tom Tromey  <tom@tromey.com>
2166
2167         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
2168         parameter.
2169         (finish_block_internal): Update.
2170
2171 2018-07-20  Tom Tromey  <tom@tromey.com>
2172
2173         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
2174         parameter.
2175         (finish_block_internal): Update.
2176
2177 2018-07-20  Tom Tromey  <tom@tromey.com>
2178
2179         * buildsym.h (EXTERN): Don't define or undef.
2180         * buildsym.c (EXTERN): Don't define.
2181
2182 2018-07-20  Tom Tromey  <tom@tromey.com>
2183
2184         * buildsym.c: Remove TODO comment.
2185
2186 2018-07-20  Tom Tromey  <tom@tromey.com>
2187
2188         * coffread.c (coff_symtab_read): Update.
2189         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
2190         (xcoff_new_init): Update.
2191         * mipsread.c (mipscoff_new_init): Update.
2192         * mdebugread.c (mdebug_build_psymtabs): Update.
2193         * elfread.c (elf_new_init): Update.
2194         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
2195         Update.
2196         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
2197         (coffstab_build_psymtabs, elfstab_build_psymtabs)
2198         (stabsect_build_psymtabs): Update.
2199         * buildsym.h (buildsym_init): Don't declare.
2200         * buildsym.c: Update comment.
2201         (prepare_for_building): Remove.
2202         (start_symtab, restart_symtab): Update.
2203         (reset_symtab_globals): Update comment.
2204         (buildsym_init): Remove.
2205
2206 2018-07-20  Tom Tromey  <tom@tromey.com>
2207
2208         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
2209         * stabsread.c (patch_block_stabs, define_symbol, read_type)
2210         (read_enum_type, common_block_start, common_block_end)
2211         (cleanup_undefined_types_1, finish_global_stabs): Update.
2212         * mdebugread.c (psymtab_to_symtab_1): Update.
2213         * dwarf2read.c (fixup_go_packaging, read_func_scope)
2214         (read_lexical_block_scope, new_symbol): Update.
2215         * dbxread.c (process_one_symbol): Update.
2216         * coffread.c (coff_symtab_read, process_coff_symbol)
2217         (coff_read_enum_type): Update.
2218         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
2219         declare.
2220         (get_local_symbols, get_file_symbols, get_global_symbols): New
2221         functions.
2222         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
2223         m_global_symbols.
2224         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
2225         (~scoped_free_pendings): Update.
2226         (finish_block, prepare_for_building, reset_symtab_globals)
2227         (end_symtab_get_static_block, end_symtab_with_blockvector)
2228         (augment_type_symtab, push_context): Update.
2229         (get_local_symbols, get_file_symbols, get_global_symbols): New
2230         functions.
2231         (buildsym_init): Update.
2232
2233 2018-07-20  Tom Tromey  <tom@tromey.com>
2234
2235         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
2236         (process_full_type_unit): Likewise.
2237         (dwarf2_start_symtab): Set list_in_scope.
2238
2239 2018-07-20  Tom Tromey  <tom@tromey.com>
2240
2241         * dwarf2read.c (process_psymtab_comp_unit_reader)
2242         (build_type_psymtabs_reader): Do not set list_in_scope.
2243
2244 2018-07-20  Tom Tromey  <tom@tromey.com>
2245
2246         * buildsym.c (free_pendings): Remove.
2247         (add_symbol_to_list, scoped_free_pendings)
2248         (finish_block_internal, buildsym_init): Update.
2249
2250 2018-07-20  Tom Tromey  <tom@tromey.com>
2251
2252         * xcoffread.c (read_xcoff_symtab): Update.
2253         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
2254         Update.
2255         * dbxread.c (process_one_symbol): Update.
2256         * coffread.c (coff_symtab_read): Update.
2257         * buildsym.h (finish_block): Update.
2258         * buildsym.c (finish_block): Remove "listhead" argument.
2259         (end_symtab_get_static_block): Update.
2260
2261 2018-07-20  Tom Tromey  <tom@tromey.com>
2262
2263         * buildsym.h (class scoped_free_pendings): Remove constructor.
2264         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
2265         method.
2266         <m_pending_block_obstack, m_pending_blocks>: New members.
2267         (pending_block_obstack, pending_blocks): Remove.
2268         (scoped_free_pendings::scoped_free_pendings): Default.
2269         (~scoped_free_pendings): Update.
2270         (free_pending_blocks): Remove.
2271         (finish_block_internal, record_pending_block, make_blockvector)
2272         (end_symtab_get_static_block, augment_type_symtab, push_context)
2273         (buildsym_init): Update.
2274
2275 2018-07-20  Tom Tromey  <tom@tromey.com>
2276
2277         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
2278         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
2279         members.
2280         (pending_addrmap, pending_addrmap_obstack)
2281         (pending_addrmap_interesting): Remove.
2282         (scoped_free_pendings, record_block_range, make_blockvector)
2283         (prepare_for_building, reset_symtab_globals, buildsym_init):
2284         Update.
2285
2286 2018-07-20  Tom Tromey  <tom@tromey.com>
2287
2288         * xcoffread.c (process_linenos): Update.
2289         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
2290         * mdebugread.c (psymtab_to_symtab_1): Update.
2291         * dwarf2read.c (setup_type_unit_groups)
2292         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
2293         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
2294         * dbxread.c (process_one_symbol): Update.
2295         * coffread.c (coff_symtab_read, enter_linenos)
2296         (process_coff_symbol): Update.
2297         * buildsym.h (current_subfile): Don't declare.
2298         (get_current_subfile): Declare.
2299         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
2300         member.
2301         (start_subfile, free_buildsym_compunit, push_subfile)
2302         (prepare_for_building, start_symtab): Update.
2303         (get_current_subfile): New function.
2304
2305 2018-07-20  Tom Tromey  <tom@tromey.com>
2306
2307         * coffread.c (coff_symtab_read): Update.
2308         * xcoffread.c (read_xcoff_symtab): Update.
2309         * dwarf2read.c (new_symbol): Update.
2310         (read_func_scope, read_lexical_block_scope): Update.
2311         * dbxread.c (process_one_symbol): Update.
2312         * buildsym.h (context_stack, context_stack_depth): Don't declare.
2313         (outermost_context_p): Remove macro.
2314         (outermost_context_p, get_current_context_stack)
2315         (get_context_stack_depth): Declare.
2316         (pop_context): Return struct context_stack.
2317         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
2318         member.
2319         (context_stack_size): Remove.
2320         (INITIAL_CONTEXT_STACK_SIZE): Remove.
2321         (prepare_for_building, end_symtab_get_static_block)
2322         (augment_type_symtab, push_context): Update.
2323         (pop_context): Return struct context_stack.
2324         (outermost_context_p, get_current_context_stack)
2325         (get_context_stack_depth): New functions.
2326         (buildsym_init): Update.
2327
2328 2018-07-20  Tom Tromey  <tom@tromey.com>
2329
2330         * rust-exp.y: Now a pure parser.  Update all rules.
2331         (%union): Move earlier.
2332         (current_parser, work_obstack): Remove globals.
2333         (rust_parser, ~rust_parser): Update.
2334         (class rust_parser) <copy_name, concat3, crate_name, super_name,
2335         lex_character, lex_number, lex_string, lex_identifier,
2336         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
2337         convert_name, convert_params_to_expression,
2338         convert_ast_to_expression, ast_basic_type, ast_operation,
2339         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
2340         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
2341         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
2342         ast_array_type, ast_slice_type, ast_reference_type,
2343         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
2344         (rust_parse): Update.
2345         (rustyyerror, rustyylex): Add parser parameter.
2346         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
2347         (rust_lex_stringish_test, rust_lex_test_sequence)
2348         (rust_lex_test_trailing_dot, rust_lex_test_completion)
2349         (rust_lex_test_push_back, rust_lex_tests): Update.
2350
2351 2018-07-19  Pedro Alves  <palves@redhat.com>
2352
2353         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
2354         gdb::unique_xmalloc_ptr.
2355         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
2356         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
2357         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
2358         copy-initialization.
2359         * guile/scm-pretty-print.c (ppscm_print_children): Use
2360         gdb::unique_xmalloc_ptr instead of cleanups.
2361         (gdbscm_apply_val_pretty_printer): Remove cleanups.
2362         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
2363         gdb::unique_xmalloc_ptr.
2364         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
2365         Adjust to use gdb::unique_xmalloc_ptr.
2366         * guile/scm-utils.c (extract_arg): Adjust.
2367         * guile/scm-value.c (gdbscm_value_field): Adjust to use
2368         gdb::unique_xmalloc_ptr instead of a cleanup.
2369
2370 2018-07-19  Tom Tromey  <tom@tromey.com>
2371
2372         * utils.c (do_value_free_to_mark)
2373         (make_cleanup_value_free_to_mark): Remove.
2374         * utils.h (make_cleanup_value_free_to_mark): Remove.
2375
2376 2018-07-19  Pedro Alves  <palves@redhat.com>
2377
2378         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
2379         forwarding reference.
2380
2381 2018-07-18  Pedro Alves  <palves@redhat.com>
2382
2383         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
2384         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
2385         cleanup.
2386
2387 2018-07-18  Pedro Alves  <palves@redhat.com>
2388
2389         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
2390         exceptions.
2391         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
2392         (gdbscm_wrap): New.
2393         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
2394         directly instead of a cleanup.
2395         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
2396         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
2397         (vlscm_binop_gdbthrow): New, factored out from ...
2398         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
2399         (vlscm_rich_compare): Use gdbscm_wrap.
2400         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
2401         instead of a cleanup.
2402         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
2403         cleanup.
2404         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
2405         Use xfree directly instead of a cleanup.
2406         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
2407         Adjust to use gdbscm_wrap and scoped_value_mark.
2408         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
2409         (gdbscm_value_address, gdbscm_value_dereference)
2410         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
2411         scoped_value_mark.
2412         (gdbscm_value_dynamic_type): Use scoped_value_mark.
2413         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
2414         scoped_value_mark.
2415         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
2416         gdbscm_wrap and scoped_value_mark.
2417         (gdbscm_value_to_string): Use xfree directly instead of a
2418         cleanup.  Move 'buffer' unique_ptr to TRY scope.
2419         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
2420         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
2421         scoped_value_mark.
2422         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
2423         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
2424         scoped_value_mark.
2425         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
2426         gdbscm_wrap.
2427
2428 2018-07-18  Tom de Vries  <tdevries@suse.de>
2429
2430         * findvar.c (default_read_var_value): Also resolve dynamic type for
2431         LOC_OPTIMIZED_OUT vars.
2432
2433 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
2434
2435         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
2436         decoding.
2437
2438 2018-07-17  Tom Tromey  <tom@tromey.com>
2439
2440         * guile/scm-param.c (pascm_set_func, pascm_show_func)
2441         (compute_enum_list, pascm_set_param_value_x)
2442         (gdbscm_parameter_value): Update.
2443         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
2444         (gdbscm_scm_to_host_string): Update.
2445         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
2446         Update.
2447         * guile/scm-cmd.c (cmdscm_add_completion): Update.
2448         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
2449         * guile/scm-string.c (gdbscm_scm_to_string): Return
2450         unique_xmalloc_ptr.
2451         (gdbscm_scm_to_host_string): Likewise.
2452
2453 2018-07-17  Tom Tromey  <tom@tromey.com>
2454
2455         * guile/guile.c (gdbscm_eval_from_control_command): Update.
2456         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
2457         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
2458         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
2459         unique_xmalloc_ptr.
2460
2461 2018-07-17  Tom Tromey  <tom@tromey.com>
2462
2463         * guile/scm-param.c (pascm_signal_setshow_error): Update.
2464         * guile/guile-internal.h (gdbscm_exception_message_to_string):
2465         Update.
2466         * guile/scm-cmd.c (cmdscm_function): Update.
2467         * guile/scm-pretty-print.c
2468         (ppscm_print_exception_unless_memory_error): Update.
2469         * guile/scm-exception.c (gdbscm_exception_message_to_string):
2470         Return unique_xmalloc_ptr.
2471
2472 2018-07-17  Tom Tromey  <tom@tromey.com>
2473
2474         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
2475         Use string_printf.
2476
2477 2018-07-17  Jim Wilson  <jimw@sifive.com>
2478
2479         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
2480         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
2481         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
2482         unecessary braces after EF_RISCV_RVC test.  Delete call to
2483         set_gdbarch_decr_pc_after_break.
2484
2485         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
2486         RISCV_LAST_FP_REGNUM + 1.
2487         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
2488
2489 2018-07-17  Tom Tromey  <tom@tromey.com>
2490
2491         * configure.ac: Remove --disable-gdbcli.
2492         * configure: Rebuild.
2493         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
2494         (SUBDIR_CLI_CFLAGS): Remove.
2495         (SFILES): Use SUBDIR_CLI_SRCS.
2496         (COMMON_OBS): Use SUBDIR_CLI_OBS.
2497
2498 2018-07-17  Tom Tromey  <tom@tromey.com>
2499
2500         PR gdb/18624:
2501         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
2502
2503 2018-07-16  Jim Wilson  <jimw@sifive.com>
2504
2505         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
2506
2507 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
2508
2509         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
2510         variable.
2511         (libunwind_frame_sniffer): Likewise.
2512         (libunwind_frame_prev_register): Likewise.
2513         (libunwind_sigtramp_frame_sniffer): Likewise.
2514         * ia64-tdep.c (ia64_access_reg): Likewise.
2515         (ia64_access_rse_reg): Likewise.
2516         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
2517         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
2518
2519 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
2520
2521         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
2522
2523 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
2524
2525         * remote-sim.c (gdbsim_target::close,
2526         gdbsim_target::mourn_inferior): Remove unused variables.
2527
2528 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
2529
2530         * ia64-tdep.c (ktab_buf): New global.
2531         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
2532         (get_kernel_table): Adjust.
2533
2534 2018-07-16  Tom Tromey  <tom@tromey.com>
2535
2536         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
2537         * dwarf2read.c (using_directives, new_symbol): Use
2538         outermost_context_p.
2539         * dbxread.c (process_one_symbol): Use outermost_context_p.
2540         * coffread.c (coff_symtab_read): Use outermost_context_p.
2541
2542 2018-07-16  Tom Tromey  <tom@tromey.com>
2543
2544         * dwarf2read.c (using_directives, read_func_scope)
2545         (read_lexical_block_scope): Update.
2546         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
2547         * buildsym.h (local_using_directives, global_using_directives):
2548         Don't declare.
2549         (get_local_using_directives, set_local_using_directives)
2550         (get_global_using_directives): Declare.
2551         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
2552         m_global_using_directives>: New members.
2553         (finish_block_internal, prepare_for_building)
2554         (reset_symtab_globals, end_symtab_get_static_block)
2555         (push_context): Update.
2556         (get_local_using_directives, set_local_using_directives)
2557         (get_global_using_directives): New functions.
2558         (buildsym_init): Update.
2559
2560 2018-07-16  Tom Tromey  <tom@tromey.com>
2561
2562         * xcoffread.c (xcoff_initial_scan): Don't call
2563         free_pending_blocks.
2564         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
2565         * buildsym.h (class scoped_free_pendings): Add constructor.
2566         (free_pending_blocks): Don't declare.
2567         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
2568         (free_pending_blocks): Now static.
2569
2570 2018-07-16  Tom Tromey  <tom@tromey.com>
2571
2572         * buildsym.h (push_subfile, pop_subfile): Update declarations.
2573         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
2574         member.
2575         (struct subfile_stack): Remove.
2576         (subfile_stack): Remove.
2577         (push_subfile, pop_subfile, buildsym_init): Update.
2578
2579 2018-07-16  Tom Tromey  <tom@tromey.com>
2580
2581         * buildsym.c (push_subfile): Use gdb_assert.
2582         (pop_subfile): Use gdb_assert.
2583
2584 2018-07-16  Tom Tromey  <tom@tromey.com>
2585
2586         * buildsym.h (merge_symbol_lists): Remove.
2587         * buildsym.c (merge_symbol_lists): Remove.
2588
2589 2018-07-16  Tom Tromey  <tom@tromey.com>
2590
2591         * stabsread.c (scan_file_globals): Update comment.
2592         * stabsread.h (scan_file_globals): Move from buildsym.h.
2593         * buildsym.h (scan_file_globals): Move to stabsread.h.
2594
2595 2018-07-16  Tom Tromey  <tom@tromey.com>
2596
2597         * xcoffread.c (xcoff_new_init): Update.
2598         * mipsread.c (mipscoff_new_init): Update.
2599         * mdebugread.c (mdebug_build_psymtabs): Update.
2600         * elfread.c (elf_new_init): Update.
2601         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
2602         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
2603         * buildsym.h (buildsym_new_init): Don't declare.
2604         * buildsym.c (buildsym_new_init): Remove.
2605
2606 2018-07-16  Tom Tromey  <tom@tromey.com>
2607
2608         * stabsread.h (within_function): Move from buildsym.h.
2609         * stabsread.c (start_stabs): Clear within_function.
2610         * coffread.c (coff_start_symtab): Clear within_function.
2611         * buildsym.h (within_function): Move to stabsread.h.
2612         * buildsym.c (prepare_for_building): Update.
2613
2614 2018-07-16  Tom Tromey  <tom@tromey.com>
2615
2616         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
2617         * dwarf2read.c (dwarf2_start_symtab): Don't set
2618         processing_gcc_compilation.
2619         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
2620
2621 2018-07-16  Tom Tromey  <tom@tromey.com>
2622
2623         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
2624         (next_symbol_text_func): Move from buildsym.h.
2625         * stabsread.c (hashname): Move from buildsym.c.
2626         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
2627         (next_symbol_text_func, hashname): Move to stabsread.h.
2628         * buildsym.c: Don't include bcache.h
2629         (hashname): Move to stasbread.c.
2630
2631 2018-07-16  Tom Tromey  <tom@tromey.com>
2632
2633         * buildsym.h (context_stack_size): Don't declare.
2634         * buildsym.c (context_stack_size): New global.
2635
2636 2018-07-16  Tom Tromey  <tom@tromey.com>
2637
2638         * dbxread.c (processing_acc_compilation): New global.
2639         * buildsym.h (processing_acc_compilation): Don't declare.
2640
2641 2018-07-16  Tom Tromey  <tom@tromey.com>
2642
2643         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
2644         * dbxread.c (read_ofile_symtab): Update.
2645         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
2646         * buildsym.h (last_source_start_addr): Remove.
2647         (set_last_source_start_addr, get_last_source_start_addr):
2648         Declare.
2649         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
2650         parameter.
2651         (struct buildsym_compunit) <m_last_source_start_addr>: New
2652         member.
2653         (prepare_for_building): Remove start_addr parameter.
2654         (start_symtab, restart_symtab, end_symtab_get_static_block)
2655         (end_symtab_with_blockvector): Update.
2656         (set_last_source_start_addr, get_last_source_start_addr): New
2657         functions.
2658
2659 2018-07-16  Tom Tromey  <tom@tromey.com>
2660
2661         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
2662         member.
2663         (have_line_numbers): Remove.
2664         (record_line, prepare_for_building, end_symtab_get_static_block)
2665         (augment_type_symtab): Update.
2666
2667 2018-07-16  Tom Tromey  <tom@tromey.com>
2668
2669         * buildsym.c (~buildsym_compunit): Free the macro table.
2670         (struct buildsym_compunit) <get_macro_table, release_macros>: New
2671         methods.
2672         <m_pending_macros>: New member.
2673         (pending_macros): Remove.
2674         (~scoped_free_pendings, get_macro_table, prepare_for_building)
2675         (reset_symtab_globals, end_symtab_get_static_block)
2676         (end_symtab_with_blockvector, augment_type_symtab)
2677         (buildsym_init): Update.
2678
2679 2018-07-16  Tom Tromey  <tom@tromey.com>
2680
2681         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
2682         parameter.
2683         (buildsym_compunit::set_last_source_file): New method.
2684         <m_last_source_file>: New member.
2685         (prepare_for_building): Remove "name" parameter.
2686         (start_symtab, restart_symtab, reset_symtab_globals): Update.
2687         (last_source_file): Remove.
2688         (set_last_source_file, get_last_source_file): Update.
2689
2690 2018-07-16  Tom Tromey  <tom@tromey.com>
2691
2692         * buildsym.c (prepare_for_building): Add assert.
2693
2694 2018-07-16  Tom Tromey  <tom@tromey.com>
2695
2696         * buildsym.c (~buildsym_compunit): Update.
2697         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
2698         (start_subfile, patch_subfile_names)
2699         (end_symtab_with_blockvector): Update.
2700
2701 2018-07-16  Tom Tromey  <tom@tromey.com>
2702
2703         * buildsym.c (struct buildsym_compunit): Add constructor,
2704         destructor, initializers.
2705         (start_buildsym_compunit): Remove.
2706         (free_buildsym_compunit): Use "delete".
2707         (start_symtab, restart_symtab): Use "new".
2708
2709 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
2710
2711         * symfile.c (set_objfile_default_section_offset): Remove struct
2712         keyword.
2713
2714 2018-07-14  Stafford Horne  <shorne@gmail.com>
2715
2716         * (Responsible Maintainers): Add myself as or1k maintainer.
2717
2718 2018-07-13  Tom Tromey  <tom@tromey.com>
2719
2720         * symfile.c (set_objfile_default_section_offset): Use extra braces
2721         around initializer.
2722
2723 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
2724
2725         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
2726         non-branching basr.
2727
2728 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2729
2730         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
2731         unittests/cli-utils-selftests.c
2732         * unittests/cli-utils-selftests.c: New file.
2733
2734 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2735
2736         * NEWS: Mention new commands. Mention change to 'thread apply'.
2737
2738 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2739
2740         * thread.c (thr_try_catch_cmd): New function.
2741         (thread_apply_all_command): Handle qcs flags.
2742         (thread_apply_command): Handle qcs flags.
2743         (taas_command): New function.
2744         (tfaas_command): New function.
2745         (_initialize_thread): Update to setup the new commands 'taas
2746         and 'tfaas'. Change doc string for 'thread apply'.
2747
2748 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2749
2750         * stack.c: (trailing_outermost_frame): New function, mostly
2751         extracted from backtrace_command_1.
2752         (leading_innermost_frame): New function.
2753         (backtrace_command_1): Update to call trailing_outermost_frame.
2754         (frame_apply_command_count): New function.
2755         (frame_apply_level_command): New function.
2756         (frame_apply_all_command): New function.
2757         (frame_apply_command): New function.
2758         (faas_command): New function.
2759         (frame_cmd_list): New variable.
2760         (_initialize_stack): Update to setup the new commands 'frame apply'
2761         and 'faas'.
2762
2763 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2764
2765         * cli-utils.c (number_or_range_parser::get_number): Only handle
2766         numbers or convenience var as numbers.
2767         (parse_flags): New function.
2768         (parse_flags_qcs): New function.
2769         (number_or_range_parser::finished): Ensure parsing end is detected
2770         before end of string.
2771         * cli-utils.h (parse_flags): New function.
2772         (parse_flags_qcs): New function.
2773         (number_or_range_parser): Remove m_finished bool.
2774         (number_or_range_parser::skip_range): Set m_in_range to false.
2775
2776 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
2777
2778         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
2779         on Windows.
2780
2781 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
2782             Jan Kratochvil  <jan.kratochvil@redhat.com>
2783             Paul Fertser  <fercerpav@gmail.com>
2784             Tsutomu Seki  <sekiriki@gmail.com>
2785             Pedro Alves  <palves@redhat.com>
2786
2787         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
2788         'unittests/parse-connection-spec-selftests.c'.
2789         (COMMON_SFILES): Add 'common/netstuff.c'.
2790         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
2791         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
2792         * common/netstuff.c: New file.
2793         * common/netstuff.h: New file.
2794         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
2795         (wait_for_connect): Update comment.  New parameter
2796         'gdb::optional<int> sock' instead of 'struct serial *scb'.
2797         Use 'sock' directly instead of 'scb->fd'.
2798         (try_connect): New function, with code from 'net_open'.
2799         (net_open): Rewrite main loop to deal with multiple
2800         sockets/addresses.  Handle IPv6-style hostnames; implement
2801         support for IPv6 connections.
2802         * unittests/parse-connection-spec-selftests.c: New file.
2803
2804 2018-07-11  Pedro Alves  <palves@redhat.com>
2805
2806         PR gdb/23377
2807         * remote.c (remote_target::remote_detach_pid): Call
2808         set_current_process.
2809
2810 2018-07-11  Pedro Alves  <palves@redhat.com>
2811
2812         * h8300-tdep.c (h8300_gdbarch_init): Remove
2813         set_gdbarch_ecoff_reg_to_regnum calls.
2814
2815 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
2816
2817         PR c++/23373
2818         * c-typeprint.c (c_type_print_base_struct_union): Don't print
2819         offsets/sizes for static members of a class/struct.
2820
2821 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
2822
2823         * target-descriptions.c (tdesc_register_bitsize): Rename.
2824         * target-descriptions.h (tdesc_register_bitsize): Likewise.
2825         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
2826         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
2827
2828 2018-07-10  Tom Tromey  <tom@tromey.com>
2829
2830         * breakpoint.c (moribund_locations): Now static and a
2831         std::vector.
2832         (breakpoint_init_inferior, moribund_breakpoint_here_p)
2833         (build_bpstat_chain, update_global_location_list)
2834         (breakpoint_retire_moribund): Update.
2835         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
2836         VEC.
2837
2838 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
2839
2840         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
2841         (riscv_register_reggroup_p): Use new function, remove unneeded
2842         parenthesis.
2843         (riscv_push_dummy_call): Extend assert to compare against xlen or
2844         flen based on register type.
2845
2846 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
2847
2848         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
2849
2850 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
2851
2852         * remote.c (show_hardware_watchpoint_limit): New function.
2853         (show_hardware_watchpoint_length_limit): New function.
2854         (show_hardware_breakpoint_limit): New function.
2855         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
2856         where appropriate, update help text.
2857
2858 2018-07-09  Tom Tromey  <tom@tromey.com>
2859
2860         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
2861         (CLIBS): Don't mention NAT_CLIBS.
2862
2863 2018-07-09  Tom Tromey  <tom@tromey.com>
2864
2865         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
2866         (LIBGDB_OBS, clean mostlyclean): Update.
2867         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
2868
2869 2018-07-09  Tom Tromey  <tom@tromey.com>
2870
2871         * Makefile.in (%.c: %.y): Use ECHO_YACC.
2872         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
2873         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
2874
2875 2018-07-09  Tom Tromey  <tom@tromey.com>
2876
2877         * Makefile.in (ALLDEPFILES): Remove exec.c.
2878         (COMMON_OBS): Remove exec.o.
2879         (COMMON_SFILES): Add exec.c.
2880
2881 2018-07-09  Tom Tromey  <tom@tromey.com>
2882
2883         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
2884
2885 2018-07-09  Tom Tromey  <tom@tromey.com>
2886
2887         * Makefile.in (clean mostlyclean): Remove stamp-version.
2888         (version.c): Depend on stamp-version.
2889         (stamp-version): New rule, from version.c rule.
2890
2891 2018-07-09  Tom Tromey  <tom@tromey.com>
2892
2893         * Makefile.in (init.c): Depend on stamp-init.
2894         (stamp-init): New rule, from init.c rule.
2895         (clean mostlyclean): Remove stamp-init.
2896
2897 2018-07-09  Tom Tromey  <tom@tromey.com>
2898
2899         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
2900         SUBDIR_GCC_COMPILE_SRCS.
2901
2902 2018-07-09  Tom Tromey  <tom@tromey.com>
2903
2904         * Makefile.in (init.c): Remove some unused sed rules.
2905
2906 2018-07-09  Tom Tromey  <tom@tromey.com>
2907
2908         * Makefile.in (TSOBS): Remove.
2909         (INIT_FILES): Update.
2910         (LIBGDB_OBS): Update.
2911         (COMMON_SFILES): Add inflow.c.
2912         (SFILES): Remove inflow.c.
2913
2914 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
2915
2916         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
2917
2918 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
2919
2920         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
2921         get_saveloc_name, is_signal_frame_name, step_name,
2922         init_remote_name, create_addr_space_name,
2923         destroy_addr_space_name, search_unwind_table_name,
2924         find_dyn_list_name): Constify.
2925
2926 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
2927
2928         * darwin-nat.c (darwin_pthread_kill): New function.
2929         (darwin_resume_thread): Use darwin_pthread_kill.
2930
2931 2018-07-05  Tom de Vries  <tdevries@suse.de>
2932
2933         * macroexp.c (macro_buffer) <operator=>: New member function.
2934
2935 2018-07-04  Tom Tromey  <tom@tromey.com>
2936
2937         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
2938
2939 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
2940
2941         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
2942         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
2943         * maint.c: Likewise.
2944         * top.c: Likewise.
2945
2946 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
2947
2948         * NEWS: Create a new section for the next release branch.
2949         Rename the section of the current branch, now that it has
2950         been cut.
2951
2952 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
2953
2954         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
2955         * version.in: Bump version to 8.2.50.DATE-git.
2956
2957 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
2958             Pedro Alves  <palves@redhat.com>
2959
2960         * linux-nat.c (linux_init_ptrace): Rename to ...
2961         (linux_init_ptrace_procfs): ... this.  Call
2962         linux_proc_init_warnings.
2963         (linux_nat_target::post_attach)
2964         (linux_nat_target::post_startup_inferior): Adjust.
2965         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
2966         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
2967
2968 2018-07-04  Tom de Vries  <tdevries@suse.de>
2969
2970         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
2971         check ...
2972         (read_comp_unit_head): ... here.
2973
2974 2018-07-03  Tom Tromey  <tom@tromey.com>
2975
2976         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
2977         (stop_tracing, tstatus_command)
2978         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
2979         (print_one_static_tracepoint_marker): Update.
2980         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
2981         std::vector.
2982         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
2983         VEC.
2984         (all_tracepoints, static_tracepoints_here): Return std::vector.
2985
2986 2018-07-03  Tom Tromey  <tom@tromey.com>
2987
2988         * common/ptid.c (ptid_equal): Remove.
2989         * common/ptid.h (ptid_equal): Don't declare.
2990         * ada-tasks.c: Update.
2991         * breakpoint.c: Update.
2992         * common/agent.c: Update.
2993         * corelow.c: Update.
2994         * darwin-nat-info.c: Update.
2995         * darwin-nat.c: Update.
2996         * dcache.c: Update.
2997         * dtrace-probe.c: Update.
2998         * dummy-frame.c: Update.
2999         * fbsd-nat.c: Update.
3000         * frame.c: Update.
3001         * gdbthread.h: Update.
3002         * gnu-nat.c: Update.
3003         * go32-nat.c: Update.
3004         * inf-loop.c: Update.
3005         * inf-ptrace.c: Update.
3006         * infcall.c: Update.
3007         * infcmd.c: Update.
3008         * inflow.c: Update.
3009         * infrun.c: Update.
3010         * linux-fork.c: Update.
3011         * linux-nat.c: Update.
3012         * linux-thread-db.c: Update.
3013         * mi/mi-cmd-var.c: Update.
3014         * mi/mi-interp.c: Update.
3015         * mi/mi-main.c: Update.
3016         * nto-procfs.c: Update.
3017         * ppc-linux-tdep.c: Update.
3018         * procfs.c: Update.
3019         * python/py-inferior.c: Update.
3020         * python/py-record-btrace.c: Update.
3021         * python/py-record.c: Update.
3022         * ravenscar-thread.c: Update.
3023         * regcache.c: Update.
3024         * remote-sim.c: Update.
3025         * remote.c: Update.
3026         * sol-thread.c: Update.
3027         * solib.c: Update.
3028         * target.c: Update.
3029         * tui/tui-stack.c: Update.
3030         * varobj.c: Update.
3031         * windows-nat.c: Update.
3032         * windows-tdep.c: Update.
3033
3034 2018-07-03  Tom Tromey  <tom@tromey.com>
3035
3036         * common/ptid.c (ptid_match): Remove.
3037         * common/ptid.h (ptid_match): Don't declare.
3038         * fbsd-nat.c: Update.
3039         * infcmd.c: Update.
3040         * infrun.c: Update.
3041         * linux-nat.c: Update.
3042         * record-btrace.c: Update.
3043         * regcache.c: Update.
3044         * remote.c: Update.
3045
3046 2018-07-03  Tom Tromey  <tom@tromey.com>
3047
3048         * common/ptid.c (ptid_tid_p): Remove.
3049         * common/ptid.h (ptid_tid_p): Don't declare.
3050         * sol-thread.c: Update.
3051
3052 2018-07-03  Tom Tromey  <tom@tromey.com>
3053
3054         * common/ptid.c (ptid_lwp_p): Remove.
3055         * common/ptid.h (ptid_lwp_p): Don't declare.
3056         * fbsd-nat.c: Update.
3057         * linux-nat.c: Update.
3058         * nat/linux-procfs.c: Update.
3059         * nat/x86-linux-dregs.c: Update.
3060         * sol-thread.c: Update.
3061
3062 2018-07-03  Tom Tromey  <tom@tromey.com>
3063
3064         * common/ptid.c (ptid_is_pid): Remove.
3065         * common/ptid.h (ptid_is_pid): Don't declare.
3066         * infrun.c: Update.
3067         * linux-nat.c: Update.
3068         * mi/mi-interp.c: Update.
3069         * remote.c: Update.
3070         * thread.c: Update.
3071
3072 2018-07-03  Tom Tromey  <tom@tromey.com>
3073
3074         * common/ptid.c (ptid_get_tid): Remove.
3075         * common/ptid.h (ptid_get_tid): Don't declare.
3076         * ada-tasks.c: Update.
3077         * aix-thread.c: Update.
3078         * bsd-uthread.c: Update.
3079         * darwin-nat.c: Update.
3080         * fbsd-nat.c: Update.
3081         * i386-darwin-nat.c: Update.
3082         * infrun.c: Update.
3083         * linux-tdep.c: Update.
3084         * nto-procfs.c: Update.
3085         * ppc-ravenscar-thread.c: Update.
3086         * python/py-infthread.c: Update.
3087         * ravenscar-thread.c: Update.
3088         * sol-thread.c: Update.
3089         * sparc-ravenscar-thread.c: Update.
3090         * windows-nat.c: Update.
3091
3092 2018-07-03  Tom Tromey  <tom@tromey.com>
3093
3094         * common/ptid.c (ptid_get_lwp): Remove.
3095         * common/ptid.h (ptid_get_lwp): Don't declare.
3096         * aarch64-linux-nat.c: Update.
3097         * ada-tasks.c: Update.
3098         * aix-thread.c: Update.
3099         * amd64-linux-nat.c: Update.
3100         * arm-linux-nat.c: Update.
3101         * corelow.c: Update.
3102         * fbsd-nat.c: Update.
3103         * fbsd-tdep.c: Update.
3104         * gnu-nat.c: Update.
3105         * i386-cygwin-tdep.c: Update.
3106         * i386-gnu-nat.c: Update.
3107         * i386-linux-nat.c: Update.
3108         * ia64-linux-nat.c: Update.
3109         * inf-ptrace.c: Update.
3110         * infrun.c: Update.
3111         * linux-fork.c: Update.
3112         * linux-nat.c: Update.
3113         * linux-tdep.c: Update.
3114         * linux-thread-db.c: Update.
3115         * mips-linux-nat.c: Update.
3116         * nat/aarch64-linux-hw-point.c: Update.
3117         * nat/aarch64-linux.c: Update.
3118         * nat/linux-btrace.c: Update.
3119         * nat/linux-osdata.c: Update.
3120         * nat/linux-procfs.c: Update.
3121         * nat/x86-linux-dregs.c: Update.
3122         * obsd-nat.c: Update.
3123         * ppc-fbsd-nat.c: Update.
3124         * ppc-linux-nat.c: Update.
3125         * procfs.c: Update.
3126         * python/py-infthread.c: Update.
3127         * ravenscar-thread.c: Update.
3128         * remote.c: Update.
3129         * s390-linux-nat.c: Update.
3130         * sol-thread.c: Update.
3131         * sol2-tdep.c: Update.
3132         * spu-linux-nat.c: Update.
3133         * x86-linux-nat.c: Update.
3134         * xtensa-linux-nat.c: Update.
3135
3136 2018-07-03  Tom Tromey  <tom@tromey.com>
3137
3138         * common/ptid.c (ptid_get_pid): Remove.
3139         * common/ptid.h (ptid_get_pid): Don't declare.
3140         * aarch64-linux-nat.c: Update.
3141         * ada-lang.c: Update.
3142         * aix-thread.c: Update.
3143         * alpha-bsd-nat.c: Update.
3144         * amd64-fbsd-nat.c: Update.
3145         * amd64-linux-nat.c: Update.
3146         * arm-linux-nat.c: Update.
3147         * arm-nbsd-nat.c: Update.
3148         * auxv.c: Update.
3149         * break-catch-syscall.c: Update.
3150         * breakpoint.c: Update.
3151         * bsd-uthread.c: Update.
3152         * corelow.c: Update.
3153         * ctf.c: Update.
3154         * darwin-nat.c: Update.
3155         * fbsd-nat.c: Update.
3156         * fbsd-tdep.c: Update.
3157         * gcore.c: Update.
3158         * gnu-nat.c: Update.
3159         * hppa-nbsd-nat.c: Update.
3160         * hppa-obsd-nat.c: Update.
3161         * i386-fbsd-nat.c: Update.
3162         * ia64-linux-nat.c: Update.
3163         * inf-ptrace.c: Update.
3164         * infcmd.c: Update.
3165         * inferior.c: Update.
3166         * inferior.h: Update.
3167         * inflow.c: Update.
3168         * infrun.c: Update.
3169         * linux-fork.c: Update.
3170         * linux-nat.c: Update.
3171         * linux-tdep.c: Update.
3172         * linux-thread-db.c: Update.
3173         * m68k-bsd-nat.c: Update.
3174         * mi/mi-interp.c: Update.
3175         * mi/mi-main.c: Update.
3176         * mips-linux-nat.c: Update.
3177         * mips-nbsd-nat.c: Update.
3178         * mips64-obsd-nat.c: Update.
3179         * nat/aarch64-linux-hw-point.c: Update.
3180         * nat/aarch64-linux.c: Update.
3181         * nat/linux-btrace.c: Update.
3182         * nat/linux-osdata.c: Update.
3183         * nat/linux-procfs.c: Update.
3184         * nat/x86-linux-dregs.c: Update.
3185         * nto-procfs.c: Update.
3186         * obsd-nat.c: Update.
3187         * ppc-linux-nat.c: Update.
3188         * ppc-nbsd-nat.c: Update.
3189         * ppc-obsd-nat.c: Update.
3190         * proc-service.c: Update.
3191         * procfs.c: Update.
3192         * python/py-inferior.c: Update.
3193         * python/py-infthread.c: Update.
3194         * ravenscar-thread.c: Update.
3195         * record.c: Update.
3196         * remote-sim.c: Update.
3197         * remote.c: Update.
3198         * rs6000-nat.c: Update.
3199         * s390-linux-nat.c: Update.
3200         * sh-nbsd-nat.c: Update.
3201         * sol-thread.c: Update.
3202         * sparc-nat.c: Update.
3203         * sparc64-tdep.c: Update.
3204         * spu-linux-nat.c: Update.
3205         * spu-tdep.c: Update.
3206         * target-debug.h: Update.
3207         * target.c: Update.
3208         * thread.c: Update.
3209         * tid-parse.c: Update.
3210         * tracefile-tfile.c: Update.
3211         * vax-bsd-nat.c: Update.
3212         * windows-nat.c: Update.
3213         * x86-linux-nat.c: Update.
3214         * x86-nat.c: Update.
3215
3216 2018-07-03  Tom Tromey  <tom@tromey.com>
3217
3218         * common/ptid.c (pid_to_ptid): Remove.
3219         * common/ptid.h (pid_to_ptid): Don't declare.
3220         * aix-thread.c: Update.
3221         * arm-linux-nat.c: Update.
3222         * common/ptid.c: Update.
3223         * common/ptid.h: Update.
3224         * corelow.c: Update.
3225         * ctf.c: Update.
3226         * darwin-nat.c: Update.
3227         * fbsd-nat.c: Update.
3228         * fork-child.c: Update.
3229         * gnu-nat.c: Update.
3230         * go32-nat.c: Update.
3231         * inf-ptrace.c: Update.
3232         * infcmd.c: Update.
3233         * inferior.c: Update.
3234         * infrun.c: Update.
3235         * linux-fork.c: Update.
3236         * linux-nat.c: Update.
3237         * nat/aarch64-linux-hw-point.c: Update.
3238         * nat/fork-inferior.c: Update.
3239         * nat/x86-linux-dregs.c: Update.
3240         * nto-procfs.c: Update.
3241         * obsd-nat.c: Update.
3242         * procfs.c: Update.
3243         * progspace.c: Update.
3244         * remote.c: Update.
3245         * rs6000-nat.c: Update.
3246         * s390-linux-nat.c: Update.
3247         * sol-thread.c: Update.
3248         * spu-linux-nat.c: Update.
3249         * target.c: Update.
3250         * top.c: Update.
3251         * tracefile-tfile.c: Update.
3252         * windows-nat.c: Update.
3253
3254 2018-07-03  Tom Tromey  <tom@tromey.com>
3255
3256         * common/ptid.h (ptid_build): Don't declare.
3257         * common/ptid.c (ptid_build): Remove.
3258         * aix-thread.c: Update.
3259         * bsd-kvm.c: Update.
3260         * bsd-uthread.c: Update.
3261         * common/agent.c: Update.
3262         * common/ptid.c: Update.
3263         * common/ptid.h: Update.
3264         * corelow.c: Update.
3265         * darwin-nat.c: Update.
3266         * fbsd-nat.c: Update.
3267         * gnu-nat.c: Update.
3268         * linux-fork.c: Update.
3269         * linux-nat.c: Update.
3270         * linux-thread-db.c: Update.
3271         * nat/linux-osdata.c: Update.
3272         * nat/linux-procfs.c: Update.
3273         * nto-procfs.c: Update.
3274         * obsd-nat.c: Update.
3275         * proc-service.c: Update.
3276         * procfs.c: Update.
3277         * ravenscar-thread.c: Update.
3278         * remote-sim.c: Update.
3279         * remote.c: Update.
3280         * sol-thread.c: Update.
3281         * target.c: Update.
3282         * windows-nat.c: Update.
3283
3284 2018-07-03  Tom Tromey  <tom@tromey.com>
3285
3286         * infrun.c (follow_exec): Use exit_inferior_silent.
3287         * inferior.c (exit_inferior_num_silent): Remove.
3288         * inferior.h (exit_inferior_num_silent): Don't declare.
3289
3290 2018-07-03  Tom Tromey  <tom@tromey.com>
3291
3292         PR cli/23340:
3293         * darwin-nat.c (darwin_attach_pid): Reset inferior and
3294         inferior_ptid on error.
3295
3296 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
3297             Simon Marchi  <simon.marchi@polymtl.ca>
3298
3299         PR tdep/8282
3300         * disasm.h (gdb_disassembler): Add
3301         `m_disassembler_options_holder'. member
3302         * disasm.c (get_all_disassembler_options): New function.
3303         (gdb_disassembler::gdb_disassembler): Use it.
3304         (gdb_buffered_insn_length_init_dis): Likewise.
3305         (gdb_buffered_insn_length): Adjust accordingly.
3306         (set_disassembler_options): Handle options with arguments.
3307         (show_disassembler_options_sfunc): Likewise.  Add a leading new
3308         line if showing options with descriptions.
3309         (disassembler_options_completer): Adapt to using the
3310         `disasm_options_and_args_t' structure.
3311         * mips-tdep.c (mips_disassembler_options): New variable.
3312         (mips_disassembler_options_o32): Likewise.
3313         (mips_disassembler_options_n32): Likewise.
3314         (mips_disassembler_options_n64): Likewise.
3315         (gdb_print_insn_mips): Don't set `disassembler_options'.
3316         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
3317         functions.
3318         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
3319         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
3320         `gdbarch_disassembler_options_implicit' and
3321         `gdbarch_valid_disassembler_options'.
3322         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
3323         `disasm_options_and_args_t' structure.
3324         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
3325         method.
3326         (valid_disassembler_options): Switch from `disasm_options_t' to
3327         the `disasm_options_and_args_t' structure.
3328         * NEWS: Document `set disassembler-options' support for the MIPS
3329         target.
3330         * gdbarch.h: Regenerate.
3331         * gdbarch.c: Regenerate.
3332
3333 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
3334
3335         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
3336
3337 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
3338
3339         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
3340         parameter in call to amd64_target_description.
3341         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
3342         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
3343         (amd64fbsd_init_abi): Likewise.
3344         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
3345         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
3346         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
3347         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
3348
3349 2018-06-29  Pedro Alves  <palves@redhat.com>
3350
3351         * gdb/amd64-tdep.h (amd64_create_target_description): Add
3352         "segments" parameter.
3353         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
3354         (_initialize_amd64_tdep): Update call to
3355         amd64_create_target_description.
3356         (amd64_target_description): Add "segments" parameter.  Adjust
3357         the implementation to use it.
3358         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
3359         call to amd64_create_target_description.
3360         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
3361         * gdb/arch/amd64.h (amd64_create_target_description): Add
3362         "segments" register.
3363         * gdb/arch/amd64.c (amd64_create_target_description): Add
3364         "segments" parameter.  Call create_feature_i386_64bit_segments
3365         only if SEGMENTS is true.
3366         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
3367         call to amd64_create_target_description.
3368
3369 2018-06-29  Pedro Alves  <palves@redhat.com>
3370
3371         * thread.c (thread_target_id_str): New, factored out from ...
3372         (print_thread_info_1): ... here.  Use it to compute the max
3373         "Target Id" column width.
3374
3375 2018-06-29  Pedro Alves  <palves@redhat.com>
3376
3377         * remote.c (remote_target::extra_thread_info): Delete
3378         'display_buf' and 'n' locals.  from the cache, regardless of
3379         packet mechanims is in use.  Use cache for qThreadExtra and qP
3380         methods too.
3381
3382 2018-06-29  Pedro Alves  <palves@redhat.com>
3383
3384         * blockframe.c (find_pc_sect_containing_function): New function.
3385         * breakpoint.c (print_breakpoint_location): Don't call
3386         find_pc_sect_function.
3387         * linespec.c (create_sals_line_offset): Record the location's
3388         symbol in the sal.
3389         * linespec.c (convert_address_location_to_sals): Fill in sal's
3390         symbol with find_pc_sect_containing_function.
3391         * symtab.c (find_function_start_sal): Rename to ...
3392         (find_function_start_sal_1): ... this.
3393         (find_function_start_sal): Reimplement as wrapper around
3394         find_function_start_sal_1, and use
3395         find_pc_sect_containing_function to fill in the sal's symbol.
3396         (find_function_start_sal(symbol*, bool)): Adjust.
3397         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
3398         comments.
3399         (find_pc_sect_containing_function): Declare.
3400
3401 2018-06-29  Pedro Alves  <palves@redhat.com>
3402
3403         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
3404         true if the the location has no symbol.
3405
3406 2018-06-28  Tom Tromey  <tom@tromey.com>
3407
3408         * NEWS: Mention --enable-codesign.
3409         * silent-rules.mk (ECHO_SIGN): New variable.
3410         * configure.ac: Add --enable-codesign.
3411         * configure: Rebuild.
3412         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
3413         (gdb$(EXEEXT)): Optionally invoke codesign.
3414
3415 2018-06-28  Pedro Alves  <palves@redhat.com>
3416
3417         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
3418         comments.
3419         (switch_to_thread_no_regs): Adjust comment.
3420         * infcmd.c (stop_pc): Delete.
3421         (post_create_inferior, info_program_command): Replace references
3422         to stop_pc with references to thread_info->suspend.stop_pc.
3423         * inferior.h (stop_pc): Delete declaration.
3424         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
3425         (handle_inferior_event_1, handle_signal_stop)
3426         (process_event_stop_test, keep_going_stepped_thread)
3427         (handle_step_into_function, handle_step_into_function_backward)
3428         (print_stop_location): Replace references to stop_pc with
3429         references to thread_info->suspend.stop_pc.
3430         (struct infcall_suspend_state) <stop_pc>: Delete field.
3431         (save_infcall_suspend_state, restore_infcall_suspend_state):
3432         Remove references to inf_stat->stop_pc.
3433         * linux-fork.c (fork_load_infrun_state): Likewise.
3434         * record-btrace.c (record_btrace_set_replay): Likewise.
3435         * record-full.c (record_full_goto_entry): Likewise.
3436         * remote.c (print_one_stopped_thread): Likewise.
3437         * target.c (target_resume): Extend comment.
3438         * thread.c (set_executing_thread): New.
3439         (set_executing): Use it.
3440         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
3441         Remove references to stop_pc.
3442
3443 2018-06-28  Pedro Alves  <palves@redhat.com>
3444
3445         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
3446         Moving fetching stop_pc until after ecs->event_thread is refreshed.
3447
3448 2018-06-28  Tom Tromey  <tom@tromey.com>
3449
3450         * coffread.c (coff_symfile_finish): Update.
3451         * xcoffread.c (xcoff_symfile_finish): Update.
3452         * elfread.c (elf_symfile_finish): Update.
3453         * symfile.h (dwarf2_free_objfile): Don't declare.
3454         * dwarf2read.c (_initialize_dwarf2_read): Use
3455         register_objfile_data_with_cleanup.
3456         (dwarf2_free_objfile): Now static.  Change signature.
3457
3458 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
3459
3460         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
3461         option "-o" to add-symbol-file-load to add an offset to each
3462         section's load address.
3463         * symfile.c (set_objfile_default_section_offset): New function.
3464
3465 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
3466
3467         * symfile.c (add_symbol_file_command): Make sure that sections
3468         with the same name are sorted in the same order.
3469
3470 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
3471
3472         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
3473         require the second argument.  If omitted, load sections at the
3474         addresses specified in the file.
3475
3476 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
3477
3478         * symfile.c (symbol_file_command, symbol_file_add_main_1)
3479         (_initialize_symfile): Add option "-o" to symbol-file to add an
3480         offset to each section of the symbol file.
3481
3482 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
3483
3484         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
3485
3486 2018-06-27  Tom Tromey  <tom@tromey.com>
3487
3488         * stack.c (_initialize_stack): Update "func" help text.
3489
3490 2018-06-27  Tom Tromey  <tom@tromey.com>
3491
3492         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
3493         std::vector.
3494         (unwind_infopy_str, pyuw_create_unwind_info)
3495         (unwind_infopy_add_saved_register, pyuw_sniffer)
3496         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
3497         Update.
3498         (struct saved_reg): Add constructor.
3499         <value>: Now a gdbpy_ref<>.
3500
3501 2018-06-27  Tom Tromey  <tom@tromey.com>
3502
3503         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
3504
3505 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
3506
3507         * gdb-gdb.py.in: Format using autopep8.
3508
3509 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
3510
3511         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
3512         (type_lookup_function): Recognize CORE_ADDR values.
3513
3514 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
3515
3516         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
3517         print tag_name.
3518
3519 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
3520
3521         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
3522         <__lt__>: Add.
3523
3524 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
3525
3526         * gdb-gdb.py: Move to...
3527         * gdb-gdb.py.in: ... here.
3528         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
3529         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
3530         dependencies.
3531         (distclean): Remove gdb-gdb.py when cleaning.
3532         (gdb-gdb.py, gdb-gdb.gdb): New rules.
3533         * configure: Re-generate.
3534
3535 2018-06-27  Pedro Alves  <palves@redhat.com>
3536
3537         * proc-service.c (get_ps_regcache): New.
3538         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
3539         (ps_lsetfpregs): Use it.
3540
3541 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
3542
3543         PR gdb/21695
3544         * dwarf2read.c (lnp_state_machine::check_line_address): Update declaration.
3545         (dwarf_decode_lines_1): Adjust.
3546
3547 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
3548
3549         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
3550         override.
3551         <info_proc>: Likewise.
3552
3553 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
3554
3555         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
3556         to windows_fetch_one_register, and only handle the case of
3557         fetching one register.  Move the code that reloads the context
3558         and iterates over all registers if R is negative to...
3559         (windows_nat_target::fetch_registers): ... here.
3560         (do_windows_store_inferior_registers): Rename to
3561         windows_store_one_register, and only handle the case of storing
3562         one register.  Move the code that handles the case where r is
3563         negative to...
3564         (windows_nat_target::store_registers) ... here.
3565
3566 2018-06-26  Tom Tromey  <tom@tromey.com>
3567
3568         PR rust/22574:
3569         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
3570         * rust-lang.c (rust_print_struct_def): Add podata parameter.
3571         Update.
3572         (rust_internal_print_type): Add podata parameter.
3573         (rust_print_type): Update.
3574
3575 2018-06-26  Tom Tromey  <tom@tromey.com>
3576
3577         * typeprint.h (struct print_offset_data) <update, finish,
3578         maybe_print_hole>: New methods.
3579         <indentation>: New constant.
3580         * typeprint.c (print_offset_data::indentation): Define.
3581         (print_offset_data::maybe_print_hole, print_offset_data::update)
3582         (print_offset_data::finish): Move from c-typeprint.c and rename.
3583         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
3584         (print_spaces_filtered_with_print_options): Update.
3585         (c_print_type_union_field_offset, maybe_print_hole)
3586         (c_print_type_struct_field_offset): Move to typeprint.c and
3587         rename.
3588         (c_type_print_base_struct_union): Update.
3589
3590 2018-06-25  Pedro Alves  <palves@redhat.com>
3591
3592         * gdbthread.h (thread_info_ref, delete_thread)
3593         (delete_thread_silent, first_thread_of_inferior)
3594         (any_thread_of_inferior, switch_to_thread)
3595         (enable_thread_stack_temporaries)
3596         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
3597         (get_last_thread_stack_temporary)
3598         (value_in_thread_stack_temporaries, can_access_registers_thread):
3599         Spell out "struct thread_info" instead of just "thread_info".
3600         * inferior.h (notice_new_inferior): Likewise.
3601
3602 2018-06-25  Pedro Alves  <palves@redhat.com>
3603
3604         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
3605         pass thread_info pointer to delete_thread.
3606         (windows_nat_target::detach): Pass inferior pointer to
3607         detach_inferior.
3608         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
3609         delete_thread.
3610         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
3611         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
3612         and pass a thread_info pointer to delete_thread.
3613         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
3614         pass thread_info pointer to delete_thread.
3615         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
3616         delete_thread_silent call.
3617         * procfs.c (procfs_target::detach): Pass inferior pointer to
3618         detach_inferior.
3619         (procfs_target::wait): Pass thread_info pointer to delete_thread.
3620         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
3621         delete_thread_silent call.
3622         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
3623         pass thread_info pointer to delete_thread.
3624         (windows_nat_target::detach): Pass inferior pointer to
3625         delete_inferior.
3626
3627 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
3628
3629         * regcache.c (readable_regcache::read_part): Fix asserts.
3630         (reg_buffer::raw_collect_part): New function.
3631         (regcache::write_part): Fix asserts.
3632         (reg_buffer::raw_supply_part): New function.
3633         (regcache::transfer_regset_register): New helper function.
3634         (regcache::transfer_regset): Call new functions.
3635         (regcache_supply_regset): Use gdb_byte*.
3636         (regcache::supply_regset): Likewise.
3637         (regcache_collect_regset): Likewise.
3638         (regcache::collect_regset): Likewise.
3639         * regcache.h (reg_buffer::raw_collect_part): New declaration.
3640         (reg_buffer::raw_supply_part): Likewise.
3641         (regcache::transfer_regset_register): Likewise.
3642         (regcache::transfer_regset): Use gdb_byte*.
3643
3644 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
3645
3646         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
3647
3648 2018-06-21  Pedro Alves  <palves@redhat.com>
3649
3650         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
3651         instead of a ptid_t.  All callers adjusted.
3652         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
3653         adjusted.
3654         (print_ada_task_info, display_current_task_id, task_command_1):
3655         Adjust.
3656         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
3657         inferior_thread.
3658         (breakpoint_kind): Adjust.
3659         (remove_breakpoints_pid): Rename to ...
3660         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
3661         pointer.  All callers adjusted.
3662         (bpstat_clear_actions): Use inferior_thread.
3663         (get_bpstat_thread): New.
3664         (bpstat_do_actions): Use it.
3665         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
3666         to take a thread_info pointer.  All callers adjusted.
3667         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
3668         (breakpoint_re_set_thread): Use inferior_thread.
3669         * breakpoint.h (struct inferior): Forward declare.
3670         (bpstat_stop_status): Update.
3671         (remove_breakpoints_pid): Delete.
3672         (remove_breakpoints_inf): New.
3673         * bsd-uthread.c (bsd_uthread_target::wait)
3674         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
3675         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
3676         (maint_btrace_packet_history_cmd)
3677         (maint_btrace_clear_packet_history_cmd): Adjust.
3678         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
3679         inferior_thread.
3680         * cli/cli-interp.c: Include "inferior.h".
3681         * common/refcounted-object.h (struct
3682         refcounted_object_ref_policy): New.
3683         * compile/compile-object-load.c: Include gdbthread.h.
3684         (store_regs): Use inferior_thread.
3685         * corelow.c (core_target::close): Use current_inferior.
3686         (core_target_open): Adjust to use first_thread_of_inferior and use
3687         the current inferior.
3688         * ctf.c (ctf_target::close): Adjust to use current_inferior.
3689         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
3690         <thread>: ... this new field.  All references adjusted.
3691         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
3692         Take a thread_info pointer instead of a ptid_t.
3693         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
3694         (dummy_frame_discard, register_dummy_frame_dtor): Take a
3695         thread_info pointer instead of a ptid_t.
3696         * elfread.c: Include "inferior.h".
3697         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
3698         Use inferior_thread.
3699         * eval.c (evaluate_subexp): Likewise.
3700         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
3701         inferior_thread.
3702         * gdb_proc_service.h (struct thread_info): Forward declare.
3703         (struct ps_prochandle) <ptid>: Delete, replaced by ...
3704         <thread>: ... this new field.  All references adjusted.
3705         * gdbarch.h, gdbarch.c: Regenerate.
3706         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
3707         'thread' parameter.  All implementations and callers adjusted.
3708         * gdbthread.h (thread_info) <set_running>: New method.
3709         (delete_thread, delete_thread_silent): Take a thread_info pointer
3710         instead of a ptid.
3711         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
3712         (first_thread_of_process): Delete, replaced by ...
3713         (first_thread_of_inferior): ... this new function.  All callers
3714         adjusted.
3715         (any_live_thread_of_process): Delete, replaced by ...
3716         (any_live_thread_of_inferior): ... this new function.  All callers
3717         adjusted.
3718         (switch_to_thread, switch_to_no_thread): Declare.
3719         (is_executing): Delete.
3720         (enable_thread_stack_temporaries): Update comment.
3721         <enable_thread_stack_temporaries>: Take a thread_info pointer
3722         instead of a ptid_t.  Incref the thread.
3723         <~enable_thread_stack_temporaries>: Decref the thread.
3724         <m_ptid>: Delete
3725         <m_thr>: New.
3726         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
3727         (get_last_thread_stack_temporary)
3728         (value_in_thread_stack_temporaries, can_access_registers_thread):
3729         Take a thread_info pointer instead of a ptid_t.  All callers
3730         adjusted.
3731         * infcall.c (get_call_return_value): Use inferior_thread.
3732         (run_inferior_call): Work with thread pointers instead of ptid_t.
3733         (call_function_by_hand_dummy): Work with thread pointers instead
3734         of ptid_t.  Use thread_info_ref.
3735         * infcmd.c (proceed_thread_callback): Access thread's state
3736         directly.
3737         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
3738         access thread's state directly.
3739         (continue_command): Use inferior_thread.
3740         (info_program_command): Use find_thread_ptid and access thread
3741         state directly.
3742         (proceed_after_attach_callback): Use thread state directly.
3743         (notice_new_inferior): Take a thread_info pointer instead of a
3744         ptid_t.  All callers adjusted.
3745         (exit_inferior): Take an inferior pointer instead of a pid.  All
3746         callers adjusted.
3747         (exit_inferior_silent): New.
3748         (detach_inferior): Delete.
3749         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
3750         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
3751         (detach_inferior_command, kill_inferior_command): Use
3752         find_inferior_id instead of valid_gdb_inferior_id and
3753         gdb_inferior_id_to_pid.
3754         (inferior_command): Use inferior and thread pointers.
3755         * inferior.h (struct thread_info): Forward declare.
3756         (notice_new_inferior): Take a thread_info pointer instead of a
3757         ptid_t.  All callers adjusted.
3758         (detach_inferior): Delete declaration.
3759         (exit_inferior, exit_inferior_silent): Take an inferior pointer
3760         instead of a pid.  All callers adjusted.
3761         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
3762         (valid_gdb_inferior_id): Delete.
3763         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
3764         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
3765         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
3766         ...
3767         <inf>: ... this new field.
3768         <step_ptid>: Delete, replaced by ...
3769         <step_thread>: ... this new field.
3770         (get_displaced_stepping_state): Take an inferior pointer instead
3771         of a pid.  All callers adjusted.
3772         (displaced_step_in_progress_any_inferior): Adjust.
3773         (displaced_step_in_progress_thread): Take a thread pointer instead
3774         of a ptid_t.  All callers adjusted.
3775         (displaced_step_in_progress, add_displaced_stepping_state): Take
3776         an inferior pointer instead of a pid.  All callers adjusted.
3777         (get_displaced_step_closure_by_addr): Adjust.
3778         (remove_displaced_stepping_state): Take an inferior pointer
3779         instead of a pid.  All callers adjusted.
3780         (displaced_step_prepare_throw, displaced_step_prepare)
3781         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
3782         All callers adjusted.
3783         (start_step_over): Adjust.
3784         (infrun_thread_ptid_changed): Remove bit updating ptids in the
3785         displaced step queue.
3786         (do_target_resume): Adjust.
3787         (fetch_inferior_event): Use inferior_thread.
3788         (context_switch, get_inferior_stop_soon): Take an
3789         execution_control_state pointer instead of a ptid_t.  All callers
3790         adjusted.
3791         (switch_to_thread_cleanup): Delete.
3792         (stop_all_threads): Use scoped_restore_current_thread.
3793         * inline-frame.c: Include "gdbthread.h".
3794         (inline_state) <inline_state>: Take a thread pointer instead of a
3795         ptid_t.  All callers adjusted.
3796         <ptid>: Delete, replaced by ...
3797         <thread>: ... this new field.
3798         (find_inline_frame_state): Take a thread pointer instead of a
3799         ptid_t.  All callers adjusted.
3800         (skip_inline_frames, step_into_inline_frame)
3801         (inline_skipped_frames, inline_skipped_symbol): Take a thread
3802         pointer instead of a ptid_t.  All callers adjusted.
3803         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
3804         (inline_skipped_frames, inline_skipped_symbol): Likewise.
3805         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
3806         pointers directly.
3807         * linux-nat.c (get_detach_signal): Likewise.
3808         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
3809         (thread_db_notice_clone): Adjust.
3810         (thread_db_find_new_threads_silently)
3811         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
3812         a thread pointer instead of a ptid_t.  All callers adjusted.
3813         * mi/mi-cmd-var.c: Include "inferior.h".
3814         (mi_cmd_var_update_iter): Update to use thread pointers.
3815         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
3816         inferior directly.
3817         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
3818         out to ...
3819         (mi_output_running): ... this new function.
3820         (mi_on_resume_1): Adjust to use it.
3821         (mi_user_selected_context_changed): Adjust to use inferior_thread.
3822         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
3823         directly.
3824         (interrupt_thread_callback): : Adjust to use thread and inferior
3825         pointers.
3826         * proc-service.c: Include "gdbthread.h".
3827         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
3828         * progspace-and-thread.c: Include "inferior.h".
3829         * progspace.c: Include "inferior.h".
3830         * python/py-exitedevent.c (create_exited_event_object): Adjust to
3831         hold a reference to an inferior_object.
3832         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
3833         inferior_thread.
3834         * python/py-inferior.c (struct inferior_object): Give the type a
3835         tag name instead of a typedef.
3836         (python_on_normal_stop): No need to check if the current thread is
3837         listed.
3838         (inferior_to_inferior_object): Change return type to
3839         inferior_object.  All callers adjusted.
3840         (find_thread_object): Delete, bits factored out to ...
3841         (thread_to_thread_object): ... this new function.
3842         * python/py-infthread.c (create_thread_object): Use
3843         inferior_to_inferior_object.
3844         (thpy_is_stopped): Use thread pointer directly.
3845         (gdbpy_selected_thread): Use inferior_thread.
3846         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
3847         field, replaced with ...
3848         <thread>: ... this new field.  All users adjusted.
3849         (btpy_insn_or_gap_new): Drop const.
3850         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
3851         callers adjusted.
3852         * python/py-record.c: Include "gdbthread.h".
3853         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
3854         a ptid_t.  All callers adjusted.
3855         (gdbpy_current_recording): Use inferior_thread.
3856         * python/py-record.h (recpy_record_object) <ptid>: Delete
3857         field, replaced with ...
3858         <thread>: ... this new field.  All users adjusted.
3859         (recpy_element_object) <ptid>: Delete
3860         field, replaced with ...
3861         <thread>: ... this new field.  All users adjusted.
3862         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
3863         a ptid_t.  All callers adjusted.
3864         * python/py-threadevent.c: Include "gdbthread.h".
3865         (get_event_thread): Use thread_to_thread_object.
3866         * python/python-internal.h (struct inferior_object): Forward
3867         declare.
3868         (find_thread_object, find_inferior_object): Delete declarations.
3869         (thread_to_thread_object, inferior_to_inferior_object): New
3870         declarations.
3871         * record-btrace.c: Include "inferior.h".
3872         (require_btrace_thread): Use inferior_thread.
3873         (record_btrace_frame_sniffer)
3874         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
3875         (get_thread_current_frame): Use scoped_restore_current_thread and
3876         switch_to_thread.
3877         (get_thread_current_frame): Use thread pointer directly.
3878         (record_btrace_replay_at_breakpoint): Use thread's inferior
3879         pointer directly.
3880         * record-full.c: Include "inferior.h".
3881         * regcache.c: Include "gdbthread.h".
3882         (get_thread_arch_regcache): Use the inferior's address space
3883         directly.
3884         (get_thread_regcache, registers_changed_thread): New.
3885         * regcache.h (get_thread_regcache(thread_info *thread)): New
3886         overload.
3887         (registers_changed_thread): New.
3888         (remote_target) <remote_detach_1>: Swap order of parameters.
3889         (remote_add_thread): <remote_add_thread>: Return the new thread.
3890         (get_remote_thread_info(ptid_t)): New overload.
3891         (remote_target::remote_notice_new_inferior): Use thread pointers
3892         directly.
3893         (remote_target::process_initial_stop_replies): Use
3894         thread_info::set_running.
3895         (remote_target::remote_detach_1, remote_target::detach)
3896         (extended_remote_target::detach): Adjust.
3897         * stack.c (frame_show_address): Use inferior_thread.
3898         * target-debug.h (target_debug_print_thread_info_pp): New.
3899         * target-delegates.c: Regenerate.
3900         * target.c (default_thread_address_space): Delete.
3901         (memory_xfer_partial_1): Use current_inferior.
3902         (target_detach): Use current_inferior.
3903         (target_thread_address_space): Delete.
3904         (generic_mourn_inferior): Use current_inferior.
3905         * target.h (struct target_ops) <thread_address_space>: Delete.
3906         (target_thread_address_space): Delete.
3907         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
3908         pointers directly.
3909         (delete_thread_1, delete_thread, delete_thread_silent): Take a
3910         thread pointer instead of a ptid_t.  Adjust all callers.
3911         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
3912         (first_thread_of_process): Delete, replaced by ...
3913         (first_thread_of_inferior): ... this new function.  All callers
3914         adjusted.
3915         (any_thread_of_process): Rename to ...
3916         (any_thread_of_inferior): ... this, and take an inferior pointer.
3917         (any_live_thread_of_process): Rename to ...
3918         (any_live_thread_of_inferior): ... this, and take an inferior
3919         pointer.
3920         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
3921         (value_in_thread_stack_temporaries)
3922         (get_last_thread_stack_temporary): Take a thread pointer instead
3923         of a ptid_t.  Adjust all callers.
3924         (thread_info::set_running): New.
3925         (validate_registers_access): Use inferior_thread.
3926         (can_access_registers_ptid): Rename to ...
3927         (can_access_registers_thread): ... this, and take a thread
3928         pointer.
3929         (print_thread_info_1): Adjust to compare thread pointers instead
3930         of ptids.
3931         (switch_to_no_thread, switch_to_thread): Make extern.
3932         (scoped_restore_current_thread::~scoped_restore_current_thread):
3933         Use m_thread pointer directly.
3934         (scoped_restore_current_thread::scoped_restore_current_thread):
3935         Use inferior_thread.
3936         (thread_command): Use thread pointer directly.
3937         (thread_num_make_value_helper): Use inferior_thread.
3938         * top.c (execute_command): Use inferior_thread.
3939         * tui/tui-interp.c: Include "inferior.h".
3940         * varobj.c (varobj_create): Use inferior_thread.
3941         (value_of_root_1): Use find_thread_global_id instead of
3942         global_thread_id_to_ptid.
3943
3944 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
3945
3946         * regcache.c (readable_regcache::read_part): Avoid memcpy when
3947         possible.
3948         (regcache::write_part): Likewise.
3949         (readable_regcache::cooked_read_part): Update comment.
3950         (readable_regcache::cooked_write_part): Likewise.
3951         * regcache.h: (readable_regcache::read_part): Likewise.
3952         (regcache::write_part): Likewise.
3953
3954 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
3955             Dirk Schubert  <dirk.schubert@arm.com>
3956
3957         * aarch64-linux-nat.c (post_attach): New.
3958         (aarch64_linux_nat_target::post_attach): Override post_attach to
3959         record the number of hardware debug registers.
3960
3961 2018-06-20  Tom Tromey  <tom@tromey.com>
3962
3963         * python/py-param.c (add_setshow_generic): Make parameters const.
3964         (parmpy_init): Update.
3965
3966 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
3967
3968         * regcache.h (regcache_cooked_read_ftype): Rename to...
3969         (register_read_ftype): ...this, change type to function_view.
3970         (class reg_buffer) <save>: Remove src parameter.
3971         (readonly_detached_regcache) <readonly_detached_regcache>: Make
3972         parameter non-const in first overload.  Remove src parameter in
3973         second overload.
3974         * regcache.c (do_cooked_read): Remove.
3975         (readonly_detached_regcache::readonly_detached_regcache): Make
3976         parameter non-const, adjust call to other constructor.
3977         (reg_buffer::save): Remove src parameter.
3978         * frame.c (do_frame_register_read): Remove.
3979         (frame_save_as_regcache): Use lambda function.
3980         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
3981         parameter to ppu2spu_data *.
3982         (ppu2spu_sniffer): Use lambda function.
3983
3984 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
3985
3986         * record-full.c (record_full_target::insert_breakpoint): Remove
3987         "struct" keyword, add const.
3988
3989 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
3990
3991         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
3992         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
3993         * configure.ac: Remove AC_PREREQ, add missing quoting.
3994         * gnulib/configure.ac: Modernize usage of
3995         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
3996         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
3997         (AUTOMAKE_VERSION): Bump to 1.15.1.
3998         * configure: Re-generate.
3999         * config.in: Re-generate.
4000         * aclocal.m4: Re-generate.
4001         * gnulib/aclocal.m4: Re-generate.
4002         * gnulib/config.in: Re-generate.
4003         * gnulib/configure: Re-generate.
4004         * gnulib/import/Makefile.in: Re-generate.
4005
4006 2018-06-19  Pedro Alves  <palves@redhat.com>
4007
4008         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
4009         (lookup_minimal_symbol_by_pc_section): ... here with
4010         gdb_assert_not_reached added.
4011
4012 2018-06-19  Pedro Alves  <palves@redhat.com>
4013
4014         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
4015         parameter with a block parameter.  Compare location's block symbol
4016         with the frame's block instead of addresses.
4017         (skip_inline_frames): Pass the current block instead of the
4018         frame's address.  Break out as soon as we determine the frame
4019         should not be skipped.
4020
4021 2018-06-18  Tom Tromey  <tom@tromey.com>
4022
4023         * solib-aix.c (solib_aix_get_section_offsets): Return
4024         unique_xmalloc_ptr.
4025         (solib_aix_solib_create_inferior_hook): Update.
4026
4027 2018-06-18  Tom Tromey  <tom@tromey.com>
4028
4029         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
4030
4031 2018-06-18  Tom Tromey  <tom@tromey.com>
4032
4033         * solib-frv.c (frv_relocate_main_executable): Use
4034         unique_xmalloc_ptr.
4035         * solib-dsbt.c (dsbt_relocate_main_executable): Use
4036         unique_xmalloc_ptr.
4037
4038 2018-06-18  Tom Tromey  <tom@tromey.com>
4039
4040         * objfiles.h (inhibit_section_map_updates): Update.
4041         (resume_section_map_updates, resume_section_map_updates_cleanup):
4042         Remove.
4043         * solib-svr4.c (svr4_handle_solib_event): Update.
4044         * objfiles.c (inhibit_section_map_updates): Return
4045         scoped_restore_tmpl<int>.
4046         (resume_section_map_updates, resume_section_map_updates_cleanup):
4047         Remove.
4048
4049 2018-06-18  Tom Tromey  <tom@tromey.com>
4050
4051         * valprint.h (read_string): Update.
4052         * valprint.c (read_string): Change type of "buffer".
4053         (val_print_string): Update.
4054         * python/py-value.c (valpy_string): Update.
4055         * language.h (struct language_defn) <la_get_string>: Change
4056         type of "buffer".
4057         (default_get_string, c_get_string): Update.
4058         * language.c (default_get_string): Change type of "buffer".
4059         * guile/scm-value.c (gdbscm_value_to_string): Update.
4060         * c-lang.c (c_get_string): Change type of "buffer".
4061
4062 2018-06-18  Tom Tromey  <tom@tromey.com>
4063
4064         * ser-mingw.c (struct pipe_state_destroyer): New.
4065         (pipe_state_up): New typedef.
4066         (cleanup_pipe_state): Remove.
4067         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
4068
4069 2018-06-18  Tom Tromey  <tom@tromey.com>
4070
4071         * rust-lang.h (rust_yyerror): Don't declare.
4072         * rust-lang.c (rust_language_defn): Update.
4073         * rust-exp.y (yyerror): Now static.
4074         * parse.c (parse_exp_in_context_1): Update.
4075         * p-lang.h (p_yyerror): Don't declare.
4076         * p-lang.c (p_language_defn): Update.
4077         * p-exp.y (yyerror): Now static.
4078         * opencl-lang.c (opencl_language_defn): Update.
4079         * objc-lang.c (objc_language_defn): Update.
4080         * m2-lang.h (m2_yyerror): Don't declare.
4081         * m2-lang.c (m2_language_defn): Update.
4082         * m2-exp.y (yyerror): Now static.
4083         * language.h (struct language_defn) <la_error>: Remove.
4084         * language.c (unk_lang_error): Remove.
4085         (unknown_language_defn, auto_language_defn): Remove.
4086         * go-lang.h (go_yyerror): Don't declare.
4087         * go-lang.c (go_language_defn): Update.
4088         * go-exp.y (yyerror): Now static.
4089         * f-lang.h (f_yyerror): Don't declare.
4090         * f-lang.c (f_language_defn): Update.
4091         * f-exp.y (yyerror): Now static.
4092         * d-lang.h (d_yyerror): Don't declare.
4093         * d-lang.c (d_language_defn): Update.
4094         * d-exp.y (yyerror): Now static.
4095         * c-lang.h (c_yyerror): Don't declare.
4096         * c-lang.c (c_language_defn, cplus_language_defn)
4097         (asm_language_defn, minimal_language_defn): Update.
4098         * c-exp.y (yyerror): Now static.
4099         * ada-lang.h (ada_yyerror): Don't declare.
4100         * ada-lang.c (ada_language_defn): Update.
4101         * ada-exp.y (yyerror): Now static.
4102
4103 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
4104
4105         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
4106         (store_sveregs_to_thread): Likewise.
4107         (aarch64_linux_fetch_inferior_registers): Check for SVE.
4108         (aarch64_linux_store_inferior_registers): Likewise.
4109         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
4110         function.
4111         (aarch64_sve_regs_copy_to_regcache): Likewise.
4112         (aarch64_sve_regs_copy_from_regcache): Likewise.
4113         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
4114         declaration.
4115         (aarch64_sve_regs_copy_to_regcache): Likewise.
4116         (aarch64_sve_regs_copy_from_regcache): Likewise.
4117         (sve_context): Structure from Linux headers.
4118         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
4119         (SVE_SIG_ZREG_SIZE): Likewise.
4120         (SVE_SIG_PREG_SIZE): Likewise.
4121         (SVE_SIG_FFR_SIZE): Likewise.
4122         (SVE_SIG_REGS_OFFSET): Likewise.
4123         (SVE_SIG_ZREGS_OFFSET): Likewise.
4124         (SVE_SIG_ZREG_OFFSET): Likewise.
4125         (SVE_SIG_ZREGS_SIZE): Likewise.
4126         (SVE_SIG_PREGS_OFFSET): Likewise.
4127         (SVE_SIG_PREG_OFFSET): Likewise.
4128         (SVE_SIG_PREGS_SIZE): Likewise.
4129         (SVE_SIG_FFR_OFFSET): Likewise.
4130         (SVE_SIG_REGS_SIZE): Likewise.
4131         (SVE_SIG_CONTEXT_SIZE): Likewise.
4132         (SVE_PT_REGS_MASK): Likewise.
4133         (SVE_PT_REGS_FPSIMD): Likewise.
4134         (SVE_PT_REGS_SVE): Likewise.
4135         (SVE_PT_VL_INHERIT): Likewise.
4136         (SVE_PT_VL_ONEXEC): Likewise.
4137         (SVE_PT_REGS_OFFSET): Likewise.
4138         (SVE_PT_FPSIMD_OFFSET): Likewise.
4139         (SVE_PT_FPSIMD_SIZE): Likewise.
4140         (SVE_PT_SVE_ZREG_SIZE): Likewise.
4141         (SVE_PT_SVE_PREG_SIZE): Likewise.
4142         (SVE_PT_SVE_FFR_SIZE): Likewise.
4143         (SVE_PT_SVE_FPSR_SIZE): Likewise.
4144         (SVE_PT_SVE_FPCR_SIZE): Likewise.
4145         (__SVE_SIG_TO_PT): Likewise.
4146         (SVE_PT_SVE_OFFSET): Likewise.
4147         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
4148         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
4149         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
4150         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
4151         (SVE_PT_SVE_PREG_OFFSET): Likewise.
4152         (SVE_PT_SVE_PREGS_SIZE): Likewise.
4153         (SVE_PT_SVE_FFR_OFFSET): Likewise.
4154         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
4155         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
4156         (SVE_PT_SVE_SIZE): Likewise.
4157         (SVE_PT_SIZE): Likewise.
4158         (HAS_SVE_STATE): New define.
4159
4160 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
4161
4162         * nat/aarch64-sve-linux-sigcontext.h: New file.
4163         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
4164         new files.
4165         (SVE_VQ_MIN): Likewise.
4166         (SVE_VQ_MAX): Likewise.
4167         (SVE_VL_MIN): Likewise.
4168         (SVE_VL_MAX): Likewise.
4169         (SVE_NUM_ZREGS): Likewise.
4170         (SVE_NUM_PREGS): Likewise.
4171         (sve_vl_valid): Likewise.
4172         (struct user_sve_header): Likewise.
4173
4174 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
4175             Richard Bunt <Richard.Bunt@arm.com>
4176
4177         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
4178         was requested by GDB.
4179
4180 2018-06-15  Tom de Vries  <tdevries@suse.de>
4181
4182         * MAINTAINERS (Write After Approval): Add Tom de Vries.
4183
4184 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
4185
4186         * gnulib/update-gnulib.sh: Print expected versions of
4187         autoconf/aclocal.
4188
4189 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
4190
4191         * arch-utils.c (default_type_align): Use type_length_units.
4192         * gdbtypes.c (type_align): Use type_length_units.
4193
4194 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4195
4196         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
4197         of 'define' command.
4198
4199 2018-06-14  Tom de Vries  <tdevries@suse.de>
4200
4201         PR cli/22573
4202         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
4203         get_no_prettyformat_print_options.
4204
4205 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
4206
4207         * sparc-nat.h: Include target.h.
4208         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
4209         <fetch_registers>: Remove this argument in function call.
4210         <store_registers>: Remove this argument in function call, remove
4211         extra semicolon.
4212         <low_forget_process>: Call sparc64_forget_process instead of
4213         sparc_forget_process.
4214
4215 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4216
4217         * procfs.c (_initialize_procfs): Use add_inf_child_target.
4218         (procfs_target::make_corefile_notes): Adjust to new
4219         target_read_alloc return type.
4220
4221 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
4222             Stephen Roberts  <stephen.roberts@arm.com>
4223
4224         PR gdb/22882
4225         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
4226         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
4227         Move should_notify_stop local into more inner scope.
4228
4229 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
4230             Stephen Roberts  <stephen.roberts@arm.com>
4231
4232         PR gdb/22882
4233         * infrun.c (resume_1): Add call to mark_async_event_handler.
4234
4235 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
4236
4237         * infrun.c (do_target_wait): Change old version of $pc printed.
4238
4239 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
4240
4241         * dwarf2read.c (read_index_from_section): Rename to...
4242         (read_gdb_index_from_section): ... this, update all callers.
4243         (dwarf2_read_index): Rename to...
4244         (dwarf2_read_gdb_index): ... this, update all callers.
4245
4246 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
4247
4248         * gdb/hppa-linux-nat.c
4249         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
4250         hppa_linux_nat_target::fetch_registers.
4251
4252 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
4253
4254         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
4255         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
4256         (AARCH64_DWARF_SVE_FFR): Likewise.
4257         (AARCH64_DWARF_SVE_P0): Likewise.
4258         (AARCH64_DWARF_SVE_Z0): Likewise.
4259
4260 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
4261
4262         * common/common-regcache.h (raw_compare): New function.
4263         * regcache.c (regcache::raw_compare): Likewise.
4264         * regcache.h (regcache::raw_compare): New declaration.
4265
4266 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
4267
4268         * common/common-regcache.h (reg_buffer_common): New structure.
4269         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
4270         (reg_buffer::raw_supply): Likewise.
4271         (reg_buffer::raw_supply_integer): Likewise.
4272         (reg_buffer::raw_supply_zeroed): Likewise.
4273         (reg_buffer::raw_collect): Likewise.
4274         (reg_buffer::raw_collect_integer): Likewise.
4275         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
4276         (reg_buffer::raw_supply): Likewise.
4277         (reg_buffer::raw_supply_integer): Likewise.
4278         (reg_buffer::raw_supply_zeroed): Likewise.
4279         (reg_buffer::raw_collect): Likewise.
4280         (reg_buffer::raw_collect_integer): Likewise.
4281
4282 2018-06-10  Tom Tromey  <tom@tromey.com>
4283
4284         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
4285         (class remote_state) <stop_reply_queue>: Now std::vector.
4286         (remote_state::~remote_state)
4287         (remote_target::stop_reply_queue_length): Update.
4288         (struct queue_iter_param, remove_child_of_pending_fork)
4289         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
4290         (check_pending_event_prevents_wildcard_vcont_callback)
4291         (remove_stop_reply_for_inferior)
4292         (remove_stop_reply_of_remote_state)
4293         (remote_notif_remove_once_on_match)
4294         (stop_reply_match_ptid_and_ws)
4295         (remote_kill_child_of_pending_fork): Remove.
4296         (remote_target::remove_new_fork_children)
4297         (remote_target::check_pending_events_prevent_wildcard_vcont)
4298         (remote_target::discard_pending_stop_replies)
4299         (remote_target::discard_pending_stop_replies_in_queue)
4300         (remote_target::remote_notif_remove_queued_reply)
4301         (remote_target::queued_stop_reply)
4302         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
4303         (remote_target::wait, remote_target::kill_new_fork_children)
4304         (remote_target::async): Update.
4305
4306 2018-06-10  Tom Tromey  <tom@tromey.com>
4307
4308         * record-full.c (record_full_arch_list_cleanups): Remove.
4309         (record_full_message): Use try/catch.
4310         (record_full_wait_cleanups): Remove.
4311         (record_full_wait_1): Use try/catch.
4312         (record_full_restore): Likewise.
4313
4314 2018-06-10  Tom Tromey  <tom@tromey.com>
4315
4316         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
4317         declare VEC.  Add constructor.
4318         <in_target_beneath>: Now bool.
4319         (record_full_breakpoints): Now a std::vector, static.
4320         (record_full_sync_record_breakpoints)
4321         (record_full_init_record_breakpoints)
4322         (record_full_target::insert_breakpoint)
4323         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
4324
4325 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
4326
4327         * dwarf2read.c (process_cu_includes): Remove struct keyword.
4328         * serial.c (serial_interface_lookup): Remove struct keyword.
4329
4330 2018-06-10  Tom Tromey  <tom@tromey.com>
4331
4332         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
4333         method.
4334         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
4335         a method.
4336         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
4337         method.
4338         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
4339         "beneath" as a method.
4340         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
4341         Use "beneath" as a method.
4342
4343 2018-06-10  Tom Tromey  <tom@tromey.com>
4344
4345         * tracefile.c (struct trace_file_writer_deleter): New.
4346         <operator()>: Rename from trace_file_writer_xfree.
4347         (trace_file_writer_up): New typedef.
4348         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
4349
4350 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
4351
4352         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
4353         <m_registers, m_register_status>: Change type to
4354         std::unique_ptr.
4355         * regcache.c (reg_buffer::reg_buffer): Use new instead of
4356         XCNEWVEC.
4357
4358 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
4359
4360         * common/common-regcache.h (enum register_status): Add
4361         underlying type "signed char".
4362         * regcache.h (reg_buffer) <m_register_status>: Change type to
4363         register_status *.
4364         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
4365         register_status instead of signed char.
4366         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
4367         (reg_buffer::get_register_status): Remove cast.
4368         (readable_regcache::raw_read): Remove cast.
4369         (readable_regcache::cooked_read): Remove cast.
4370
4371 2018-06-09  Tom Tromey  <tom@tromey.com>
4372
4373         * source.c (reverse_search_command, forward_search_command): Use
4374         scoped_fd.
4375
4376 2018-06-09  Tom Tromey  <tom@tromey.com>
4377
4378         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
4379         (serial_ops_list): Now static, std::vector.
4380         (serial_interface_lookup, serial_add_interface): Update.
4381
4382 2018-06-09  Tom Tromey  <tom@tromey.com>
4383
4384         * dwarf2read.c (process_cu_includes): Update.
4385         (process_full_comp_unit): Update.
4386         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
4387         std::vector.
4388
4389 2018-06-08  Paul Koning  <paul_koning@dell.com>
4390
4391         PR gdb/23252
4392
4393         * python/python.c (do_start_initialization):
4394         Avoid call to internal Python API.
4395         (init__gdb_module): New function.
4396
4397 2018-06-08  Gary Benson <gbenson@redhat.com>
4398
4399         * linux-thread-db.c (valprint.h): New include.
4400         (struct check_thread_db_info): New structure.
4401         (check_thread_db_on_load, tdb_testinfo): New static globals.
4402         (check_thread_db, check_thread_db_callback): New functions.
4403         (try_thread_db_load_1): Run integrity checks if requested.
4404         (maintenance_check_libthread_db): New function.
4405         (_initialize_thread_db): Register "maint check libthread-db"
4406         and "maint set/show check-libthread-db".
4407         * NEWS: Mention the above new commands.
4408
4409 2018-06-08  Tom Tromey  <tom@tromey.com>
4410
4411         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
4412         now a method.
4413
4414 2018-06-08  Tom Tromey  <tom@tromey.com>
4415
4416         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
4417
4418 2018-06-08  Tom Tromey  <tom@tromey.com>
4419
4420         * common/btrace-common.h (struct btrace_data): Add constructor,
4421         destructor, move assignment operator.
4422         <empty, clear, fini>: New methods.
4423         <format>: Initialize.
4424         (btrace_data_init, btrace_data_fini, btrace_data_clear)
4425         (btrace_data_empty): Don't declare.
4426         * common/btrace-common.c (btrace_data_init): Remove.
4427         (btrace_data::fini): Rename from btrace_data_fini.
4428         (btrace_data::empty): Rename from btrace_data_empty.
4429         (btrace_data::clear): Rename from btrace_data_clear.  Return
4430         bool.
4431         * btrace.h (make_cleanup_btrace_data): Don't declare.
4432         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
4433         (parse_xml_btrace): Update.
4434         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
4435         (maint_btrace_clear_packet_history_cmd): Update.
4436
4437 2018-06-07  Pedro Alves  <palves@redhat.com>
4438
4439         * target.h (target_ops) <beneath>: Now a method.  All references
4440         updated.
4441         (class target_stack): New.
4442         * target.c (g_target_stack): New.
4443         (g_current_top_target): Delete.
4444         (current_top_target): Get the top target out of g_target_stack.
4445         (target_stack::push, target_stack::unpush): New.
4446         (push_target, unpush_target): Reimplement.
4447         (target_is_pushed): Reimplement in terms of g_target_stack.
4448         (target_ops::beneath, target_stack::find_beneath): New.
4449
4450 2018-06-07  Pedro Alves  <palves@redhat.com>
4451
4452         * target.h (find_target_beneath): Delete declaration.
4453         * target.c (find_target_beneath): Delete definition.
4454         * aix-thread.c: All callers of find_target_beneath adjusted to
4455         call target_ops::beneath instead.
4456         * bsd-uthread.c: Likewise.
4457         * linux-thread-db.c: Likewise.
4458         * ravenscar-thread.c: Likewise.
4459         * sol-thread.c: Likewise.
4460         * spu-multiarch.c: Likewise.
4461
4462 2018-06-07  Pedro Alves  <palves@redhat.com>
4463
4464         * target.h (target_ops) <beneath>: Now a method.  All references
4465         updated.
4466         (target_ops) <m_beneath>: New.
4467         * target.c (target_ops::beneath): New.
4468         * corelow.c: Adjust all references to target_ops::beneath.
4469         * linux-thread-db.c: Likewise.
4470         * make-target-delegates: Likewise.
4471         * record-btrace.c: Likewise.
4472         * record-full.c: Likewise.
4473         * remote.c: Likewise.
4474         * target.c: Likewise.
4475         * target-delegates.c: Regenerate.
4476
4477 2018-06-07  Pedro Alves  <palves@redhat.com>
4478
4479         * target.h (target_stack): Delete.
4480         (current_top_target): Declare function.
4481         * target.c (target_stack): Delete.
4482         (g_current_top_target): New.
4483         (current_top_target): New function.
4484         * auxv.c: Use current_top_target instead of target_stack
4485         throughout.
4486         * avr-tdep.c: Likewise.
4487         * breakpoint.c: Likewise.
4488         * corefile.c: Likewise.
4489         * elfread.c: Likewise.
4490         * eval.c: Likewise.
4491         * exceptions.c: Likewise.
4492         * frame.c: Likewise.
4493         * gdbarch-selftests.c: Likewise.
4494         * gnu-v3-abi.c: Likewise.
4495         * ia64-tdep.c: Likewise.
4496         * ia64-vms-tdep.c: Likewise.
4497         * infcall.c: Likewise.
4498         * infcmd.c: Likewise.
4499         * infrun.c: Likewise.
4500         * linespec.c: Likewise.
4501         * linux-tdep.c: Likewise.
4502         * minsyms.c: Likewise.
4503         * ppc-linux-nat.c: Likewise.
4504         * ppc-linux-tdep.c: Likewise.
4505         * procfs.c: Likewise.
4506         * regcache.c: Likewise.
4507         * remote.c: Likewise.
4508         * rs6000-tdep.c: Likewise.
4509         * s390-linux-nat.c: Likewise.
4510         * s390-tdep.c: Likewise.
4511         * solib-aix.c: Likewise.
4512         * solib-darwin.c: Likewise.
4513         * solib-dsbt.c: Likewise.
4514         * solib-spu.c: Likewise.
4515         * solib-svr4.c: Likewise.
4516         * solib-target.c: Likewise.
4517         * sparc-tdep.c: Likewise.
4518         * sparc64-tdep.c: Likewise.
4519         * spu-tdep.c: Likewise.
4520         * symfile.c: Likewise.
4521         * symtab.c: Likewise.
4522         * target-descriptions.c: Likewise.
4523         * target-memory.c: Likewise.
4524         * target.c: Likewise.
4525         * target.h: Likewise.
4526         * tracefile-tfile.c: Likewise.
4527         * tracepoint.c: Likewise.
4528         * valops.c: Likewise.
4529         * valprint.c: Likewise.
4530         * value.c: Likewise.
4531         * windows-tdep.c: Likewise.
4532         * mi/mi-main.c: Likewise.
4533
4534 2018-06-07  Tom Tromey  <tom@tromey.com>
4535
4536         * valprint.h (build_address_symbolic): Declare.
4537         * printcmd.c (print_address_symbolic): Update.
4538         (build_address_symbolic): Change "name" and "filename" to
4539         std::string.
4540         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
4541         Update.
4542         * defs.h (build_address_symbolic): Remove declaration.
4543
4544 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
4545
4546         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
4547         (aarch64_vnv_type): Add function.
4548         (aarch64_pseudo_register_name): Add V regs for SVE.
4549         (aarch64_pseudo_register_type): Likewise.
4550         (aarch64_pseudo_register_reggroup_p): Likewise.
4551         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
4552         (aarch64_pseudo_read_value): Add V regs for SVE.
4553         (aarch64_pseudo_write_2): Use V0 offset for SVE
4554         (aarch64_pseudo_write): Add V regs for SVE.
4555         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
4556
4557 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
4558
4559         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
4560         (sve_vl_from_vq): Likewise.
4561
4562 2018-06-05  Tom Tromey  <tom@tromey.com>
4563
4564         * cli/cli-cmds.c (show_version): Update.
4565         * top.c (print_gdb_version): Add "interactive" parameter.
4566         Update.
4567         * main.c (captured_main_1): Update.
4568         * top.h (print_gdb_version): Add "interactive" parameter and a
4569         comment.
4570
4571 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
4572
4573         * common/enum-flags.h: Add trailing semicolon to example in
4574         comment.
4575
4576 2018-06-05  Tom Tromey  <tom@tromey.com>
4577
4578         PR cli/12326:
4579         * NEWS: Add entry about pager.
4580         * utils.c (pagination_disabled_for_command): New global.
4581         (prompt_for_continue): Allow "c" response to prompt.
4582         (reinitialize_more_filter): Clear
4583         pagination_disabled_for_command.
4584         (fputs_maybe_filtered): Check pagination_disabled_for_command.
4585
4586 2018-06-04  Tom Tromey  <tom@tromey.com>
4587
4588         * ada-lang.h (ada_lookup_symbol_list): Update.
4589         * ada-lang.c (resolve_subexp): Update.
4590         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
4591         parameter.
4592         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
4593         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
4594         results parameter to std::vector.
4595         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
4596         Update.
4597         * ada-exp.y (block_lookup): Update.
4598         (select_possible_type_sym): Change type of syms.  Remove nsyms
4599         parameter.
4600         (write_var_or_type, write_name_assoc): Update.
4601
4602 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
4603
4604         * windows-nat.c (windows_nat_target::xfer_partial): Return
4605         TARGET_XFER_E_IO if we need to delegate to the target beneath
4606         but BENEATH is NULL.
4607
4608 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
4609
4610         * Makefile.in (config.status): Add configure.nat as a
4611         dependency.
4612
4613 2018-06-04  Tom Tromey  <tom@tromey.com>
4614
4615         * cp-name-parser.y (cpname_state): Add method declarations.
4616         (HANDLE_QUAL): Update.
4617         (cpname_state::d_grab, cpname_state::fill_comp)
4618         (cpname_state::make_operator, cpname_state::make_dtor)
4619         (cpname_state::make_builtin_type, cpname_state::make_name)
4620         (cpname_state::d_qualify, cpname_state::d_int_type)
4621         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
4622         (%union): Move earlier.
4623
4624 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
4625
4626         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
4627
4628 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
4629
4630         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
4631         (aarch64_pseudo_write_1): Likewise.
4632         (aarch64_pseudo_read_value): Use helper.
4633         (aarch64_pseudo_write): Likewise.
4634
4635 2018-06-04  Pedro Alves  <palves@redhat.com>
4636
4637         * darwin-nat.c (darwin_ops): Delete.
4638         (darwin_attach_pid): Use get_native_target.
4639
4640 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
4641
4642         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
4643         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
4644
4645 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
4646
4647         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
4648         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
4649         (aarch64_gdbarch_init): Check for SVE.
4650         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
4651
4652 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
4653
4654         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
4655         * aarch64-tdep.h (aarch64_read_description): Likewise.
4656         * arch/aarch64.c (aarch64_create_target_description): Likewise.
4657         * arch/aarch64.h (aarch64_create_target_description): Likewise.
4658         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
4659         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
4660         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
4661
4662 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
4663
4664         * value.c (value_fetch_lazy_bitfield): New.
4665         (value_fetch_lazy_memory): New.
4666         (value_fetch_lazy_register): New.
4667         (value_fetch_lazy): Factor out to smaller functions.
4668
4669 2018-06-01  Tom Tromey  <tom@tromey.com>
4670
4671         * cp-name-parser.y (backslashable, represented): Now const.
4672
4673 2018-06-01  Tom Tromey  <tom@tromey.com>
4674
4675         * cp-name-parser.y: Include parser-defs.h.
4676         (parser_fprintf): Remove declaration.
4677
4678 2018-06-01  Tom Tromey  <tom@tromey.com>
4679
4680         * cp-name-parser.y: Use %pure-parser, %lex-param, and
4681         %parse-param.
4682         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
4683         (global_result): Remove globals.
4684         (struct cpname_state): New.
4685         (yyparse): Don't declare.
4686         (yylex, yyerror): Move declarations after %union.
4687         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
4688         (make_name): Add state parameter.
4689         Update all callers.
4690         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
4691         parameter.
4692         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
4693         Update.
4694         (yylex): Add lvalp, state parameters.
4695         (yyerror): Add state parameter.
4696         (cp_demangled_name_to_comp): Update.
4697
4698 2018-06-01  Tom Tromey  <tom@tromey.com>
4699
4700         * cp-name-parser.y (parser_fprintf): Declare.
4701         (GDB_YY_REMAP_PREFIX): Define.
4702         Include yy-remap.h.  Don't redefine yy* identifiers.
4703
4704 2018-06-01  Tom Tromey  <tom@tromey.com>
4705
4706         * python/py-type.c (typy_legacy_template_argument): Update.
4707         * cp-support.h (cp_demangled_name_to_comp): Update.
4708         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
4709         parameter to be a "std::string *".
4710         (main): Update.
4711
4712 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
4713
4714         * ada-lex.l: Include "diagnostics.h" instead of
4715         "common/diagnostics.h".
4716         * unittests/environ-selftests.c: Likewise.
4717         * common/diagnostics.h: Moved to ../include.
4718
4719 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
4720
4721         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
4722         to language_mode_manual while calling breakpoint_re_set_one.
4723
4724 2018-06-01  Tom Tromey  <tom@tromey.com>
4725
4726         * valops.c (value_cast_structs, destructor_name_p): Update.
4727         * symtab.c (gdb_mangle_name): Update.
4728         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
4729         Update.
4730         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
4731         (pascal_object_print_value_fields, pascal_object_print_value):
4732         Update.
4733         * p-typeprint.c (pascal_type_print_derivation_info): Update.
4734         * linespec.c (find_methods): Update.
4735         * gdbtypes.h (type_name_no_tag): Remove.
4736         (type_name_or_error): Rename from type_name_no_tag_or_error.
4737         * gdbtypes.c (type_name_no_tag): Remove.
4738         (type_name_or_error): Rename from type_name_no_tag_or_error.
4739         (lookup_struct_elt_type, check_typedef): Update.
4740         * expprint.c (print_subexp_standard): Update.
4741         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
4742         * d-namespace.c (d_lookup_nested_symbol): Update.
4743         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
4744         (cp_print_class_member): Update.
4745         * cp-namespace.c (cp_lookup_nested_symbol): Update.
4746         * completer.c (add_struct_fields): Update.
4747         * c-typeprint.c (cp_type_print_derivation_info)
4748         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
4749         Update.
4750         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
4751         (ada_prefer_type, ada_is_exception_sym): Update.
4752
4753 2018-06-01  Tom Tromey  <tom@tromey.com>
4754
4755         * valops.c (enum_constant_from_type, value_namespace_elt)
4756         (value_maybe_namespace_elt): Update.
4757         * valarith.c (find_size_for_pointer_math): Update.
4758         * target-descriptions.c (make_gdb_type): Update.
4759         * symmisc.c (print_symbol): Update.
4760         * stabsread.c (define_symbol, read_type)
4761         (complain_about_struct_wipeout, add_undefined_type)
4762         (cleanup_undefined_types_1): Update.
4763         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
4764         (rust_range_type_p, val_print_struct, rust_print_struct_def)
4765         (rust_internal_print_type, rust_composite_type)
4766         (rust_evaluate_funcall, rust_evaluate_subexp)
4767         (rust_inclusive_range_type_p): Update.
4768         * python/py-type.c (typy_get_tag): Update.
4769         * p-typeprint.c (pascal_type_print_base): Update.
4770         * mdebugread.c (parse_symbol, parse_type): Update.
4771         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
4772         Update.
4773         * guile/scm-type.c (gdbscm_type_tag): Update.
4774         * go-lang.c (sixg_string_p): Update.
4775         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
4776         Update.
4777         * gdbtypes.h (struct main_type) <tag_name>: Remove.
4778         (TYPE_TAG_NAME): Remove.
4779         * gdbtypes.c (type_name_no_tag): Simplify.
4780         (check_typedef, check_types_equal, recursive_dump_type)
4781         (copy_type_recursive, arch_composite_type): Update.
4782         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
4783         in summary mode when needed.
4784         * eval.c (evaluate_funcall): Update.
4785         * dwarf2read.c (fixup_go_packaging, read_structure_type)
4786         (process_structure_scope, read_enumeration_type)
4787         (read_namespace_type, read_module_type, determine_prefix): Update.
4788         * cp-support.c (inspect_type): Update.
4789         * coffread.c (process_coff_symbol, decode_base_type): Update.
4790         * c-varobj.c (c_is_path_expr_parent): Update.
4791         * c-typeprint.c (c_type_print_base_struct_union): Update.
4792         (c_type_print_base_1): Update.  Print struct/class/union/enum in
4793         summary when using C language.
4794         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
4795         (gen_maybe_namespace_elt): Update.
4796         * ada-lang.c (ada_type_name): Simplify.
4797         (empty_record, ada_template_to_fixed_record_type_1)
4798         (template_to_static_fixed_type)
4799         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
4800
4801 2018-06-01  Tom Tromey  <tom@tromey.com>
4802
4803         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
4804         c_print_type.
4805         * c-typeprint.c (c_print_type_1): Add "language" parameter.
4806         (c_print_type): Update.
4807         (c_print_type): New overload.
4808         (c_type_print_varspec_prefix, c_type_print_args)
4809         (c_type_print_varspec_suffix, c_print_type_no_offsets)
4810         (c_type_print_base_struct_union, c_type_print_base_1)
4811         (cp_type_print_method_args): Add "language" parameter.
4812         (c_type_print_base): Update.
4813         * c-lang.h (c_print_type): Add new overload.
4814
4815 2018-06-01  Tom Tromey  <tom@tromey.com>
4816
4817         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
4818         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
4819
4820 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
4821
4822         * aarch64-tdep.c (aarch64_sve_register_names): New const
4823         var.
4824         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
4825         (AARCH64_SVE_Z_REGS_NUM): New define.
4826         (AARCH64_SVE_P_REGS_NUM): Likewise.
4827         (AARCH64_SVE_NUM_REGS): Likewise.
4828
4829 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
4830
4831         * nat/linux-ptrace.h [__alpha__]
4832         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
4833         definitions.
4834
4835 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
4836
4837         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
4838         the endianness selected.
4839         * NEWS: Document `set endian auto' mode operation update.
4840
4841 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
4842
4843         * Makefile.in: Add new header.
4844         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
4845         (sve_vl_from_vg): Likewise.
4846         (sve_vq_from_vl): Likewise.
4847         (sve_vl_from_vq): Likewise.
4848         (sve_vq_from_vg): Likewise.
4849         (sve_vg_from_vq): Likewise.
4850         * configure.nat: Add new c file.
4851         * nat/aarch64-sve-linux-ptrace.c: New file.
4852         * nat/aarch64-sve-linux-ptrace.h: New file.
4853
4854 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
4855
4856         * aarch64-linux-nat.c (aarch64_linux_read_description):
4857         Add parmeter zero.
4858         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
4859         Likewise.
4860         * aarch64-tdep.c (tdesc_aarch64_list): Add.
4861         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
4862         (aarch64_gdbarch_init): Add parmeter zero.
4863         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
4864         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
4865         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
4866         parmeter.
4867         * doc/gdb.texinfo: Describe SVE feature
4868         * features/aarch64-sve.c: New file.
4869
4870 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
4871
4872         PR gdb/23210
4873         * gdbarch.sh (significant_addr_bit): Default to zero when
4874         not set by target architecture.
4875         * gdbarch.c: Re-generated.
4876         * utils.c (address_significant): Update.
4877
4878 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
4879
4880         * stack.c (func_command): Remove trailing newline in call to error.
4881
4882 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
4883
4884         * regcache.h (regcache_raw_collect): Remove, update callers to
4885         use regcache::raw_collect.
4886         * regcache.c (regcache_raw_collect): Remove.
4887
4888 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
4889
4890         * regcache.h (regcache_raw_supply): Remove, update callers to
4891         use detached_regcache::raw_supply.
4892         * regcache.c (regcache_raw_supply): Remove.
4893
4894 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
4895
4896         * regcache.h (regcache_cooked_write_part): Remove, update
4897         callers to use regcache::cooked_write_part.
4898         * regcache.c (regcache_cooked_write_part): Remove.
4899
4900 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
4901
4902         * regcache.h (regcache_cooked_read_part): Remove, update callers
4903         to use readable_regcache::cooked_read_part.
4904         * regcache.c (regcache_cooked_read_part): Remove.
4905
4906 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
4907
4908         * regcache.h (regcache_cooked_read_value): Remove, update
4909         callers to use readable_regcache::cooked_read_value.
4910         * regcache.c (regcache_cooked_read_value): Remove.
4911
4912 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
4913
4914         * regcache.h (regcache_cooked_write): Remove, update callers to
4915         use regcache::cooked_write.
4916         * regcache.c (regcache_cooked_write): Remove.
4917
4918 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
4919
4920         * regcache.h (regcache_invalidate): Remove, update callers to
4921         use detached_regcache::invalidate instead.
4922         * regcache.c (regcache_invalidate): Remove.
4923
4924 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
4925
4926         * regcache.h (regcache_raw_write_part): Remove, update callers
4927         to use regcache::raw_write_part instead.
4928         * regcache.c (regcache_raw_write_part): Remove.
4929
4930 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
4931
4932         * regcache.h (regcache_raw_read_part): Remove, update callers to
4933         use readable_regcache::raw_read_part instead.
4934         * regcache.c (regcache_raw_read_part): Remove.
4935
4936 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
4937
4938         * regcache.h (regcache_cooked_read): Remove, update callers to
4939         use readable_regcache::cooked_read instead.
4940         * regcache.c (regcache_cooked_read): Remove.
4941
4942 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
4943
4944         * regcache.h (regcache_raw_write): Remove, update callers to use
4945         regcache::raw_write instead.
4946         * regcache.c (regcache_raw_write): Remove.
4947
4948 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
4949
4950         * regcache.h (regcache_raw_read): Remove, update callers to use
4951         readable_regcache::raw_read instead.
4952         * regcache.c (regcache_raw_read): Remove.
4953
4954 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
4955
4956         * regcache.h (regcache_raw_update): Remove, update callers to
4957         use readable_regcache::raw_update instead.
4958         * regcache.c (regcache_raw_update): Remove.
4959
4960 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
4961
4962         * regcache.h (regcache_register_status): Remove, update callers
4963         to use reg_buffer::get_register_status directly instead.
4964         * regcache.c (regcache_register_status): Remove.
4965
4966 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
4967
4968         * regcache.h (regcache_get_ptid): Remove, update all callers to
4969         call regcache::ptid instead.
4970         * regcache.c (regcache_get_ptid): Remove.
4971
4972 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
4973
4974         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
4975
4976 2018-05-30  Pedro Alves  <palves@redhat.com>
4977
4978         * common/common-exceptions.h (exception_rethrow): Use
4979         ATTRIBUTE_NORETURN.
4980
4981 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
4982
4983         * breakpoint.c (print_solib_event, check_status_catch_solib):
4984         Remove struct keyword in range-based for loops.
4985         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
4986         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
4987         Likewise.
4988         * linespec.c (find_superclass_methods, search_minsyms_for_name):
4989         Likewise.
4990         * symfile.c (addr_info_make_relative): Likewise.
4991         * thread.c (value_in_thread_stack_temporaries): Likewise.
4992
4993 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
4994
4995         PR gdb/16841
4996         * valops.c (value_struct_elt_for_reference): Call check_typedef on
4997         aggregate type to get its real type before accessing it.
4998
4999 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
5000
5001         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
5002         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
5003         * coff-pe-read.c (add_pe_forwarded_sym): Replace
5004         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
5005         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
5006         * jit.c (jit_breakpoint_re_set_internal): Likewise.
5007         * printcmd.c (info_address_command): Likewise.
5008
5009 2018-05-29  Tom Tromey  <tom@tromey.com>
5010
5011         * windows-nat.c (handle_exception): Update fall-through comment.
5012
5013 2018-05-29  Tom Tromey  <tom@tromey.com>
5014
5015         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
5016         (struct program_space) <added_solibs>: Now a std::vector.
5017         * breakpoint.c (print_solib_event): Update.
5018         (check_status_catch_solib): Update.
5019         * progspace.c (clear_program_space_solib_cache): Update.
5020         * solib.c (update_solib_list): Update.
5021
5022 2018-05-29  Tom Tromey  <tom@tromey.com>
5023
5024         * python/py-type.c (typy_richcompare): Update.
5025         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
5026         * gdbtypes.h (types_deeply_equal): Return bool.
5027         (types_equal): Likewise.
5028         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
5029         declare VEC.
5030         (check_types_equal): Change worklist to std::vector.  Return
5031         bool.
5032         (struct type_equality_entry): Add constructor.
5033         (compare_maybe_null_strings): Return bool.
5034         (check_types_worklist): Return bool.  Change worklist to
5035         std::vector.
5036         (types_deeply_equal): Use std::vector.
5037         (types_equal): Return bool.
5038         (compare_maybe_null_strings): Simplify.
5039
5040 2018-05-29  Tom Tromey  <tom@tromey.com>
5041
5042         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
5043
5044 2018-05-29  Tom Tromey  <tom@tromey.com>
5045
5046         * objc-lang.h: Don't include cp-support.h.
5047         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
5048         declare VEC.
5049
5050 2018-05-27  Tom Tromey  <tom@tromey.com>
5051
5052         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
5053
5054 2018-05-25  Tom Tromey  <tom@tromey.com>
5055
5056         * value.c (value::location): Initialize.
5057
5058 2018-05-25  Tom Tromey  <tom@tromey.com>
5059
5060         * dbxread.c (init_bincl_list): Remove.
5061         (bincl_list): Now a std::vector.
5062         (bincls_allocated, next_bincl): Remove.
5063         (free_bincl_list, do_free_bincl_list_cleanup)
5064         (make_cleanup_free_bincl_list): Remove.
5065         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
5066         unique_xmalloc_ptr.
5067         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
5068         (struct header_file_location): Add constructor.
5069         (add_bincl_to_list): Remove.
5070
5071 2018-05-25  Tom Tromey  <tom@tromey.com>
5072
5073         * tui/tui.c (tui_enable): Update.
5074         * mi/mi-interp.c (mi_interp::init): Update.
5075         * interps.h (class interp) <name>: New method.
5076         <m_name>: Rename from name.
5077         (~scoped_restore_interp): Update.
5078         * interps.c (interp::interp): Update.
5079         (interp_add, interp_set, interp_lookup_existing)
5080         (current_interp_named_p): Update.
5081
5082 2018-05-25  Tom Tromey  <tom@tromey.com>
5083
5084         * interps.c (interp_name): Remove.
5085         * mi/mi-interp.c (mi_interp::init): Update.
5086         * interps.h (interp_name): Remove.
5087         (~scoped_restore_interp): Update.
5088         * tui/tui.c (tui_enable): Update.
5089
5090 2018-05-25  Tom Tromey  <tom@tromey.com>
5091
5092         * utils.c (fputs_maybe_filtered): Update.
5093         * linespec.c (decode_line_full): Update.
5094         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
5095         (mi_print_breakpoint_for_event, mi_solib_loaded)
5096         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
5097         (mi_user_selected_context_changed): Update.
5098         * mi/mi-main.c (mi_execute_command): Update.
5099         * cli/cli-script.c (execute_control_command): Update.
5100         * python/python.c (execute_gdb_command): Update.
5101         * solib.c (info_sharedlibrary_command): Update.
5102         * interps.c (interp_ui_out): Remove.
5103         * interps.h (interp_ui_out): Remove.
5104
5105 2018-05-25  Tom Tromey  <tom@tromey.com>
5106
5107         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
5108         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
5109         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
5110
5111 2018-05-25  Tom Tromey  <tom@tromey.com>
5112
5113         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
5114         * interps.c (interp_exec): Use scoped_restore.
5115
5116 2018-05-25  Tom Tromey  <tom@tromey.com>
5117
5118         * remote.c (remote_target::remote_file_get): Use
5119         gdb::byte_vector.
5120         (remote_target::remote_file_put): Likewise.
5121
5122 2018-05-25  Tom Tromey  <tom@tromey.com>
5123
5124         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
5125         a std::string.
5126         (get_pe_section_index, add_pe_exported_sym): Update.
5127         (read_pe_exported_syms): Use gdb::def_vector.
5128
5129 2018-05-25  Tom Tromey  <tom@tromey.com>
5130
5131         * frame.c (remove_prev_frame): Remove.
5132         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
5133
5134 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
5135
5136         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
5137         Remove prototypes.
5138         * mips-linux-nat.c (supply_fpregset): Always call
5139         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
5140         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
5141         `mips_fill_fpregset'.
5142         * mips-linux-tdep.c (mips_supply_fpregset)
5143         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
5144         (mips_fill_fpregset_wrapper): Remove functions.
5145         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
5146         (mips_linux_fpregset): Remove variable.
5147         (mips_linux_iterate_over_regset_sections): Use
5148         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
5149         (mips_linux_o32_sigframe_init): Remove comment.
5150
5151 2018-05-25  Pedro Alves  <palves@redhat.com>
5152
5153         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
5154         (struct readahead_cache, struct packet_reg, struct
5155         remote_arch_state, class remote_state): Move higher up in the
5156         file.
5157         (remote_target::m_remote_state): Now an object instead of a pointer.
5158         (remote_target::get_remote_state): Adjust.
5159
5160 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
5161
5162         * stack.c (select_and_print_frame): Delete.
5163         (struct function_bounds): Move struct within function.
5164         (func_command): Most content moved into new function
5165         find_frame_for_function, use new function, print result, add
5166         function comment.
5167         (find_frame_for_function): New function, now returns a result.
5168
5169 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5170
5171         * stack.c (iterate_over_block_arg_vars): Fix comment.
5172         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
5173
5174 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
5175
5176         PR gdb/23203
5177         * frame.c
5178         (scoped_restore_selected_frame::scoped_restore_selected_frame):
5179         Define.
5180         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
5181         Define.
5182         * frame.h (class scoped_restore_selected_frame): New class.
5183         * stack.c (print_frame_local_vars): Remove catching and rethrowing
5184         of any exception, use scoped_restore_selected_frame to restore the
5185         frame instead.
5186
5187 2018-05-24  Pedro Alves  <palves@redhat.com>
5188
5189         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
5190         override.
5191
5192 2018-05-23  Tom Tromey  <tom@tromey.com>
5193
5194         * complaints.c (struct complaints): Remove.
5195         (symfile_complaint_book): Remove.
5196         (series): New global.
5197         (complaint_internal): Update.
5198         (clear_complaints): Update.
5199
5200 2018-05-23  Tom Tromey  <tom@tromey.com>
5201
5202         * complaints.c (counters): New global.
5203         (struct complain): Remove.
5204         (struct complaints) <root>: Remove.
5205         (complaint_sentinel): Remove.
5206         (symfile_complaint_book): Update.
5207         (find_complaint) Remove.
5208         (complaint_internal, clear_complaints): Update.
5209
5210 2018-05-23  Tom Tromey  <tom@tromey.com>
5211
5212         * complaints.c (struct complain) <file, line>: Remove.
5213         (find_complaint): Remove file, line parameters.
5214         (complaint_internal): Update.
5215
5216 2018-05-23  Tom Tromey  <tom@tromey.com>
5217
5218         * complaints.c (vcomplaint): Remove.
5219         (complaint_internal) Merge in contents of vcomplaint.
5220
5221 2018-05-23  Tom Tromey  <tom@tromey.com>
5222
5223         * complaints.c (struct complaints) <explanation>: Remove.
5224         (symfile_explanations): Remove.
5225         (symfile_complaint_book): Update.
5226         (vcomplaint): Update.
5227         (struct explanation): Remove.
5228
5229 2018-05-23  Tom Tromey  <tom@tromey.com>
5230
5231         * complaints.c (symfile_complaints): Remove.
5232         (complaint_internal): Remove "complaints" parameter.
5233         (clear_complaints, vcomplaint): Remove "c" parameter.
5234         (get_complaints): Remove.
5235         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
5236         (dwarf2_debug_line_missing_file_complaint)
5237         (dwarf2_debug_line_missing_end_sequence_complaint)
5238         (dwarf2_complex_location_expr_complaint)
5239         (dwarf2_const_value_length_mismatch_complaint)
5240         (dwarf2_section_buffer_overflow_complaint)
5241         (dwarf2_macro_malformed_definition_complaint)
5242         (dwarf2_invalid_attrib_class_complaint)
5243         (create_addrmap_from_index, dw2_symtab_iter_next)
5244         (dw2_expand_marked_cus)
5245         (dw2_debug_names_iterator::find_vec_in_debug_names)
5246         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
5247         (create_debug_type_hash_table, init_cutu_and_read_dies)
5248         (partial_die_parent_scope, add_partial_enumeration)
5249         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
5250         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
5251         (read_import_statement, read_file_scope, create_dwo_cu_reader)
5252         (create_cus_hash_table, create_dwp_hash_table)
5253         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
5254         (dwarf2_rnglists_process, dwarf2_ranges_process)
5255         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
5256         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
5257         (handle_struct_member_die, process_structure_scope)
5258         (read_array_type, read_common_block, read_module_type)
5259         (read_tag_pointer_type, read_typedef, read_base_type)
5260         (read_subrange_type, load_partial_dies, partial_die_info::read)
5261         (partial_die_info::read, partial_die_info::read)
5262         (partial_die_info::read, read_checked_initial_length_and_offset)
5263         (dwarf2_string_attr, read_formatted_entries)
5264         (dwarf_decode_line_header)
5265         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
5266         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
5267         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
5268         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
5269         (get_signatured_type, get_DW_AT_signature_type)
5270         (decode_locdesc, file_file_name, consume_improper_spaces)
5271         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
5272         (dwarf_decode_macro_bytes, dwarf_decode_macros)
5273         (dwarf2_symbol_mark_computed, set_die_type)
5274         (read_attribute_value): Update.
5275         * stap-probe.c (handle_stap_probe, get_stap_base_address):
5276         Update.
5277         * dbxread.c (unknown_symtype_complaint)
5278         (lbrac_mismatch_complaint, repeated_header_complaint)
5279         (set_namestring, function_outside_compilation_unit_complaint)
5280         (read_dbx_symtab, process_one_symbol): Update.
5281         * gdbtypes.c (stub_noname_complaint): Update.
5282         * windows-nat.c (handle_unload_dll): Update.
5283         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
5284         (decode_base_type): Update.
5285         * xcoffread.c (bf_notfound_complaint, ef_complaint)
5286         (eb_complaint, record_include_begin, record_include_end)
5287         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
5288         (process_xcoff_symbol, read_symbol)
5289         (function_outside_compilation_unit_complaint)
5290         (scan_xcoff_symtab): Update.
5291         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
5292         * buildsym.c (finish_block_internal, make_blockvector)
5293         (end_symtab_get_static_block, augment_type_symtab): Update.
5294         * dtrace-probe.c (dtrace_process_dof)
5295         (dtrace_static_probe_ops::get_probes): Update.
5296         * complaints.h (struct complaint): Don't declare.
5297         (symfile_complaints): Remove.
5298         (complaint_internal): Remove "complaints" parameter.
5299         (complaint): Likewise.
5300         (clear_complaints): Likewise.
5301         * symfile.c (syms_from_objfile_1, finish_new_objfile)
5302         (reread_symbols): Update.
5303         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
5304         (dwarf2_frame_cache, decode_frame_entry): Update.
5305         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
5306         * objc-lang.c (lookup_objc_class, lookup_child_selector)
5307         (info_selectors_command): Update.
5308         * macrotab.c (macro_include, check_for_redefinition)
5309         (macro_undef): Update.
5310         * objfiles.c (filter_overlapping_sections): Update.
5311         * stabsread.c (invalid_cpp_abbrev_complaint)
5312         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
5313         (define_symbol, error_type, read_type, rs6000_builtin_type)
5314         (stabs_method_name_from_physname, read_member_functions)
5315         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
5316         (attach_fields_to_type, complain_about_struct_wipeout)
5317         (read_range_type, read_args, common_block_start)
5318         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
5319         Update.
5320         * mdebugread.c (index_complaint, unknown_ext_complaint)
5321         (basic_type_complaint, bad_tag_guess_complaint)
5322         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
5323         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
5324         (parse_procedure, parse_lines)
5325         (function_outside_compilation_unit_complaint)
5326         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
5327         (bad_tag_guess_complaint, reg_value_complaint): Update.
5328         * cp-support.c (demangled_name_complaint): Update.
5329         * macroscope.c (sal_macro_scope): Update.
5330         * dwarf-index-write.c (class debug_names): Update.
5331
5332 2018-05-23  Tom Tromey  <tom@tromey.com>
5333
5334         * complaints.c (clear_complaints): Remove "noisy" parameter.
5335         * complaints.h (clear_complaints): Update.
5336         * symfile.c (syms_from_objfile_1, finish_new_objfile)
5337         (reread_symbols): Update.
5338
5339 2018-05-23  Tom Tromey  <tom@tromey.com>
5340
5341         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
5342         SUBSEQUENT_MESSAGE.
5343         (vcomplaint, clear_complaints): Update.
5344         (symfile_explanations): Remove some messages.
5345
5346 2018-05-23  Tom Tromey  <tom@tromey.com>
5347
5348         * complaints.c (internal_complaint): Remove.
5349         * complaints.h (internal_complaint): Remove.
5350
5351 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
5352
5353         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
5354
5355 2018-05-22  Pedro Alves  <palves@redhat.com>
5356
5357         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
5358         (remote_fileio_badfd, remote_fileio_return_errno)
5359         (remote_fileio_return_success, remote_fileio_func_open)
5360         (remote_fileio_func_open, remote_fileio_func_close)
5361         (remote_fileio_func_read, remote_fileio_func_write)
5362         (remote_fileio_func_lseek, remote_fileio_func_rename)
5363         (remote_fileio_func_unlink, remote_fileio_func_stat)
5364         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
5365         (remote_fileio_func_isatty, remote_fileio_func_system): Add
5366         remote_target parameter.
5367         (remote_fio_func_map) <func>: Add remote_target parameter.
5368         (do_remote_fileio_request, remote_fileio_request):
5369         * remote-fileio.h (remote_fileio_request):
5370         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
5371         remote_target parameter.
5372         (remote_notif_process, handle_notification): Adjust to pass down
5373         the remote.
5374         (remote_notif_state_allocate): Add remote_target parameter.  Save
5375         it.
5376         * remote-notif.h (struct remote_target): Forward declare.
5377         (struct notif_client) <parse, ack, can_get_pending_events>: Add
5378         remote_target parameter.
5379         (struct remote_notif_state) <remote>: New field.
5380         (remote_notif_ack, remote_notif_parse): Add remote_target
5381         parameter.
5382         (remote_notif_state_allocate, remote_notif_state_allocate): Add
5383         remote_target parameter.
5384         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
5385         (threads_listing_context, rmt_thread_action, protocol_feature)
5386         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
5387         (packet_result, struct threads_listing_context, remote_state):
5388         Move definitions and declarations higher up.
5389         (remote_target) <~remote_target>: Declare.
5390         (remote_download_command_source, remote_file_put, remote_file_get)
5391         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
5392         (remote_hostio_pread_vFile, remote_hostio_send_command)
5393         (remote_hostio_set_filesystem, remote_hostio_open)
5394         (remote_hostio_close, remote_hostio_unlink, remote_state)
5395         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
5396         (get_memory_write_packet_size, get_memory_read_packet_size)
5397         (append_pending_thread_resumptions, remote_detach_1)
5398         (append_resumption, remote_resume_with_vcont)
5399         (add_current_inferior_and_thread, wait_ns, wait_as)
5400         (process_stop_reply, remote_notice_new_inferior)
5401         (process_initial_stop_replies, remote_add_thread)
5402         (btrace_sync_conf, remote_btrace_maybe_reopen)
5403         (remove_new_fork_children, kill_new_fork_children)
5404         (discard_pending_stop_replies, stop_reply_queue_length)
5405         (check_pending_events_prevent_wildcard_vcont)
5406         (discard_pending_stop_replies_in_queue, stop_reply)
5407         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
5408         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
5409         (remote_interrupt_as, remote_interrupt_ns)
5410         (remote_get_noisy_reply, remote_query_attached)
5411         (remote_add_inferior, remote_current_thread, get_current_thread)
5412         (set_thread, set_general_thread, set_continue_thread)
5413         (set_general_process, write_ptid)
5414         (remote_unpack_thread_info_response, remote_get_threadinfo)
5415         (parse_threadlist_response, remote_get_threadlist)
5416         (remote_threadlist_iterator, remote_get_threads_with_ql)
5417         (remote_get_threads_with_qxfer)
5418         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
5419         (get_offsets, remote_check_symbols, remote_supported_packet)
5420         (remote_query_supported, remote_packet_size)
5421         (remote_serial_quit_handler, remote_detach_pid)
5422         (remote_vcont_probe, remote_resume_with_hc)
5423         (send_interrupt_sequence, interrupt_query)
5424         (remote_notif_get_pending_events, fetch_register_using_p)
5425         (send_g_packet, process_g_packet, fetch_registers_using_g)
5426         (store_register_using_P, store_registers_using_G)
5427         (set_remote_traceframe, check_binary_download)
5428         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
5429         (remote_xfer_live_readonly_partial, remote_read_bytes)
5430         (remote_send_printf, remote_flash_write, readchar)
5431         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
5432         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
5433         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
5434         (extended_remote_disable_randomization, extended_remote_run)
5435         (send_environment_packet, extended_remote_environment_support)
5436         (extended_remote_set_inferior_cwd, remote_write_qxfer)
5437         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
5438         (packet_command): Now methods of ...
5439         (remote_target): ... this class.
5440         (m_remote_state) <remote_target>: New field.
5441         (struct remote_state) <stop_reply_queue,
5442         remote_async_inferior_event_token, wait_forever_enabled_p>: New
5443         fields.
5444         (remote_state::remote_state): Allocate stop_reply_queue.
5445         (remote_state): Delete global.
5446         (get_remote_state_raw): Delete.
5447         (remote_target::get_remote_state): Allocate m_remote_state on
5448         demand.
5449         (get_current_remote_target): New.
5450         (remote_ops, extended_remote_ops): Delete.
5451         (wait_forever_enabled_p, remote_async_inferior_event_token):
5452         Delete, moved to struct remote_state.
5453         (remote_target::close): Delete self.  Destruction bits split to
5454         ...
5455         (remote_target::~remote_target): ... this.
5456         (show_memory_packet_size): Adjust to use
5457         get_current_remote_target.
5458         (struct protocol_feature) <func>: Add remote_target parameter.
5459         All callers adjusted.
5460         (curr_quit_handler_target): New.
5461         (remote_serial_quit_handler): Reimplement.
5462         (remote_target::open_1): Adjust to use get_current_remote_target.
5463         Heap-allocate remote_target/extended_remote_target instances.
5464         (vcont_builder::vcont_builder): Add remote_target parameter, and
5465         save it in m_remote.  All callers adjusted.
5466         (vcont_builder::m_remote): New field.
5467         (vcont_builder::restart, vcont_builder::flush)
5468         (vcont_builder::push_action): Use it.
5469         (remote_target::commit_resume): Use it.
5470         (struct queue_iter_param) <remote>: New field.
5471         (remote_target::remove_new_fork_children): Fill in 'remote' field.
5472         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
5473         (check_pending_event_prevents_wildcard_vcont_callback)
5474         (remote_target::check_pending_events_prevent_wildcard_vcont)
5475         (remote_target::discard_pending_stop_replies)
5476         (remote_target::discard_pending_stop_replies_in_queue)
5477         (remote_target::remote_notif_remove_queued_reply): Fill in
5478         'remote' field.
5479         (remote_notif_get_pending_events): New.
5480         (remote_target::readchar, remote_target::remote_serial_write):
5481         Save/restore curr_quit_handler_target.
5482         (putpkt): New.
5483         (kill_new_fork_children): Fill in 'remote' field.
5484         (packet_command): Use get_current_remote_target, defer to
5485         remote_target method of same name.
5486         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
5487         parameter, and save it in m_remote.  All callers adjusted.
5488         (scoped_remote_fd::release): Use m_remote.
5489         (scoped_remote_fd::m_remote): New field.
5490         (remote_file_put, remote_file_get, remote_file_delete): Use
5491         get_current_remote_target, defer to remote_target method of same
5492         name.
5493         (remote_btrace_reset): Add remote_state paremeter.  Update all
5494         callers.
5495         (remote_async_inferior_event_handler). Pass down 'data'.
5496         (remote_new_objfile): Use get_current_remote_target.
5497         (remote_target::vcont_r_supported): New.
5498         (set_range_stepping): Use get_current_remote_target and
5499         remote_target::vcont_r_supported.
5500         (_initialize_remote): Don't allocate 'remote_state' and
5501         'stop_reply_queue' globals.
5502         * remote.h (struct remote_target): Forward declare.
5503         (getpkt, putpkt, remote_notif_get_pending_events): Add
5504         'remote_target' parameter.
5505
5506 2018-05-22  Pedro Alves  <palves@redhat.com>
5507
5508         * remote.c (vcont_builder): Now a class.  Make all data members
5509         private.
5510         (vcont_builder) <vcont_builder, restart, flush, push_action>:
5511         Declare methods.
5512         (vcont_builder_restart): Rename to ...
5513         (vcont_builder::restart): ... this.
5514         (vcont_builder_flush): Rename to ...
5515         (vcont_builder::flush): ... this.
5516         (vcont_builder_push_action): Rename to ...
5517         (vcont_builder::push_action): ... this.
5518         (remote_target::commit_resume): Adjust.
5519
5520 2018-05-22  Pedro Alves  <palves@redhat.com>
5521
5522         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
5523         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
5524         (get_fixed_memory_packet_size): New.
5525         (get_memory_packet_size): Use it.
5526         (set_memory_packet_size): Don't override the config size with
5527         DEFAULT_MAX_MEMORY_PACKET_SIZE.
5528         (show_memory_packet_size): Use get_fixed_memory_packet_size.
5529         Don't refer to get_memory_packet_size if not connected to a remote
5530         target.  Show "(default)" if configured size is 0.
5531
5532 2018-05-22  Pedro Alves  <palves@redhat.com>
5533
5534         * remote.c (remote_target::mourn_inferior): Move
5535         discard_pending_stop_replies call here from ...
5536         (_initialize_remote): ... here.
5537
5538 2018-05-22  Pedro Alves  <palves@redhat.com>
5539
5540         * remote.c (compare_section_command): Remove set_general_process
5541         call.
5542
5543 2018-05-22  Pedro Alves  <palves@redhat.com>
5544
5545         * remote.c (struct packet_reg, struct remote_arch_state):
5546         Move higher up in the file.
5547         (remote_state) <m_arch_states>: Store remote_arch_state values
5548         instead of remote_arch_state pointers.
5549         (remote_state::get_remote_arch_state): Adjust.
5550
5551 2018-05-22  Pedro Alves  <palves@redhat.com>
5552
5553         * remote.c: Include <unordered_map>.
5554         (remote_state): Now a class.
5555         (remote_state) <get_remote_arch_state>: Declare method.
5556         <get_remote_arch_state>: New field.
5557         (remote_arch_state) <remote_arch_state>: Declare ctor.
5558         <regs>: Now a unique_ptr.
5559         (remote_gdbarch_data_handle): Delete.
5560         (get_remote_arch_state): Delete.
5561         (remote_state::get_remote_arch_state): New.
5562         (get_remote_state): Adjust to call remote_state's
5563         get_remote_arch_state method.
5564         (init_remote_state): Delete, bits factored out to ...
5565         (remote_arch_state::remote_arch_state): ... this new method.
5566         (get_remote_packet_size, get_memory_packet_size)
5567         (process_g_packet, remote_target::fetch_registers)
5568         (remote_target::prepare_to_store, store_registers_using_G)
5569         (remote_target::store_registers, remote_target::get_trace_status):
5570         Adjust to call remote_state's method.
5571         (_initialize_remote): Remove reference to
5572         remote_gdbarch_data_handle.
5573
5574 2018-05-22  Pedro Alves  <palves@redhat.com>
5575
5576         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
5577         pread>: New method declarations.
5578         (remote_target::open_1): Adjust.
5579         (readahead_cache_invalidate): Rename to ...
5580         (readahead_cache::invalidate): ... this, and adjust to be a class
5581         method.
5582         (readahead_cache_invalidate_fd): Rename to ...
5583         (readahead_cache::invalidate_fd): ... this, and adjust to be a
5584         class method.
5585         (remote_hostio_pwrite): Adjust.
5586         (remote_hostio_pread_from_cache): Rename to ...
5587         (readahead_cache::pread): ... this, and adjust to be a class
5588         method.
5589         (remote_hostio_close): Adjust.
5590
5591 2018-05-22  Pedro Alves  <palves@redhat.com>
5592
5593         * remote.c (remote_hostio_close_cleanup): Delete.
5594         (class scoped_remote_fd): New.
5595         (remote_file_put, remote_file_get): Use it.
5596
5597 2018-05-22  Pedro Alves  <palves@redhat.com>
5598
5599         (struct vCont_action_support): Use bool and initialize all fields.
5600         (struct readahead_cache): Initialize all fields.
5601         (remote_state): Use bool and initialize all fields.
5602         (remote_state::remote_state, remote_state::~remote_state): New.
5603         (new_remote_state): Delete.
5604         (_initialize_remote): Use new to allocate remote_state.
5605
5606 2018-05-22  Pedro Alves  <palves@redhat.com>
5607             張俊芝  <zjz@zjz.name>
5608
5609         PR gdb/22973
5610         * c-exp.y: Include "c-support.h".
5611         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
5612         of tolower.  Use c_ident_is_alpha to scan names.
5613         * c-lang.c: Include "c-support.h".
5614         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
5615         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
5616         * c-support.h: New file, with bits factored out from ...
5617         * cp-name-parser.y: ... this file.
5618         Include "c-support.h".
5619         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
5620         c-support.h and renamed.
5621         (symbol_end, yylex): Adjust.
5622
5623 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
5624
5625         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
5626         parameter type to CORE_ADDR.
5627         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
5628         parameter type in declaration to CORE_ADDR.
5629         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
5630         target_auxv_search to get AT_HWCAP and use the result to get the
5631         target description.
5632         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
5633         to CORE_ADDR. Remove the cast of the return value to unsigned
5634         long. Fix error predicate of target_auxv_search.
5635         (ppc_linux_nat_target::read_description): Change the type of the
5636         hwcap variable to CORE_ADDR.
5637
5638 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
5639
5640         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
5641         if the size of fpscr is larger than 32 bits.
5642
5643 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
5644
5645         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
5646         (ppc32_linux_vsxregmap): New global.
5647         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
5648         regcache_supply_regset, and regcache_collect_regset.
5649         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
5650         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
5651         (fetch_vsx_register, store_vsx_register): Remove.
5652         (fetch_vsx_registers): Add regno parameter. Get regset using
5653         ppc_linux_vsxregset. Use regset to supply registers.
5654         (store_vsx_registers): Add regno parameter. Get regset using
5655         ppc_linux_vsxregset. Use regset to collect registers.
5656         (fetch_register): Call fetch_vsx_registers instead of
5657         fetch_vsx_register.
5658         (store_register): Call store_vsx_registers instead of
5659         store_vsx_register.
5660         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
5661         new regno parameter.
5662         (store_ppc_registers): Call store_vsx_registers with -1 for the
5663         new regno parameter.
5664         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
5665         (ppc_collect_vsxregset): Remove.
5666
5667 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
5668
5669         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
5670         offset fields.
5671         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
5672         for vector register offset fields.
5673         (ppc64_fbsd_reg_offsets): Likewise.
5674         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
5675         to vector register offset fields.
5676         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
5677         to vector register offset fields.
5678         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
5679         vector register offset fields.
5680         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
5681         initializers for vector register offset fields.
5682         (rs6000_aix64_reg_offsets): Likewise.
5683         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
5684         (ppc_supply_vrregset): Remove.
5685         (ppc_collect_vrregset): Remove.
5686         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
5687         (ppc_linux_vrregset) : New function.
5688         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
5689         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
5690         (ppc32_linux_vrregset): Remove.
5691         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
5692         and use result instead of ppc32_linux_vrregset.
5693         (ppc32_linux_reg_offsets): Remove initializers for vector register
5694         offset fields.
5695         (ppc64_linux_reg_offsets): Likewise.
5696         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
5697         * ppc-linux-nat.c: Include regset.h.
5698         (gdb_vrregset_t): Adjust comment to account for little-endian
5699         mode.
5700         (supply_vrregset, fill_vrregset): Remove.
5701         (fetch_altivec_register, store_altivec_register): Remove.
5702         (fetch_altivec_registers): Add regno parameter. Get regset using
5703         ppc_linux_vrregset. Use regset to supply registers.
5704         (store_altivec_registers): Add regno parameter. Get regset using
5705         ppc_linux_vrregset. Use regset to collect registers.
5706         (fetch_register): Call fetch_altivec_registers instead of
5707         fetch_altivec_register.
5708         (store_register): Call store_altivec_registers instead of
5709         store_altivec_register.
5710         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
5711         the new regno parameter.
5712         (store_ppc_registers): Call store_altivec_registers with -1 for
5713         the new regno parameter.
5714
5715 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
5716
5717         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
5718         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
5719         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
5720         (gdb_vrregset_t): Change array type size to
5721         PPC_LINUX_SIZEOF_VRREGSET.
5722         (gdb_vsxregset_t): Change array type size to
5723         PPC_LINUX_SIZEOF_VSXREGSET.
5724         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
5725         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
5726         PPC_LINUX_SIZEOF_VSXREGSET.
5727
5728 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
5729
5730         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
5731         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
5732         nat/ppc-linux.c.
5733         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
5734         ppc_linux_target_wordsize with tid.
5735         (ppc_linux_nat_target::read_description): Call ppc_linux_target
5736         wordsize with tid.
5737         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
5738         (ppc64_64bit_inferior_p): Add static and inline specifiers.
5739         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
5740         tid parameter. Remove static specifier.
5741         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
5742         (ppc_linux_target_wordsize): New declaration.
5743
5744 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
5745
5746         * arch/ppc-linux-common.c: New file.
5747         * arch/ppc-linux-common.h: New file.
5748         * arch/ppc-linux-tdesc.h: New file.
5749         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
5750         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
5751         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
5752         arch/ppc-linux-tdesc.h.
5753         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
5754         arch/ppc-linux-tdesc.h.
5755         (ppc_linux_nat_target::read_description): Remove target
5756         description matching code. Fill a ppc_linux_features struct and
5757         call ppc_linux_match_description with it. Move comment about ISA
5758         2.05 to ppc-linux-common.c.
5759         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
5760         arch/ppc-linux-tdesc.h.
5761         (ppc_linux_core_read_description): Remove target description
5762         matching code. Fill a ppc_linux_features struct and call
5763         ppc_linux_match_description with it.
5764         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
5765         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
5766         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
5767         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
5768         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
5769         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
5770         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
5771         (tdesc_powerpc_e500l): Remove.
5772
5773 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
5774
5775         * ada-lang.c (catch_assert_command): Pass empty string instead
5776         of NULL for excep_string argument.
5777
5778 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
5779
5780         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
5781         the width of the requested register exceeds the width of the
5782         `ptrace' data type.
5783
5784 2018-05-21  Tom Tromey  <tom@tromey.com>
5785
5786         * printcmd.c (output_command): Remove.
5787         (output_command_const): Rename to output_command.
5788         * valprint.h (output_command): Rename from output_command_const.
5789         * tracepoint.c (trace_dump_actions): Call output_command.
5790
5791 2018-05-21  Tom Tromey  <tom@tromey.com>
5792
5793         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
5794         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
5795         * ada-lang.h (create_ada_exception_catchpoint): Update.
5796         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
5797         std::string.
5798         (create_excep_cond_exprs, ~ada_catchpoint)
5799         (should_stop_exception, print_one_exception)
5800         (print_mention_exception, print_recreate_exception): Update.
5801         (ada_get_next_arg): Remove.
5802         (catch_ada_exception_command_split): Use std::string.  Change type
5803         of "excep_string", "cond_string".
5804         (catch_ada_exception_command): Update.
5805         (create_ada_exception_catchpoint): Change type of excep_string.
5806         (ada_exception_sal): Remove excep_string parameter.
5807         (~ada_catchpoint): Remove.
5808
5809 2018-05-21  Tom Tromey  <tom@tromey.com>
5810
5811         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
5812         cleanup.
5813
5814 2018-05-21  Tom Tromey  <tom@tromey.com>
5815
5816         * ada-lang.c (ada_exception_message_1, ada_exception_message):
5817         Return unique_xmalloc_ptr.
5818         (print_it_exception): Update.
5819
5820 2018-05-21  Tom Tromey  <tom@tromey.com>
5821
5822         * tracepoint.c (trace_dump_actions): Use std::string.
5823
5824 2018-05-21  Tom Tromey  <tom@tromey.com>
5825
5826         * symfile.c (reread_symbols): Use std::string for original_name.
5827
5828 2018-05-21  Tom Tromey  <tom@tromey.com>
5829
5830         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
5831         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
5832         constructor.
5833
5834 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
5835
5836         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
5837         instance to...
5838         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
5839         * objfiles.c (get_objfile_bfd_data): Allocate
5840         objfile_per_bfd_storage with obstack_new when allocating on
5841         obstack.
5842
5843 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
5844
5845         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
5846         OBSTACK_ZALLOC.
5847         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
5848         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
5849         * mdebugread.c (mdebug_build_psymtabs): Likewise.
5850         (add_pending): Likewise.
5851         (parse_symbol): Likewise.
5852         (parse_partial_symbols): Likewise.
5853         (psymtab_to_symtab_1): Likewise.
5854         (new_psymtab): Likewise.
5855         (elfmdebug_build_psymtabs): Likewise.
5856         * minsyms.c (terminate_minimal_symbol_table): Likewise.
5857         * objfiles.c (get_objfile_bfd_data): Likewise.
5858         (objfile_register_static_link): Likewise.
5859         * psymtab.c (allocate_psymtab): Likewise.
5860         * stabsread.c (read_member_functions): Likewise.
5861         * xcoffread.c (xcoff_end_psymtab): Likewise.
5862
5863 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
5864
5865         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
5866         compiler supports std::is_trivially_constructible.
5867         * common/poison.h: Include obstack.h.
5868         (IsMallocable): Define to is_trivially_constructible if the
5869         compiler supports it, define to true_type otherwise.
5870         (xobnew): New.
5871         (XOBNEW): Redefine.
5872         (xobnewvec): New.
5873         (XOBNEWVEC): Redefine.
5874         * gdb_obstack.h (obstack_zalloc): New.
5875         (OBSTACK_ZALLOC): Redefine.
5876         (obstack_calloc): New.
5877         (OBSTACK_CALLOC): Redefine.
5878         (obstack_new): New.
5879         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
5880         (gdbarch_obstack): New declaration in gdbarch.h, definition in
5881         gdbarch.c.
5882         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
5883         obstack_calloc/obstack_zalloc.
5884         (gdbarch_obstack_zalloc): Remove.
5885         * target-descriptions.c (tdesc_data_init): Use obstack_new.
5886
5887 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5888
5889         * stack.c (backtrace_command_1): Remove useless variable int i.
5890
5891 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5892
5893         * stack.c (print_frame_info): Fix comment.
5894
5895 2018-05-18  Tom Tromey  <tom@tromey.com>
5896
5897         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
5898         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
5899         (~dwarf2_per_objfile): Update
5900         (dwarf2_get_dwz_file): Use new.
5901         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
5902         unique_ptr.
5903
5904 2018-05-18  Tom Tromey  <tom@tromey.com>
5905
5906         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
5907         unique_ptr.
5908         * dwarf2read.c (struct dwp_file): Add constructor and
5909         initializers.
5910         (open_and_init_dwp_file): Return a unique_ptr.
5911         (dwarf2_per_objfile, create_dwp_hash_table)
5912         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
5913         (lookup_dwo_unit_in_dwp): Update.
5914         (open_and_init_dwp_file, get_dwp_file): Update.
5915
5916 2018-05-18  Tom Tromey  <tom@tromey.com>
5917
5918         * dwarf2read.c (dwarf2_per_objfile): Update.
5919         (struct mapped_index): Add initializers.
5920         (dwarf2_read_index): Use new.
5921         (dw2_symtab_iter_init): Update.
5922         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
5923         unique_ptr.
5924
5925 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
5926
5927         * dwarf2read.c (mapped_index) <total_size>: Remove.
5928
5929 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
5930
5931         * unittests/format_pieces-selftests.c (test_format_specifier):
5932         Add ARI comments.
5933
5934 2018-05-18  Tom Tromey  <tom@tromey.com>
5935
5936         * c-typeprint.c (maybe_print_hole): New function.
5937         (c_print_type_struct_field_offset): Update.
5938         (c_type_print_base_struct_union): Call maybe_print_hole.
5939
5940 2018-05-17  Keith Seitz  <keiths@redhat.com>
5941
5942         * breakpoint.c (build_bpstat_chain): New function, moved from
5943         bpstat_stop_status.
5944         (bpstat_stop_status): Add optional parameter, `stop_chain'.
5945         If no stop chain is passed, call build_bpstat_chain to build it.
5946         * breakpoint.h (build_bpstat_chain): Declare.
5947         (bpstat_stop_status): Move documentation here from breakpoint.c.
5948         * infrun.c (handle_signal_stop): Before eliding inlined frames,
5949         build the stop chain and pass it to skip_inline_frames.
5950         Pass this stop chain to bpstat_stop_status.
5951         * inline-frame.c: Include breakpoint.h.
5952         (stopped_by_user_bp_inline_frame): New function.
5953         (skip_inline_frames): Add parameter `stop_chain'.
5954         Move documention to inline-frame.h.
5955         If non-NULL, use stopped_by_user_bp_inline_frame to determine
5956         whether the frame should be elided.
5957         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
5958         Add moved documentation and update for new parameter.
5959
5960 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
5961
5962         PR cli/14975
5963         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5964         unittests/format_pieces-selftests.c.
5965         * common/format.h (format_piece) <operator==>: New.
5966         (format_pieces) <operator[]>: Remove.
5967         * common/format.c (format_pieces::format_pieces): Handle \e.
5968         * unittests/format_pieces-selftests.c: New.
5969
5970 2018-05-17  Tom Tromey  <tom@tromey.com>
5971
5972         PR symtab/23010:
5973         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
5974         (dw2_instantiate_symtab): Add skip_partial parameter.
5975         (dw2_find_last_source_symtab, dw2_map_expand_apply)
5976         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
5977         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
5978         (dw2_expand_symtabs_matching_one)
5979         (dw2_find_pc_sect_compunit_symtab)
5980         (dw2_debug_names_lookup_symbol)
5981         (dw2_debug_names_expand_symtabs_for_function): Update.
5982         (init_cutu_and_read_dies): Add skip_partial parameter.
5983         (process_psymtab_comp_unit, build_type_psymtabs_1)
5984         (process_skeletonless_type_unit, load_partial_comp_unit)
5985         (psymtab_to_symtab_1): Update.
5986         (load_full_comp_unit): Add skip_partial parameter.
5987         (process_imported_unit_die, dwarf2_read_addr_index)
5988         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
5989         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
5990         (read_signatured_type): Update.
5991
5992 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
5993
5994         * value.c (release_value): Remove unused variable.
5995         (record_latest_value): Likewise.
5996         (access_value_history): Likewise.
5997         (preserve_values): Likewise.
5998
5999 2018-05-17  Tom Tromey  <tom@tromey.com>
6000
6001         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
6002         Initialize.
6003
6004 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
6005
6006         PR gdb/22286
6007         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
6008         Also handle registers whose width is not a multiple of
6009         PTRACE_TYPE_RET.
6010         (linux_nat_trad_target::store_register): Likewise.
6011
6012 2018-05-16  Tom Tromey  <tom@tromey.com>
6013
6014         * gdbcore.h (core_bfd): Redefine.
6015         * corelow.c (core_target::close): Update.
6016         (core_target_open): Update.
6017         * progspace.h (struct program_space) <cbfd>: Now a
6018         gdb_bfd_ref_ptr.
6019
6020 2018-05-16  Tom Tromey  <tom@tromey.com>
6021
6022         PR cli/19551:
6023         * symfile-add-flags.h (enum symfile_add_flags)
6024         <SYMFILE_NOT_FILENAME>: New constant.
6025         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
6026         objfile name from BFD.
6027         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
6028         * minidebug.c (find_separate_debug_file_in_section): Put
6029         ".gnu_debugdata" into BFD's file name.
6030
6031 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
6032
6033         * regcache.c (regcache_read_ftype, regcache_write_ftype):
6034         Remove.
6035
6036 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
6037
6038         PR binutils/21446
6039         * aarch64-tdep.c (aarch64_analyze_prologue,
6040         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
6041         Indicate not interested in errors.
6042
6043 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
6044
6045         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
6046         Supply the MIPS_ZERO_REGNUM register.
6047
6048 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
6049
6050         * mips-tdep.c (mask_address_var): Make variable static.
6051
6052 2018-05-14  Tom Tromey  <tom@tromey.com>
6053
6054         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
6055
6056 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
6057
6058         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
6059         FXSAVE_ADDR for the mxcsr register.
6060
6061 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
6062
6063         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
6064
6065 2018-05-11  Pedro Alves  <palves@redhat.com>
6066
6067         * corelow.c (core_target) <core_target>: No longer inline.
6068         Initialize m_core_gdbarch, m_core_vec and build the section table
6069         here.
6070         <~core_target>: New.
6071         <core_gdbarch, get_core_register_section>: New methods.
6072         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
6073         factored out from ...
6074         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
6075         (core_ops): Delete.
6076         (sniff_core_bfd): Add gdbarch parameter.
6077         (core_close): Delete, merged into ...
6078         (core_target::close): ... here.  Delete self.
6079         (core_close_cleanup): Delete.
6080         (core_target_open): Allocate a core_target on the heap.  Use a
6081         unique_ptr instead of a cleanup.  Bits moved into the core_target
6082         ctor.  Adjust to use core_target methods instead of globals.
6083         (get_core_register_section): Rename to ...
6084         (core_target::get_core_register_section): ... this and adjust.
6085         (struct get_core_registers_cb_data): New.
6086         (get_core_registers_cb): Use it.  Use bool.
6087         (core_target::fetch_registers, core_target::files_info)
6088         (core_target::xfer_partial, core_target::read_description)
6089         (core_target::pid_to, core_target::thread_name): Adjust to
6090         reference class fields instead of globals.
6091         * target.h (struct target_ops_deleter, target_ops_up): New.
6092
6093 2018-05-11  Pedro Alves  <palves@redhat.com>
6094
6095         * corefile.c (core_file_command): Move to corelow.c.
6096         * corelow.c (the_core_target): Delete.
6097         (core_file_command): Moved from corefile.c.  Check exec_bfd
6098         instead of the_core_target.  Use target_detach instead of calling
6099         into the_core_target directly.
6100         (maybe_say_no_core_file_now): New.
6101         (core_target::detach): Use it.
6102         (_initialize_corelow): Remove references to the_core_target.
6103         * gdbcore.h (the_core_target): Delete.
6104
6105 2018-05-11  Tom Tromey  <tromey@redhat.com>
6106             Pedro Alves  <palves@redhat.com>
6107
6108         * corefile.c (core_bfd): Remove.
6109         * gdbcore.h (core_bfd): Now a macro.
6110         * progspace.h (struct program_space) <cbfd>: New field.
6111
6112 2018-05-11  Tom Tromey  <tom@tromey.com>
6113
6114         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
6115         gdb::def_vector.
6116
6117 2018-05-10  Tom Tromey  <tom@tromey.com>
6118
6119         * configure: Rebuild.
6120         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
6121
6122 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
6123
6124         PR server/23158:
6125         * regformats/regdat.sh: Adjust script, following the addition
6126         of the new expedite_regs parameter to init_target_desc.
6127
6128 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
6129     
6130         PR gdb/23127
6131         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
6132         set_gdbarch_significant_addr_bit.
6133         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
6134         set_gdbarch_significant_addr_bit.
6135         * utils.c (address_significant): Update to sign extend addr.
6136
6137 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
6138
6139         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
6140         (xtensa_linux_init_abi): Limit tdep->num_regs by
6141         tdep->num_nopriv_regs.
6142         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
6143         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
6144         not initialized.
6145
6146 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
6147
6148         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
6149
6150 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
6151
6152         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
6153         (I387_MXCSR_INIT_VAL): New constant.
6154         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
6155         buffer if it was supplied by the inferior.
6156         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
6157         (i387_xsave_get_clear_bv): New function.
6158         (i387_supply_xsave): Only read x87 control registers from the
6159         xsave buffer if the feature is enabled, and the state will have
6160         been written, otherwise, provide a suitable default.
6161         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
6162         including x87 control registers.  Update control registers if they
6163         have changed from the default value, and mark features as enabled
6164         as required.
6165         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
6166
6167 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
6168
6169         * spu-tdep.c (info_spu_event_command): Fix output formatting.
6170
6171 2018-05-07  Tom Tromey  <tom@tromey.com>
6172
6173         * configure: Rebuild.
6174         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
6175
6176 2018-05-07  Tom Tromey  <tom@tromey.com>
6177
6178         PR tdep/20362:
6179         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
6180         bit.  Use correct value for VDIV.
6181
6182 2018-05-04  Tom Tromey  <tom@tromey.com>
6183
6184         * configure: Rebuild.
6185         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
6186
6187 2018-05-04  Tom Tromey  <tom@tromey.com>
6188
6189         * linux-record.c (record_linux_system_call) <case
6190         RECORD_SYS_RECVFROM>: Add "break".
6191
6192 2018-05-04  Tom Tromey  <tom@tromey.com>
6193
6194         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
6195         Add missing "break".
6196         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
6197         Add missing "break".
6198
6199 2018-05-04  Tom Tromey  <tom@tromey.com>
6200
6201         * rs6000-tdep.c (ppc_process_record_op4)
6202         (ppc_process_record_op63): Add fall-through comment.
6203
6204 2018-05-04  Tom Tromey  <tom@tromey.com>
6205
6206         * i386-tdep.c (i386_process_record): Add fall-through comment.
6207
6208 2018-05-04  Tom Tromey  <tom@tromey.com>
6209
6210         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
6211         comment.
6212
6213 2018-05-04  Tom Tromey  <tom@tromey.com>
6214
6215         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
6216         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
6217         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
6218         comment.
6219         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
6220         comment.
6221         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
6222         comment.
6223
6224 2018-05-04  Tom Tromey  <tom@tromey.com>
6225
6226         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
6227
6228 2018-05-04  Tom Tromey  <tom@tromey.com>
6229
6230         * s390-tdep.c (s390_process_record): Fix fall-through comments.
6231         * xcoffread.c (scan_xcoff_symtab): Move comment later.
6232         * symfile.c (section_is_mapped): Fix fall-through comment.
6233         * stabsread.c (define_symbol, read_member_functions): Fix
6234         fall-through comment.
6235         * s390-linux-tdep.c (s390_process_record): Fix fall-through
6236         comment.
6237         * remote.c (remote_wait_as): Fix fall-through comment.
6238         * p-exp.y (yylex): Fix fall-through comment.
6239         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
6240         comment.
6241         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
6242         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
6243         * jv-exp.y (yylex): Fix fall-through comment.
6244         * go-exp.y (lex_one_token): Fix fall-through comment.
6245         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
6246         fall-through comment.
6247         * f-exp.y (yylex): Fix fall-through comment.
6248         * dwarf2read.c (process_die): Fix fall-through comments.
6249         * dbxread.c (process_one_symbol): Fix fall-through comment.
6250         * d-exp.y (lex_one_token): Fix fall-through comment.
6251         * cp-name-parser.y (yylex): Fix fall-through comment.
6252         * coffread.c (coff_symtab_read): Fix fall-through comment.
6253         * c-exp.y (lex_one_token): Fix fall-through comment.
6254         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
6255         comment.
6256         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
6257         comment.
6258
6259 2018-05-04  Tom Tromey  <tom@tromey.com>
6260
6261         PR python/22730:
6262         * NEWS: Mention gdb.execute change.
6263         * gdbcmd.h (execute_control_command): Don't declare.
6264         * python/python.c (execute_gdb_command): Use read_command_lines_1,
6265         execute_control_commands, execute_control_commands_to_string.
6266         * cli/cli-script.h (execute_control_commands)
6267         (execute_control_commands_to_string): Declare.
6268         (execute_control_command): Add from_tty parameter.
6269         * cli/cli-script.c (execute_control_commands)
6270         (execute_control_commands_to_string): New functions.
6271         (execute_user_command): Use execute_control_commands.
6272         (execute_control_command_1): Add "from_tty" parameter.  Update.
6273         (execute_control_command): Likewise.
6274
6275 2018-05-04  Tom Tromey  <tom@tromey.com>
6276
6277         PR python/22731:
6278         * NEWS: Mention that breakpoint commands are writable.
6279         * python/py-breakpoint.c (bppy_set_commands): New function.
6280         (breakpoint_object_getset) <"commands">: Use it.
6281
6282 2018-05-04  Tom Tromey  <tom@tromey.com>
6283
6284         * tracepoint.c (actions_command): Update.
6285         * mi/mi-cmd-break.c (mi_command_line_array)
6286         (mi_command_line_array_cnt, mi_command_line_array_ptr)
6287         (mi_read_next_line): Remove.
6288         (mi_cmd_break_commands): Update.
6289         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
6290         function_view.
6291         * cli/cli-script.c (get_command_line): Update.
6292         (process_next_line): Use function_view.  Constify.
6293         (recurse_read_control_structure, read_command_lines)
6294         (read_command_lines_1): Change argument types to function_view.
6295         (do_define_command, document_command): Update.
6296         * breakpoint.h (check_tracepoint_command): Don't declare.
6297         * breakpoint.c (check_tracepoint_command): Remove.
6298         (commands_command_1, create_tracepoint_from_upload): Update.
6299
6300 2018-05-04  Tom Tromey  <tom@tromey.com>
6301
6302         PR gdb/11750:
6303         * cli/cli-script.h (enum command_control_type) <define_control>:
6304         New constant.
6305         * cli/cli-script.c (multi_line_command_p): Handle define_control.
6306         (build_command_line, execute_control_command_1)
6307         (process_next_line): Likewise.
6308         (do_define_command): New function, extracted from define_command.
6309         (define_command): Use it.
6310
6311 2018-05-04  Tom Tromey  <tom@tromey.com>
6312
6313         * tracepoint.c (actions_command): Update.
6314         * cli/cli-script.h (read_command_lines): Update.
6315         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
6316         (MAX_TMPBUF): Remove define.
6317         (define_command): Use string_printf.
6318         (document_command): Likewise.
6319         * breakpoint.c (commands_command_1): Update.
6320
6321 2018-05-04  Tom Tromey  <tom@tromey.com>
6322
6323         * top.c (execute_command): Update.
6324         * cli/cli-script.h (print_command_lines): Now varargs.
6325         * cli/cli-script.c (print_command_lines): Now varargs.
6326         (execute_control_command_1) <case while_control, case if_control>:
6327         Update.
6328
6329 2018-05-04  Tom Tromey  <tom@tromey.com>
6330
6331         * tracepoint.c (all_tracepoint_actions): Rename from
6332         all_tracepoint_actions_and_cleanup.  Change return type.
6333         (actions_command, encode_actions_1, encode_actions)
6334         (trace_dump_actions, tdump_command): Update.
6335         * remote.c (remote_download_command_source): Update.
6336         * python/python.c (gdbpy_eval_from_control_command)
6337         (python_command, python_interactive_command): Update.
6338         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
6339         * guile/guile.c (guile_command)
6340         (gdbscm_eval_from_control_command, guile_command): Update.
6341         * compile/compile.c (compile_code_command)
6342         (compile_print_command, compile_to_object): Update.
6343         * cli/cli-script.h (struct command_lines_deleter): New.
6344         (counted_command_line): New typedef.
6345         (struct command_line): Add constructor, destructor.
6346         <body_list>: Remove.
6347         <body_list_0, body_list_1>: New members.
6348         (command_line_up): Remove typedef.
6349         (read_command_lines, read_command_lines_1, get_command_line):
6350         Update.
6351         (copy_command_lines): Don't declare.
6352         * cli/cli-script.c (build_command_line): Use "new".
6353         (get_command_line): Return counted_command_line.
6354         (print_command_lines, execute_user_command)
6355         (execute_control_command_1, while_command, if_command): Update.
6356         (realloc_body_list): Remove.
6357         (process_next_line, recurse_read_control_structure): Update.
6358         (read_command_lines, read_command_lines_1): Return counted_command_line.
6359         (free_command_lines): Use "delete".
6360         (copy_command_lines): Remove.
6361         (define_command, document_command, show_user_1): Update.
6362         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
6363         a counted_command_line.
6364         * breakpoint.h (counted_command_line): Remove typedef.
6365         (breakpoint_set_commands): Update.
6366         * breakpoint.c (check_no_tracepoint_commands)
6367         (validate_commands_for_breakpoint): Update.
6368         (breakpoint_set_commands): Change commands to be a
6369         counted_command_line.
6370         (commands_command_1, update_dprintf_command_list)
6371         (create_tracepoint_from_upload): Update.
6372
6373 2018-05-04  Tom Tromey  <tom@tromey.com>
6374
6375         * cli/cli-decode.h (cmd_list_element): New constructor.
6376         (~cmd_list_element): New destructor.
6377         (struct cmd_list_element): Add initializers.
6378         * cli/cli-decode.c (do_add_cmd): Use "new".
6379         (delete_cmd): Use "delete".
6380
6381 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
6382             Pedro Alves <palves@redhat.com>
6383
6384         PR breakpoints/19806 and support for PR external/20207.
6385         * NEWS: Mention Aarch64 watchpoint improvements.
6386         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
6387         watchpoints and PR external/20207 watchpoints.
6388         * nat/aarch64-linux-hw-point.c
6389         (kernel_supports_any_contiguous_range): New.
6390         (aarch64_watchpoint_offset): New.
6391         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
6392         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
6393         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
6394         (aarch64_align_watchpoint): New parameters aligned_offset_p and
6395         next_addr_orig_p.  Support PR external/20207 watchpoints.
6396         (aarch64_downgrade_regs): New.
6397         (aarch64_dr_state_insert_one_point): New parameters offset and
6398         addr_orig.
6399         (aarch64_dr_state_remove_one_point): Likewise.
6400         (aarch64_handle_breakpoint): Update caller.
6401         (aarch64_handle_aligned_watchpoint): Likewise.
6402         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
6403         aligned_offset.
6404         (aarch64_linux_set_debug_regs): Remove const from state.  Call
6405         aarch64_downgrade_regs.
6406         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
6407         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
6408         (DR_CONTROL_MASK): ... this.
6409         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
6410         (unsigned int aarch64_watchpoint_offset): New prototype.
6411         (aarch64_linux_set_debug_regs): Remove const from state.
6412         * utils.c (align_up, align_down): Move to ...
6413         * common/common-utils.c (align_up, align_down): ... here.
6414         * utils.h (align_up, align_down): Move to ...
6415         * common/common-utils.h (align_up, align_down): ... here.
6416
6417 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
6418
6419         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
6420         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
6421         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
6422         Re-implement to match the ABI as summarized in GCC's
6423         gcc/config/sparc/sparc.c.  All callers updated.
6424         (sparc32_store_arguments): Remove assertion.
6425
6426 2018-05-04  Tom Tromey  <tom@tromey.com>
6427
6428         * printcmd.c: Don't include tui.h.
6429         (decode_format): Use skip_spaces.
6430
6431 2018-05-04  Tom Tromey  <tom@tromey.com>
6432
6433         PR gdb/22619:
6434         * printcmd.c (last_count): New global.
6435         (x_command): Use saved count when repeating.
6436
6437 2018-05-04  Tom Tromey  <tom@tromey.com>
6438
6439         * nto-procfs.c (do_closedir_cleanup): Remove.
6440         (procfs_pidlist): Use gdb_dir_up.
6441         * procfs.c (do_closedir_cleanup): Remove.
6442         (proc_update_threads): Use gdb_dir_up.
6443         * common/filestuff.h (struct gdb_dir_deleter): New.
6444         (gdb_dir_up): New typedef.
6445
6446 2018-05-04  Tom Tromey  <tom@tromey.com>
6447
6448         * ada-lang.c (print_mention_exception): Use std::string.
6449
6450 2018-05-04  Tom Tromey  <tom@tromey.com>
6451
6452         * ada-lang.c (create_excep_cond_exprs): Update.
6453         (ada_exception_catchpoint_cond_string): Use std::string.
6454
6455 2018-05-04  Tom Tromey  <tom@tromey.com>
6456
6457         * ada-lang.c (xget_renaming_scope): Return std::string.
6458         (old_renaming_is_invisible): Update.
6459
6460 2018-05-04  Tom Tromey  <tom@tromey.com>
6461
6462         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
6463         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
6464
6465 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
6466
6467         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
6468
6469 2018-05-04  Tom Tromey  <tom@tromey.com>
6470
6471         * remote.c (remote_query_supported_append): Change type.
6472         (remote_check_symbols): Update.
6473
6474 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
6475
6476         PR gdb/11420
6477         * configure.ac: Prepend libpython.
6478         * python/python-config.py: Likewise.
6479         * configure: Regenerate.
6480
6481 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
6482
6483         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
6484
6485 2018-05-03  Pedro Alves  <palves@redhat.com>
6486
6487         * s390-linux-nat.c
6488         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
6489         override.  Write 'true' instead of '1'.
6490         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
6491         declaration.
6492
6493 2018-05-02  Pedro Alves  <palves@redhat.com>
6494
6495         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
6496         add_inf_child_target.
6497         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
6498         add_inf_child_target.
6499         * aix-thread.c (aix_thread_target_info): New.
6500         (aix_thread_target) <shortname, longname, doc>: Delete.
6501         <info>: New.
6502         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
6503         add_inf_child_target.
6504         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
6505         add_inf_child_target.
6506         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
6507         add_inf_child_target.
6508         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
6509         add_inf_child_target.
6510         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
6511         add_inf_child_target.
6512         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
6513         add_inf_child_target.
6514         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
6515         add_inf_child_target.
6516         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
6517         add_inf_child_target.
6518         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
6519         add_inf_child_target.
6520         * bfd-target.c (target_bfd_target_info): New.
6521         (target_bfd) <shortname, longname, doc>: Delete.
6522         <info>: New.
6523         * bsd-kvm.c (bsd_kvm_target_info): New.
6524         (bsd_kvm_target) <shortname, longname, doc>: Delete.
6525         <info>: New.
6526         (bsd_kvm_target::open): Rename to ...
6527         (bsd_kvm_target_open): ... this.  Adjust.
6528         * bsd-uthread.c (bsd_uthread_target_info): New.
6529         (bsd_uthread_target) <shortname, longname, doc>: Delete.
6530         <info>: New.
6531         * corefile.c (core_file_command): Adjust.
6532         * corelow.c (core_target_info): New.
6533         (core_target) <shortname, longname, doc>: Delete.
6534         <info>: New.
6535         (core_target::open): Rename to ...
6536         (core_target_open): ... this.  Adjust.
6537         * ctf.c (ctf_target_info): New.
6538         (ctf_target) <shortname, longname, doc>: Delete.
6539         <info>: New.
6540         (ctf_target::open): Rename to ...
6541         (ctf_target_open): ... this.
6542         (_initialize_ctf): Adjust.
6543         * exec.c (exec_target_info): New.
6544         (exec_target) <shortname, longname, doc>: Delete.
6545         <info>: New.
6546         (exec_target::open): Rename to ...
6547         (exec_target_open): ... this.
6548         * gdbcore.h (core_target_open): Declare.
6549         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
6550         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
6551         add_inf_child_target.
6552         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
6553         add_inf_child_target.
6554         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
6555         add_inf_child_target.
6556         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
6557         add_inf_child_target.
6558         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
6559         add_inf_child_target.
6560         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
6561         add_inf_child_target.
6562         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
6563         add_inf_child_target.
6564         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
6565         add_inf_child_target.
6566         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
6567         add_inf_child_target.
6568         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
6569         add_inf_child_target.
6570         * inf-child.c (inf_child_target_info): New.
6571         (inf_child_target::info): New.
6572         (inf_child_open_target): Remove 'target' parameter.  Use
6573         get_native_target instead.
6574         (inf_child_target::open): Delete.
6575         (add_inf_child_target): New.
6576         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
6577         Delete.
6578         <info>: New.
6579         (add_inf_child_target): Declare.
6580         (inf_child_open_target): Declare.
6581         * linux-thread-db.c (thread_db_target_info): New.
6582         (thread_db_target) <shortname, longname, doc>: Delete.
6583         <info>: New.
6584         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
6585         add_inf_child_target.
6586         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
6587         add_inf_child_target.
6588         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
6589         add_inf_child_target.
6590         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
6591         add_inf_child_target.
6592         * make-target-delegates (print_class): Adjust.
6593         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
6594         add_inf_child_target.
6595         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
6596         add_inf_child_target.
6597         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
6598         add_inf_child_target.
6599         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
6600         add_inf_child_target.
6601         * nto-procfs.c (nto_native_target_info): New.
6602         (nto_procfs_target_native) <shortname, longname, doc>:
6603         Delete.
6604         <info>: New.
6605         (nto_procfs_target_info): New.
6606         (nto_procfs_target_procfs) <shortname, longname, doc>:
6607         Delete.
6608         <info>: New.
6609         (init_procfs_targets): Adjust.
6610         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
6611         add_inf_child_target.
6612         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
6613         add_inf_child_target.
6614         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
6615         add_inf_child_target.
6616         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
6617         add_inf_child_target.
6618         * ravenscar-thread.c (ravenscar_target_info): New.
6619         (ravenscar_thread_target) <shortname, longname, doc>:
6620         Delete.
6621         <info>: New.
6622         * record-btrace.c (record_btrace_target_info):
6623         (record_btrace_target) <shortname, longname, doc>: Delete.
6624         <info>: New.
6625         (record_btrace_target::open): Rename to ...
6626         (record_btrace_target_open): ... this.  Adjust.
6627         * record-full.c (record_longname, record_doc): New.
6628         (record_full_base_target) <shortname, longname, doc>: Delete.
6629         <info>: New.
6630         (record_full_target_info): New.
6631         (record_full_target): <shortname>: Delete.
6632         <info>: New.
6633         (record_full_core_open_1, record_full_open_1): Update comments.
6634         (record_full_base_target::open): Rename to ...
6635         (record_full_open): ... this.
6636         (cmd_record_full_restore): Update.
6637         (_initialize_record_full): Update.
6638         * remote-sim.c (remote_sim_target_info): New.
6639         (gdbsim_target) <shortname, longname, doc>: Delete.
6640         <info>: New.
6641         (gdbsim_target::open): Rename to ...
6642         (gdbsim_target_open): ... this.
6643         (_initialize_remote_sim): Adjust.
6644         * remote.c (remote_doc): New.
6645         (remote_target_info): New.
6646         (remote_target) <shortname, longname, doc>: Delete.
6647         <info>: New.
6648         (extended_remote_target_info): New.
6649         (extended_remote_target) <shortname, longname, doc>: Delete.
6650         <info>: New.
6651         (remote_target::open_1): Make static.  Adjust.
6652         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
6653         * s390-linux-nat.c (_initialize_s390_nat): Use
6654         add_inf_child_target.
6655         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
6656         add_inf_child_target.
6657         * sol-thread.c (thread_db_target_info): New.
6658         (sol_thread_target) <shortname, longname, doc>: Delete.
6659         <info>: New.
6660         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
6661         add_inf_child_target.
6662         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
6663         add_inf_child_target.
6664         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
6665         add_inf_child_target.
6666         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
6667         add_inf_child_target.
6668         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
6669         add_inf_child_target.
6670         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
6671         add_inf_child_target.
6672         * spu-linux-nat.c (_initialize_spu_nat): Use
6673         add_inf_child_target.
6674         * spu-multiarch.c (spu_multiarch_target_info): New.
6675         (spu_multiarch_target) <shortname, longname, doc>: Delete.
6676         <info>: New.
6677         * target-delegates.c: Regenerate.
6678         * target.c: Include <unordered_map>.
6679         (target_ops_p): Delete.
6680         (DEF_VEC_P(target_ops_p)): Delete.
6681         (target_factories): New.
6682         (test_target_info): New.
6683         (test_target_ops::info): New.
6684         (open_target): Adjust to use target_factories.
6685         (add_target_with_completer): Rename to ...
6686         (add_target): ... this.  Change prototype.  Register target_info
6687         and open callback in target_factories.  Register target_info in
6688         command context instead of target_ops.
6689         (add_target): Delete old implementation.
6690         (add_deprecated_target_alias): Change prototype.  Adjust.
6691         (the_native_target): New.
6692         (set_native_target, get_native_target): New.
6693         (find_default_run_target): Use the_native_target.
6694         (find_attach_target, find_run_target): Simplify.
6695         (target_ops::open): Delete.
6696         (dummy_target_info): New.
6697         (dummy_target::shortname, dummy_target::longname)
6698         (dummy_target::doc): Delete.
6699         (dummy_target::info): New.
6700         (debug_target::shortname, debug_target::longname)
6701         (debug_target::doc): Delete.
6702         (debug_target::info): New.
6703         * target.h (struct target_info): New.
6704         (target_ops::~target_ops): Add comment.
6705         (target_ops::info): New.
6706         (target_ops::shortname, target_ops::longname, target_ops::doc): No
6707         longer virtual.  Implement in terms of target_info.
6708         (set_native_target, get_native_target): Declare.
6709         (target_open_ftype): New.
6710         (add_target, add_target_with_completer)
6711         (add_deprecated_target_alias): Change prototype.
6712         (test_target) <shortname, longname, doc>: Delete.
6713         <info>: New.
6714         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
6715         add_inf_child_target.
6716         * tracefile-tfile.c (tfile_target_info): New.
6717         (tfile_target) <shortname, longname, doc>: Delete.
6718         <info>: New.
6719         (tfile_target::open): Rename to ...
6720         (tfile_target_open): ... this.
6721         (_initialize_tracefile_tfile): Adjust.
6722         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
6723         add_inf_child_target.
6724         * windows-nat.c (_initialize_windows_nat): Use
6725         add_inf_child_target.
6726         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
6727         add_inf_child_target.
6728
6729 2018-05-02  Pedro Alves  <palves@redhat.com>
6730
6731         * linux-nat.h (linux_nat_target) <low_new_thread,
6732         low_delete_thread, low_new_fork, low_forget_process,
6733         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
6734         New virtual methods.
6735         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
6736         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
6737         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
6738         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
6739         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
6740         Delete.
6741         * linux-fork.c (delete_fork): Adjust to call low method.
6742         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
6743         (linux_nat_new_fork, linux_nat_forget_process_hook)
6744         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
6745         (linux_nat_status_is_event):
6746         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
6747         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
6748         to call low method.
6749         (sigtrap_is_event): Rename to ...
6750         (linux_nat_target::low_status_is_event): ... this.
6751         (linux_nat_set_status_is_event): Delete.
6752         (save_stop_reason, linux_nat_wait_1)
6753         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
6754         low methods.
6755         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
6756         (linux_nat_set_new_fork, linux_nat_set_forget_process)
6757         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
6758         (linux_nat_set_prepare_to_resume): Delete.
6759         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
6760         low virtual methods.
6761         * amd64-linux-nat.c: Likewise.
6762         * arm-linux-nat.c: Likewise.
6763         * i386-linux-nat.c: Likewise.
6764         * ia64-linux-nat.c: Likewise.
6765         * mips-linux-nat.c: Likewise.
6766         * ppc-linux-nat.c: Likewise.
6767         * s390-linux-nat.c: Likewise.
6768         * sparc64-linux-nat.c: Likewise.
6769         * x86-linux-nat.c: Likewise.
6770         * x86-linux-nat.h: Include "nat/x86-linux.h".
6771         (x86_linux_nat_target) <low_new_fork, low_forget_process,
6772         low_prepare_to_resume, low_new_thread, low_delete_thread>:
6773         Override methods.
6774
6775 2018-05-02  Pedro Alves  <palves@redhat.com>
6776
6777         * target.h (target_ops)
6778         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
6779         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
6780         stopped_by_watchpoint, have_continuable_watchpoint,
6781         stopped_data_address, watchpoint_addr_within_range,
6782         can_accel_watchpoint_condition, can_run, thread_alive,
6783         has_all_memory, has_memory, has_stack, has_registers,
6784         has_execution, can_async_p, is_async_p, supports_non_stop,
6785         always_non_stop_p, can_execute_reverse, supports_multi_process,
6786         supports_enable_disable_tracepoint,
6787         supports_disable_randomization, supports_string_tracing,
6788         supports_evaluation_of_breakpoint_conditions,
6789         can_run_breakpoint_commands, filesystem_is_local,
6790         can_download_tracepoint, get_trace_state_variable_value,
6791         set_trace_notes, get_tib_address, use_agent, can_use_agent,
6792         record_is_replaying, record_will_replay,
6793         augmented_libraries_svr4_read>: Adjust to return bool.
6794         * aarch64-linux-nat.c: All implementations adjusted.
6795         * aix-thread.c: All implementations adjusted.
6796         * arm-linux-nat.c: All implementations adjusted.
6797         * breakpoint.c: All implementations adjusted.
6798         * bsd-kvm.c: All implementations adjusted.
6799         * bsd-uthread.c: All implementations adjusted.
6800         * corelow.c: All implementations adjusted.
6801         * ctf.c: All implementations adjusted.
6802         * darwin-nat.c: All implementations adjusted.
6803         * darwin-nat.h: All implementations adjusted.
6804         * exec.c: All implementations adjusted.
6805         * fbsd-nat.c: All implementations adjusted.
6806         * fbsd-nat.h: All implementations adjusted.
6807         * gnu-nat.c: All implementations adjusted.
6808         * gnu-nat.h: All implementations adjusted.
6809         * go32-nat.c: All implementations adjusted.
6810         * ia64-linux-nat.c: All implementations adjusted.
6811         * inf-child.c: All implementations adjusted.
6812         * inf-child.h: All implementations adjusted.
6813         * inf-ptrace.c: All implementations adjusted.
6814         * inf-ptrace.h: All implementations adjusted.
6815         * linux-nat.c: All implementations adjusted.
6816         * linux-nat.h: All implementations adjusted.
6817         * mips-linux-nat.c: All implementations adjusted.
6818         * nto-procfs.c: All implementations adjusted.
6819         * ppc-linux-nat.c: All implementations adjusted.
6820         * procfs.c: All implementations adjusted.
6821         * ravenscar-thread.c: All implementations adjusted.
6822         * record-btrace.c: All implementations adjusted.
6823         * record-full.c: All implementations adjusted.
6824         * remote-sim.c: All implementations adjusted.
6825         * remote.c: All implementations adjusted.
6826         * s390-linux-nat.c: All implementations adjusted.
6827         * sol-thread.c: All implementations adjusted.
6828         * spu-multiarch.c: All implementations adjusted.
6829         * target-delegates.c: All implementations adjusted.
6830         * target.c: All implementations adjusted.
6831         * target.h: All implementations adjusted.
6832         * tracefile-tfile.c: All implementations adjusted.
6833         * tracefile.c: All implementations adjusted.
6834         * tracefile.h: All implementations adjusted.
6835         * windows-nat.c: All implementations adjusted.
6836         * x86-linux-nat.h: All implementations adjusted.
6837         * x86-nat.h: All implementations adjusted.
6838
6839 2018-05-02  Pedro Alves  <palves@redhat.com>
6840
6841         * make-target-delegates (scan_target_h): Don't trim lines here.
6842         Replace sequences of tabs and/or whitespace with a single
6843         whitespace.
6844         (top level, parsing methods): Trim each line before processing it
6845         here.
6846
6847 2018-05-02  Pedro Alves  <palves@redhat.com>
6848             John Baldwin  <jhb@freebsd.org>
6849
6850         * target.h (enum strata) <debug_stratum>: New.
6851         (struct target_ops) <all delegation methods>: Replace by C++
6852         virtual methods, and drop "to_" prefix.  All references updated
6853         throughout.
6854         <to_shortname, to_longname, to_doc, to_data,
6855         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
6856         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
6857         virtual methods.  All references updated throughout.
6858         <can_attach, supports_terminal_ours, can_create_inferior,
6859         get_thread_control_capabilities, attach_no_wait>: New
6860         virtual methods.
6861         <insert_breakpoint, remove_breakpoint>: Now
6862         TARGET_DEFAULT_NORETURN methods.
6863         <info_proc>: Now returns bool.
6864         <to_magic>: Delete.
6865         (OPS_MAGIC): Delete.
6866         (current_target): Delete.  All references replaced by references
6867         to ...
6868         (target_stack): ... this.  New.
6869         (target_shortname, target_longname): Adjust.
6870         (target_can_run): Now a function declaration.
6871         (default_child_has_all_memory, default_child_has_memory)
6872         (default_child_has_stack, default_child_has_registers)
6873         (default_child_has_execution): Remove target_ops parameter.
6874         (complete_target_initialization): Delete.
6875         (memory_breakpoint_target): New template class.
6876         (test_target_ops): Refactor as a C++ class with virtual methods.
6877         * make-target-delegates (NAME_PART): Tighten.
6878         (POINTER_PART, CP_SYMBOL): New.
6879         (SIMPLE_RETURN_PART): Reimplement.
6880         (VEC_RETURN_PART): Expect less.
6881         (RETURN_PART, VIRTUAL_PART): New.
6882         (METHOD): Adjust to C++ virtual methods.
6883         (scan_target_h): Remove reference to C99.
6884         (dname): Output "target_ops::" prefix.
6885         (write_function_header): Adjust to output a C++ class method.
6886         (write_declaration): New.
6887         (write_delegator): Adjust to output a C++ class method.
6888         (tdname): Output "dummy_target::" prefix.
6889         (write_tdefault, write_debugmethod): Adjust to output a C++ class
6890         method.
6891         (tdefault_names, debug_names): Delete.
6892         (return_types, tdefaults, styles, argtypes_array): New.
6893         (top level): All methods are delegators.
6894         (print_class): New.
6895         (top level): Print dummy_target and debug_target classes.
6896         * target-delegates.c: Regenerate.
6897         * target-debug.h (target_debug_print_enum_info_proc_what)
6898         (target_debug_print_thread_control_capabilities)
6899         (target_debug_print_thread_info_p): New.
6900         * target.c (dummy_target): Delete.
6901         (the_dummy_target, the_debug_target): New.
6902         (target_stack): Now extern.
6903         (set_targetdebug): Push/unpush debug target.
6904         (default_child_has_all_memory, default_child_has_memory)
6905         (default_child_has_stack, default_child_has_registers)
6906         (default_child_has_execution): Remove target_ops parameter.
6907         (complete_target_initialization): Delete.
6908         (add_target_with_completer): No longer call
6909         complete_target_initialization.
6910         (target_supports_terminal_ours): Use regular delegation.
6911         (update_current_target): Delete.
6912         (push_target): No longer check magic number.  Don't call
6913         update_current_target.
6914         (unpush_target): Don't call update_current_target.
6915         (target_is_pushed): No longer check magic number.
6916         (target_require_runnable): Skip for all stratums over
6917         process_stratum.
6918         (target_ops::info_proc): New.
6919         (target_info_proc): Use find_target_at and
6920         find_default_run_target.
6921         (target_supports_disable_randomization): Use regular delegation.
6922         (target_get_osdata): Use find_target_at.
6923         (target_ops::open, target_ops::close, target_ops::can_attach)
6924         (target_ops::attach, target_ops::can_create_inferior)
6925         (target_ops::create_inferior, target_ops::can_run)
6926         (target_can_run): New.
6927         (default_fileio_target): Use regular delegation.
6928         (target_ops::fileio_open, target_ops::fileio_pwrite)
6929         (target_ops::fileio_pread, target_ops::fileio_fstat)
6930         (target_ops::fileio_close, target_ops::fileio_unlink)
6931         (target_ops::fileio_readlink): New.
6932         (target_fileio_open_1, target_fileio_unlink)
6933         (target_fileio_readlink): Always call the target method.  Handle
6934         FILEIO_ENOSYS.
6935         (return_zero, return_zero_has_execution): Delete.
6936         (init_dummy_target): Delete.
6937         (dummy_target::dummy_target, dummy_target::shortname)
6938         (dummy_target::longname, dummy_target::doc)
6939         (debug_target::debug_target, debug_target::shortname)
6940         (debug_target::longname, debug_target::doc): New.
6941         (target_supports_delete_record): Use regular delegation.
6942         (setup_target_debug): Delete.
6943         (maintenance_print_target_stack): Skip debug_stratum.
6944         (initialize_targets): Instantiate the_dummy_target and
6945         the_debug_target.
6946         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
6947         use target_stack.
6948         (target_auxv_search, fprint_target_auxv): Adjust.
6949         (info_auxv_command): Adjust to use target_stack.
6950         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
6951         * exceptions.c (print_flush): Handle a NULL target_stack.
6952         * regcache.c (target_ops_no_register): Refactor as class with
6953         virtual methods.
6954
6955         * exec.c (exec_target): New class.
6956         (exec_ops): Now an exec_target.
6957         (exec_open, exec_close_1, exec_get_section_table)
6958         (exec_xfer_partial, exec_files_info, exec_has_memory)
6959         (exec_make_note_section): Refactor as exec_target methods.
6960         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
6961         Delete.
6962         (exec_target::find_memory_regions): New.
6963         (_initialize_exec): Don't call init_exec_ops.
6964         * gdbcore.h (exec_file_clear): Delete.
6965
6966         * corefile.c (core_target): Delete.
6967         (core_file_command): Adjust.
6968         * corelow.c (core_target): New class.
6969         (the_core_target): New.
6970         (core_close): Remove target_ops parameter.
6971         (core_close_cleanup): Adjust.
6972         (core_target::close): New.
6973         (core_open, core_detach, get_core_registers, core_files_info)
6974         (core_xfer_partial, core_thread_alive, core_read_description)
6975         (core_pid_to_str, core_thread_name, core_has_memory)
6976         (core_has_stack, core_has_registers, core_info_proc): Rework as
6977         core_target methods.
6978         (ignore, core_remove_breakpoint, init_core_ops): Delete.
6979         (_initialize_corelow): Initialize the_core_target.
6980         * gdbcore.h (core_target): Delete.
6981         (the_core_target): New.
6982
6983         * ctf.c: (ctf_target): New class.
6984         (ctf_ops): Now a ctf_target.
6985         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
6986         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
6987         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
6988         methods.
6989         (init_ctf_ops): Delete.
6990         (_initialize_ctf): Don't call it.
6991         * tracefile-tfile.c (tfile_target): New class.
6992         (tfile_ops): Now a tfile_target.
6993         (tfile_open, tfile_close, tfile_files_info)
6994         (tfile_get_tracepoint_status, tfile_trace_find)
6995         (tfile_fetch_registers, tfile_xfer_partial)
6996         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
6997         Refactor as tfile_target methods.
6998         (tfile_xfer_partial_features): Remove target_ops parameter.
6999         (init_tfile_ops): Delete.
7000         (_initialize_tracefile_tfile): Don't call it.
7001         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
7002         (tracefile_has_stack, tracefile_has_registers)
7003         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
7004         tracefile_target methods.
7005         (init_tracefile_ops): Delete.
7006         (tracefile_target::tracefile_target): New.
7007         * tracefile.h: Include "target.h".
7008         (tracefile_target): New class.
7009         (init_tracefile_ops): Delete.
7010
7011         * spu-multiarch.c (spu_multiarch_target): New class.
7012         (spu_ops): Now a spu_multiarch_target.
7013         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
7014         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
7015         (spu_search_memory, spu_mourn_inferior): Refactor as
7016         spu_multiarch_target methods.
7017         (init_spu_ops): Delete.
7018         (_initialize_spu_multiarch): Remove references to init_spu_ops,
7019         complete_target_initialization.
7020
7021         * ravenscar-thread.c (ravenscar_thread_target): New class.
7022         (ravenscar_ops): Now a ravenscar_thread_target.
7023         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
7024         (ravenscar_thread_alive, ravenscar_pid_to_str)
7025         (ravenscar_fetch_registers, ravenscar_store_registers)
7026         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
7027         (ravenscar_stopped_by_hw_breakpoint)
7028         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
7029         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
7030         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
7031         methods.
7032         (init_ravenscar_thread_ops): Delete.
7033         (_initialize_ravenscar): Remove references to
7034         init_ravenscar_thread_ops and complete_target_initialization.
7035
7036         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
7037         (bsd_uthread_target): New class.
7038         (bsd_uthread_ops): Now a bsd_uthread_target.
7039         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
7040         (bsd_uthread_close, bsd_uthread_mourn_inferior)
7041         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
7042         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
7043         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
7044         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
7045         (bsd_uthread_target): Delete function.
7046         (_initialize_bsd_uthread): Remove reference to
7047         complete_target_initialization.
7048
7049         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
7050         (target_bfd): ... this new class.
7051         (target_bfd_xfer_partial, target_bfd_get_section_table)
7052         (target_bfd_close): Refactor as target_bfd methods.
7053         (target_bfd::~target_bfd): New.
7054         (target_bfd_reopen): Adjust.
7055         (target_bfd::close): New.
7056
7057         * record-btrace.c (record_btrace_target): New class.
7058         (record_btrace_ops): Now a record_btrace_target.
7059         (record_btrace_open, record_btrace_stop_recording)
7060         (record_btrace_disconnect, record_btrace_close)
7061         (record_btrace_async, record_btrace_info)
7062         (record_btrace_insn_history, record_btrace_insn_history_range)
7063         (record_btrace_insn_history_from, record_btrace_call_history)
7064         (record_btrace_call_history_range)
7065         (record_btrace_call_history_from, record_btrace_record_method)
7066         (record_btrace_is_replaying, record_btrace_will_replay)
7067         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
7068         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
7069         (record_btrace_store_registers, record_btrace_prepare_to_store)
7070         (record_btrace_to_get_unwinder)
7071         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
7072         (record_btrace_commit_resume, record_btrace_wait)
7073         (record_btrace_stop, record_btrace_can_execute_reverse)
7074         (record_btrace_stopped_by_sw_breakpoint)
7075         (record_btrace_supports_stopped_by_sw_breakpoint)
7076         (record_btrace_stopped_by_hw_breakpoint)
7077         (record_btrace_supports_stopped_by_hw_breakpoint)
7078         (record_btrace_update_thread_list, record_btrace_thread_alive)
7079         (record_btrace_goto_begin, record_btrace_goto_end)
7080         (record_btrace_goto, record_btrace_stop_replaying_all)
7081         (record_btrace_execution_direction)
7082         (record_btrace_prepare_to_generate_core)
7083         (record_btrace_done_generating_core): Refactor as
7084         record_btrace_target methods.
7085         (init_record_btrace_ops): Delete.
7086         (_initialize_record_btrace): Remove reference to
7087         init_record_btrace_ops.
7088         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
7089         the execution_direction global.
7090         (record_full_base_target, record_full_target)
7091         (record_full_core_target): New classes.
7092         (record_full_ops): Now a record_full_target.
7093         (record_full_core_ops): Now a record_full_core_target.
7094         (record_full_target::detach, record_full_target::disconnect)
7095         (record_full_core_target::disconnect)
7096         (record_full_target::mourn_inferior, record_full_target::kill):
7097         New.
7098         (record_full_open, record_full_close, record_full_async): Refactor
7099         as methods of the record_full_base_target class.
7100         (record_full_resume, record_full_commit_resume): Refactor
7101         as methods of the record_full_target class.
7102         (record_full_wait, record_full_stopped_by_watchpoint)
7103         (record_full_stopped_data_address)
7104         (record_full_stopped_by_sw_breakpoint)
7105         (record_full_supports_stopped_by_sw_breakpoint)
7106         (record_full_stopped_by_hw_breakpoint)
7107         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
7108         methods of the record_full_base_target class.
7109         (record_full_store_registers, record_full_xfer_partial)
7110         (record_full_insert_breakpoint, record_full_remove_breakpoint):
7111         Refactor as methods of the record_full_target class.
7112         (record_full_can_execute_reverse, record_full_get_bookmark)
7113         (record_full_goto_bookmark, record_full_execution_direction)
7114         (record_full_record_method, record_full_info, record_full_delete)
7115         (record_full_is_replaying, record_full_will_replay)
7116         (record_full_goto_begin, record_full_goto_end, record_full_goto)
7117         (record_full_stop_replaying): Refactor as methods of the
7118         record_full_base_target class.
7119         (record_full_core_resume, record_full_core_kill)
7120         (record_full_core_fetch_registers)
7121         (record_full_core_prepare_to_store)
7122         (record_full_core_store_registers, record_full_core_xfer_partial)
7123         (record_full_core_insert_breakpoint)
7124         (record_full_core_remove_breakpoint)
7125         (record_full_core_has_execution): Refactor
7126         as methods of the record_full_core_target class.
7127         (record_full_base_target::supports_delete_record): New.
7128         (init_record_full_ops): Delete.
7129         (init_record_full_core_ops): Delete.
7130         (record_full_save): Refactor as method of the
7131         record_full_base_target class.
7132         (_initialize_record_full): Remove references to
7133         init_record_full_ops and init_record_full_core_ops.
7134
7135         * remote.c (remote_target, extended_remote_target): New classes.
7136         (remote_ops): Now a remote_target.
7137         (extended_remote_ops): Now an extended_remote_target.
7138         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
7139         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
7140         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
7141         (remote_pass_signals, remote_set_syscall_catchpoint)
7142         (remote_program_signals, )
7143         (remote_thread_always_alive): Remove target_ops parameter.
7144         (remote_thread_alive, remote_thread_name)
7145         (remote_update_thread_list, remote_threads_extra_info)
7146         (remote_static_tracepoint_marker_at)
7147         (remote_static_tracepoint_markers_by_strid)
7148         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
7149         (remote_open): Refactor as methods of remote_target.
7150         (extended_remote_open, extended_remote_detach)
7151         (extended_remote_attach, extended_remote_post_attach):
7152         (extended_remote_supports_disable_randomization)
7153         (extended_remote_create_inferior): : Refactor as method of
7154         extended_remote_target.
7155         (remote_set_permissions, remote_open_1, remote_detach)
7156         (remote_follow_fork, remote_follow_exec, remote_disconnect)
7157         (remote_resume, remote_commit_resume, remote_stop)
7158         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
7159         (remote_terminal_ours, remote_wait, remote_fetch_registers)
7160         (remote_prepare_to_store, remote_store_registers)
7161         (remote_flash_erase, remote_flash_done, remote_files_info)
7162         (remote_kill, remote_mourn, remote_insert_breakpoint)
7163         (remote_remove_breakpoint, remote_insert_watchpoint)
7164         (remote_watchpoint_addr_within_range)
7165         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
7166         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
7167         (remote_supports_stopped_by_sw_breakpoint)
7168         (remote_stopped_by_hw_breakpoint)
7169         (remote_supports_stopped_by_hw_breakpoint)
7170         (remote_stopped_by_watchpoint, remote_stopped_data_address)
7171         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
7172         (remote_verify_memory): Refactor as methods of remote_target.
7173         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
7174         parameter.
7175         (remote_xfer_partial, remote_get_memory_xfer_limit)
7176         (remote_search_memory, remote_rcmd, remote_memory_map)
7177         (remote_pid_to_str, remote_get_thread_local_address)
7178         (remote_get_tib_address, remote_read_description): Refactor as
7179         methods of remote_target.
7180         (remote_target::fileio_open, remote_target::fileio_pwrite)
7181         (remote_target::fileio_pread, remote_target::fileio_close): New.
7182         (remote_hostio_readlink, remote_hostio_fstat)
7183         (remote_filesystem_is_local, remote_can_execute_reverse)
7184         (remote_supports_non_stop, remote_supports_disable_randomization)
7185         (remote_supports_multi_process, remote_supports_cond_breakpoints)
7186         (remote_supports_enable_disable_tracepoint)
7187         (remote_supports_string_tracing)
7188         (remote_can_run_breakpoint_commands, remote_trace_init)
7189         (remote_download_tracepoint, remote_can_download_tracepoint)
7190         (remote_download_trace_state_variable, remote_enable_tracepoint)
7191         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
7192         (remote_trace_start, remote_get_trace_status)
7193         (remote_get_tracepoint_status, remote_trace_stop)
7194         (remote_trace_find, remote_get_trace_state_variable_value)
7195         (remote_save_trace_data, remote_get_raw_trace_data)
7196         (remote_set_disconnected_tracing, remote_core_of_thread)
7197         (remote_set_circular_trace_buffer, remote_traceframe_info)
7198         (remote_get_min_fast_tracepoint_insn_len)
7199         (remote_set_trace_buffer_size, remote_set_trace_notes)
7200         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
7201         (remote_disable_btrace, remote_teardown_btrace)
7202         (remote_read_btrace, remote_btrace_conf)
7203         (remote_augmented_libraries_svr4_read, remote_load)
7204         (remote_pid_to_exec_file, remote_can_do_single_step)
7205         (remote_execution_direction, remote_thread_handle_to_thread_info):
7206         Refactor as methods of remote_target.
7207         (init_remote_ops, init_extended_remote_ops): Delete.
7208         (remote_can_async_p, remote_is_async_p, remote_async)
7209         (remote_thread_events, remote_upload_tracepoints)
7210         (remote_upload_trace_state_variables): Refactor as methods of
7211         remote_target.
7212         (_initialize_remote): Remove references to init_remote_ops and
7213         init_extended_remote_ops.
7214
7215         * remote-sim.c (gdbsim_target): New class.
7216         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
7217         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
7218         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
7219         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
7220         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
7221         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
7222         Refactor as methods of gdbsim_target.
7223         (gdbsim_ops): Now a gdbsim_target.
7224         (init_gdbsim_ops): Delete.
7225         (gdbsim_cntrl_c): Adjust.
7226         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
7227
7228         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
7229         (the_amd64_linux_nat_target): New.
7230         (amd64_linux_fetch_inferior_registers)
7231         (amd64_linux_store_inferior_registers): Refactor as methods of
7232         amd64_linux_nat_target.
7233         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
7234         * i386-linux-nat.c: Don't include "linux-nat.h".
7235         (i386_linux_nat_target): New class.
7236         (the_i386_linux_nat_target): New.
7237         (i386_linux_fetch_inferior_registers)
7238         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
7239         as methods of i386_linux_nat_target.
7240         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
7241         * inf-child.c (inf_child_ops): Delete.
7242         (inf_child_fetch_inferior_registers)
7243         (inf_child_store_inferior_registers): Delete.
7244         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
7245         methods of inf_child_target.
7246         (inf_child_target::supports_terminal_ours)
7247         (inf_child_target::terminal_init)
7248         (inf_child_target::terminal_inferior)
7249         (inf_child_target::terminal_ours_for_output)
7250         (inf_child_target::terminal_ours, inf_child_target::interrupt)
7251         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
7252         New.
7253         (inf_child_open, inf_child_disconnect, inf_child_close)
7254         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
7255         (inf_child_post_startup_inferior, inf_child_can_run)
7256         (inf_child_pid_to_exec_file): Refactor as methods of
7257         inf_child_target.
7258         (inf_child_follow_fork): Delete.
7259         (inf_child_target::can_create_inferior)
7260         (inf_child_target::can_attach): New.
7261         (inf_child_target::has_all_memory, inf_child_target::has_memory)
7262         (inf_child_target::has_stack, inf_child_target::has_registers)
7263         (inf_child_target::has_execution): New.
7264         (inf_child_fileio_open, inf_child_fileio_pwrite)
7265         (inf_child_fileio_pread, inf_child_fileio_fstat)
7266         (inf_child_fileio_close, inf_child_fileio_unlink)
7267         (inf_child_fileio_readlink, inf_child_use_agent)
7268         (inf_child_can_use_agent): Refactor as methods of
7269         inf_child_target.
7270         (return_zero, inf_child_target): Delete.
7271         (inf_child_target::inf_child_target): New.
7272         * inf-child.h: Include "target.h".
7273         (inf_child_target): Delete function prototype.
7274         (inf_child_target): New class.
7275         (inf_child_open_target, inf_child_mourn_inferior)
7276         (inf_child_maybe_unpush_target): Delete.
7277         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
7278         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
7279         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
7280         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
7281         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
7282         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
7283         (inf_ptrace_wait, inf_ptrace_xfer_partial)
7284         (inf_ptrace_thread_alive, inf_ptrace_files_info)
7285         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
7286         methods of inf_ptrace_target.
7287         (inf_ptrace_target): Delete function.
7288         * inf-ptrace.h: Include "inf-child.h".
7289         (inf_ptrace_target): Delete function declaration.
7290         (inf_ptrace_target): New class.
7291         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
7292         * linux-nat.c (linux_target): New.
7293         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
7294         (linux_nat_target::~linux_nat_target): New.
7295         (linux_child_post_attach, linux_child_post_startup_inferior)
7296         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
7297         (linux_child_remove_fork_catchpoint)
7298         (linux_child_insert_vfork_catchpoint)
7299         (linux_child_remove_vfork_catchpoint)
7300         (linux_child_insert_exec_catchpoint)
7301         (linux_child_remove_exec_catchpoint)
7302         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
7303         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
7304         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
7305         (linux_nat_stopped_data_address)
7306         (linux_nat_stopped_by_sw_breakpoint)
7307         (linux_nat_supports_stopped_by_sw_breakpoint)
7308         (linux_nat_stopped_by_hw_breakpoint)
7309         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
7310         (linux_nat_kill, linux_nat_mourn_inferior)
7311         (linux_nat_xfer_partial, linux_nat_thread_alive)
7312         (linux_nat_update_thread_list, linux_nat_pid_to_str)
7313         (linux_nat_thread_name, linux_child_pid_to_exec_file)
7314         (linux_child_static_tracepoint_markers_by_strid)
7315         (linux_nat_is_async_p, linux_nat_can_async_p)
7316         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
7317         (linux_nat_supports_multi_process)
7318         (linux_nat_supports_disable_randomization, linux_nat_async)
7319         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
7320         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
7321         (linux_nat_fileio_open, linux_nat_fileio_readlink)
7322         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
7323         methods of linux_nat_target.
7324         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
7325         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
7326         parameter.
7327         (check_stopped_by_watchpoint): Adjust.
7328         (linux_xfer_partial): Delete.
7329         (linux_target_install_ops, linux_target, linux_nat_add_target):
7330         Delete.
7331         (linux_nat_target::linux_nat_target): New.
7332         * linux-nat.h: Include "inf-ptrace.h".
7333         (linux_nat_target): New.
7334         (linux_target, linux_target_install_ops, linux_nat_add_target):
7335         Delete function declarations.
7336         (linux_target): Declare global.
7337         * linux-thread-db.c (thread_db_target): New.
7338         (thread_db_target::thread_db_target): New.
7339         (thread_db_ops): Delete.
7340         (the_thread_db_target): New.
7341         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
7342         (thread_db_update_thread_list, thread_db_pid_to_str)
7343         (thread_db_extra_thread_info)
7344         (thread_db_thread_handle_to_thread_info)
7345         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
7346         (thread_db_resume): Refactor as methods of thread_db_target.
7347         (init_thread_db_ops): Delete.
7348         (_initialize_thread_db): Remove reference to init_thread_db_ops.
7349         * x86-linux-nat.c: Don't include "linux-nat.h".
7350         (super_post_startup_inferior): Delete.
7351         (x86_linux_nat_target::~x86_linux_nat_target): New.
7352         (x86_linux_child_post_startup_inferior)
7353         (x86_linux_read_description, x86_linux_enable_btrace)
7354         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
7355         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
7356         methods of x86_linux_nat_target.
7357         (x86_linux_create_target): Delete.  Bits folded ...
7358         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
7359         pointer.
7360         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
7361         (x86_linux_nat_target): New class.
7362         (x86_linux_create_target): Delete.
7363         (x86_linux_add_target): Now takes a linux_nat_target pointer.
7364         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
7365         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
7366         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
7367         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
7368         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
7369         make extern.
7370         (x86_use_watchpoints): Delete.
7371         * x86-nat.h: Include "breakpoint.h" and "target.h".
7372         (x86_use_watchpoints): Delete.
7373         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
7374         (x86_stopped_by_watchpoint, x86_stopped_data_address)
7375         (x86_insert_watchpoint, x86_remove_watchpoint)
7376         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
7377         (x86_stopped_by_hw_breakpoint): New declarations.
7378         (x86_nat_target): New template class.
7379
7380         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
7381         (the_ppc_linux_nat_target): New.
7382         (ppc_linux_fetch_inferior_registers)
7383         (ppc_linux_can_use_hw_breakpoint)
7384         (ppc_linux_region_ok_for_hw_watchpoint)
7385         (ppc_linux_ranged_break_num_registers)
7386         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
7387         (ppc_linux_insert_mask_watchpoint)
7388         (ppc_linux_remove_mask_watchpoint)
7389         (ppc_linux_can_accel_watchpoint_condition)
7390         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
7391         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
7392         (ppc_linux_watchpoint_addr_within_range)
7393         (ppc_linux_masked_watch_num_registers)
7394         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
7395         (ppc_linux_read_description): Refactor as methods of
7396         ppc_linux_nat_target.
7397         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
7398
7399         * procfs.c (procfs_xfer_partial): Delete forward declaration.
7400         (procfs_target): New class.
7401         (the_procfs_target): New.
7402         (procfs_target): Delete function.
7403         (procfs_auxv_parse, procfs_attach, procfs_detach)
7404         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
7405         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
7406         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
7407         (procfs_create_inferior, procfs_update_thread_list)
7408         (procfs_thread_alive, procfs_pid_to_str)
7409         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
7410         (procfs_stopped_data_address, procfs_insert_watchpoint)
7411         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
7412         (proc_find_memory_regions, procfs_info_proc)
7413         (procfs_make_note_section): Refactor as methods of procfs_target.
7414         (_initialize_procfs): Adjust.
7415         * sol-thread.c (sol_thread_target): New class.
7416         (sol_thread_ops): Now a sol_thread_target.
7417         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
7418         (sol_thread_fetch_registers, sol_thread_store_registers)
7419         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
7420         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
7421         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
7422         (init_sol_thread_ops): Delete.
7423         (_initialize_sol_thread): Adjust.  Remove references to
7424         init_sol_thread_ops and complete_target_initialization.
7425
7426         * windows-nat.c (windows_nat_target): New class.
7427         (windows_fetch_inferior_registers)
7428         (windows_store_inferior_registers, windows_resume, windows_wait)
7429         (windows_attach, windows_detach, windows_pid_to_exec_file)
7430         (windows_files_info, windows_create_inferior)
7431         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
7432         (windows_close, windows_pid_to_str, windows_xfer_partial)
7433         (windows_get_tib_address, windows_get_ada_task_ptid)
7434         (windows_thread_name, windows_thread_alive): Refactor as
7435         windows_nat_target methods.
7436         (do_initial_windows_stuff): Adjust.
7437         (windows_target): Delete function.
7438         (_initialize_windows_nat): Adjust.
7439
7440         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
7441         (darwin_mourn_inferior, darwin_kill_inferior)
7442         (darwin_create_inferior, darwin_attach, darwin_detach)
7443         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
7444         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
7445         (darwin_supports_multi_process): Refactor as darwin_nat_target
7446         methods.
7447         (darwin_resume_to, darwin_files_info): Delete.
7448         (_initialize_darwin_inferior): Rename to ...
7449         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
7450         * darwin-nat.h: Include "inf-child.h".
7451         (darwin_nat_target): New class.
7452         (darwin_complete_target): Delete.
7453         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
7454         (darwin_target): New.
7455         (i386_darwin_fetch_inferior_registers)
7456         (i386_darwin_store_inferior_registers): Refactor as methods of
7457         darwin_nat_target.
7458         (darwin_complete_target): Delete, with ...
7459         (_initialize_i386_darwin_nat): ... bits factored out here.
7460
7461         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
7462         (the_alpha_linux_nat_target): New.
7463         (alpha_linux_register_u_offset): Refactor as
7464         alpha_linux_nat_target method.
7465         (_initialize_alpha_linux_nat): Adjust.
7466         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
7467         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
7468         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
7469         methods of linux_nat_trad_target.
7470         (linux_trad_target): Delete.
7471         * linux-nat-trad.h (linux_trad_target): Delete function.
7472         (linux_nat_trad_target): New class.
7473         * mips-linux-nat.c (mips_linux_nat_target): New class.
7474         (super_fetch_registers, super_store_registers, super_close):
7475         Delete.
7476         (the_mips_linux_nat_target): New.
7477         (mips64_linux_regsets_fetch_registers)
7478         (mips64_linux_regsets_store_registers)
7479         (mips64_linux_fetch_registers, mips64_linux_store_registers)
7480         (mips_linux_register_u_offset, mips_linux_read_description)
7481         (mips_linux_can_use_hw_breakpoint)
7482         (mips_linux_stopped_by_watchpoint)
7483         (mips_linux_stopped_data_address)
7484         (mips_linux_region_ok_for_hw_watchpoint)
7485         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
7486         (mips_linux_close): Refactor as methods of mips_linux_nat.
7487         (_initialize_mips_linux_nat): Adjust to C++ification.
7488
7489         * aix-thread.c (aix_thread_target): New class.
7490         (aix_thread_ops): Now an aix_thread_target.
7491         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
7492         (aix_thread_fetch_registers, aix_thread_store_registers)
7493         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
7494         (aix_thread_thread_alive, aix_thread_pid_to_str)
7495         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
7496         Refactor as methods of aix_thread_target.
7497         (init_aix_thread_ops): Delete.
7498         (_initialize_aix_thread): Remove references to init_aix_thread_ops
7499         and complete_target_initialization.
7500         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
7501         (rs6000_nat_target): New class.
7502         (the_rs6000_nat_target): New.
7503         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
7504         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
7505         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
7506         (super_create_inferior): Delete.
7507         (_initialize_rs6000_nat): Adjust to C++ification.
7508
7509         * arm-linux-nat.c (arm_linux_nat_target): New class.
7510         (the_arm_linux_nat_target): New.
7511         (arm_linux_fetch_inferior_registers)
7512         (arm_linux_store_inferior_registers, arm_linux_read_description)
7513         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
7514         (arm_linux_remove_hw_breakpoint)
7515         (arm_linux_region_ok_for_hw_watchpoint)
7516         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
7517         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
7518         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
7519         arm_linux_nat_target.
7520         (_initialize_arm_linux_nat): Adjust to C++ification.
7521
7522         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
7523         (the_aarch64_linux_nat_target): New.
7524         (aarch64_linux_fetch_inferior_registers)
7525         (aarch64_linux_store_inferior_registers)
7526         (aarch64_linux_child_post_startup_inferior)
7527         (aarch64_linux_read_description)
7528         (aarch64_linux_can_use_hw_breakpoint)
7529         (aarch64_linux_insert_hw_breakpoint)
7530         (aarch64_linux_remove_hw_breakpoint)
7531         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
7532         (aarch64_linux_region_ok_for_hw_watchpoint)
7533         (aarch64_linux_stopped_data_address)
7534         (aarch64_linux_stopped_by_watchpoint)
7535         (aarch64_linux_watchpoint_addr_within_range)
7536         (aarch64_linux_can_do_single_step): Refactor as methods of
7537         aarch64_linux_nat_target.
7538         (super_post_startup_inferior): Delete.
7539         (_initialize_aarch64_linux_nat): Adjust to C++ification.
7540
7541         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
7542         (the_hppa_linux_nat_target): New.
7543         (hppa_linux_fetch_inferior_registers)
7544         (hppa_linux_store_inferior_registers): Refactor as methods of
7545         hppa_linux_nat_target.
7546         (_initialize_hppa_linux_nat): Adjust to C++ification.
7547
7548         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
7549         (the_ia64_linux_nat_target): New.
7550         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
7551         (ia64_linux_stopped_data_address)
7552         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
7553         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
7554         ia64_linux_nat_target methods.
7555         (super_xfer_partial): Delete.
7556         (_initialize_ia64_linux_nat): Adjust to C++ification.
7557
7558         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
7559         (the_m32r_linux_nat_target): New.
7560         (m32r_linux_fetch_inferior_registers)
7561         (m32r_linux_store_inferior_registers): Refactor as
7562         m32r_linux_nat_target methods.
7563         (_initialize_m32r_linux_nat): Adjust to C++ification.
7564
7565         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
7566         (the_m68k_linux_nat_target): New.
7567         (m68k_linux_fetch_inferior_registers)
7568         (m68k_linux_store_inferior_registers): Refactor as
7569         m68k_linux_nat_target methods.
7570         (_initialize_m68k_linux_nat): Adjust to C++ification.
7571
7572         * s390-linux-nat.c (s390_linux_nat_target): New class.
7573         (the_s390_linux_nat_target): New.
7574         (s390_linux_fetch_inferior_registers)
7575         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
7576         (s390_insert_watchpoint, s390_remove_watchpoint)
7577         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
7578         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
7579         (s390_auxv_parse, s390_read_description): Refactor as methods of
7580         s390_linux_nat_target.
7581         (_initialize_s390_nat): Adjust to C++ification.
7582
7583         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
7584         (the_sparc_linux_nat_target): New.
7585         (_initialize_sparc_linux_nat): Adjust to C++ification.
7586         * sparc-nat.c (sparc_fetch_inferior_registers)
7587         (sparc_store_inferior_registers): Remove target_ops parameter.
7588         * sparc-nat.h (sparc_fetch_inferior_registers)
7589         (sparc_store_inferior_registers): Remove target_ops parameter.
7590         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
7591         (the_sparc64_linux_nat_target): New.
7592         (_initialize_sparc64_linux_nat): Adjust to C++ification.
7593
7594         * spu-linux-nat.c (spu_linux_nat_target): New class.
7595         (the_spu_linux_nat_target): New.
7596         (spu_child_post_startup_inferior, spu_child_post_attach)
7597         (spu_child_wait, spu_fetch_inferior_registers)
7598         (spu_store_inferior_registers, spu_xfer_partial)
7599         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
7600         methods.
7601         (_initialize_spu_nat): Adjust to C++ification.
7602
7603         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
7604         (the_tilegx_linux_nat_target): New.
7605         (fetch_inferior_registers, store_inferior_registers):
7606         Refactor as methods.
7607         (_initialize_tile_linux_nat): Adjust to C++ification.
7608
7609         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
7610         (the_xtensa_linux_nat_target): New.
7611         (xtensa_linux_fetch_inferior_registers)
7612         (xtensa_linux_store_inferior_registers): Refactor as
7613         xtensa_linux_nat_target methods.
7614         (_initialize_xtensa_linux_nat): Adjust to C++ification.
7615
7616         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
7617         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
7618         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
7619         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
7620         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
7621         (fbsd_stopped_by_sw_breakpoint)
7622         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
7623         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
7624         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
7625         (fbsd_post_startup_inferior, fbsd_post_attach)
7626         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
7627         (fbsd_set_syscall_catchpoint)
7628         (super_xfer_partial, super_resume, super_wait)
7629         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
7630         (fbsd_handle_debug_trap): Remove target_ops parameter.
7631         (fbsd_nat_add_target): Delete.
7632         * fbsd-nat.h: Include "inf-ptrace.h".
7633         (fbsd_nat_add_target): Delete.
7634         (USE_SIGTRAP_SIGINFO): Define.
7635         (fbsd_nat_target): New class.
7636
7637         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
7638         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
7639         (amd64bsd_target): Delete.
7640         * amd64-bsd-nat.h: New file.
7641         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
7642         "x86-bsd-nat.h".
7643         (amd64_fbsd_nat_target): New class.
7644         (the_amd64_fbsd_nat_target): New.
7645         (amd64fbsd_read_description): Refactor as method of
7646         amd64_fbsd_nat_target.
7647         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
7648         (_initialize_amd64fbsd_nat): Adjust to C++ification.
7649         * amd64-nat.h (amd64bsd_target): Delete function declaration.
7650         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
7651         (i386bsd_store_inferior_registers): Remove target_ops parameter.
7652         (i386bsd_target): Delete.
7653         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
7654         (i386bsd_fetch_inferior_registers)
7655         (i386bsd_store_inferior_registers): Declare.
7656         (i386_bsd_nat_target): New class.
7657         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
7658         (the_i386_fbsd_nat_target): New.
7659         (i386fbsd_resume, i386fbsd_read_description): Refactor as
7660         i386_fbsd_nat_target methods.
7661         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
7662         (_initialize_i386fbsd_nat): Adjust to C++ification.
7663         * x86-bsd-nat.c (super_mourn_inferior): Delete.
7664         (x86bsd_mourn_inferior, x86bsd_target): Delete.
7665         (_initialize_x86_bsd_nat): Adjust to C++ification.
7666         * x86-bsd-nat.h: Include "x86-nat.h".
7667         (x86bsd_target): Delete declaration.
7668         (x86bsd_nat_target): New class.
7669
7670         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
7671         (the_aarch64_fbsd_nat_target): New.
7672         (aarch64_fbsd_fetch_inferior_registers)
7673         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
7674         aarch64_fbsd_nat_target.
7675         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
7676         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
7677         (the_alpha_bsd_nat_target): New.
7678         (alphabsd_fetch_inferior_registers)
7679         (alphabsd_store_inferior_registers): Refactor as
7680         alpha_bsd_nat_target methods.
7681         (_initialize_alphabsd_nat): Refactor as methods of
7682         alpha_bsd_nat_target.
7683         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
7684         (the_amd64_nbsd_nat_target): New.
7685         (_initialize_amd64nbsd_nat): Adjust to C++ification.
7686         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
7687         (the_amd64_obsd_nat_target): New.
7688         (_initialize_amd64obsd_nat): Adjust to C++ification.
7689         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
7690         (the_arm_fbsd_nat_target): New.
7691         (arm_fbsd_fetch_inferior_registers)
7692         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
7693         (_initialize_arm_fbsd_nat): Refactor as methods of
7694         arm_fbsd_nat_target.
7695         (_initialize_arm_fbsd_nat): Adjust to C++ification.
7696         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
7697         (the_arm_netbsd_nat_target): New.
7698         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
7699         arm_netbsd_nat_target.
7700         (_initialize_arm_netbsd_nat): Adjust to C++ification.
7701         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
7702         (the_hppa_nbsd_nat_target): New.
7703         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
7704         hppa_nbsd_nat_target methods.
7705         (_initialize_hppanbsd_nat): Adjust to C++ification.
7706         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
7707         (the_hppa_obsd_nat_target): New.
7708         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
7709         methods of hppa_obsd_nat_target.
7710         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
7711         add_target.
7712         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
7713         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
7714         add_target.
7715         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
7716         (_initialize_i386obsd_nat): Use add_target.
7717         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
7718         (the_m68k_bsd_nat_target): New.
7719         (m68kbsd_fetch_inferior_registers)
7720         (m68kbsd_store_inferior_registers): Refactor as methods of
7721         m68k_bsd_nat_target.
7722         (_initialize_m68kbsd_nat): Adjust to C++ification.
7723         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
7724         (the_mips_fbsd_nat_target): New.
7725         (mips_fbsd_fetch_inferior_registers)
7726         (mips_fbsd_store_inferior_registers): Refactor as methods of
7727         mips_fbsd_nat_target.
7728         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
7729         add_target.
7730         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
7731         (the_mips_nbsd_nat_target): New.
7732         (mipsnbsd_fetch_inferior_registers)
7733         (mipsnbsd_store_inferior_registers): Refactor as methods of
7734         mips_nbsd_nat_target.
7735         (_initialize_mipsnbsd_nat): Adjust to C++ification.
7736         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
7737         (the_mips64_obsd_nat_target): New.
7738         (mips64obsd_fetch_inferior_registers)
7739         (mips64obsd_store_inferior_registers): Refactor as methods of
7740         mips64_obsd_nat_target.
7741         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
7742         add_target.
7743         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
7744         nbsd_nat_target.
7745         * nbsd-nat.h: Include "inf-ptrace.h".
7746         (nbsd_nat_target): New class.
7747         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
7748         (obsd_wait): Refactor as methods of obsd_nat_target.
7749         (obsd_add_target): Delete.
7750         * obsd-nat.h: Include "inf-ptrace.h".
7751         (obsd_nat_target): New class.
7752         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
7753         (the_ppc_fbsd_nat_target): New.
7754         (ppcfbsd_fetch_inferior_registers)
7755         (ppcfbsd_store_inferior_registers): Refactor as methods of
7756         ppc_fbsd_nat_target.
7757         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
7758         add_target.
7759         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
7760         (the_ppc_nbsd_nat_target): New.
7761         (ppcnbsd_fetch_inferior_registers)
7762         (ppcnbsd_store_inferior_registers): Refactor as methods of
7763         ppc_nbsd_nat_target.
7764         (_initialize_ppcnbsd_nat): Adjust to C++ification.
7765         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
7766         (the_ppc_obsd_nat_target): New.
7767         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
7768         methods of ppc_obsd_nat_target.
7769         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
7770         add_target.
7771         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
7772         (the_sh_nbsd_nat_target): New.
7773         (shnbsd_fetch_inferior_registers)
7774         (shnbsd_store_inferior_registers): Refactor as methods of
7775         sh_nbsd_nat_target.
7776         (_initialize_shnbsd_nat): Adjust to C++ification.
7777         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
7778         (inf_ptrace_xfer_partial): Delete.
7779         (sparc_xfer_partial, sparc_target): Delete.
7780         * sparc-nat.h (sparc_fetch_inferior_registers)
7781         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
7782         (sparc_target): Delete function declaration.
7783         (sparc_target): New template class.
7784         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
7785         (_initialize_sparcnbsd_nat): Adjust to C++ification.
7786         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
7787         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
7788         add_target.
7789         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
7790         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
7791         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
7792         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
7793         add_target.
7794         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
7795         (the_vax_bsd_nat_target): New.
7796         (vaxbsd_fetch_inferior_registers)
7797         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
7798         methods.
7799         (_initialize_vaxbsd_nat): Adjust to C++ification.
7800
7801         * bsd-kvm.c (bsd_kvm_target): New class.
7802         (bsd_kvm_ops): Now a bsd_kvm_target.
7803         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
7804         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
7805         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
7806         bsd_kvm_target.
7807         (bsd_kvm_return_one): Delete.
7808         (bsd_kvm_add_target): Adjust to C++ification.
7809
7810         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
7811         (nto_procfs_target_procfs): New classes.
7812         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
7813         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
7814         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
7815         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
7816         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
7817         (procfs_remove_hw_breakpoint, procfs_resume)
7818         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
7819         (procfs_kill_inferior, procfs_store_registers)
7820         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
7821         as methods of nto_procfs_target.
7822         (nto_procfs_ops): Now an nto_procfs_target_procfs.
7823         (nto_native_ops): Delete.
7824         (procfs_open, procfs_native_open): Delete.
7825         (nto_native_ops): Now an nto_procfs_target_native.
7826         (init_procfs_targets): Adjust to C++ification.
7827         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
7828         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
7829         Refactor as methods of nto_procfs_target.
7830
7831         * go32-nat.c (go32_nat_target): New class.
7832         (the_go32_nat_target): New.
7833         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
7834         (go32_store_registers, go32_xfer_partial, go32_files_info)
7835         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
7836         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
7837         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
7838         (go32_pid_to_str): Refactor as methods of go32_nat_target.
7839         (go32_target): Delete.
7840         (_initialize_go32_nat): Adjust to C++ification.
7841
7842         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
7843         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
7844         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
7845         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
7846         gnu_nat_target.
7847         (gnu_target): Delete.
7848         * gnu-nat.h (gnu_target): Delete.
7849         (gnu_nat_target): New class.
7850         * i386-gnu-nat.c (gnu_base_target): New.
7851         (i386_gnu_nat_target): New class.
7852         (the_i386_gnu_nat_target): New.
7853         (_initialize_i386gnu_nat): Adjust to C++ification.
7854
7855 2018-05-02  Pedro Alves  <palves@redhat.com>
7856
7857         * bfd-target.c (target_bfd_xclose): Rename to ...
7858         (target_bfd_close): ... this.
7859         (target_bfd_reopen): Adjust.
7860         * target.c (target_close): Remove references to to_xclose.
7861         * target.h (target_ops::to_xclose): Delete.
7862         (target_ops::to_close): Update comments.
7863
7864 2018-05-02  Pedro Alves  <palves@redhat.com>
7865
7866         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
7867         "linux-nat.h".
7868         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
7869         * inf-ptrace.c (inf_ptrace_register_u_offset)
7870         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
7871         (inf_ptrace_store_register, inf_ptrace_store_registers)
7872         (inf_ptrace_trad_target): Move to ...
7873         * linux-nat-trad.c: ... this new file.
7874         * linux-nat-trad.h: New file.
7875         * linux-nat.c (linux_target_install_ops): Make extern.
7876         (linux_trad_target): Delete.
7877         * linux-nat.h (linux_trad_target): Delete declaration.
7878         (linux_target_install_ops): Declare.
7879         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
7880         "linux-nat.h".
7881
7882 2018-05-02  Pedro Alves  <palves@redhat.com>
7883
7884         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
7885         procfs_target/add_target here.
7886         * procfs.c (procfs_target): Make static.
7887         (_initialize_procfs): Call add_target here.
7888         * procfs.h (struct target_ops): Remove forward declaration.
7889         (procfs_target): Remove declaration.
7890         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
7891
7892 2018-05-02  Pedro Alves  <palves@redhat.com>
7893
7894         * procfs.c (procfs_stopped_by_watchpoint)
7895         (procfs_insert_watchpoint, procfs_remove_watchpoint)
7896         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
7897         Forward declare.
7898         (procfs_use_watchpoints): Delete, move contents...
7899         (procfs_target): ... here.
7900         * procfs.h (procfs_use_watchpoints): Delete declaration.
7901         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
7902         procfs_use_watchpoints.
7903         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
7904         procfs_use_watchpoints.
7905
7906 2018-05-02  Tom Tromey  <tom@tromey.com>
7907
7908         PR python/20084:
7909         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
7910         and var_zuinteger_unlimited.
7911         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
7912         and PARAM_ZUINTEGER_UNLIMITED.
7913         (set_parameter_value): Handle var_zuinteger and
7914         var_zuinteger_unlimited.
7915         (add_setshow_generic): Likewise.
7916         (parmpy_init): Likewise.
7917
7918 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
7919
7920         PR rust/23124
7921         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
7922         pointer is not null before dereferencing it.
7923
7924 2018-04-30  Tom Tromey  <tom@tromey.com>
7925
7926         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
7927         is_mi_like_p.
7928
7929 2018-04-30  Tom Tromey  <tom@tromey.com>
7930
7931         * breakpoint.c (mention): Remove use of is_mi_like_p.
7932         (print_mention_ranged_breakpoint): Likewise.
7933         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
7934         of is_mi_like_p.
7935
7936 2018-04-30  Tom Tromey  <tom@tromey.com>
7937
7938         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
7939
7940 2018-04-30  Tom Tromey  <tom@tromey.com>
7941
7942         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
7943         (info_spu_event_command): Remove some uses of is_mi_like_p.
7944
7945 2018-04-30  Tom Tromey  <tom@tromey.com>
7946
7947         * python/py-framefilter.c (py_print_single_arg)
7948         (enumerate_locals, py_print_args, py_print_frame): Remove some
7949         uses of is_mi_like_p.
7950
7951 2018-04-30  Tom Tromey  <tom@tromey.com>
7952
7953         * ui-out.c: Update.
7954         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
7955         * ui-out.h (ui_out::is_mi_like_p): Now const.
7956         (ui_out::do_is_mi_like_p): Now const.
7957         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
7958
7959 2018-04-30  Tom Tromey  <tom@tromey.com>
7960
7961         * varobj.c (varobj_set_visualizer): Use new_reference.
7962         * python/python.c (gdbpy_decode_line): Use new_reference.
7963         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
7964         new_reference.
7965
7966 2018-04-30  Tom Tromey  <tom@tromey.com>
7967
7968         * varobj.c (install_new_value): Use new_reference.
7969         * value.h (value_incref): Return void.  Swap intro comment with
7970         value_decref.
7971         * value.c (set_value_parent): Use new_reference.
7972         (value_incref): Return void.  Update intro comment.
7973         (release_value): Use new_reference.
7974         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
7975
7976 2018-04-30  Tom Tromey  <tom@tromey.com>
7977
7978         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
7979         * gdb_bfd.h (new_bfd_ref): Remove.
7980         (gdb_bfd_open): Update comment.
7981         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
7982         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
7983         (gdb_bfd_fdopenr): Use new_reference.
7984         * exec.c (exec_file_attach): Use new_reference.
7985
7986 2018-04-30  Tom Tromey  <tom@tromey.com>
7987
7988         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
7989         method.
7990
7991 2018-04-30  Tom Tromey  <tom@tromey.com>
7992
7993         * jit.c (jit_read_code_entry): Use type_align.
7994         * i386-tdep.c (i386_gdbarch_init): Don't call
7995         set_gdbarch_long_long_align_bit.
7996         * gdbarch.sh: Remove long_long_align_bit.
7997         * gdbarch.c, gdbarch.h: Rebuild.
7998         * arc-tdep.c (arc_type_align): New function.
7999         (arc_gdbarch_init): Use arc_type_align.  Don't call
8000         set_gdbarch_long_long_align_bit.
8001
8002 2018-04-30  Tom Tromey  <tom@tromey.com>
8003
8004         * rust-lang.c (rust_type_alignment): Remove.
8005         (rust_composite_type): Use type_align.
8006
8007 2018-04-30  Tom Tromey  <tom@tromey.com>
8008
8009         * NEWS: Mention Type.align.
8010         * python/py-type.c (typy_get_alignof): New function.
8011         (type_object_getset): Add "alignof".
8012
8013 2018-04-30  Tom Tromey  <tom@tromey.com>
8014
8015         PR exp/17095:
8016         * NEWS: Update.
8017         * std-operator.def (UNOP_ALIGNOF): New operator.
8018         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
8019         New.
8020         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
8021         * c-lang.c (c_op_print_tab): Add alignof.
8022         * c-exp.y (ALIGNOF): New token.
8023         (exp): Add "ALIGNOF" production.
8024         (ident_tokens): Add _Alignof and alignof.
8025
8026 2018-04-30  Tom Tromey  <tom@tromey.com>
8027
8028         * i386-tdep.c (i386_type_align): New function.
8029         (i386_gdbarch_init): Update.
8030         * gdbarch.sh (type_align): New method.
8031         * gdbarch.c, gdbarch.h: Rebuild.
8032         * arch-utils.h (default_type_align): Declare.
8033         * arch-utils.c (default_type_align): New function.
8034         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
8035         (struct type) <align_log2>: New field.
8036         <instance_flags>: Now a bitfield.
8037         (TYPE_RAW_ALIGN): New macro.
8038         (type_align, type_raw_align, set_type_align): Declare.
8039         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
8040         functions.
8041         * dwarf2read.c (quirk_rust_enum): Set type alignment.
8042         (get_alignment, maybe_set_alignment): New functions.
8043         (read_structure_type, read_enumeration_type, read_array_type)
8044         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
8045         (read_subrange_type, read_base_type): Set type alignment.
8046
8047 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
8048
8049         * dwarf2read.c (read_index_from_section): Use bool.
8050
8051 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
8052
8053         PR gdb/22950
8054         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
8055         with #ifdef.
8056
8057 2018-04-29  John Reiser  <jreiser@BitWagon.com>
8058
8059         PR build/22873
8060         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
8061         last step, and do it atomically.
8062
8063 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
8064
8065         * compile/compile-c-types.c (convert_int, convert_float):
8066         Update for C FE v1.
8067
8068 2018-04-27  Tom Tromey  <tom@tromey.com>
8069
8070         PR rust/22545:
8071         * rust-lang.c (rust_inclusive_range_type_p): New function.
8072         (rust_range): Handle inclusive ranges.
8073         (rust_compute_range): Likewise.
8074         * rust-exp.y (struct rust_op) <inclusive>: New field.
8075         (DOTDOTEQ): New constant.
8076         (range_expr): Add "..=" productions.
8077         (operator_tokens): Add "..=" token.
8078         (ast_range): Add "inclusive" parameter.
8079         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
8080         ranges.
8081         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
8082         bounds values.
8083         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
8084         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
8085         Update comments.
8086         * expprint.c (print_subexp_standard): Handle new bounds values.
8087         (dump_subexp_body_standard): Likewise.
8088
8089 2018-04-27  Tom Tromey  <tom@tromey.com>
8090
8091         * configure: Rebuild.
8092         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
8093         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
8094         "OVERRIDE".
8095         (class symbol_needs_eval_context): Likewise.
8096         * dwarf2read.c (mock_mapped_index::symbol_name_count)
8097         (mock_mapped_index::symbol_name_at): Use "override".  Remove
8098         "virtual".
8099         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
8100         "override".
8101         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
8102         * aarch64-tdep.c (instruction_reader::read): Use "override".
8103         (instruction_reader_test::read): Likewise.
8104         * arm-tdep.c (instruction_reader::read): Use "override".
8105         (instruction_reader_thumb::read): Likewise.
8106
8107 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
8108
8109         PR remote/9665
8110         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
8111         instead of remote_send.
8112         (remote_send): Remove.
8113
8114 2018-04-26  Pedro Alves  <palves@redhat.com>
8115
8116         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
8117         find_function_start_sal instead of find_pc_line.
8118
8119 2018-04-26  Pedro Alves  <palves@redhat.com>
8120
8121         * breakpoint.c (set_breakpoint_location_function): Handle
8122         mst_data_gnu_ifunc.
8123         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
8124         * elfread.c (elf_symtab_read): Give data symbols with
8125         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
8126         (elf_rel_plt_read): Update comment.
8127         * linespec.c (convert_linespec_to_sals): Handle
8128         mst_data_gnu_ifunc.
8129         (minsym_found): Handle mst_data_gnu_ifunc.
8130         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
8131         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
8132         * parse.c (find_minsym_type_and_address): Handle
8133         mst_data_gnu_ifunc.
8134         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
8135         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
8136         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
8137         comment.
8138         <mst_data_gnu_ifunc>: New enumerator.
8139
8140 2018-04-26  Pedro Alves  <palves@redhat.com>
8141
8142         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
8143         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
8144         'want_trampoline' parameter by a lookup_msym_prefer parameter.
8145         Handle it.
8146         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
8147         (lookup_minimal_symbol_by_pc): Adjust.
8148         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
8149         (lookup_solib_trampoline_symbol_by_pc): Adjust.
8150         * minsyms.h (lookup_msym_prefer): New enum.
8151         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
8152         parameter by a lookup_msym_prefer parameter.
8153
8154 2018-04-26  Pedro Alves  <palves@redhat.com>
8155
8156         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
8157         ends in "@plt" instead of looking at the symbol's section.
8158
8159 2018-04-26  Pedro Alves  <palves@redhat.com>
8160
8161         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
8162         all references.
8163         (find_pc_partial_function_gnu_ifunc): Rename to ...
8164         (find_pc_partial_function): ... this, and remove references to
8165         'is_gnu_ifunc_p'.
8166         (find_pc_partial_function): Delete old implementation.
8167         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
8168
8169 2018-04-26  Pedro Alves  <palves@redhat.com>
8170
8171         * linespec.c (struct bound_minimal_symbol_search_key): New.
8172         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
8173         skip first line if we found a GNU ifunc minimal symbol by name.
8174         (compare_msymbols): Change parameters to work with a destructured
8175         lhs minsym.
8176         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
8177         functions.
8178
8179 2018-04-26  Pedro Alves  <palves@redhat.com>
8180
8181         * breakpoint.c (set_breakpoint_location_function): Don't resolve
8182         ifunc targets here.  Instead, if we have an ifunc minsym, use its
8183         address/name.
8184         (add_location_to_breakpoint): Store the minsym and the objfile in
8185         the breakpoint location.
8186         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
8187         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
8188         Record the minsym in the sal.
8189         * symtab.h (symtab_and_line) <msymbol>: New field.
8190
8191 2018-04-26  Pedro Alves  <palves@redhat.com>
8192
8193         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
8194         unless we actually resolved the ifunc.
8195
8196 2018-04-26  Pedro Alves  <palves@redhat.com>
8197
8198         * c-exp.y (variable production): Prefer ifunc minsyms over
8199         regular function symbols.
8200         * symtab.c (find_gnu_ifunc): New function.
8201         * minsyms.h (lookup_msym_prefer): New enum.
8202         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
8203         parameter by a lookup_msym_prefer parameter.
8204         * symtab.h (find_gnu_ifunc): New declaration.
8205
8206 2018-04-26  Pedro Alves  <palves@redhat.com>
8207
8208         * blockframe.c (find_gnu_ifunc_target_type): New function.
8209         (find_function_type): New.
8210         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
8211         return a value with a memory address.
8212         (eval_call): For calls to GNU ifunc functions, try to find the
8213         type of the target function from the type that the resolver
8214         returns.
8215         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
8216         symbols.
8217         * infcall.c (find_function_return_type): Delete.
8218         (find_function_addr): Add 'function_type' parameter.  For calls to
8219         GNU ifunc functions, try to find the type of the target function
8220         from the type that the resolver returns, and return it via
8221         FUNCTION_TYPE.
8222         (call_function_by_hand_dummy): Adjust to use the function type
8223         returned by find_function_addr.
8224         (find_function_addr): Add 'function_type' parameter and move
8225         description here.
8226         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
8227         declarations.
8228
8229 2018-04-26  Pedro Alves  <palves@redhat.com>
8230
8231         * c-exp.y (variable production): Skip finding an alias for ifunc
8232         symbols.
8233
8234 2018-04-26  Pedro Alves  <palves@redhat.com>
8235
8236         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
8237
8238 2018-04-25  Pedro Alves  <palves@redhat.com>
8239
8240         * infcmd.c (kill_command): Print the pid as string, not the whole
8241         thread's ptid.  Add comment.  s/has been killed/killed/ in output
8242         message.
8243         * remote.c (remote_detach_1): Print the pid as string, not the
8244         whole thread's ptid.
8245
8246 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
8247             Sergio Durigan Junior  <sergiodj@redhat.com>
8248             Pedro Alves  <palves@redhat.com>
8249
8250         * infcmd.c (kill_command): Print message when inferior has
8251         been killed.
8252         * inferior.c (print_inferior_events): Remove 'static'.  Set as
8253         '1'.
8254         (add_inferior): Improve message printed when
8255         'print_inferior_events' is on.
8256         (exit_inferior): Remove message printed when
8257         'print_inferior_events' is on.
8258         (detach_inferior): Improve message printed when
8259         'print_inferior_events' is on.
8260         (initialize_inferiors): Use 'add_inferior_silent' to set
8261         'current_inferior_'.
8262         * inferior.h (print_inferior_events): Declare here as
8263         'extern'.
8264         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
8265         '[Detaching...]' messages when 'print_inferior_events' is on.
8266         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
8267         as prefix/suffix for messages.  Remove periods.  Fix erroneous
8268         'Detaching after fork from child...', replace it by '... from
8269         parent...'.
8270         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
8271         prefix/suffix when printing 'Detaching...' messages.  Print
8272         them when 'print_inferior_events' is on.
8273         * remote.c (remote_detach_1): Print message when detaching
8274         from inferior and '!is_fork_parent'.
8275
8276 2018-04-24  Tom Tromey  <tom@tromey.com>
8277
8278         * cli-out.h: Reindent.
8279
8280 2018-04-24  Tom Tromey  <tom@tromey.com>
8281
8282         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
8283         (cli_ui_out::do_field_string): Use fputs_filtered.
8284         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
8285
8286 2018-04-23  Tom Tromey  <tom@tromey.com>
8287
8288         * guile/scm-frame.c (gdbscm_frame_read_var): Use
8289         gdb::unique_xmalloc_ptr.
8290
8291 2018-04-23  Tom Tromey  <tom@tromey.com>
8292
8293         * configure: Rebuild.
8294
8295 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
8296
8297         PR gdb/23095
8298         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
8299         prepare_for_testing.  Set normal_bp to r_debug_state if target
8300         is bsd.
8301
8302 2018-04-21  Pedro Alves  <palves@redhat.com>
8303             Rajendra SY  <rajendra.sy@gmail.com>
8304
8305         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
8306         * remote.c (extended_remote_attach): In all-stop mode, mark the
8307         thread as executing.
8308
8309 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8310
8311         * thread.c (thread_apply_all_command): Fix comment.
8312         (thread_command): Fix comment.
8313
8314 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
8315
8316         * common/tdesc.h (tdesc_create_feature): Remove xml filename
8317         parameter.
8318         * features/aarch64-core.c (create_feature_aarch64_core):
8319         Regenerate.
8320         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
8321         Likewise.
8322         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
8323         Likewise.
8324         * features/i386/32bit-avx512.c
8325         (create_feature_i386_32bit_avx512): Likewise.
8326         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
8327         Likewise.
8328         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
8329         Likewise.
8330         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
8331         Likewise.
8332         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
8333         Likewise.
8334         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
8335         Likewise.
8336         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
8337         Likewise.
8338         * features/i386/64bit-avx512.c
8339         (create_feature_i386_64bit_avx512): Likewise.
8340         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
8341         Likewise.
8342         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
8343         Likewise.
8344         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
8345         Likewise.
8346         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
8347         Likewise.
8348         * features/i386/64bit-segments.c
8349         (create_feature_i386_64bit_segments): Likewise.
8350         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
8351         Likewise.
8352         * features/i386/x32-core.c
8353         (create_feature_i386_x32_core): Likewise.
8354         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
8355         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
8356         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
8357         * target-descriptions.c: In generated code, don't pass xml
8358         filename.
8359
8360 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
8361
8362         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
8363         (print_xml_feature::visit_post): Likewise.
8364         (print_xml_feature::visit): Likewise.
8365         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
8366         (print_xml_feature): Add new class.
8367         * regformats/regdat.sh: Null xmltarget on feature targets.
8368         * target-descriptions.c (struct target_desc): Add xmltarget.
8369         (maintenance_check_tdesc_xml_convert): Add unittest function.
8370         (tdesc_get_features_xml): Add function to get xml.
8371         (maintenance_check_xml_descriptions): Test xml generation.
8372         * xml-tdesc.c (string_read_description_xml): Add function.
8373         * xml-tdesc.h (string_read_description_xml): Add declaration.
8374
8375 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
8376
8377         * features/Makefile: Add feature marker to targets with new style
8378         target descriptions.
8379         * regformats/aarch64.dat: Regenerate.
8380         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
8381         * regformats/i386/amd64-avx-linux.dat: Likewise.
8382         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
8383         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
8384         * regformats/i386/amd64-linux.dat: Likewise.
8385         * regformats/i386/amd64-mpx-linux.dat: Likewise.
8386         * regformats/i386/amd64.dat: Likewise.
8387         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
8388         * regformats/i386/i386-avx-linux.dat: Likewise.
8389         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
8390         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
8391         * regformats/i386/i386-linux.dat: Likewise.
8392         * regformats/i386/i386-mmx-linux.dat: Likewise.
8393         * regformats/i386/i386-mpx-linux.dat: Likewise.
8394         * regformats/i386/i386.dat: Likewise.
8395         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
8396         * regformats/i386/x32-avx-linux.dat: Likewise.
8397         * regformats/i386/x32-linux.dat: Likewise.
8398         * regformats/tic6x-c62x-linux.dat: Likewise.
8399         * regformats/tic6x-c64x-linux.dat: Likewise.
8400         * regformats/tic6x-c64xp-linux.dat: Likewise.
8401         * regformats/regdat.sh: Parse feature marker.
8402
8403 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
8404
8405         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
8406         (tdesc_osabi_name): Likewise.
8407         * target-descriptions.c (tdesc_architecture_name): Add new
8408         function.
8409         (tdesc_osabi_name): Likewise.
8410
8411 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
8412
8413         * common/tdesc.c (tdesc_predefined_type): Move to here.
8414         (tdesc_named_type): Likewise.
8415         (tdesc_create_vector): Likewise.
8416         (tdesc_create_struct): Likewise.
8417         (tdesc_set_struct_size): Likewise.
8418         (tdesc_create_union): Likewise.
8419         (tdesc_create_flags): Likewise.
8420         (tdesc_create_enum): Likewise.
8421         (tdesc_add_field): Likewise.
8422         (tdesc_add_typed_bitfield): Likewise.
8423         (tdesc_add_bitfield): Likewise.
8424         (tdesc_add_flag): Likewise.
8425         (tdesc_add_enum_value): Likewise.
8426         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
8427         (struct tdesc_type_vector): Likewise.
8428         (struct tdesc_type_field): Likewise.
8429         (struct tdesc_type_with_fields): Likewise.
8430         (tdesc_create_enum): Add declaration.
8431         (tdesc_add_typed_bitfield): Likewise.
8432         (tdesc_add_enum_value): Likewise.
8433         * target-descriptions.c (tdesc_type_field): Move from here.
8434         (tdesc_type_builtin): Likewise.
8435         (tdesc_type_vector): Likewise.
8436         (tdesc_type_with_fields): Likewise.
8437         (tdesc_predefined_types): Likewise.
8438         (tdesc_named_type): Likewise.
8439         (tdesc_create_vector): Likewise.
8440         (tdesc_create_struct): Likewise.
8441         (tdesc_set_struct_size): Likewise.
8442         (tdesc_create_union): Likewise.
8443         (tdesc_create_flags): Likewise.
8444         (tdesc_create_enum): Likewise.
8445         (tdesc_add_field): Likewise.
8446         (tdesc_add_typed_bitfield): Likewise.
8447         (tdesc_add_bitfield): Likewise.
8448         (tdesc_add_flag): Likewise.
8449         (tdesc_add_enum_value): Likewise.
8450         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
8451         (tdesc_add_typed_bitfield): Likewise.
8452         (tdesc_add_enum_value): Likewise.
8453
8454 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
8455
8456         * common/tdesc.c (tdesc_feature::accept): Move to here.
8457         (tdesc_feature::operator==): Likewise.
8458         (tdesc_create_reg): Likewise.
8459         * common/tdesc.h (tdesc_type_kind): Likewise.
8460         (struct tdesc_type): Likewise.
8461         (struct tdesc_feature): Likewise.
8462         * regformats/regdat.sh: Create a feature.
8463         * target-descriptions.c (tdesc_type_kind): Move from here.
8464         (tdesc_type): Likewise.
8465         (tdesc_type_up): Likewise.
8466         (tdesc_feature): Likewise.
8467         (tdesc_create_reg): Likewise.
8468
8469 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
8470
8471         * Makefile.in: Add arch/tdesc.c
8472         * common/tdesc.c: New file.
8473         * common/tdesc.h (tdesc_element_visitor): Move to here.
8474         (tdesc_element): Likewise.
8475         (tdesc_reg): Likewise.
8476         (tdesc_reg_up): Likewise.
8477         * regformats/regdef.h (reg): Add offset to constructors.
8478         * target-descriptions.c (tdesc_element_visitor): Move from here.
8479         (tdesc_element): Likewise.
8480         (tdesc_reg): Likewise.
8481         (tdesc_reg_up): Likewise.
8482
8483 2018-04-17  Tom Tromey  <tom@tromey.com>
8484
8485         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
8486         discriminant field.
8487
8488 2018-04-17  Tom Tromey  <tom@tromey.com>
8489
8490         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
8491
8492 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
8493
8494         * symtab.c (print_symbol_info): Skip printing filename and line
8495         number when `last' is NULL.
8496         (symtab_symbol_info): Use empty string instead of NULL for first
8497         invocation of print_symbol_info.
8498         (rbreak_command): Pass NULL to `last' parameter of
8499         print_symbol_info.
8500
8501 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
8502
8503         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
8504         instead of nullptr.
8505
8506 2018-04-16  Pedro Alves  <palves@redhat.com>
8507
8508         * MAINTAINERS (sh): Remove.
8509         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
8510         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
8511         (ALLDEPFILES): Remove sh64-tdep.c.
8512         * NEWS: Mentions that support for SH-5/SH64 is removed.
8513         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
8514         (sh*-*-openbsd*): Ditto.
8515         (sh64-*-elf*): Remove.
8516         (sh*): Remove.
8517         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
8518         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
8519         * sh-tdep.c: No longer include "sh64-tdep.h".
8520         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
8521         * sh64-tdep.c, sh64-tdep.h: Remove files.
8522
8523 2018-04-16  Pedro Alves  <palves@redhat.com>
8524
8525         * MAINTAINERS: Remove m88k.
8526         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
8527         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
8528         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
8529         * NEWS: Mention that support for m88k was removed.
8530         * configure.host (m88*-*-*): Remove support.
8531         * configure.nat (m88k-*-*): Remove support.
8532         * configure.tgt (m88*-*-openbsd*): Remove.
8533         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
8534
8535 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
8536
8537         * configure.tgt (x86_tobjs): New variable.
8538         (amd64_tobjs, i386_tobjs): Use it.
8539
8540 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
8541
8542         * symtab.c (print_symbol_info): Precede the symbol definition by
8543         the line number when available.
8544         * NEWS: Advertise this enhancement.
8545
8546 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
8547
8548         * NEWS (New options): announce set/show record btrace cpu.
8549         * btrace.c: Include record-btrace.h.
8550         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
8551         the vendor is unknown.
8552         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
8553         Maybe overwrite the btrace configuration's cpu.
8554         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
8555         (btrace_fetch): Add cpu parameter.  Update callers.
8556         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
8557         Maybe overwrite the btrace configuration's cpu.  Skip enabling
8558         errata workarounds if the vendor is unknown.
8559         * python/py-record-btrace.c: Include record-btrace.h.
8560         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
8561         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
8562         * record-btrace.c (record_btrace_cpu_state_kind): New.
8563         (record_btrace_cpu): New.
8564         (set_record_btrace_cpu_cmdlist): New.
8565         (record_btrace_get_cpu): New.
8566         (require_btrace_thread, record_btrace_info)
8567         (record_btrace_resume_thread): Call record_btrace_get_cpu.
8568         (cmd_set_record_btrace_cpu_none): New.
8569         (cmd_set_record_btrace_cpu_auto): New.
8570         (cmd_set_record_btrace_cpu): New.
8571         (cmd_show_record_btrace_cpu): New.
8572         (_initialize_record_btrace): Initialize set/show record btrace cpu
8573         commands.
8574         * record-btrace.h (record_btrace_get_cpu): New.
8575
8576 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
8577
8578         * record.c (set_record_command): Fix typo in message.
8579
8580 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
8581
8582         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
8583
8584 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
8585
8586         * infrun.c (process_event_stop_test): Call
8587         gdbarch_in_indirect_branch_thunk.
8588         * gdbarch.sh (in_indirect_branch_thunk): New.
8589         * gdbarch.c: Regenerated.
8590         * gdbarch.h: Regenerated.
8591         * x86-tdep.h: New.
8592         * x86-tdep.c: New.
8593         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
8594         (HFILES_NO_SRCDIR): Add x86-tdep.h.
8595         (ALLDEPFILES): Add x86-tdep.c.
8596         * arch-utils.h (default_in_indirect_branch_thunk): New.
8597         * arch-utils.c (default_in_indirect_branch_thunk): New.
8598         * i386-tdep: Include x86-tdep.h.
8599         (i386_in_indirect_branch_thunk): New.
8600         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
8601         function.
8602         * amd64-tdep: Include x86-tdep.h.
8603         (amd64_in_indirect_branch_thunk): New.
8604         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
8605
8606 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
8607
8608         PR gdb/23053
8609         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
8610         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
8611         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
8612         regression.
8613
8614 2018-04-12  Tom Tromey  <tom@tromey.com>
8615
8616         * rust-lang.c (rust_print_struct_def): Remove univariant code.
8617         (rust_evaluate_subexp): Likewise.
8618
8619 2018-04-12  Pedro Alves  <palves@redhat.com>
8620
8621         * procfs.c (procfs_detach): Make forward declaration's prototype
8622         match definition's protototype.
8623         (proc_get_LDT_entry): Remove stale do_cleanups call.
8624
8625 2018-04-12  Pedro Alves  <palves@redhat.com>
8626
8627         * target.h (target_ops::to_has_exited): Delete.
8628         (target_has_exited): Delete.
8629         * target-delegates.c: Regenerate.
8630
8631 2018-04-11  Pedro Alves  <palves@redhat.com>
8632
8633         * target.c (fileio_fh_t::t): Add comment.
8634         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
8635         (target_fileio_close): Handle a NULL target.
8636         (invalidate_fileio_fh): New.
8637         (target_close): Call it.
8638         * remote.c (remote_hostio_send_command): No longer check whether
8639         remote_desc is open.
8640
8641 2018-04-11  Pedro Alves  <palves@redhat.com>
8642
8643         * target.c (fileio_fh_t): Make it a named struct instead of a
8644         typedef.
8645         (fileio_fh_t::is_closed): New method.
8646         (DEF_VEC_O (fileio_fh_t)): Remove.
8647         (fileio_fhandles): Now a std::vector.
8648         (is_closed_fileio_fh): Delete.
8649         (acquire_fileio_fd): Adjust.  Rename parameters.
8650         (release_fileio_fd): Adjust.
8651         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
8652         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
8653         (target_fileio_close): Adjust.
8654
8655 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
8656
8657         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
8658         index.
8659
8660 2018-04-10  Pedro Alves  <palves@redhat.com>
8661
8662         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
8663         (scoped_finish_thread_state): New class.
8664         * infcmd.c (run_command_1): Use it instead of finish_thread_state
8665         cleanup.
8666         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
8667         (fetch_inferior_event, normal_stop): Likewise.
8668         * thread.c (finish_thread_state_cleanup): Delete.
8669
8670 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
8671             Pedro Alves  <palves@redhat.com>
8672
8673         * value.c: Include "selftest.h" and "common/array-view.h".
8674         (struct range) <operator ==>: New.
8675         (test_ranges_contain): New.
8676         (check_ranges_vector): New.
8677         (test_insert_into_bit_range_vector): New.
8678         (_initialize_values): Register selftests.
8679         * common/array-view.h (operator==, operator!=): New.
8680
8681 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
8682
8683         * common/gdb_vecs.h (unordered_remove): Add overload that takes
8684         an iterator.
8685         * inline-frame.c: Include <algorithm>.
8686         (struct inline_state): Add constructor.
8687         (inline_state_s): Remove.
8688         (DEF_VEC_O(inline_state_s)): Remove.
8689         (inline_states): Change type to std::vector.
8690         (find_inline_frame_state): Adjust to std::vector.
8691         (allocate_inline_frame_state): Remove.
8692         (clear_inline_frame_state): Adjust to std::vector.
8693         (skip_inline_frames): Adjust to std::vector.
8694
8695 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
8696
8697         * tracepoint.h (struct trace_state_variable): Add constructor.
8698         <name>: Change type to std::string.
8699         * tracepoint.c (tsv_s): Remove.
8700         (DEF_VEC_O(tsv_s)): Remove.
8701         (tvariables): Change to std::vector.
8702         (create_trace_state_variable): Adjust to std::vector.
8703         (find_trace_state_variable): Likewise.
8704         (find_trace_state_variable_by_number): Likewise.
8705         (delete_trace_state_variable): Likewise.
8706         (trace_variable_command): Adjust to std::string.
8707         (delete_trace_variable_command): Likewise.
8708         (tvariables_info_1): Adjust to std::vector.
8709         (save_trace_state_variables): Likewise.
8710         (start_tracing): Likewise.
8711         (merge_uploaded_trace_state_variables): Adjust to std::vector
8712         and std::string.
8713         * target.h (struct target_ops)
8714         <to_download_trace_state_variable>: Pass reference to
8715         trace_state_variable.
8716         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
8717         * target-delegates.c: Re-generate.
8718         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
8719         (mi_tsv_deleted): Likewise.
8720         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
8721         * remote.c (remote_download_trace_state_variable): Change
8722         pointer to reference and adjust.
8723         * make-target-delegates (parse_argtypes): Handle references.
8724         (write_function_header): Likewise.
8725         (munge_type): Likewise.
8726
8727 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
8728
8729         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
8730         string_view-selftests.c.
8731         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
8732         testsuite.
8733         * unittests/basic_string_view/cons/char/1.cc: Likewise.
8734         * unittests/basic_string_view/cons/char/2.cc: Likewise.
8735         * unittests/basic_string_view/cons/char/3.cc: Likewise.
8736         * unittests/basic_string_view/element_access/char/1.cc:
8737         Likewise.
8738         * unittests/basic_string_view/element_access/char/empty.cc:
8739         Likewise.
8740         * unittests/basic_string_view/element_access/char/front_back.cc:
8741         Likewise.
8742         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
8743         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
8744         Likewise.
8745         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
8746         Likewise.
8747         * unittests/basic_string_view/modifiers/swap/char/1.cc:
8748         Likewise.
8749         * unittests/basic_string_view/operations/compare/char/1.cc:
8750         Likewise.
8751         * unittests/basic_string_view/operations/compare/char/13650.cc:
8752         Likewise.
8753         * unittests/basic_string_view/operations/copy/char/1.cc:
8754         Likewise.
8755         * unittests/basic_string_view/operations/data/char/1.cc:
8756         Likewise.
8757         * unittests/basic_string_view/operations/find/char/1.cc:
8758         Likewise.
8759         * unittests/basic_string_view/operations/find/char/2.cc:
8760         Likewise.
8761         * unittests/basic_string_view/operations/find/char/3.cc:
8762         Likewise.
8763         * unittests/basic_string_view/operations/find/char/4.cc:
8764         Likewise.
8765         * unittests/basic_string_view/operations/rfind/char/1.cc:
8766         Likewise.
8767         * unittests/basic_string_view/operations/rfind/char/2.cc:
8768         Likewise.
8769         * unittests/basic_string_view/operations/rfind/char/3.cc:
8770         Likewise.
8771         * unittests/basic_string_view/operations/substr/char/1.cc:
8772         Likewise.
8773         * unittests/basic_string_view/operators/char/2.cc: Likewise.
8774         * unittests/string_view-selftests.c: New file.
8775
8776 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
8777
8778         * unittests/basic_string_view/capacity/1.cc: New file.
8779         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
8780         * unittests/basic_string_view/cons/char/1.cc: New file.
8781         * unittests/basic_string_view/cons/char/2.cc: New file.
8782         * unittests/basic_string_view/cons/char/3.cc: New file.
8783         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
8784         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
8785         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
8786         * unittests/basic_string_view/element_access/char/1.cc: New file.
8787         * unittests/basic_string_view/element_access/char/2.cc: New file.
8788         * unittests/basic_string_view/element_access/char/empty.cc: New file.
8789         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
8790         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
8791         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
8792         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
8793         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
8794         * unittests/basic_string_view/include.cc: New file.
8795         * unittests/basic_string_view/inserters/char/1.cc: New file.
8796         * unittests/basic_string_view/inserters/char/2.cc: New file.
8797         * unittests/basic_string_view/inserters/char/3.cc: New file.
8798         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
8799         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
8800         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
8801         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
8802         * unittests/basic_string_view/literals/types.cc: New file.
8803         * unittests/basic_string_view/literals/values.cc: New file.
8804         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
8805         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
8806         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
8807         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
8808         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
8809         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
8810         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
8811         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
8812         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
8813         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
8814         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
8815         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
8816         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
8817         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
8818         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
8819         * unittests/basic_string_view/operations/data/char/1.cc: New file.
8820         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
8821         * unittests/basic_string_view/operations/find/char/1.cc: New file.
8822         * unittests/basic_string_view/operations/find/char/2.cc: New file.
8823         * unittests/basic_string_view/operations/find/char/3.cc: New file.
8824         * unittests/basic_string_view/operations/find/char/4.cc: New file.
8825         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
8826         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
8827         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
8828         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
8829         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
8830         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
8831         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
8832         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
8833         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
8834         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
8835         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
8836         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
8837         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
8838         * unittests/basic_string_view/operators/char/2.cc: New file.
8839         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
8840         * unittests/basic_string_view/range_access/char/1.cc: New file.
8841         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
8842         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
8843         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
8844         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
8845         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
8846         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
8847         * unittests/basic_string_view/requirements/typedefs.cc: New file.
8848         * unittests/basic_string_view/typedefs.cc: New file.
8849         * unittests/basic_string_view/types/1.cc: New file.
8850
8851 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
8852
8853         * common/gdb_string_view.h: Remove libstdc++ implementation
8854         details, adjust to gdb reality.
8855         * common/gdb_string_view.tcc: Likewise.
8856         * cli/cli-script.c (struct string_view): Remove.
8857         (user_args) <m_args>: Change element type to gdb::string_view.
8858         (user_args::insert_args): Adjust.
8859
8860 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
8861
8862         * common/gdb_string_view.h: New file.
8863         * common/gdb_string_view.tcc: New file.
8864
8865 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
8866
8867         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
8868         * configure: Re-generate.
8869
8870 2018-04-09  Pedro Alves  <palves@redhat.com>
8871
8872         * gdbarch.sh: Include "observable.h" instead of "observer.h".
8873         (set_target_gdbarch): Call
8874         gdb::observers::architecture_changed.notify instead of
8875         observer_notify_architecture_changed.
8876
8877 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
8878
8879         * tracepoint.c (struct current_traceframe_cleanup): Remove.
8880         (do_restore_current_traceframe_cleanup): Remove.
8881         (restore_current_traceframe_cleanup_dtor): Remove.
8882         (make_cleanup_restore_current_traceframe): Remove.
8883         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
8884         New.
8885         * tracepoint.h (struct scoped_restore_current_traceframe): New.
8886         * infrun.c (fetch_inferior_event): Use
8887         scoped_restore_current_traceframe.
8888
8889 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
8890
8891         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
8892         Remove.
8893         <n_allocated_type_units>: Remove.
8894         <all_type_units>: Change to std::vector.
8895         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
8896         to std::vector change.
8897         (dwarf2_per_objfile::get_cutu): Likewise.
8898         (dwarf2_per_objfile::get_tu): Likewise.
8899         (create_signatured_type_table_from_index): Likewise.
8900         (create_signatured_type_table_from_debug_names): Likewise.
8901         (dw2_symtab_iter_next): Likewise.
8902         (dw2_print_stats): Likewise.
8903         (dw2_expand_all_symtabs): Likewise.
8904         (dw2_expand_marked_cus): Likewise.
8905         (dw2_debug_names_iterator::next): Likewise.
8906         (dwarf2_initialize_objfile): Likewise.
8907         (add_signatured_type_cu_to_table): Likewise.
8908         (create_all_type_units): Likewise.
8909         (add_type_unit): Likewise.
8910         (struct tu_abbrev_offset): Add constructor.
8911         (build_type_psymtabs_1): Adjust to std::vector change.
8912         (print_tu_stats): Likewise.
8913         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
8914         (write_debug_names): Likewise.
8915
8916 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
8917
8918         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
8919         Make an std::vector.
8920         <n_comp_units>: Remove.
8921         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
8922         to std::vector change.
8923         (dwarf2_per_objfile::get_cutu): Likewise.
8924         (dwarf2_per_objfile::get_cu): Likewise.
8925         (create_cus_from_index): Likewise.
8926         (create_addrmap_from_index): Likewise.
8927         (create_addrmap_from_aranges): Likewise.
8928         (dwarf2_read_index): Likewise.
8929         (dw2_find_last_source_symtab): Likewise.
8930         (dw2_map_symtabs_matching_filename): Likewise.
8931         (dw2_symtab_iter_next): Likewise.
8932         (dw2_print_stats): Likewise.
8933         (dw2_expand_all_symtabs): Likewise.
8934         (dw2_expand_symtabs_with_fullname): Likewise.
8935         (dw2_expand_marked_cus): Likewise.
8936         (dw2_map_symbol_filenames): Likewise.
8937         (create_cus_from_debug_names): Likewise.
8938         (dwarf2_read_debug_names): Likewise.
8939         (dw2_debug_names_iterator::next): Likewise.
8940         (dwarf2_initialize_objfile): Likewise.
8941         (set_partial_user): Likewise.
8942         (dwarf2_build_psymtabs_hard): Likewise.
8943         (read_comp_units_from_section): Remove arguments, adjust to
8944         std::vector change.
8945         (create_all_comp_units): Adjust to std::vector and
8946         read_comp_units_from_section changes.
8947         (dwarf2_find_containing_comp_unit): Adjust to std::vector
8948         change.
8949         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
8950         (psyms_seen_size): Likewise.
8951         (write_gdbindex): Likewise.
8952         (write_debug_names): Likewise.
8953
8954 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
8955
8956         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
8957         with dwarf2_per_objfile.
8958         (create_cus_from_index): Likewise.
8959         (create_signatured_type_table_from_index): Likewise.
8960         (dwarf2_read_index): Likewise.
8961         (dwarf2_initialize_objfile): Likewise.
8962         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
8963         per_cu rather than get_dwarf2_per_objfile.
8964
8965 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
8966
8967         * dwarf2read.h (struct signatured_type): Forward declare.
8968         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
8969         New methods.
8970         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
8971         (dw2_get_cutu): ...this.
8972         (dwarf2_per_objfile::get_cu): Rename from...
8973         (dw2_get_cu): ...this.
8974         (dwarf2_per_objfile::get_tu): New.
8975         (create_addrmap_from_index): Adjust.
8976         (create_addrmap_from_aranges): Adjust.
8977         (dw2_find_last_source_symtab): Adjust.
8978         (dw2_map_symtabs_matching_filename): Adjust.
8979         (dw2_symtab_iter_next): Adjust.
8980         (dw2_print_stats): Adjust.
8981         (dw2_expand_all_symtabs): Adjust.
8982         (dw2_expand_symtabs_with_fullname): Adjust.
8983         (dw2_expand_marked_cus): Adjust.
8984         (dw_expand_symtabs_matching_file_matcher): Adjust.
8985         (dw2_map_symbol_filenames): Adjust.
8986         (dw2_debug_names_iterator::next): Adjust.
8987         (dwarf2_initialize_objfile): Adjust.
8988         (set_partial_user): Adjust.
8989         (dwarf2_build_psymtabs_hard): Adjust.
8990
8991 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
8992
8993         * dwarf2read.c (create_signatured_type_table_from_debug_names):
8994         Remove unused variables.
8995         (dw2_map_symtabs_matching_filename): Likewise.
8996         (dwarf2_record_block_ranges): Likewise.
8997         (dwarf2_read_addr_index): Likewise.
8998         (follow_die_offset): Likewise.
8999
9000 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9001
9002         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
9003         to symbol_file_add_main.
9004
9005 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9006
9007         PR mi/22299
9008         * mi/mi-console.c (do_fputc_async_safe): New.
9009         (mi_console_file::write_async_safe): New.
9010         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
9011         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
9012         New.
9013         * ui-file.c (ui_file::putstrn): Adjust call to
9014         fputstrn_unfiltered.
9015         * utils.c (printchar): Replace do_fputs and do_fprintf
9016         parameters by do_fputc.
9017         (fputstr_filtered): Adjust call to printchar.
9018         (fputstr_unfiltered): Likewise.
9019         (fputstrn_filtered): Likewise.
9020         (fputstrn_unfiltered): Add do_fputc parameter, pass to
9021         printchar.
9022         * utils.h (do_fputc_ftype): New typedef.
9023         (fputstrn_unfiltered): Add do_fputc parameter.
9024
9025 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9026
9027         * regformats/i386/i386-avx.dat: Remove.
9028
9029 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
9030
9031         PR gdb/22979
9032         * amd64-tdep.c (amd64_none_init_abi): New function.
9033         (amd64_x32_none_init_abi): New function.
9034         (_initialize_amd64_tdep): Register handlers for x86-64 and
9035         x64_32 with GDB_OSABI_NONE.
9036         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
9037         GDB_OSABI_NONE osabi.
9038
9039 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
9040
9041         PR gdb/22980
9042         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
9043         GDB_OSABI_NONE.
9044         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
9045         * osabi.c (gdb_osabi_names): Add "unknown" entry.
9046
9047 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
9048
9049         * common/byte-vector.h (char_vector): New type.
9050         * target.h (target_read_alloc): Return
9051         gdb::optional<byte_vector>.
9052         (target_read_stralloc): Return gdb::optional<char_vector>.
9053         (target_get_osdata): Return gdb::optional<char_vector>.
9054         * target.c (target_read_alloc_1): Templatize.  Replacement
9055         manual memory management with vector.
9056         (target_read_alloc): Change return type, adjust.
9057         (target_read_stralloc): Change return type, adjust.
9058         (target_get_osdata): Change return type, adjust.
9059         * auxv.c (struct auxv_info) <length>: Remove.
9060         <data>: Change type to gdb::optional<byte_vector>.
9061         (auxv_inferior_data_cleanup): Free auxv_info with delete.
9062         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
9063         (target_auxv_search): Adjust.
9064         (fprint_target_auxv): Adjust.
9065         * avr-tdep.c (avr_io_reg_read_command): Adjust.
9066         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
9067         (linux_make_corefile_notes): Adjust.
9068         * osdata.c (get_osdata): Adjust.
9069         * remote.c (remote_get_threads_with_qxfer): Adjust.
9070         (remote_memory_map): Adjust.
9071         (remote_traceframe_info): Adjust.
9072         (btrace_read_config): Adjust.
9073         (remote_read_btrace): Adjust.
9074         (remote_pid_to_exec_file): Adjust.
9075         * solib-aix.c (solib_aix_get_library_list): Adjust.
9076         * solib-dsbt.c (decode_loadmap): Don't free buf.
9077         (dsbt_get_initial_loadmaps): Adjust.
9078         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
9079         * solib-target.c (solib_target_current_sos): Adjust.
9080         * tracepoint.c (sdata_make_value): Adjust.
9081         * xml-support.c (xinclude_start_include): Adjust.
9082         (xml_fetch_content_from_file): Adjust.
9083         * xml-support.h (xml_fetch_another): Change return type.
9084         (xml_fetch_content_from_file): Change return type.
9085         * xml-syscall.c (xml_init_syscalls_info): Adjust.
9086         * xml-tdesc.c (file_read_description_xml): Adjust.
9087         (fetch_available_features_from_target): Change return type.
9088         (target_fetch_description_xml): Adjust.
9089         (target_read_description_xml): Adjust.
9090
9091 2018-04-06  Tom Tromey  <tom@tromey.com>
9092
9093         * value.c (~value): Update.
9094         (struct value) <contents>: Now unique_xmalloc_ptr.
9095         (value_contents_bits_eq, allocate_value_contents)
9096         (value_contents_raw, value_contents_all_raw)
9097         (value_contents_for_printing, value_contents_for_printing_const)
9098         (set_value_enclosing_type): Update.
9099
9100 2018-04-06  Tom Tromey  <tom@tromey.com>
9101
9102         * value.c (range_s): Remove typedef, VEC.
9103         (struct range): Add operator<.
9104         (range_lessthan): Remove.
9105         (ranges_contain): Change type.
9106         (~value): Update.
9107         (struct value) <unavailable, optimized_out>: Now std::vector.
9108         (value_entirely_available)
9109         (value_entirely_covered_by_range_vector)
9110         (value_entirely_unavailable, value_entirely_optimized_out):
9111         Update.
9112         (insert_into_bit_range_vector): Change argument type.
9113         (find_first_range_overlap): Likewise.
9114         (struct ranges_and_idx, value_contents_bits_eq)
9115         (require_not_optimized_out, require_available): Update.
9116         (ranges_copy_adjusted): Change argument types.
9117         (value_optimized_out, value_copy, value_fetch_lazy): Update.
9118
9119 2018-04-06  Tom Tromey  <tom@tromey.com>
9120
9121         * value.c (~value): Update.
9122         (struct value) <parent>: Now a value_ref_ptr.
9123         (value_parent, set_value_parent, value_address, value_copy):
9124         Update.
9125
9126 2018-04-06  Tom Tromey  <tom@tromey.com>
9127
9128         * value.c (struct value): Add constructor, destructor, and member
9129         initializers.
9130         (allocate_value_lazy, value_decref): Update.
9131
9132 2018-04-06  Tom Tromey  <tom@tromey.com>
9133
9134         * value.c (struct value) <released, next>: Remove.
9135         (all_values): Now a std::vector.
9136         (allocate_value_lazy): Update.
9137         (value_next): Remove.
9138         (value_mark, value_free_to_mark, release_value)
9139         (value_release_to_mark): Update.
9140
9141 2018-04-06  Tom Tromey  <tom@tromey.com>
9142
9143         * value.h (fetch_subexp_value, value_release_to_mark): Update.
9144         (free_value_chain): Remove.
9145         * value.c (free_value_chain): Remove.
9146         (value_release_to_mark): Return a std::vector.
9147         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
9148         std::vector.
9149         (check_condition): Update.
9150         * eval.c (fetch_subexp_value): Change "val_chain" to a
9151         std::vector.
9152         * breakpoint.c (update_watchpoint): Update.
9153         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
9154
9155 2018-04-06  Tom Tromey  <tom@tromey.com>
9156
9157         * value.h (free_all_values): Remove.
9158         * value.c (free_all_values): Remove.
9159
9160 2018-04-06  Tom Tromey  <tom@tromey.com>
9161
9162         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
9163         (value_history_chain, value_history_count): Remove.
9164         (value_history): New global.
9165         (record_latest_value, access_value_history, show_values)
9166         (preserve_values): Update.
9167
9168 2018-04-06  Tom Tromey  <tom@tromey.com>
9169
9170         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
9171         * varobj.c (varobj_set_display_format, varobj_set_value)
9172         (install_default_visualizer, construct_visualizer)
9173         (install_new_value, ~varobj, varobj_get_value_type)
9174         (my_value_of_variable, varobj_editable_p): Update.
9175         * c-varobj.c (c_describe_child, c_value_of_variable)
9176         (cplus_number_of_children, cplus_describe_child): Update.
9177         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
9178         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
9179         (ada_value_of_variable, ada_value_is_changeable_p): Update.
9180
9181 2018-04-06  Tom Tromey  <tom@tromey.com>
9182
9183         * printcmd.c (last_examine_address): Change type to
9184         value_ref_ptr.
9185         (do_examine, x_command): Update.
9186
9187 2018-04-06  Tom Tromey  <tom@tromey.com>
9188
9189         * value.c (release_value): Update.
9190         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
9191         (struct bpstats) <val>: Now a value_ref_ptr.
9192         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
9193         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
9194         (~watchpoint, print_it_watchpoint, watch_command_1)
9195         (invalidate_bp_value_on_memory_change): Update.
9196
9197 2018-04-06  Tom Tromey  <tom@tromey.com>
9198
9199         * varobj.c (varobj_clear_saved_item)
9200         (update_dynamic_varobj_children, install_new_value, ~varobj):
9201         Update.
9202         * value.h (value_incref): Move declaration earlier.
9203         (value_decref): Rename from value_free.
9204         (struct value_ref_policy): New.
9205         (value_ref_ptr): New typedef.
9206         (struct value_deleter): Remove.
9207         (gdb_value_up): Remove typedef.
9208         (release_value): Change return type.
9209         (release_value_or_incref): Remove.
9210         * value.c (set_value_parent): Update.
9211         (value_incref): Change return type.
9212         (value_decref): Rename from value_free.
9213         (value_free_to_mark, free_all_values, free_value_chain): Update.
9214         (release_value): Return value_ref_ptr.
9215         (release_value_or_incref): Remove.
9216         (record_latest_value, set_internalvar, clear_internalvar):
9217         Update.
9218         * stack.c (info_frame_command): Don't call value_free.
9219         * python/py-value.c (valpy_dealloc, valpy_new)
9220         (value_to_value_object): Update.
9221         * printcmd.c (do_examine): Update.
9222         * opencl-lang.c (lval_func_free_closure): Update.
9223         * mi/mi-main.c (register_changed_p): Don't call value_free.
9224         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
9225         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
9226         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
9227         value_free.
9228         * guile/scm-value.c (vlscm_free_value_smob)
9229         (vlscm_scm_from_value): Update.
9230         * frame.c (frame_register_unwind, frame_unwind_register_signed)
9231         (frame_unwind_register_unsigned, get_frame_register_bytes)
9232         (put_frame_register_bytes): Don't call value_free.
9233         * findvar.c (address_from_register): Don't call value_free.
9234         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
9235         * dwarf2loc.c (entry_data_value_free_closure)
9236         (value_of_dwarf_reg_entry, free_pieced_value_closure)
9237         (dwarf2_evaluate_loc_desc_full): Update.
9238         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
9239         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
9240         (~watchpoint, watch_command_1)
9241         (invalidate_bp_value_on_memory_change): Update.
9242         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
9243
9244 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
9245
9246         PR gdb/23022
9247         * warning.m4: Add -Wno-error=deprecated-register.
9248         * configure: Re-generate.
9249
9250 2018-04-05  Tom Tromey  <tom@tromey.com>
9251
9252         * linespec.h: Remove include of "vec.h".
9253
9254 2018-04-05  Tom Tromey  <tom@tromey.com>
9255
9256         * linespec.c (typep): Remove typedef.
9257         (find_methods, find_superclass_methods): Take a std::vector.
9258         (find_method): Use std::vector.
9259
9260 2018-04-05  Tom Tromey  <tom@tromey.com>
9261
9262         * utils.c (compare_strings): Remove.
9263         * utils.h (compare_strings): Remove.
9264         * objc-lang.h (find_imps): Update.
9265         * objc-lang.c (find_methods): Take a std::vector.
9266         (uniquify_strings, find_imps): Likewise.
9267         * linespec.c (find_methods): Take a std::vector.
9268         (decode_objc): Use std::vector.
9269         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
9270         a std::vector.
9271         (find_method, find_function_symbols): Use std::vector.
9272
9273 2018-04-05  Tom Tromey  <tom@tromey.com>
9274
9275         * completer.c (completion_tracker::completion_tracker): Remove
9276         cast.
9277         (completion_tracker::discard_completions): Likewise.
9278         * breakpoint.c (ambiguous_names_p): Remove cast.
9279         * ada-lang.c (_initialize_ada_language): Remove cast.
9280         * utils.h (streq): Update.
9281         (streq_hash): Add new declaration.
9282         * utils.c (streq): Return bool.
9283         (streq_hash): New function.
9284
9285 2018-04-05  Tom Tromey  <tom@tromey.com>
9286
9287         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
9288         Remove a string copy.
9289
9290 2018-04-05  Tom Tromey  <tom@tromey.com>
9291
9292         * linespec.c (filter_results): Use std::vector.
9293         (decode_line_2, decode_line_full): Update.
9294
9295 2018-04-05  Tom Tromey  <tom@tromey.com>
9296
9297         * linespec.c (canonical_to_fullform): Return std::string.
9298         (filter_results): Update.
9299         (struct decode_line_2_item): Add constructor.
9300         <fullform, displayform>: Now std::string.
9301         (decode_line_2_compare_items): Now a std::sort comparator.
9302         (decode_line_2): Update.
9303
9304 2018-04-05  Tom Tromey  <tom@tromey.com>
9305
9306         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
9307         (unexpected_linespec_error): Update.
9308         (linespec_parse_basic, parse_linespec): Update.
9309
9310 2018-04-05  Tom Tromey  <tom@tromey.com>
9311
9312         * linespec.c (linespec_parse_basic): Reindent.
9313
9314 2018-04-05  Tom Tromey  <tom@tromey.com>
9315
9316         * minsyms.h (iterate_over_minimal_symbols): Update.
9317         * minsyms.c (iterate_over_minimal_symbols): Take a
9318         gdb::function_view.
9319         * linespec.c (struct collect_minsyms): Remove.
9320         (compare_msyms): Now a std::sort comparator.
9321         (add_minsym): Add parameters.
9322         (search_minsyms_for_name): Update.  Use std::vector.
9323
9324 2018-04-03  Tom Tromey  <tom@tromey.com>
9325
9326         * mipsread.c (read_alphacoff_dynamic_symtab): Use
9327         gdb::byte_vector.
9328
9329 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
9330
9331         * MAINTAINERS (Write After Approval): Add Weimin Pan.
9332
9333 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
9334
9335         PR gdb/16959
9336         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
9337         printing static type.
9338
9339 2018-04-01  Tom Tromey  <tom@tromey.com>
9340
9341         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
9342         (rs6000_xfer_shared_libraries): Update.
9343
9344 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
9345
9346         * common/gdb_vecs.h (char_ptr): Remove.
9347         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
9348
9349 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
9350
9351         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
9352         with std::vector.
9353         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
9354
9355 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
9356
9357         * tracepoint.h (struct uploaded_tp): Initialize fields.
9358         <actions, step_actions, cmd_strings>: Change type to
9359         std::vector<char *>.
9360         * tracepoint.c (get_uploaded_tp): Allocate with new.
9361         (free_uploaded_tps): Free with delete.
9362         (parse_tracepoint_definition): Adjust to std::vector change.
9363         * breakpoint.c (read_uploaded_action): Likewise.
9364         (create_tracepoint_from_upload): Likewise.
9365         * ctf.c (ctf_write_uploaded_tp): Likewise.
9366         (SET_ARRAY_FIELD): Likewise.
9367         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
9368
9369 2018-03-30  Tom Tromey  <tom@tromey.com>
9370
9371         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
9372         std::unique_ptr.
9373         (svr4_keep_data_in_core): Update.
9374         (svr4_read_so_list): Update.
9375
9376 2018-03-30  Tom Tromey  <tom@tromey.com>
9377
9378         * windows-nat.c (handle_output_debug_string, handle_exception):
9379         Update.
9380         * target.h (target_read_string): Update.
9381         * target.c (target_read_string): Change "string" to
9382         unique_xmalloc_ptr.
9383         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
9384         Update.
9385         * solib-frv.c (frv_current_sos): Update.
9386         * solib-dsbt.c (dsbt_current_sos): Update.
9387         * solib-darwin.c (darwin_current_sos): Update.
9388         * linux-thread-db.c (inferior_has_bug): Update.
9389         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
9390         Update.  Remove alloca.
9391         * ada-lang.c (ada_main_name): Update.
9392
9393 2018-03-30  Tom Tromey  <tom@tromey.com>
9394
9395         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
9396         (struct dwo_file_deleter): New.
9397         (dwo_file_up): New typedef.
9398         (open_and_init_dwo_file): Use dwo_file_up.
9399         (free_dwo_file_cleanup): Remove.
9400
9401 2018-03-30  Tom Tromey  <tom@tromey.com>
9402
9403         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
9404         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
9405
9406 2018-03-30  Tom Tromey  <tom@tromey.com>
9407
9408         * dwarf2read.c (class free_cached_comp_units): New class.
9409         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
9410         (free_cached_comp_units): Remove function.
9411
9412 2018-03-30  Tom Tromey  <tom@tromey.com>
9413
9414         * utils.h (make_cleanup_unpush_target): Remove.
9415         * inf-ptrace.c (struct target_unpusher): New.
9416         (target_unpush_up) New typedef.
9417         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
9418         target_unpush_up.
9419         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
9420
9421 2018-03-27  Tom Tromey  <tom@tromey.com>
9422
9423         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
9424
9425 2018-03-27  Pedro Alves  <palves@redhat.com>
9426             Tom Tromey  <tom@tromey.com>
9427
9428         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
9429         destructor.  Now a class.
9430         (gdb_readline_wrapper_cleanup): Remove function.
9431         (gdb_readline_wrapper): Remove cleanups.
9432
9433 2018-03-27  Tom Tromey  <tom@tromey.com>
9434
9435         * typeprint.h (struct type_print_options) <local_typedefs,
9436         global_typedefs>: Remove "struct" keyword.
9437         (class typedef_hash_table): New class.
9438         (recursively_update_typedef_hash, add_template_parameters)
9439         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
9440         (find_typedef_in_hash): Don't declare.
9441         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
9442         (typedef_hash_table::recursively_update): Rename from
9443         recursively_update_typedef_hash.  Now a member.
9444         (typedef_hash_table::add_template_parameters): Rename from
9445         add_template_parameters.  Now a member.
9446         (typedef_hash_table::typedef_hash_table): Now a constructor;
9447         rename from create_typedef_hash.
9448         (typedef_hash_table::~typedef_hash_table): Now a destructor;
9449         rename from free_typedef_hash.
9450         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
9451         (do_free_global_table): Remove.
9452         (typedef_hash_table::typedef_hash_table): New constructor; renamed
9453         from copy_type_recursive.
9454         (create_global_typedef_table): Remove.
9455         (typedef_hash_table::find_global_typedef): Now a member of
9456         typedef_hash_table.
9457         (typedef_hash_table::find_typedef): Rename from
9458         find_typedef_in_hash; now a member.
9459         (whatis_exp): Update.
9460         * extension.h (struct ext_lang_type_printers): Add constructor and
9461         destructor.
9462         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
9463         declare.
9464         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
9465         Now a constructor; rename from start_ext_lang_type_printers.
9466         (ext_lang_type_printers): Now a destructor; rename from
9467         free_ext_lang_type_printers.
9468         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
9469         Update.
9470         (c_type_print_base_struct_union): Update.  Remove cleanups.
9471
9472 2018-03-27  Tom Tromey  <tom@tromey.com>
9473
9474         * dwarf-index-write.c: Include <cmath>.
9475
9476 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
9477
9478         * NEWS: Add entry describing new "set|show varsize-limit" command.
9479         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
9480         command.
9481         * printcmd.c (_initialize_printcmd): Add "set var" alias of
9482         "set variable".
9483
9484 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
9485
9486         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
9487         dwarf-index-write.c
9488         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
9489         * dwarf-index-common.c: New file.
9490         * dwarf-index-common.h: New file.
9491         * dwarf-index-write.c: New file.
9492         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
9493         (struct dwarf2_section_info): Move from here.
9494         (dwarf2_section_info_def): Likewise.
9495         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
9496         (offset_type): Likewise.
9497         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
9498         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
9499         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
9500         (byte_swap): Likewise.
9501         (MAYBE_SWAP): Likewise.
9502         (dwarf2_per_cu_ptr): Likewise.
9503         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
9504         (struct tu_stats): Likewise.
9505         (struct dwarf2_per_objfile): Likewise.
9506         (struct dwarf2_per_cu_data): Likewise.
9507         (struct signatured_type): Likewise.
9508         (sig_type_ptr): Likewise.
9509         (DEF_VEC_P (sig_type_ptr)): Likewise.
9510         (INDEX4_SUFFIX): Likewise.
9511         (INDEX5_SUFFIX): Likewise.
9512         (DEBUG_STR_SUFFIX): Likewise.
9513         (dwarf2_read_section): Make non-static.
9514         (mapped_index_string_hash): Move from here.
9515         (dwarf5_djb_hash): Likewise.
9516         (file_write): Likewise.
9517         (class data_buf): Likewise.
9518         (struct symtab_index_entry): Likewise.
9519         (struct mapped_symtab): Likewise.
9520         (find_slot): Likewise.
9521         (hash_expand): Likewise.
9522         (add_index_entry): Likewise.
9523         (uniquify_cu_indices): Likewise.
9524         (class c_str_view): Likewise.
9525         (class c_str_view_hasher): Likewise.
9526         (class vector_hasher): Likewise.
9527         (write_hash_table): Likewise.
9528         (psym_index_map): Likewise.
9529         (struct addrmap_index_data): Likewise.
9530         (add_address_entry): Likewise.
9531         (add_address_entry_worker): Likewise.
9532         (write_address_map): Likewise.
9533         (symbol_kind): Likewise.
9534         (write_psymbols): Likewise.
9535         (struct signatured_type_index_data): Likewise.
9536         (write_one_signatured_type): Likewise.
9537         (recursively_count_psymbols): Likewise.
9538         (recursively_write_psymbols): Likewise.
9539         (class debug_names): Likewise.
9540         (check_dwarf64_offsets): Likewise.
9541         (psyms_seen_size): Likewise.
9542         (write_gdbindex): Likewise.
9543         (write_debug_names): Likewise.
9544         (assert_file_size): Likewise.
9545         (write_psymtabs_to_index): Likewise.
9546         (save_gdb_index_command): Likewise.
9547         (_initialize_dwarf2_read): Don't register the "save gdb-index"
9548         command.
9549         * dwarf2read.h: New file.
9550
9551 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
9552
9553         PR gdb/22670
9554         * dwarf2read.c (dwarf2_physname): Do not return the demangled
9555         symbol name if the CU's language stores symbol names in linkage
9556         format.
9557         * language.h (struct language_defn)
9558         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
9559         all instances of this struct.
9560
9561 2018-03-26  Tom Tromey  <tom@tromey.com>
9562
9563         * stack.c (backtrace_command_1): Remove verbose code.
9564
9565 2018-03-26  Tom Tromey  <tom@tromey.com>
9566
9567         * python/py-framefilter.c (py_print_type): Don't catch
9568         exceptions.  Return void.
9569         (py_print_value): Likewise.
9570         (py_print_single_arg): Likewise.
9571         (enumerate_args): Don't catch exceptions.
9572         (py_print_args): Likewise.
9573         (py_print_frame): Likewise.
9574         (gdbpy_apply_frame_filter): Catch exceptions here.
9575
9576 2018-03-26  Tom Tromey  <tom@tromey.com>
9577
9578         * stack.c (_initialize_stack): Remove trailing newlines from help
9579         text.  Add "Usage" line to "backtrace" help.
9580
9581 2018-03-26  Tom Tromey  <tom@tromey.com>
9582
9583         PR python/16486:
9584         * python/py-framefilter.c (py_print_args): Call wrap_hint.
9585
9586 2018-03-26  Tom Tromey  <tom@tromey.com>
9587
9588         * python/py-framefilter.c (py_print_single_arg): Return
9589         EXT_LANG_BT_ERROR from catch.
9590
9591 2018-03-26  Tom Tromey  <tom@tromey.com>
9592
9593         PR backtrace/15584:
9594         * stack.c (backtrace_command_1): Move some code into no-filters
9595         "if".
9596
9597 2018-03-26  Tom Tromey  <tom@tromey.com>
9598
9599         * python/py-framefilter.c (throw_quit_or_print_exception): New
9600         function.
9601         (gdbpy_apply_frame_filter): Use it.
9602
9603 2018-03-26  Tom Tromey  <tom@tromey.com>
9604
9605         PR cli/17716:
9606         * python/py-framefilter.c (py_print_type, py_print_value)
9607         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
9608         RETURN_MASK_ERROR.
9609
9610 2018-03-26  Tom Tromey  <tom@tromey.com>
9611
9612         * python/py-framefilter.c (enumerate_args): Use
9613         gdb::unique_xmalloc_ptr.
9614
9615 2018-03-26  Tom Tromey  <tom@tromey.com>
9616
9617         * python/py-framefilter.c (py_print_frame): Return
9618         EXT_LANG_BT_OK.
9619         (gdbpy_apply_frame_filter): Update comment.
9620         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
9621         Remove.
9622         <EXT_LANG_BT_NO_FILTERS>: Change value.
9623
9624 2018-03-26  Tom Tromey  <tom@tromey.com>
9625
9626         PR backtrace/15582:
9627         * stack.c (backtrace_command): Parse "hide" argument.
9628         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
9629         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
9630         constant.
9631
9632 2018-03-26  Tom Tromey  <tom@tromey.com>
9633
9634         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
9635         add "flags".
9636         (backtrace_command): Remove "fulltrace", add "flags".
9637
9638 2018-03-26  Tom Tromey  <tom@tromey.com>
9639
9640         * stack.c (backtrace_command): Rewrite command line parsing.
9641
9642 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
9643
9644         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
9645
9646 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
9647
9648         * filename-seen-cache.h: Add include guard.
9649
9650 2018-03-26  Keith Seitz  <keiths@redhat.com>
9651
9652         * symfile.c (place_section): Remove "struct" from section_addr_info
9653         in comment.
9654         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
9655         "struct" keyword from section_addr_info.
9656
9657 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
9658
9659         * regformats/regdef.h (reg): Add constructors.
9660
9661 2018-03-25  Pedro Alves  <palves@redhat.com>
9662
9663         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
9664         if then/else bodies in var_func_name extraction.
9665
9666 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
9667
9668         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
9669         lookup_minimal_symbol() to find symbol entry.
9670         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
9671
9672 2018-03-23  Keith Seitz  <keiths@redhat.com>
9673
9674         PR c++/22968
9675         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
9676         nested type definitions for C++, too.
9677
9678 2018-03-23  Tom Tromey  <tom@tromey.com>
9679
9680         * machoread.c (struct oso_el): Add a constructor.  Don't define as
9681         a typedef.
9682         (macho_register_oso): Remove.
9683         (macho_symtab_read): Take a std::vector.
9684         (oso_el_compare_name): Now a std::sort comparator.
9685         (macho_symfile_read_all_oso): Take a std::vector.
9686         (macho_symfile_read): Use std::vector.  Remove cleanups.
9687
9688 2018-03-22  Tom Tromey  <tom@tromey.com>
9689
9690         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
9691         (record_full_goto_bookmark): Use std::string.
9692
9693 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9694
9695         PR tdep/18295
9696         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
9697         a single mask.
9698
9699 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9700
9701         * rs6000-tdep.c (store_insn_p): New function.
9702         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
9703         and cr_reg to their unshifted values. Use store_insn_p to
9704         match LR saves using either R1 or fdata->alloca_reg. Use
9705         store_insn_p to match CR saves. Set alloca_reg_offset
9706         when alloca_reg and framep are set. Remove lr_reg shift
9707         when assigning to fdata->lr_register.
9708
9709 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
9710
9711         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
9712         command line args instead of emitting a warning.
9713
9714 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
9715
9716         * tracepoint.h (struct static_tracepoint_marker): Initialize
9717         fields, define default constructor, move constructor and move
9718         assignment, disable the rest.
9719         <str_id, extra>: Make std::string.
9720         (release_static_tracepoint_marker): Remove.
9721         (free_current_marker): Remove.
9722         * tracepoint.c (free_current_marker): Remove.
9723         (parse_static_tracepoint_marker_definition): Adjust to
9724         std::string, use new hex2str overload.
9725         (release_static_tracepoint_marker): Remove.
9726         (print_one_static_tracepoint_marker): Get marker by reference
9727         and adjust to std::string.
9728         (info_static_tracepoint_markers_command): Adjust to std::vector
9729         changes
9730         * target.h (static_tracepoint_marker_p): Remove typedef.
9731         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
9732         (struct target_ops) <to_static_tracepoint_marker_at>: Return
9733         bool.
9734         <to_static_tracepoint_markers_by_strid>: Return std::vector.
9735         * target-debug.h
9736         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
9737         (target_debug_print_std_vector_static_tracepoint_marker): New.
9738         (target_debug_print_struct_static_tracepoint_marker_p): Rename
9739         to...
9740         (target_debug_print_static_tracepoint_marker_p): ... this.
9741         * target-delegates.c: Re-generate.
9742         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
9743         Make std::string.
9744         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
9745         (decode_static_tracepoint_spec): Adjust to std::vector.
9746         (tracepoint_print_one_detail): Adjust to std::string.
9747         (strace_marker_decode_location): Adjust to std::string.
9748         (update_static_tracepoint): Adjust to std::string, remove call
9749         to release_static_tracepoint_marker.
9750         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
9751         Adjust to std::vector.
9752         * remote.c (remote_static_tracepoint_marker_at): Return bool.
9753         (remote_static_tracepoint_markers_by_strid): Adjust to
9754         std::vector.
9755         * common/rsp-low.h (hex2str): New overload with explicit count
9756         of bytes.
9757         * common/rsp-low.c (hex2str): New overload with explicit count
9758         of bytes.
9759         * unittests/rsp-low-selftests.c (test_hex2str): New function.
9760         (_initialize_rsp_low_selftests): Add test_hex2str test.
9761         * unittests/tracepoint-selftests.c
9762         (test_parse_static_tracepoint_marker_definition): Adjust to
9763         std::string.
9764
9765 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
9766
9767         * tracepoint.c (parse_static_tracepoint_marker_definition):
9768         Consider case where the definition is followed by more
9769         definitions.
9770         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
9771         tracepoint-selftests.c.
9772         * unittests/tracepoint-selftests.c: New.
9773
9774 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9775
9776         * MAINTAINERS (Write After Approval): Add Pedro Franco de
9777         Carvalho.
9778
9779 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
9780
9781         * symtab.c (find_pc_sect_line): fixed indentation.
9782
9783 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
9784
9785         * symtab.c (find_pc_sect_line): now uses binary search.
9786
9787 2018-03-19  Tom Tromey  <tom@tromey.com>
9788
9789         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
9790         "IDENT" production.
9791
9792 2018-03-19  Pedro Alves  <palves@redhat.com>
9793             Tom Tromey  <tom@tromey.com>
9794
9795         * unittests/observable-selftests.c: New file.
9796         * common/observable.h: New file.
9797         * observable.h: New file.
9798         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
9799         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
9800         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
9801         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
9802         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
9803         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
9804         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
9805         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
9806         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
9807         python/py-breakpoint.c, python/py-finishbreakpoint.c,
9808         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
9809         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
9810         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
9811         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
9812         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
9813         tui/tui-interp.c, valops.c: Update all users.
9814         * tui/tui-hooks.c (tui_bp_created_observer)
9815         (tui_bp_deleted_observer, tui_bp_modified_observer)
9816         (tui_inferior_exit_observer, tui_before_prompt_observer)
9817         (tui_normal_stop_observer, tui_register_changed_observer):
9818         Remove.
9819         (tui_observers_token): New global.
9820         (attach_or_detach, tui_attach_detach_observers): New functions.
9821         (tui_install_hooks, tui_remove_hooks): Use
9822         tui_attach_detach_observers.
9823         * record-btrace.c (record_btrace_thread_observer): Remove.
9824         (record_btrace_thread_observer_token): New global.
9825         * observer.sh: Remove.
9826         * observer.c: Rename to observable.c.
9827         * observable.c (namespace gdb_observers): Define new objects.
9828         (observer_debug): Move into gdb_observers namespace.
9829         (struct observer, struct observer_list, xalloc_observer_list_node)
9830         (xfree_observer_list_node, generic_observer_attach)
9831         (generic_observer_detach, generic_observer_notify): Remove.
9832         (_initialize_observer): Update.
9833         Don't include observer.inc.
9834         * Makefile.in (generated_files): Remove observer.h, observer.inc.
9835         (clean mostlyclean): Likewise.
9836         (observer.h, observer.inc): Remove targets.
9837         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
9838         (COMMON_SFILES): Use observable.c, not observer.c.
9839         * .gitignore: Remove observer.h.
9840
9841 2018-03-18  Tom Tromey  <tom@tromey.com>
9842
9843         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
9844         gdb::def_vector.
9845         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
9846
9847 2018-03-17  Tom Tromey  <tom@tromey.com>
9848
9849         * auto-load.c (auto_load_objfile_script_1): Use std::string.
9850
9851 2018-03-17  Tom Tromey  <tom@tromey.com>
9852
9853         * target.c (class scoped_target_fd): New.
9854         (target_fileio_close_cleanup): Remove.
9855         (target_fileio_read_alloc_1): Use scoped_target_fd.
9856
9857 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
9858
9859         * silent-rules.mk: New.
9860         * Makefile.in: Include silent-rules.mk
9861         (srcdir, VPATH, top_srcdir): Move up.
9862         (COMPILE): Add ECHO_CXX.
9863         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
9864         (init.c): Add ECHO_INIT_C.
9865         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
9866         (version.c): Add ECHO_GEN.
9867         (printcmd.o): Add ECHO_CXX.
9868         (target-float.o): Add ECHO_CXX.
9869         (ada-exp.o): Add ECHO_CXX.
9870         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
9871         (insight$(EXEEXT)): Add ECHO_CXXLD.
9872         * gnulib/configure.ac: Add AM_SILENT_RULES.
9873         * gnulib/aclocal.m4: Re-generate.
9874         * gnulib/configure: Re-generate.
9875         * gnulib/import/Makefile.in: Re-generate.
9876
9877 2018-03-16  Tom Tromey  <tom@tromey.com>
9878
9879         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
9880         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
9881         * utils.c (do_free_section_addr_info)
9882         (make_cleanup_free_section_addr_info): Remove.
9883         * symfile.h (struct other_sections): Add constructor.
9884         (struct section_addr_info): Remove.
9885         (section_addr_info): New typedef.
9886         (struct sym_fns) <sym_offsets>: Change type of parameter.
9887         (build_section_addr_info_from_objfile)
9888         (relative_addr_info_to_section_offsets, addr_info_make_relative)
9889         (default_symfile_offsets, symbol_file_add)
9890         (symbol_file_add_from_bfd)
9891         (build_section_addr_info_from_section_table): Update.
9892         (alloc_section_addr_info, free_section_addr_info): Don't declare.
9893         * symfile.c (alloc_section_addr_info): Remove.
9894         (build_section_addr_info_from_section_table): Change return type.
9895         Update.
9896         (build_section_addr_info_from_bfd)
9897         (build_section_addr_info_from_objfile): Likewise.
9898         (free_section_addr_info): Remove.
9899         (relative_addr_info_to_section_offsets): Change type of "addrs".
9900         (addrs_section_compar): Now a std::sort comparator.
9901         (addrs_section_sort): Change return type.
9902         (addr_info_make_relative): Change type of "addrs".  Update.
9903         (default_symfile_offsets, syms_from_objfile_1)
9904         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
9905         (symbol_file_add_separate): Update.
9906         (symbol_file_add): Change type of "addrs".  Update.
9907         (add_symbol_file_command): Update.  Remove cleanups.
9908         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
9909         cleanups.
9910         * symfile-debug.c (debug_sym_offsets): Change type of "info".
9911         * solib.c (solib_read_symbols): Update.
9912         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
9913         * machoread.c (macho_symfile_offsets): Update.
9914         * jit.c (jit_bfd_try_read_symtab): Update.
9915
9916 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
9917
9918         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
9919         unittests/utils-selftests.c.
9920         * unittests/utils-selftests.c: New file.
9921
9922 2018-03-14  Tom Tromey  <tom@tromey.com>
9923
9924         PR cli/14977:
9925         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
9926         for NULL.
9927
9928 2018-03-14  Tom Tromey  <tom@tromey.com>
9929
9930         PR cli/19918:
9931         * printcmd.c (printf_pointer): Allow "-" in format.
9932
9933 2018-03-14  Tom Tromey  <tom@tromey.com>
9934
9935         * printcmd.c (_initialize_printcmd): Add usage to printf.
9936
9937 2018-03-14  Yao Qi  <qiyao@sourceware.org>
9938
9939         * MAINTAINERS: Update my email address.
9940
9941 2018-03-13  Tom Tromey  <tom@tromey.com>
9942
9943         * machoread.c (macho_check_dsym): Change filenamep to a
9944         std::string*.
9945         (macho_symfile_read): Update.
9946         * symfile.c (load_command): Use std::string.
9947
9948 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
9949
9950         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
9951         to error message string.
9952         (riscv_register_name): Use xsnprintf instead of sprintf.
9953         (riscv_insn::fetch_instruction): Use gdb_assert instead of
9954         internal_error.
9955         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
9956         error.
9957         (riscv_push_dummy_call): Likewise.
9958
9959 2018-03-12  Tom Tromey  <tom@tromey.com>
9960
9961         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
9962         Use gdb::byte_vector.
9963         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
9964
9965 2018-03-12  Yao Qi  <yao.qi@linaro.org>
9966
9967         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
9968         parameter type to readable_regcache.
9969         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
9970         the declaration.
9971
9972 2018-03-11  Tom Tromey  <tom@tromey.com>
9973
9974         * dwarf2read.c (struct nextfield): Add initializers.
9975         (struct nextfnfield): Remove.
9976         (struct fnfieldlist): Add initializers.  Remove "length" and
9977         "head", use std::vector.
9978         (struct decl_field_list): Remove.
9979         (struct field_info): Add initializers.
9980         <fields, baseclasses>: Now std::vector.
9981         <nbaseclasses, nfnfields, typedef_field_list_count,
9982         nested_types_list_count>: Remove.
9983         (dwarf2_add_field, dwarf2_add_type_defn)
9984         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
9985         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
9986         (process_structure_scope): Update.
9987
9988 2018-03-11  Tom Tromey  <tom@tromey.com>
9989
9990         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
9991         for use by std::sort.
9992         (build_type_psymtabs_1): Use std::vector.
9993
9994 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
9995
9996         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
9997         and LIBMPFR in the printed configuration.
9998
9999 2018-03-08  Tom Tromey  <tom@tromey.com>
10000
10001         * source.c (get_filename_and_charpos): Use scoped_fd.
10002         * nto-procfs.c (procfs_open_1): Use scoped_fd.
10003         (procfs_pidlist): Likewise.
10004         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
10005         (iterate_over_mappings): Likewise.
10006
10007 2018-03-08  Tom Tromey  <tom@tromey.com>
10008
10009         * infcall.c (struct call_return_meta_info)
10010         <stack_temporaries_enabled>: Remove.
10011         (get_call_return_value, call_function_by_hand_dummy): Update.
10012         * thread.c (disable_thread_stack_temporaries): Remove.
10013         (enable_thread_stack_temporaries): Remove.
10014         (thread_stack_temporaries_enabled_p): Return bool.
10015         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
10016         (get_last_thread_stack_temporary): Update.
10017         * eval.c (evaluate_subexp): Update.
10018         * gdbthread.h (class enable_thread_stack_temporaries): Now a
10019         class, not a function.
10020         (value_ptr, value_vec): Remove typedefs.
10021         (class thread_info) <stack_temporaries_enabled>: Now bool.
10022         <stack_temporaries>: Now a std::vector.
10023         (thread_stack_temporaries_enabled_p)
10024         (value_in_thread_stack_temporaries): Return bool.
10025
10026 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
10027
10028         * remote.c (putpkt_binary): Fix omitted bytes reporting.
10029         (getpkt_or_notif_sane_1): Likewise.
10030
10031 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
10032
10033         * build-id.c (build_id_to_debug_bfd): Use std::string.
10034
10035 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
10036
10037         * build-id.c (find_separate_debug_file_by_buildid): Return
10038         std::string.
10039         * build-id.h (find_separate_debug_file_by_buildid): Return
10040         std::string.
10041         * coffread.c (coff_symfile_read): Adjust to std::string.
10042         * elfread.c (elf_symfile_read): Adjust to std::string.
10043         * symfile.c (separate_debug_file_exists): Change parameter to
10044         std::string.
10045         (find_separate_debug_file): Return std::string.
10046         (find_separate_debug_file_by_debuglink): Return std::string.
10047         * symfile.h (find_separate_debug_file_by_debuglink): Return
10048         std::string.
10049
10050 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
10051
10052         * common/xml-utils.c (xml_escape_text): Move code to...
10053         (xml_escape_text_append): ... this new function.
10054         * common/xml-utils.h (xml_escape_text_append): New declaration.
10055         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
10056         New function.
10057         (_initialize_xml_utils): register test_xml_escape_text_append as
10058         a selftest.
10059
10060 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
10061
10062         * defs.h: Remove MAX_REGISTER_SIZE.
10063         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
10064         asserts.
10065         * python/py-unwind.c (pyuw_sniffer): Likewise.
10066
10067 2018-03-07  Tom Tromey  <tom@tromey.com>
10068
10069         * linux-tdep.c (linux_info_proc): Update.
10070         * target.h (struct target_ops) <to_fileio_readlink>: Return
10071         optional<string>.
10072         (target_fileio_readlink): Return optional<string>.
10073         * remote.c (remote_hostio_readlink): Return optional<string>.
10074         * inf-child.c (inf_child_fileio_readlink): Return
10075         optional<string>.
10076         * target.c (target_fileio_readlink): Return optional<string>.
10077
10078 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
10079
10080         * regcache.c (cooked_read_test): Add riscv to the list of
10081         architectures that have a save_reggroup.
10082
10083 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
10084
10085         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
10086         value is not a dynamic class object.
10087
10088 2018-03-06  Tom Tromey  <tom@tromey.com>
10089
10090         * rust-exp.y: Formatting fixes.
10091
10092 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10093
10094         * riscv-tdep.c (riscv_register_name): Remove target description
10095         support.
10096         (riscv_gdbarch_init): Remove target description check.
10097
10098 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10099
10100         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
10101         comment.
10102         * riscv-tdep.h: Likewise.
10103
10104 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10105
10106         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
10107         (riscv_pseudo_register_write): Delete.
10108         (riscv_gdbarch_init): Remove all use of pseudo registers.
10109
10110 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
10111
10112         * record-btrace.c (btrace_print_lines): Replace cleanup
10113         parameter with RAII equivalents.
10114         (btrace_insn_history): Replace cleanup with RAII equivalents.
10115         * ui-out.h (make_cleanup_ui_out_list_begin_end,
10116         make_cleanup_ui_out_tuple_begin_end): Remove.
10117         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
10118         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
10119         make_cleanup_ui_out_list_begin_end): Remove.
10120
10121 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
10122
10123         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
10124         parameter types to std::vector.  Use bool.
10125         (record_btrace_wait): Replace VEC(tp_t) with
10126         std::vector<thread_info *>.
10127         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
10128
10129 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
10130
10131         * record-btrace.c (record_btrace_disable_callback): Remove.
10132         (struct scoped_btrace_disable): New.
10133         (record_btrace_open): Use scoped_btrace_disable.
10134
10135 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10136
10137         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
10138         reading values from registers.
10139
10140 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10141
10142         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
10143         where appropriate.
10144
10145 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10146
10147         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
10148         change parameter type.  Use GDB's print functions, and use
10149         core_addr_to_string where appropriate.
10150         (riscv_push_dummy_call): Use core_addr_to_string where
10151         appropriate, update call to riscv_print_arg_location, and reindent
10152         a few lines.
10153         (riscv_return_value): Update call to riscv_print_arg_location.
10154
10155 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10156             Tim Newsome <tim@sifive.com>
10157             Albert Ou <a0u@eecs.berkeley.edu>
10158             Darius Rad <darius@bluespec.com>
10159
10160         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
10161         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
10162         (ALLDEPFILES): Add riscv-tdep.c
10163         * configure.tgt: Add riscv support.
10164         * riscv-tdep.c: New file.
10165         * riscv-tdep.h: New file.
10166         * NEWS: Mention new target.
10167         * MAINTAINERS: Add entry for riscv.
10168
10169 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10170
10171         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
10172         fields within aggregates.
10173
10174 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
10175
10176         * record-btrace.c (btrace_print_lines): Change type of flags to
10177         gdb_disassembly_flags.
10178
10179 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
10180
10181         * fbsd-nat.c: Include "inf-ptrace.h".
10182         (USE_SIGTRAP_SIGINFO): Conditionally define.
10183         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
10184         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
10185         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
10186         function.
10187         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
10188         Likewise.
10189         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
10190         Likewise.
10191         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
10192         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
10193         "supports_stopped_by_hw_breakpoint" target methods.
10194
10195 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
10196
10197         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
10198         * fbsd-nat.c (debug_fbsd_nat): New variable.
10199         (show_fbsd_nat_debug): New function.
10200         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
10201         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
10202
10203 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
10204
10205         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
10206         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
10207         prototype.
10208         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
10209         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
10210         method.
10211
10212 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
10213
10214         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
10215         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
10216
10217 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
10218
10219         * charset.c (struct charset_vector): New.
10220         (charsets): Change type to charset_vector.
10221         (find_charset_names): Adjust.
10222         (add_one): Adjust.
10223         (_initialize_charset): Adjust.
10224
10225 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
10226
10227         * progspace.h (struct program_space) <deleted_solibs>: Change
10228         type to std::vector<std::string>.
10229         * progspace.c (clear_program_space_solib_cache): Adjust.
10230         * breakpoint.c (print_solib_event): Adjust.
10231         (check_status_catch_solib): Adjust.
10232         * solib.c (update_solib_list): Adjust.
10233         * ui-out.h (class ui_out) <field_string>: New overload.
10234         * ui-out.c (ui_out::field_string): New overload.
10235
10236 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
10237
10238         * progspace.h (struct program_space): Add constructor and
10239         destructor, initialize fields.
10240         (add_program_space): Remove.
10241         * progspace.c (add_program_space): Rename to...
10242         (program_space::program_space): ... this.
10243         (release_program_space): Rename to...
10244         (program_space::~program_space): ... this.
10245         (delete_program_space): Use delete to delete program_space.
10246         (initialize_progspace): Use new to allocate program_space.
10247         * inferior.c (add_inferior_with_spaces): Likewise.
10248         (clone_inferior_command): Likewise.
10249         * infrun.c (follow_fork_inferior): Likewise.
10250         (handle_vfork_child_exec_or_exit): Likewise.
10251
10252 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
10253
10254         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
10255         (delim_string_to_char_ptr_vec): Return std::vector of
10256         gdb::unique_xmalloc_ptr.
10257         (dirnames_to_char_ptr_vec_append): Take std::vector of
10258         gdb::unique_xmalloc_ptr.
10259         (dirnames_to_char_ptr_vec): Return std::vector of
10260         gdb::unique_xmalloc_ptr.
10261         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
10262         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
10263         (delim_string_to_char_ptr_vec): Return an std::vector of
10264         gdb::unique_xmalloc_ptr, adjust the code.
10265         (dirnames_to_char_ptr_vec_append): Take an std::vector of
10266         gdb::unique_xmalloc_ptr, adjust the code.
10267         (dirnames_to_char_ptr_vec): Return an std::vector of
10268         gdb::unique_xmalloc_ptr, adjust the code.
10269         * auto-load.c (auto_load_safe_path_vec): Change type to
10270         std::vector of gdb::unique_xmalloc_ptr.
10271         (auto_load_expand_dir_vars): Return an std::vector of
10272         gdb::unique_xmalloc_ptr, adjust the code.
10273         (auto_load_safe_path_vec_update): Adjust.
10274         (filename_is_in_auto_load_safe_path_vec): Adjust.
10275         (auto_load_objfile_script_1): Adjust.
10276         * build-id.c (build_id_to_debug_bfd): Adjust.
10277         * linux-thread-db.c (thread_db_load_search): Adjust.
10278         * source.c (add_path): Adjust.
10279         (openp): Adjust.
10280         * symfile.c (find_separate_debug_file): Adjust.
10281         * utils.c (do_free_char_ptr_vec): Remove.
10282         (make_cleanup_free_char_ptr_vec): Remove.
10283
10284 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
10285
10286         PR gdb/22907
10287         * common/pathstuff.c: Conditionally include "<windows.h>".
10288
10289 2018-03-01  Georg Sauthoff  <mail@georg.so>
10290
10291         PR gdb/22888
10292         * gcore.in: Quote variables and switch interpreter to bash.
10293
10294 2018-03-01  Tom Tromey  <tom@tromey.com>
10295
10296         * dwarf2read.c (alloc_discriminant_info): Fix default_index
10297         assertion.  Add assertion for discriminant_index.
10298         (quirk_rust_enum): Use correct base type name in univariant case.
10299
10300 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
10301
10302         * record.c (get_call_history_modifiers): Return a
10303         record_print_flags.
10304         (cmd_record_call_history): Adjust.
10305         * record-btrace.c (record_btrace_call_history): Adjust.
10306         (record_btrace_call_history_range): Adjust.
10307         (record_btrace_call_history_from): Adjust.
10308         * target-debug.h (target_debug_print_record_print_flags): New.
10309         * target-delegates.c: Re-generate.
10310         * target.c (target_call_history): Change flags type.
10311         (target_call_history_from): Likewise.
10312         (target_call_history_range): Likewise.
10313         * target.h (struct target_ops) <target_call_history>: Likewise.
10314         (target_call_history_from): Likewise.
10315         (target_call_history_range): Likewise.
10316
10317 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
10318             Simon Marchi  <simon.marchi@polymtl.ca>
10319
10320         * common/common-utils.c: Include "sys/stat.h".
10321         (is_regular_file): Move here from "source.c"; change return
10322         type to "bool".
10323         * common/common-utils.h (is_regular_file): New prototype.
10324         * common/pathstuff.c (contains_dir_separator): New function.
10325         * common/pathstuff.h (contains_dir_separator): New prototype.
10326         * source.c: Don't include "sys/stat.h".
10327         (is_regular_file): Move to "common/common-utils.c".
10328
10329 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
10330
10331         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
10332         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
10333         * auto-load.c: Include "common/pathstuff.h".
10334         * common/common-def.h (current_directory): Move here.
10335         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
10336         function.
10337         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
10338         prototype.
10339         * common/pathstuff.c: New file.
10340         * common/pathstuff.h: New file.
10341         * compile/compile.c: Include "common/pathstuff.h".
10342         * defs.h (current_directory): Move to "common/common-defs.h".
10343         * dwarf2read.c: Include "common/pathstuff.h".
10344         * exec.c: Likewise.
10345         * guile/scm-safe-call.c: Likewise.
10346         * linux-thread-db.c: Likewise.
10347         * main.c: Likewise.
10348         * nto-tdep.c: Likewise.
10349         * objfiles.c: Likewise.
10350         * source.c: Likewise.
10351         * symtab.c: Likewise.
10352         * utils.c: Include "common/pathstuff.h".
10353         (gdb_realpath): Move to "common/pathstuff.c".
10354         (gdb_realpath_keepfile): Likewise.
10355         (gdb_abspath): Likewise.
10356         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
10357         (gdb_realpath_keepfile): Likewise.
10358         (gdb_abspath): Likewise.
10359
10360 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
10361
10362         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
10363         wildcard process pid for super_resume for kernels with a
10364         specific bug.
10365
10366 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
10367
10368         * compile/compile.c (get_args): Add additional comments
10369         explaining function.
10370
10371 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
10372             Tom Tromey  <tom@tromey.com>
10373
10374         * target.h (memory_write_request_s): Remove typedef.  Don't define
10375         VEC.
10376         (target_write_memory_blocks): Change argument to std::vector.
10377         (struct memory_write_request): Add constructor.
10378         * target-memory.c (compare_block_starting_address): Return bool.
10379         Change argument types.
10380         (claim_memory): Change arguments to use std::vector.
10381         (split_regular_and_flash_blocks, blocks_to_erase)
10382         (compute_garbled_blocks): Likewise.
10383         (cleanup_request_data, cleanup_write_requests_vector): Remove.
10384         (target_write_memory_blocks): Change argument to std::vector.
10385         * symfile.c (struct load_section_data): Add constructor and
10386         destructor.  Use std::vector for "requests".
10387         (struct load_progress_data): Add initializers.
10388         (load_section_callback): Update.  Use "new".
10389         (clear_memory_write_data): Remove.
10390         (generic_load): Update.
10391
10392 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
10393
10394         * arch/aarch64.h: Use common/tdesc.h.
10395
10396 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
10397
10398         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
10399         architecture with a 64-bit ABI.
10400
10401 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
10402
10403         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
10404         ahead of target description loading.
10405
10406 2018-02-26  Tom Tromey  <tom@tromey.com>
10407
10408         * stack.c (backtrace_command_1): Update.
10409         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
10410         of "flags".
10411         * python/py-framefilter.c (py_print_frame)
10412         (gdbpy_apply_frame_filter): Change type of "flags".
10413         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
10414         of "flags".
10415         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
10416         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
10417         * extension.h (enum frame_filter_flag): Rename from
10418         frame_filter_flags.
10419         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
10420         (apply_ext_lang_frame_filter): Change type of "flags".
10421         * extension.c (apply_ext_lang_frame_filter): Change type of
10422         "flags".
10423         * extension-priv.h (struct extension_language_ops)
10424         <apply_frame_filter>: Change type of "flags".
10425
10426 2018-02-26  Tom Tromey  <tom@tromey.com>
10427
10428         PR python/16497:
10429         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
10430         off-by-one in py_end computation.
10431         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
10432         PRINT_MORE_FRAMES.
10433         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
10434         constant.
10435
10436 2018-02-26  Tom Tromey  <tom@tromey.com>
10437
10438         * dwarf2read.c (struct variant_field): New.
10439         (struct nextfield) <variant>: New field.
10440         (dwarf2_add_field): Handle DW_TAG_variant_part.
10441         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
10442         discriminated union.
10443         (read_structure_type): Handle DW_TAG_variant_part.
10444         (handle_struct_member_die): New function, extracted from
10445         process_structure_scope.  Handle DW_TAG_variant.
10446         (process_structure_scope): Handle discriminated unions.  Call
10447         handle_struct_member_die.
10448
10449 2018-02-26  Tom Tromey  <tom@tromey.com>
10450
10451         * rust-lang.h (rust_last_path_segment): Declare.
10452         * rust-lang.c (rust_last_path_segment): Now public.  Change
10453         contract.
10454         (struct disr_info): Remove.
10455         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
10456         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
10457         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
10458         (rust_enum_p, rust_enum_variant): New function.
10459         (rust_underscore_fields): Remove "offset" parameter.
10460         (rust_print_enum): New function.
10461         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
10462         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
10463         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
10464         enums.
10465         (rust_internal_print_type): New function, from rust_print_type.
10466         Remove enum code.
10467         (rust_print_type): Call rust_internal_print_type.
10468         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
10469         Update enum handling.
10470         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
10471         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
10472         (rust_union_quirks): New functions.
10473         (process_full_comp_unit, process_full_type_unit): Call
10474         rust_union_quirks.
10475         (process_structure_scope): Update rust_unions if necessary.
10476
10477 2018-02-26  Tom Tromey  <tom@tromey.com>
10478
10479         * value.h (value_union_variant): Declare.
10480         * valops.c (value_union_variant): New function.
10481         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
10482         (struct discriminant_info): New.
10483         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
10484         enumerator.
10485         (struct main_type) <flag_discriminated_union>: New field.
10486
10487 2018-02-26  Tom Tromey  <tom@tromey.com>
10488
10489         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
10490         unittests/unpack-selftests.c.
10491         * unittests/unpack-selftests.c: New file.
10492         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
10493
10494 2018-02-26  Yao Qi  <yao.qi@linaro.org>
10495
10496         * dwarf2read.c (struct partial_die_info) <read>: New method.
10497         (read_partial_die): Remove the declaration.
10498         (load_partial_dies): Update.
10499         (partial_die_info::partial_die_info):
10500         (read_partial_die): Change it to partial_die_info::read.
10501
10502 2018-02-26  Yao Qi  <yao.qi@linaro.org>
10503
10504         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
10505         (fixup_partial_die): Remove declaration.
10506         (scan_partial_symbols): Update.
10507         (partial_die_parent_scope): Likewise.
10508         (partial_die_full_name): Likewise.
10509         (fixup_partial_die): Change it to partial_die_info::fixup.
10510
10511 2018-02-26  Yao Qi  <yao.qi@linaro.org>
10512
10513         * dwarf2read.c (read_partial_die): Update the declaration.
10514         (load_partial_dies): Caller update.
10515         (read_partial_die): Remove one argument abbrev_len.
10516
10517 2018-02-26  Yao Qi  <yao.qi@linaro.org>
10518
10519         * dwarf2read.c (struct partial_die_info): Add ctor, delete
10520         assignment operator.
10521         (load_partial_dies): Use ctor and copy ctor.
10522         (read_partial_die): Update.
10523         (dwarf2_cu::find_partial_die): Use ctor.
10524
10525 2018-02-26  Yao Qi  <yao.qi@linaro.org>
10526
10527         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
10528         (find_partial_die_in_comp_unit): Change it to
10529         dwarf2_cu::find_partial_die.
10530         (find_partial_die): Update.
10531
10532 2018-02-26  Yao Qi  <yao.qi@linaro.org>
10533
10534         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
10535         is NULL.
10536
10537 2018-02-26  Yao Qi  <yao.qi@linaro.org>
10538
10539         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
10540
10541 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
10542
10543         * arch/amd64.h: Use common/tdesc.h.
10544         * arch/i386.c: Likewise.
10545         * arch/i386.h: Likewise.
10546         * arch/tic6x.c: Likewise.
10547         * arch/tdesc.h: Move file from here...
10548         * common/tdesc.h: ...to here.
10549         * features/aarch64-core.c: Regenerate.
10550         * features/aarch64-fpu.c: Regenerate.
10551         * features/i386/32bit-avx.c: Regenerate.
10552         * features/i386/32bit-avx512.c: Regenerate.
10553         * features/i386/32bit-core.c: Regenerate.
10554         * features/i386/32bit-linux.c: Regenerate.
10555         * features/i386/32bit-mpx.c: Regenerate.
10556         * features/i386/32bit-pkeys.c: Regenerate.
10557         * features/i386/32bit-sse.c: Regenerate.
10558         * features/i386/64bit-avx.c: Regenerate.
10559         * features/i386/64bit-avx512.c: Regenerate.
10560         * features/i386/64bit-core.c: Regenerate.
10561         * features/i386/64bit-linux.c: Regenerate.
10562         * features/i386/64bit-mpx.c: Regenerate.
10563         * features/i386/64bit-pkeys.c: Regenerate.
10564         * features/i386/64bit-segments.c: Regenerate.
10565         * features/i386/64bit-sse.c: Regenerate.
10566         * features/i386/x32-core.c: Regenerate.
10567         * features/tic6x-c6xp.c: Regenerate.
10568         * features/tic6x-core.c: Regenerate.
10569         * features/tic6x-gp.c: Regenerate.
10570         * target-descriptions.c: Use common/tdesc.h.
10571         * target-descriptions.h: Likewise.
10572
10573 2018-02-24  Tom Tromey  <tom@tromey.com>
10574
10575         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
10576         (try_thread_db_load_from_dir, thread_db_load_search): Use
10577         std::string.
10578         (info_auto_load_libthread_db_compare): Return bool.  Change
10579         argument types.
10580         (info_auto_load_libthread_db): Use std::vector, std::string.
10581         Remove cleanups.
10582
10583 2018-02-24  Tom Tromey  <tom@tromey.com>
10584
10585         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
10586         std::string.
10587         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
10588         std::string*.
10589         * gdbarch.c: Rebuild.
10590         * gdbarch.h: Rebuild.
10591         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
10592         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
10593         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
10594         std::string*.
10595
10596 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
10597
10598         * gdbtypes.h (sect_offset): Change type to uint64_t.
10599         (sect_offset_str): New function.
10600         * dwarf2read.c (create_addrmap_from_aranges): Use
10601         sect_offset_str.
10602         (error_check_comp_unit_head): Likewise.
10603         (create_debug_type_hash_table): Likewise.
10604         (read_cutu_die_from_dwo): Likewise.
10605         (init_cutu_and_read_dies): Likewise.
10606         (init_cutu_and_read_dies_no_follow): Likewise.
10607         (process_psymtab_comp_unit_reader): Likewise.
10608         (partial_die_parent_scope): Likewise.
10609         (peek_die_abbrev): Likewise.
10610         (process_queue): Likewise.
10611         (dwarf2_physname): Likewise.
10612         (read_namespace_alias): Likewise.
10613         (read_import_statement): Likewise.
10614         (create_dwo_cu_reader): Likewise.
10615         (create_cus_hash_table): Likewise.
10616         (lookup_dwo_cutu): Likewise.
10617         (inherit_abstract_dies): Likewise.
10618         (read_func_scope): Likewise.
10619         (read_call_site_scope): Likewise.
10620         (dwarf2_add_member_fn): Likewise.
10621         (read_common_block): Likewise.
10622         (read_module_type): Likewise.
10623         (read_typedef): Likewise.
10624         (read_subrange_type): Likewise.
10625         (load_partial_dies): Likewise.
10626         (read_partial_die): Likewise.
10627         (find_partial_die): Likewise.
10628         (read_str_index): Likewise.
10629         (dwarf2_string_attr): Likewise.
10630         (build_error_marker_type): Likewise.
10631         (lookup_die_type): Likewise.
10632         (dump_die_shallow): Likewise.
10633         (follow_die_ref): Likewise.
10634         (dwarf2_fetch_die_loc_sect_off): Likewise.
10635         (dwarf2_fetch_constant_bytes): Likewise.
10636         (follow_die_sig): Likewise.
10637         (get_signatured_type): Likewise.
10638         (get_DW_AT_signature_type): Likewise.
10639         (dwarf2_find_containing_comp_unit): Likewise.
10640         (set_die_type): Likewise.
10641
10642 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
10643
10644         * arch/aarch64.c: Include "common-defs.h".
10645         * arch/amd64.c: Likewise.
10646         * arch/i386.c: Likewise.
10647
10648 2018-02-21  Tom Tromey  <tom@tromey.com>
10649
10650         * value.h: (extract_field_op): Update.
10651         * eval.c (extract_field_op): Return a const char *.
10652         * expression.h (parse_expression_for_completion): Update.
10653         * completer.c (complete_expression): Update.
10654         (add_struct_fields): Make fieldname const.
10655         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
10656         (mark_completion_tag, parse_exp_in_context_1): Update.
10657         (parse_expression_for_completion): Change "name" to
10658         unique_xmalloc_ptr*.
10659
10660 2018-02-21  Tom Tromey  <tom@tromey.com>
10661
10662         * infcall.c (call_function_by_hand_dummy): Use std::vector.
10663
10664 2018-02-21  Yao Qi  <yao.qi@linaro.org>
10665
10666         * avr-tdep.c (avr_read_pc): Change parameter type to
10667         readable_regcache.
10668         * gdbarch.sh (read_pc): Likewise.
10669         * gdbarch.c: Re-generated.
10670         * gdbarch.h: Re-generated.
10671         * hppa-tdep.c (hppa_read_pc): Change parameter type to
10672         readable_regcache.
10673         * ia64-tdep.c (ia64_read_pc): Likewise.
10674         * mips-tdep.c (mips_read_pc): Likewise.
10675         * spu-tdep.c (spu_read_pc): Likewise.
10676
10677 2018-02-21  Yao Qi  <yao.qi@linaro.org>
10678
10679         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
10680         * regcache-dump.c: New file.
10681         * regcache.c: Move register_dump to regcache-dump.c.
10682         (maintenance_print_registers): Likewise.
10683         (maintenance_print_raw_registers): Likewise.
10684         (maintenance_print_cooked_registers): Likewise.
10685         (maintenance_print_register_groups): Likewise.
10686         (maintenance_print_remote_registers): Likewise.
10687         (_initialize_regcache): Likewise.
10688         * regcache.h (register_dump): Moved from regcache.c.
10689
10690 2018-02-21  Yao Qi  <yao.qi@linaro.org>
10691
10692         * regcache.c (regcache::regcache): Update.
10693         (regcache::invalidate): Move it to detached_regcache::invalidate.
10694         (get_thread_arch_aspace_regcache): Update.
10695         (regcache::raw_update): Update.
10696         (regcache::cooked_read): Remove some code.
10697         (regcache::cooked_read_value): Likewise.
10698         (regcache::raw_write): Remove assert on m_readonly_p.
10699         (regcache::raw_supply_integer): Move it to
10700         detached_regcache::raw_supply_integer.
10701         (regcache::raw_supply_zeroed): Likewise.
10702         * regcache.h (detached_regcache) <raw_supply_integer>: New
10703         declaration.
10704         <raw_supply_zeroed, invalidate>: Likewise.
10705         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
10706         <invalidate>: Likewise.
10707         <m_readonly_p>: Removed.
10708
10709 2018-02-21  Yao Qi  <yao.qi@linaro.org>
10710
10711         * infcmd.c (get_return_value): Let stop_regs point to
10712         get_current_regcache.
10713         * regcache.c (regcache::regcache): Remove.
10714         (register_dump_reg_buffer): New class.
10715         (regcache_print): Adjust.
10716         * regcache.h (regcache): Remove constructors.
10717
10718 2018-02-21  Yao Qi  <yao.qi@linaro.org>
10719
10720         * regcache.c (class register_dump): New class.
10721         (register_dump_regcache, register_dump_none): New class.
10722         (register_dump_remote, register_dump_groups): New class.
10723         (regcache_print): Update.
10724         * regcache.h (regcache_dump_what): Move it to regcache.c.
10725         (regcache) <dump>: Remove.
10726
10727 2018-02-21  Yao Qi  <yao.qi@linaro.org>
10728
10729         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
10730          reg_buffer_rw *.
10731         (jit_unwind_reg_set_impl): Call raw_supply.
10732         (jit_frame_sniffer): Use reg_buffer_rw.
10733         * record-full.c (record_full_core_regbuf): Change its type.
10734         (record_full_core_open_1): Use reg_buffer_rw.
10735         (record_full_close): Likewise.
10736         (record_full_core_fetch_registers): Use regcache->raw_supply.
10737         (record_full_core_store_registers): Likewise.
10738         * regcache.c (regcache::get_register_status): Move it to
10739         reg_buffer.
10740         (regcache_raw_set_cached_value): Remove.
10741         (regcache::raw_set_cached_value): Remove.
10742         (regcache::raw_write): Call raw_supply.
10743         (regcache::raw_supply): Move it to reg_buffer_rw.
10744         * regcache.h (regcache_raw_set_cached_value): Remove.
10745         (reg_buffer_rw): New class.
10746
10747 2018-02-21  Yao Qi  <yao.qi@linaro.org>
10748
10749         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
10750         readonly_detached_regcache.
10751         (dummy_frame_prev_register): Use regcache->cooked_read.
10752         * frame.c (frame_save_as_regcache): Change return type.
10753         (frame_pop): Update.
10754         * frame.h (frame_save_as_regcache): Update declaration.
10755         * inferior.h (get_infcall_suspend_state_regcache): Update
10756         declaration.
10757         * infrun.c (infcall_suspend_state) <registers>: use
10758         readonly_detached_regcache.
10759         (save_infcall_suspend_state): Don't use regcache_dup.
10760         (get_infcall_suspend_state_regcache): Change return type.
10761         * linux-fork.c (struct fork_info) <savedregs>: Change to
10762         readonly_detached_regcache.
10763         <pc>: New field.
10764         (fork_save_infrun_state): Don't use regcache_dup.
10765         (info_checkpoints_command): Adjust.
10766         * mi/mi-main.c (register_changed_p): Update declaration.
10767         (mi_cmd_data_list_changed_registers): Use
10768         readonly_detached_regcache.
10769         (register_changed_p): Change parameter type to
10770         readonly_detached_regcache.
10771         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
10772         readonly_detached_regcache.
10773         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
10774         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
10775         New.
10776         (regcache::save): Move it to reg_buffer.
10777         (regcache::restore): Change parameter type.
10778         (regcache_dup): Remove.
10779         * regcache.h (reg_buffer) <save>: New method.
10780         (readonly_detached_regcache): New class.
10781         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
10782         readonly_detached_regcache.
10783         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
10784
10785 2018-02-21  Yao Qi  <yao.qi@linaro.org>
10786
10787         * frame.c (frame_save_as_regcache): Use regcache method save.
10788         (frame_pop): Use regcache method restore.
10789         * infrun.c (restore_infcall_suspend_state): Likewise.
10790         * linux-fork.c (fork_load_infrun_state): Likewise.
10791         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
10792         save.
10793         * regcache.c (regcache_save): Remove.
10794         (regcache::restore): More asserts.
10795         (regcache_cpy): Remove.
10796         * regcache.h (regcache_save): Remove the declaration.
10797         (regcache::restore): Move from private to public.
10798         Remove the friend declaration of regcache_cpy.
10799         (regcache_cpy): Remove declaration.
10800
10801 2018-02-21  Yao Qi  <yao.qi@linaro.org>
10802
10803         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
10804         parameter type to 'readable_regcache *'.
10805         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
10806         * arm-tdep.c (arm_neon_quad_read): Likewise.
10807         (arm_pseudo_read): Likewise.
10808         * avr-tdep.c (avr_pseudo_register_read): Likewise.
10809         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
10810         * frv-tdep.c (frv_pseudo_register_read): Likewise.
10811         * gdbarch.c: Re-generated.
10812         * gdbarch.h: Re-generated.
10813         * gdbarch.sh (pseudo_register_read): Change parameter type to
10814         'readable_regcache *'.
10815         (pseudo_register_read_value): Likewise.
10816         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
10817         (h8300_pseudo_register_read): Likewise.
10818         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
10819         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
10820         (i386_pseudo_register_read_into_value): Likewise.
10821         (i386_pseudo_register_read_value): Likewise.
10822         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
10823         declaration.
10824         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
10825         * m32c-tdep.c (m32c_raw_read): Likewise.
10826         (m32c_read_flg): Likewise.
10827         (m32c_banked_register): Likewise.
10828         (m32c_banked_read): Likewise.
10829         (m32c_sb_read): Likewise.
10830         (m32c_part_read): Likewise.
10831         (m32c_cat_read): Likewise.
10832         (m32c_r3r2r1r0_read): Likewise.
10833         (m32c_pseudo_register_read): Likewise.
10834         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
10835         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
10836         (mep_pseudo_cr64_read): Likewise.
10837         (mep_pseudo_register_read): Likewise.
10838         * mips-tdep.c (mips_pseudo_register_read): Likewise.
10839         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
10840         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
10841         * regcache.c (regcache::raw_read): Move it to readable_regcache.
10842         (regcache::cooked_read): Likewise.
10843         (regcache::cooked_read_value): Likewise.
10844         (regcache_cooked_read_signed):
10845         (regcache::cooked_read): Likewise.
10846         * regcache.h (readable_regcache): New class.
10847         (regcache): Inherit readable_regcache.  Move some methods to
10848         readable_regcache.
10849         * rl78-tdep.c (rl78_pseudo_register_read): Change
10850         parameter type to 'readable_regcache *'.
10851         * rs6000-tdep.c (do_regcache_raw_read): Remove.
10852         (e500_pseudo_register_read): Change parameter type to
10853         'readable_regcache *'.
10854         (dfp_pseudo_register_read): Likewise.
10855         (vsx_pseudo_register_read): Likewise.
10856         (efpr_pseudo_register_read): Likewise.
10857         * s390-tdep.c (s390_pseudo_register_read): Likewise.
10858         * sh-tdep.c (sh_pseudo_register_read): Likewise.
10859         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
10860         (sh64_pseudo_register_read): Likewise.
10861         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
10862         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
10863         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
10864         (spu_pseudo_register_read): Likewise.
10865         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
10866         (xtensa_pseudo_register_read): Likewise.
10867
10868 2018-02-21  Yao Qi  <yao.qi@linaro.org>
10869
10870         * regcache.c (regcache::regcache): Call reg_buffer ctor.
10871         (regcache::arch): Move it to reg_buffer::arch.
10872         (regcache::register_buffer): Likewise.
10873         (regcache::assert_regnum): Likewise.
10874         (regcache::num_raw_registers): Likewise.
10875         * regcache.h (reg_buffer): New class.
10876         (regcache): Inherit reg_buffer.
10877
10878 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
10879
10880         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
10881         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
10882
10883 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
10884
10885         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
10886
10887 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
10888
10889         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
10890         (SFILES): Remove common/*.c files.
10891         (COMMON_OBS): Remove some *.o files built from common/*.c files.
10892         * common/common.host: Add common reference.
10893         * configure.ac: Likewise.
10894         * configure: Regenerate.
10895
10896 2018-02-16  Yao Qi  <yao.qi@linaro.org>
10897
10898         * block.c (block_namespace_info): Inherit allocate_on_obstack.
10899         (block_initialize_namespace): Use new.
10900         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
10901         (dwarf2_free_objfile): Use delete.
10902         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
10903         (copy_type_recursive): Use new.
10904         * gdb_obstack.h (allocate_on_obstack): New.
10905
10906 2018-02-15  Yao Qi  <yao.qi@linaro.org>
10907
10908         PR gdb/22849
10909         * inferior.c (exit_inferior_1): Reset inf->control.
10910
10911 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
10912
10913         * ada-lang.c (ada_to_fixed_value_create): Delete advance
10914         declaration.
10915
10916 2018-02-14  Pedro Alves  <palves@redhat.com>
10917
10918         * frame-unwind.c (frame_unwind_try_unwinder): Always call
10919         frame_cleanup_after_sniffer on exception.
10920
10921 2018-02-14  Tom Tromey  <tom@tromey.com>
10922
10923         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
10924         const.
10925         (solib_bfd_open): Make pathname const.
10926         * solib.c (solib_bfd_open): Make pathname const.
10927         * solib-spu.c (spu_bfd_fopen): Make name const.
10928         (spu_bfd_open): Make pathname const.
10929         * solib-darwin.c (darwin_bfd_open): Make pathname const.
10930         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
10931
10932 2018-02-14  Tom Tromey  <tom@tromey.com>
10933
10934         * symfile.c (symfile_bfd_open): Update.
10935         * source.h (openp, source_full_path_of, find_and_open_source):
10936         Change argument type to unique_xmalloc_ptr.
10937         * source.c (openp): Take a unique_xmalloc_ptr.
10938         (source_full_path_of, find_and_open_source): Likewise.
10939         (open_source_file, symtab_to_fullname): Update.
10940         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
10941         unique_xmalloc_ptr.
10942         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
10943         (exec_file_find): Update.
10944         * psymtab.c (psymtab_to_fullname): Update.
10945         * nto-tdep.h (nto_find_and_open_solib): Update.
10946         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
10947         unique_xmalloc_ptr.
10948         * exec.c (exec_file_attach): Update.
10949         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
10950         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
10951
10952 2018-02-14  Tom Tromey  <tom@tromey.com>
10953
10954         * solib.c: Include source.h.
10955         * nto-tdep.c: Include source.h.
10956         * mi/mi-cmd-env.c: Include source.h.
10957         * infcmd.c: Include source.h.
10958         * exec.c: Include source.h.
10959         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
10960         (add_path, directory_switch, source_path, init_source_path): Move
10961         declarations...
10962         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
10963         (add_path, directory_switch, source_path, init_source_path):
10964         ...here.
10965
10966 2018-02-14  Tom Tromey  <tom@tromey.com>
10967
10968         * solist.h (exec_file_find, solib_find): Return
10969         unique_xmalloc_ptr.
10970         (solib_bfd_fopen): Take a const char *.
10971         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
10972         (exec_file_find, solib_find): Likewise.
10973         (solib_bfd_fopen): Do not take ownership of "pathname".
10974         (solib_bfd_open): Use unique_xmalloc_ptr.
10975         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
10976         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
10977         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
10978         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
10979
10980 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
10981
10982         * ada-lang.c (name_match_type_from_name): Remove reference to
10983         ada_name_for_lookup in function's documentation.
10984         * ada-lang.h (ada_name_for_lookup): Delete declaration.
10985
10986 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
10987
10988         * defs.h (enum openp_flags): New enum.
10989         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
10990         Move to enum openp_flags.
10991         (openp_flags): New enum flags.
10992         (openp): Change parameter type to openp_flags.
10993         * source.c (openp): Change parameter type to openp_flags.
10994         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
10995         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
10996
10997 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
10998
10999         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
11000         per-command.
11001
11002 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
11003
11004         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
11005         into...
11006         (class dwarf2_queue_guard): ...the destructor of this new class.
11007         (dw2_do_instantiate_symtab): Create instance of the new class
11008         dwarf2_queue_guard, remove cleanup.
11009
11010 2018-02-09  Tom Tromey  <tom@tromey.com>
11011
11012         * source.c (find_source_lines): Don't reference past the end of
11013         the vector.
11014
11015 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11016
11017         * remote.c (remote_btrace_maybe_reopen): Change error message.
11018         * btrace.c (btrace_enable): Likewise.
11019         (parse_xml_btrace): Likewise.
11020         (parse_xml_btrace_conf): Likewise.
11021
11022 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11023
11024         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
11025         (linux_enable_pt, linux_enable_bts): Call
11026         diagnose_perf_event_open_fail.
11027
11028 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11029
11030         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
11031         Remove parameter and change return type.  Update callers.  Move it.
11032         (linux_enable_bts, linux_enable_pt): Improve error message.
11033         (linux_enable_pt): Remove zero buffer size check.
11034         (linux_enable_btrace): Improve error messages.  Remove NULL return
11035         check.
11036
11037 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11038
11039         * btrace.c (btrace_enable): Remove target_supports_btrace call.
11040         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
11041         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
11042         (linux_supports_pt, linux_supports_btrace): Remove.
11043         (linux_enable_bts): Call cpu_supports_bts.
11044         * nat/linux-btrace.h (linux_supports_btrace): Remove.
11045         * remote.c (remote_supports_btrace): Remove.
11046         (init_remote_ops): Remove remote_supports_btrace.
11047         * target-delegates.c: Regenerated.
11048         * target.c (target_supports_btrace): Remove.
11049         * target.h (target_ops) <to_supports_btrace>: Remove
11050         (target_supports_btrace): Remove.
11051         * x86-linux-nat.c (x86_linux_create_target): Remove
11052         linux_supports_btrace.
11053
11054 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11055
11056         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
11057         btrace failed.
11058         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
11059         exception and use message in own exception.
11060
11061 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11062
11063         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
11064         (perf_event_pt_event_type): Use gdb_file_up.
11065         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
11066         scoped_fd, and scoped_mmap.
11067
11068 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11069
11070         * common/scoped_mmap.h: New.
11071         * unittests/scoped_mmap-selftest.c: New.
11072         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11073         unittests/scoped_mmap-selftest.c.
11074
11075 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11076
11077         * common/scoped_fd.h: New.
11078         * unittests/scoped_fd-selftest.c: New.
11079         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11080         unittests/scoped_fd-selftest.c.
11081
11082 2018-02-09  Tom Tromey  <tom@tromey.com>
11083
11084         * auto-load.c (auto_load_section_scripts): Use
11085         gdb::unique_xmalloc_ptr.
11086
11087 2018-02-09  Tom Tromey  <tom@tromey.com>
11088
11089         * auto-load.c (execute_script_contents): Use std::string.
11090
11091 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
11092
11093         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
11094         Python function, rather than a new command.
11095
11096 2018-02-08  Tom Tromey  <tom@tromey.com>
11097
11098         * solib.c (solib_find_1): Use std::string.
11099         (solib_bfd_fopen): Use unique_xmalloc_ptr.
11100
11101 2018-02-08  Tom Tromey  <tom@tromey.com>
11102
11103         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
11104
11105 2018-02-08  Tom Tromey  <tom@tromey.com>
11106
11107         * source.c (find_source_lines): Use gdb::def_vector.
11108
11109 2018-02-08  Tom Tromey  <tom@tromey.com>
11110
11111         * macrocmd.c (struct temporary_macro_definition): New.
11112         (macro_define_command): Use temporary_macro_definition.  Remove
11113         cleanups.
11114         (free_macro_definition_ptr): Remove.
11115
11116 2018-02-08  Tom Tromey  <tom@tromey.com>
11117
11118         * macroexp.c (maybe_expand): Use std::string.
11119
11120 2018-02-08  Tom Tromey  <tom@tromey.com>
11121
11122         * macroexp.c (struct macro_buffer): Add initializers for some
11123         members.
11124         (init_buffer, init_shared_buffer, free_buffer)
11125         (free_buffer_return_text): Remove.
11126         (macro_buffer): New constructors.
11127         (~macro_buffer): New destructor.
11128         (macro_buffer::set_shared): New method.
11129         (macro_buffer::resize_buffer, macro_buffer::appendc)
11130         (macro_buffer::appendmem): Now methods, not free functions.
11131         (set_token, append_tokens_without_splicing, stringify)
11132         (macro_stringify): Update.
11133         (gather_arguments): Change return type.  Remove argc_p argument,
11134         add args_ptr argument.  Use std::vector.
11135         (substitute_args): Remove argc argument.  Accept std::vector.
11136         (expand): Update.  Use std::vector.
11137         (scan, macro_expand, macro_expand_next): Update.
11138
11139 2018-02-08  Tom Tromey  <tom@tromey.com>
11140
11141         * symtab.c (default_collect_symbol_completion_matches_break_on):
11142         Use unique_xmalloc_ptr.
11143         * macroscope.h: (sal_macro_scope, user_macro_scope)
11144         (default_macro_scope): Return unique_xmalloc_ptr.
11145         * macroscope.c (sal_macro_scope, user_macro_scope)
11146         (default_macro_scope): Return unique_xmalloc_ptr.
11147         * macroexp.h (macro_expand, macro_expand_once): Return
11148         unique_xmalloc_ptr.
11149         * macroexp.c (macro_expand, macro_expand_once): Return
11150         unique_xmalloc_ptr.
11151         * macrocmd.c (macro_expand_command, macro_expand_once_command)
11152         (info_macro_command, info_macros_command): Use
11153         unique_xmalloc_ptr.
11154         * compile/compile-c-support.c (write_macro_definitions): Use
11155         unique_xmalloc_ptr.
11156         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
11157
11158 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
11159
11160         * value.c (value_static_field): Assign field type instead of
11161         containing type when returning an optimized out value.
11162
11163 2018-02-06  Yao Qi  <yao.qi@linaro.org>
11164
11165         * ft32-tdep.c (ft32_read_pc): Remove.
11166         (ft32_write_pc): Remove.
11167         (ft32_gdbarch_init): Update.
11168         * m32r-tdep.c (m32r_read_pc): Remove.
11169         (m32r_gdbarch_init): Update.
11170         * mep-tdep.c (mep_read_pc): Remove.
11171         (mep_gdbarch_init): Update.
11172         * microblaze-tdep.c (microblaze_write_pc): Remove.
11173         (microblaze_gdbarch_init): Update.
11174         * mn10300-tdep.c (mn10300_read_pc): Remove.
11175         (mn10300_write_pc): Remove.
11176         (mn10300_gdbarch_init): Update.
11177         * moxie-tdep.c (moxie_read_pc): Remove.
11178         (moxie_write_pc): Remove.
11179         (moxie_gdbarch_init): Update.
11180
11181 2018-02-06  Yao Qi  <yao.qi@linaro.org>
11182
11183         * expprint.c (print_subexp_standard): Handle
11184         OP_F77_UNDETERMINED_ARGLIST.
11185         (dump_subexp_body_standard): Likewise.
11186
11187 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
11188
11189         * target-descriptions.c (tdesc_element_visitor) Add empty
11190         implementations.
11191         (tdesc_type): Move make_gdb_type from here.
11192         (tdesc_type_builtin): Likewise.
11193         (tdesc_type_vector): Likewise.
11194         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
11195         (make_gdb_type_struct): Move from tdesc_type_with_fields.
11196         (make_gdb_type_union): Likewise.
11197         (make_gdb_type_flags): Likewise.
11198         (make_gdb_type_enum): Likewise.
11199         (make_gdb_type): New function.
11200         (tdesc_register_type): Use static make_gdb_type.
11201
11202 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
11203
11204         * infcmd.c (default_print_one_register_info): Align natural-format
11205         column values consistently one under another.
11206         (pad_to_column): New function.
11207
11208 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
11209
11210         * dwarf2read.c (dwarf2_physname): Move commment.
11211
11212 2018-02-01  Leszek Swirski  <leszeks@google.com>
11213
11214         * varobj.c (varobj_formatted_print_options): Allow recursive
11215         pretty printing if pretty printing is enabled.
11216
11217 2018-02-01  Leszek Swirski  <leszeks@google.com>
11218
11219         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
11220         names after a structop as a filename.
11221
11222 2018-02-01  Yao Qi  <yao.qi@linaro.org>
11223
11224         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
11225         (arm_record_coproc_data_proc): Likewise.
11226
11227 2018-02-01  Yao Qi  <yao.qi@linaro.org>
11228
11229         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
11230
11231 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
11232
11233         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
11234         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
11235
11236 2018-01-31  Pedro Alves  <palves@redhat.com>
11237
11238         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
11239         * inflow.c (child_terminal_save_inferior): Wrap reference to
11240         tcgetpgrp in HAVE_TERMIOS_H.
11241         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
11242         _WIN32.
11243         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
11244         always iterate over all inferiors.
11245         (gdbsim_cntrl_c): Adjust.
11246         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
11247
11248 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
11249
11250         * gdbtypes.c (lookup_array_range_type): Make sure the array's
11251         index type is objfile-owned if the element type is as well.
11252
11253 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
11254
11255         GDB 8.1 released.
11256
11257 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
11258
11259         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
11260         "features/s390x-linux64.c".
11261         (_initialize_s390_linux_tdep): Remove initialization of tdescs
11262         s390_linux32 and s390x_linux64.
11263         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
11264         default tdesc.
11265         * s390-tdep.c: Include "features/s390-linux32.c" and
11266         "features/s390x-linux64.c".
11267         (s390_tdesc_valid): Add check for tdesc_has_registers.
11268         (s390_gdbarch_init): Make sure there is always a valid tdesc.
11269         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
11270         tdesc_s390x_linux64.
11271         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
11272         tdesc_s390x_linux64 to...
11273         * s390-tdep.h: ...here.
11274
11275 2018-01-30  Pedro Alves  <palves@redhat.com>
11276
11277         PR gdb/13211
11278         * config.in, configure: Regenerate.
11279         * configure.ac: Check for getpgid.
11280         * go32-nat.c (go32_pass_ctrlc): New.
11281         (go32_target): Install it.
11282         * inf-child.c (inf_child_target): Install
11283         child_terminal_save_inferior, child_pass_ctrlc and
11284         child_interrupt.
11285         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
11286         (inf_ptrace_target): No longer install it.
11287         * infcmd.c (interrupt_target_1): Adjust.
11288         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
11289         (child_interrupt): Declare.
11290         (inferior::terminal_state): New.
11291         * inflow.c (struct terminal_info): Update comments.
11292         (inferior_process_group): Delete.
11293         (terminal_is_ours): Delete.
11294         (gdb_tty_state): New.
11295         (child_terminal_init): Adjust.
11296         (is_gdb_terminal, sharing_input_terminal_1)
11297         (sharing_input_terminal): New functions.
11298         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
11299         Set the process's actual process group in the foreground if
11300         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
11301         mark terminal as the inferior's if not sharing GDB's terminal.
11302         Don't check attach_flag.
11303         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
11304         pass down a target_terminal_state.
11305         (child_terminal_save_inferior): New, factored out from ...
11306         (child_terminal_ours_1): ... this.  Handle
11307         target_terminal_state::is_ours_for_output.
11308         (child_interrupt, child_pass_ctrlc): New.
11309         (inflow_inferior_exit): Clear the inferior's terminal_state.
11310         (copy_terminal_info): Copy the inferior's terminal state.
11311         (_initialize_inflow): Remove reference to terminal_is_ours.
11312         * inflow.h (inferior_process_group): Delete.
11313         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
11314         * procfs.c (procfs_target): Don't install procfs_interrupt.
11315         (procfs_interrupt): Delete.
11316         * remote.c (remote_serial_quit_handler): Adjust.
11317         (remote_interrupt): Remove ptid parameter.  Adjust.
11318         * target-delegates.c: Regenerate.
11319         * target.c: Include "terminal.h".
11320         (target_terminal::terminal_state): Rename to ...
11321         (target_terminal::m_terminal_state): ... this.
11322         (target_terminal::init): Adjust.
11323         (target_terminal::inferior): Adjust to per-inferior
11324         terminal_state.
11325         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
11326         (target_terminal::ours, target_terminal::ours_for_output): Use
11327         target_terminal_is_ours_kind.
11328         (target_interrupt): Remove ptid parameter.  Adjust.
11329         (default_target_pass_ctrlc): Adjust.
11330         * target.h (target_ops::to_terminal_save_inferior): New field.
11331         (target_ops::to_interrupt): Remove ptid_t parameter.
11332         (target_interrupt): Remove ptid_t parameter.  Update comment.
11333         (target_pass_ctrlc): Update comment.
11334         * target/target.h (target_terminal_state): New scoped enum,
11335         factored out of ...
11336         (target_terminal::terminal_state): ... here.
11337         (target_terminal::inferior): Update comments.
11338         (target_terminal::restore_inferior): New.
11339         (target_terminal::is_inferior, target_terminal::is_ours)
11340         (target_terminal::is_ours_for_output): Adjust.
11341         (target_terminal::scoped_restore_terminal_state): Adjust to
11342         rename, and call restore_inferior() instead of inferior().
11343         (target_terminal::scoped_restore_terminal_state::m_state): Change
11344         type.
11345         (target_terminal::terminal_state): Rename to ...
11346         (target_terminal::m_terminal_state): ... this and change type.
11347
11348 2018-01-30  Pedro Alves  <palves@redhat.com>
11349
11350         * linux-nat.c (wait_for_signal): New function.
11351         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
11352         directly.
11353         (async_terminal_is_ours)
11354         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
11355         (linux_nat_add_target): Don't override
11356         to_terminal_inferior/to_terminal_ours.
11357
11358 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
11359
11360         * remote.c (remote_follow_fork): Don't call "detach_inferior".
11361
11362 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
11363
11364         * dwarf2read.c (free_dwo_files): Add forward-declaration.
11365         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
11366         dwarf2_per_objfile_free here.
11367         (dwarf2_per_objfile_free): Remove.
11368         (_initialize_dwarf2_read): Don't register
11369         dwarf2_per_objfile_free as a registry cleanup.
11370
11371 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
11372
11373         Avoid compilation errors in MinGW native builds
11374
11375         The error is triggered by including python-internal.h, and the
11376         error message is:
11377
11378              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
11379                       from build-gnulib/import/math.h:27,
11380                       from d:/usr/Python26/include/pyport.h:235,
11381                       from d:/usr/Python26/include/Python.h:58,
11382                       from python/python-internal.h:94,
11383                       from python/py-arch.c:24:
11384              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
11385         using ::hypot;
11386                 ^~~~~
11387
11388         This happens because Python headers define 'hypot' to expand t
11389         '_hypot' in the Windows builds.
11390         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
11391         'hypoth'.  This avoids a compilation error.
11392
11393 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
11394
11395         * MAINTAINERS (Write After Approval): Fix ordering.
11396
11397 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
11398
11399         * MAINTAINERS (Write After Approval): Add Alan Hayward.
11400
11401 2018-01-26  Alan Modra  <amodra@gmail.com>
11402
11403         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
11404         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
11405         Remove nop.  Make const.  Comment.
11406         (powerpc32_plt_stub_so_2): New.
11407         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
11408         Correct count.  Update uses.
11409         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
11410         Move common code reading PLT entry word.  Correct
11411         powerpc32_plt_stub PLT address calculation.
11412         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
11413         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
11414         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
11415         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
11416         (ppc64_standard_linkage8): Likewise.
11417         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
11418         Correct insns description.
11419         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
11420
11421 2018-01-24  Pedro Alves  <palves@redhat.com>
11422
11423         GCC PR libstdc++/83906
11424         * gdbtypes.c (operator==(const dynamic_prop &,
11425         const dynamic_prop &)): New.
11426         (operator==(const range_bounds &, const range_bounds &)): New.
11427         (check_types_equal): Use them instead of memcmp.
11428         * gdbtypes.h (operator==(const dynamic_prop &,
11429         const dynamic_prop &)): Declare.
11430         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
11431         (operator==(const range_bounds &, const range_bounds &)): Declare.
11432         (operator!=(const range_bounds &, const range_bounds &)): Declare.
11433
11434 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
11435
11436         * s390-linux-tdep.c (s390_record_address_mask)
11437         (s390_record_calc_disp_common, s390_record_calc_disp)
11438         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
11439         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
11440         (s390_process_record): Move to s390-tdep.c.
11441         (s390_linux_init_abi_any): Adjust.
11442         * s390-tdep.c (s390_record_address_mask)
11443         (s390_record_calc_disp_common, s390_record_calc_disp)
11444         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
11445         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
11446         (s390_process_record): Moved from s390-linux-tdep.c
11447         (s390_gdbarch_init): Adjust.
11448
11449 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
11450
11451         * s390-linux-nat.c (s390-tdep.h): New include.
11452         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
11453         (HFILES_NO_SRCDIR): Add s390-tdep.h.
11454         (ALLDEPFILES): Add s390-tdep.c.
11455         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
11456         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
11457         * s390-tdep.h: ...this.  New file.
11458         * s390-linux-tdep.c (s390-tdep.h): New include.
11459         (_initialize_s390_tdep): Rename to...
11460         (_initialize_s390_linux_tdep): ...this and adjust.
11461         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
11462         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
11463         s390-tdep.h.
11464         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
11465         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
11466         (s390_is_partial_instruction, s390_software_single_step)
11467         (is_non_branch_ril, s390_displaced_step_copy_insn)
11468         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
11469         (s390_prologue_data, s390_addr, s390_store, s390_load)
11470         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
11471         (s390_register_call_saved, s390_guess_tracepoint_registers)
11472         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
11473         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
11474         (s390_pseudo_register_name, s390_pseudo_register_type)
11475         (s390_pseudo_register_read, s390_pseudo_register_write)
11476         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
11477         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
11478         (s390_addr_bits_remove, s390_address_class_type_flags)
11479         (s390_address_class_type_flags_to_name)
11480         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
11481         (s390_function_arg_float, s390_function_arg_vector)
11482         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
11483         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
11484         (s390_frame_align, s390_register_return_value, s390_return_value)
11485         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
11486         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
11487         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
11488         (s390_trad_frame_prev_register, s390_unwind_cache)
11489         (s390_prologue_frame_unwind_cache)
11490         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
11491         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
11492         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
11493         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
11494         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
11495         (s390_frame_base_address, s390_local_base_address)
11496         (s390_frame_base, s390_gcc_target_options)
11497         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
11498         (s390_validate_reg_range, s390_tdesc_valid)
11499         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
11500         * s390-tdep.c: ...this.  New file.
11501
11502 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
11503
11504         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
11505         (s390_process_record, s390_gdbarch_tdep_alloc)
11506         (s390_linux_init_abi_any): Use/set new hook.
11507
11508 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
11509
11510         * s390-linux-tdep.c (osabi.h): New include.
11511         (s390_linux_init_abi_31, s390_linux_init_abi_64)
11512         (s390_linux_init_abi_any): New functions.
11513         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
11514
11515 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
11516
11517         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
11518         tdesc_has_registers check
11519
11520 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
11521
11522         * s390-linux-tdep.c (s390_tdesc_valid): New function.
11523         (s390_validate_reg_range): New macro.
11524         (s390_gdbarch_init): Adjust.
11525
11526 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
11527
11528         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
11529         (s390_gdbarch_tdep_alloc): Adjust.
11530         (s390_gdbarch_init): Adjust.
11531
11532 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
11533
11534         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
11535         <have_tdb>: Change type to bool.
11536         (s390_gdbarch_tdep_alloc): Adjust.
11537         (s390_gdbarch_init): Adjust.
11538
11539 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
11540
11541         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
11542         (gdbarch_tdep) <have_upper, have_vx>: New fields.
11543         (s390_gdbarch_tdep_alloc): New function.
11544         (s390_gdbarch_init): Allocate tdep at start and use its fields
11545         instead of separate variables.
11546
11547 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
11548
11549         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
11550         when looking for cached gdbarch and add comment for remaining.
11551
11552 2018-01-22  Pedro Alves  <palves@redhat.com>
11553             Sergio Durigan Junior  <sergiodj@redhat.com>
11554
11555         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
11556         case.
11557
11558 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
11559
11560         * MAINTAINERS: Update my company e-mail address.
11561
11562 2018-01-22  Yao Qi  <yao.qi@linaro.org>
11563
11564         * regcache.c (cooked_write_test): New function.
11565         (_initialize_regcache): Register the test.
11566
11567 2018-01-22  Yao Qi  <yao.qi@linaro.org>
11568
11569         * ia64-tdep.c (ia64_pseudo_register_read): Call
11570         regcache->cooked_read instead of regcache_cooked_read_unsigned.
11571         * m32c-tdep.c (m32c_cat_read): Likewise.
11572         (m32c_r3r2r1r0_read): Likewise.
11573         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
11574         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
11575
11576 2018-01-22  Yao Qi  <yao.qi@linaro.org>
11577
11578         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
11579         method raw_read instead of regcache_raw_read.
11580         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
11581         * arm-tdep.c (arm_neon_quad_read): Likewise.
11582         * avr-tdep.c (avr_pseudo_register_read): Likewise.
11583         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
11584         * frv-tdep.c (frv_pseudo_register_read): Likewise.
11585         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
11586         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
11587         (i386_pseudo_register_read_into_value): Likewise.
11588         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
11589         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
11590         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
11591         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
11592         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
11593         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
11594         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
11595         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
11596         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
11597
11598 2018-01-22  Yao Qi  <yao.qi@linaro.org>
11599
11600         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
11601         * configure.tgt: Remove target mt.
11602         * mt-tdep.c: Remove.
11603         * regcache.c (cooked_read_test): Remove the check for mt.
11604
11605 2018-01-22  Yao Qi  <yao.qi@linaro.org>
11606
11607         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
11608         instead of gdbarch_pseudo_register_read_value.
11609
11610 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
11611
11612         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
11613         language is Ada.
11614
11615 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
11616
11617         * linespec.c (create_sals_line_offset): Remove code that preserved
11618         the symtab_and_line's line number.
11619
11620 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
11621
11622         * varobj.c (varobj_create): Don't set valid_block when creating a
11623         floating varobj.
11624
11625 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
11626
11627         * varobj.c (varobj_create): Remove out of date comment.
11628
11629 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
11630
11631         PR mi/20395
11632         * ada-exp.y (write_var_from_sym): Pass extra parameter when
11633         updating innermost block.
11634         * parse.c (innermost_block_tracker::update): Take extra type
11635         parameter, and check types match before updating innermost block.
11636         (write_dollar_variable): Update innermost block for registers.
11637         * parser-defs.h (enum innermost_block_tracker_type): New enum.
11638         (innermost_block_tracker::innermost_block_tracker): Initialise
11639         m_types member.
11640         (innermost_block_tracker::reset): Take type parameter.
11641         (innermost_block_tracker::update): Take type parameter, and pass
11642         type through as needed.
11643         (innermost_block_tracker::m_types): New member.
11644         * varobj.c (varobj_create): Pass type when reseting innermost
11645         block.
11646
11647 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
11648
11649         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
11650         * ada-lang.c (resolve_subexp): Likewise.
11651         * breakpoint.c (set_breakpoint_condition) Likewise.
11652         (watch_command_1) Likewise.
11653         * c-exp.y (variable): Likewise.
11654         * d-exp.y (PrimaryExpression): Likewise.
11655         * f-exp.y (variable): Likewise.
11656         * go-exp.y (variable): Likewise.
11657         * m2-exp.y (variable): Likewise.
11658         * objfiles.c (objfile::~objfile): Likewise.
11659         * p-exp.y (variable): Likewise.
11660         * parse.c (innermost_block): Change type.
11661         * parser-defs.h (class innermost_block_tracker): New.
11662         (innermost_block): Change to innermost_block_tracker.
11663         * printcmd.c (display_command): Switch to innermost_block API.
11664         (do_one_display): Likewise.
11665         * rust-exp.y (do_one_display): Likewise.
11666         * symfile.c (clear_symtab_users): Likewise.
11667         * varobj.c (varobj_create): Switch to innermost_block API, replace
11668         use of innermost_block with block stored on varobj object.
11669
11670 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
11671
11672         * expression.h (innermost_block): Remove declaration.
11673         * varobj.c: Add 'parser-defs.h' include.
11674
11675 2018-01-19  Tom Tromey  <tom@tromey.com>
11676
11677         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
11678         symbols in the static and global blocks.
11679
11680 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
11681
11682         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
11683         gdb_ptrace.h, and move including gdb_wait.h ...
11684         * nat/linux-ptrace.h: ... to here.
11685
11686 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
11687
11688         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
11689         inf_ptrace_detach_success.
11690         (inf_ptrace_detach_success): Add inferior parameter, use it
11691         instead of inferior_ptid, pass it to detach_inferior.
11692         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
11693         parameter.
11694         * inferior.c (detach_inferior): Add overload that takes an
11695         inferior object.
11696         * inferior.h (detach_inferior): Likewise.
11697         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
11698         use inferior_ptid, adjust call to inf_ptrace_detach_success.
11699         * linux-thread-db.c (thread_db_detach): Use inf parameter.
11700
11701 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
11702
11703         * target.h (struct target_ops) <to_detach>: Add inferior
11704         parameter.
11705         (target_detach): Likewise.
11706         * target.c (dispose_inferior): Pass inferior down.
11707         (target_detach): Pass inferior down.  Assert that it is equal to
11708         the current inferior.
11709         * aix-thread.c (aix_thread_detach): Pass inferior down.
11710         * corefile.c (core_file_command): Pass current_inferior() down.
11711         * corelow.c (core_detach): Add inferior parameter.
11712         * darwin-nat.c (darwin_detach): Likewise.
11713         * gnu-nat.c (gnu_detach): Likewise.
11714         * inf-ptrace.c (inf_ptrace_detach): Likewise.
11715         * infcmd.c (detach_command): Pass current_inferior() down to
11716         target_detach.
11717         * infrun.c (follow_fork_inferior): Pass parent_inf to
11718         target_detach.
11719         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
11720         target_detach.
11721         * linux-nat.c (linux_nat_detach): Add inferior parameter.
11722         * linux-thread-db.c (thread_db_detach): Likewise.
11723         * nto-procfs.c (procfs_detach): Likewise.
11724         * procfs.c (procfs_detach): Likewise.
11725         * record.c (record_detach): Likewise.
11726         * record.h (struct inferior): Forward-declare.
11727         (record_detach): Add inferior parameter.
11728         * remote-sim.c (gdbsim_detach): Likewise.
11729         * remote.c (remote_detach_1): Likewise.
11730         (remote_detach): Likewise.
11731         (extended_remote_detach): Likewise.
11732         * sol-thread.c (sol_thread_detach): Likewise.
11733         * target-debug.h (target_debug_print_inferior_p): New macro.
11734         * target-delegates.c: Re-generate.
11735         * top.c (kill_or_detach): Pass inferior down to target_detach.
11736         * windows-nat.c (windows_detach): Add inferior parameter.
11737
11738 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
11739
11740         * target.h (struct target_ops) <to_detach>: Remove args
11741         parameter.
11742         (target_detach): Likewise.
11743         * target.c (dispose_inferior): Adjust.
11744         (target_detach): Remove args parameter, adjust.
11745         * aix-thread.c (aix_thread_detach): Adjust.
11746         * corefile.c (core_file_command): Adjust.
11747         * corelow.c (core_detach): Adjust.
11748         * darwin-nat.c (darwin_detach): Adjust.
11749         * gnu-nat.c (gnu_detach): Adjust.
11750         * inf-ptrace.c (inf_ptrace_detach): Adjust.
11751         * infcmd.c (detach_command): Adjust
11752         * infrun.c (follow_fork_inferior): Adjust.
11753         (handle_vfork_child_exec_or_exit): Adjust.
11754         * linux-fork.c (linux_fork_detach): Remove args parameter.
11755         * linux-fork.h (linux_fork_detach): Likewise.
11756         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
11757         * linux-thread-db.c (thread_db_detach): Likewise.
11758         * nto-procfs.c (procfs_detach): Likewise.
11759         * procfs.c (procfs_detach): Likewise.
11760         (do_detach): Remove signo parameter.
11761         * record.c (record_detach): Remove args parameter.
11762         * record.h (record_detach): Likewise.
11763         * remote-sim.c (gdbsim_detach): Likewise.
11764         * remote.c (remote_detach_1): Likewise.
11765         (remote_detach): Likewise.
11766         (extended_remote_detach): Likewise.
11767         * sol-thread.c (sol_thread_detach): Likewise.
11768         * target-delegates.c: Re-generate.
11769         * top.c (struct qt_args) <args>: Remove field.
11770         (kill_or_detach): Don't pass args.
11771         (quit_force): Don't set args.
11772         * windows-nat.c (windows_detach): Remove args parameter.
11773
11774 2018-01-19  Yao Qi  <yao.qi@linaro.org>
11775
11776         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
11777         (arm_linux_init_abi): Install it.
11778
11779 2018-01-19  Yao Qi  <yao.qi@linaro.org>
11780
11781         * osabi.c (gdb_osabi_names): Extend the regexp for
11782         arm-linux-gnueabihf.
11783
11784 2018-01-18  Yao Qi  <yao.qi@linaro.org>
11785
11786         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
11787         m_abbrevs.
11788         (abbrev_table::add_abbrev): Update.
11789         (abbrev_table::lookup_abbrev): Update.
11790
11791 2018-01-18  Yao Qi  <yao.qi@linaro.org>
11792
11793         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
11794
11795 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
11796
11797         * compile/compile.c (compile_to_object): Convert "triplet_rx"
11798         to "std::string".
11799
11800 2018-01-17  Tom Tromey  <tom@tromey.com>
11801
11802         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
11803
11804 2018-01-17  Tom Tromey  <tom@tromey.com>
11805
11806         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
11807         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
11808         (create_array_type_with_stride): Update.
11809         * dwarf2read.c (set_die_type): Update.
11810
11811 2018-01-17  Tom Tromey  <tom@tromey.com>
11812
11813         * dwarf2read.c (delayed_method_info): Remove typedef.
11814         (dwarf2_cu::method_info): Now a std::vector.
11815         (add_to_method_list): Update.
11816         (free_delayed_list): Remove.
11817         (compute_delayed_physnames): Update.
11818         (process_full_comp_unit, process_full_type_unit): Clear the method
11819         list.  Remove cleanups.
11820         (psymtab_include_file_name): Add name_holder parameter.  Use
11821         unique_xmalloc_ptr.
11822         (dwarf_decode_lines): Update.
11823
11824 2018-01-17  Tom Tromey  <tom@tromey.com>
11825             Simon Marchi  <simon.marchi@ericsson.com>
11826
11827         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
11828         (dwarf2_per_objfile::free_cached_comp_units)
11829         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
11830         (init_cutu_and_read_dies_no_follow): Update.
11831         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
11832         (dwarf2_cu::~dwarf2_cu): New.
11833         (free_heap_comp_unit, free_stack_comp_unit): Remove.
11834         (age_cached_comp_units, free_one_cached_comp_unit): Update.
11835
11836 2018-01-17  Tom Tromey  <tom@tromey.com>
11837             Simon Marchi  <simon.marchi@ericsson.com>
11838
11839         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
11840         (struct die_reader_specs) <abbrev_table>: New member.
11841         (struct abbrev_table): Add constructor.
11842         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
11843         <abbrev_obstack>: Now an auto_obstack.
11844         (abbrev_table_up): New typedef.
11845         (init_cu_die_reader): Add abbrev_table parameter.
11846         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
11847         Add result_dwo_abbrev_table.
11848         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
11849         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
11850         Update.
11851         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
11852         parameter.
11853         (skip_children): Update.
11854         (abbrev_table::alloc_abbrev): Rename from
11855         abbrev_table_alloc_abbrev.
11856         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
11857         (abbrev_table::lookup_abbrev): Rename from
11858         abbrev_table_lookup_abbrev.
11859         (abbrev_table_read_table): Return abbrev_table_up.
11860         (abbrev_table_free, abbrev_table_free_cleanup)
11861         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
11862         (load_partial_dies): Update.
11863
11864 2018-01-17  Tom Tromey  <tom@tromey.com>
11865
11866         * dwarf2read.c (dwarf2_compute_name): Update comment.
11867         (read_func_scope, read_variable): Update.
11868         (new_symbol): Remove.
11869         (new_symbol_full): Rename to new_symbol.
11870
11871 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
11872
11873         PR gdb/16577
11874         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
11875         a warning instead of throwing an error, set section size to 0 and return
11876         NULL.
11877         * gdb_bfd.h (gdb_bfd_map_section): Update description.
11878
11879 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
11880
11881         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
11882         std::string.
11883         (linux_ptrace_attach_fail_reason_string): Likewise.
11884         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
11885         Likewise.
11886         (linux_ptrace_attach_fail_reason_string): Likewise.
11887         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
11888
11889 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
11890
11891         * linux-nat.c (linux_nat_attach): Remove xstrdup.
11892
11893 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
11894
11895         PR gdb/21559
11896         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
11897         checking for fs_base/gs_base fields in struct user_regs_struct.
11898         * configure: Regenerate.
11899
11900 2018-01-17  Yao Qi  <yao.qi@linaro.org>
11901
11902         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
11903         function.
11904         (aarch64_linux_init_abi): Install it to gdbarch hook
11905         gcc_target_options.
11906
11907 2018-01-15  Pedro Alves  <palves@redhat.com>
11908
11909         * common/signals-state-save-restore.c
11910         (save_original_signals_state): Fix typos.
11911
11912 2017-01-12  Tom Tromey  <tom@tromey.com>
11913             Sergio Durigan Junior  <sergiodj@redhat.com>
11914
11915         * Makefile.in (install-only): Install gdb-add-index.
11916
11917 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
11918
11919         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
11920
11921 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11922
11923         * infrun.c (keep_going_pass_signal): Clear step-over info when
11924         insert_breakpoints fails.
11925
11926 2018-01-11  Pedro Alves  <palves@redhat.com>
11927
11928         PR gdb/22583
11929         * infrun.c (resume): Rename to ...
11930         (resume_1): ... this.
11931         (resume): Reimplement as wrapper around resume_1.
11932
11933 2018-01-11  Pedro Alves  <palves@redhat.com>
11934
11935         PR remote/22597
11936         * remote.c (remote_parse_stop_reply): Default to the last-set
11937         general thread instead of to 'magic_null_ptid'.
11938
11939 2018-01-10  Pedro Alves  <palves@redhat.com>
11940
11941         * language.h (language_get_symbol_name_matcher): Rename ...
11942         (get_symbol_name_matcher): ... this.
11943         * language.c (language_get_symbol_name_matcher): Ditto.
11944         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
11945         callers adjusted.
11946
11947 2018-01-10  Pedro Alves  <palves@redhat.com>
11948
11949         PR gdb/22670
11950         * dwarf2read.c
11951         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
11952         Adjust to use language_get_symbol_name_matcher instead of
11953         language_defn::la_get_symbol_name_matcher.
11954         * language.c (language_get_symbol_name_matcher): If in Ada mode
11955         and the lookup name is a verbatim match, return Ada's matcher.
11956         * language.h (language_get_symbol_name_matcher): Adjust comment.
11957         (ada_lookup_name_info::verbatim_p):: New method.
11958
11959 2018-01-10  Pedro Alves  <palves@redhat.com>
11960
11961         PR gdb/22670
11962         * ada-lang.c (ada_collect_symbol_completion_matches): If the
11963         minsym's language is language_auto or language_cplus, pass down
11964         language_ada instead.
11965         * symtab.c (compare_symbol_name): Don't frob symbol language here.
11966
11967 2018-01-10  Pedro Alves  <palves@redhat.com>
11968
11969         PR gdb/22670
11970         * minsyms.c (linkage_name_str): New function.
11971         (iterate_over_minimal_symbols): Use it.
11972
11973 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
11974
11975         * NEWS: Document that 'info proc' now works on FreeBSD.
11976
11977 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
11978
11979         * configure.ac: Check for kinfo_getfile in libutil.
11980         * configure: Regenerate.
11981         * config.in: Regenerate.
11982         * fbsd-nat.c: Include "fbsd-tdep.h".
11983         (fbsd_fetch_cmdline): New.
11984         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
11985         rather than calling error.
11986         (fbsd_info_proc): New.
11987         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
11988         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
11989         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
11990
11991 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
11992
11993         * fbsd-nat.c (struct free_deleter): Remove.
11994         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
11995
11996 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
11997
11998         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
11999         NULL for an empty pathname.
12000
12001 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
12002
12003         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
12004         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
12005         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
12006         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
12007         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
12008         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
12009         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
12010         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
12011         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
12012         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
12013         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
12014         (fbsd_core_fetch_timeval, fbsd_print_sigset)
12015         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
12016         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
12017         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
12018
12019 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
12020
12021         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
12022         (gnu_xfer_auxv): New function.
12023         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
12024         TARGET_OBJECT_AUXV.
12025
12026 2018-01-08  Yao Qi  <yao.qi@linaro.org>
12027             Simon Marchi  <simon.marchi@ericsson.com>
12028
12029         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
12030         common/selftest.c.
12031         (COMMON_OBS): Remove selftest.o.
12032         * configure.ac: Append selftest-arch.c and common/selftest.c to
12033         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
12034         * configure: Re-generated.
12035         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
12036         GDB_SELF_TEST.
12037         (maintenance_info_selftests): Likewise.
12038
12039 2018-01-08  Xavier Roirand  <roirand@adacore.com>
12040
12041         * ada-valprint.c (val_print_packed_array_elements): Use
12042         proper number of elements when printing an array indexed
12043         by an enumeration type.
12044
12045 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
12046
12047         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
12048         (dw2_get_file_names_reader): Adjust.
12049         (lookup_dwo_signatured_type): Adjust.
12050         (lookup_dwp_signatured_type): Adjust.
12051         (lookup_signatured_type): Adjust.
12052         (create_type_unit_group): Adjust.
12053         (get_type_unit_group): Adjust.
12054         (process_psymtab_comp_unit_reader): Adjust.
12055         (build_type_psymtabs_reader): Adjust.
12056         (scan_partial_symbols): Adjust.
12057         (add_partial_symbol): Adjust.
12058         (add_partial_subprogram): Adjust.
12059         (peek_die_abbrev): Adjust.
12060         (fixup_go_packaging): Adjust.
12061         (process_imported_unit_die): Adjust.
12062         (dwarf2_compute_name): Adjust.
12063         (dwarf2_physname): Adjust.
12064         (read_import_statement): Adjust.
12065         (handle_DW_AT_stmt_list): Adjust.
12066         (read_file_scope): Adjust.
12067         (read_func_scope): Adjust.
12068         (read_lexical_block_scope): Adjust.
12069         (read_call_site_scope): Adjust.
12070         (read_variable): Adjust.
12071         (dwarf2_rnglists_process): Adjust.
12072         (dwarf2_ranges_process): Adjust.
12073         (dwarf2_ranges_read): Adjust.
12074         (dwarf2_get_pc_bounds): Adjust.
12075         (dwarf2_record_block_ranges): Adjust.
12076         (dwarf2_add_field): Adjust.
12077         (dwarf2_add_member_fn): Adjust.
12078         (read_structure_type): Adjust.
12079         (process_structure_scope): Adjust.
12080         (read_enumeration_type): Adjust.
12081         (read_array_type): Adjust.
12082         (mark_common_block_symbol_computed): Adjust.
12083         (read_common_block): Adjust.
12084         (read_namespace_type): Adjust.
12085         (read_namespace): Adjust.
12086         (read_module_type): Adjust.
12087         (read_tag_pointer_type): Adjust.
12088         (read_tag_ptr_to_member_type): Adjust.
12089         (read_tag_string_type): Adjust.
12090         (read_subroutine_type): Adjust.
12091         (read_typedef): Adjust.
12092         (read_base_type): Adjust.
12093         (attr_to_dynamic_prop): Adjust.
12094         (read_subrange_type): Adjust.
12095         (read_unspecified_type): Adjust.
12096         (dwarf2_read_abbrevs): Adjust.
12097         (load_partial_dies): Adjust.
12098         (read_partial_die): Adjust.
12099         (find_partial_die): Adjust.
12100         (guess_partial_die_structure_name): Adjust.
12101         (fixup_partial_die): Adjust.
12102         (read_attribute_value): Adjust.
12103         (read_addr_index): Adjust.
12104         (read_addr_index_from_leb128): Adjust.
12105         (read_str_index): Adjust.
12106         (dwarf2_string_attr): Adjust.
12107         (get_debug_line_section): Adjust.
12108         (dwarf_decode_line_header): Adjust.
12109         (lnp_state_machine::check_line_address): Adjust.
12110         (dwarf_decode_lines_1): Adjust.
12111         (dwarf_decode_lines): Adjust.
12112         (dwarf2_start_symtab): Adjust.
12113         (var_decode_location): Adjust.
12114         (new_symbol_full): Adjust.
12115         (dwarf2_const_value_data): Adjust.
12116         (dwarf2_const_value_attr): Adjust.
12117         (dwarf2_const_value): Adjust.
12118         (die_type): Adjust.
12119         (die_containing_type): Adjust.
12120         (build_error_marker_type): Adjust.
12121         (lookup_die_type): Adjust.
12122         (guess_full_die_structure_name): Adjust.
12123         (anonymous_struct_prefix): Adjust.
12124         (determine_prefix): Adjust.
12125         (dwarf2_name): Adjust.
12126         (follow_die_ref_or_sig): Adjust.
12127         (follow_die_offset): Adjust.
12128         (follow_die_ref): Adjust.
12129         (follow_die_sig_1): Adjust.
12130         (follow_die_sig): Adjust.
12131         (get_signatured_type): Adjust.
12132         (get_DW_AT_signature_type): Adjust.
12133         (decode_locdesc): Adjust.
12134         (dwarf_decode_macros): Adjust.
12135         (cu_debug_loc_section): Adjust.
12136         (fill_in_loclist_baton): Adjust.
12137         (dwarf2_symbol_mark_computed): Adjust.
12138         (init_one_comp_unit): Don't assign
12139         dwarf2_cu::dwarf2_per_objfile.
12140         (set_die_type): Adjust.
12141
12142 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
12143
12144         * dwarf2read.c (struct mapped_debug_names): Add constructor.
12145         <dwarf2_per_objfile>: New field.
12146         (dwarf2_per_objfile): Remove global.
12147         (get_dwarf2_per_objfile): New function.
12148         (set_dwarf2_per_objfile): New function.
12149         (dwarf2_build_psymtabs_hard): Change objfile parameter to
12150         dwarf2_per_objfile.
12151         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
12152         (read_abbrev_offset): Likewise.
12153         (read_indirect_string): Likewise.
12154         (read_indirect_line_string): Likewise.
12155         (read_indirect_string_at_offset): Likewise.
12156         (read_indirect_string_from_dwz): Likewise.
12157         (dwarf2_find_containing_comp_unit): Change objfile parameter to
12158         dwarf2_per_objfile.
12159         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
12160         (create_all_comp_units): Change objfile parameter to
12161         dwarf2_per_objfile.
12162         (create_all_type_units): Likewise.
12163         (process_queue): Add dwarf2_per_objfile parameter.
12164         (read_and_check_comp_unit_head): Likewise.
12165         (lookup_dwo_unit_in_dwp): Likewise.
12166         (get_dwp_file): Likewise.
12167         (process_cu_includes): Likewise.
12168         (struct free_dwo_file_cleanup_data): New struct.
12169         (dwarf2_has_info): Use get_dwarf2_per_objfile and
12170         set_dwarf2_per_objfile.
12171         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
12172         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
12173         context, adjust calls.
12174         (dw2_instantiate_symtab): Likewise.
12175         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
12176         (dw2_get_cu): Likewise.
12177         (create_cu_from_index_list): Change objfile parameter to
12178         dwarf2_per_objfile.
12179         (create_cus_from_index_list): Get dwarf2_per_objfile from
12180         context, adjust calls.
12181         (create_cus_from_index): Likewise.
12182         (create_signatured_type_table_from_index): Change objfile
12183         parameter to dwarf2_per_objfile.
12184         (create_signatured_type_table_from_debug_names): Change objfile
12185         parameter to dwarf2_per_objfile.
12186         (create_addrmap_from_index): Likewise.
12187         (create_addrmap_from_aranges): Likewise.
12188         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
12189         (dw2_setup): Remove.
12190         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
12191         context.
12192         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
12193         get_dwarf2_per_objfile.
12194         (dw2_forget_cached_source_info): Likewise.
12195         (dw2_map_symtabs_matching_filename): Likewise.
12196         (struct dw2_symtab_iterator) <index>: Remove.
12197         <dwarf2_per_objfile>: New field.
12198         (dw2_symtab_iter_init): Replace index parameter with
12199         dwarf2_per_objfile.
12200         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
12201         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
12202         (dw2_print_stats): Likewise.
12203         (dw2_dump): Likewise.
12204         (dw2_expand_symtabs_for_function): Likewise.
12205         (dw2_expand_all_symtabs): Likewise.
12206         (dw2_expand_symtabs_with_fullname): Likewise.
12207         (dw2_expand_marked_cus): Replace index and objfile parameters
12208         with dwarf2_per_objfile.
12209         (dw_expand_symtabs_matching_file_matcher): Add
12210         dwarf2_per_objfile parameter and adjust calls.
12211         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
12212         adjust calls.
12213         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
12214         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
12215         adjust calls.
12216         (create_cus_from_debug_names_list): Replace objfile parameter
12217         with dwarf2_per_objfile and adjust calls.
12218         (create_cus_from_debug_names): Likewise.
12219         (dwarf2_read_debug_names): Likewise.
12220         (mapped_debug_names::namei_to_name): Adjust call.
12221         (dw2_debug_names_iterator::next): Likewise.
12222         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
12223         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
12224         (dw2_debug_names_dump): Likewise.
12225         (dw2_debug_names_expand_symtabs_for_function): Likewise.
12226         (dw2_debug_names_expand_symtabs_matching): Likewise.
12227         (dwarf2_initialize_objfile): Likewise.
12228         (dwarf2_build_psymtabs): Likewise.
12229         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
12230         this_cu.
12231         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
12232         (read_and_check_comp_unit_head): Likewise.
12233         (read_abbrev_offset): Likewise.
12234         (create_debug_type_hash_table): Likewise.
12235         (create_debug_types_hash_table): Likewise.
12236         (create_all_type_units): Replace objfile parameter with
12237         dwarf2_per_objfile.
12238         (add_type_unit): Add dwarf2_per_objfile parameter.
12239         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
12240         with dwarf2_per_objfile.
12241         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
12242         (lookup_dwp_signatured_type): Likewise.
12243         (lookup_signatured_type): Likewise.
12244         (read_cutu_die_from_dwo): Likewise.
12245         (init_tu_and_read_dwo_dies): Likewise.
12246         (init_cutu_and_read_dies): Likewise.
12247         (init_cutu_and_read_dies_no_follow): Likewise.
12248         (allocate_type_unit_groups_table): Add objfile parameter.
12249         (create_type_unit_group): Use dwarf2_per_objfile from cu.
12250         (get_type_unit_group): Likewise.
12251         (process_psymtab_comp_unit): Update call.
12252         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
12253         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
12254         (print_tu_stats): Likewise.
12255         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
12256         in void* parameter.
12257         (build_type_psymtabs): Change objfile parameter to
12258         dwarf2_per_objfile.
12259         (process_skeletonless_type_unit): Use dwarf2_per_objfile
12260         passed in void* parameter.
12261         (process_skeletonless_type_units): Change objfile parameter to
12262         dwarf2_per_objfile.
12263         (set_partial_user): Likewise.
12264         (dwarf2_build_psymtabs_hard): Likewise.
12265         (read_comp_units_from_section): Likewise.
12266         (create_all_comp_units): Likewise.
12267         (scan_partial_symbols): Update calls.
12268         (add_partial_symbol): Likewise.
12269         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
12270         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
12271         (process_queue): Add dwarf2_per_objfile parameter.
12272         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
12273         (compute_compunit_symtab_includes): Likewise.
12274         (process_cu_includes): Add dwarf2_per_objfile parameter.
12275         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
12276         (process_full_type_unit): Likewise.
12277         (process_imported_unit_die): Update call.
12278         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
12279         (read_file_scope): Likewise.
12280         (allocate_dwo_file_hash_table): Add objfile parameter.
12281         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
12282         (create_cus_hash_table): Likewise.
12283         (create_dwp_hash_table): Likewise.
12284         (create_dwo_unit_in_dwp_v1): Likewise.
12285         (create_dwp_v2_section): Likewise.
12286         (create_dwo_unit_in_dwp_v2): Likewise.
12287         (lookup_dwo_unit_in_dwp): Likewise.
12288         (try_open_dwop_file): Likewise.
12289         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
12290         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
12291         cleanup to include a reference to dwarf2_per_objfile.
12292         (open_dwp_file): Add dwarf2_per_objfile parameter.
12293         (open_and_init_dwp_file): Likewise.
12294         (get_dwp_file): Likewise.
12295         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
12296         (queue_and_load_all_dwo_tus): Update call.
12297         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
12298         data.
12299         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
12300         (dwarf2_ranges_process): Likewise.
12301         (dwarf2_get_pc_bounds): Likewise.
12302         (mark_common_block_symbol_computed): Likewise.
12303         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
12304         (dwarf2_read_abbrevs): Update call.
12305         (read_partial_die): Use dwarf2_per_objfile from cu.
12306         (find_partial_die): Likewise.
12307         (fixup_partial_die): Likewise.
12308         (read_attribute_value): Likewise.
12309         (read_indirect_string_at_offset_from): Add objfile parameter.
12310         (read_indirect_string_at_offset): Add dwarf2_per_objfile
12311         parameter.
12312         (read_indirect_string_from_dwz): Add objfile parameter.
12313         (read_indirect_string): Add objfile parameter.
12314         (read_addr_index_1): Add dwarf2_per_objfile parameter.
12315         (read_addr_index): Use dwarf2_per_objfile from cu.
12316         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
12317         call dw2_setup.
12318         (read_str_index): Use dwarf2_per_objfile from cu.
12319         (get_debug_line_section): Likewise.
12320         (read_formatted_entries): Add dwarf2_per_objfile parameter.
12321         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
12322         (new_symbol_full): Use dwarf2_per_objfile from cu.
12323         (build_error_marker_type): Likewise.
12324         (lookup_die_type): Likewise.
12325         (determine_prefix): Likewise.
12326         (follow_die_offset): Likewise.
12327         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
12328         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
12329         (dwarf2_fetch_die_type_sect_off): Likewise.
12330         (dwarf2_get_die_type): Likewise.
12331         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
12332         (get_signatured_type): Likewise.
12333         (get_DW_AT_signature_type): Likewise.
12334         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
12335         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
12336         (cu_debug_loc_section): Likewise.
12337         (fill_in_loclist_baton): Likewise.
12338         (dwarf2_symbol_mark_computed): Likewise.
12339         (dwarf2_find_containing_comp_unit): Change objfile parameter to
12340         dwarf2_per_objfile.
12341         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
12342         parameter.
12343         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
12344         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
12345         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
12346         (set_die_type): Use dwarf2_free_objfile from cu.
12347         (get_die_type_at_offset): Likewise.
12348         (dwarf2_per_objfile_free): Don't assign global variable.
12349         (debug_names) <constructor>: Add dwarf2_per_objfile
12350         parameter, update m_debugstrlookup construction.
12351         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
12352         parameter.
12353         <m_dwarf2_per_objfile>: New field.
12354         <lookup>: Use m_dwarf2_per_objfile.
12355         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
12356         (psyms_seen_size): Likewise.
12357         (write_gdbindex): Replace objfile parameter with
12358         dwarf2_per_objfile.
12359         (write_debug_names): Likewise.
12360         (write_psymtabs_to_index): Likewise.
12361         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
12362         calls.
12363
12364 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
12365
12366         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
12367         <dwarf2_per_objfile>: New field.
12368         (struct dwarf2_per_cu_data) <objfile>: Remove.
12369         <dwarf2_per_objfile>: New field.
12370         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
12371         of objfile.
12372         (create_signatured_type_table_from_index): Likewise.
12373         (create_debug_type_hash_table): Likewise.
12374         (fill_in_sig_entry_from_dwo_entry): Likewise.
12375         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
12376         (create_type_unit_group): Assign dwarf2_per_objfile instead of
12377         objfile.
12378         (create_partial_symtab): Access objfile through
12379         dwarf2_per_objfile.
12380         (process_psymtab_comp_unit_reader): Likewise.
12381         (read_comp_units_from_section): Likewise.
12382         (scan_partial_symbols): Likewise.
12383         (add_partial_symbol): Likewise.
12384         (add_partial_subprogram): Likewise.
12385         (peek_die_abbrev): Likewise.
12386         (fixup_go_packaging): Likewise.
12387         (process_full_comp_unit): Likewise.
12388         (process_full_type_unit): Likewise.
12389         (process_imported_unit_die): Likewise.
12390         (dwarf2_compute_name): Likewise.
12391         (dwarf2_physname): Likewise.
12392         (read_import_statement): Likewise.
12393         (create_cus_hash_table): Assign dwarf2_physname instead of
12394         objfile.
12395         (read_func_scope): Access objfile through dwarf2_per_objfile.
12396         (read_lexical_block_scope): Likewise.
12397         (read_call_site_scope): Likewise.
12398         (read_variable): Likewise.
12399         (dwarf2_rnglists_process): Likewise.
12400         (dwarf2_ranges_process): Likewise.
12401         (dwarf2_ranges_read): Likewise.
12402         (dwarf2_record_block_ranges): Likewise.
12403         (dwarf2_add_field): Likewise.
12404         (dwarf2_add_member_fn): Likewise.
12405         (read_structure_type): Likewise.
12406         (process_structure_scope): Likewise.
12407         (read_enumeration_type): Likewise.
12408         (read_array_type): Likewise.
12409         (read_common_block): Likewise.
12410         (read_namespace_type): Likewise.
12411         (read_namespace): Likewise.
12412         (read_module_type): Likewise.
12413         (read_tag_pointer_type): Likewise.
12414         (read_tag_ptr_to_member_type): Likewise.
12415         (read_tag_string_type): Likewise.
12416         (read_subroutine_type): Likewise.
12417         (read_typedef): Likewise.
12418         (read_base_type): Likewise.
12419         (attr_to_dynamic_prop): Likewise.
12420         (read_subrange_type): Likewise.
12421         (read_unspecified_type): Likewise.
12422         (load_partial_dies): Likewise.
12423         (read_partial_die): Likewise.
12424         (find_partial_die): Likewise.
12425         (guess_partial_die_structure_name): Likewise.
12426         (fixup_partial_die): Likewise.
12427         (read_attribute_value): Likewise.
12428         (read_addr_index_from_leb128): Likewise.
12429         (dwarf2_read_addr_index): Likewise.
12430         (dwarf2_string_attr): Likewise.
12431         (lnp_state_machine::check_line_address): Likewise.
12432         (dwarf_decode_lines_1): Likewise.
12433         (dwarf_decode_lines): Likewise.
12434         (dwarf2_start_symtab): Likewise.
12435         (var_decode_location): Likewise.
12436         (new_symbol_full): Likewise.
12437         (dwarf2_const_value_data): Likewise.
12438         (dwarf2_const_value_attr): Likewise.
12439         (dwarf2_const_value): Likewise.
12440         (die_type): Likewise.
12441         (die_containing_type): Likewise.
12442         (lookup_die_type): Likewise.
12443         (guess_full_die_structure_name): Likewise.
12444         (anonymous_struct_prefix): Likewise.
12445         (dwarf2_name): Likewise.
12446         (follow_die_ref_or_sig): Likewise.
12447         (follow_die_offset): Likewise.
12448         (follow_die_ref): Likewise.
12449         (dwarf2_fetch_die_loc_sect_off): Likewise.
12450         (dwarf2_fetch_constant_bytes): Likewise.
12451         (dwarf2_fetch_die_type_sect_off): Likewise.
12452         (dwarf2_get_die_type): Likewise.
12453         (follow_die_sig): Likewise.
12454         (decode_locdesc): Likewise.
12455         (dwarf2_per_cu_objfile): Likewise.
12456         (dwarf2_per_cu_text_offset): Likewise.
12457         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
12458         objfile.
12459         (set_die_type): Access objfile through
12460         dwarf2_per_objfile.
12461
12462 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
12463
12464         * valprint.c (converted_character_d): Remove typedef.
12465         (DEF_VEC_O (converted_character_d)): Remove.
12466         (count_next_character): Use std::vector.
12467         (print_converted_chars_to_obstack): Likewise.
12468         (generic_printstr): Likewise.
12469
12470 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
12471
12472         * xml-support.h (struct gdb_xml_value): Add constructor.
12473         <value>: Change type to unique_xmalloc_ptr.
12474         (gdb_xml_value_s): Remove typedef.
12475         (DEF_VEC_O (gdb_xml_value_s)): Remove.
12476         (gdb_xml_element_start_handler): Change parameter type to
12477         std::vector.
12478         (xml_find_attribute): Likewise.
12479         * xml-support.c (xml_find_attribute): Change parameter type to
12480         std::vector and adjust.
12481         (gdb_xml_values_cleanup): Remove.
12482         (gdb_xml_parser::start_element): Adjust to std::vector.
12483         (xinclude_start_include): Change paraeter type to std::vector
12484         and adjust.
12485         * btrace.c (check_xml_btrace_version): Likewise.
12486         (parse_xml_btrace_block): Likewise.
12487         (parse_xml_btrace_pt_config_cpu): Likewise.
12488         (parse_xml_btrace_pt): Likewise.
12489         (parse_xml_btrace_conf_bts): Likewise.
12490         (parse_xml_btrace_conf_pt): Likewise.
12491         * memory-map.c (memory_map_start_memory): Likewise.
12492         (memory_map_start_property): Likewise.
12493         * osdata.c (osdata_start_osdata): Likewise.
12494         (osdata_start_item): Likewise.
12495         (osdata_start_column): Likewise.
12496         * remote.c (start_thread): Likewise.
12497         * solib-aix.c (library_list_start_library): Likewise.
12498         (library_list_start_list): Likewise.
12499         * solib-svr4.c (library_list_start_library): Likewise.
12500         (svr4_library_list_start_list): Likewise.
12501         * solib-target.c (library_list_start_segment): Likewise.
12502         (library_list_start_section): Likewise.
12503         (library_list_start_library): Likewise.
12504         (library_list_start_list): Likewise.
12505         * tracepoint.c (traceframe_info_start_memory): Likewise.
12506         (traceframe_info_start_tvar): Likewise.
12507         * xml-syscall.c (syscall_start_syscall): Likewise.
12508         * xml-tdesc.c (tdesc_start_target): Likewise.
12509         (tdesc_start_feature): Likewise.
12510         (tdesc_start_reg): Likewise.
12511         (tdesc_start_union): Likewise.
12512         (tdesc_start_struct): Likewise.
12513         (tdesc_start_flags): Likewise.
12514         (tdesc_start_enum): Likewise.
12515         (tdesc_start_field): Likewise.
12516         (tdesc_start_enum_value): Likewise.
12517         (tdesc_start_vector): Likewise.
12518
12519 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
12520
12521         * extension.h (struct xmethod_worker) <clone>: Remove.
12522         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
12523         Remove.
12524         (python_xmethod_worker::clone): Remove.
12525         * valops.c (find_overload_match): Use std::move instead of
12526         clone.
12527
12528 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
12529
12530         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
12531         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
12532         <free_xmethod_worker_data>: Remove.
12533         <get_matching_xmethod_workers>: Chance VEC to std::vector.
12534         <get_xmethod_arg_types>: Remove.
12535         <get_xmethod_result_type>: Remove.
12536         <invoke_xmethod>: Remove.
12537         * extension.c (new_xmethod_worker): Remove.
12538         (clone_xmethod_worker): Remove.
12539         (get_matching_xmethod_workers): Return void, pass std::vector by
12540         pointer.
12541         (get_xmethod_arg_types): Rename to...
12542         (xmethod_worker::get_arg_types): ... this, and adjust.
12543         (get_xmethod_result_type): Rename to...
12544         (xmethod_worker::get_result_type): ... this, and adjust.
12545         (invoke_xmethod): Remove.
12546         (free_xmethod_worker): Remove.
12547         (free_xmethod_worker_vec): Remove.
12548         * extension.h (enum ext_lang_rc): Move here from
12549         extension-priv.h.
12550         (struct xmethod_worker): Add constructor and destructor.
12551         <data>: Remove.
12552         <value>: Remove.
12553         <invoke, clone, do_get_result_type, do_get_arg_types>: New
12554         virtual pure methods.
12555         <get_arg_types, get_result_type>: New methods.
12556         (xmethod_worker_ptr): Remove typedef.
12557         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
12558         (xmethod_worker_vec): Remove typedef.
12559         (xmethod_worker_up): New typedef.
12560         (invoke_xmethod): Remove.
12561         (clone_xmethod_worker): Remove.
12562         (free_xmethod_worker): Remove.
12563         (free_xmethod_worker_vec): Remove.
12564         (get_xmethod_arg_types): Remove.
12565         (get_xmethod_result_type): Remove.
12566         * valops.c (find_method_list): Use std::vector, don't use
12567         intermediate vector.
12568         (value_find_oload_method_list): Use std::vector.
12569         (find_overload_match): Use std::vector.
12570         (find_oload_champ): Use std::vector.
12571         * value.c (value_free): Use operator delete.
12572         (value_of_xmethod): Rename to...
12573         (value_from_xmethod): ... this.  Don't assign
12574         xmethod_worker::value, take rvalue-reference.
12575         (result_type_of_xmethod): Adjust.
12576         (call_xmethod): Adjust.
12577         * value.h: Include extension.h.
12578         (struct xmethod_worker): Don't forward-declare.
12579         (value_of_xmethod): Rename to...
12580         (value_from_xmethod): ... this, take rvalue-reference.
12581         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
12582         (struct python_xmethod_worker): ... this, add constructor and
12583         destructor.
12584         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
12585         (gdbpy_free_xmethod_worker_data): Rename to...
12586         (python_xmethod_worker::~python_xmethod_worker): ... this and
12587         adjust.
12588         (gdbpy_clone_xmethod_worker_data): Rename to...
12589         (python_xmethod_worker::clone): ... this and adjust.
12590         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
12591         temporary vector.
12592         (gdbpy_get_xmethod_arg_types): Rename to...
12593         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
12594         (gdbpy_get_xmethod_result_type): Rename to...
12595         (python_xmethod_worker::do_get_result_type): ... this and
12596         adjust.
12597         (gdbpy_invoke_xmethod): Rename to...
12598         (python_xmethod_worker::invoke): ... this and adjust.
12599         (new_python_xmethod_worker): Rename to...
12600         (python_xmethod_worker::python_xmethod_worker): ... this and
12601         adjust.
12602         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
12603         Remove.
12604         (gdbpy_free_xmethod_worker_data): Remove.
12605         (gdbpy_get_matching_xmethod_workers): Use std::vector.
12606         (gdbpy_get_xmethod_arg_types): Remove.
12607         (gdbpy_get_xmethod_result_type): Remove.
12608         (gdbpy_invoke_xmethod): Remove.
12609         * python/python.c (python_extension_ops): Remove obsolete
12610         callbacks.
12611
12612 2018-01-05  Pedro Alves  <palves@redhat.com>
12613
12614         PR gdb/18653
12615         * common/signals-state-save-restore.c
12616         (save_original_signals_state): New parameter 'quiet'.  Warn if we
12617         find a custom handler preinstalled, instead of internal erroring.
12618         But only warn if !quiet.
12619         * common/signals-state-save-restore.h
12620         (save_original_signals_state): New parameter 'quiet'.
12621         * main.c (captured_main_1): Move save_original_signals_state call
12622         after option handling, and pass QUIET.
12623
12624 2018-01-05  Pedro Alves  <palves@redhat.com>
12625
12626         * spu-tdep.c (spu_catch_start): Pass
12627         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
12628
12629 2018-01-05  Pedro Alves  <palves@redhat.com>
12630
12631         PR gdb/22670
12632         * ada-lang.c (literal_symbol_name_matcher): New function.
12633         (ada_get_symbol_name_matcher): Use it for
12634         symbol_name_match_type::SEARCH_NAME.
12635         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
12636         it down instead of assuming symbol_name_match_type::FULL.
12637         * block.h (block_lookup_symbol): New parameter 'match_type'.
12638         * c-valprint.c (print_unpacked_pointer): Use
12639         lookup_symbol_search_name instead of lookup_symbol.
12640         * compile/compile-object-load.c (get_out_value_type): Pass down
12641         symbol_name_match_type::SEARCH_NAME.
12642         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
12643         symbol_name_match_type::FULL.
12644         * cp-support.c (cp_get_symbol_name_matcher): Handle
12645         symbol_name_match_type::SEARCH_NAME.
12646         * infrun.c (insert_exception_resume_breakpoint): Use
12647         lookup_symbol_search_name.
12648         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
12649         * psymtab.c (maintenance_check_psymtabs): Use
12650         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
12651         * stack.c (print_frame_args): Use lookup_symbol_search_name and
12652         SYMBOL_SEARCH_NAME.
12653         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
12654         if symbol_name_match_type::SEARCH_NAME.
12655         (lookup_symbol_in_language): Pass down
12656         symbol_name_match_type::FULL.
12657         (lookup_symbol_search_name): New.
12658         (lookup_language_this): Pass down
12659         symbol_name_match_type::SEARCH_NAME.
12660         (lookup_symbol_aux, lookup_local_symbol): New parameter
12661         'match_type'.  Pass it down.
12662         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
12663         (lookup_symbol_search_name): New declaration.
12664         (lookup_symbol_in_block): New 'match_type' parameter.
12665
12666 2018-01-05  Pedro Alves  <palves@redhat.com>
12667
12668         PR gdb/22670
12669         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
12670         ada_lookup_symbol.
12671         (ada_lookup_symbol): Reimplement in terms of
12672         ada_lookup_symbol_list, bits factored out from
12673         ada_lookup_encoded_symbol.
12674
12675 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
12676
12677         * ada-exp.y (write_object_renaming): When subscripting an array
12678         using a symbol as the index, pass the block in call to
12679         ada_lookup_encoded_symbol when looking that symbol up.
12680
12681 2018-01-05  Jerome Guitton  <guitton@adacore.com>
12682
12683         * ada-lang.c (ada_array_length): Use ada_index_type instead of
12684         TYPE_INDEX_TYPE.
12685
12686 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
12687
12688         * ada-lang.c (ada_to_fixed_value_create): Add handling of
12689         the case where VALUE_LVAL (val0) is not lval_memory.
12690
12691 2018-01-05  Xavier Roirand  <roirand@adacore.com>
12692
12693         * ada-valprint.c (print_optional_low_bound): Handle
12694         character-indexed array printing like boolean-indexed array
12695         printing.
12696
12697 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
12698
12699         * NEWS: Create a new section for the next release branch.
12700         Rename the section of the current branch, now that it has
12701         been cut.
12702
12703 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
12704
12705         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
12706         * version.in: Bump version to 8.1.50.DATE-git.
12707
12708 2018-01-03  Xavier Roirand  <roirand@adacore.com>
12709
12710         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
12711         Add field.
12712         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
12713         Add field.
12714         (default_exception_support_info) <catch_handlers_sym>: Add field.
12715         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
12716         (ada_exception_name_addr_1): Add "catch handlers" handling.
12717         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
12718         Update all callers.
12719         (create_excep_cond_exprs) <ex>: Add parameter.
12720         (re_set_exception): Update create_excep_cond_exprs call.
12721         (print_it_exception, print_one_exception, print_mention_exception)
12722         (print_recreate_exception): Add "catch handler" handling.
12723         (allocate_location_catch_handlers, re_set_catch_handlers)
12724         (check_status_catch_handlers, print_it_catch_handlers)
12725         (print_one_catch_handlers, print_mention_catch_handlers)
12726         (print_recreate_catch_handlers): New function.
12727         (catch_handlers_breakpoint_ops): New variable.
12728         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
12729         Add parameter.  Add "catch handler" handling.
12730         (ada_exception_sym_name, ada_exception_breakpoint_ops):
12731         Add "catch handler" handling.
12732         (ada_exception_catchpoint_cond_string): Add "catch handler"
12733         handling.
12734         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
12735         call.
12736         (catch_ada_handlers_command): New function.
12737         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
12738         operations structure.
12739         (_initialize_ada_language): Add "catch handlers" command entry.
12740         * NEWS: Document "catch handlers" feature.
12741
12742 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
12743
12744         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
12745         account when creating the array type of the slice.
12746         (ada_value_slice): Likewise.
12747
12748 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
12749
12750         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
12751         New enum value.
12752         (create_array_type_with_stride): Add byte_stride_prop parameter.
12753         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
12754         New parameter.  Update all callers in this file.
12755         (array_type_has_dynamic_stride): New function.
12756         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
12757         of arrays with dynamic byte strides.
12758         * dwarf2read.c (read_array_type): Add support for dynamic
12759         DW_AT_byte_stride attributes.
12760
12761 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
12762
12763         * dwarf2read.c (read_unspecified_type): Treat
12764         DW_TAG_enumeration_type DIEs from Ada units as stubs.
12765
12766 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
12767
12768         Update copyright year range in all GDB files.
12769
12770 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
12771
12772         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
12773         and gdb/testsuite/gdb.base/step-line.c.
12774
12775 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
12776
12777         * copyright.py (main): Dump the contents of
12778         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
12779         even if BY_HAND is empty.
12780
12781 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
12782
12783         * top.c (print_gdb_version): Update Copyright year in version
12784         message.
12785
12786 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
12787
12788         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
12789
12790 For older changes see ChangeLog-2017.
12791 \f
12792 Local Variables:
12793 mode: change-log
12794 left-margin: 8
12795 fill-column: 74
12796 version-control: never
12797 coding: utf-8
12798 End: