Remove unused tui_win_element::highlight
[external/binutils.git] / gdb / ChangeLog
1 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2
3         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
4         * tui/tui-data.c (init_content_element): Don't initialize it.
5
6 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
7
8         * tui/tui-data.h (struct tui_win_info)
9         <detail::opaque>: Remove.
10         * tui/tui-data.c (init_win_info): Remove assignment.
11
12 2018-09-05  Tom Tromey  <tom@tromey.com>
13
14         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
15         -Wformat-nonliteral.
16         * target-float.c (host_float_ops<T>::to_string)
17         (host_float_ops<T>::from_string): Use
18         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
19         * configure: Rebuild.
20
21 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
22
23         * printcmd.c (printf_c_string): Use
24         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
25         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
26
27 2018-09-05  Tom Tromey  <tom@tromey.com>
28
29         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
30
31 2018-09-05  Tom de Vries  <tdevries@suse.de>
32
33         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
34         with resolve_abstract_p == true.
35         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
36         defaulting to false. Propagate resolve_abstract_p to
37         dwarf2_fetch_die_loc_sect_off.
38         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
39         parameter, defaulting to false.
40         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
41         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
42         parameter.
43         * dwarf2read.h (struct die_info): Forward-declare.
44         (die_info_ptr): New typedef.
45         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
46
47 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
48
49         GDB 8.2 released.
50
51 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
52             Pedro Alves  <palves@redhat.com>
53
54         * gnulib/Makefile.in (aclocal_m4_deps): Move to
55         "aclocal-m4-deps.mk".  Include file here.
56         $(srcdir)/aclocal.m4: Add "configure.ac".
57         * gnulib/aclocal-m4-deps.mk: New file.
58         * gnulib/update-gnulib.sh: Automatically update
59         "aclocal-m4-deps.mk".
60
61 2018-09-04  Tom Tromey  <tom@tromey.com>
62
63         * configure: Rebuild.
64         * configure.ac: Remove multi-ice code.
65
66 2018-09-04  Tom Tromey  <tom@tromey.com>
67
68         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
69         (ada-exp.o): Update.
70
71 2018-09-04  Tom Tromey  <tom@tromey.com>
72
73         * Makefile.in (printcmd.o, target-float.o): Remove.
74         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
75
76 2018-09-04  Tom Tromey  <tom@tromey.com>
77
78         * gnulib/Makefile.in: Remove obsolete comment.
79         * Makefile.in: Remove obsolete comment.
80
81 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
82
83         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
84         line with '+'.
85
86 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
87
88         * riscv-tdep.c: Add 'prologue-value.h' include.
89         (struct riscv_unwind_cache): New struct.
90         (riscv_debug_unwinder): New global.
91         (riscv_scan_prologue): Update arguments, capture register details
92         from prologue scan.
93         (riscv_skip_prologue): Reformat arguments line, move end of
94         prologue calculation into riscv_scan_prologue.
95         (riscv_frame_cache): Update return type, create
96         riscv_unwind_cache, scan the prologue, and fill in remaining cache
97         details.
98         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
99         (riscv_frame_prev_register): Use the trad_frame within the
100         riscv_unwind_cache.
101         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
102         flag.
103
104 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
105
106         * trad-frame.h (trad_frame_set_realreg): Declare.
107         (trad_frame_set_addr): Declare.
108         * trad-frame.c (trad_frame_set_realreg): Define new function.
109         (trad_frame_set_addr): Define new function.
110         (trad_frame_set_reg_realreg): Use new function.
111         (trad_frame_set_reg_addr): Use new function.
112
113 2018-09-01  Keith Seitz  <keiths@redhat.com>
114
115         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
116         pulongest instead of "%lld".
117         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
118         ATTRIBUTE_UNUSED.
119
120 2018-08-31  Tom Tromey  <tom@tromey.com>
121
122         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
123         variant part type.
124
125 2018-08-31  Pedro Alves  <palves@redhat.com>
126
127         * gdbarch.h: Regenerate.
128
129 2018-08-31  Pedro Alves  <palves@redhat.com>
130
131         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
132         * target.h (Hardware watchpoint interfaces): Describe
133         continuable/steppable/non-steppable watchpoints.
134         * gdbarch.h, gdbarch.c: Regenerate.
135
136 2018-08-31  Pedro Alves  <palves@redhat.com>
137
138         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
139         Delete.
140         * s390-linux-nat.c
141         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
142         * target.h (target_ops::have_continuable_watchpoint): Delete.
143         (target_have_continuable_watchpoint): Delete.
144         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
145         * target-delegates.c: Regenerate.
146
147 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
148
149         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
150         the files present in "gnulib/import/m4/".
151
152 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
153
154         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
155         c.sw, c.swsp, and c.sdsp.
156
157 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
158
159         * riscv-tdep.c (struct riscv_inferior_data): Delete.
160         (riscv_read_misa_reg): Don't cache value read into inferior data.
161         (riscv_new_inferior_data): Delete.
162         (riscv_inferior_data_cleanup): Delete.
163         (riscv_inferior_data): Delete.
164         (riscv_invalidate_inferior_data): Delete.
165         (_initialize_riscv_tdep): Remove initialisation of inferior data.
166
167 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
168
169         * compile/compile-cplus-types.c
170         (compile_cplus_instance::leave_scope): Take the address of scope
171         object.
172         (compile_cplus_instance::convert_qualified_base): Compare quals
173         to 0.
174
175 2018-08-30  Keith Seitz  <keiths@redhat.com>
176
177         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
178         Use "%s" and host_address_to_string instead of "%p" in printf.
179
180 2018-08-29  Keith Seitz  <keiths@redhat.com>
181
182         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
183         and compile-cplus-types.c.
184         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
185         * c-lang.c (cplus_language_defn): Set C++ compile functions.
186         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
187         Declare.
188         * compile/compile-c-support.c: Include compile-cplus.h.
189         (load_libcompile): Templatize.
190         (get_compile_context): "New" function.
191         (c_get_compile_context): Use get_compile_context.
192         (cplus_get_compile_context): New function.
193         (cplus_push_user_expression, cplus_pop_user_expression)
194         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
195         (cplus_compute_program): Define new structs/functions.
196         * compile/compile-cplus-symmbols.c: New file.
197         * compile/compile-cplus-types.c: New file.
198         * compile/compile-cplus.h: New file.
199         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
200         Declare.
201         * compile/compile-object-load.c (get_out_value_type): Use
202         strncmp_iw when comparing symbol names.
203         (compile_object_load): Add mst_bss and mst_data.
204         * compile/compile.c (_initialize_compile): Remove
205         -Wno-implicit-function-declaration from `compile_args'.
206         * compile/gcc-cp-plugin.h: New file.
207         * NEWS: Mention C++ compile support and new debug options.
208
209 2018-08-29  Keith Seitz  <keiths@redhat.com>
210
211         * linespec.c (collect_info::add_symbol): Make virtual.
212         (struct symbol_searcher_collect_info): New struct.
213         (symbol_searcher::find_all_symbols): New method.
214         * symtab.h (class symbol_searcher): New class.
215
216 2018-08-29  Keith Seitz  <keiths@redhat.com>
217
218         * linespec.c (struct linespec) <function_symbols, label_symbols>:
219         Change to vector of block_symbol.  Update all users.
220         (struct collect_info) <symbols>: Likewise.
221         (collect_info::add_symbol): Take block_symbol as argument.
222         Update all callers.
223         (decode_compound_collector) <m_symbols>: Change type to vector
224         of block_symbol.  Update all users.
225         (decode_compound_collector::operator ()): Change parameter type
226         to block_symbol.
227         (find_method, find_function_symbols, find_linespec_symbols)
228         (find_label_symbols_in_block, find_label_symbols): Change symbol
229         vectors to block_symbol vectors.
230         * symtab.h (symbol_found_callback_ftype): Change parameter type to
231         block_symbol.
232
233 2018-08-29  Keith Seitz  <keiths@redhat.com>
234
235         * linespec.c (symbolp): Remove typedef and VEC definitions.
236         (bound_minimal_symbol_d): Likewise.
237
238 2018-08-29  Keith Seitz  <keiths@redhat.com>
239
240         * linespec.c (decode_compound_collector::decode_compound_collector):
241         Remove initialization for `m_symtabs'.
242         (decode_compound_collector::release_symbols): Change return type
243         to std::vector.  Update all callers.
244         (class decode_compound_collector) <m_symbols>: Change type to
245         std::vector.
246         (lookup_prefix_sym): Change return type to std::vector.  Update all
247         callers.
248         (compare_symbols): Remove.
249         (std_compare_symbols): Rename to `compare_symbols'.
250         (find_method): Change `sym_classes' parameter to std::vector.
251         Update all callers.  Use std::sort to sort sym_classes.
252         (find_linespec_symbols): Remove cleanup.
253
254 2018-08-29  Keith Seitz  <keiths@redhat.com>
255
256         * linespec.c (struct linespec) <minimal_symbols>: Change type to
257         std::vector.  Update all users.
258         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
259         (struct collect_info) <minimal_symbols>: Likewise.
260         (compare_msymbols): Return bool.  Change parameters to const
261         bound_minimal_symbol references.
262         (find_method, find_function_symbols, find_linespec_symbols): Change
263         `minsyms' parameter to std::vector.  Update all callers.
264
265 2018-08-29  Keith Seitz  <keiths@redhat.com>
266
267         * linespec.c (struct linespec) <label_symbols>: Change type to
268         std::vector.  Update all users.
269         (find_label_symbols_in_block): Change `result' parameter to
270         std::vector.  Update all callers.
271         (find_label_symbols): Return std::vector.  Update all callers.
272
273 2018-08-29  Keith Seitz  <keiths@redhat.com>
274
275         * linespec.c (struct linespec) <function_symbols>: Change type to
276         std::vector.  Update all users.
277         (struct collect_info) <function_symbols>: Likewise.
278         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
279         (std_compare_symbols): New function.
280         (find_method, find_function_symbols, find_linespec_symbols)
281         (find_label_symbols_in_block): Change `symbols' parameter to
282         std::vector.  Update all callers.
283         (find_label_symbols): Likewise for `function_symbols' and
284         `label_funcs_ret'.
285
286 2018-08-29  Keith Seitz  <keiths@redhat.com>
287
288         * linespec.c (symtab_vector_up): Define.
289         (struct linespec) <file_symtabs>: Change type to std::vector *.
290         Update all uses.
291         (struct collect_info) <file_symtabs>: Likewise.
292         (collect_symtabs_from_filename): Return symtab_vector_up.
293         Update all callers.
294         (decode_objc): Remove cleanup.
295         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
296         (symtab_collector::release_symtabs): Return symtab_vector_up.
297         Update all callers.
298         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
299         Update all users.
300         (collect_symtabs_from_filename, symtabs_from_filename): Return
301         symtab_vector_up.  Update all callers.
302
303 2018-08-29  Tom Tromey  <tom@tromey.com>
304
305         * csky-tdep.c (csky_analyze_prologue): Use
306         core_addr_to_string_nz.
307
308 2018-08-29  Tom Tromey  <tom@tromey.com>
309
310         * windows-nat.c (struct xlate_exception) <them>: Change type to
311         DWORD.
312         (xlate): Fix formatting.  Remove last entry.
313         (struct xlate_exception, xlate): Comment out.
314         (windows_nat_target::resume): Use ranged for.
315
316 2018-08-29  Jim Wilson  <jimw@sifive.com>
317
318         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
319         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
320         of NT_PRFPREG.
321         (riscv_linux_nat_target::store_registers): Likewise.
322
323 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
324
325         PR gdb/23555
326         PR gdb/23558
327         * gnulib/aclocal.m4: Regenerate.
328         * gnulib/config.in: Regenerate.
329         * gnulib/configure: Regenerate.
330         * gnulib/import/Makefile.am: Update.
331         * gnulib/import/Makefile.in: Update.
332         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
333         * gnulib/import/_Noreturn.h: ... this.
334         * gnulib/import/alloca.in.h: Update.
335         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
336         * gnulib/import/arg-nonnull.h: ... this.
337         * gnulib/import/assure.h: Update.
338         * gnulib/import/at-func.c: Update.
339         * gnulib/import/basename-lgpl.c: Update.
340         * gnulib/import/extra/snippet/c++defs.h: Rename to...
341         * gnulib/import/c++defs.h: ... this.
342         * gnulib/import/canonicalize-lgpl.c: Update.
343         * gnulib/import/cdefs.h: Update.
344         * gnulib/import/chdir-long.c: Update.
345         * gnulib/import/chdir-long.h: Update.
346         * gnulib/import/cloexec.c: Update.
347         * gnulib/import/cloexec.h: Update.
348         * gnulib/import/close.c: Update.
349         * gnulib/import/closedir.c: Update.
350         * gnulib/import/config.charset: Update.
351         * gnulib/import/dirent-private.h: Update.
352         * gnulib/import/dirent.in.h: Update.
353         * gnulib/import/dirfd.c: Update.
354         * gnulib/import/dirname-lgpl.c: Update.
355         * gnulib/import/dirname.h: Update.
356         * gnulib/import/dosname.h: Update.
357         * gnulib/import/dup-safer-flag.c: Update.
358         * gnulib/import/dup-safer.c: Update.
359         * gnulib/import/dup.c: Update.
360         * gnulib/import/dup2.c: Update.
361         * gnulib/import/errno.in.h: Update.
362         * gnulib/import/error.c: Update.
363         * gnulib/import/error.h: Update.
364         * gnulib/import/exitfail.c: Update.
365         * gnulib/import/exitfail.h: Update.
366         * gnulib/import/extra/update-copyright: Update.
367         * gnulib/import/fchdir.c: Update.
368         * gnulib/import/fcntl.c: Update.
369         * gnulib/import/fcntl.in.h: Update.
370         * gnulib/import/fd-hook.c: Update.
371         * gnulib/import/fd-hook.h: Update.
372         * gnulib/import/fd-safer-flag.c: Update.
373         * gnulib/import/fd-safer.c: Update.
374         * gnulib/import/fdopendir.c: Update.
375         * gnulib/import/filename.h: Update.
376         * gnulib/import/filenamecat-lgpl.c: Update.
377         * gnulib/import/filenamecat.h: Update.
378         * gnulib/import/flexmember.h: Update.
379         * gnulib/import/float+.h: Update.
380         * gnulib/import/float.c: Update.
381         * gnulib/import/float.in.h: Update.
382         * gnulib/import/fnmatch.c: Update.
383         * gnulib/import/fnmatch.in.h: Update.
384         * gnulib/import/fnmatch_loop.c: Update.
385         * gnulib/import/fpucw.h: Update.
386         * gnulib/import/frexp.c: Update.
387         * gnulib/import/frexpl.c: Update.
388         * gnulib/import/fstat.c: Update.
389         * gnulib/import/fstatat.c: Update.
390         * gnulib/import/getcwd-lgpl.c: Update.
391         * gnulib/import/getcwd.c: Update.
392         * gnulib/import/getdtablesize.c: Update.
393         * gnulib/import/getlogin_r.c: Update.
394         * gnulib/import/getprogname.c: Update.
395         * gnulib/import/getprogname.h: Update.
396         * gnulib/import/gettext.h: Update.
397         * gnulib/import/gettimeofday.c: Update.
398         * gnulib/import/glob-libc.h: Update.
399         * gnulib/import/glob.c: Update.
400         * gnulib/import/glob.in.h: Update.
401         * gnulib/import/glob_internal.h: Update.
402         * gnulib/import/glob_pattern_p.c: Update.
403         * gnulib/import/globfree.c: Update.
404         * gnulib/import/hard-locale.c: Update.
405         * gnulib/import/hard-locale.h: Update.
406         * gnulib/import/intprops.h: Update.
407         * gnulib/import/inttypes.in.h: Update.
408         * gnulib/import/isnan.c: Update.
409         * gnulib/import/isnand-nolibm.h: Update.
410         * gnulib/import/isnand.c: Update.
411         * gnulib/import/isnanl-nolibm.h: Update.
412         * gnulib/import/isnanl.c: Update.
413         * gnulib/import/itold.c: Update.
414         * gnulib/import/libc-config.h: Update.
415         * gnulib/import/limits.in.h: Update.
416         * gnulib/import/localcharset.c: Update.
417         * gnulib/import/localcharset.h: Update.
418         * gnulib/import/localtime-buffer.c: Update.
419         * gnulib/import/localtime-buffer.h: Update.
420         * gnulib/import/lstat.c: Update.
421         * gnulib/import/m4/00gnulib.m4: Update.
422         * gnulib/import/m4/__inline.m4: Update.
423         * gnulib/import/m4/absolute-header.m4: Update.
424         * gnulib/import/m4/alloca.m4: Update.
425         * gnulib/import/m4/builtin-expect.m4: Update.
426         * gnulib/import/m4/canonicalize.m4: Update.
427         * gnulib/import/m4/chdir-long.m4: Update.
428         * gnulib/import/m4/close.m4: Update.
429         * gnulib/import/m4/closedir.m4: Update.
430         * gnulib/import/m4/configmake.m4: Update.
431         * gnulib/import/m4/d-ino.m4: Update.
432         * gnulib/import/m4/d-type.m4: Update.
433         * gnulib/import/m4/dirent_h.m4: Update.
434         * gnulib/import/m4/dirfd.m4: Update.
435         * gnulib/import/m4/dirname.m4: Update.
436         * gnulib/import/m4/double-slash-root.m4: Update.
437         * gnulib/import/m4/dup.m4: Update.
438         * gnulib/import/m4/dup2.m4: Update.
439         * gnulib/import/m4/eealloc.m4: Update.
440         * gnulib/import/m4/environ.m4: Update.
441         * gnulib/import/m4/errno_h.m4: Update.
442         * gnulib/import/m4/error.m4: Update.
443         * gnulib/import/m4/exponentd.m4: Update.
444         * gnulib/import/m4/exponentl.m4: Update.
445         * gnulib/import/m4/extensions.m4: Update.
446         * gnulib/import/m4/extern-inline.m4: Update.
447         * gnulib/import/m4/fchdir.m4: Update.
448         * gnulib/import/m4/fcntl-o.m4: Update.
449         * gnulib/import/m4/fcntl.m4: Update.
450         * gnulib/import/m4/fcntl_h.m4: Update.
451         * gnulib/import/m4/fdopendir.m4: Update.
452         * gnulib/import/m4/filenamecat.m4: Update.
453         * gnulib/import/m4/flexmember.m4: Update.
454         * gnulib/import/m4/float_h.m4: Update.
455         * gnulib/import/m4/fnmatch.m4: Update.
456         * gnulib/import/m4/fnmatch_h.m4: Update.
457         * gnulib/import/m4/fpieee.m4: Update.
458         * gnulib/import/m4/frexp.m4: Update.
459         * gnulib/import/m4/frexpl.m4: Update.
460         * gnulib/import/m4/fstat.m4: Update.
461         * gnulib/import/m4/fstatat.m4: Update.
462         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
463         * gnulib/import/m4/getcwd-path-max.m4: Update.
464         * gnulib/import/m4/getcwd.m4: Update.
465         * gnulib/import/m4/getdtablesize.m4: Update.
466         * gnulib/import/m4/getlogin.m4: Update.
467         * gnulib/import/m4/getlogin_r.m4: Update.
468         * gnulib/import/m4/getpagesize.m4: Update.
469         * gnulib/import/m4/getprogname.m4: Update.
470         * gnulib/import/m4/gettimeofday.m4: Update.
471         * gnulib/import/m4/glibc21.m4: Update.
472         * gnulib/import/m4/glob.m4: Update.
473         * gnulib/import/m4/glob_h.m4: Update.
474         * gnulib/import/m4/gnulib-cache.m4: Update.
475         * gnulib/import/m4/gnulib-common.m4: Update.
476         * gnulib/import/m4/gnulib-comp.m4: Update.
477         * gnulib/import/m4/gnulib-tool.m4: Update.
478         * gnulib/import/m4/hard-locale.m4: Update.
479         * gnulib/import/m4/include_next.m4: Update.
480         * gnulib/import/m4/inttypes-pri.m4: Update.
481         * gnulib/import/m4/inttypes.m4: Update.
482         * gnulib/import/m4/isnand.m4: Update.
483         * gnulib/import/m4/isnanl.m4: Update.
484         * gnulib/import/m4/largefile.m4: Update.
485         * gnulib/import/m4/limits-h.m4: Update.
486         * gnulib/import/m4/localcharset.m4: Update.
487         * gnulib/import/m4/locale-fr.m4: Update.
488         * gnulib/import/m4/locale-ja.m4: Update.
489         * gnulib/import/m4/locale-zh.m4: Update.
490         * gnulib/import/m4/localtime-buffer.m4: Update.
491         * gnulib/import/m4/longlong.m4: Update.
492         * gnulib/import/m4/lstat.m4: Update.
493         * gnulib/import/m4/malloc.m4: Update.
494         * gnulib/import/m4/malloca.m4: Update.
495         * gnulib/import/m4/math_h.m4: Update.
496         * gnulib/import/m4/mbrtowc.m4: Update.
497         * gnulib/import/m4/mbsinit.m4: Update.
498         * gnulib/import/m4/mbsrtowcs.m4: Update.
499         * gnulib/import/m4/mbstate_t.m4: Update.
500         * gnulib/import/m4/memchr.m4: Update.
501         * gnulib/import/m4/memmem.m4: Update.
502         * gnulib/import/m4/mempcpy.m4: Update.
503         * gnulib/import/m4/memrchr.m4: Update.
504         * gnulib/import/m4/mkdir.m4: Update.
505         * gnulib/import/m4/mkstemp.m4: Update.
506         * gnulib/import/m4/mmap-anon.m4: Update.
507         * gnulib/import/m4/mode_t.m4: Update.
508         * gnulib/import/m4/msvc-inval.m4: Update.
509         * gnulib/import/m4/msvc-nothrow.m4: Update.
510         * gnulib/import/m4/multiarch.m4: Update.
511         * gnulib/import/m4/nocrash.m4: Update.
512         * gnulib/import/m4/off_t.m4: Update.
513         * gnulib/import/m4/onceonly.m4: Update.
514         * gnulib/import/m4/open-cloexec.m4: Update.
515         * gnulib/import/m4/open.m4: Update.
516         * gnulib/import/m4/openat.m4: Update.
517         * gnulib/import/m4/opendir.m4: Update.
518         * gnulib/import/m4/pathmax.m4: Update.
519         * gnulib/import/m4/rawmemchr.m4: Update.
520         * gnulib/import/m4/readdir.m4: Update.
521         * gnulib/import/m4/readlink.m4: Update.
522         * gnulib/import/m4/realloc.m4: Update.
523         * gnulib/import/m4/rename.m4: Update.
524         * gnulib/import/m4/rewinddir.m4: Update.
525         * gnulib/import/m4/rmdir.m4: Update.
526         * gnulib/import/m4/save-cwd.m4: Update.
527         * gnulib/import/m4/secure_getenv.m4: Update.
528         * gnulib/import/m4/setenv.m4: Update.
529         * gnulib/import/m4/signal_h.m4: Update.
530         * gnulib/import/m4/ssize_t.m4: Update.
531         * gnulib/import/m4/stat-time.m4: Update.
532         * gnulib/import/m4/stat.m4: Update.
533         * gnulib/import/m4/std-gnu11.m4: Update.
534         * gnulib/import/m4/stdbool.m4: Update.
535         * gnulib/import/m4/stddef_h.m4: Update.
536         * gnulib/import/m4/stdint.m4: Update.
537         * gnulib/import/m4/stdio_h.m4: Update.
538         * gnulib/import/m4/stdlib_h.m4: Update.
539         * gnulib/import/m4/strchrnul.m4: Update.
540         * gnulib/import/m4/strdup.m4: Update.
541         * gnulib/import/m4/strerror.m4: Update.
542         * gnulib/import/m4/string_h.m4: Update.
543         * gnulib/import/m4/strstr.m4: Update.
544         * gnulib/import/m4/strtok_r.m4: Update.
545         * gnulib/import/m4/sys_socket_h.m4: Update.
546         * gnulib/import/m4/sys_stat_h.m4: Update.
547         * gnulib/import/m4/sys_time_h.m4: Update.
548         * gnulib/import/m4/sys_types_h.m4: Update.
549         * gnulib/import/m4/tempname.m4: Update.
550         * gnulib/import/m4/time_h.m4: Update.
551         * gnulib/import/m4/unistd-safer.m4: Update.
552         * gnulib/import/m4/unistd_h.m4: Update.
553         * gnulib/import/m4/warn-on-use.m4: Update.
554         * gnulib/import/m4/wchar_h.m4: Update.
555         * gnulib/import/m4/wchar_t.m4: Update.
556         * gnulib/import/m4/wctype_h.m4: Update.
557         * gnulib/import/m4/wint_t.m4: Update.
558         * gnulib/import/malloc.c: Update.
559         * gnulib/import/malloc/scratch_buffer.h: Update.
560         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
561         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
562         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
563         * gnulib/import/malloca.c: Update.
564         * gnulib/import/malloca.h: Update.
565         * gnulib/import/malloca.valgrind: Update.
566         * gnulib/import/math.in.h: Update.
567         * gnulib/import/mbrtowc.c: Update.
568         * gnulib/import/mbsinit.c: Update.
569         * gnulib/import/mbsrtowcs-impl.h: Update.
570         * gnulib/import/mbsrtowcs-state.c: Update.
571         * gnulib/import/mbsrtowcs.c: Update.
572         * gnulib/import/memchr.c: Update.
573         * gnulib/import/memmem.c: Update.
574         * gnulib/import/mempcpy.c: Update.
575         * gnulib/import/memrchr.c: Update.
576         * gnulib/import/mkdir.c: Update.
577         * gnulib/import/mkstemp.c: Update.
578         * gnulib/import/msvc-inval.c: Update.
579         * gnulib/import/msvc-inval.h: Update.
580         * gnulib/import/msvc-nothrow.c: Update.
581         * gnulib/import/msvc-nothrow.h: Update.
582         * gnulib/import/open.c: Update.
583         * gnulib/import/openat-die.c: Update.
584         * gnulib/import/openat-priv.h: Update.
585         * gnulib/import/openat-proc.c: Update.
586         * gnulib/import/openat.c: Update.
587         * gnulib/import/openat.h: Update.
588         * gnulib/import/opendir.c: Update.
589         * gnulib/import/pathmax.h: Update.
590         * gnulib/import/pipe-safer.c: Update.
591         * gnulib/import/rawmemchr.c: Update.
592         * gnulib/import/readdir.c: Update.
593         * gnulib/import/readlink.c: Update.
594         * gnulib/import/realloc.c: Update.
595         * gnulib/import/ref-add.sin: Update.
596         * gnulib/import/ref-del.sin: Update.
597         * gnulib/import/rename.c: Update.
598         * gnulib/import/rewinddir.c: Update.
599         * gnulib/import/rmdir.c: Update.
600         * gnulib/import/same-inode.h: Update.
601         * gnulib/import/save-cwd.c: Update.
602         * gnulib/import/save-cwd.h: Update.
603         * gnulib/import/scratch_buffer.h: Update.
604         * gnulib/import/secure_getenv.c: Update.
605         * gnulib/import/setenv.c: Update.
606         * gnulib/import/signal.in.h: Update.
607         * gnulib/import/stat-time.c: Update.
608         * gnulib/import/stat-time.h: Update.
609         * gnulib/import/stat-w32.c: Update.
610         * gnulib/import/stat-w32.h: Update.
611         * gnulib/import/stat.c: Update.
612         * gnulib/import/stdbool.in.h: Update.
613         * gnulib/import/stddef.in.h: Update.
614         * gnulib/import/stdint.in.h: Update.
615         * gnulib/import/stdio.in.h: Update.
616         * gnulib/import/stdlib.in.h: Update.
617         * gnulib/import/str-two-way.h: Update.
618         * gnulib/import/strchrnul.c: Update.
619         * gnulib/import/strdup.c: Update.
620         * gnulib/import/streq.h: Update.
621         * gnulib/import/strerror-override.c: Update.
622         * gnulib/import/strerror-override.h: Update.
623         * gnulib/import/strerror.c: Update.
624         * gnulib/import/string.in.h: Update.
625         * gnulib/import/stripslash.c: Update.
626         * gnulib/import/strnlen1.c: Update.
627         * gnulib/import/strnlen1.h: Update.
628         * gnulib/import/strstr.c: Update.
629         * gnulib/import/strtok_r.c: Update.
630         * gnulib/import/sys_stat.in.h: Update.
631         * gnulib/import/sys_time.in.h: Update.
632         * gnulib/import/sys_types.in.h: Update.
633         * gnulib/import/tempname.c: Update.
634         * gnulib/import/tempname.h: Update.
635         * gnulib/import/time.in.h: Update.
636         * gnulib/import/unistd--.h: Update.
637         * gnulib/import/unistd-safer.h: Update.
638         * gnulib/import/unistd.in.h: Update.
639         * gnulib/import/unsetenv.c: Update.
640         * gnulib/import/verify.h: Update.
641         * gnulib/import/extra/snippet/warn-on-use.h: Update.
642         * gnulib/import/wchar.in.h: Update.
643         * gnulib/import/wctype.in.h: Update.
644         * gnulib/import/xalloc-oversized.h: Update.
645         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
646         "53e2c179f26a890fa6685af4b6c1397ee370433b".
647
648 2018-08-16  Gary Benson <gbenson@redhat.com>
649
650         PR gdb/13000:
651         * gdb/main.c (captured_main_1): Exit with nonzero status
652         in batch mode if the last command to be executed failed.
653         * NEWS: Mention the above.
654
655 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
656
657         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
658         end of warning message.
659
660 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
661
662         PR gdb/22943:
663         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
664         (aarch64_extract_return_value): Use
665         aapcs_is_vfp_call_or_return_candidate.
666         (aarch64_return_in_memory): Likewise.
667         (aarch64_store_return_value): Likewise.
668
669 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
670
671         * aarch64-tdep.c
672         (aapcs_is_vfp_call_or_return_candidate): Make static
673         (pass_in_v_or_stack): Remove function.
674         (pass_in_v_vfp_candidate): New function.
675         (aarch64_push_dummy_call): Check for float register candidates.
676
677 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
678
679         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
680         (aapcs_is_vfp_call_or_return_candidate_1): New function.
681         (aapcs_is_vfp_call_or_return_candidate): Likewise.
682
683 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
684
685         PR build/23399
686         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
687         (struct ipa_sym_addresses): Rename to...
688         (struct ipa_sym_addresses_common): ... this.
689         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
690
691 2018-08-28  Tom Tromey  <tom@tromey.com>
692
693         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
694         (token_fifo): Now a std::vector.
695         (yylex, c_parse): Update.
696         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
697         (token_fifo): Now a std::vector.
698         (yylex, d_parse): Update.
699         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
700         (token_fifo): Now a std::vector.
701         (yylex, go_parse): Update.
702
703 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
704
705         * parser-defs.h (struct type_stack) <elements>: Change type to
706         std::vector<union type_stack_elt>.
707         <depth, size>: Remove.
708         * parse.c (parse_exp_in_context_1): Adjust.
709         (type_stack_reserve): Remove.
710         (check_type_stack_depth): Remove.
711         (insert_into_type_stack): Adjust to std::vector.
712         (insert_type): Likewise.
713         (push_type): Likewise.
714         (push_type_int): Likewise.
715         (insert_type_address_space): Likewise.
716         (pop_type): Likewise.
717         (pop_type_int): Likewise.
718         (pop_typelist): Likewise.
719         (pop_type_stack): Likewise.
720         (append_type_stack): Likewise.
721         (push_type_stack): Likewise.
722         (get_type_stack): Likewise.
723         (type_stack_cleanup): Likewise.
724         (push_typelist): Likewise.
725         (follow_types): Likewise.
726         (_initialize_parse): Likewise.
727
728 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
729
730         * NEWS: Mention csky target.
731
732 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
733             Hafiz Abid Qadeer  <abidh@codesourcery.com>
734             Don Breazeal  <donb@codesourcery.com>
735
736         * csky-linux-tdep.c: New file.
737         * csky-tdep.c: Likewise.
738         * csky-tdep.h: Likewise.
739         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
740         csky-tdep.o.
741         (HFILES_NO_SRCDIR): Add csky-tdep.h.
742         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
743         * configure.tgt: Add csky support.
744
745 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
746
747         * python/py-framefilter.c (py_print_frame): Print frame architecture
748         when printing on an MI output.
749
750 2018-08-27  Tom Tromey  <tom@tromey.com>
751
752         PR build/23087:
753         * configure: Rebuild.
754         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
755
756 2018-08-27  Tom Tromey  <tom@tromey.com>
757
758         * aarch64-linux-tdep.c
759         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
760         casts to int.
761
762 2018-08-27  Tom Tromey  <tom@tromey.com>
763
764         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
765         unsigned.
766         (ppc64_standard_linkage1, ppc64_standard_linkage2)
767         (ppc64_standard_linkage3, ppc64_standard_linkage4)
768         (ppc64_standard_linkage5, ppc64_standard_linkage6)
769         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
770         unsigned.
771
772 2018-08-27  Tom Tromey  <tom@tromey.com>
773
774         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
775         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
776
777 2018-08-27  Tom Tromey  <tom@tromey.com>
778
779         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
780         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
781         ULONGEST_MAX.
782         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
783         ULONGEST_MAX.
784         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
785         ULONGEST_MAX.
786         * sparc-linux-tdep.c (sparc32_linux_sigframe)
787         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
788         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
789         ULONGEST_MAX.
790         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
791         (ppc64_linux_sigaction_tramp_frame)
792         (ppc32_linux_sighandler_tramp_frame)
793         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
794         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
795         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
796         * mn10300-linux-tdep.c (am33_linux_sigframe)
797         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
798         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
799         * mips-linux-tdep.c (mips_linux_o32_sigframe)
800         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
801         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
802         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
803         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
804         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
805         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
806         * microblaze-linux-tdep.c
807         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
808         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
809         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
810         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
811         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
812         * common/common-types.h (ULONGEST_MAX): New define.
813         (CORE_ADDR_MAX): Fix formatting.
814         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
815         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
816         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
817         (arm_linux_rt_sigreturn_tramp_frame)
818         (arm_eabi_linux_sigreturn_tramp_frame)
819         (arm_eabi_linux_rt_sigreturn_tramp_frame)
820         (thumb2_eabi_linux_sigreturn_tramp_frame)
821         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
822         (arm_linux_restart_syscall_tramp_frame)
823         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
824         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
825         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
826         ULONGEST_MAX.
827         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
828
829 2018-08-27  Tom Tromey  <tom@tromey.com>
830
831         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
832         CORE_ADDR_MAX.
833         * mips-tdep.c (mips_deal_with_atomic_sequence)
834         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
835         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
836         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
837         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
838         CORE_ADDR_MAX.
839         * aarch64-tdep.c (aarch64_software_single_step): Use
840         CORE_ADDR_MAX.
841
842 2018-08-27  Tom Tromey  <tom@tromey.com>
843
844         * linespec.c (complete_linespec_component): Add cast to "char".
845         * completer.c (completion_tracker::build_completion_result): Add
846         cast to "char".
847
848 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
849
850         * solist.h (struct solist, struct target_so_ops): Fix
851         indentation.
852
853 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
854
855         * ada-tasks.c (ada_task_info_s): Remove typedef.
856         (DEF_VEC_O(ada_task_info_s)): Remove.
857         (struct ada_tasks_inferior_data): Initialize fields.
858         <task_list>: Make an std::vector.
859         (get_ada_tasks_inferior_data): Allocate with new.
860         (ada_get_task_number): Adjust.
861         (get_task_number_from_id): Likewise.
862         (valid_task_id): Likewise.
863         (ada_get_task_info_from_ptid): Likewise.
864         (iterate_over_live_ada_tasks): Likewise.
865         (add_ada_task): Likewise.
866         (read_known_tasks): Likewise.
867         (ada_build_task_list): Likewise.
868         (print_ada_task_info): Likewise.
869         (info_task): Likewise.
870         (task_command_1): Likewise.
871
872 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
873
874         * ada-lang.c (add_angle_brackets): Return std::string.
875
876 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
877
878         * python/py-threadevent.c (py_get_event_thread): Initialize
879         pythread.
880
881 2018-08-24  Pedro Alves  <palves@redhat.com>
882
883         * python/py-bpevent.c (create_breakpoint_event_object): Use
884         copy-initialization.
885         * python/py-continueevent.c (emit_continue_event): Use
886         copy-initialization.
887         * python/py-exitedevent.c (create_exited_event_object): Return a
888         gdbpy_ref<>.
889         (emit_exited_event): Use copy-initialization.
890         * python/py-inferior.c (python_new_inferior)
891         (python_inferior_deleted, add_thread_object): Use
892         copy-initialization.
893         * python/py-infevents.c (create_inferior_call_event_object)
894         (create_register_changed_event_object)
895         (create_memory_changed_event_object): Return a gdbpy_ref<>.
896         (emit_inferior_call_event, emit_memory_changed_event)
897         (emit_register_changed_event): Use copy-initialization.
898         * python/py-newobjfileevent.c (create_new_objfile_event_object):
899         Return a gdbpy_ref<>.
900         (emit_new_objfile_event): Use copy-initialization.
901         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
902         (emit_clear_objfiles_event): Use copy-initialization.
903         * python/py-signalevent.c (create_signal_event_object): Use
904         copy-initialization.
905         * python/py-threadevent.c (create_thread_event_object): Use
906         copy-initialization.
907
908 2018-08-24  Pedro Alves  <palves@redhat.com>
909             Simon Marchi  <simon.marchi@ericsson.com>
910
911         PR gdb/23379
912         * python/py-continueevent.c: Include "gdbthread.h".
913         (create_continue_event_object): Add intro comment.  Add 'ptid'
914         parameter.  Use it to find thread to pass to
915         create_thread_event_object.
916         (emit_continue_event): Pass PTID down to
917         create_continue_event_object.
918         * python/py-event.h (py_get_event_thread): Declare.
919         (create_thread_event_object): Remove default from 'thread'
920         parameter.
921         * python/py-stopevent.c (create_stop_event_object): Use
922         py_get_event_thread.
923         * python/py-threadevent.c (get_event_thread): Rename to ...
924         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
925         and use it to find the thread.
926         (create_thread_event_object): Assert that THREAD isn't null.
927         Don't find the event thread here.
928
929 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
930
931         * block.h (blockrange, blockranges): New struct declarations.
932         (struct block): Add new field named `ranges'.
933         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
934         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
935         macros for accessing ranges in struct block.
936         (make_blockranges): New declaration.
937         block.c (make_blockranges): New function.
938         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
939         for block.
940         * symtab.h (find_pc_partial_function): Add new parameter `block'.
941         * blockframe.c (cache_pc_function_block): New static global.
942         (clear_pc_function_cache): Clear cache_pc_function_block.
943         (find_pc_partial_function): Move comment to symtab.h.  Add
944         support for non-contiguous blocks.
945         * cli/cli-cmds.c (block.h): Include.
946         (print_disassembly): Handle printing of non-contiguous blocks.
947         (disassemble_current_function): Likewise.
948         (disassemble_command): Likewise.
949
950         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
951         BLOCK_START.
952         * blockframe.c (get_pc_function_start): Likewise.
953         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
954         (gcc_symbol_address): Likewise.
955         * compile/compile-object-run.c (compile_object_run): Likewise.
956         * compile/compile.c (get_expr_block_and_pc): Likewise.
957         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
958         (func_addr_to_tail_call_list): Likewise.
959         * findvar.c (default_read_var_value): Likewise.
960         * inline-frame.c (inline_frame_this_id): Likewise.
961         (skip-inline_frames): Likewise.
962         * infcmd.c (until_next_command): Likewise.
963         * linespec.c (convert_linespec_to_sals): Likewise.
964         * parse.c (parse_exp_in_context_1): Likewise.
965         * printcmd.c (build_address_symbolic): likewise.
966         (info_address_command): Likewise.
967         symtab.c (find_function_start_sal): Likewise.
968         (skip_prologue_sal): Likewise.
969         (find_function_alias_target): Likewise.
970         (find_gnu_ifunc): Likewise.
971         * stack.c (find_frame_funname): Likewise.
972         * symtab.c (fixup_symbol_section): Likewise.
973         (find_function_start_sal): Likewise.
974         (skip_prologue_sal): Likewsie.
975         (find_function_alias_target): Likewise.
976         (find_gnu_ifunc): Likewise.
977         * tracepoint.c (info_scope_command): Likewise.
978         * value.c (value_fn_field): Likewise.
979
980         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
981         in place of find_pc_partial_function.
982         * blockframe.c (find_function_entry_range_from_pc): New function.
983         * symtab.h (find_function_entry_range_from_pc): Declare and document.
984         * objfiles.c (objfile_relocate1): Relocate start and end addresses
985         for each range in a block.
986
987
988 2018-08-23  Xavier Roirand  <roirand@adacore.com>
989
990         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
991         incrementation.
992
993 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
994
995         * solib-svr4.c (read_program_headers_from_bfd): Return
996         gdb::optional<gdb::byte_vector>.
997         (svr4_exec_displacement): Adjust.
998
999 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
1000
1001         * solib-svr4.c (read_program_header): Return
1002         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
1003         (find_program_interpreter): Return
1004         gdb::optional<gdb::byte_vector>.
1005         (scan_dyntag_auxv): Adjust.
1006         (enable_break): Adjust.
1007         (svr4_exec_displacement): Adjust.
1008
1009 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
1010
1011         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
1012         * inf-child.c (inf_child_target::terminal_save_inferior): New.
1013
1014 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
1015
1016         * guile/scm-string.c (gdbscm_scm_from_printf): Use
1017         string_vprintf.
1018         * guile/scm-utils.c (gdbscm_printf): Likewise.
1019         * serial.c (serial_printf): Likewise.
1020         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
1021
1022 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
1023
1024         * stack.c (print_frame): Print frame architecture when printing on
1025         an MI output.
1026         * NEWS: Mention new "arch" attribute in frame output.
1027
1028 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
1029
1030         * arch/aarch64.h (aarch64_regnum): Update comment.
1031
1032 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
1033
1034         * NEWS: Add SVE to 8.2 section.
1035
1036 2018-08-21  Pedro Alves  <palves@redhat.com>
1037
1038         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
1039         out from gdbscm_parse_function_args.
1040         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
1041         gdbscm_parse_function_args_1.
1042
1043 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
1044
1045         PR gdb/17816
1046         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
1047         operator.
1048
1049 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
1050
1051         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
1052
1053 2018-08-19  Michael Spang  <spang@google.com>
1054
1055         PR gdb/11786
1056         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
1057         for PT_TLS segments.
1058
1059 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
1060
1061         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
1062         dwarf_variable_value.
1063         * dwarf2-frame.c (class dwarf_expr_executor):
1064         Add override for dwarf_variable_value.
1065         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
1066         (class symbol_needs_eval_context): Likewise.
1067         (indirect_synthetic_pointer): Add forward declaration.
1068         (sect_variable_value): New function.
1069         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
1070         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
1071         for DW_OP_GNU_variable_value.
1072
1073 2018-08-16  Tom Tromey  <tom@tromey.com>
1074
1075         * top.c (read_command_file): Update.
1076         (command_line_input): Remove "repeat" argument.
1077         * ada-lang.c (get_selections): Update.
1078         * linespec.c (decode_line_2): Update.
1079         * defs.h (command_line_input): Remove argument.
1080         * cli/cli-script.c (read_next_line): Update.
1081         * python/py-gdb-readline.c: Update.
1082
1083 2018-08-17  Tom Tromey  <tom@tromey.com>
1084
1085         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
1086         command_line_input.
1087
1088 2018-08-15  Tom Tromey  <tom@tromey.com>
1089
1090         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
1091
1092 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
1093
1094         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
1095         If used, use find_pc_partial_function to find address range
1096         to disassemble.
1097         * mi/mi-main.c (mi_cmd_list_features): Report
1098         "data-disassemble-a-option" feature.
1099         * NEWS: Mention new -data-disassemble option -a.
1100
1101 2018-08-13  Tom Tromey  <tom@tromey.com>
1102
1103         * common/common-defs.h (_FORTIFY_SOURCE): Define.
1104
1105 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
1106
1107         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
1108         (aarch64_linux_collect_sve_regset): Likewise.
1109         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
1110         * regcache.h (regcache_map_entry_size): New function.
1111
1112 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
1113
1114         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
1115         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
1116         (SVE_HEADER_VL_LENGTH): Likewise.
1117         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
1118         (SVE_HEADER_FLAGS_LENGTH): Likewise.
1119         (SVE_HEADER_RESERVED_LENGTH): Likewise.
1120         (SVE_HEADER_SIZE_OFFSET): Likewise.
1121         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
1122         (SVE_HEADER_VL_OFFSET): Likewise.
1123         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
1124         (SVE_HEADER_FLAGS_OFFSET): Likewise.
1125         (SVE_HEADER_RESERVED_OFFSET): Likewise.
1126         (SVE_HEADER_SIZE): Likewise.
1127         (aarch64_linux_core_read_vq): Add function.
1128         (aarch64_linux_core_read_description): Check for SVE section.
1129
1130 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
1131
1132         * aarch64-fbsd-tdep.c
1133         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
1134         collect_size.
1135         * aarch64-linux-tdep.c
1136         (aarch64_linux_iterate_over_regset_sections): Likewise.
1137         * alpha-linux-tdep.c
1138         (alpha_linux_iterate_over_regset_sections):
1139         * alpha-nbsd-tdep.c
1140         (alphanbsd_iterate_over_regset_sections): Likewise.
1141         * amd64-fbsd-tdep.c
1142         (amd64fbsd_iterate_over_regset_sections): Likewise.
1143         * amd64-linux-tdep.c
1144         (amd64_linux_iterate_over_regset_sections): Likewise.
1145         * arm-bsd-tdep.c
1146         (armbsd_iterate_over_regset_sections): Likewise.
1147         * arm-fbsd-tdep.c
1148         (arm_fbsd_iterate_over_regset_sections): Likewise.
1149         * arm-linux-tdep.c
1150         (arm_linux_iterate_over_regset_sections): Likewise.
1151         * corelow.c (get_core_registers_cb): Likewise.
1152         (core_target::fetch_registers): Likewise.
1153         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
1154         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
1155         * gdbarch.h (void): Regenerate.
1156         * gdbarch.sh: Add supply_size and collect_size.
1157         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
1158         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
1159         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
1160         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
1161         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
1162         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
1163         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
1164         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
1165         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
1166         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
1167         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
1168         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
1169         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
1170         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
1171         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections): Likewise.
1172         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
1173         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
1174         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
1175         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
1176         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
1177         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
1178         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections): Likewise.
1179         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
1180         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
1181         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
1182         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
1183         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
1184         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
1185         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
1186         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
1187
1188 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
1189
1190         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
1191         with string_printf.
1192
1193 2018-08-10  Keith Seitz  <keiths@redhat.com>
1194
1195         * compile/compile-c-support.c (add_code_header, add_code_footer):
1196         Move into policy class.
1197         (c_push_user_expression, pop_user_expression_nop)
1198         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
1199         (compile_program): New host class.
1200         (c_compile_program): New typedef.
1201         (c_compute_porgram): Use c_compile_program.
1202
1203 2018-08-10  Keith Seitz  <keiths@redhat.com>
1204
1205         * compile/compile-internal.h (compile_instance::~compile_instance):
1206         Remove calls to htab_delete.
1207         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
1208         * compile.c (compile_instance::compile_instance): Initialize
1209         htab unique pointers.
1210         (compile_instance::get_cached_type, compile_instance::insert_type)
1211         (compile_instance::error_symbol_once): Update for unique_ptr.
1212
1213 2018-08-10  Keith Seitz  <keiths@redhat.com>
1214
1215         * compile/compile-c-symbols.c (struct symbol_error)
1216         (hash_symbol_error, eq_symbol_error, del_symbol_error)
1217         (compile_instance::insert_symbol_error)
1218         (compile_instance::error_symbol_once): Move to ...
1219         * compile/compile.c: ... here.
1220
1221 2018-08-10  Keith Seitz  <keiths@redhat.com>
1222
1223         * compile/compile-c-support.c (c_get_compile_context): Use `new'
1224         instead of `new_compile_instance'.
1225         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
1226         Update description.
1227         If the symbol error map is not initialized, create it.
1228         (generate_c_for_for_one_symbol): Do not check/initialize
1229         the symbol error map.
1230         * compile/compile-c-types.c (compile_c_instance): Make a class.
1231         Update all callers.
1232         (compile_instance::compile_instance): Initialize the type cache.
1233         (get_cached_type): New function.
1234         (insert_type): Update description.
1235         (compile_c_instance::m_default_cflags): Define.
1236         (convert_type): Update description.  Use get_cached_type.
1237         (delete_instance): Moved to destructor.
1238         (new_compile_instance): Moved to constructor.
1239         * compile/compile-c.h (compile_c_instance): Make class inheriting
1240         from compile_instance.
1241         <base>: Remove field.
1242         <type_map, symbol_err_map>: Move to base class.
1243         <c_plugin>: Rename to `m_plugin' and remove pointer type.
1244         * compile/compile-internal.h (compile_instance): Make class.
1245         <type_map_t, symbol_err_map_t>: Define.
1246         <fe>: Rename to `m_gcc_fe'.
1247         <scope, block, gcc_target_options>: Add `m_' prefix.
1248         <m_type_map, m_symbol_err_map>: New fields, moved from
1249         compile_c_instance.
1250         <destroy>: Remove.
1251         (convert_type, new_compile_instance): Remove.
1252         * compile/compile.c (cleanup_compile_instance): Remove.
1253         (compile_to_object): Use unique_ptr to eliminate cleanups.
1254         (compile_instance::set_print_callback, compile_instance::version)
1255         (compile_instance::set_verbose)
1256         (compile_instance::set_driver_filename)
1257         (compile_instance::set_triplet_regexp)
1258         (compile_instance::set_arguments)
1259         (compile_instance::set_source_file)
1260         (compile_instance::compile): Define.
1261
1262 2018-08-10  Keith Seitz  <keiths@redhat.com>
1263
1264         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
1265         * compile/compile-c-types.c: Define GCC_METHODN macros and include
1266         gcc-c-fe.def to define C plugin.
1267         (delete_instance): Delete `c_plugin'.
1268         (new_compile_instance): Initialize `c_plugin'.
1269         * compile/compile-c.h: Include gcc_c_plugin.h.
1270         (struct compile_c_instance) <c_plugin>: New member.
1271         * gcc-c-plugin.h: New file.
1272         Update all callers with API change.
1273
1274 2018-08-10  Keith Seitz  <keiths@redhat.com>
1275
1276         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
1277         (HFILES_NO_SRCDIR): ... to here.
1278         Add compile-internal.h and compile-c.h.
1279         * compile/compile-c-support.c: Include compile-c.h.
1280         * compile/compile-c-symbols.c: Include compile-c.h.
1281         (generate_c_for_variable_locations): Update comment.
1282         * compile/compile-c-types.c: Include compile-c.h.
1283         * compile/compile-c.h: New file -- moved C language declarations
1284         from other files here.
1285         * compile/compile-internal.h: Do not include hashtab.h or
1286         common/enum-flags.h.
1287         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
1288         (gcc_convert_symbol, gcc_symbol_address)
1289         (generate_c_for_variable_locations, c_get_mode_for_size)
1290         (c_get_range_decl_name): Definitions moved to compile-c.h.
1291         * compile/compile-loc2c.c: Include compile-c.h.
1292
1293 2018-08-10  Keith Seitz  <keiths@redhat.com>
1294
1295         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
1296         (c_symbol_substitution_name): ... this.
1297         Update all callers.
1298
1299 2018-08-10  Keith Seitz  <keiths@redhat.com>
1300
1301         * compile/compile-c-support.c (c_compute_program): Use
1302         unique_xmalloc_ptr to eliminate cleanup.
1303         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
1304         Return a unique_xmalloc_ptr and eliminate cleanup.
1305         * compile/compile-internal.h (generate_c_for_variable_locations):
1306         Return unique_xmalloc_ptr and update description.
1307
1308 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
1309
1310         * corelow.c (core_target::get_core_register_section): Rename
1311         min_size to section_min_size.
1312
1313 2018-08-09  Jim Wilson  <jimw@sifive.com>
1314
1315         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
1316         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
1317         * NEWS: Mention new GNU/Linux RISC-V target.
1318         * configure.host: Add riscv*-*-linux*.
1319         * configure.nat: Add riscv*.
1320         * configure.tgt: Add riscv*-*-linux*.
1321         * riscv-linux-nat.c: New file.
1322         * riscv-linux-tdep.c: New file.
1323
1324 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
1325
1326         * infrun.c (resume): Make static, add forward declaration.
1327         (proceed): Update header comment.
1328         * infrun.h (resume): Delete declaration.
1329
1330 2018-08-09  Tom Tromey  <tom@tromey.com>
1331
1332         * riscv-tdep.h: Minor formatting fixes.
1333
1334 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
1335
1336         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
1337         * dwarf-index-cache.c (create_dir_and_check): Likewise.
1338         (test_mkdir_recursive): Likewise.
1339         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
1340
1341 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
1342
1343         * valarith.c (value_subscripted_rvalue): If an array is not in
1344         memory, and we don't know the upper bound, then we can't know that
1345         the requested element exists or not.
1346
1347 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
1348
1349         * target.c (str_comma_list_concat_elem): Fix typo in comment.
1350         (target_options_to_string): Add comment.
1351
1352 2018-08-08  Tom Tromey  <tom@tromey.com>
1353
1354         * unittests/scoped_mmap-selftests.c: Check result of "write".
1355
1356 2018-08-08  Jim Wilson  <jimw@sifive.com>
1357
1358         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
1359         (decode_register_index_short): New.
1360         (decode_j_type_insn, decode_cj_type_insn): New.
1361         (decode_b_type_insn, decode_cb_type_insn): New.
1362         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
1363         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
1364         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
1365         is_c_sw_insn instead of is_sw_insn.
1366         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
1367         (riscv_software_single_step): New.
1368         * riscv-tdep.h (riscv_software_single_step): Declare.
1369
1370         * riscv-tdep.c (riscv_isa_xlen): Drop static.
1371         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
1372
1373 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
1374
1375         PR gdb/18050:
1376         * target.c (dispose_inferior): Don't dispose of inferiors that are
1377         already killed.
1378
1379 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
1380
1381         * remote.c (remote_target::download_tracepoint): Change char* to
1382         const char*.
1383
1384 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
1385
1386         * target.h (target_options_to_string): Return an std::string.
1387         * target.c (str_comma_list_concat_elem): Return void, use
1388         std::string.
1389         (do_option): Likewise.
1390         (target_options_to_string): Return an std::string.
1391         * linux-nat.c (linux_nat_target::wait): Adjust.
1392         * target-debug.h (target_debug_print_options): Adjust.
1393
1394 2018-08-07  Tom Tromey  <tom@tromey.com>
1395
1396         * Makefile.in (CPPFLAGS): New variable.
1397         (INTERNAL_CPPFLAGS): Use it.
1398
1399 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
1400
1401         * NEWS: Mention the index cache.
1402
1403 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
1404
1405         * common/pathstuff.h (get_standard_cache_dir): New.
1406         * common/pathstuff.c (get_standard_cache_dir): New.
1407         * build-id.h (build_id_to_string): New.
1408         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
1409         DEBUG_STR_SUFFIX): Move to here.
1410         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
1411         DEBUG_STR_SUFFIX): Move from there.
1412         (write_psymtabs_to_index): Make non-static, add basename
1413         parameter.  Write to temporary files, rename when done.
1414         (save_gdb_index_command): Adjust call to
1415         write_psymtabs_to_index.
1416         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
1417         field.
1418         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
1419         (get_gdb_index_contents_from_cache): New.
1420         (get_gdb_index_contents_from_cache_dwz): New.
1421         (dwarf2_initialize_objfile): Read index from cache.
1422         (dwarf2_build_psymtabs): Save to index.
1423         * dwarf-index-cache.h: New file.
1424         * dwarf-index-cache.c: New file.
1425         * dwarf-index-write.h: New file.
1426
1427 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
1428
1429         * gnulib/aclocal.m4: Re-generate.
1430         * gnulib/config.in: Re-generate.
1431         * gnulib/configure: Re-generate.
1432         * gnulib/import/Makefile.am: Re-generate.
1433         * gnulib/import/Makefile.in: Re-generate.
1434         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
1435         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
1436         * gnulib/import/m4/mkdir.m4: New file.
1437         * gnulib/import/mkdir.c: New file.
1438         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
1439         module.
1440
1441 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
1442
1443         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
1444         * common/scoped_mmap.c: New file.
1445         * common/scoped_mmap.h (destroy): New method.
1446         (~scoped_mmap, reset): Use destroy.
1447         (scoped_mmap): New move constructor.
1448         (mmap_file): New declaration.
1449         * unittests/scoped_mmap-selftests.c (test_normal,
1450         test_invalid_filename, run_tests): New functions.
1451         (_initialize_scoped_mmap_selftests): Register selftest.
1452
1453 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
1454
1455         * dwarf2read.c (read_gdb_index_from_section): Rename to...
1456         (read_gdb_index_from_buffer): ... this.  Remove section
1457         parameter, add buffer parameter.
1458         (get_gdb_index_contents_ftype,
1459         get_gdb_index_contents_dwz_ftype): New typedefs.
1460         (dwarf2_read_gdb_index): Add callback parameters to get the
1461         index contents.
1462         (get_gdb_index_contents_from_section): New.
1463         (dwarf2_initialize_objfile): Update call to
1464         dwarf2_read_gdb_index.
1465
1466 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
1467
1468         * common/filestuff.h (gdb_fopen_cloexec): New overload.
1469         (gdb_open_cloexec): Likewise.
1470         * nat/linux-osdata.c (command_from_pid): Use string_printf.
1471         (commandline_from_pid): Likewise.
1472         (linux_xfer_osdata_threads): Likewise.
1473         (linux_xfer_osdata_fds): Likewise.
1474         * ada-lang.c (is_package_name): Likewise.
1475         * auxv.c (procfs_xfer_auxv): Likewise.
1476         * breakpoint.c (print_one_breakpoint_location): Use
1477         uiout::field_fmt.
1478         (print_one_catch_solib): Use string_printf.
1479         * coff-pe-read.c (add_pe_exported_sym): Likewise.
1480         (add_pe_forwarded_sym): Likewise.
1481         * dwarf2read.c (create_type_unit_group): Likewise.
1482         (build_error_marker_type): Likewise.
1483         * infcall.c (get_function_name): Likewise.
1484         * valprint.c (print_converted_chars_to_obstack): Likewise.
1485         * xtensa-tdep.c (xtensa_register_type): Likewise.
1486
1487 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
1488
1489         * remote.c (remote_target::download_tracepoint): Fix format
1490         string errors.
1491
1492 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1493
1494         * tracefile.c: Include common/byte-vector.h.
1495         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
1496         with trace_regblock_size if needed.  Update uses of buf.
1497
1498 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1499
1500         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
1501         std::vector<unsigned char>.
1502         * tracepoint.c (collection_list::collection_list): Remove
1503         m_regs_mask initializer from initializer list.  Resize
1504         m_regs_mask using the largest remote register number.
1505         (collection_list::add_remote_register): Remove size check on
1506         m_regs_mask.  Use at to access element.
1507         (collection_list::stringify): Change type of temp_buf to
1508         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
1509         stringify the register mask.  Use pack_hex_byte for the register
1510         mask.
1511
1512 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1513
1514         * tracepoint.h (class collection_list) <add_register>: Remove.
1515         <add_remote_register, add_ax_registers, add_local_register>:
1516         Declare.
1517         <add_memrange>: Add scope parameter.
1518         * tracepoint.c (encode_actions_1): Likewise.
1519         (collection_list::add_register): Rename to ...
1520         (collection_list::add_remote_register): ... this.  Update
1521         comment.
1522         (collection_list::add_ax_registers, add_local_register): New
1523         methods.
1524         (collection_list::add_memrange): Add scope parameter.  Call
1525         add_local_register instead of add_register.
1526         (finalize_tracepoint_aexpr): New function.
1527         (collection_list::collect_symbol): Update calls to add_memrange.
1528         Call add_local_register instead of add_register.  Call
1529         add_ax_registers.  Call finalize_tracepoint_aexpr.
1530         (encode_actions_1): Get remote regnos for $reg action.  Call
1531         add_remote_register, add_ax_registers, and add_local_register.
1532         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
1533         (validate_actionline): Call finalize_tracepoint_aexpr.
1534
1535 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1536
1537         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
1538         Replace array buf with gdb::char_vector buf, of size
1539         get_remote_packet_size ().  Replace references to buf and
1540         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
1541         and xsnprintf with snprintf.  Raise errors if the buffer is too
1542         small.
1543
1544 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1545
1546         * remote.c (remote_target::download_tracepoint): Fix the has_more
1547         predicate in the QTDP action list iteration.
1548
1549 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1550
1551         * remote.c (remote_target::download_tracepoint): Fix indentation
1552         in for block.
1553
1554 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1555
1556         * proc-api.c (_initialize_proc_api): Remove c, unused.
1557         * procfs.c (procfs_init_inferior): Remove signals, unused.
1558         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
1559         unused.
1560
1561 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
1562             Andrew Burgess  <andrew.burgess@embecosm.com>
1563
1564         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
1565         'W_STOPCODE (0)' as this could be ambiguous.
1566
1567 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
1568
1569         * ser-tcp.c (net_open): Fix thinko when deciding whether to
1570         disable TCP's Nagle algorithm (use "ai_protocol" instead of
1571         "ai_socktype").
1572
1573 2018-08-02  Tom Tromey  <tom@tromey.com>
1574
1575         PR symtab/16842.
1576         * dwarf2read.c (read_func_scope): Set symtab on template parameter
1577         symbols.
1578         (process_structure_scope): Likewise.
1579
1580 2018-08-02  Xavier Roirand  <roirand@adacore.com>
1581
1582         PR gdb/22629:
1583         * darwin-nat.c (darwin_kill_inferior): Fix handling of
1584         kill inferior.
1585
1586 2018-08-02  Tom Tromey  <tom@tromey.com>
1587
1588         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
1589         (darwin_suspend_inferior, darwin_resume_inferior)
1590         (darwin_decode_notify_message, darwin_resume_inferior_threads)
1591         (darwin_check_new_threads): Check result of get_darwin_inferior.
1592
1593 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
1594
1595         GDB 8.1.1 released.
1596
1597 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
1598
1599         * varobj.c (varobj_get_path_expr_parent): Report an error if
1600         parent is a dynamic varobj.
1601
1602 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
1603
1604         * gnulib/aclocal.m4: Re-generate.
1605         * gnulib/config.in: Re-generate.
1606         * gnulib/configure: Re-generate.
1607         * gnulib/import/Makefile.in: Re-generate.
1608         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
1609         * gnulib/import/m4/onceonly.m4: Re-generate.
1610
1611 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
1612
1613         * target-descriptions.c (struct xml_test_tdesc): New.
1614         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
1615         (record_xml_tdesc): Update.
1616         (maintenance_check_xml_descriptions): Update.
1617         * target-descriptions.h (record_xml_tdesc): Update comment.
1618
1619 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
1620
1621         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
1622         checking array bounds are defined.
1623
1624 2018-07-30  Tom Tromey  <tom@tromey.com>
1625
1626         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
1627         irreflexivity violation.
1628
1629 2018-07-30  Tom Tromey  <tom@tromey.com>
1630
1631         * cli/cli-decode.c (lookup_cmd): Remove lint code.
1632         * value.c (unpack_long): Remove lint code.
1633         * valops.c (value_ind): Remove lint code.
1634         * valarith.c (value_x_binop, value_x_unop, value_equal)
1635         (value_pos): Remove lint code.
1636
1637 2018-07-28  Tom de Vries  <tdevries@suse.de>
1638
1639         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
1640         with undefined upper bound as <optimized out>.
1641
1642 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
1643
1644         * gcore.in: Rename variable "name" to "prefix".  Expand
1645         "usage" text.
1646
1647 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
1648
1649         * windows-nat.c (windows_nat_target::create_inferior): Update to
1650         call close() in global namespace.
1651
1652 2018-07-26  Tom Tromey  <tom@tromey.com>
1653
1654         * dwarf-index-write.c (add_address_entry): Don't add objfile
1655         offsets.
1656         * dbxread.c (find_stab_function): Rename from
1657         find_stab_function_addr.  Return a bound_minimal_symbol.
1658         (read_dbx_symtab): Use raw_text_low, raw_text_high.
1659         Don't add objfile offsets.
1660         (end_psymtab): Use raw_text_low, raw_text_high,
1661         MSYMBOL_VALUE_RAW_ADDRESS.
1662         (read_ofile_symtab): Update.
1663         (process_one_symbol): Update.
1664         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
1665         offsets.
1666         (dw2_relocate): Remove.
1667         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
1668         searching addrmap.
1669         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
1670         Update.
1671         (process_psymtab_comp_unit_reader, add_partial_symbol)
1672         (add_partial_subprogram, dwarf2_ranges_read): Update.
1673         (load_partial_dies): Update.
1674         (add_address_entry): Don't add objfile offsets.
1675         (dwarf2_build_include_psymtabs): Update.
1676         (create_addrmap_from_aranges): Don't add objfile offsets.
1677         (dw2_find_pc_sect_compunit_symtab): Update.
1678         * mdebugread.c (parse_symbol): Don't add objfile offsets.
1679         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
1680         Update.
1681         (parse_partial_symbols): Don't add objfile offsets.  Use
1682         raw_text_low, raw_text_high.  Update.
1683         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
1684         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
1685         or call 'relocate' quick function.  Clear psymbol_map.
1686         * psympriv.h (struct partial_symbol) <address>: Add section
1687         offset.
1688         <set_unrelocated_address>: Rename from set_address.
1689         <raw_text_low, raw_text_high>: New methods.
1690         <text_low, text_high>: Add objfile parameter.
1691         (add_psymbol_to_bcache): Add 'section' parameter.  Call
1692         set_unrelocated_address.
1693         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
1694         (find_pc_psymbol): Update.
1695         (fixup_psymbol_section, relocate_psymtabs): Remove.
1696         (dump_psymtab, psym_functions): Update.
1697         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
1698         parameter.
1699         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
1700         (start_psymtab_common): Update.
1701         * symfile-debug.c (debug_qf_relocate): Remove.
1702         (debug_sym_quick_functions): Update.
1703         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
1704         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
1705         Update.
1706
1707 2018-07-26  Tom Tromey  <tromey@redhat.com>
1708
1709         * dbxread.c (end_psymtab): Use text_high_valid and
1710         text_low_valid.
1711         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
1712         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
1713         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
1714         Update comment.
1715         <text_low_valid, text_high_valid>: New fields.
1716         <set_text_low, set_text_high>: Update.
1717         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
1718
1719 2018-07-26  Tom Tromey  <tom@tromey.com>
1720
1721         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
1722         Update.
1723         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
1724         textlow and texthigh fields.
1725         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
1726         Update.
1727         * mdebugread.c (parse_lines, parse_partial_symbols)
1728         (psymtab_to_symtab_1): Update.
1729         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
1730         Rename fields.  Update comment.  Now private.
1731         <text_low, text_high, set_text_low, set_text_high>: New methods.
1732         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
1733         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
1734         (start_psymtab_common, maintenance_info_psymtabs)
1735         (maintenance_check_psymtabs): Update.
1736         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
1737         texthigh fields.
1738         (scan_xcoff_symtab): Update.
1739
1740 2018-07-26  Tom Tromey  <tromey@redhat.com>
1741
1742         * psympriv.h (struct partial_symbol) <unrelocated_address,
1743         address, set_address>: New methods.
1744         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
1745         (fixup_psymbol_section, relocate_psymtabs): Update.
1746         (print_partial_symbols): Add 'objfile' parameter.  Update.
1747         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
1748         Update.
1749
1750 2018-07-26  Tom Tromey  <tom@tromey.com>
1751
1752         * dwarf-index-write.c (write_psymbols, debug_names::insert)
1753         (debug_names::write_psymbols): Update.
1754         * psympriv.h (struct partial_symbol): Derive from
1755         general_symbol_info.
1756         <obj_section>: New method.
1757         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
1758         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
1759         (find_pc_sect_psymbol, fixup_psymbol_section)
1760         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
1761         (print_partial_symbols, recursively_search_psymtabs)
1762         (compare_psymbols, psymbol_hash, psymbol_compare)
1763         (add_psymbol_to_bcache, maintenance_check_psymtabs)
1764         (psymbol_name_matches, psym_fill_psymbol_map): Update.
1765
1766 2018-07-26  Tom Tromey  <tromey@redhat.com>
1767
1768         * dbxread.c (end_psymtab): Remove dead code.
1769
1770 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
1771
1772         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
1773         DWARF unwinders are disabled.
1774         * dwarf2-frame.c: Add dwarf2read.h include.
1775         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
1776         disabled.
1777         (dwarf2_frame_unwinders_enabled_p): Define.
1778         (show_dwarf_unwinders_enabled_p): New function.
1779         (_initialize_dwarf2_frame): Register switch to control DWARF
1780         unwinder use.
1781         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
1782         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
1783         (show_dwarf_cmdlist): Remove static keyword.
1784         * dwarf2read.h (set_dwarf_cmdlist): Declare.
1785         (show_dwarf_cmdlist): Declare.
1786         * NEWS: Document new feature.
1787
1788 2018-07-26  Tom de Vries  <tdevries@suse.de>
1789
1790         PR breakpoints/23366
1791         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
1792
1793 2018-07-26  Tom de Vries  <tdevries@suse.de>
1794
1795         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
1796         DW_AT_count can't be translated to a dynamic prop.
1797
1798 2018-07-25  Tom de Vries  <tdevries@suse.de>
1799
1800         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
1801         try/catch.
1802
1803 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
1804
1805         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
1806
1807 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
1808
1809         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
1810
1811 2018-07-24  Keith Seitz  <keiths@redhat.comt
1812
1813         PR symtab/23010
1814         * dwarf2read.c (dw2_add_symbol_to_list): New function.
1815         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
1816         instead of add_symbol_to_list.
1817         (read_file_scope): Call prepare_one_comp_unit before reading
1818         any other DIEs.
1819
1820 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
1821
1822         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
1823
1824 2018-07-24  Tom Tromey  <tom@tromey.com>
1825
1826         * utils.c (malloc, realloc, free): Don't declare.
1827         * configure, config.in: Rebuild.
1828         * configure.ac: Don't check for declarations of free, malloc, or
1829         realloc.
1830
1831 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
1832
1833         * aarch64-linux-nat.c
1834         (aarch64_linux_nat_target::stopped_data_address): Remove unused
1835         variable.
1836         * arm-linux-nat.c (fetch_regs): Likewise.
1837         (store_regs): Likewise.
1838         (fetch_vfp_regs): Likewise.
1839         (store_vfp_regs): Likewise.
1840         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
1841         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
1842         (arm_linux_nat_target::insert_watchpoint): Likewise.
1843         (arm_linux_nat_target::remove_watchpoint): Likewise.
1844         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
1845         Likewise.
1846         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
1847         Likewise.
1848         * ppc-linux-nat.c (fetch_register): Likewise.
1849         (fetch_all_gp_regs): Likewise.
1850         (fetch_ppc_registers): Likewise.
1851         (store_all_gp_regs): Likewise.
1852         (store_ppc_registers): Likewise.
1853         (hwdebug_insert_point): Likewise.
1854         (can_use_watchpoint_cond_accel): Likewise.
1855         * remote-sim.c (gdb_os_write_stdout): Likewise.
1856
1857 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
1858             Tom Tromey  <tom@tromey.com>
1859
1860         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
1861         test for it.
1862         * configure: Rebuild.
1863
1864 2018-07-22  Tom Tromey  <tom@tromey.com>
1865
1866         * regformats/regdat.sh: Define xmltarget_${name} inside
1867         #ifndef IN_PROCESS_AGENT.
1868
1869 2018-07-22  Tom Tromey  <tom@tromey.com>
1870
1871         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
1872
1873 2018-07-22  Tom Tromey  <tom@tromey.com>
1874
1875         * symfile.c (reread_symbols): Notify iter, not objfile.
1876
1877 2018-07-22  Tom Tromey  <tom@tromey.com>
1878
1879         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
1880         Use arch_ops.
1881         (ravenscar_thread_target::prepare_to_store): Likewise.
1882
1883 2018-07-22  Tom Tromey  <tom@tromey.com>
1884
1885         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
1886         unused variable.  Call value_fetch_lazy when needed.
1887         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
1888         Remove unused variable.  Call value_fetch_lazy when needed.
1889
1890 2018-07-22  Tom Tromey  <tom@tromey.com>
1891
1892         * m32c-tdep.c (mark_dma): Return void.
1893         (make_regs): Remove unused declarations.
1894
1895 2018-07-22  Tom Tromey  <tom@tromey.com>
1896
1897         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
1898         cmdscm_get_valid_command_smob_arg_unsafe for effect.
1899         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
1900         bkscm_get_valid_block_smob_arg_unsafe for effect.
1901
1902 2018-07-22  Tom Tromey  <tom@tromey.com>
1903
1904         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
1905         value_type.
1906
1907 2018-07-22  Tom Tromey  <tom@tromey.com>
1908
1909         * windows-nat.c (saved_context): Conditionally define.
1910         * remote.c (remote_target::remote_btrace_maybe_reopen):
1911         Conditionally declare "warned".
1912         * inflow.c (sigquit_ours): Conditionally define.
1913         (new_tty): Move "tty" declaration inside #if.
1914         * guile/guile.c (guile_datadir): Conditionally define.
1915         * charset.c (set_be_le_names): Move some declarations inside #if.
1916         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
1917         #if.
1918         (parse_xml_btrace_conf): Likewise.
1919
1920 2018-07-22  Tom Tromey  <tom@tromey.com>
1921
1922         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
1923
1924 2018-07-22  Tom Tromey  <tom@tromey.com>
1925
1926         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
1927         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
1928         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
1929         * buildsym-legacy.c (get_macro_table): Remove unused variable.
1930         * stack.c (frame_apply_level_command): Remove unused variable.
1931         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
1932         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
1933         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
1934         unused variable.
1935         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
1936         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
1937         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
1938         variable.
1939         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
1940         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
1941         variable.
1942         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
1943         Remove unused variable.
1944         * cli/cli-script.c (recurse_read_control_structure): Remove unused
1945         variable.
1946         * common/tdesc.c (print_xml_feature::visit): Remove unused
1947         variable.
1948         * compile/compile-object-load.c (store_regs): Remove unused
1949         variables.
1950         * complaints.c (clear_complaints): Remove unused variable.
1951         * corelow.c (core_target_open): Remove unused variable.
1952         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
1953         variable.
1954         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
1955         variable.
1956         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
1957         variable.
1958         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
1959         variable.
1960         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
1961         variable.
1962         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
1963         variable.
1964         * ia64-tdep.c (examine_prologue): Remove unused variable.
1965         * infcall.c (run_inferior_call): Remove unused variable.
1966         * inferior.c (exit_inferior): Remove unused variable.
1967         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
1968         * linespec.c (decode_line_2): Remove unused variable.
1969         * linux-nat.c (super_close): Remove.
1970         * linux-tdep.c (linux_info_proc): Remove unused variable.
1971         * mi/mi-main.c (mi_execute_command): Remove unused variable.
1972         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
1973         Remove unused variable.
1974         * parse.c (find_minsym_type_and_address): Remove unused variable.
1975         * printcmd.c (info_symbol_command, printf_floating): Remove unused
1976         variable.
1977         * python/py-breakpoint.c (bppy_set_commands): Remove unused
1978         variable.
1979         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
1980         variables.
1981         * record-btrace.c (record_btrace_target::store_registers): Remove
1982         unused variable.
1983         (cmd_show_record_btrace_cpu): Remove unused variable.
1984         * riscv-tdep.c (riscv_register_reggroup_p)
1985         (riscv_push_dummy_call, riscv_return_value): Remove unused
1986         variable.
1987         * rust-exp.y (literal): Remove unused variable.
1988         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
1989         unused variable.
1990         <STRUCTOP_ANONYMOUS>: Likewise.
1991         * s390-linux-tdep.c (s390_linux_init_abi_31)
1992         (s390_linux_init_abi_64): Remove unused variable.
1993         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
1994         (file_select_thread, net_windows_open, _initialize_ser_windows):
1995         Remove unused variables.
1996         * symtab.c (find_pc_sect_line): Remove unused variable.
1997         * target-memory.c (compute_garbled_blocks): Remove unused
1998         variable.
1999         (target_write_memory_blocks): Remove unused variable.
2000         * target.c (target_stack::unpush): Remove unused variables.
2001         * tracepoint.c (start_tracing, all_tracepoint_actions)
2002         (merge_uploaded_trace_state_variables)
2003         (print_one_static_tracepoint_marker): Remove unused variable.
2004         * unittests/basic_string_view/element_access/char/1.cc (test01):
2005         Remove unused variable.
2006         * windows-nat.c (windows_continue, windows_add_all_dlls)
2007         (do_initial_windows_stuff, windows_nat_target::create_inferior):
2008         Remove unused variables.
2009
2010 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
2011
2012         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
2013         attr_profile in HAVE_ELF.
2014         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
2015         HAVE_ELF.
2016
2017 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
2018
2019         * frame.c (frame_register_unwind): Change parameter name.
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.h (frame_register_unwind): Likewise.
2025         (frame_unwind_register): Likewise.
2026         (frame_unwind_register_value): Likewise.
2027         (frame_unwind_register_signed): Likewise.
2028         (frame_unwind_register_unsigned): Likewise.
2029         (frame_unwind_arch): Likewise.
2030
2031 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
2032
2033         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
2034         ISA maintenance.
2035
2036 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
2037
2038         * mips-linux-nat.c (mips_linux_nat_target::read_description):
2039         Call `get_ptrace_pid' rather than extracting the ptrace PID by
2040         hand.
2041
2042 2018-07-20  Keith Seitz  <keiths@redhat.com>
2043
2044         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
2045         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
2046         m_compunit_symtab, m_language>: Add "m_" prefix.
2047         Update all uses.
2048         * buildsym.c: Update all uses.
2049
2050 2018-07-20  Tom Tromey  <tom@tromey.com>
2051
2052         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
2053         * buildsym.h (record_line_ftype): Remove typedef.
2054
2055 2018-07-20  Tom Tromey  <tom@tromey.com>
2056
2057         * buildsym-legacy.h (augment_type_symtab): Don't declare.
2058         (end_expandable_symtab): Likewise.
2059         (end_symtab_get_static_block): Likewise.
2060         (end_symtab_from_static_block): Likewise.
2061         * buildsym-legacy.c (augment_type_symtab): Remove.
2062         (end_expandable_symtab): Remove.
2063         (end_symtab_get_static_block): Remove.
2064         (end_symtab_from_static_block): Remove.
2065
2066 2018-07-20  Tom Tromey  <tom@tromey.com>
2067
2068         * dwarf2read.c: Include buildsym.h.
2069         (struct dwarf2_cu) <builder>: New method.
2070         (fixup_go_packaging): Update.
2071         (process_full_comp_unit, process_full_type_unit): Update.  Don't
2072         use scoped_free_pendings.
2073         (using_directives): Add "cu" parameter, remove "language".
2074         (read_import_statement, setup_type_unit_groups, )
2075         (read_func_scope, read_lexical_block_scope)
2076         (dwarf2_record_block_ranges, read_namespace): Update.
2077         (lnp_state_machine::lnp_state_machine): Add cu parameter.
2078         (lnp_state_machine::handle_end_sequence): Update.
2079         (class lnp_state_machine) <m_cu>: New member.
2080         <m_record_line_callback>: Remove.
2081         <m_currently_recording_lines>: New member.
2082         (lnp_state_machine::handle_set_file): Update.
2083         (noop_record_line): Remove.
2084         (dwarf_record_line_p): Add cu parameter.
2085         (dwarf_record_line_1, dwarf_finish_line): Likewise.
2086         (lnp_state_machine::record_line)
2087         (lnp_state_machine::lnp_state_machine)
2088         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
2089         (dwarf_decode_lines): Update.
2090         (dwarf2_start_subfile): Add cu parameter.
2091         (dwarf2_start_symtab, new_symbol): Update.
2092         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
2093         Remove dwarf2_per_objfile parameter.
2094         (dwarf_decode_macros): Update.
2095
2096 2018-07-20  Tom Tromey  <tom@tromey.com>
2097
2098         * stabsread.c (define_symbol): Update.
2099         * buildsym-legacy.h (get_buildsym_compunit): Declare.
2100         * dwarf2read.c (new_symbol): Update.
2101         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
2102         * cp-namespace.c: Include buildsym.h.
2103         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
2104         * buildsym-legacy.c (get_buildsym_compunit): New function.
2105
2106 2018-07-20  Tom Tromey  <tom@tromey.com>
2107
2108         * xcoffread.c: Include buildsym-legacy.h.
2109         * windows-nat.c: Include buildsym-legacy.h.
2110         * stabsread.c: Include buildsym-legacy.h.
2111         * mdebugread.c: Include buildsym-legacy.h.
2112         * buildsym-legacy.h: New file.
2113         * buildsym-legacy.c: New file, from buildsym.c.
2114         * go32-nat.c: Include buildsym-legacy.h.
2115         * dwarf2read.c: Include buildsym-legacy.h.
2116         * dbxread.c: Include buildsym-legacy.h.
2117         * cp-namespace.c: Include buildsym-legacy.h.
2118         * coffread.c: Include buildsym-legacy.h.
2119         * buildsym.h: Move some contents to buildsym-legacy.h.
2120         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
2121         buildsym-legacy.c.
2122         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
2123
2124 2018-07-20  Tom Tromey  <tom@tromey.com>
2125
2126         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
2127         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
2128         (buildsym_compunit::buildsym_compunit)
2129         (buildsym_compunit::~buildsym_compunit)
2130         (buildsym_compunit::get_macro_table): Define.
2131
2132 2018-07-20  Tom Tromey  <tom@tromey.com>
2133
2134         * buildsym.c (reset_symtab_globals): Remove.
2135         (buildsym_compunit::end_symtab_from_static_block): Update.
2136         (buildsym_compunit::augment_type_symtab): Update.
2137         (end_symtab_from_static_block): Call free_buildsym_compunit.
2138         (augment_type_symtab, end_symtab, end_expandable_symtab):
2139         Likewise.
2140
2141 2018-07-20  Tom Tromey  <tom@tromey.com>
2142
2143         * arch-utils.c: Do not include buildsym.h.
2144         * mipsread.c: Do not include buildsym.h.
2145         * machoread.c: Do not include buildsym.h.
2146         * elfread.c: Do not include buildsym.h.
2147
2148 2018-07-20  Tom Tromey  <tom@tromey.com>
2149
2150         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
2151         initialization.
2152         (buildsym_compunit): Add new constructor.
2153         (struct buildsym_compunit) <get_last_source_file, finish_block,
2154         record_block_range, start_subfile, patch_subfile_names,
2155         push_subfile, pop_subfile, record_line, get_compunit_symtab,
2156         set_last_source_start_addr, get_last_source_start_addr,
2157         get_local_using_directives, set_local_using_directives,
2158         get_global_using_directives, outermost_context_p,
2159         get_current_context_stack, get_context_stack_depth,
2160         get_current_subfile, get_local_symbols, get_file_symbols,
2161         get_global_symbols, record_debugformat, record_producer,
2162         push_context, pop_context, end_symtab_get_static_block,
2163         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
2164         New public methods.
2165         <record_pending_block, finish_block_internal, make_blockvector,
2166         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
2167         private methods.
2168         Update all users.
2169
2170 2018-05-22  Tom Tromey  <tom@tromey.com>
2171
2172         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
2173         parameter.
2174         (finish_block_internal): Update.
2175
2176 2018-07-20  Tom Tromey  <tom@tromey.com>
2177
2178         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
2179         parameter.
2180         (finish_block_internal): Update.
2181
2182 2018-07-20  Tom Tromey  <tom@tromey.com>
2183
2184         * buildsym.h (EXTERN): Don't define or undef.
2185         * buildsym.c (EXTERN): Don't define.
2186
2187 2018-07-20  Tom Tromey  <tom@tromey.com>
2188
2189         * buildsym.c: Remove TODO comment.
2190
2191 2018-07-20  Tom Tromey  <tom@tromey.com>
2192
2193         * coffread.c (coff_symtab_read): Update.
2194         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
2195         (xcoff_new_init): Update.
2196         * mipsread.c (mipscoff_new_init): Update.
2197         * mdebugread.c (mdebug_build_psymtabs): Update.
2198         * elfread.c (elf_new_init): Update.
2199         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
2200         Update.
2201         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
2202         (coffstab_build_psymtabs, elfstab_build_psymtabs)
2203         (stabsect_build_psymtabs): Update.
2204         * buildsym.h (buildsym_init): Don't declare.
2205         * buildsym.c: Update comment.
2206         (prepare_for_building): Remove.
2207         (start_symtab, restart_symtab): Update.
2208         (reset_symtab_globals): Update comment.
2209         (buildsym_init): Remove.
2210
2211 2018-07-20  Tom Tromey  <tom@tromey.com>
2212
2213         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
2214         * stabsread.c (patch_block_stabs, define_symbol, read_type)
2215         (read_enum_type, common_block_start, common_block_end)
2216         (cleanup_undefined_types_1, finish_global_stabs): Update.
2217         * mdebugread.c (psymtab_to_symtab_1): Update.
2218         * dwarf2read.c (fixup_go_packaging, read_func_scope)
2219         (read_lexical_block_scope, new_symbol): Update.
2220         * dbxread.c (process_one_symbol): Update.
2221         * coffread.c (coff_symtab_read, process_coff_symbol)
2222         (coff_read_enum_type): Update.
2223         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
2224         declare.
2225         (get_local_symbols, get_file_symbols, get_global_symbols): New
2226         functions.
2227         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
2228         m_global_symbols.
2229         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
2230         (~scoped_free_pendings): Update.
2231         (finish_block, prepare_for_building, reset_symtab_globals)
2232         (end_symtab_get_static_block, end_symtab_with_blockvector)
2233         (augment_type_symtab, push_context): Update.
2234         (get_local_symbols, get_file_symbols, get_global_symbols): New
2235         functions.
2236         (buildsym_init): Update.
2237
2238 2018-07-20  Tom Tromey  <tom@tromey.com>
2239
2240         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
2241         (process_full_type_unit): Likewise.
2242         (dwarf2_start_symtab): Set list_in_scope.
2243
2244 2018-07-20  Tom Tromey  <tom@tromey.com>
2245
2246         * dwarf2read.c (process_psymtab_comp_unit_reader)
2247         (build_type_psymtabs_reader): Do not set list_in_scope.
2248
2249 2018-07-20  Tom Tromey  <tom@tromey.com>
2250
2251         * buildsym.c (free_pendings): Remove.
2252         (add_symbol_to_list, scoped_free_pendings)
2253         (finish_block_internal, buildsym_init): Update.
2254
2255 2018-07-20  Tom Tromey  <tom@tromey.com>
2256
2257         * xcoffread.c (read_xcoff_symtab): Update.
2258         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
2259         Update.
2260         * dbxread.c (process_one_symbol): Update.
2261         * coffread.c (coff_symtab_read): Update.
2262         * buildsym.h (finish_block): Update.
2263         * buildsym.c (finish_block): Remove "listhead" argument.
2264         (end_symtab_get_static_block): Update.
2265
2266 2018-07-20  Tom Tromey  <tom@tromey.com>
2267
2268         * buildsym.h (class scoped_free_pendings): Remove constructor.
2269         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
2270         method.
2271         <m_pending_block_obstack, m_pending_blocks>: New members.
2272         (pending_block_obstack, pending_blocks): Remove.
2273         (scoped_free_pendings::scoped_free_pendings): Default.
2274         (~scoped_free_pendings): Update.
2275         (free_pending_blocks): Remove.
2276         (finish_block_internal, record_pending_block, make_blockvector)
2277         (end_symtab_get_static_block, augment_type_symtab, push_context)
2278         (buildsym_init): Update.
2279
2280 2018-07-20  Tom Tromey  <tom@tromey.com>
2281
2282         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
2283         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
2284         members.
2285         (pending_addrmap, pending_addrmap_obstack)
2286         (pending_addrmap_interesting): Remove.
2287         (scoped_free_pendings, record_block_range, make_blockvector)
2288         (prepare_for_building, reset_symtab_globals, buildsym_init):
2289         Update.
2290
2291 2018-07-20  Tom Tromey  <tom@tromey.com>
2292
2293         * xcoffread.c (process_linenos): Update.
2294         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
2295         * mdebugread.c (psymtab_to_symtab_1): Update.
2296         * dwarf2read.c (setup_type_unit_groups)
2297         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
2298         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
2299         * dbxread.c (process_one_symbol): Update.
2300         * coffread.c (coff_symtab_read, enter_linenos)
2301         (process_coff_symbol): Update.
2302         * buildsym.h (current_subfile): Don't declare.
2303         (get_current_subfile): Declare.
2304         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
2305         member.
2306         (start_subfile, free_buildsym_compunit, push_subfile)
2307         (prepare_for_building, start_symtab): Update.
2308         (get_current_subfile): New function.
2309
2310 2018-07-20  Tom Tromey  <tom@tromey.com>
2311
2312         * coffread.c (coff_symtab_read): Update.
2313         * xcoffread.c (read_xcoff_symtab): Update.
2314         * dwarf2read.c (new_symbol): Update.
2315         (read_func_scope, read_lexical_block_scope): Update.
2316         * dbxread.c (process_one_symbol): Update.
2317         * buildsym.h (context_stack, context_stack_depth): Don't declare.
2318         (outermost_context_p): Remove macro.
2319         (outermost_context_p, get_current_context_stack)
2320         (get_context_stack_depth): Declare.
2321         (pop_context): Return struct context_stack.
2322         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
2323         member.
2324         (context_stack_size): Remove.
2325         (INITIAL_CONTEXT_STACK_SIZE): Remove.
2326         (prepare_for_building, end_symtab_get_static_block)
2327         (augment_type_symtab, push_context): Update.
2328         (pop_context): Return struct context_stack.
2329         (outermost_context_p, get_current_context_stack)
2330         (get_context_stack_depth): New functions.
2331         (buildsym_init): Update.
2332
2333 2018-07-20  Tom Tromey  <tom@tromey.com>
2334
2335         * rust-exp.y: Now a pure parser.  Update all rules.
2336         (%union): Move earlier.
2337         (current_parser, work_obstack): Remove globals.
2338         (rust_parser, ~rust_parser): Update.
2339         (class rust_parser) <copy_name, concat3, crate_name, super_name,
2340         lex_character, lex_number, lex_string, lex_identifier,
2341         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
2342         convert_name, convert_params_to_expression,
2343         convert_ast_to_expression, ast_basic_type, ast_operation,
2344         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
2345         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
2346         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
2347         ast_array_type, ast_slice_type, ast_reference_type,
2348         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
2349         (rust_parse): Update.
2350         (rustyyerror, rustyylex): Add parser parameter.
2351         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
2352         (rust_lex_stringish_test, rust_lex_test_sequence)
2353         (rust_lex_test_trailing_dot, rust_lex_test_completion)
2354         (rust_lex_test_push_back, rust_lex_tests): Update.
2355
2356 2018-07-19  Pedro Alves  <palves@redhat.com>
2357
2358         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
2359         gdb::unique_xmalloc_ptr.
2360         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
2361         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
2362         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
2363         copy-initialization.
2364         * guile/scm-pretty-print.c (ppscm_print_children): Use
2365         gdb::unique_xmalloc_ptr instead of cleanups.
2366         (gdbscm_apply_val_pretty_printer): Remove cleanups.
2367         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
2368         gdb::unique_xmalloc_ptr.
2369         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
2370         Adjust to use gdb::unique_xmalloc_ptr.
2371         * guile/scm-utils.c (extract_arg): Adjust.
2372         * guile/scm-value.c (gdbscm_value_field): Adjust to use
2373         gdb::unique_xmalloc_ptr instead of a cleanup.
2374
2375 2018-07-19  Tom Tromey  <tom@tromey.com>
2376
2377         * utils.c (do_value_free_to_mark)
2378         (make_cleanup_value_free_to_mark): Remove.
2379         * utils.h (make_cleanup_value_free_to_mark): Remove.
2380
2381 2018-07-19  Pedro Alves  <palves@redhat.com>
2382
2383         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
2384         forwarding reference.
2385
2386 2018-07-18  Pedro Alves  <palves@redhat.com>
2387
2388         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
2389         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
2390         cleanup.
2391
2392 2018-07-18  Pedro Alves  <palves@redhat.com>
2393
2394         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
2395         exceptions.
2396         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
2397         (gdbscm_wrap): New.
2398         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
2399         directly instead of a cleanup.
2400         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
2401         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
2402         (vlscm_binop_gdbthrow): New, factored out from ...
2403         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
2404         (vlscm_rich_compare): Use gdbscm_wrap.
2405         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
2406         instead of a cleanup.
2407         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
2408         cleanup.
2409         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
2410         Use xfree directly instead of a cleanup.
2411         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
2412         Adjust to use gdbscm_wrap and scoped_value_mark.
2413         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
2414         (gdbscm_value_address, gdbscm_value_dereference)
2415         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
2416         scoped_value_mark.
2417         (gdbscm_value_dynamic_type): Use scoped_value_mark.
2418         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
2419         scoped_value_mark.
2420         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
2421         gdbscm_wrap and scoped_value_mark.
2422         (gdbscm_value_to_string): Use xfree directly instead of a
2423         cleanup.  Move 'buffer' unique_ptr to TRY scope.
2424         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
2425         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
2426         scoped_value_mark.
2427         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
2428         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
2429         scoped_value_mark.
2430         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
2431         gdbscm_wrap.
2432
2433 2018-07-18  Tom de Vries  <tdevries@suse.de>
2434
2435         * findvar.c (default_read_var_value): Also resolve dynamic type for
2436         LOC_OPTIMIZED_OUT vars.
2437
2438 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
2439
2440         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
2441         decoding.
2442
2443 2018-07-17  Tom Tromey  <tom@tromey.com>
2444
2445         * guile/scm-param.c (pascm_set_func, pascm_show_func)
2446         (compute_enum_list, pascm_set_param_value_x)
2447         (gdbscm_parameter_value): Update.
2448         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
2449         (gdbscm_scm_to_host_string): Update.
2450         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
2451         Update.
2452         * guile/scm-cmd.c (cmdscm_add_completion): Update.
2453         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
2454         * guile/scm-string.c (gdbscm_scm_to_string): Return
2455         unique_xmalloc_ptr.
2456         (gdbscm_scm_to_host_string): Likewise.
2457
2458 2018-07-17  Tom Tromey  <tom@tromey.com>
2459
2460         * guile/guile.c (gdbscm_eval_from_control_command): Update.
2461         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
2462         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
2463         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
2464         unique_xmalloc_ptr.
2465
2466 2018-07-17  Tom Tromey  <tom@tromey.com>
2467
2468         * guile/scm-param.c (pascm_signal_setshow_error): Update.
2469         * guile/guile-internal.h (gdbscm_exception_message_to_string):
2470         Update.
2471         * guile/scm-cmd.c (cmdscm_function): Update.
2472         * guile/scm-pretty-print.c
2473         (ppscm_print_exception_unless_memory_error): Update.
2474         * guile/scm-exception.c (gdbscm_exception_message_to_string):
2475         Return unique_xmalloc_ptr.
2476
2477 2018-07-17  Tom Tromey  <tom@tromey.com>
2478
2479         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
2480         Use string_printf.
2481
2482 2018-07-17  Jim Wilson  <jimw@sifive.com>
2483
2484         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
2485         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
2486         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
2487         unecessary braces after EF_RISCV_RVC test.  Delete call to
2488         set_gdbarch_decr_pc_after_break.
2489
2490         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
2491         RISCV_LAST_FP_REGNUM + 1.
2492         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
2493
2494 2018-07-17  Tom Tromey  <tom@tromey.com>
2495
2496         * configure.ac: Remove --disable-gdbcli.
2497         * configure: Rebuild.
2498         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
2499         (SUBDIR_CLI_CFLAGS): Remove.
2500         (SFILES): Use SUBDIR_CLI_SRCS.
2501         (COMMON_OBS): Use SUBDIR_CLI_OBS.
2502
2503 2018-07-17  Tom Tromey  <tom@tromey.com>
2504
2505         PR gdb/18624:
2506         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
2507
2508 2018-07-16  Jim Wilson  <jimw@sifive.com>
2509
2510         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
2511
2512 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
2513
2514         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
2515         variable.
2516         (libunwind_frame_sniffer): Likewise.
2517         (libunwind_frame_prev_register): Likewise.
2518         (libunwind_sigtramp_frame_sniffer): Likewise.
2519         * ia64-tdep.c (ia64_access_reg): Likewise.
2520         (ia64_access_rse_reg): Likewise.
2521         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
2522         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
2523
2524 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
2525
2526         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
2527
2528 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
2529
2530         * remote-sim.c (gdbsim_target::close,
2531         gdbsim_target::mourn_inferior): Remove unused variables.
2532
2533 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
2534
2535         * ia64-tdep.c (ktab_buf): New global.
2536         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
2537         (get_kernel_table): Adjust.
2538
2539 2018-07-16  Tom Tromey  <tom@tromey.com>
2540
2541         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
2542         * dwarf2read.c (using_directives, new_symbol): Use
2543         outermost_context_p.
2544         * dbxread.c (process_one_symbol): Use outermost_context_p.
2545         * coffread.c (coff_symtab_read): Use outermost_context_p.
2546
2547 2018-07-16  Tom Tromey  <tom@tromey.com>
2548
2549         * dwarf2read.c (using_directives, read_func_scope)
2550         (read_lexical_block_scope): Update.
2551         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
2552         * buildsym.h (local_using_directives, global_using_directives):
2553         Don't declare.
2554         (get_local_using_directives, set_local_using_directives)
2555         (get_global_using_directives): Declare.
2556         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
2557         m_global_using_directives>: New members.
2558         (finish_block_internal, prepare_for_building)
2559         (reset_symtab_globals, end_symtab_get_static_block)
2560         (push_context): Update.
2561         (get_local_using_directives, set_local_using_directives)
2562         (get_global_using_directives): New functions.
2563         (buildsym_init): Update.
2564
2565 2018-07-16  Tom Tromey  <tom@tromey.com>
2566
2567         * xcoffread.c (xcoff_initial_scan): Don't call
2568         free_pending_blocks.
2569         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
2570         * buildsym.h (class scoped_free_pendings): Add constructor.
2571         (free_pending_blocks): Don't declare.
2572         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
2573         (free_pending_blocks): Now static.
2574
2575 2018-07-16  Tom Tromey  <tom@tromey.com>
2576
2577         * buildsym.h (push_subfile, pop_subfile): Update declarations.
2578         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
2579         member.
2580         (struct subfile_stack): Remove.
2581         (subfile_stack): Remove.
2582         (push_subfile, pop_subfile, buildsym_init): Update.
2583
2584 2018-07-16  Tom Tromey  <tom@tromey.com>
2585
2586         * buildsym.c (push_subfile): Use gdb_assert.
2587         (pop_subfile): Use gdb_assert.
2588
2589 2018-07-16  Tom Tromey  <tom@tromey.com>
2590
2591         * buildsym.h (merge_symbol_lists): Remove.
2592         * buildsym.c (merge_symbol_lists): Remove.
2593
2594 2018-07-16  Tom Tromey  <tom@tromey.com>
2595
2596         * stabsread.c (scan_file_globals): Update comment.
2597         * stabsread.h (scan_file_globals): Move from buildsym.h.
2598         * buildsym.h (scan_file_globals): Move to stabsread.h.
2599
2600 2018-07-16  Tom Tromey  <tom@tromey.com>
2601
2602         * xcoffread.c (xcoff_new_init): Update.
2603         * mipsread.c (mipscoff_new_init): Update.
2604         * mdebugread.c (mdebug_build_psymtabs): Update.
2605         * elfread.c (elf_new_init): Update.
2606         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
2607         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
2608         * buildsym.h (buildsym_new_init): Don't declare.
2609         * buildsym.c (buildsym_new_init): Remove.
2610
2611 2018-07-16  Tom Tromey  <tom@tromey.com>
2612
2613         * stabsread.h (within_function): Move from buildsym.h.
2614         * stabsread.c (start_stabs): Clear within_function.
2615         * coffread.c (coff_start_symtab): Clear within_function.
2616         * buildsym.h (within_function): Move to stabsread.h.
2617         * buildsym.c (prepare_for_building): Update.
2618
2619 2018-07-16  Tom Tromey  <tom@tromey.com>
2620
2621         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
2622         * dwarf2read.c (dwarf2_start_symtab): Don't set
2623         processing_gcc_compilation.
2624         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
2625
2626 2018-07-16  Tom Tromey  <tom@tromey.com>
2627
2628         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
2629         (next_symbol_text_func): Move from buildsym.h.
2630         * stabsread.c (hashname): Move from buildsym.c.
2631         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
2632         (next_symbol_text_func, hashname): Move to stabsread.h.
2633         * buildsym.c: Don't include bcache.h
2634         (hashname): Move to stasbread.c.
2635
2636 2018-07-16  Tom Tromey  <tom@tromey.com>
2637
2638         * buildsym.h (context_stack_size): Don't declare.
2639         * buildsym.c (context_stack_size): New global.
2640
2641 2018-07-16  Tom Tromey  <tom@tromey.com>
2642
2643         * dbxread.c (processing_acc_compilation): New global.
2644         * buildsym.h (processing_acc_compilation): Don't declare.
2645
2646 2018-07-16  Tom Tromey  <tom@tromey.com>
2647
2648         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
2649         * dbxread.c (read_ofile_symtab): Update.
2650         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
2651         * buildsym.h (last_source_start_addr): Remove.
2652         (set_last_source_start_addr, get_last_source_start_addr):
2653         Declare.
2654         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
2655         parameter.
2656         (struct buildsym_compunit) <m_last_source_start_addr>: New
2657         member.
2658         (prepare_for_building): Remove start_addr parameter.
2659         (start_symtab, restart_symtab, end_symtab_get_static_block)
2660         (end_symtab_with_blockvector): Update.
2661         (set_last_source_start_addr, get_last_source_start_addr): New
2662         functions.
2663
2664 2018-07-16  Tom Tromey  <tom@tromey.com>
2665
2666         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
2667         member.
2668         (have_line_numbers): Remove.
2669         (record_line, prepare_for_building, end_symtab_get_static_block)
2670         (augment_type_symtab): Update.
2671
2672 2018-07-16  Tom Tromey  <tom@tromey.com>
2673
2674         * buildsym.c (~buildsym_compunit): Free the macro table.
2675         (struct buildsym_compunit) <get_macro_table, release_macros>: New
2676         methods.
2677         <m_pending_macros>: New member.
2678         (pending_macros): Remove.
2679         (~scoped_free_pendings, get_macro_table, prepare_for_building)
2680         (reset_symtab_globals, end_symtab_get_static_block)
2681         (end_symtab_with_blockvector, augment_type_symtab)
2682         (buildsym_init): Update.
2683
2684 2018-07-16  Tom Tromey  <tom@tromey.com>
2685
2686         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
2687         parameter.
2688         (buildsym_compunit::set_last_source_file): New method.
2689         <m_last_source_file>: New member.
2690         (prepare_for_building): Remove "name" parameter.
2691         (start_symtab, restart_symtab, reset_symtab_globals): Update.
2692         (last_source_file): Remove.
2693         (set_last_source_file, get_last_source_file): Update.
2694
2695 2018-07-16  Tom Tromey  <tom@tromey.com>
2696
2697         * buildsym.c (prepare_for_building): Add assert.
2698
2699 2018-07-16  Tom Tromey  <tom@tromey.com>
2700
2701         * buildsym.c (~buildsym_compunit): Update.
2702         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
2703         (start_subfile, patch_subfile_names)
2704         (end_symtab_with_blockvector): Update.
2705
2706 2018-07-16  Tom Tromey  <tom@tromey.com>
2707
2708         * buildsym.c (struct buildsym_compunit): Add constructor,
2709         destructor, initializers.
2710         (start_buildsym_compunit): Remove.
2711         (free_buildsym_compunit): Use "delete".
2712         (start_symtab, restart_symtab): Use "new".
2713
2714 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
2715
2716         * symfile.c (set_objfile_default_section_offset): Remove struct
2717         keyword.
2718
2719 2018-07-14  Stafford Horne  <shorne@gmail.com>
2720
2721         * (Responsible Maintainers): Add myself as or1k maintainer.
2722
2723 2018-07-13  Tom Tromey  <tom@tromey.com>
2724
2725         * symfile.c (set_objfile_default_section_offset): Use extra braces
2726         around initializer.
2727
2728 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
2729
2730         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
2731         non-branching basr.
2732
2733 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2734
2735         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
2736         unittests/cli-utils-selftests.c
2737         * unittests/cli-utils-selftests.c: New file.
2738
2739 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2740
2741         * NEWS: Mention new commands. Mention change to 'thread apply'.
2742
2743 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2744
2745         * thread.c (thr_try_catch_cmd): New function.
2746         (thread_apply_all_command): Handle qcs flags.
2747         (thread_apply_command): Handle qcs flags.
2748         (taas_command): New function.
2749         (tfaas_command): New function.
2750         (_initialize_thread): Update to setup the new commands 'taas
2751         and 'tfaas'. Change doc string for 'thread apply'.
2752
2753 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2754
2755         * stack.c: (trailing_outermost_frame): New function, mostly
2756         extracted from backtrace_command_1.
2757         (leading_innermost_frame): New function.
2758         (backtrace_command_1): Update to call trailing_outermost_frame.
2759         (frame_apply_command_count): New function.
2760         (frame_apply_level_command): New function.
2761         (frame_apply_all_command): New function.
2762         (frame_apply_command): New function.
2763         (faas_command): New function.
2764         (frame_cmd_list): New variable.
2765         (_initialize_stack): Update to setup the new commands 'frame apply'
2766         and 'faas'.
2767
2768 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2769
2770         * cli-utils.c (number_or_range_parser::get_number): Only handle
2771         numbers or convenience var as numbers.
2772         (parse_flags): New function.
2773         (parse_flags_qcs): New function.
2774         (number_or_range_parser::finished): Ensure parsing end is detected
2775         before end of string.
2776         * cli-utils.h (parse_flags): New function.
2777         (parse_flags_qcs): New function.
2778         (number_or_range_parser): Remove m_finished bool.
2779         (number_or_range_parser::skip_range): Set m_in_range to false.
2780
2781 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
2782
2783         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
2784         on Windows.
2785
2786 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
2787             Jan Kratochvil  <jan.kratochvil@redhat.com>
2788             Paul Fertser  <fercerpav@gmail.com>
2789             Tsutomu Seki  <sekiriki@gmail.com>
2790             Pedro Alves  <palves@redhat.com>
2791
2792         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
2793         'unittests/parse-connection-spec-selftests.c'.
2794         (COMMON_SFILES): Add 'common/netstuff.c'.
2795         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
2796         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
2797         * common/netstuff.c: New file.
2798         * common/netstuff.h: New file.
2799         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
2800         (wait_for_connect): Update comment.  New parameter
2801         'gdb::optional<int> sock' instead of 'struct serial *scb'.
2802         Use 'sock' directly instead of 'scb->fd'.
2803         (try_connect): New function, with code from 'net_open'.
2804         (net_open): Rewrite main loop to deal with multiple
2805         sockets/addresses.  Handle IPv6-style hostnames; implement
2806         support for IPv6 connections.
2807         * unittests/parse-connection-spec-selftests.c: New file.
2808
2809 2018-07-11  Pedro Alves  <palves@redhat.com>
2810
2811         PR gdb/23377
2812         * remote.c (remote_target::remote_detach_pid): Call
2813         set_current_process.
2814
2815 2018-07-11  Pedro Alves  <palves@redhat.com>
2816
2817         * h8300-tdep.c (h8300_gdbarch_init): Remove
2818         set_gdbarch_ecoff_reg_to_regnum calls.
2819
2820 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
2821
2822         PR c++/23373
2823         * c-typeprint.c (c_type_print_base_struct_union): Don't print
2824         offsets/sizes for static members of a class/struct.
2825
2826 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
2827
2828         * target-descriptions.c (tdesc_register_bitsize): Rename.
2829         * target-descriptions.h (tdesc_register_bitsize): Likewise.
2830         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
2831         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
2832
2833 2018-07-10  Tom Tromey  <tom@tromey.com>
2834
2835         * breakpoint.c (moribund_locations): Now static and a
2836         std::vector.
2837         (breakpoint_init_inferior, moribund_breakpoint_here_p)
2838         (build_bpstat_chain, update_global_location_list)
2839         (breakpoint_retire_moribund): Update.
2840         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
2841         VEC.
2842
2843 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
2844
2845         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
2846         (riscv_register_reggroup_p): Use new function, remove unneeded
2847         parenthesis.
2848         (riscv_push_dummy_call): Extend assert to compare against xlen or
2849         flen based on register type.
2850
2851 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
2852
2853         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
2854
2855 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
2856
2857         * remote.c (show_hardware_watchpoint_limit): New function.
2858         (show_hardware_watchpoint_length_limit): New function.
2859         (show_hardware_breakpoint_limit): New function.
2860         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
2861         where appropriate, update help text.
2862
2863 2018-07-09  Tom Tromey  <tom@tromey.com>
2864
2865         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
2866         (CLIBS): Don't mention NAT_CLIBS.
2867
2868 2018-07-09  Tom Tromey  <tom@tromey.com>
2869
2870         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
2871         (LIBGDB_OBS, clean mostlyclean): Update.
2872         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
2873
2874 2018-07-09  Tom Tromey  <tom@tromey.com>
2875
2876         * Makefile.in (%.c: %.y): Use ECHO_YACC.
2877         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
2878         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
2879
2880 2018-07-09  Tom Tromey  <tom@tromey.com>
2881
2882         * Makefile.in (ALLDEPFILES): Remove exec.c.
2883         (COMMON_OBS): Remove exec.o.
2884         (COMMON_SFILES): Add exec.c.
2885
2886 2018-07-09  Tom Tromey  <tom@tromey.com>
2887
2888         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
2889
2890 2018-07-09  Tom Tromey  <tom@tromey.com>
2891
2892         * Makefile.in (clean mostlyclean): Remove stamp-version.
2893         (version.c): Depend on stamp-version.
2894         (stamp-version): New rule, from version.c rule.
2895
2896 2018-07-09  Tom Tromey  <tom@tromey.com>
2897
2898         * Makefile.in (init.c): Depend on stamp-init.
2899         (stamp-init): New rule, from init.c rule.
2900         (clean mostlyclean): Remove stamp-init.
2901
2902 2018-07-09  Tom Tromey  <tom@tromey.com>
2903
2904         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
2905         SUBDIR_GCC_COMPILE_SRCS.
2906
2907 2018-07-09  Tom Tromey  <tom@tromey.com>
2908
2909         * Makefile.in (init.c): Remove some unused sed rules.
2910
2911 2018-07-09  Tom Tromey  <tom@tromey.com>
2912
2913         * Makefile.in (TSOBS): Remove.
2914         (INIT_FILES): Update.
2915         (LIBGDB_OBS): Update.
2916         (COMMON_SFILES): Add inflow.c.
2917         (SFILES): Remove inflow.c.
2918
2919 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
2920
2921         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
2922
2923 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
2924
2925         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
2926         get_saveloc_name, is_signal_frame_name, step_name,
2927         init_remote_name, create_addr_space_name,
2928         destroy_addr_space_name, search_unwind_table_name,
2929         find_dyn_list_name): Constify.
2930
2931 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
2932
2933         * darwin-nat.c (darwin_pthread_kill): New function.
2934         (darwin_resume_thread): Use darwin_pthread_kill.
2935
2936 2018-07-05  Tom de Vries  <tdevries@suse.de>
2937
2938         * macroexp.c (macro_buffer) <operator=>: New member function.
2939
2940 2018-07-04  Tom Tromey  <tom@tromey.com>
2941
2942         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
2943
2944 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
2945
2946         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
2947         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
2948         * maint.c: Likewise.
2949         * top.c: Likewise.
2950
2951 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
2952
2953         * NEWS: Create a new section for the next release branch.
2954         Rename the section of the current branch, now that it has
2955         been cut.
2956
2957 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
2958
2959         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
2960         * version.in: Bump version to 8.2.50.DATE-git.
2961
2962 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
2963             Pedro Alves  <palves@redhat.com>
2964
2965         * linux-nat.c (linux_init_ptrace): Rename to ...
2966         (linux_init_ptrace_procfs): ... this.  Call
2967         linux_proc_init_warnings.
2968         (linux_nat_target::post_attach)
2969         (linux_nat_target::post_startup_inferior): Adjust.
2970         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
2971         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
2972
2973 2018-07-04  Tom de Vries  <tdevries@suse.de>
2974
2975         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
2976         check ...
2977         (read_comp_unit_head): ... here.
2978
2979 2018-07-03  Tom Tromey  <tom@tromey.com>
2980
2981         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
2982         (stop_tracing, tstatus_command)
2983         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
2984         (print_one_static_tracepoint_marker): Update.
2985         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
2986         std::vector.
2987         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
2988         VEC.
2989         (all_tracepoints, static_tracepoints_here): Return std::vector.
2990
2991 2018-07-03  Tom Tromey  <tom@tromey.com>
2992
2993         * common/ptid.c (ptid_equal): Remove.
2994         * common/ptid.h (ptid_equal): Don't declare.
2995         * ada-tasks.c: Update.
2996         * breakpoint.c: Update.
2997         * common/agent.c: Update.
2998         * corelow.c: Update.
2999         * darwin-nat-info.c: Update.
3000         * darwin-nat.c: Update.
3001         * dcache.c: Update.
3002         * dtrace-probe.c: Update.
3003         * dummy-frame.c: Update.
3004         * fbsd-nat.c: Update.
3005         * frame.c: Update.
3006         * gdbthread.h: Update.
3007         * gnu-nat.c: Update.
3008         * go32-nat.c: Update.
3009         * inf-loop.c: Update.
3010         * inf-ptrace.c: Update.
3011         * infcall.c: Update.
3012         * infcmd.c: Update.
3013         * inflow.c: Update.
3014         * infrun.c: Update.
3015         * linux-fork.c: Update.
3016         * linux-nat.c: Update.
3017         * linux-thread-db.c: Update.
3018         * mi/mi-cmd-var.c: Update.
3019         * mi/mi-interp.c: Update.
3020         * mi/mi-main.c: Update.
3021         * nto-procfs.c: Update.
3022         * ppc-linux-tdep.c: Update.
3023         * procfs.c: Update.
3024         * python/py-inferior.c: Update.
3025         * python/py-record-btrace.c: Update.
3026         * python/py-record.c: Update.
3027         * ravenscar-thread.c: Update.
3028         * regcache.c: Update.
3029         * remote-sim.c: Update.
3030         * remote.c: Update.
3031         * sol-thread.c: Update.
3032         * solib.c: Update.
3033         * target.c: Update.
3034         * tui/tui-stack.c: Update.
3035         * varobj.c: Update.
3036         * windows-nat.c: Update.
3037         * windows-tdep.c: Update.
3038
3039 2018-07-03  Tom Tromey  <tom@tromey.com>
3040
3041         * common/ptid.c (ptid_match): Remove.
3042         * common/ptid.h (ptid_match): Don't declare.
3043         * fbsd-nat.c: Update.
3044         * infcmd.c: Update.
3045         * infrun.c: Update.
3046         * linux-nat.c: Update.
3047         * record-btrace.c: Update.
3048         * regcache.c: Update.
3049         * remote.c: Update.
3050
3051 2018-07-03  Tom Tromey  <tom@tromey.com>
3052
3053         * common/ptid.c (ptid_tid_p): Remove.
3054         * common/ptid.h (ptid_tid_p): Don't declare.
3055         * sol-thread.c: Update.
3056
3057 2018-07-03  Tom Tromey  <tom@tromey.com>
3058
3059         * common/ptid.c (ptid_lwp_p): Remove.
3060         * common/ptid.h (ptid_lwp_p): Don't declare.
3061         * fbsd-nat.c: Update.
3062         * linux-nat.c: Update.
3063         * nat/linux-procfs.c: Update.
3064         * nat/x86-linux-dregs.c: Update.
3065         * sol-thread.c: Update.
3066
3067 2018-07-03  Tom Tromey  <tom@tromey.com>
3068
3069         * common/ptid.c (ptid_is_pid): Remove.
3070         * common/ptid.h (ptid_is_pid): Don't declare.
3071         * infrun.c: Update.
3072         * linux-nat.c: Update.
3073         * mi/mi-interp.c: Update.
3074         * remote.c: Update.
3075         * thread.c: Update.
3076
3077 2018-07-03  Tom Tromey  <tom@tromey.com>
3078
3079         * common/ptid.c (ptid_get_tid): Remove.
3080         * common/ptid.h (ptid_get_tid): Don't declare.
3081         * ada-tasks.c: Update.
3082         * aix-thread.c: Update.
3083         * bsd-uthread.c: Update.
3084         * darwin-nat.c: Update.
3085         * fbsd-nat.c: Update.
3086         * i386-darwin-nat.c: Update.
3087         * infrun.c: Update.
3088         * linux-tdep.c: Update.
3089         * nto-procfs.c: Update.
3090         * ppc-ravenscar-thread.c: Update.
3091         * python/py-infthread.c: Update.
3092         * ravenscar-thread.c: Update.
3093         * sol-thread.c: Update.
3094         * sparc-ravenscar-thread.c: Update.
3095         * windows-nat.c: Update.
3096
3097 2018-07-03  Tom Tromey  <tom@tromey.com>
3098
3099         * common/ptid.c (ptid_get_lwp): Remove.
3100         * common/ptid.h (ptid_get_lwp): Don't declare.
3101         * aarch64-linux-nat.c: Update.
3102         * ada-tasks.c: Update.
3103         * aix-thread.c: Update.
3104         * amd64-linux-nat.c: Update.
3105         * arm-linux-nat.c: Update.
3106         * corelow.c: Update.
3107         * fbsd-nat.c: Update.
3108         * fbsd-tdep.c: Update.
3109         * gnu-nat.c: Update.
3110         * i386-cygwin-tdep.c: Update.
3111         * i386-gnu-nat.c: Update.
3112         * i386-linux-nat.c: Update.
3113         * ia64-linux-nat.c: Update.
3114         * inf-ptrace.c: Update.
3115         * infrun.c: Update.
3116         * linux-fork.c: Update.
3117         * linux-nat.c: Update.
3118         * linux-tdep.c: Update.
3119         * linux-thread-db.c: Update.
3120         * mips-linux-nat.c: Update.
3121         * nat/aarch64-linux-hw-point.c: Update.
3122         * nat/aarch64-linux.c: Update.
3123         * nat/linux-btrace.c: Update.
3124         * nat/linux-osdata.c: Update.
3125         * nat/linux-procfs.c: Update.
3126         * nat/x86-linux-dregs.c: Update.
3127         * obsd-nat.c: Update.
3128         * ppc-fbsd-nat.c: Update.
3129         * ppc-linux-nat.c: Update.
3130         * procfs.c: Update.
3131         * python/py-infthread.c: Update.
3132         * ravenscar-thread.c: Update.
3133         * remote.c: Update.
3134         * s390-linux-nat.c: Update.
3135         * sol-thread.c: Update.
3136         * sol2-tdep.c: Update.
3137         * spu-linux-nat.c: Update.
3138         * x86-linux-nat.c: Update.
3139         * xtensa-linux-nat.c: Update.
3140
3141 2018-07-03  Tom Tromey  <tom@tromey.com>
3142
3143         * common/ptid.c (ptid_get_pid): Remove.
3144         * common/ptid.h (ptid_get_pid): Don't declare.
3145         * aarch64-linux-nat.c: Update.
3146         * ada-lang.c: Update.
3147         * aix-thread.c: Update.
3148         * alpha-bsd-nat.c: Update.
3149         * amd64-fbsd-nat.c: Update.
3150         * amd64-linux-nat.c: Update.
3151         * arm-linux-nat.c: Update.
3152         * arm-nbsd-nat.c: Update.
3153         * auxv.c: Update.
3154         * break-catch-syscall.c: Update.
3155         * breakpoint.c: Update.
3156         * bsd-uthread.c: Update.
3157         * corelow.c: Update.
3158         * ctf.c: Update.
3159         * darwin-nat.c: Update.
3160         * fbsd-nat.c: Update.
3161         * fbsd-tdep.c: Update.
3162         * gcore.c: Update.
3163         * gnu-nat.c: Update.
3164         * hppa-nbsd-nat.c: Update.
3165         * hppa-obsd-nat.c: Update.
3166         * i386-fbsd-nat.c: Update.
3167         * ia64-linux-nat.c: Update.
3168         * inf-ptrace.c: Update.
3169         * infcmd.c: Update.
3170         * inferior.c: Update.
3171         * inferior.h: Update.
3172         * inflow.c: Update.
3173         * infrun.c: Update.
3174         * linux-fork.c: Update.
3175         * linux-nat.c: Update.
3176         * linux-tdep.c: Update.
3177         * linux-thread-db.c: Update.
3178         * m68k-bsd-nat.c: Update.
3179         * mi/mi-interp.c: Update.
3180         * mi/mi-main.c: Update.
3181         * mips-linux-nat.c: Update.
3182         * mips-nbsd-nat.c: Update.
3183         * mips64-obsd-nat.c: Update.
3184         * nat/aarch64-linux-hw-point.c: Update.
3185         * nat/aarch64-linux.c: Update.
3186         * nat/linux-btrace.c: Update.
3187         * nat/linux-osdata.c: Update.
3188         * nat/linux-procfs.c: Update.
3189         * nat/x86-linux-dregs.c: Update.
3190         * nto-procfs.c: Update.
3191         * obsd-nat.c: Update.
3192         * ppc-linux-nat.c: Update.
3193         * ppc-nbsd-nat.c: Update.
3194         * ppc-obsd-nat.c: Update.
3195         * proc-service.c: Update.
3196         * procfs.c: Update.
3197         * python/py-inferior.c: Update.
3198         * python/py-infthread.c: Update.
3199         * ravenscar-thread.c: Update.
3200         * record.c: Update.
3201         * remote-sim.c: Update.
3202         * remote.c: Update.
3203         * rs6000-nat.c: Update.
3204         * s390-linux-nat.c: Update.
3205         * sh-nbsd-nat.c: Update.
3206         * sol-thread.c: Update.
3207         * sparc-nat.c: Update.
3208         * sparc64-tdep.c: Update.
3209         * spu-linux-nat.c: Update.
3210         * spu-tdep.c: Update.
3211         * target-debug.h: Update.
3212         * target.c: Update.
3213         * thread.c: Update.
3214         * tid-parse.c: Update.
3215         * tracefile-tfile.c: Update.
3216         * vax-bsd-nat.c: Update.
3217         * windows-nat.c: Update.
3218         * x86-linux-nat.c: Update.
3219         * x86-nat.c: Update.
3220
3221 2018-07-03  Tom Tromey  <tom@tromey.com>
3222
3223         * common/ptid.c (pid_to_ptid): Remove.
3224         * common/ptid.h (pid_to_ptid): Don't declare.
3225         * aix-thread.c: Update.
3226         * arm-linux-nat.c: Update.
3227         * common/ptid.c: Update.
3228         * common/ptid.h: Update.
3229         * corelow.c: Update.
3230         * ctf.c: Update.
3231         * darwin-nat.c: Update.
3232         * fbsd-nat.c: Update.
3233         * fork-child.c: Update.
3234         * gnu-nat.c: Update.
3235         * go32-nat.c: Update.
3236         * inf-ptrace.c: Update.
3237         * infcmd.c: Update.
3238         * inferior.c: Update.
3239         * infrun.c: Update.
3240         * linux-fork.c: Update.
3241         * linux-nat.c: Update.
3242         * nat/aarch64-linux-hw-point.c: Update.
3243         * nat/fork-inferior.c: Update.
3244         * nat/x86-linux-dregs.c: Update.
3245         * nto-procfs.c: Update.
3246         * obsd-nat.c: Update.
3247         * procfs.c: Update.
3248         * progspace.c: Update.
3249         * remote.c: Update.
3250         * rs6000-nat.c: Update.
3251         * s390-linux-nat.c: Update.
3252         * sol-thread.c: Update.
3253         * spu-linux-nat.c: Update.
3254         * target.c: Update.
3255         * top.c: Update.
3256         * tracefile-tfile.c: Update.
3257         * windows-nat.c: Update.
3258
3259 2018-07-03  Tom Tromey  <tom@tromey.com>
3260
3261         * common/ptid.h (ptid_build): Don't declare.
3262         * common/ptid.c (ptid_build): Remove.
3263         * aix-thread.c: Update.
3264         * bsd-kvm.c: Update.
3265         * bsd-uthread.c: Update.
3266         * common/agent.c: Update.
3267         * common/ptid.c: Update.
3268         * common/ptid.h: Update.
3269         * corelow.c: Update.
3270         * darwin-nat.c: Update.
3271         * fbsd-nat.c: Update.
3272         * gnu-nat.c: Update.
3273         * linux-fork.c: Update.
3274         * linux-nat.c: Update.
3275         * linux-thread-db.c: Update.
3276         * nat/linux-osdata.c: Update.
3277         * nat/linux-procfs.c: Update.
3278         * nto-procfs.c: Update.
3279         * obsd-nat.c: Update.
3280         * proc-service.c: Update.
3281         * procfs.c: Update.
3282         * ravenscar-thread.c: Update.
3283         * remote-sim.c: Update.
3284         * remote.c: Update.
3285         * sol-thread.c: Update.
3286         * target.c: Update.
3287         * windows-nat.c: Update.
3288
3289 2018-07-03  Tom Tromey  <tom@tromey.com>
3290
3291         * infrun.c (follow_exec): Use exit_inferior_silent.
3292         * inferior.c (exit_inferior_num_silent): Remove.
3293         * inferior.h (exit_inferior_num_silent): Don't declare.
3294
3295 2018-07-03  Tom Tromey  <tom@tromey.com>
3296
3297         PR cli/23340:
3298         * darwin-nat.c (darwin_attach_pid): Reset inferior and
3299         inferior_ptid on error.
3300
3301 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
3302             Simon Marchi  <simon.marchi@polymtl.ca>
3303
3304         PR tdep/8282
3305         * disasm.h (gdb_disassembler): Add
3306         `m_disassembler_options_holder'. member
3307         * disasm.c (get_all_disassembler_options): New function.
3308         (gdb_disassembler::gdb_disassembler): Use it.
3309         (gdb_buffered_insn_length_init_dis): Likewise.
3310         (gdb_buffered_insn_length): Adjust accordingly.
3311         (set_disassembler_options): Handle options with arguments.
3312         (show_disassembler_options_sfunc): Likewise.  Add a leading new
3313         line if showing options with descriptions.
3314         (disassembler_options_completer): Adapt to using the
3315         `disasm_options_and_args_t' structure.
3316         * mips-tdep.c (mips_disassembler_options): New variable.
3317         (mips_disassembler_options_o32): Likewise.
3318         (mips_disassembler_options_n32): Likewise.
3319         (mips_disassembler_options_n64): Likewise.
3320         (gdb_print_insn_mips): Don't set `disassembler_options'.
3321         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
3322         functions.
3323         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
3324         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
3325         `gdbarch_disassembler_options_implicit' and
3326         `gdbarch_valid_disassembler_options'.
3327         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
3328         `disasm_options_and_args_t' structure.
3329         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
3330         method.
3331         (valid_disassembler_options): Switch from `disasm_options_t' to
3332         the `disasm_options_and_args_t' structure.
3333         * NEWS: Document `set disassembler-options' support for the MIPS
3334         target.
3335         * gdbarch.h: Regenerate.
3336         * gdbarch.c: Regenerate.
3337
3338 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
3339
3340         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
3341
3342 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
3343
3344         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
3345         parameter in call to amd64_target_description.
3346         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
3347         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
3348         (amd64fbsd_init_abi): Likewise.
3349         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
3350         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
3351         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
3352         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
3353
3354 2018-06-29  Pedro Alves  <palves@redhat.com>
3355
3356         * gdb/amd64-tdep.h (amd64_create_target_description): Add
3357         "segments" parameter.
3358         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
3359         (_initialize_amd64_tdep): Update call to
3360         amd64_create_target_description.
3361         (amd64_target_description): Add "segments" parameter.  Adjust
3362         the implementation to use it.
3363         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
3364         call to amd64_create_target_description.
3365         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
3366         * gdb/arch/amd64.h (amd64_create_target_description): Add
3367         "segments" register.
3368         * gdb/arch/amd64.c (amd64_create_target_description): Add
3369         "segments" parameter.  Call create_feature_i386_64bit_segments
3370         only if SEGMENTS is true.
3371         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
3372         call to amd64_create_target_description.
3373
3374 2018-06-29  Pedro Alves  <palves@redhat.com>
3375
3376         * thread.c (thread_target_id_str): New, factored out from ...
3377         (print_thread_info_1): ... here.  Use it to compute the max
3378         "Target Id" column width.
3379
3380 2018-06-29  Pedro Alves  <palves@redhat.com>
3381
3382         * remote.c (remote_target::extra_thread_info): Delete
3383         'display_buf' and 'n' locals.  from the cache, regardless of
3384         packet mechanims is in use.  Use cache for qThreadExtra and qP
3385         methods too.
3386
3387 2018-06-29  Pedro Alves  <palves@redhat.com>
3388
3389         * blockframe.c (find_pc_sect_containing_function): New function.
3390         * breakpoint.c (print_breakpoint_location): Don't call
3391         find_pc_sect_function.
3392         * linespec.c (create_sals_line_offset): Record the location's
3393         symbol in the sal.
3394         * linespec.c (convert_address_location_to_sals): Fill in sal's
3395         symbol with find_pc_sect_containing_function.
3396         * symtab.c (find_function_start_sal): Rename to ...
3397         (find_function_start_sal_1): ... this.
3398         (find_function_start_sal): Reimplement as wrapper around
3399         find_function_start_sal_1, and use
3400         find_pc_sect_containing_function to fill in the sal's symbol.
3401         (find_function_start_sal(symbol*, bool)): Adjust.
3402         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
3403         comments.
3404         (find_pc_sect_containing_function): Declare.
3405
3406 2018-06-29  Pedro Alves  <palves@redhat.com>
3407
3408         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
3409         true if the the location has no symbol.
3410
3411 2018-06-28  Tom Tromey  <tom@tromey.com>
3412
3413         * NEWS: Mention --enable-codesign.
3414         * silent-rules.mk (ECHO_SIGN): New variable.
3415         * configure.ac: Add --enable-codesign.
3416         * configure: Rebuild.
3417         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
3418         (gdb$(EXEEXT)): Optionally invoke codesign.
3419
3420 2018-06-28  Pedro Alves  <palves@redhat.com>
3421
3422         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
3423         comments.
3424         (switch_to_thread_no_regs): Adjust comment.
3425         * infcmd.c (stop_pc): Delete.
3426         (post_create_inferior, info_program_command): Replace references
3427         to stop_pc with references to thread_info->suspend.stop_pc.
3428         * inferior.h (stop_pc): Delete declaration.
3429         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
3430         (handle_inferior_event_1, handle_signal_stop)
3431         (process_event_stop_test, keep_going_stepped_thread)
3432         (handle_step_into_function, handle_step_into_function_backward)
3433         (print_stop_location): Replace references to stop_pc with
3434         references to thread_info->suspend.stop_pc.
3435         (struct infcall_suspend_state) <stop_pc>: Delete field.
3436         (save_infcall_suspend_state, restore_infcall_suspend_state):
3437         Remove references to inf_stat->stop_pc.
3438         * linux-fork.c (fork_load_infrun_state): Likewise.
3439         * record-btrace.c (record_btrace_set_replay): Likewise.
3440         * record-full.c (record_full_goto_entry): Likewise.
3441         * remote.c (print_one_stopped_thread): Likewise.
3442         * target.c (target_resume): Extend comment.
3443         * thread.c (set_executing_thread): New.
3444         (set_executing): Use it.
3445         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
3446         Remove references to stop_pc.
3447
3448 2018-06-28  Pedro Alves  <palves@redhat.com>
3449
3450         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
3451         Moving fetching stop_pc until after ecs->event_thread is refreshed.
3452
3453 2018-06-28  Tom Tromey  <tom@tromey.com>
3454
3455         * coffread.c (coff_symfile_finish): Update.
3456         * xcoffread.c (xcoff_symfile_finish): Update.
3457         * elfread.c (elf_symfile_finish): Update.
3458         * symfile.h (dwarf2_free_objfile): Don't declare.
3459         * dwarf2read.c (_initialize_dwarf2_read): Use
3460         register_objfile_data_with_cleanup.
3461         (dwarf2_free_objfile): Now static.  Change signature.
3462
3463 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
3464
3465         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
3466         option "-o" to add-symbol-file-load to add an offset to each
3467         section's load address.
3468         * symfile.c (set_objfile_default_section_offset): New function.
3469
3470 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
3471
3472         * symfile.c (add_symbol_file_command): Make sure that sections
3473         with the same name are sorted in the same order.
3474
3475 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
3476
3477         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
3478         require the second argument.  If omitted, load sections at the
3479         addresses specified in the file.
3480
3481 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
3482
3483         * symfile.c (symbol_file_command, symbol_file_add_main_1)
3484         (_initialize_symfile): Add option "-o" to symbol-file to add an
3485         offset to each section of the symbol file.
3486
3487 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
3488
3489         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
3490
3491 2018-06-27  Tom Tromey  <tom@tromey.com>
3492
3493         * stack.c (_initialize_stack): Update "func" help text.
3494
3495 2018-06-27  Tom Tromey  <tom@tromey.com>
3496
3497         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
3498         std::vector.
3499         (unwind_infopy_str, pyuw_create_unwind_info)
3500         (unwind_infopy_add_saved_register, pyuw_sniffer)
3501         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
3502         Update.
3503         (struct saved_reg): Add constructor.
3504         <value>: Now a gdbpy_ref<>.
3505
3506 2018-06-27  Tom Tromey  <tom@tromey.com>
3507
3508         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
3509
3510 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
3511
3512         * gdb-gdb.py.in: Format using autopep8.
3513
3514 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
3515
3516         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
3517         (type_lookup_function): Recognize CORE_ADDR values.
3518
3519 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
3520
3521         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
3522         print tag_name.
3523
3524 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
3525
3526         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
3527         <__lt__>: Add.
3528
3529 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
3530
3531         * gdb-gdb.py: Move to...
3532         * gdb-gdb.py.in: ... here.
3533         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
3534         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
3535         dependencies.
3536         (distclean): Remove gdb-gdb.py when cleaning.
3537         (gdb-gdb.py, gdb-gdb.gdb): New rules.
3538         * configure: Re-generate.
3539
3540 2018-06-27  Pedro Alves  <palves@redhat.com>
3541
3542         * proc-service.c (get_ps_regcache): New.
3543         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
3544         (ps_lsetfpregs): Use it.
3545
3546 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
3547
3548         PR gdb/21695
3549         * dwarf2read.c (lnp_state_machine::check_line_address): Update declaration.
3550         (dwarf_decode_lines_1): Adjust.
3551
3552 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
3553
3554         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
3555         override.
3556         <info_proc>: Likewise.
3557
3558 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
3559
3560         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
3561         to windows_fetch_one_register, and only handle the case of
3562         fetching one register.  Move the code that reloads the context
3563         and iterates over all registers if R is negative to...
3564         (windows_nat_target::fetch_registers): ... here.
3565         (do_windows_store_inferior_registers): Rename to
3566         windows_store_one_register, and only handle the case of storing
3567         one register.  Move the code that handles the case where r is
3568         negative to...
3569         (windows_nat_target::store_registers) ... here.
3570
3571 2018-06-26  Tom Tromey  <tom@tromey.com>
3572
3573         PR rust/22574:
3574         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
3575         * rust-lang.c (rust_print_struct_def): Add podata parameter.
3576         Update.
3577         (rust_internal_print_type): Add podata parameter.
3578         (rust_print_type): Update.
3579
3580 2018-06-26  Tom Tromey  <tom@tromey.com>
3581
3582         * typeprint.h (struct print_offset_data) <update, finish,
3583         maybe_print_hole>: New methods.
3584         <indentation>: New constant.
3585         * typeprint.c (print_offset_data::indentation): Define.
3586         (print_offset_data::maybe_print_hole, print_offset_data::update)
3587         (print_offset_data::finish): Move from c-typeprint.c and rename.
3588         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
3589         (print_spaces_filtered_with_print_options): Update.
3590         (c_print_type_union_field_offset, maybe_print_hole)
3591         (c_print_type_struct_field_offset): Move to typeprint.c and
3592         rename.
3593         (c_type_print_base_struct_union): Update.
3594
3595 2018-06-25  Pedro Alves  <palves@redhat.com>
3596
3597         * gdbthread.h (thread_info_ref, delete_thread)
3598         (delete_thread_silent, first_thread_of_inferior)
3599         (any_thread_of_inferior, switch_to_thread)
3600         (enable_thread_stack_temporaries)
3601         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
3602         (get_last_thread_stack_temporary)
3603         (value_in_thread_stack_temporaries, can_access_registers_thread):
3604         Spell out "struct thread_info" instead of just "thread_info".
3605         * inferior.h (notice_new_inferior): Likewise.
3606
3607 2018-06-25  Pedro Alves  <palves@redhat.com>
3608
3609         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
3610         pass thread_info pointer to delete_thread.
3611         (windows_nat_target::detach): Pass inferior pointer to
3612         detach_inferior.
3613         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
3614         delete_thread.
3615         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
3616         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
3617         and pass a thread_info pointer to delete_thread.
3618         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
3619         pass thread_info pointer to delete_thread.
3620         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
3621         delete_thread_silent call.
3622         * procfs.c (procfs_target::detach): Pass inferior pointer to
3623         detach_inferior.
3624         (procfs_target::wait): Pass thread_info pointer to delete_thread.
3625         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
3626         delete_thread_silent call.
3627         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
3628         pass thread_info pointer to delete_thread.
3629         (windows_nat_target::detach): Pass inferior pointer to
3630         delete_inferior.
3631
3632 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
3633
3634         * regcache.c (readable_regcache::read_part): Fix asserts.
3635         (reg_buffer::raw_collect_part): New function.
3636         (regcache::write_part): Fix asserts.
3637         (reg_buffer::raw_supply_part): New function.
3638         (regcache::transfer_regset_register): New helper function.
3639         (regcache::transfer_regset): Call new functions.
3640         (regcache_supply_regset): Use gdb_byte*.
3641         (regcache::supply_regset): Likewise.
3642         (regcache_collect_regset): Likewise.
3643         (regcache::collect_regset): Likewise.
3644         * regcache.h (reg_buffer::raw_collect_part): New declaration.
3645         (reg_buffer::raw_supply_part): Likewise.
3646         (regcache::transfer_regset_register): Likewise.
3647         (regcache::transfer_regset): Use gdb_byte*.
3648
3649 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
3650
3651         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
3652
3653 2018-06-21  Pedro Alves  <palves@redhat.com>
3654
3655         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
3656         instead of a ptid_t.  All callers adjusted.
3657         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
3658         adjusted.
3659         (print_ada_task_info, display_current_task_id, task_command_1):
3660         Adjust.
3661         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
3662         inferior_thread.
3663         (breakpoint_kind): Adjust.
3664         (remove_breakpoints_pid): Rename to ...
3665         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
3666         pointer.  All callers adjusted.
3667         (bpstat_clear_actions): Use inferior_thread.
3668         (get_bpstat_thread): New.
3669         (bpstat_do_actions): Use it.
3670         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
3671         to take a thread_info pointer.  All callers adjusted.
3672         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
3673         (breakpoint_re_set_thread): Use inferior_thread.
3674         * breakpoint.h (struct inferior): Forward declare.
3675         (bpstat_stop_status): Update.
3676         (remove_breakpoints_pid): Delete.
3677         (remove_breakpoints_inf): New.
3678         * bsd-uthread.c (bsd_uthread_target::wait)
3679         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
3680         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
3681         (maint_btrace_packet_history_cmd)
3682         (maint_btrace_clear_packet_history_cmd): Adjust.
3683         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
3684         inferior_thread.
3685         * cli/cli-interp.c: Include "inferior.h".
3686         * common/refcounted-object.h (struct
3687         refcounted_object_ref_policy): New.
3688         * compile/compile-object-load.c: Include gdbthread.h.
3689         (store_regs): Use inferior_thread.
3690         * corelow.c (core_target::close): Use current_inferior.
3691         (core_target_open): Adjust to use first_thread_of_inferior and use
3692         the current inferior.
3693         * ctf.c (ctf_target::close): Adjust to use current_inferior.
3694         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
3695         <thread>: ... this new field.  All references adjusted.
3696         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
3697         Take a thread_info pointer instead of a ptid_t.
3698         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
3699         (dummy_frame_discard, register_dummy_frame_dtor): Take a
3700         thread_info pointer instead of a ptid_t.
3701         * elfread.c: Include "inferior.h".
3702         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
3703         Use inferior_thread.
3704         * eval.c (evaluate_subexp): Likewise.
3705         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
3706         inferior_thread.
3707         * gdb_proc_service.h (struct thread_info): Forward declare.
3708         (struct ps_prochandle) <ptid>: Delete, replaced by ...
3709         <thread>: ... this new field.  All references adjusted.
3710         * gdbarch.h, gdbarch.c: Regenerate.
3711         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
3712         'thread' parameter.  All implementations and callers adjusted.
3713         * gdbthread.h (thread_info) <set_running>: New method.
3714         (delete_thread, delete_thread_silent): Take a thread_info pointer
3715         instead of a ptid.
3716         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
3717         (first_thread_of_process): Delete, replaced by ...
3718         (first_thread_of_inferior): ... this new function.  All callers
3719         adjusted.
3720         (any_live_thread_of_process): Delete, replaced by ...
3721         (any_live_thread_of_inferior): ... this new function.  All callers
3722         adjusted.
3723         (switch_to_thread, switch_to_no_thread): Declare.
3724         (is_executing): Delete.
3725         (enable_thread_stack_temporaries): Update comment.
3726         <enable_thread_stack_temporaries>: Take a thread_info pointer
3727         instead of a ptid_t.  Incref the thread.
3728         <~enable_thread_stack_temporaries>: Decref the thread.
3729         <m_ptid>: Delete
3730         <m_thr>: New.
3731         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
3732         (get_last_thread_stack_temporary)
3733         (value_in_thread_stack_temporaries, can_access_registers_thread):
3734         Take a thread_info pointer instead of a ptid_t.  All callers
3735         adjusted.
3736         * infcall.c (get_call_return_value): Use inferior_thread.
3737         (run_inferior_call): Work with thread pointers instead of ptid_t.
3738         (call_function_by_hand_dummy): Work with thread pointers instead
3739         of ptid_t.  Use thread_info_ref.
3740         * infcmd.c (proceed_thread_callback): Access thread's state
3741         directly.
3742         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
3743         access thread's state directly.
3744         (continue_command): Use inferior_thread.
3745         (info_program_command): Use find_thread_ptid and access thread
3746         state directly.
3747         (proceed_after_attach_callback): Use thread state directly.
3748         (notice_new_inferior): Take a thread_info pointer instead of a
3749         ptid_t.  All callers adjusted.
3750         (exit_inferior): Take an inferior pointer instead of a pid.  All
3751         callers adjusted.
3752         (exit_inferior_silent): New.
3753         (detach_inferior): Delete.
3754         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
3755         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
3756         (detach_inferior_command, kill_inferior_command): Use
3757         find_inferior_id instead of valid_gdb_inferior_id and
3758         gdb_inferior_id_to_pid.
3759         (inferior_command): Use inferior and thread pointers.
3760         * inferior.h (struct thread_info): Forward declare.
3761         (notice_new_inferior): Take a thread_info pointer instead of a
3762         ptid_t.  All callers adjusted.
3763         (detach_inferior): Delete declaration.
3764         (exit_inferior, exit_inferior_silent): Take an inferior pointer
3765         instead of a pid.  All callers adjusted.
3766         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
3767         (valid_gdb_inferior_id): Delete.
3768         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
3769         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
3770         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
3771         ...
3772         <inf>: ... this new field.
3773         <step_ptid>: Delete, replaced by ...
3774         <step_thread>: ... this new field.
3775         (get_displaced_stepping_state): Take an inferior pointer instead
3776         of a pid.  All callers adjusted.
3777         (displaced_step_in_progress_any_inferior): Adjust.
3778         (displaced_step_in_progress_thread): Take a thread pointer instead
3779         of a ptid_t.  All callers adjusted.
3780         (displaced_step_in_progress, add_displaced_stepping_state): Take
3781         an inferior pointer instead of a pid.  All callers adjusted.
3782         (get_displaced_step_closure_by_addr): Adjust.
3783         (remove_displaced_stepping_state): Take an inferior pointer
3784         instead of a pid.  All callers adjusted.
3785         (displaced_step_prepare_throw, displaced_step_prepare)
3786         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
3787         All callers adjusted.
3788         (start_step_over): Adjust.
3789         (infrun_thread_ptid_changed): Remove bit updating ptids in the
3790         displaced step queue.
3791         (do_target_resume): Adjust.
3792         (fetch_inferior_event): Use inferior_thread.
3793         (context_switch, get_inferior_stop_soon): Take an
3794         execution_control_state pointer instead of a ptid_t.  All callers
3795         adjusted.
3796         (switch_to_thread_cleanup): Delete.
3797         (stop_all_threads): Use scoped_restore_current_thread.
3798         * inline-frame.c: Include "gdbthread.h".
3799         (inline_state) <inline_state>: Take a thread pointer instead of a
3800         ptid_t.  All callers adjusted.
3801         <ptid>: Delete, replaced by ...
3802         <thread>: ... this new field.
3803         (find_inline_frame_state): Take a thread pointer instead of a
3804         ptid_t.  All callers adjusted.
3805         (skip_inline_frames, step_into_inline_frame)
3806         (inline_skipped_frames, inline_skipped_symbol): Take a thread
3807         pointer instead of a ptid_t.  All callers adjusted.
3808         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
3809         (inline_skipped_frames, inline_skipped_symbol): Likewise.
3810         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
3811         pointers directly.
3812         * linux-nat.c (get_detach_signal): Likewise.
3813         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
3814         (thread_db_notice_clone): Adjust.
3815         (thread_db_find_new_threads_silently)
3816         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
3817         a thread pointer instead of a ptid_t.  All callers adjusted.
3818         * mi/mi-cmd-var.c: Include "inferior.h".
3819         (mi_cmd_var_update_iter): Update to use thread pointers.
3820         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
3821         inferior directly.
3822         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
3823         out to ...
3824         (mi_output_running): ... this new function.
3825         (mi_on_resume_1): Adjust to use it.
3826         (mi_user_selected_context_changed): Adjust to use inferior_thread.
3827         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
3828         directly.
3829         (interrupt_thread_callback): : Adjust to use thread and inferior
3830         pointers.
3831         * proc-service.c: Include "gdbthread.h".
3832         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
3833         * progspace-and-thread.c: Include "inferior.h".
3834         * progspace.c: Include "inferior.h".
3835         * python/py-exitedevent.c (create_exited_event_object): Adjust to
3836         hold a reference to an inferior_object.
3837         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
3838         inferior_thread.
3839         * python/py-inferior.c (struct inferior_object): Give the type a
3840         tag name instead of a typedef.
3841         (python_on_normal_stop): No need to check if the current thread is
3842         listed.
3843         (inferior_to_inferior_object): Change return type to
3844         inferior_object.  All callers adjusted.
3845         (find_thread_object): Delete, bits factored out to ...
3846         (thread_to_thread_object): ... this new function.
3847         * python/py-infthread.c (create_thread_object): Use
3848         inferior_to_inferior_object.
3849         (thpy_is_stopped): Use thread pointer directly.
3850         (gdbpy_selected_thread): Use inferior_thread.
3851         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
3852         field, replaced with ...
3853         <thread>: ... this new field.  All users adjusted.
3854         (btpy_insn_or_gap_new): Drop const.
3855         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
3856         callers adjusted.
3857         * python/py-record.c: Include "gdbthread.h".
3858         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
3859         a ptid_t.  All callers adjusted.
3860         (gdbpy_current_recording): Use inferior_thread.
3861         * python/py-record.h (recpy_record_object) <ptid>: Delete
3862         field, replaced with ...
3863         <thread>: ... this new field.  All users adjusted.
3864         (recpy_element_object) <ptid>: Delete
3865         field, replaced with ...
3866         <thread>: ... this new field.  All users adjusted.
3867         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
3868         a ptid_t.  All callers adjusted.
3869         * python/py-threadevent.c: Include "gdbthread.h".
3870         (get_event_thread): Use thread_to_thread_object.
3871         * python/python-internal.h (struct inferior_object): Forward
3872         declare.
3873         (find_thread_object, find_inferior_object): Delete declarations.
3874         (thread_to_thread_object, inferior_to_inferior_object): New
3875         declarations.
3876         * record-btrace.c: Include "inferior.h".
3877         (require_btrace_thread): Use inferior_thread.
3878         (record_btrace_frame_sniffer)
3879         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
3880         (get_thread_current_frame): Use scoped_restore_current_thread and
3881         switch_to_thread.
3882         (get_thread_current_frame): Use thread pointer directly.
3883         (record_btrace_replay_at_breakpoint): Use thread's inferior
3884         pointer directly.
3885         * record-full.c: Include "inferior.h".
3886         * regcache.c: Include "gdbthread.h".
3887         (get_thread_arch_regcache): Use the inferior's address space
3888         directly.
3889         (get_thread_regcache, registers_changed_thread): New.
3890         * regcache.h (get_thread_regcache(thread_info *thread)): New
3891         overload.
3892         (registers_changed_thread): New.
3893         (remote_target) <remote_detach_1>: Swap order of parameters.
3894         (remote_add_thread): <remote_add_thread>: Return the new thread.
3895         (get_remote_thread_info(ptid_t)): New overload.
3896         (remote_target::remote_notice_new_inferior): Use thread pointers
3897         directly.
3898         (remote_target::process_initial_stop_replies): Use
3899         thread_info::set_running.
3900         (remote_target::remote_detach_1, remote_target::detach)
3901         (extended_remote_target::detach): Adjust.
3902         * stack.c (frame_show_address): Use inferior_thread.
3903         * target-debug.h (target_debug_print_thread_info_pp): New.
3904         * target-delegates.c: Regenerate.
3905         * target.c (default_thread_address_space): Delete.
3906         (memory_xfer_partial_1): Use current_inferior.
3907         (target_detach): Use current_inferior.
3908         (target_thread_address_space): Delete.
3909         (generic_mourn_inferior): Use current_inferior.
3910         * target.h (struct target_ops) <thread_address_space>: Delete.
3911         (target_thread_address_space): Delete.
3912         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
3913         pointers directly.
3914         (delete_thread_1, delete_thread, delete_thread_silent): Take a
3915         thread pointer instead of a ptid_t.  Adjust all callers.
3916         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
3917         (first_thread_of_process): Delete, replaced by ...
3918         (first_thread_of_inferior): ... this new function.  All callers
3919         adjusted.
3920         (any_thread_of_process): Rename to ...
3921         (any_thread_of_inferior): ... this, and take an inferior pointer.
3922         (any_live_thread_of_process): Rename to ...
3923         (any_live_thread_of_inferior): ... this, and take an inferior
3924         pointer.
3925         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
3926         (value_in_thread_stack_temporaries)
3927         (get_last_thread_stack_temporary): Take a thread pointer instead
3928         of a ptid_t.  Adjust all callers.
3929         (thread_info::set_running): New.
3930         (validate_registers_access): Use inferior_thread.
3931         (can_access_registers_ptid): Rename to ...
3932         (can_access_registers_thread): ... this, and take a thread
3933         pointer.
3934         (print_thread_info_1): Adjust to compare thread pointers instead
3935         of ptids.
3936         (switch_to_no_thread, switch_to_thread): Make extern.
3937         (scoped_restore_current_thread::~scoped_restore_current_thread):
3938         Use m_thread pointer directly.
3939         (scoped_restore_current_thread::scoped_restore_current_thread):
3940         Use inferior_thread.
3941         (thread_command): Use thread pointer directly.
3942         (thread_num_make_value_helper): Use inferior_thread.
3943         * top.c (execute_command): Use inferior_thread.
3944         * tui/tui-interp.c: Include "inferior.h".
3945         * varobj.c (varobj_create): Use inferior_thread.
3946         (value_of_root_1): Use find_thread_global_id instead of
3947         global_thread_id_to_ptid.
3948
3949 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
3950
3951         * regcache.c (readable_regcache::read_part): Avoid memcpy when
3952         possible.
3953         (regcache::write_part): Likewise.
3954         (readable_regcache::cooked_read_part): Update comment.
3955         (readable_regcache::cooked_write_part): Likewise.
3956         * regcache.h: (readable_regcache::read_part): Likewise.
3957         (regcache::write_part): Likewise.
3958
3959 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
3960             Dirk Schubert  <dirk.schubert@arm.com>
3961
3962         * aarch64-linux-nat.c (post_attach): New.
3963         (aarch64_linux_nat_target::post_attach): Override post_attach to
3964         record the number of hardware debug registers.
3965
3966 2018-06-20  Tom Tromey  <tom@tromey.com>
3967
3968         * python/py-param.c (add_setshow_generic): Make parameters const.
3969         (parmpy_init): Update.
3970
3971 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
3972
3973         * regcache.h (regcache_cooked_read_ftype): Rename to...
3974         (register_read_ftype): ...this, change type to function_view.
3975         (class reg_buffer) <save>: Remove src parameter.
3976         (readonly_detached_regcache) <readonly_detached_regcache>: Make
3977         parameter non-const in first overload.  Remove src parameter in
3978         second overload.
3979         * regcache.c (do_cooked_read): Remove.
3980         (readonly_detached_regcache::readonly_detached_regcache): Make
3981         parameter non-const, adjust call to other constructor.
3982         (reg_buffer::save): Remove src parameter.
3983         * frame.c (do_frame_register_read): Remove.
3984         (frame_save_as_regcache): Use lambda function.
3985         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
3986         parameter to ppu2spu_data *.
3987         (ppu2spu_sniffer): Use lambda function.
3988
3989 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
3990
3991         * record-full.c (record_full_target::insert_breakpoint): Remove
3992         "struct" keyword, add const.
3993
3994 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
3995
3996         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
3997         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
3998         * configure.ac: Remove AC_PREREQ, add missing quoting.
3999         * gnulib/configure.ac: Modernize usage of
4000         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
4001         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
4002         (AUTOMAKE_VERSION): Bump to 1.15.1.
4003         * configure: Re-generate.
4004         * config.in: Re-generate.
4005         * aclocal.m4: Re-generate.
4006         * gnulib/aclocal.m4: Re-generate.
4007         * gnulib/config.in: Re-generate.
4008         * gnulib/configure: Re-generate.
4009         * gnulib/import/Makefile.in: Re-generate.
4010
4011 2018-06-19  Pedro Alves  <palves@redhat.com>
4012
4013         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
4014         (lookup_minimal_symbol_by_pc_section): ... here with
4015         gdb_assert_not_reached added.
4016
4017 2018-06-19  Pedro Alves  <palves@redhat.com>
4018
4019         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
4020         parameter with a block parameter.  Compare location's block symbol
4021         with the frame's block instead of addresses.
4022         (skip_inline_frames): Pass the current block instead of the
4023         frame's address.  Break out as soon as we determine the frame
4024         should not be skipped.
4025
4026 2018-06-18  Tom Tromey  <tom@tromey.com>
4027
4028         * solib-aix.c (solib_aix_get_section_offsets): Return
4029         unique_xmalloc_ptr.
4030         (solib_aix_solib_create_inferior_hook): Update.
4031
4032 2018-06-18  Tom Tromey  <tom@tromey.com>
4033
4034         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
4035
4036 2018-06-18  Tom Tromey  <tom@tromey.com>
4037
4038         * solib-frv.c (frv_relocate_main_executable): Use
4039         unique_xmalloc_ptr.
4040         * solib-dsbt.c (dsbt_relocate_main_executable): Use
4041         unique_xmalloc_ptr.
4042
4043 2018-06-18  Tom Tromey  <tom@tromey.com>
4044
4045         * objfiles.h (inhibit_section_map_updates): Update.
4046         (resume_section_map_updates, resume_section_map_updates_cleanup):
4047         Remove.
4048         * solib-svr4.c (svr4_handle_solib_event): Update.
4049         * objfiles.c (inhibit_section_map_updates): Return
4050         scoped_restore_tmpl<int>.
4051         (resume_section_map_updates, resume_section_map_updates_cleanup):
4052         Remove.
4053
4054 2018-06-18  Tom Tromey  <tom@tromey.com>
4055
4056         * valprint.h (read_string): Update.
4057         * valprint.c (read_string): Change type of "buffer".
4058         (val_print_string): Update.
4059         * python/py-value.c (valpy_string): Update.
4060         * language.h (struct language_defn) <la_get_string>: Change
4061         type of "buffer".
4062         (default_get_string, c_get_string): Update.
4063         * language.c (default_get_string): Change type of "buffer".
4064         * guile/scm-value.c (gdbscm_value_to_string): Update.
4065         * c-lang.c (c_get_string): Change type of "buffer".
4066
4067 2018-06-18  Tom Tromey  <tom@tromey.com>
4068
4069         * ser-mingw.c (struct pipe_state_destroyer): New.
4070         (pipe_state_up): New typedef.
4071         (cleanup_pipe_state): Remove.
4072         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
4073
4074 2018-06-18  Tom Tromey  <tom@tromey.com>
4075
4076         * rust-lang.h (rust_yyerror): Don't declare.
4077         * rust-lang.c (rust_language_defn): Update.
4078         * rust-exp.y (yyerror): Now static.
4079         * parse.c (parse_exp_in_context_1): Update.
4080         * p-lang.h (p_yyerror): Don't declare.
4081         * p-lang.c (p_language_defn): Update.
4082         * p-exp.y (yyerror): Now static.
4083         * opencl-lang.c (opencl_language_defn): Update.
4084         * objc-lang.c (objc_language_defn): Update.
4085         * m2-lang.h (m2_yyerror): Don't declare.
4086         * m2-lang.c (m2_language_defn): Update.
4087         * m2-exp.y (yyerror): Now static.
4088         * language.h (struct language_defn) <la_error>: Remove.
4089         * language.c (unk_lang_error): Remove.
4090         (unknown_language_defn, auto_language_defn): Remove.
4091         * go-lang.h (go_yyerror): Don't declare.
4092         * go-lang.c (go_language_defn): Update.
4093         * go-exp.y (yyerror): Now static.
4094         * f-lang.h (f_yyerror): Don't declare.
4095         * f-lang.c (f_language_defn): Update.
4096         * f-exp.y (yyerror): Now static.
4097         * d-lang.h (d_yyerror): Don't declare.
4098         * d-lang.c (d_language_defn): Update.
4099         * d-exp.y (yyerror): Now static.
4100         * c-lang.h (c_yyerror): Don't declare.
4101         * c-lang.c (c_language_defn, cplus_language_defn)
4102         (asm_language_defn, minimal_language_defn): Update.
4103         * c-exp.y (yyerror): Now static.
4104         * ada-lang.h (ada_yyerror): Don't declare.
4105         * ada-lang.c (ada_language_defn): Update.
4106         * ada-exp.y (yyerror): Now static.
4107
4108 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
4109
4110         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
4111         (store_sveregs_to_thread): Likewise.
4112         (aarch64_linux_fetch_inferior_registers): Check for SVE.
4113         (aarch64_linux_store_inferior_registers): Likewise.
4114         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
4115         function.
4116         (aarch64_sve_regs_copy_to_regcache): Likewise.
4117         (aarch64_sve_regs_copy_from_regcache): Likewise.
4118         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
4119         declaration.
4120         (aarch64_sve_regs_copy_to_regcache): Likewise.
4121         (aarch64_sve_regs_copy_from_regcache): Likewise.
4122         (sve_context): Structure from Linux headers.
4123         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
4124         (SVE_SIG_ZREG_SIZE): Likewise.
4125         (SVE_SIG_PREG_SIZE): Likewise.
4126         (SVE_SIG_FFR_SIZE): Likewise.
4127         (SVE_SIG_REGS_OFFSET): Likewise.
4128         (SVE_SIG_ZREGS_OFFSET): Likewise.
4129         (SVE_SIG_ZREG_OFFSET): Likewise.
4130         (SVE_SIG_ZREGS_SIZE): Likewise.
4131         (SVE_SIG_PREGS_OFFSET): Likewise.
4132         (SVE_SIG_PREG_OFFSET): Likewise.
4133         (SVE_SIG_PREGS_SIZE): Likewise.
4134         (SVE_SIG_FFR_OFFSET): Likewise.
4135         (SVE_SIG_REGS_SIZE): Likewise.
4136         (SVE_SIG_CONTEXT_SIZE): Likewise.
4137         (SVE_PT_REGS_MASK): Likewise.
4138         (SVE_PT_REGS_FPSIMD): Likewise.
4139         (SVE_PT_REGS_SVE): Likewise.
4140         (SVE_PT_VL_INHERIT): Likewise.
4141         (SVE_PT_VL_ONEXEC): Likewise.
4142         (SVE_PT_REGS_OFFSET): Likewise.
4143         (SVE_PT_FPSIMD_OFFSET): Likewise.
4144         (SVE_PT_FPSIMD_SIZE): Likewise.
4145         (SVE_PT_SVE_ZREG_SIZE): Likewise.
4146         (SVE_PT_SVE_PREG_SIZE): Likewise.
4147         (SVE_PT_SVE_FFR_SIZE): Likewise.
4148         (SVE_PT_SVE_FPSR_SIZE): Likewise.
4149         (SVE_PT_SVE_FPCR_SIZE): Likewise.
4150         (__SVE_SIG_TO_PT): Likewise.
4151         (SVE_PT_SVE_OFFSET): Likewise.
4152         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
4153         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
4154         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
4155         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
4156         (SVE_PT_SVE_PREG_OFFSET): Likewise.
4157         (SVE_PT_SVE_PREGS_SIZE): Likewise.
4158         (SVE_PT_SVE_FFR_OFFSET): Likewise.
4159         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
4160         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
4161         (SVE_PT_SVE_SIZE): Likewise.
4162         (SVE_PT_SIZE): Likewise.
4163         (HAS_SVE_STATE): New define.
4164
4165 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
4166
4167         * nat/aarch64-sve-linux-sigcontext.h: New file.
4168         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
4169         new files.
4170         (SVE_VQ_MIN): Likewise.
4171         (SVE_VQ_MAX): Likewise.
4172         (SVE_VL_MIN): Likewise.
4173         (SVE_VL_MAX): Likewise.
4174         (SVE_NUM_ZREGS): Likewise.
4175         (SVE_NUM_PREGS): Likewise.
4176         (sve_vl_valid): Likewise.
4177         (struct user_sve_header): Likewise.
4178
4179 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
4180             Richard Bunt <Richard.Bunt@arm.com>
4181
4182         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
4183         was requested by GDB.
4184
4185 2018-06-15  Tom de Vries  <tdevries@suse.de>
4186
4187         * MAINTAINERS (Write After Approval): Add Tom de Vries.
4188
4189 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
4190
4191         * gnulib/update-gnulib.sh: Print expected versions of
4192         autoconf/aclocal.
4193
4194 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
4195
4196         * arch-utils.c (default_type_align): Use type_length_units.
4197         * gdbtypes.c (type_align): Use type_length_units.
4198
4199 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4200
4201         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
4202         of 'define' command.
4203
4204 2018-06-14  Tom de Vries  <tdevries@suse.de>
4205
4206         PR cli/22573
4207         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
4208         get_no_prettyformat_print_options.
4209
4210 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
4211
4212         * sparc-nat.h: Include target.h.
4213         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
4214         <fetch_registers>: Remove this argument in function call.
4215         <store_registers>: Remove this argument in function call, remove
4216         extra semicolon.
4217         <low_forget_process>: Call sparc64_forget_process instead of
4218         sparc_forget_process.
4219
4220 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4221
4222         * procfs.c (_initialize_procfs): Use add_inf_child_target.
4223         (procfs_target::make_corefile_notes): Adjust to new
4224         target_read_alloc return type.
4225
4226 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
4227             Stephen Roberts  <stephen.roberts@arm.com>
4228
4229         PR gdb/22882
4230         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
4231         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
4232         Move should_notify_stop local into more inner scope.
4233
4234 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
4235             Stephen Roberts  <stephen.roberts@arm.com>
4236
4237         PR gdb/22882
4238         * infrun.c (resume_1): Add call to mark_async_event_handler.
4239
4240 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
4241
4242         * infrun.c (do_target_wait): Change old version of $pc printed.
4243
4244 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
4245
4246         * dwarf2read.c (read_index_from_section): Rename to...
4247         (read_gdb_index_from_section): ... this, update all callers.
4248         (dwarf2_read_index): Rename to...
4249         (dwarf2_read_gdb_index): ... this, update all callers.
4250
4251 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
4252
4253         * gdb/hppa-linux-nat.c
4254         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
4255         hppa_linux_nat_target::fetch_registers.
4256
4257 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
4258
4259         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
4260         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
4261         (AARCH64_DWARF_SVE_FFR): Likewise.
4262         (AARCH64_DWARF_SVE_P0): Likewise.
4263         (AARCH64_DWARF_SVE_Z0): Likewise.
4264
4265 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
4266
4267         * common/common-regcache.h (raw_compare): New function.
4268         * regcache.c (regcache::raw_compare): Likewise.
4269         * regcache.h (regcache::raw_compare): New declaration.
4270
4271 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
4272
4273         * common/common-regcache.h (reg_buffer_common): New structure.
4274         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
4275         (reg_buffer::raw_supply): Likewise.
4276         (reg_buffer::raw_supply_integer): Likewise.
4277         (reg_buffer::raw_supply_zeroed): Likewise.
4278         (reg_buffer::raw_collect): Likewise.
4279         (reg_buffer::raw_collect_integer): Likewise.
4280         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
4281         (reg_buffer::raw_supply): Likewise.
4282         (reg_buffer::raw_supply_integer): Likewise.
4283         (reg_buffer::raw_supply_zeroed): Likewise.
4284         (reg_buffer::raw_collect): Likewise.
4285         (reg_buffer::raw_collect_integer): Likewise.
4286
4287 2018-06-10  Tom Tromey  <tom@tromey.com>
4288
4289         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
4290         (class remote_state) <stop_reply_queue>: Now std::vector.
4291         (remote_state::~remote_state)
4292         (remote_target::stop_reply_queue_length): Update.
4293         (struct queue_iter_param, remove_child_of_pending_fork)
4294         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
4295         (check_pending_event_prevents_wildcard_vcont_callback)
4296         (remove_stop_reply_for_inferior)
4297         (remove_stop_reply_of_remote_state)
4298         (remote_notif_remove_once_on_match)
4299         (stop_reply_match_ptid_and_ws)
4300         (remote_kill_child_of_pending_fork): Remove.
4301         (remote_target::remove_new_fork_children)
4302         (remote_target::check_pending_events_prevent_wildcard_vcont)
4303         (remote_target::discard_pending_stop_replies)
4304         (remote_target::discard_pending_stop_replies_in_queue)
4305         (remote_target::remote_notif_remove_queued_reply)
4306         (remote_target::queued_stop_reply)
4307         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
4308         (remote_target::wait, remote_target::kill_new_fork_children)
4309         (remote_target::async): Update.
4310
4311 2018-06-10  Tom Tromey  <tom@tromey.com>
4312
4313         * record-full.c (record_full_arch_list_cleanups): Remove.
4314         (record_full_message): Use try/catch.
4315         (record_full_wait_cleanups): Remove.
4316         (record_full_wait_1): Use try/catch.
4317         (record_full_restore): Likewise.
4318
4319 2018-06-10  Tom Tromey  <tom@tromey.com>
4320
4321         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
4322         declare VEC.  Add constructor.
4323         <in_target_beneath>: Now bool.
4324         (record_full_breakpoints): Now a std::vector, static.
4325         (record_full_sync_record_breakpoints)
4326         (record_full_init_record_breakpoints)
4327         (record_full_target::insert_breakpoint)
4328         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
4329
4330 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
4331
4332         * dwarf2read.c (process_cu_includes): Remove struct keyword.
4333         * serial.c (serial_interface_lookup): Remove struct keyword.
4334
4335 2018-06-10  Tom Tromey  <tom@tromey.com>
4336
4337         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
4338         method.
4339         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
4340         a method.
4341         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
4342         method.
4343         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
4344         "beneath" as a method.
4345         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
4346         Use "beneath" as a method.
4347
4348 2018-06-10  Tom Tromey  <tom@tromey.com>
4349
4350         * tracefile.c (struct trace_file_writer_deleter): New.
4351         <operator()>: Rename from trace_file_writer_xfree.
4352         (trace_file_writer_up): New typedef.
4353         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
4354
4355 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
4356
4357         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
4358         <m_registers, m_register_status>: Change type to
4359         std::unique_ptr.
4360         * regcache.c (reg_buffer::reg_buffer): Use new instead of
4361         XCNEWVEC.
4362
4363 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
4364
4365         * common/common-regcache.h (enum register_status): Add
4366         underlying type "signed char".
4367         * regcache.h (reg_buffer) <m_register_status>: Change type to
4368         register_status *.
4369         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
4370         register_status instead of signed char.
4371         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
4372         (reg_buffer::get_register_status): Remove cast.
4373         (readable_regcache::raw_read): Remove cast.
4374         (readable_regcache::cooked_read): Remove cast.
4375
4376 2018-06-09  Tom Tromey  <tom@tromey.com>
4377
4378         * source.c (reverse_search_command, forward_search_command): Use
4379         scoped_fd.
4380
4381 2018-06-09  Tom Tromey  <tom@tromey.com>
4382
4383         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
4384         (serial_ops_list): Now static, std::vector.
4385         (serial_interface_lookup, serial_add_interface): Update.
4386
4387 2018-06-09  Tom Tromey  <tom@tromey.com>
4388
4389         * dwarf2read.c (process_cu_includes): Update.
4390         (process_full_comp_unit): Update.
4391         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
4392         std::vector.
4393
4394 2018-06-08  Paul Koning  <paul_koning@dell.com>
4395
4396         PR gdb/23252
4397
4398         * python/python.c (do_start_initialization):
4399         Avoid call to internal Python API.
4400         (init__gdb_module): New function.
4401
4402 2018-06-08  Gary Benson <gbenson@redhat.com>
4403
4404         * linux-thread-db.c (valprint.h): New include.
4405         (struct check_thread_db_info): New structure.
4406         (check_thread_db_on_load, tdb_testinfo): New static globals.
4407         (check_thread_db, check_thread_db_callback): New functions.
4408         (try_thread_db_load_1): Run integrity checks if requested.
4409         (maintenance_check_libthread_db): New function.
4410         (_initialize_thread_db): Register "maint check libthread-db"
4411         and "maint set/show check-libthread-db".
4412         * NEWS: Mention the above new commands.
4413
4414 2018-06-08  Tom Tromey  <tom@tromey.com>
4415
4416         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
4417         now a method.
4418
4419 2018-06-08  Tom Tromey  <tom@tromey.com>
4420
4421         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
4422
4423 2018-06-08  Tom Tromey  <tom@tromey.com>
4424
4425         * common/btrace-common.h (struct btrace_data): Add constructor,
4426         destructor, move assignment operator.
4427         <empty, clear, fini>: New methods.
4428         <format>: Initialize.
4429         (btrace_data_init, btrace_data_fini, btrace_data_clear)
4430         (btrace_data_empty): Don't declare.
4431         * common/btrace-common.c (btrace_data_init): Remove.
4432         (btrace_data::fini): Rename from btrace_data_fini.
4433         (btrace_data::empty): Rename from btrace_data_empty.
4434         (btrace_data::clear): Rename from btrace_data_clear.  Return
4435         bool.
4436         * btrace.h (make_cleanup_btrace_data): Don't declare.
4437         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
4438         (parse_xml_btrace): Update.
4439         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
4440         (maint_btrace_clear_packet_history_cmd): Update.
4441
4442 2018-06-07  Pedro Alves  <palves@redhat.com>
4443
4444         * target.h (target_ops) <beneath>: Now a method.  All references
4445         updated.
4446         (class target_stack): New.
4447         * target.c (g_target_stack): New.
4448         (g_current_top_target): Delete.
4449         (current_top_target): Get the top target out of g_target_stack.
4450         (target_stack::push, target_stack::unpush): New.
4451         (push_target, unpush_target): Reimplement.
4452         (target_is_pushed): Reimplement in terms of g_target_stack.
4453         (target_ops::beneath, target_stack::find_beneath): New.
4454
4455 2018-06-07  Pedro Alves  <palves@redhat.com>
4456
4457         * target.h (find_target_beneath): Delete declaration.
4458         * target.c (find_target_beneath): Delete definition.
4459         * aix-thread.c: All callers of find_target_beneath adjusted to
4460         call target_ops::beneath instead.
4461         * bsd-uthread.c: Likewise.
4462         * linux-thread-db.c: Likewise.
4463         * ravenscar-thread.c: Likewise.
4464         * sol-thread.c: Likewise.
4465         * spu-multiarch.c: Likewise.
4466
4467 2018-06-07  Pedro Alves  <palves@redhat.com>
4468
4469         * target.h (target_ops) <beneath>: Now a method.  All references
4470         updated.
4471         (target_ops) <m_beneath>: New.
4472         * target.c (target_ops::beneath): New.
4473         * corelow.c: Adjust all references to target_ops::beneath.
4474         * linux-thread-db.c: Likewise.
4475         * make-target-delegates: Likewise.
4476         * record-btrace.c: Likewise.
4477         * record-full.c: Likewise.
4478         * remote.c: Likewise.
4479         * target.c: Likewise.
4480         * target-delegates.c: Regenerate.
4481
4482 2018-06-07  Pedro Alves  <palves@redhat.com>
4483
4484         * target.h (target_stack): Delete.
4485         (current_top_target): Declare function.
4486         * target.c (target_stack): Delete.
4487         (g_current_top_target): New.
4488         (current_top_target): New function.
4489         * auxv.c: Use current_top_target instead of target_stack
4490         throughout.
4491         * avr-tdep.c: Likewise.
4492         * breakpoint.c: Likewise.
4493         * corefile.c: Likewise.
4494         * elfread.c: Likewise.
4495         * eval.c: Likewise.
4496         * exceptions.c: Likewise.
4497         * frame.c: Likewise.
4498         * gdbarch-selftests.c: Likewise.
4499         * gnu-v3-abi.c: Likewise.
4500         * ia64-tdep.c: Likewise.
4501         * ia64-vms-tdep.c: Likewise.
4502         * infcall.c: Likewise.
4503         * infcmd.c: Likewise.
4504         * infrun.c: Likewise.
4505         * linespec.c: Likewise.
4506         * linux-tdep.c: Likewise.
4507         * minsyms.c: Likewise.
4508         * ppc-linux-nat.c: Likewise.
4509         * ppc-linux-tdep.c: Likewise.
4510         * procfs.c: Likewise.
4511         * regcache.c: Likewise.
4512         * remote.c: Likewise.
4513         * rs6000-tdep.c: Likewise.
4514         * s390-linux-nat.c: Likewise.
4515         * s390-tdep.c: Likewise.
4516         * solib-aix.c: Likewise.
4517         * solib-darwin.c: Likewise.
4518         * solib-dsbt.c: Likewise.
4519         * solib-spu.c: Likewise.
4520         * solib-svr4.c: Likewise.
4521         * solib-target.c: Likewise.
4522         * sparc-tdep.c: Likewise.
4523         * sparc64-tdep.c: Likewise.
4524         * spu-tdep.c: Likewise.
4525         * symfile.c: Likewise.
4526         * symtab.c: Likewise.
4527         * target-descriptions.c: Likewise.
4528         * target-memory.c: Likewise.
4529         * target.c: Likewise.
4530         * target.h: Likewise.
4531         * tracefile-tfile.c: Likewise.
4532         * tracepoint.c: Likewise.
4533         * valops.c: Likewise.
4534         * valprint.c: Likewise.
4535         * value.c: Likewise.
4536         * windows-tdep.c: Likewise.
4537         * mi/mi-main.c: Likewise.
4538
4539 2018-06-07  Tom Tromey  <tom@tromey.com>
4540
4541         * valprint.h (build_address_symbolic): Declare.
4542         * printcmd.c (print_address_symbolic): Update.
4543         (build_address_symbolic): Change "name" and "filename" to
4544         std::string.
4545         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
4546         Update.
4547         * defs.h (build_address_symbolic): Remove declaration.
4548
4549 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
4550
4551         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
4552         (aarch64_vnv_type): Add function.
4553         (aarch64_pseudo_register_name): Add V regs for SVE.
4554         (aarch64_pseudo_register_type): Likewise.
4555         (aarch64_pseudo_register_reggroup_p): Likewise.
4556         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
4557         (aarch64_pseudo_read_value): Add V regs for SVE.
4558         (aarch64_pseudo_write_2): Use V0 offset for SVE
4559         (aarch64_pseudo_write): Add V regs for SVE.
4560         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
4561
4562 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
4563
4564         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
4565         (sve_vl_from_vq): Likewise.
4566
4567 2018-06-05  Tom Tromey  <tom@tromey.com>
4568
4569         * cli/cli-cmds.c (show_version): Update.
4570         * top.c (print_gdb_version): Add "interactive" parameter.
4571         Update.
4572         * main.c (captured_main_1): Update.
4573         * top.h (print_gdb_version): Add "interactive" parameter and a
4574         comment.
4575
4576 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
4577
4578         * common/enum-flags.h: Add trailing semicolon to example in
4579         comment.
4580
4581 2018-06-05  Tom Tromey  <tom@tromey.com>
4582
4583         PR cli/12326:
4584         * NEWS: Add entry about pager.
4585         * utils.c (pagination_disabled_for_command): New global.
4586         (prompt_for_continue): Allow "c" response to prompt.
4587         (reinitialize_more_filter): Clear
4588         pagination_disabled_for_command.
4589         (fputs_maybe_filtered): Check pagination_disabled_for_command.
4590
4591 2018-06-04  Tom Tromey  <tom@tromey.com>
4592
4593         * ada-lang.h (ada_lookup_symbol_list): Update.
4594         * ada-lang.c (resolve_subexp): Update.
4595         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
4596         parameter.
4597         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
4598         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
4599         results parameter to std::vector.
4600         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
4601         Update.
4602         * ada-exp.y (block_lookup): Update.
4603         (select_possible_type_sym): Change type of syms.  Remove nsyms
4604         parameter.
4605         (write_var_or_type, write_name_assoc): Update.
4606
4607 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
4608
4609         * windows-nat.c (windows_nat_target::xfer_partial): Return
4610         TARGET_XFER_E_IO if we need to delegate to the target beneath
4611         but BENEATH is NULL.
4612
4613 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
4614
4615         * Makefile.in (config.status): Add configure.nat as a
4616         dependency.
4617
4618 2018-06-04  Tom Tromey  <tom@tromey.com>
4619
4620         * cp-name-parser.y (cpname_state): Add method declarations.
4621         (HANDLE_QUAL): Update.
4622         (cpname_state::d_grab, cpname_state::fill_comp)
4623         (cpname_state::make_operator, cpname_state::make_dtor)
4624         (cpname_state::make_builtin_type, cpname_state::make_name)
4625         (cpname_state::d_qualify, cpname_state::d_int_type)
4626         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
4627         (%union): Move earlier.
4628
4629 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
4630
4631         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
4632
4633 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
4634
4635         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
4636         (aarch64_pseudo_write_1): Likewise.
4637         (aarch64_pseudo_read_value): Use helper.
4638         (aarch64_pseudo_write): Likewise.
4639
4640 2018-06-04  Pedro Alves  <palves@redhat.com>
4641
4642         * darwin-nat.c (darwin_ops): Delete.
4643         (darwin_attach_pid): Use get_native_target.
4644
4645 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
4646
4647         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
4648         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
4649
4650 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
4651
4652         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
4653         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
4654         (aarch64_gdbarch_init): Check for SVE.
4655         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
4656
4657 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
4658
4659         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
4660         * aarch64-tdep.h (aarch64_read_description): Likewise.
4661         * arch/aarch64.c (aarch64_create_target_description): Likewise.
4662         * arch/aarch64.h (aarch64_create_target_description): Likewise.
4663         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
4664         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
4665         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
4666
4667 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
4668
4669         * value.c (value_fetch_lazy_bitfield): New.
4670         (value_fetch_lazy_memory): New.
4671         (value_fetch_lazy_register): New.
4672         (value_fetch_lazy): Factor out to smaller functions.
4673
4674 2018-06-01  Tom Tromey  <tom@tromey.com>
4675
4676         * cp-name-parser.y (backslashable, represented): Now const.
4677
4678 2018-06-01  Tom Tromey  <tom@tromey.com>
4679
4680         * cp-name-parser.y: Include parser-defs.h.
4681         (parser_fprintf): Remove declaration.
4682
4683 2018-06-01  Tom Tromey  <tom@tromey.com>
4684
4685         * cp-name-parser.y: Use %pure-parser, %lex-param, and
4686         %parse-param.
4687         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
4688         (global_result): Remove globals.
4689         (struct cpname_state): New.
4690         (yyparse): Don't declare.
4691         (yylex, yyerror): Move declarations after %union.
4692         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
4693         (make_name): Add state parameter.
4694         Update all callers.
4695         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
4696         parameter.
4697         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
4698         Update.
4699         (yylex): Add lvalp, state parameters.
4700         (yyerror): Add state parameter.
4701         (cp_demangled_name_to_comp): Update.
4702
4703 2018-06-01  Tom Tromey  <tom@tromey.com>
4704
4705         * cp-name-parser.y (parser_fprintf): Declare.
4706         (GDB_YY_REMAP_PREFIX): Define.
4707         Include yy-remap.h.  Don't redefine yy* identifiers.
4708
4709 2018-06-01  Tom Tromey  <tom@tromey.com>
4710
4711         * python/py-type.c (typy_legacy_template_argument): Update.
4712         * cp-support.h (cp_demangled_name_to_comp): Update.
4713         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
4714         parameter to be a "std::string *".
4715         (main): Update.
4716
4717 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
4718
4719         * ada-lex.l: Include "diagnostics.h" instead of
4720         "common/diagnostics.h".
4721         * unittests/environ-selftests.c: Likewise.
4722         * common/diagnostics.h: Moved to ../include.
4723
4724 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
4725
4726         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
4727         to language_mode_manual while calling breakpoint_re_set_one.
4728
4729 2018-06-01  Tom Tromey  <tom@tromey.com>
4730
4731         * valops.c (value_cast_structs, destructor_name_p): Update.
4732         * symtab.c (gdb_mangle_name): Update.
4733         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
4734         Update.
4735         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
4736         (pascal_object_print_value_fields, pascal_object_print_value):
4737         Update.
4738         * p-typeprint.c (pascal_type_print_derivation_info): Update.
4739         * linespec.c (find_methods): Update.
4740         * gdbtypes.h (type_name_no_tag): Remove.
4741         (type_name_or_error): Rename from type_name_no_tag_or_error.
4742         * gdbtypes.c (type_name_no_tag): Remove.
4743         (type_name_or_error): Rename from type_name_no_tag_or_error.
4744         (lookup_struct_elt_type, check_typedef): Update.
4745         * expprint.c (print_subexp_standard): Update.
4746         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
4747         * d-namespace.c (d_lookup_nested_symbol): Update.
4748         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
4749         (cp_print_class_member): Update.
4750         * cp-namespace.c (cp_lookup_nested_symbol): Update.
4751         * completer.c (add_struct_fields): Update.
4752         * c-typeprint.c (cp_type_print_derivation_info)
4753         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
4754         Update.
4755         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
4756         (ada_prefer_type, ada_is_exception_sym): Update.
4757
4758 2018-06-01  Tom Tromey  <tom@tromey.com>
4759
4760         * valops.c (enum_constant_from_type, value_namespace_elt)
4761         (value_maybe_namespace_elt): Update.
4762         * valarith.c (find_size_for_pointer_math): Update.
4763         * target-descriptions.c (make_gdb_type): Update.
4764         * symmisc.c (print_symbol): Update.
4765         * stabsread.c (define_symbol, read_type)
4766         (complain_about_struct_wipeout, add_undefined_type)
4767         (cleanup_undefined_types_1): Update.
4768         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
4769         (rust_range_type_p, val_print_struct, rust_print_struct_def)
4770         (rust_internal_print_type, rust_composite_type)
4771         (rust_evaluate_funcall, rust_evaluate_subexp)
4772         (rust_inclusive_range_type_p): Update.
4773         * python/py-type.c (typy_get_tag): Update.
4774         * p-typeprint.c (pascal_type_print_base): Update.
4775         * mdebugread.c (parse_symbol, parse_type): Update.
4776         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
4777         Update.
4778         * guile/scm-type.c (gdbscm_type_tag): Update.
4779         * go-lang.c (sixg_string_p): Update.
4780         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
4781         Update.
4782         * gdbtypes.h (struct main_type) <tag_name>: Remove.
4783         (TYPE_TAG_NAME): Remove.
4784         * gdbtypes.c (type_name_no_tag): Simplify.
4785         (check_typedef, check_types_equal, recursive_dump_type)
4786         (copy_type_recursive, arch_composite_type): Update.
4787         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
4788         in summary mode when needed.
4789         * eval.c (evaluate_funcall): Update.
4790         * dwarf2read.c (fixup_go_packaging, read_structure_type)
4791         (process_structure_scope, read_enumeration_type)
4792         (read_namespace_type, read_module_type, determine_prefix): Update.
4793         * cp-support.c (inspect_type): Update.
4794         * coffread.c (process_coff_symbol, decode_base_type): Update.
4795         * c-varobj.c (c_is_path_expr_parent): Update.
4796         * c-typeprint.c (c_type_print_base_struct_union): Update.
4797         (c_type_print_base_1): Update.  Print struct/class/union/enum in
4798         summary when using C language.
4799         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
4800         (gen_maybe_namespace_elt): Update.
4801         * ada-lang.c (ada_type_name): Simplify.
4802         (empty_record, ada_template_to_fixed_record_type_1)
4803         (template_to_static_fixed_type)
4804         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
4805
4806 2018-06-01  Tom Tromey  <tom@tromey.com>
4807
4808         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
4809         c_print_type.
4810         * c-typeprint.c (c_print_type_1): Add "language" parameter.
4811         (c_print_type): Update.
4812         (c_print_type): New overload.
4813         (c_type_print_varspec_prefix, c_type_print_args)
4814         (c_type_print_varspec_suffix, c_print_type_no_offsets)
4815         (c_type_print_base_struct_union, c_type_print_base_1)
4816         (cp_type_print_method_args): Add "language" parameter.
4817         (c_type_print_base): Update.
4818         * c-lang.h (c_print_type): Add new overload.
4819
4820 2018-06-01  Tom Tromey  <tom@tromey.com>
4821
4822         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
4823         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
4824
4825 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
4826
4827         * aarch64-tdep.c (aarch64_sve_register_names): New const
4828         var.
4829         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
4830         (AARCH64_SVE_Z_REGS_NUM): New define.
4831         (AARCH64_SVE_P_REGS_NUM): Likewise.
4832         (AARCH64_SVE_NUM_REGS): Likewise.
4833
4834 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
4835
4836         * nat/linux-ptrace.h [__alpha__]
4837         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
4838         definitions.
4839
4840 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
4841
4842         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
4843         the endianness selected.
4844         * NEWS: Document `set endian auto' mode operation update.
4845
4846 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
4847
4848         * Makefile.in: Add new header.
4849         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
4850         (sve_vl_from_vg): Likewise.
4851         (sve_vq_from_vl): Likewise.
4852         (sve_vl_from_vq): Likewise.
4853         (sve_vq_from_vg): Likewise.
4854         (sve_vg_from_vq): Likewise.
4855         * configure.nat: Add new c file.
4856         * nat/aarch64-sve-linux-ptrace.c: New file.
4857         * nat/aarch64-sve-linux-ptrace.h: New file.
4858
4859 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
4860
4861         * aarch64-linux-nat.c (aarch64_linux_read_description):
4862         Add parmeter zero.
4863         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
4864         Likewise.
4865         * aarch64-tdep.c (tdesc_aarch64_list): Add.
4866         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
4867         (aarch64_gdbarch_init): Add parmeter zero.
4868         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
4869         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
4870         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
4871         parmeter.
4872         * doc/gdb.texinfo: Describe SVE feature
4873         * features/aarch64-sve.c: New file.
4874
4875 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
4876
4877         PR gdb/23210
4878         * gdbarch.sh (significant_addr_bit): Default to zero when
4879         not set by target architecture.
4880         * gdbarch.c: Re-generated.
4881         * utils.c (address_significant): Update.
4882
4883 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
4884
4885         * stack.c (func_command): Remove trailing newline in call to error.
4886
4887 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
4888
4889         * regcache.h (regcache_raw_collect): Remove, update callers to
4890         use regcache::raw_collect.
4891         * regcache.c (regcache_raw_collect): Remove.
4892
4893 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
4894
4895         * regcache.h (regcache_raw_supply): Remove, update callers to
4896         use detached_regcache::raw_supply.
4897         * regcache.c (regcache_raw_supply): Remove.
4898
4899 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
4900
4901         * regcache.h (regcache_cooked_write_part): Remove, update
4902         callers to use regcache::cooked_write_part.
4903         * regcache.c (regcache_cooked_write_part): Remove.
4904
4905 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
4906
4907         * regcache.h (regcache_cooked_read_part): Remove, update callers
4908         to use readable_regcache::cooked_read_part.
4909         * regcache.c (regcache_cooked_read_part): Remove.
4910
4911 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
4912
4913         * regcache.h (regcache_cooked_read_value): Remove, update
4914         callers to use readable_regcache::cooked_read_value.
4915         * regcache.c (regcache_cooked_read_value): Remove.
4916
4917 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
4918
4919         * regcache.h (regcache_cooked_write): Remove, update callers to
4920         use regcache::cooked_write.
4921         * regcache.c (regcache_cooked_write): Remove.
4922
4923 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
4924
4925         * regcache.h (regcache_invalidate): Remove, update callers to
4926         use detached_regcache::invalidate instead.
4927         * regcache.c (regcache_invalidate): Remove.
4928
4929 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
4930
4931         * regcache.h (regcache_raw_write_part): Remove, update callers
4932         to use regcache::raw_write_part instead.
4933         * regcache.c (regcache_raw_write_part): Remove.
4934
4935 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
4936
4937         * regcache.h (regcache_raw_read_part): Remove, update callers to
4938         use readable_regcache::raw_read_part instead.
4939         * regcache.c (regcache_raw_read_part): Remove.
4940
4941 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
4942
4943         * regcache.h (regcache_cooked_read): Remove, update callers to
4944         use readable_regcache::cooked_read instead.
4945         * regcache.c (regcache_cooked_read): Remove.
4946
4947 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
4948
4949         * regcache.h (regcache_raw_write): Remove, update callers to use
4950         regcache::raw_write instead.
4951         * regcache.c (regcache_raw_write): Remove.
4952
4953 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
4954
4955         * regcache.h (regcache_raw_read): Remove, update callers to use
4956         readable_regcache::raw_read instead.
4957         * regcache.c (regcache_raw_read): Remove.
4958
4959 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
4960
4961         * regcache.h (regcache_raw_update): Remove, update callers to
4962         use readable_regcache::raw_update instead.
4963         * regcache.c (regcache_raw_update): Remove.
4964
4965 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
4966
4967         * regcache.h (regcache_register_status): Remove, update callers
4968         to use reg_buffer::get_register_status directly instead.
4969         * regcache.c (regcache_register_status): Remove.
4970
4971 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
4972
4973         * regcache.h (regcache_get_ptid): Remove, update all callers to
4974         call regcache::ptid instead.
4975         * regcache.c (regcache_get_ptid): Remove.
4976
4977 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
4978
4979         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
4980
4981 2018-05-30  Pedro Alves  <palves@redhat.com>
4982
4983         * common/common-exceptions.h (exception_rethrow): Use
4984         ATTRIBUTE_NORETURN.
4985
4986 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
4987
4988         * breakpoint.c (print_solib_event, check_status_catch_solib):
4989         Remove struct keyword in range-based for loops.
4990         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
4991         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
4992         Likewise.
4993         * linespec.c (find_superclass_methods, search_minsyms_for_name):
4994         Likewise.
4995         * symfile.c (addr_info_make_relative): Likewise.
4996         * thread.c (value_in_thread_stack_temporaries): Likewise.
4997
4998 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
4999
5000         PR gdb/16841
5001         * valops.c (value_struct_elt_for_reference): Call check_typedef on
5002         aggregate type to get its real type before accessing it.
5003
5004 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
5005
5006         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
5007         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
5008         * coff-pe-read.c (add_pe_forwarded_sym): Replace
5009         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
5010         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
5011         * jit.c (jit_breakpoint_re_set_internal): Likewise.
5012         * printcmd.c (info_address_command): Likewise.
5013
5014 2018-05-29  Tom Tromey  <tom@tromey.com>
5015
5016         * windows-nat.c (handle_exception): Update fall-through comment.
5017
5018 2018-05-29  Tom Tromey  <tom@tromey.com>
5019
5020         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
5021         (struct program_space) <added_solibs>: Now a std::vector.
5022         * breakpoint.c (print_solib_event): Update.
5023         (check_status_catch_solib): Update.
5024         * progspace.c (clear_program_space_solib_cache): Update.
5025         * solib.c (update_solib_list): Update.
5026
5027 2018-05-29  Tom Tromey  <tom@tromey.com>
5028
5029         * python/py-type.c (typy_richcompare): Update.
5030         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
5031         * gdbtypes.h (types_deeply_equal): Return bool.
5032         (types_equal): Likewise.
5033         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
5034         declare VEC.
5035         (check_types_equal): Change worklist to std::vector.  Return
5036         bool.
5037         (struct type_equality_entry): Add constructor.
5038         (compare_maybe_null_strings): Return bool.
5039         (check_types_worklist): Return bool.  Change worklist to
5040         std::vector.
5041         (types_deeply_equal): Use std::vector.
5042         (types_equal): Return bool.
5043         (compare_maybe_null_strings): Simplify.
5044
5045 2018-05-29  Tom Tromey  <tom@tromey.com>
5046
5047         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
5048
5049 2018-05-29  Tom Tromey  <tom@tromey.com>
5050
5051         * objc-lang.h: Don't include cp-support.h.
5052         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
5053         declare VEC.
5054
5055 2018-05-27  Tom Tromey  <tom@tromey.com>
5056
5057         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
5058
5059 2018-05-25  Tom Tromey  <tom@tromey.com>
5060
5061         * value.c (value::location): Initialize.
5062
5063 2018-05-25  Tom Tromey  <tom@tromey.com>
5064
5065         * dbxread.c (init_bincl_list): Remove.
5066         (bincl_list): Now a std::vector.
5067         (bincls_allocated, next_bincl): Remove.
5068         (free_bincl_list, do_free_bincl_list_cleanup)
5069         (make_cleanup_free_bincl_list): Remove.
5070         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
5071         unique_xmalloc_ptr.
5072         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
5073         (struct header_file_location): Add constructor.
5074         (add_bincl_to_list): Remove.
5075
5076 2018-05-25  Tom Tromey  <tom@tromey.com>
5077
5078         * tui/tui.c (tui_enable): Update.
5079         * mi/mi-interp.c (mi_interp::init): Update.
5080         * interps.h (class interp) <name>: New method.
5081         <m_name>: Rename from name.
5082         (~scoped_restore_interp): Update.
5083         * interps.c (interp::interp): Update.
5084         (interp_add, interp_set, interp_lookup_existing)
5085         (current_interp_named_p): Update.
5086
5087 2018-05-25  Tom Tromey  <tom@tromey.com>
5088
5089         * interps.c (interp_name): Remove.
5090         * mi/mi-interp.c (mi_interp::init): Update.
5091         * interps.h (interp_name): Remove.
5092         (~scoped_restore_interp): Update.
5093         * tui/tui.c (tui_enable): Update.
5094
5095 2018-05-25  Tom Tromey  <tom@tromey.com>
5096
5097         * utils.c (fputs_maybe_filtered): Update.
5098         * linespec.c (decode_line_full): Update.
5099         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
5100         (mi_print_breakpoint_for_event, mi_solib_loaded)
5101         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
5102         (mi_user_selected_context_changed): Update.
5103         * mi/mi-main.c (mi_execute_command): Update.
5104         * cli/cli-script.c (execute_control_command): Update.
5105         * python/python.c (execute_gdb_command): Update.
5106         * solib.c (info_sharedlibrary_command): Update.
5107         * interps.c (interp_ui_out): Remove.
5108         * interps.h (interp_ui_out): Remove.
5109
5110 2018-05-25  Tom Tromey  <tom@tromey.com>
5111
5112         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
5113         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
5114         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
5115
5116 2018-05-25  Tom Tromey  <tom@tromey.com>
5117
5118         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
5119         * interps.c (interp_exec): Use scoped_restore.
5120
5121 2018-05-25  Tom Tromey  <tom@tromey.com>
5122
5123         * remote.c (remote_target::remote_file_get): Use
5124         gdb::byte_vector.
5125         (remote_target::remote_file_put): Likewise.
5126
5127 2018-05-25  Tom Tromey  <tom@tromey.com>
5128
5129         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
5130         a std::string.
5131         (get_pe_section_index, add_pe_exported_sym): Update.
5132         (read_pe_exported_syms): Use gdb::def_vector.
5133
5134 2018-05-25  Tom Tromey  <tom@tromey.com>
5135
5136         * frame.c (remove_prev_frame): Remove.
5137         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
5138
5139 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
5140
5141         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
5142         Remove prototypes.
5143         * mips-linux-nat.c (supply_fpregset): Always call
5144         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
5145         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
5146         `mips_fill_fpregset'.
5147         * mips-linux-tdep.c (mips_supply_fpregset)
5148         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
5149         (mips_fill_fpregset_wrapper): Remove functions.
5150         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
5151         (mips_linux_fpregset): Remove variable.
5152         (mips_linux_iterate_over_regset_sections): Use
5153         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
5154         (mips_linux_o32_sigframe_init): Remove comment.
5155
5156 2018-05-25  Pedro Alves  <palves@redhat.com>
5157
5158         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
5159         (struct readahead_cache, struct packet_reg, struct
5160         remote_arch_state, class remote_state): Move higher up in the
5161         file.
5162         (remote_target::m_remote_state): Now an object instead of a pointer.
5163         (remote_target::get_remote_state): Adjust.
5164
5165 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
5166
5167         * stack.c (select_and_print_frame): Delete.
5168         (struct function_bounds): Move struct within function.
5169         (func_command): Most content moved into new function
5170         find_frame_for_function, use new function, print result, add
5171         function comment.
5172         (find_frame_for_function): New function, now returns a result.
5173
5174 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5175
5176         * stack.c (iterate_over_block_arg_vars): Fix comment.
5177         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
5178
5179 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
5180
5181         PR gdb/23203
5182         * frame.c
5183         (scoped_restore_selected_frame::scoped_restore_selected_frame):
5184         Define.
5185         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
5186         Define.
5187         * frame.h (class scoped_restore_selected_frame): New class.
5188         * stack.c (print_frame_local_vars): Remove catching and rethrowing
5189         of any exception, use scoped_restore_selected_frame to restore the
5190         frame instead.
5191
5192 2018-05-24  Pedro Alves  <palves@redhat.com>
5193
5194         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
5195         override.
5196
5197 2018-05-23  Tom Tromey  <tom@tromey.com>
5198
5199         * complaints.c (struct complaints): Remove.
5200         (symfile_complaint_book): Remove.
5201         (series): New global.
5202         (complaint_internal): Update.
5203         (clear_complaints): Update.
5204
5205 2018-05-23  Tom Tromey  <tom@tromey.com>
5206
5207         * complaints.c (counters): New global.
5208         (struct complain): Remove.
5209         (struct complaints) <root>: Remove.
5210         (complaint_sentinel): Remove.
5211         (symfile_complaint_book): Update.
5212         (find_complaint) Remove.
5213         (complaint_internal, clear_complaints): Update.
5214
5215 2018-05-23  Tom Tromey  <tom@tromey.com>
5216
5217         * complaints.c (struct complain) <file, line>: Remove.
5218         (find_complaint): Remove file, line parameters.
5219         (complaint_internal): Update.
5220
5221 2018-05-23  Tom Tromey  <tom@tromey.com>
5222
5223         * complaints.c (vcomplaint): Remove.
5224         (complaint_internal) Merge in contents of vcomplaint.
5225
5226 2018-05-23  Tom Tromey  <tom@tromey.com>
5227
5228         * complaints.c (struct complaints) <explanation>: Remove.
5229         (symfile_explanations): Remove.
5230         (symfile_complaint_book): Update.
5231         (vcomplaint): Update.
5232         (struct explanation): Remove.
5233
5234 2018-05-23  Tom Tromey  <tom@tromey.com>
5235
5236         * complaints.c (symfile_complaints): Remove.
5237         (complaint_internal): Remove "complaints" parameter.
5238         (clear_complaints, vcomplaint): Remove "c" parameter.
5239         (get_complaints): Remove.
5240         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
5241         (dwarf2_debug_line_missing_file_complaint)
5242         (dwarf2_debug_line_missing_end_sequence_complaint)
5243         (dwarf2_complex_location_expr_complaint)
5244         (dwarf2_const_value_length_mismatch_complaint)
5245         (dwarf2_section_buffer_overflow_complaint)
5246         (dwarf2_macro_malformed_definition_complaint)
5247         (dwarf2_invalid_attrib_class_complaint)
5248         (create_addrmap_from_index, dw2_symtab_iter_next)
5249         (dw2_expand_marked_cus)
5250         (dw2_debug_names_iterator::find_vec_in_debug_names)
5251         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
5252         (create_debug_type_hash_table, init_cutu_and_read_dies)
5253         (partial_die_parent_scope, add_partial_enumeration)
5254         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
5255         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
5256         (read_import_statement, read_file_scope, create_dwo_cu_reader)
5257         (create_cus_hash_table, create_dwp_hash_table)
5258         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
5259         (dwarf2_rnglists_process, dwarf2_ranges_process)
5260         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
5261         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
5262         (handle_struct_member_die, process_structure_scope)
5263         (read_array_type, read_common_block, read_module_type)
5264         (read_tag_pointer_type, read_typedef, read_base_type)
5265         (read_subrange_type, load_partial_dies, partial_die_info::read)
5266         (partial_die_info::read, partial_die_info::read)
5267         (partial_die_info::read, read_checked_initial_length_and_offset)
5268         (dwarf2_string_attr, read_formatted_entries)
5269         (dwarf_decode_line_header)
5270         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
5271         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
5272         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
5273         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
5274         (get_signatured_type, get_DW_AT_signature_type)
5275         (decode_locdesc, file_file_name, consume_improper_spaces)
5276         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
5277         (dwarf_decode_macro_bytes, dwarf_decode_macros)
5278         (dwarf2_symbol_mark_computed, set_die_type)
5279         (read_attribute_value): Update.
5280         * stap-probe.c (handle_stap_probe, get_stap_base_address):
5281         Update.
5282         * dbxread.c (unknown_symtype_complaint)
5283         (lbrac_mismatch_complaint, repeated_header_complaint)
5284         (set_namestring, function_outside_compilation_unit_complaint)
5285         (read_dbx_symtab, process_one_symbol): Update.
5286         * gdbtypes.c (stub_noname_complaint): Update.
5287         * windows-nat.c (handle_unload_dll): Update.
5288         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
5289         (decode_base_type): Update.
5290         * xcoffread.c (bf_notfound_complaint, ef_complaint)
5291         (eb_complaint, record_include_begin, record_include_end)
5292         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
5293         (process_xcoff_symbol, read_symbol)
5294         (function_outside_compilation_unit_complaint)
5295         (scan_xcoff_symtab): Update.
5296         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
5297         * buildsym.c (finish_block_internal, make_blockvector)
5298         (end_symtab_get_static_block, augment_type_symtab): Update.
5299         * dtrace-probe.c (dtrace_process_dof)
5300         (dtrace_static_probe_ops::get_probes): Update.
5301         * complaints.h (struct complaint): Don't declare.
5302         (symfile_complaints): Remove.
5303         (complaint_internal): Remove "complaints" parameter.
5304         (complaint): Likewise.
5305         (clear_complaints): Likewise.
5306         * symfile.c (syms_from_objfile_1, finish_new_objfile)
5307         (reread_symbols): Update.
5308         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
5309         (dwarf2_frame_cache, decode_frame_entry): Update.
5310         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
5311         * objc-lang.c (lookup_objc_class, lookup_child_selector)
5312         (info_selectors_command): Update.
5313         * macrotab.c (macro_include, check_for_redefinition)
5314         (macro_undef): Update.
5315         * objfiles.c (filter_overlapping_sections): Update.
5316         * stabsread.c (invalid_cpp_abbrev_complaint)
5317         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
5318         (define_symbol, error_type, read_type, rs6000_builtin_type)
5319         (stabs_method_name_from_physname, read_member_functions)
5320         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
5321         (attach_fields_to_type, complain_about_struct_wipeout)
5322         (read_range_type, read_args, common_block_start)
5323         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
5324         Update.
5325         * mdebugread.c (index_complaint, unknown_ext_complaint)
5326         (basic_type_complaint, bad_tag_guess_complaint)
5327         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
5328         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
5329         (parse_procedure, parse_lines)
5330         (function_outside_compilation_unit_complaint)
5331         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
5332         (bad_tag_guess_complaint, reg_value_complaint): Update.
5333         * cp-support.c (demangled_name_complaint): Update.
5334         * macroscope.c (sal_macro_scope): Update.
5335         * dwarf-index-write.c (class debug_names): Update.
5336
5337 2018-05-23  Tom Tromey  <tom@tromey.com>
5338
5339         * complaints.c (clear_complaints): Remove "noisy" parameter.
5340         * complaints.h (clear_complaints): Update.
5341         * symfile.c (syms_from_objfile_1, finish_new_objfile)
5342         (reread_symbols): Update.
5343
5344 2018-05-23  Tom Tromey  <tom@tromey.com>
5345
5346         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
5347         SUBSEQUENT_MESSAGE.
5348         (vcomplaint, clear_complaints): Update.
5349         (symfile_explanations): Remove some messages.
5350
5351 2018-05-23  Tom Tromey  <tom@tromey.com>
5352
5353         * complaints.c (internal_complaint): Remove.
5354         * complaints.h (internal_complaint): Remove.
5355
5356 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
5357
5358         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
5359
5360 2018-05-22  Pedro Alves  <palves@redhat.com>
5361
5362         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
5363         (remote_fileio_badfd, remote_fileio_return_errno)
5364         (remote_fileio_return_success, remote_fileio_func_open)
5365         (remote_fileio_func_open, remote_fileio_func_close)
5366         (remote_fileio_func_read, remote_fileio_func_write)
5367         (remote_fileio_func_lseek, remote_fileio_func_rename)
5368         (remote_fileio_func_unlink, remote_fileio_func_stat)
5369         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
5370         (remote_fileio_func_isatty, remote_fileio_func_system): Add
5371         remote_target parameter.
5372         (remote_fio_func_map) <func>: Add remote_target parameter.
5373         (do_remote_fileio_request, remote_fileio_request):
5374         * remote-fileio.h (remote_fileio_request):
5375         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
5376         remote_target parameter.
5377         (remote_notif_process, handle_notification): Adjust to pass down
5378         the remote.
5379         (remote_notif_state_allocate): Add remote_target parameter.  Save
5380         it.
5381         * remote-notif.h (struct remote_target): Forward declare.
5382         (struct notif_client) <parse, ack, can_get_pending_events>: Add
5383         remote_target parameter.
5384         (struct remote_notif_state) <remote>: New field.
5385         (remote_notif_ack, remote_notif_parse): Add remote_target
5386         parameter.
5387         (remote_notif_state_allocate, remote_notif_state_allocate): Add
5388         remote_target parameter.
5389         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
5390         (threads_listing_context, rmt_thread_action, protocol_feature)
5391         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
5392         (packet_result, struct threads_listing_context, remote_state):
5393         Move definitions and declarations higher up.
5394         (remote_target) <~remote_target>: Declare.
5395         (remote_download_command_source, remote_file_put, remote_file_get)
5396         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
5397         (remote_hostio_pread_vFile, remote_hostio_send_command)
5398         (remote_hostio_set_filesystem, remote_hostio_open)
5399         (remote_hostio_close, remote_hostio_unlink, remote_state)
5400         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
5401         (get_memory_write_packet_size, get_memory_read_packet_size)
5402         (append_pending_thread_resumptions, remote_detach_1)
5403         (append_resumption, remote_resume_with_vcont)
5404         (add_current_inferior_and_thread, wait_ns, wait_as)
5405         (process_stop_reply, remote_notice_new_inferior)
5406         (process_initial_stop_replies, remote_add_thread)
5407         (btrace_sync_conf, remote_btrace_maybe_reopen)
5408         (remove_new_fork_children, kill_new_fork_children)
5409         (discard_pending_stop_replies, stop_reply_queue_length)
5410         (check_pending_events_prevent_wildcard_vcont)
5411         (discard_pending_stop_replies_in_queue, stop_reply)
5412         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
5413         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
5414         (remote_interrupt_as, remote_interrupt_ns)
5415         (remote_get_noisy_reply, remote_query_attached)
5416         (remote_add_inferior, remote_current_thread, get_current_thread)
5417         (set_thread, set_general_thread, set_continue_thread)
5418         (set_general_process, write_ptid)
5419         (remote_unpack_thread_info_response, remote_get_threadinfo)
5420         (parse_threadlist_response, remote_get_threadlist)
5421         (remote_threadlist_iterator, remote_get_threads_with_ql)
5422         (remote_get_threads_with_qxfer)
5423         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
5424         (get_offsets, remote_check_symbols, remote_supported_packet)
5425         (remote_query_supported, remote_packet_size)
5426         (remote_serial_quit_handler, remote_detach_pid)
5427         (remote_vcont_probe, remote_resume_with_hc)
5428         (send_interrupt_sequence, interrupt_query)
5429         (remote_notif_get_pending_events, fetch_register_using_p)
5430         (send_g_packet, process_g_packet, fetch_registers_using_g)
5431         (store_register_using_P, store_registers_using_G)
5432         (set_remote_traceframe, check_binary_download)
5433         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
5434         (remote_xfer_live_readonly_partial, remote_read_bytes)
5435         (remote_send_printf, remote_flash_write, readchar)
5436         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
5437         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
5438         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
5439         (extended_remote_disable_randomization, extended_remote_run)
5440         (send_environment_packet, extended_remote_environment_support)
5441         (extended_remote_set_inferior_cwd, remote_write_qxfer)
5442         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
5443         (packet_command): Now methods of ...
5444         (remote_target): ... this class.
5445         (m_remote_state) <remote_target>: New field.
5446         (struct remote_state) <stop_reply_queue,
5447         remote_async_inferior_event_token, wait_forever_enabled_p>: New
5448         fields.
5449         (remote_state::remote_state): Allocate stop_reply_queue.
5450         (remote_state): Delete global.
5451         (get_remote_state_raw): Delete.
5452         (remote_target::get_remote_state): Allocate m_remote_state on
5453         demand.
5454         (get_current_remote_target): New.
5455         (remote_ops, extended_remote_ops): Delete.
5456         (wait_forever_enabled_p, remote_async_inferior_event_token):
5457         Delete, moved to struct remote_state.
5458         (remote_target::close): Delete self.  Destruction bits split to
5459         ...
5460         (remote_target::~remote_target): ... this.
5461         (show_memory_packet_size): Adjust to use
5462         get_current_remote_target.
5463         (struct protocol_feature) <func>: Add remote_target parameter.
5464         All callers adjusted.
5465         (curr_quit_handler_target): New.
5466         (remote_serial_quit_handler): Reimplement.
5467         (remote_target::open_1): Adjust to use get_current_remote_target.
5468         Heap-allocate remote_target/extended_remote_target instances.
5469         (vcont_builder::vcont_builder): Add remote_target parameter, and
5470         save it in m_remote.  All callers adjusted.
5471         (vcont_builder::m_remote): New field.
5472         (vcont_builder::restart, vcont_builder::flush)
5473         (vcont_builder::push_action): Use it.
5474         (remote_target::commit_resume): Use it.
5475         (struct queue_iter_param) <remote>: New field.
5476         (remote_target::remove_new_fork_children): Fill in 'remote' field.
5477         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
5478         (check_pending_event_prevents_wildcard_vcont_callback)
5479         (remote_target::check_pending_events_prevent_wildcard_vcont)
5480         (remote_target::discard_pending_stop_replies)
5481         (remote_target::discard_pending_stop_replies_in_queue)
5482         (remote_target::remote_notif_remove_queued_reply): Fill in
5483         'remote' field.
5484         (remote_notif_get_pending_events): New.
5485         (remote_target::readchar, remote_target::remote_serial_write):
5486         Save/restore curr_quit_handler_target.
5487         (putpkt): New.
5488         (kill_new_fork_children): Fill in 'remote' field.
5489         (packet_command): Use get_current_remote_target, defer to
5490         remote_target method of same name.
5491         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
5492         parameter, and save it in m_remote.  All callers adjusted.
5493         (scoped_remote_fd::release): Use m_remote.
5494         (scoped_remote_fd::m_remote): New field.
5495         (remote_file_put, remote_file_get, remote_file_delete): Use
5496         get_current_remote_target, defer to remote_target method of same
5497         name.
5498         (remote_btrace_reset): Add remote_state paremeter.  Update all
5499         callers.
5500         (remote_async_inferior_event_handler). Pass down 'data'.
5501         (remote_new_objfile): Use get_current_remote_target.
5502         (remote_target::vcont_r_supported): New.
5503         (set_range_stepping): Use get_current_remote_target and
5504         remote_target::vcont_r_supported.
5505         (_initialize_remote): Don't allocate 'remote_state' and
5506         'stop_reply_queue' globals.
5507         * remote.h (struct remote_target): Forward declare.
5508         (getpkt, putpkt, remote_notif_get_pending_events): Add
5509         'remote_target' parameter.
5510
5511 2018-05-22  Pedro Alves  <palves@redhat.com>
5512
5513         * remote.c (vcont_builder): Now a class.  Make all data members
5514         private.
5515         (vcont_builder) <vcont_builder, restart, flush, push_action>:
5516         Declare methods.
5517         (vcont_builder_restart): Rename to ...
5518         (vcont_builder::restart): ... this.
5519         (vcont_builder_flush): Rename to ...
5520         (vcont_builder::flush): ... this.
5521         (vcont_builder_push_action): Rename to ...
5522         (vcont_builder::push_action): ... this.
5523         (remote_target::commit_resume): Adjust.
5524
5525 2018-05-22  Pedro Alves  <palves@redhat.com>
5526
5527         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
5528         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
5529         (get_fixed_memory_packet_size): New.
5530         (get_memory_packet_size): Use it.
5531         (set_memory_packet_size): Don't override the config size with
5532         DEFAULT_MAX_MEMORY_PACKET_SIZE.
5533         (show_memory_packet_size): Use get_fixed_memory_packet_size.
5534         Don't refer to get_memory_packet_size if not connected to a remote
5535         target.  Show "(default)" if configured size is 0.
5536
5537 2018-05-22  Pedro Alves  <palves@redhat.com>
5538
5539         * remote.c (remote_target::mourn_inferior): Move
5540         discard_pending_stop_replies call here from ...
5541         (_initialize_remote): ... here.
5542
5543 2018-05-22  Pedro Alves  <palves@redhat.com>
5544
5545         * remote.c (compare_section_command): Remove set_general_process
5546         call.
5547
5548 2018-05-22  Pedro Alves  <palves@redhat.com>
5549
5550         * remote.c (struct packet_reg, struct remote_arch_state):
5551         Move higher up in the file.
5552         (remote_state) <m_arch_states>: Store remote_arch_state values
5553         instead of remote_arch_state pointers.
5554         (remote_state::get_remote_arch_state): Adjust.
5555
5556 2018-05-22  Pedro Alves  <palves@redhat.com>
5557
5558         * remote.c: Include <unordered_map>.
5559         (remote_state): Now a class.
5560         (remote_state) <get_remote_arch_state>: Declare method.
5561         <get_remote_arch_state>: New field.
5562         (remote_arch_state) <remote_arch_state>: Declare ctor.
5563         <regs>: Now a unique_ptr.
5564         (remote_gdbarch_data_handle): Delete.
5565         (get_remote_arch_state): Delete.
5566         (remote_state::get_remote_arch_state): New.
5567         (get_remote_state): Adjust to call remote_state's
5568         get_remote_arch_state method.
5569         (init_remote_state): Delete, bits factored out to ...
5570         (remote_arch_state::remote_arch_state): ... this new method.
5571         (get_remote_packet_size, get_memory_packet_size)
5572         (process_g_packet, remote_target::fetch_registers)
5573         (remote_target::prepare_to_store, store_registers_using_G)
5574         (remote_target::store_registers, remote_target::get_trace_status):
5575         Adjust to call remote_state's method.
5576         (_initialize_remote): Remove reference to
5577         remote_gdbarch_data_handle.
5578
5579 2018-05-22  Pedro Alves  <palves@redhat.com>
5580
5581         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
5582         pread>: New method declarations.
5583         (remote_target::open_1): Adjust.
5584         (readahead_cache_invalidate): Rename to ...
5585         (readahead_cache::invalidate): ... this, and adjust to be a class
5586         method.
5587         (readahead_cache_invalidate_fd): Rename to ...
5588         (readahead_cache::invalidate_fd): ... this, and adjust to be a
5589         class method.
5590         (remote_hostio_pwrite): Adjust.
5591         (remote_hostio_pread_from_cache): Rename to ...
5592         (readahead_cache::pread): ... this, and adjust to be a class
5593         method.
5594         (remote_hostio_close): Adjust.
5595
5596 2018-05-22  Pedro Alves  <palves@redhat.com>
5597
5598         * remote.c (remote_hostio_close_cleanup): Delete.
5599         (class scoped_remote_fd): New.
5600         (remote_file_put, remote_file_get): Use it.
5601
5602 2018-05-22  Pedro Alves  <palves@redhat.com>
5603
5604         (struct vCont_action_support): Use bool and initialize all fields.
5605         (struct readahead_cache): Initialize all fields.
5606         (remote_state): Use bool and initialize all fields.
5607         (remote_state::remote_state, remote_state::~remote_state): New.
5608         (new_remote_state): Delete.
5609         (_initialize_remote): Use new to allocate remote_state.
5610
5611 2018-05-22  Pedro Alves  <palves@redhat.com>
5612             張俊芝  <zjz@zjz.name>
5613
5614         PR gdb/22973
5615         * c-exp.y: Include "c-support.h".
5616         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
5617         of tolower.  Use c_ident_is_alpha to scan names.
5618         * c-lang.c: Include "c-support.h".
5619         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
5620         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
5621         * c-support.h: New file, with bits factored out from ...
5622         * cp-name-parser.y: ... this file.
5623         Include "c-support.h".
5624         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
5625         c-support.h and renamed.
5626         (symbol_end, yylex): Adjust.
5627
5628 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
5629
5630         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
5631         parameter type to CORE_ADDR.
5632         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
5633         parameter type in declaration to CORE_ADDR.
5634         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
5635         target_auxv_search to get AT_HWCAP and use the result to get the
5636         target description.
5637         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
5638         to CORE_ADDR. Remove the cast of the return value to unsigned
5639         long. Fix error predicate of target_auxv_search.
5640         (ppc_linux_nat_target::read_description): Change the type of the
5641         hwcap variable to CORE_ADDR.
5642
5643 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
5644
5645         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
5646         if the size of fpscr is larger than 32 bits.
5647
5648 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
5649
5650         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
5651         (ppc32_linux_vsxregmap): New global.
5652         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
5653         regcache_supply_regset, and regcache_collect_regset.
5654         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
5655         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
5656         (fetch_vsx_register, store_vsx_register): Remove.
5657         (fetch_vsx_registers): Add regno parameter. Get regset using
5658         ppc_linux_vsxregset. Use regset to supply registers.
5659         (store_vsx_registers): Add regno parameter. Get regset using
5660         ppc_linux_vsxregset. Use regset to collect registers.
5661         (fetch_register): Call fetch_vsx_registers instead of
5662         fetch_vsx_register.
5663         (store_register): Call store_vsx_registers instead of
5664         store_vsx_register.
5665         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
5666         new regno parameter.
5667         (store_ppc_registers): Call store_vsx_registers with -1 for the
5668         new regno parameter.
5669         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
5670         (ppc_collect_vsxregset): Remove.
5671
5672 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
5673
5674         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
5675         offset fields.
5676         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
5677         for vector register offset fields.
5678         (ppc64_fbsd_reg_offsets): Likewise.
5679         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
5680         to vector register offset fields.
5681         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
5682         to vector register offset fields.
5683         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
5684         vector register offset fields.
5685         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
5686         initializers for vector register offset fields.
5687         (rs6000_aix64_reg_offsets): Likewise.
5688         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
5689         (ppc_supply_vrregset): Remove.
5690         (ppc_collect_vrregset): Remove.
5691         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
5692         (ppc_linux_vrregset) : New function.
5693         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
5694         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
5695         (ppc32_linux_vrregset): Remove.
5696         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
5697         and use result instead of ppc32_linux_vrregset.
5698         (ppc32_linux_reg_offsets): Remove initializers for vector register
5699         offset fields.
5700         (ppc64_linux_reg_offsets): Likewise.
5701         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
5702         * ppc-linux-nat.c: Include regset.h.
5703         (gdb_vrregset_t): Adjust comment to account for little-endian
5704         mode.
5705         (supply_vrregset, fill_vrregset): Remove.
5706         (fetch_altivec_register, store_altivec_register): Remove.
5707         (fetch_altivec_registers): Add regno parameter. Get regset using
5708         ppc_linux_vrregset. Use regset to supply registers.
5709         (store_altivec_registers): Add regno parameter. Get regset using
5710         ppc_linux_vrregset. Use regset to collect registers.
5711         (fetch_register): Call fetch_altivec_registers instead of
5712         fetch_altivec_register.
5713         (store_register): Call store_altivec_registers instead of
5714         store_altivec_register.
5715         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
5716         the new regno parameter.
5717         (store_ppc_registers): Call store_altivec_registers with -1 for
5718         the new regno parameter.
5719
5720 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
5721
5722         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
5723         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
5724         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
5725         (gdb_vrregset_t): Change array type size to
5726         PPC_LINUX_SIZEOF_VRREGSET.
5727         (gdb_vsxregset_t): Change array type size to
5728         PPC_LINUX_SIZEOF_VSXREGSET.
5729         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
5730         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
5731         PPC_LINUX_SIZEOF_VSXREGSET.
5732
5733 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
5734
5735         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
5736         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
5737         nat/ppc-linux.c.
5738         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
5739         ppc_linux_target_wordsize with tid.
5740         (ppc_linux_nat_target::read_description): Call ppc_linux_target
5741         wordsize with tid.
5742         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
5743         (ppc64_64bit_inferior_p): Add static and inline specifiers.
5744         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
5745         tid parameter. Remove static specifier.
5746         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
5747         (ppc_linux_target_wordsize): New declaration.
5748
5749 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
5750
5751         * arch/ppc-linux-common.c: New file.
5752         * arch/ppc-linux-common.h: New file.
5753         * arch/ppc-linux-tdesc.h: New file.
5754         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
5755         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
5756         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
5757         arch/ppc-linux-tdesc.h.
5758         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
5759         arch/ppc-linux-tdesc.h.
5760         (ppc_linux_nat_target::read_description): Remove target
5761         description matching code. Fill a ppc_linux_features struct and
5762         call ppc_linux_match_description with it. Move comment about ISA
5763         2.05 to ppc-linux-common.c.
5764         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
5765         arch/ppc-linux-tdesc.h.
5766         (ppc_linux_core_read_description): Remove target description
5767         matching code. Fill a ppc_linux_features struct and call
5768         ppc_linux_match_description with it.
5769         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
5770         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
5771         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
5772         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
5773         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
5774         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
5775         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
5776         (tdesc_powerpc_e500l): Remove.
5777
5778 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
5779
5780         * ada-lang.c (catch_assert_command): Pass empty string instead
5781         of NULL for excep_string argument.
5782
5783 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
5784
5785         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
5786         the width of the requested register exceeds the width of the
5787         `ptrace' data type.
5788
5789 2018-05-21  Tom Tromey  <tom@tromey.com>
5790
5791         * printcmd.c (output_command): Remove.
5792         (output_command_const): Rename to output_command.
5793         * valprint.h (output_command): Rename from output_command_const.
5794         * tracepoint.c (trace_dump_actions): Call output_command.
5795
5796 2018-05-21  Tom Tromey  <tom@tromey.com>
5797
5798         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
5799         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
5800         * ada-lang.h (create_ada_exception_catchpoint): Update.
5801         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
5802         std::string.
5803         (create_excep_cond_exprs, ~ada_catchpoint)
5804         (should_stop_exception, print_one_exception)
5805         (print_mention_exception, print_recreate_exception): Update.
5806         (ada_get_next_arg): Remove.
5807         (catch_ada_exception_command_split): Use std::string.  Change type
5808         of "excep_string", "cond_string".
5809         (catch_ada_exception_command): Update.
5810         (create_ada_exception_catchpoint): Change type of excep_string.
5811         (ada_exception_sal): Remove excep_string parameter.
5812         (~ada_catchpoint): Remove.
5813
5814 2018-05-21  Tom Tromey  <tom@tromey.com>
5815
5816         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
5817         cleanup.
5818
5819 2018-05-21  Tom Tromey  <tom@tromey.com>
5820
5821         * ada-lang.c (ada_exception_message_1, ada_exception_message):
5822         Return unique_xmalloc_ptr.
5823         (print_it_exception): Update.
5824
5825 2018-05-21  Tom Tromey  <tom@tromey.com>
5826
5827         * tracepoint.c (trace_dump_actions): Use std::string.
5828
5829 2018-05-21  Tom Tromey  <tom@tromey.com>
5830
5831         * symfile.c (reread_symbols): Use std::string for original_name.
5832
5833 2018-05-21  Tom Tromey  <tom@tromey.com>
5834
5835         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
5836         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
5837         constructor.
5838
5839 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
5840
5841         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
5842         instance to...
5843         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
5844         * objfiles.c (get_objfile_bfd_data): Allocate
5845         objfile_per_bfd_storage with obstack_new when allocating on
5846         obstack.
5847
5848 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
5849
5850         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
5851         OBSTACK_ZALLOC.
5852         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
5853         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
5854         * mdebugread.c (mdebug_build_psymtabs): Likewise.
5855         (add_pending): Likewise.
5856         (parse_symbol): Likewise.
5857         (parse_partial_symbols): Likewise.
5858         (psymtab_to_symtab_1): Likewise.
5859         (new_psymtab): Likewise.
5860         (elfmdebug_build_psymtabs): Likewise.
5861         * minsyms.c (terminate_minimal_symbol_table): Likewise.
5862         * objfiles.c (get_objfile_bfd_data): Likewise.
5863         (objfile_register_static_link): Likewise.
5864         * psymtab.c (allocate_psymtab): Likewise.
5865         * stabsread.c (read_member_functions): Likewise.
5866         * xcoffread.c (xcoff_end_psymtab): Likewise.
5867
5868 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
5869
5870         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
5871         compiler supports std::is_trivially_constructible.
5872         * common/poison.h: Include obstack.h.
5873         (IsMallocable): Define to is_trivially_constructible if the
5874         compiler supports it, define to true_type otherwise.
5875         (xobnew): New.
5876         (XOBNEW): Redefine.
5877         (xobnewvec): New.
5878         (XOBNEWVEC): Redefine.
5879         * gdb_obstack.h (obstack_zalloc): New.
5880         (OBSTACK_ZALLOC): Redefine.
5881         (obstack_calloc): New.
5882         (OBSTACK_CALLOC): Redefine.
5883         (obstack_new): New.
5884         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
5885         (gdbarch_obstack): New declaration in gdbarch.h, definition in
5886         gdbarch.c.
5887         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
5888         obstack_calloc/obstack_zalloc.
5889         (gdbarch_obstack_zalloc): Remove.
5890         * target-descriptions.c (tdesc_data_init): Use obstack_new.
5891
5892 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5893
5894         * stack.c (backtrace_command_1): Remove useless variable int i.
5895
5896 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5897
5898         * stack.c (print_frame_info): Fix comment.
5899
5900 2018-05-18  Tom Tromey  <tom@tromey.com>
5901
5902         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
5903         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
5904         (~dwarf2_per_objfile): Update
5905         (dwarf2_get_dwz_file): Use new.
5906         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
5907         unique_ptr.
5908
5909 2018-05-18  Tom Tromey  <tom@tromey.com>
5910
5911         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
5912         unique_ptr.
5913         * dwarf2read.c (struct dwp_file): Add constructor and
5914         initializers.
5915         (open_and_init_dwp_file): Return a unique_ptr.
5916         (dwarf2_per_objfile, create_dwp_hash_table)
5917         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
5918         (lookup_dwo_unit_in_dwp): Update.
5919         (open_and_init_dwp_file, get_dwp_file): Update.
5920
5921 2018-05-18  Tom Tromey  <tom@tromey.com>
5922
5923         * dwarf2read.c (dwarf2_per_objfile): Update.
5924         (struct mapped_index): Add initializers.
5925         (dwarf2_read_index): Use new.
5926         (dw2_symtab_iter_init): Update.
5927         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
5928         unique_ptr.
5929
5930 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
5931
5932         * dwarf2read.c (mapped_index) <total_size>: Remove.
5933
5934 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
5935
5936         * unittests/format_pieces-selftests.c (test_format_specifier):
5937         Add ARI comments.
5938
5939 2018-05-18  Tom Tromey  <tom@tromey.com>
5940
5941         * c-typeprint.c (maybe_print_hole): New function.
5942         (c_print_type_struct_field_offset): Update.
5943         (c_type_print_base_struct_union): Call maybe_print_hole.
5944
5945 2018-05-17  Keith Seitz  <keiths@redhat.com>
5946
5947         * breakpoint.c (build_bpstat_chain): New function, moved from
5948         bpstat_stop_status.
5949         (bpstat_stop_status): Add optional parameter, `stop_chain'.
5950         If no stop chain is passed, call build_bpstat_chain to build it.
5951         * breakpoint.h (build_bpstat_chain): Declare.
5952         (bpstat_stop_status): Move documentation here from breakpoint.c.
5953         * infrun.c (handle_signal_stop): Before eliding inlined frames,
5954         build the stop chain and pass it to skip_inline_frames.
5955         Pass this stop chain to bpstat_stop_status.
5956         * inline-frame.c: Include breakpoint.h.
5957         (stopped_by_user_bp_inline_frame): New function.
5958         (skip_inline_frames): Add parameter `stop_chain'.
5959         Move documention to inline-frame.h.
5960         If non-NULL, use stopped_by_user_bp_inline_frame to determine
5961         whether the frame should be elided.
5962         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
5963         Add moved documentation and update for new parameter.
5964
5965 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
5966
5967         PR cli/14975
5968         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5969         unittests/format_pieces-selftests.c.
5970         * common/format.h (format_piece) <operator==>: New.
5971         (format_pieces) <operator[]>: Remove.
5972         * common/format.c (format_pieces::format_pieces): Handle \e.
5973         * unittests/format_pieces-selftests.c: New.
5974
5975 2018-05-17  Tom Tromey  <tom@tromey.com>
5976
5977         PR symtab/23010:
5978         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
5979         (dw2_instantiate_symtab): Add skip_partial parameter.
5980         (dw2_find_last_source_symtab, dw2_map_expand_apply)
5981         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
5982         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
5983         (dw2_expand_symtabs_matching_one)
5984         (dw2_find_pc_sect_compunit_symtab)
5985         (dw2_debug_names_lookup_symbol)
5986         (dw2_debug_names_expand_symtabs_for_function): Update.
5987         (init_cutu_and_read_dies): Add skip_partial parameter.
5988         (process_psymtab_comp_unit, build_type_psymtabs_1)
5989         (process_skeletonless_type_unit, load_partial_comp_unit)
5990         (psymtab_to_symtab_1): Update.
5991         (load_full_comp_unit): Add skip_partial parameter.
5992         (process_imported_unit_die, dwarf2_read_addr_index)
5993         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
5994         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
5995         (read_signatured_type): Update.
5996
5997 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
5998
5999         * value.c (release_value): Remove unused variable.
6000         (record_latest_value): Likewise.
6001         (access_value_history): Likewise.
6002         (preserve_values): Likewise.
6003
6004 2018-05-17  Tom Tromey  <tom@tromey.com>
6005
6006         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
6007         Initialize.
6008
6009 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
6010
6011         PR gdb/22286
6012         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
6013         Also handle registers whose width is not a multiple of
6014         PTRACE_TYPE_RET.
6015         (linux_nat_trad_target::store_register): Likewise.
6016
6017 2018-05-16  Tom Tromey  <tom@tromey.com>
6018
6019         * gdbcore.h (core_bfd): Redefine.
6020         * corelow.c (core_target::close): Update.
6021         (core_target_open): Update.
6022         * progspace.h (struct program_space) <cbfd>: Now a
6023         gdb_bfd_ref_ptr.
6024
6025 2018-05-16  Tom Tromey  <tom@tromey.com>
6026
6027         PR cli/19551:
6028         * symfile-add-flags.h (enum symfile_add_flags)
6029         <SYMFILE_NOT_FILENAME>: New constant.
6030         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
6031         objfile name from BFD.
6032         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
6033         * minidebug.c (find_separate_debug_file_in_section): Put
6034         ".gnu_debugdata" into BFD's file name.
6035
6036 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
6037
6038         * regcache.c (regcache_read_ftype, regcache_write_ftype):
6039         Remove.
6040
6041 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
6042
6043         PR binutils/21446
6044         * aarch64-tdep.c (aarch64_analyze_prologue,
6045         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
6046         Indicate not interested in errors.
6047
6048 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
6049
6050         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
6051         Supply the MIPS_ZERO_REGNUM register.
6052
6053 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
6054
6055         * mips-tdep.c (mask_address_var): Make variable static.
6056
6057 2018-05-14  Tom Tromey  <tom@tromey.com>
6058
6059         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
6060
6061 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
6062
6063         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
6064         FXSAVE_ADDR for the mxcsr register.
6065
6066 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
6067
6068         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
6069
6070 2018-05-11  Pedro Alves  <palves@redhat.com>
6071
6072         * corelow.c (core_target) <core_target>: No longer inline.
6073         Initialize m_core_gdbarch, m_core_vec and build the section table
6074         here.
6075         <~core_target>: New.
6076         <core_gdbarch, get_core_register_section>: New methods.
6077         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
6078         factored out from ...
6079         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
6080         (core_ops): Delete.
6081         (sniff_core_bfd): Add gdbarch parameter.
6082         (core_close): Delete, merged into ...
6083         (core_target::close): ... here.  Delete self.
6084         (core_close_cleanup): Delete.
6085         (core_target_open): Allocate a core_target on the heap.  Use a
6086         unique_ptr instead of a cleanup.  Bits moved into the core_target
6087         ctor.  Adjust to use core_target methods instead of globals.
6088         (get_core_register_section): Rename to ...
6089         (core_target::get_core_register_section): ... this and adjust.
6090         (struct get_core_registers_cb_data): New.
6091         (get_core_registers_cb): Use it.  Use bool.
6092         (core_target::fetch_registers, core_target::files_info)
6093         (core_target::xfer_partial, core_target::read_description)
6094         (core_target::pid_to, core_target::thread_name): Adjust to
6095         reference class fields instead of globals.
6096         * target.h (struct target_ops_deleter, target_ops_up): New.
6097
6098 2018-05-11  Pedro Alves  <palves@redhat.com>
6099
6100         * corefile.c (core_file_command): Move to corelow.c.
6101         * corelow.c (the_core_target): Delete.
6102         (core_file_command): Moved from corefile.c.  Check exec_bfd
6103         instead of the_core_target.  Use target_detach instead of calling
6104         into the_core_target directly.
6105         (maybe_say_no_core_file_now): New.
6106         (core_target::detach): Use it.
6107         (_initialize_corelow): Remove references to the_core_target.
6108         * gdbcore.h (the_core_target): Delete.
6109
6110 2018-05-11  Tom Tromey  <tromey@redhat.com>
6111             Pedro Alves  <palves@redhat.com>
6112
6113         * corefile.c (core_bfd): Remove.
6114         * gdbcore.h (core_bfd): Now a macro.
6115         * progspace.h (struct program_space) <cbfd>: New field.
6116
6117 2018-05-11  Tom Tromey  <tom@tromey.com>
6118
6119         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
6120         gdb::def_vector.
6121
6122 2018-05-10  Tom Tromey  <tom@tromey.com>
6123
6124         * configure: Rebuild.
6125         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
6126
6127 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
6128
6129         PR server/23158:
6130         * regformats/regdat.sh: Adjust script, following the addition
6131         of the new expedite_regs parameter to init_target_desc.
6132
6133 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
6134     
6135         PR gdb/23127
6136         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
6137         set_gdbarch_significant_addr_bit.
6138         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
6139         set_gdbarch_significant_addr_bit.
6140         * utils.c (address_significant): Update to sign extend addr.
6141
6142 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
6143
6144         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
6145         (xtensa_linux_init_abi): Limit tdep->num_regs by
6146         tdep->num_nopriv_regs.
6147         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
6148         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
6149         not initialized.
6150
6151 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
6152
6153         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
6154
6155 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
6156
6157         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
6158         (I387_MXCSR_INIT_VAL): New constant.
6159         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
6160         buffer if it was supplied by the inferior.
6161         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
6162         (i387_xsave_get_clear_bv): New function.
6163         (i387_supply_xsave): Only read x87 control registers from the
6164         xsave buffer if the feature is enabled, and the state will have
6165         been written, otherwise, provide a suitable default.
6166         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
6167         including x87 control registers.  Update control registers if they
6168         have changed from the default value, and mark features as enabled
6169         as required.
6170         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
6171
6172 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
6173
6174         * spu-tdep.c (info_spu_event_command): Fix output formatting.
6175
6176 2018-05-07  Tom Tromey  <tom@tromey.com>
6177
6178         * configure: Rebuild.
6179         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
6180
6181 2018-05-07  Tom Tromey  <tom@tromey.com>
6182
6183         PR tdep/20362:
6184         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
6185         bit.  Use correct value for VDIV.
6186
6187 2018-05-04  Tom Tromey  <tom@tromey.com>
6188
6189         * configure: Rebuild.
6190         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
6191
6192 2018-05-04  Tom Tromey  <tom@tromey.com>
6193
6194         * linux-record.c (record_linux_system_call) <case
6195         RECORD_SYS_RECVFROM>: Add "break".
6196
6197 2018-05-04  Tom Tromey  <tom@tromey.com>
6198
6199         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
6200         Add missing "break".
6201         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
6202         Add missing "break".
6203
6204 2018-05-04  Tom Tromey  <tom@tromey.com>
6205
6206         * rs6000-tdep.c (ppc_process_record_op4)
6207         (ppc_process_record_op63): Add fall-through comment.
6208
6209 2018-05-04  Tom Tromey  <tom@tromey.com>
6210
6211         * i386-tdep.c (i386_process_record): Add fall-through comment.
6212
6213 2018-05-04  Tom Tromey  <tom@tromey.com>
6214
6215         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
6216         comment.
6217
6218 2018-05-04  Tom Tromey  <tom@tromey.com>
6219
6220         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
6221         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
6222         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
6223         comment.
6224         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
6225         comment.
6226         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
6227         comment.
6228
6229 2018-05-04  Tom Tromey  <tom@tromey.com>
6230
6231         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
6232
6233 2018-05-04  Tom Tromey  <tom@tromey.com>
6234
6235         * s390-tdep.c (s390_process_record): Fix fall-through comments.
6236         * xcoffread.c (scan_xcoff_symtab): Move comment later.
6237         * symfile.c (section_is_mapped): Fix fall-through comment.
6238         * stabsread.c (define_symbol, read_member_functions): Fix
6239         fall-through comment.
6240         * s390-linux-tdep.c (s390_process_record): Fix fall-through
6241         comment.
6242         * remote.c (remote_wait_as): Fix fall-through comment.
6243         * p-exp.y (yylex): Fix fall-through comment.
6244         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
6245         comment.
6246         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
6247         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
6248         * jv-exp.y (yylex): Fix fall-through comment.
6249         * go-exp.y (lex_one_token): Fix fall-through comment.
6250         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
6251         fall-through comment.
6252         * f-exp.y (yylex): Fix fall-through comment.
6253         * dwarf2read.c (process_die): Fix fall-through comments.
6254         * dbxread.c (process_one_symbol): Fix fall-through comment.
6255         * d-exp.y (lex_one_token): Fix fall-through comment.
6256         * cp-name-parser.y (yylex): Fix fall-through comment.
6257         * coffread.c (coff_symtab_read): Fix fall-through comment.
6258         * c-exp.y (lex_one_token): Fix fall-through comment.
6259         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
6260         comment.
6261         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
6262         comment.
6263
6264 2018-05-04  Tom Tromey  <tom@tromey.com>
6265
6266         PR python/22730:
6267         * NEWS: Mention gdb.execute change.
6268         * gdbcmd.h (execute_control_command): Don't declare.
6269         * python/python.c (execute_gdb_command): Use read_command_lines_1,
6270         execute_control_commands, execute_control_commands_to_string.
6271         * cli/cli-script.h (execute_control_commands)
6272         (execute_control_commands_to_string): Declare.
6273         (execute_control_command): Add from_tty parameter.
6274         * cli/cli-script.c (execute_control_commands)
6275         (execute_control_commands_to_string): New functions.
6276         (execute_user_command): Use execute_control_commands.
6277         (execute_control_command_1): Add "from_tty" parameter.  Update.
6278         (execute_control_command): Likewise.
6279
6280 2018-05-04  Tom Tromey  <tom@tromey.com>
6281
6282         PR python/22731:
6283         * NEWS: Mention that breakpoint commands are writable.
6284         * python/py-breakpoint.c (bppy_set_commands): New function.
6285         (breakpoint_object_getset) <"commands">: Use it.
6286
6287 2018-05-04  Tom Tromey  <tom@tromey.com>
6288
6289         * tracepoint.c (actions_command): Update.
6290         * mi/mi-cmd-break.c (mi_command_line_array)
6291         (mi_command_line_array_cnt, mi_command_line_array_ptr)
6292         (mi_read_next_line): Remove.
6293         (mi_cmd_break_commands): Update.
6294         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
6295         function_view.
6296         * cli/cli-script.c (get_command_line): Update.
6297         (process_next_line): Use function_view.  Constify.
6298         (recurse_read_control_structure, read_command_lines)
6299         (read_command_lines_1): Change argument types to function_view.
6300         (do_define_command, document_command): Update.
6301         * breakpoint.h (check_tracepoint_command): Don't declare.
6302         * breakpoint.c (check_tracepoint_command): Remove.
6303         (commands_command_1, create_tracepoint_from_upload): Update.
6304
6305 2018-05-04  Tom Tromey  <tom@tromey.com>
6306
6307         PR gdb/11750:
6308         * cli/cli-script.h (enum command_control_type) <define_control>:
6309         New constant.
6310         * cli/cli-script.c (multi_line_command_p): Handle define_control.
6311         (build_command_line, execute_control_command_1)
6312         (process_next_line): Likewise.
6313         (do_define_command): New function, extracted from define_command.
6314         (define_command): Use it.
6315
6316 2018-05-04  Tom Tromey  <tom@tromey.com>
6317
6318         * tracepoint.c (actions_command): Update.
6319         * cli/cli-script.h (read_command_lines): Update.
6320         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
6321         (MAX_TMPBUF): Remove define.
6322         (define_command): Use string_printf.
6323         (document_command): Likewise.
6324         * breakpoint.c (commands_command_1): Update.
6325
6326 2018-05-04  Tom Tromey  <tom@tromey.com>
6327
6328         * top.c (execute_command): Update.
6329         * cli/cli-script.h (print_command_lines): Now varargs.
6330         * cli/cli-script.c (print_command_lines): Now varargs.
6331         (execute_control_command_1) <case while_control, case if_control>:
6332         Update.
6333
6334 2018-05-04  Tom Tromey  <tom@tromey.com>
6335
6336         * tracepoint.c (all_tracepoint_actions): Rename from
6337         all_tracepoint_actions_and_cleanup.  Change return type.
6338         (actions_command, encode_actions_1, encode_actions)
6339         (trace_dump_actions, tdump_command): Update.
6340         * remote.c (remote_download_command_source): Update.
6341         * python/python.c (gdbpy_eval_from_control_command)
6342         (python_command, python_interactive_command): Update.
6343         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
6344         * guile/guile.c (guile_command)
6345         (gdbscm_eval_from_control_command, guile_command): Update.
6346         * compile/compile.c (compile_code_command)
6347         (compile_print_command, compile_to_object): Update.
6348         * cli/cli-script.h (struct command_lines_deleter): New.
6349         (counted_command_line): New typedef.
6350         (struct command_line): Add constructor, destructor.
6351         <body_list>: Remove.
6352         <body_list_0, body_list_1>: New members.
6353         (command_line_up): Remove typedef.
6354         (read_command_lines, read_command_lines_1, get_command_line):
6355         Update.
6356         (copy_command_lines): Don't declare.
6357         * cli/cli-script.c (build_command_line): Use "new".
6358         (get_command_line): Return counted_command_line.
6359         (print_command_lines, execute_user_command)
6360         (execute_control_command_1, while_command, if_command): Update.
6361         (realloc_body_list): Remove.
6362         (process_next_line, recurse_read_control_structure): Update.
6363         (read_command_lines, read_command_lines_1): Return counted_command_line.
6364         (free_command_lines): Use "delete".
6365         (copy_command_lines): Remove.
6366         (define_command, document_command, show_user_1): Update.
6367         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
6368         a counted_command_line.
6369         * breakpoint.h (counted_command_line): Remove typedef.
6370         (breakpoint_set_commands): Update.
6371         * breakpoint.c (check_no_tracepoint_commands)
6372         (validate_commands_for_breakpoint): Update.
6373         (breakpoint_set_commands): Change commands to be a
6374         counted_command_line.
6375         (commands_command_1, update_dprintf_command_list)
6376         (create_tracepoint_from_upload): Update.
6377
6378 2018-05-04  Tom Tromey  <tom@tromey.com>
6379
6380         * cli/cli-decode.h (cmd_list_element): New constructor.
6381         (~cmd_list_element): New destructor.
6382         (struct cmd_list_element): Add initializers.
6383         * cli/cli-decode.c (do_add_cmd): Use "new".
6384         (delete_cmd): Use "delete".
6385
6386 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
6387             Pedro Alves <palves@redhat.com>
6388
6389         PR breakpoints/19806 and support for PR external/20207.
6390         * NEWS: Mention Aarch64 watchpoint improvements.
6391         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
6392         watchpoints and PR external/20207 watchpoints.
6393         * nat/aarch64-linux-hw-point.c
6394         (kernel_supports_any_contiguous_range): New.
6395         (aarch64_watchpoint_offset): New.
6396         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
6397         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
6398         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
6399         (aarch64_align_watchpoint): New parameters aligned_offset_p and
6400         next_addr_orig_p.  Support PR external/20207 watchpoints.
6401         (aarch64_downgrade_regs): New.
6402         (aarch64_dr_state_insert_one_point): New parameters offset and
6403         addr_orig.
6404         (aarch64_dr_state_remove_one_point): Likewise.
6405         (aarch64_handle_breakpoint): Update caller.
6406         (aarch64_handle_aligned_watchpoint): Likewise.
6407         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
6408         aligned_offset.
6409         (aarch64_linux_set_debug_regs): Remove const from state.  Call
6410         aarch64_downgrade_regs.
6411         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
6412         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
6413         (DR_CONTROL_MASK): ... this.
6414         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
6415         (unsigned int aarch64_watchpoint_offset): New prototype.
6416         (aarch64_linux_set_debug_regs): Remove const from state.
6417         * utils.c (align_up, align_down): Move to ...
6418         * common/common-utils.c (align_up, align_down): ... here.
6419         * utils.h (align_up, align_down): Move to ...
6420         * common/common-utils.h (align_up, align_down): ... here.
6421
6422 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
6423
6424         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
6425         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
6426         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
6427         Re-implement to match the ABI as summarized in GCC's
6428         gcc/config/sparc/sparc.c.  All callers updated.
6429         (sparc32_store_arguments): Remove assertion.
6430
6431 2018-05-04  Tom Tromey  <tom@tromey.com>
6432
6433         * printcmd.c: Don't include tui.h.
6434         (decode_format): Use skip_spaces.
6435
6436 2018-05-04  Tom Tromey  <tom@tromey.com>
6437
6438         PR gdb/22619:
6439         * printcmd.c (last_count): New global.
6440         (x_command): Use saved count when repeating.
6441
6442 2018-05-04  Tom Tromey  <tom@tromey.com>
6443
6444         * nto-procfs.c (do_closedir_cleanup): Remove.
6445         (procfs_pidlist): Use gdb_dir_up.
6446         * procfs.c (do_closedir_cleanup): Remove.
6447         (proc_update_threads): Use gdb_dir_up.
6448         * common/filestuff.h (struct gdb_dir_deleter): New.
6449         (gdb_dir_up): New typedef.
6450
6451 2018-05-04  Tom Tromey  <tom@tromey.com>
6452
6453         * ada-lang.c (print_mention_exception): Use std::string.
6454
6455 2018-05-04  Tom Tromey  <tom@tromey.com>
6456
6457         * ada-lang.c (create_excep_cond_exprs): Update.
6458         (ada_exception_catchpoint_cond_string): Use std::string.
6459
6460 2018-05-04  Tom Tromey  <tom@tromey.com>
6461
6462         * ada-lang.c (xget_renaming_scope): Return std::string.
6463         (old_renaming_is_invisible): Update.
6464
6465 2018-05-04  Tom Tromey  <tom@tromey.com>
6466
6467         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
6468         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
6469
6470 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
6471
6472         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
6473
6474 2018-05-04  Tom Tromey  <tom@tromey.com>
6475
6476         * remote.c (remote_query_supported_append): Change type.
6477         (remote_check_symbols): Update.
6478
6479 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
6480
6481         PR gdb/11420
6482         * configure.ac: Prepend libpython.
6483         * python/python-config.py: Likewise.
6484         * configure: Regenerate.
6485
6486 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
6487
6488         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
6489
6490 2018-05-03  Pedro Alves  <palves@redhat.com>
6491
6492         * s390-linux-nat.c
6493         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
6494         override.  Write 'true' instead of '1'.
6495         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
6496         declaration.
6497
6498 2018-05-02  Pedro Alves  <palves@redhat.com>
6499
6500         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
6501         add_inf_child_target.
6502         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
6503         add_inf_child_target.
6504         * aix-thread.c (aix_thread_target_info): New.
6505         (aix_thread_target) <shortname, longname, doc>: Delete.
6506         <info>: New.
6507         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
6508         add_inf_child_target.
6509         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
6510         add_inf_child_target.
6511         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
6512         add_inf_child_target.
6513         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
6514         add_inf_child_target.
6515         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
6516         add_inf_child_target.
6517         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
6518         add_inf_child_target.
6519         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
6520         add_inf_child_target.
6521         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
6522         add_inf_child_target.
6523         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
6524         add_inf_child_target.
6525         * bfd-target.c (target_bfd_target_info): New.
6526         (target_bfd) <shortname, longname, doc>: Delete.
6527         <info>: New.
6528         * bsd-kvm.c (bsd_kvm_target_info): New.
6529         (bsd_kvm_target) <shortname, longname, doc>: Delete.
6530         <info>: New.
6531         (bsd_kvm_target::open): Rename to ...
6532         (bsd_kvm_target_open): ... this.  Adjust.
6533         * bsd-uthread.c (bsd_uthread_target_info): New.
6534         (bsd_uthread_target) <shortname, longname, doc>: Delete.
6535         <info>: New.
6536         * corefile.c (core_file_command): Adjust.
6537         * corelow.c (core_target_info): New.
6538         (core_target) <shortname, longname, doc>: Delete.
6539         <info>: New.
6540         (core_target::open): Rename to ...
6541         (core_target_open): ... this.  Adjust.
6542         * ctf.c (ctf_target_info): New.
6543         (ctf_target) <shortname, longname, doc>: Delete.
6544         <info>: New.
6545         (ctf_target::open): Rename to ...
6546         (ctf_target_open): ... this.
6547         (_initialize_ctf): Adjust.
6548         * exec.c (exec_target_info): New.
6549         (exec_target) <shortname, longname, doc>: Delete.
6550         <info>: New.
6551         (exec_target::open): Rename to ...
6552         (exec_target_open): ... this.
6553         * gdbcore.h (core_target_open): Declare.
6554         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
6555         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
6556         add_inf_child_target.
6557         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
6558         add_inf_child_target.
6559         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
6560         add_inf_child_target.
6561         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
6562         add_inf_child_target.
6563         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
6564         add_inf_child_target.
6565         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
6566         add_inf_child_target.
6567         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
6568         add_inf_child_target.
6569         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
6570         add_inf_child_target.
6571         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
6572         add_inf_child_target.
6573         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
6574         add_inf_child_target.
6575         * inf-child.c (inf_child_target_info): New.
6576         (inf_child_target::info): New.
6577         (inf_child_open_target): Remove 'target' parameter.  Use
6578         get_native_target instead.
6579         (inf_child_target::open): Delete.
6580         (add_inf_child_target): New.
6581         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
6582         Delete.
6583         <info>: New.
6584         (add_inf_child_target): Declare.
6585         (inf_child_open_target): Declare.
6586         * linux-thread-db.c (thread_db_target_info): New.
6587         (thread_db_target) <shortname, longname, doc>: Delete.
6588         <info>: New.
6589         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
6590         add_inf_child_target.
6591         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
6592         add_inf_child_target.
6593         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
6594         add_inf_child_target.
6595         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
6596         add_inf_child_target.
6597         * make-target-delegates (print_class): Adjust.
6598         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
6599         add_inf_child_target.
6600         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
6601         add_inf_child_target.
6602         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
6603         add_inf_child_target.
6604         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
6605         add_inf_child_target.
6606         * nto-procfs.c (nto_native_target_info): New.
6607         (nto_procfs_target_native) <shortname, longname, doc>:
6608         Delete.
6609         <info>: New.
6610         (nto_procfs_target_info): New.
6611         (nto_procfs_target_procfs) <shortname, longname, doc>:
6612         Delete.
6613         <info>: New.
6614         (init_procfs_targets): Adjust.
6615         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
6616         add_inf_child_target.
6617         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
6618         add_inf_child_target.
6619         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
6620         add_inf_child_target.
6621         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
6622         add_inf_child_target.
6623         * ravenscar-thread.c (ravenscar_target_info): New.
6624         (ravenscar_thread_target) <shortname, longname, doc>:
6625         Delete.
6626         <info>: New.
6627         * record-btrace.c (record_btrace_target_info):
6628         (record_btrace_target) <shortname, longname, doc>: Delete.
6629         <info>: New.
6630         (record_btrace_target::open): Rename to ...
6631         (record_btrace_target_open): ... this.  Adjust.
6632         * record-full.c (record_longname, record_doc): New.
6633         (record_full_base_target) <shortname, longname, doc>: Delete.
6634         <info>: New.
6635         (record_full_target_info): New.
6636         (record_full_target): <shortname>: Delete.
6637         <info>: New.
6638         (record_full_core_open_1, record_full_open_1): Update comments.
6639         (record_full_base_target::open): Rename to ...
6640         (record_full_open): ... this.
6641         (cmd_record_full_restore): Update.
6642         (_initialize_record_full): Update.
6643         * remote-sim.c (remote_sim_target_info): New.
6644         (gdbsim_target) <shortname, longname, doc>: Delete.
6645         <info>: New.
6646         (gdbsim_target::open): Rename to ...
6647         (gdbsim_target_open): ... this.
6648         (_initialize_remote_sim): Adjust.
6649         * remote.c (remote_doc): New.
6650         (remote_target_info): New.
6651         (remote_target) <shortname, longname, doc>: Delete.
6652         <info>: New.
6653         (extended_remote_target_info): New.
6654         (extended_remote_target) <shortname, longname, doc>: Delete.
6655         <info>: New.
6656         (remote_target::open_1): Make static.  Adjust.
6657         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
6658         * s390-linux-nat.c (_initialize_s390_nat): Use
6659         add_inf_child_target.
6660         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
6661         add_inf_child_target.
6662         * sol-thread.c (thread_db_target_info): New.
6663         (sol_thread_target) <shortname, longname, doc>: Delete.
6664         <info>: New.
6665         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
6666         add_inf_child_target.
6667         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
6668         add_inf_child_target.
6669         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
6670         add_inf_child_target.
6671         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
6672         add_inf_child_target.
6673         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
6674         add_inf_child_target.
6675         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
6676         add_inf_child_target.
6677         * spu-linux-nat.c (_initialize_spu_nat): Use
6678         add_inf_child_target.
6679         * spu-multiarch.c (spu_multiarch_target_info): New.
6680         (spu_multiarch_target) <shortname, longname, doc>: Delete.
6681         <info>: New.
6682         * target-delegates.c: Regenerate.
6683         * target.c: Include <unordered_map>.
6684         (target_ops_p): Delete.
6685         (DEF_VEC_P(target_ops_p)): Delete.
6686         (target_factories): New.
6687         (test_target_info): New.
6688         (test_target_ops::info): New.
6689         (open_target): Adjust to use target_factories.
6690         (add_target_with_completer): Rename to ...
6691         (add_target): ... this.  Change prototype.  Register target_info
6692         and open callback in target_factories.  Register target_info in
6693         command context instead of target_ops.
6694         (add_target): Delete old implementation.
6695         (add_deprecated_target_alias): Change prototype.  Adjust.
6696         (the_native_target): New.
6697         (set_native_target, get_native_target): New.
6698         (find_default_run_target): Use the_native_target.
6699         (find_attach_target, find_run_target): Simplify.
6700         (target_ops::open): Delete.
6701         (dummy_target_info): New.
6702         (dummy_target::shortname, dummy_target::longname)
6703         (dummy_target::doc): Delete.
6704         (dummy_target::info): New.
6705         (debug_target::shortname, debug_target::longname)
6706         (debug_target::doc): Delete.
6707         (debug_target::info): New.
6708         * target.h (struct target_info): New.
6709         (target_ops::~target_ops): Add comment.
6710         (target_ops::info): New.
6711         (target_ops::shortname, target_ops::longname, target_ops::doc): No
6712         longer virtual.  Implement in terms of target_info.
6713         (set_native_target, get_native_target): Declare.
6714         (target_open_ftype): New.
6715         (add_target, add_target_with_completer)
6716         (add_deprecated_target_alias): Change prototype.
6717         (test_target) <shortname, longname, doc>: Delete.
6718         <info>: New.
6719         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
6720         add_inf_child_target.
6721         * tracefile-tfile.c (tfile_target_info): New.
6722         (tfile_target) <shortname, longname, doc>: Delete.
6723         <info>: New.
6724         (tfile_target::open): Rename to ...
6725         (tfile_target_open): ... this.
6726         (_initialize_tracefile_tfile): Adjust.
6727         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
6728         add_inf_child_target.
6729         * windows-nat.c (_initialize_windows_nat): Use
6730         add_inf_child_target.
6731         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
6732         add_inf_child_target.
6733
6734 2018-05-02  Pedro Alves  <palves@redhat.com>
6735
6736         * linux-nat.h (linux_nat_target) <low_new_thread,
6737         low_delete_thread, low_new_fork, low_forget_process,
6738         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
6739         New virtual methods.
6740         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
6741         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
6742         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
6743         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
6744         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
6745         Delete.
6746         * linux-fork.c (delete_fork): Adjust to call low method.
6747         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
6748         (linux_nat_new_fork, linux_nat_forget_process_hook)
6749         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
6750         (linux_nat_status_is_event):
6751         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
6752         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
6753         to call low method.
6754         (sigtrap_is_event): Rename to ...
6755         (linux_nat_target::low_status_is_event): ... this.
6756         (linux_nat_set_status_is_event): Delete.
6757         (save_stop_reason, linux_nat_wait_1)
6758         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
6759         low methods.
6760         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
6761         (linux_nat_set_new_fork, linux_nat_set_forget_process)
6762         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
6763         (linux_nat_set_prepare_to_resume): Delete.
6764         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
6765         low virtual methods.
6766         * amd64-linux-nat.c: Likewise.
6767         * arm-linux-nat.c: Likewise.
6768         * i386-linux-nat.c: Likewise.
6769         * ia64-linux-nat.c: Likewise.
6770         * mips-linux-nat.c: Likewise.
6771         * ppc-linux-nat.c: Likewise.
6772         * s390-linux-nat.c: Likewise.
6773         * sparc64-linux-nat.c: Likewise.
6774         * x86-linux-nat.c: Likewise.
6775         * x86-linux-nat.h: Include "nat/x86-linux.h".
6776         (x86_linux_nat_target) <low_new_fork, low_forget_process,
6777         low_prepare_to_resume, low_new_thread, low_delete_thread>:
6778         Override methods.
6779
6780 2018-05-02  Pedro Alves  <palves@redhat.com>
6781
6782         * target.h (target_ops)
6783         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
6784         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
6785         stopped_by_watchpoint, have_continuable_watchpoint,
6786         stopped_data_address, watchpoint_addr_within_range,
6787         can_accel_watchpoint_condition, can_run, thread_alive,
6788         has_all_memory, has_memory, has_stack, has_registers,
6789         has_execution, can_async_p, is_async_p, supports_non_stop,
6790         always_non_stop_p, can_execute_reverse, supports_multi_process,
6791         supports_enable_disable_tracepoint,
6792         supports_disable_randomization, supports_string_tracing,
6793         supports_evaluation_of_breakpoint_conditions,
6794         can_run_breakpoint_commands, filesystem_is_local,
6795         can_download_tracepoint, get_trace_state_variable_value,
6796         set_trace_notes, get_tib_address, use_agent, can_use_agent,
6797         record_is_replaying, record_will_replay,
6798         augmented_libraries_svr4_read>: Adjust to return bool.
6799         * aarch64-linux-nat.c: All implementations adjusted.
6800         * aix-thread.c: All implementations adjusted.
6801         * arm-linux-nat.c: All implementations adjusted.
6802         * breakpoint.c: All implementations adjusted.
6803         * bsd-kvm.c: All implementations adjusted.
6804         * bsd-uthread.c: All implementations adjusted.
6805         * corelow.c: All implementations adjusted.
6806         * ctf.c: All implementations adjusted.
6807         * darwin-nat.c: All implementations adjusted.
6808         * darwin-nat.h: All implementations adjusted.
6809         * exec.c: All implementations adjusted.
6810         * fbsd-nat.c: All implementations adjusted.
6811         * fbsd-nat.h: All implementations adjusted.
6812         * gnu-nat.c: All implementations adjusted.
6813         * gnu-nat.h: All implementations adjusted.
6814         * go32-nat.c: All implementations adjusted.
6815         * ia64-linux-nat.c: All implementations adjusted.
6816         * inf-child.c: All implementations adjusted.
6817         * inf-child.h: All implementations adjusted.
6818         * inf-ptrace.c: All implementations adjusted.
6819         * inf-ptrace.h: All implementations adjusted.
6820         * linux-nat.c: All implementations adjusted.
6821         * linux-nat.h: All implementations adjusted.
6822         * mips-linux-nat.c: All implementations adjusted.
6823         * nto-procfs.c: All implementations adjusted.
6824         * ppc-linux-nat.c: All implementations adjusted.
6825         * procfs.c: All implementations adjusted.
6826         * ravenscar-thread.c: All implementations adjusted.
6827         * record-btrace.c: All implementations adjusted.
6828         * record-full.c: All implementations adjusted.
6829         * remote-sim.c: All implementations adjusted.
6830         * remote.c: All implementations adjusted.
6831         * s390-linux-nat.c: All implementations adjusted.
6832         * sol-thread.c: All implementations adjusted.
6833         * spu-multiarch.c: All implementations adjusted.
6834         * target-delegates.c: All implementations adjusted.
6835         * target.c: All implementations adjusted.
6836         * target.h: All implementations adjusted.
6837         * tracefile-tfile.c: All implementations adjusted.
6838         * tracefile.c: All implementations adjusted.
6839         * tracefile.h: All implementations adjusted.
6840         * windows-nat.c: All implementations adjusted.
6841         * x86-linux-nat.h: All implementations adjusted.
6842         * x86-nat.h: All implementations adjusted.
6843
6844 2018-05-02  Pedro Alves  <palves@redhat.com>
6845
6846         * make-target-delegates (scan_target_h): Don't trim lines here.
6847         Replace sequences of tabs and/or whitespace with a single
6848         whitespace.
6849         (top level, parsing methods): Trim each line before processing it
6850         here.
6851
6852 2018-05-02  Pedro Alves  <palves@redhat.com>
6853             John Baldwin  <jhb@freebsd.org>
6854
6855         * target.h (enum strata) <debug_stratum>: New.
6856         (struct target_ops) <all delegation methods>: Replace by C++
6857         virtual methods, and drop "to_" prefix.  All references updated
6858         throughout.
6859         <to_shortname, to_longname, to_doc, to_data,
6860         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
6861         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
6862         virtual methods.  All references updated throughout.
6863         <can_attach, supports_terminal_ours, can_create_inferior,
6864         get_thread_control_capabilities, attach_no_wait>: New
6865         virtual methods.
6866         <insert_breakpoint, remove_breakpoint>: Now
6867         TARGET_DEFAULT_NORETURN methods.
6868         <info_proc>: Now returns bool.
6869         <to_magic>: Delete.
6870         (OPS_MAGIC): Delete.
6871         (current_target): Delete.  All references replaced by references
6872         to ...
6873         (target_stack): ... this.  New.
6874         (target_shortname, target_longname): Adjust.
6875         (target_can_run): Now a function declaration.
6876         (default_child_has_all_memory, default_child_has_memory)
6877         (default_child_has_stack, default_child_has_registers)
6878         (default_child_has_execution): Remove target_ops parameter.
6879         (complete_target_initialization): Delete.
6880         (memory_breakpoint_target): New template class.
6881         (test_target_ops): Refactor as a C++ class with virtual methods.
6882         * make-target-delegates (NAME_PART): Tighten.
6883         (POINTER_PART, CP_SYMBOL): New.
6884         (SIMPLE_RETURN_PART): Reimplement.
6885         (VEC_RETURN_PART): Expect less.
6886         (RETURN_PART, VIRTUAL_PART): New.
6887         (METHOD): Adjust to C++ virtual methods.
6888         (scan_target_h): Remove reference to C99.
6889         (dname): Output "target_ops::" prefix.
6890         (write_function_header): Adjust to output a C++ class method.
6891         (write_declaration): New.
6892         (write_delegator): Adjust to output a C++ class method.
6893         (tdname): Output "dummy_target::" prefix.
6894         (write_tdefault, write_debugmethod): Adjust to output a C++ class
6895         method.
6896         (tdefault_names, debug_names): Delete.
6897         (return_types, tdefaults, styles, argtypes_array): New.
6898         (top level): All methods are delegators.
6899         (print_class): New.
6900         (top level): Print dummy_target and debug_target classes.
6901         * target-delegates.c: Regenerate.
6902         * target-debug.h (target_debug_print_enum_info_proc_what)
6903         (target_debug_print_thread_control_capabilities)
6904         (target_debug_print_thread_info_p): New.
6905         * target.c (dummy_target): Delete.
6906         (the_dummy_target, the_debug_target): New.
6907         (target_stack): Now extern.
6908         (set_targetdebug): Push/unpush debug target.
6909         (default_child_has_all_memory, default_child_has_memory)
6910         (default_child_has_stack, default_child_has_registers)
6911         (default_child_has_execution): Remove target_ops parameter.
6912         (complete_target_initialization): Delete.
6913         (add_target_with_completer): No longer call
6914         complete_target_initialization.
6915         (target_supports_terminal_ours): Use regular delegation.
6916         (update_current_target): Delete.
6917         (push_target): No longer check magic number.  Don't call
6918         update_current_target.
6919         (unpush_target): Don't call update_current_target.
6920         (target_is_pushed): No longer check magic number.
6921         (target_require_runnable): Skip for all stratums over
6922         process_stratum.
6923         (target_ops::info_proc): New.
6924         (target_info_proc): Use find_target_at and
6925         find_default_run_target.
6926         (target_supports_disable_randomization): Use regular delegation.
6927         (target_get_osdata): Use find_target_at.
6928         (target_ops::open, target_ops::close, target_ops::can_attach)
6929         (target_ops::attach, target_ops::can_create_inferior)
6930         (target_ops::create_inferior, target_ops::can_run)
6931         (target_can_run): New.
6932         (default_fileio_target): Use regular delegation.
6933         (target_ops::fileio_open, target_ops::fileio_pwrite)
6934         (target_ops::fileio_pread, target_ops::fileio_fstat)
6935         (target_ops::fileio_close, target_ops::fileio_unlink)
6936         (target_ops::fileio_readlink): New.
6937         (target_fileio_open_1, target_fileio_unlink)
6938         (target_fileio_readlink): Always call the target method.  Handle
6939         FILEIO_ENOSYS.
6940         (return_zero, return_zero_has_execution): Delete.
6941         (init_dummy_target): Delete.
6942         (dummy_target::dummy_target, dummy_target::shortname)
6943         (dummy_target::longname, dummy_target::doc)
6944         (debug_target::debug_target, debug_target::shortname)
6945         (debug_target::longname, debug_target::doc): New.
6946         (target_supports_delete_record): Use regular delegation.
6947         (setup_target_debug): Delete.
6948         (maintenance_print_target_stack): Skip debug_stratum.
6949         (initialize_targets): Instantiate the_dummy_target and
6950         the_debug_target.
6951         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
6952         use target_stack.
6953         (target_auxv_search, fprint_target_auxv): Adjust.
6954         (info_auxv_command): Adjust to use target_stack.
6955         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
6956         * exceptions.c (print_flush): Handle a NULL target_stack.
6957         * regcache.c (target_ops_no_register): Refactor as class with
6958         virtual methods.
6959
6960         * exec.c (exec_target): New class.
6961         (exec_ops): Now an exec_target.
6962         (exec_open, exec_close_1, exec_get_section_table)
6963         (exec_xfer_partial, exec_files_info, exec_has_memory)
6964         (exec_make_note_section): Refactor as exec_target methods.
6965         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
6966         Delete.
6967         (exec_target::find_memory_regions): New.
6968         (_initialize_exec): Don't call init_exec_ops.
6969         * gdbcore.h (exec_file_clear): Delete.
6970
6971         * corefile.c (core_target): Delete.
6972         (core_file_command): Adjust.
6973         * corelow.c (core_target): New class.
6974         (the_core_target): New.
6975         (core_close): Remove target_ops parameter.
6976         (core_close_cleanup): Adjust.
6977         (core_target::close): New.
6978         (core_open, core_detach, get_core_registers, core_files_info)
6979         (core_xfer_partial, core_thread_alive, core_read_description)
6980         (core_pid_to_str, core_thread_name, core_has_memory)
6981         (core_has_stack, core_has_registers, core_info_proc): Rework as
6982         core_target methods.
6983         (ignore, core_remove_breakpoint, init_core_ops): Delete.
6984         (_initialize_corelow): Initialize the_core_target.
6985         * gdbcore.h (core_target): Delete.
6986         (the_core_target): New.
6987
6988         * ctf.c: (ctf_target): New class.
6989         (ctf_ops): Now a ctf_target.
6990         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
6991         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
6992         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
6993         methods.
6994         (init_ctf_ops): Delete.
6995         (_initialize_ctf): Don't call it.
6996         * tracefile-tfile.c (tfile_target): New class.
6997         (tfile_ops): Now a tfile_target.
6998         (tfile_open, tfile_close, tfile_files_info)
6999         (tfile_get_tracepoint_status, tfile_trace_find)
7000         (tfile_fetch_registers, tfile_xfer_partial)
7001         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
7002         Refactor as tfile_target methods.
7003         (tfile_xfer_partial_features): Remove target_ops parameter.
7004         (init_tfile_ops): Delete.
7005         (_initialize_tracefile_tfile): Don't call it.
7006         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
7007         (tracefile_has_stack, tracefile_has_registers)
7008         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
7009         tracefile_target methods.
7010         (init_tracefile_ops): Delete.
7011         (tracefile_target::tracefile_target): New.
7012         * tracefile.h: Include "target.h".
7013         (tracefile_target): New class.
7014         (init_tracefile_ops): Delete.
7015
7016         * spu-multiarch.c (spu_multiarch_target): New class.
7017         (spu_ops): Now a spu_multiarch_target.
7018         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
7019         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
7020         (spu_search_memory, spu_mourn_inferior): Refactor as
7021         spu_multiarch_target methods.
7022         (init_spu_ops): Delete.
7023         (_initialize_spu_multiarch): Remove references to init_spu_ops,
7024         complete_target_initialization.
7025
7026         * ravenscar-thread.c (ravenscar_thread_target): New class.
7027         (ravenscar_ops): Now a ravenscar_thread_target.
7028         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
7029         (ravenscar_thread_alive, ravenscar_pid_to_str)
7030         (ravenscar_fetch_registers, ravenscar_store_registers)
7031         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
7032         (ravenscar_stopped_by_hw_breakpoint)
7033         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
7034         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
7035         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
7036         methods.
7037         (init_ravenscar_thread_ops): Delete.
7038         (_initialize_ravenscar): Remove references to
7039         init_ravenscar_thread_ops and complete_target_initialization.
7040
7041         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
7042         (bsd_uthread_target): New class.
7043         (bsd_uthread_ops): Now a bsd_uthread_target.
7044         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
7045         (bsd_uthread_close, bsd_uthread_mourn_inferior)
7046         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
7047         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
7048         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
7049         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
7050         (bsd_uthread_target): Delete function.
7051         (_initialize_bsd_uthread): Remove reference to
7052         complete_target_initialization.
7053
7054         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
7055         (target_bfd): ... this new class.
7056         (target_bfd_xfer_partial, target_bfd_get_section_table)
7057         (target_bfd_close): Refactor as target_bfd methods.
7058         (target_bfd::~target_bfd): New.
7059         (target_bfd_reopen): Adjust.
7060         (target_bfd::close): New.
7061
7062         * record-btrace.c (record_btrace_target): New class.
7063         (record_btrace_ops): Now a record_btrace_target.
7064         (record_btrace_open, record_btrace_stop_recording)
7065         (record_btrace_disconnect, record_btrace_close)
7066         (record_btrace_async, record_btrace_info)
7067         (record_btrace_insn_history, record_btrace_insn_history_range)
7068         (record_btrace_insn_history_from, record_btrace_call_history)
7069         (record_btrace_call_history_range)
7070         (record_btrace_call_history_from, record_btrace_record_method)
7071         (record_btrace_is_replaying, record_btrace_will_replay)
7072         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
7073         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
7074         (record_btrace_store_registers, record_btrace_prepare_to_store)
7075         (record_btrace_to_get_unwinder)
7076         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
7077         (record_btrace_commit_resume, record_btrace_wait)
7078         (record_btrace_stop, record_btrace_can_execute_reverse)
7079         (record_btrace_stopped_by_sw_breakpoint)
7080         (record_btrace_supports_stopped_by_sw_breakpoint)
7081         (record_btrace_stopped_by_hw_breakpoint)
7082         (record_btrace_supports_stopped_by_hw_breakpoint)
7083         (record_btrace_update_thread_list, record_btrace_thread_alive)
7084         (record_btrace_goto_begin, record_btrace_goto_end)
7085         (record_btrace_goto, record_btrace_stop_replaying_all)
7086         (record_btrace_execution_direction)
7087         (record_btrace_prepare_to_generate_core)
7088         (record_btrace_done_generating_core): Refactor as
7089         record_btrace_target methods.
7090         (init_record_btrace_ops): Delete.
7091         (_initialize_record_btrace): Remove reference to
7092         init_record_btrace_ops.
7093         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
7094         the execution_direction global.
7095         (record_full_base_target, record_full_target)
7096         (record_full_core_target): New classes.
7097         (record_full_ops): Now a record_full_target.
7098         (record_full_core_ops): Now a record_full_core_target.
7099         (record_full_target::detach, record_full_target::disconnect)
7100         (record_full_core_target::disconnect)
7101         (record_full_target::mourn_inferior, record_full_target::kill):
7102         New.
7103         (record_full_open, record_full_close, record_full_async): Refactor
7104         as methods of the record_full_base_target class.
7105         (record_full_resume, record_full_commit_resume): Refactor
7106         as methods of the record_full_target class.
7107         (record_full_wait, record_full_stopped_by_watchpoint)
7108         (record_full_stopped_data_address)
7109         (record_full_stopped_by_sw_breakpoint)
7110         (record_full_supports_stopped_by_sw_breakpoint)
7111         (record_full_stopped_by_hw_breakpoint)
7112         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
7113         methods of the record_full_base_target class.
7114         (record_full_store_registers, record_full_xfer_partial)
7115         (record_full_insert_breakpoint, record_full_remove_breakpoint):
7116         Refactor as methods of the record_full_target class.
7117         (record_full_can_execute_reverse, record_full_get_bookmark)
7118         (record_full_goto_bookmark, record_full_execution_direction)
7119         (record_full_record_method, record_full_info, record_full_delete)
7120         (record_full_is_replaying, record_full_will_replay)
7121         (record_full_goto_begin, record_full_goto_end, record_full_goto)
7122         (record_full_stop_replaying): Refactor as methods of the
7123         record_full_base_target class.
7124         (record_full_core_resume, record_full_core_kill)
7125         (record_full_core_fetch_registers)
7126         (record_full_core_prepare_to_store)
7127         (record_full_core_store_registers, record_full_core_xfer_partial)
7128         (record_full_core_insert_breakpoint)
7129         (record_full_core_remove_breakpoint)
7130         (record_full_core_has_execution): Refactor
7131         as methods of the record_full_core_target class.
7132         (record_full_base_target::supports_delete_record): New.
7133         (init_record_full_ops): Delete.
7134         (init_record_full_core_ops): Delete.
7135         (record_full_save): Refactor as method of the
7136         record_full_base_target class.
7137         (_initialize_record_full): Remove references to
7138         init_record_full_ops and init_record_full_core_ops.
7139
7140         * remote.c (remote_target, extended_remote_target): New classes.
7141         (remote_ops): Now a remote_target.
7142         (extended_remote_ops): Now an extended_remote_target.
7143         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
7144         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
7145         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
7146         (remote_pass_signals, remote_set_syscall_catchpoint)
7147         (remote_program_signals, )
7148         (remote_thread_always_alive): Remove target_ops parameter.
7149         (remote_thread_alive, remote_thread_name)
7150         (remote_update_thread_list, remote_threads_extra_info)
7151         (remote_static_tracepoint_marker_at)
7152         (remote_static_tracepoint_markers_by_strid)
7153         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
7154         (remote_open): Refactor as methods of remote_target.
7155         (extended_remote_open, extended_remote_detach)
7156         (extended_remote_attach, extended_remote_post_attach):
7157         (extended_remote_supports_disable_randomization)
7158         (extended_remote_create_inferior): : Refactor as method of
7159         extended_remote_target.
7160         (remote_set_permissions, remote_open_1, remote_detach)
7161         (remote_follow_fork, remote_follow_exec, remote_disconnect)
7162         (remote_resume, remote_commit_resume, remote_stop)
7163         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
7164         (remote_terminal_ours, remote_wait, remote_fetch_registers)
7165         (remote_prepare_to_store, remote_store_registers)
7166         (remote_flash_erase, remote_flash_done, remote_files_info)
7167         (remote_kill, remote_mourn, remote_insert_breakpoint)
7168         (remote_remove_breakpoint, remote_insert_watchpoint)
7169         (remote_watchpoint_addr_within_range)
7170         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
7171         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
7172         (remote_supports_stopped_by_sw_breakpoint)
7173         (remote_stopped_by_hw_breakpoint)
7174         (remote_supports_stopped_by_hw_breakpoint)
7175         (remote_stopped_by_watchpoint, remote_stopped_data_address)
7176         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
7177         (remote_verify_memory): Refactor as methods of remote_target.
7178         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
7179         parameter.
7180         (remote_xfer_partial, remote_get_memory_xfer_limit)
7181         (remote_search_memory, remote_rcmd, remote_memory_map)
7182         (remote_pid_to_str, remote_get_thread_local_address)
7183         (remote_get_tib_address, remote_read_description): Refactor as
7184         methods of remote_target.
7185         (remote_target::fileio_open, remote_target::fileio_pwrite)
7186         (remote_target::fileio_pread, remote_target::fileio_close): New.
7187         (remote_hostio_readlink, remote_hostio_fstat)
7188         (remote_filesystem_is_local, remote_can_execute_reverse)
7189         (remote_supports_non_stop, remote_supports_disable_randomization)
7190         (remote_supports_multi_process, remote_supports_cond_breakpoints)
7191         (remote_supports_enable_disable_tracepoint)
7192         (remote_supports_string_tracing)
7193         (remote_can_run_breakpoint_commands, remote_trace_init)
7194         (remote_download_tracepoint, remote_can_download_tracepoint)
7195         (remote_download_trace_state_variable, remote_enable_tracepoint)
7196         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
7197         (remote_trace_start, remote_get_trace_status)
7198         (remote_get_tracepoint_status, remote_trace_stop)
7199         (remote_trace_find, remote_get_trace_state_variable_value)
7200         (remote_save_trace_data, remote_get_raw_trace_data)
7201         (remote_set_disconnected_tracing, remote_core_of_thread)
7202         (remote_set_circular_trace_buffer, remote_traceframe_info)
7203         (remote_get_min_fast_tracepoint_insn_len)
7204         (remote_set_trace_buffer_size, remote_set_trace_notes)
7205         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
7206         (remote_disable_btrace, remote_teardown_btrace)
7207         (remote_read_btrace, remote_btrace_conf)
7208         (remote_augmented_libraries_svr4_read, remote_load)
7209         (remote_pid_to_exec_file, remote_can_do_single_step)
7210         (remote_execution_direction, remote_thread_handle_to_thread_info):
7211         Refactor as methods of remote_target.
7212         (init_remote_ops, init_extended_remote_ops): Delete.
7213         (remote_can_async_p, remote_is_async_p, remote_async)
7214         (remote_thread_events, remote_upload_tracepoints)
7215         (remote_upload_trace_state_variables): Refactor as methods of
7216         remote_target.
7217         (_initialize_remote): Remove references to init_remote_ops and
7218         init_extended_remote_ops.
7219
7220         * remote-sim.c (gdbsim_target): New class.
7221         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
7222         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
7223         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
7224         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
7225         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
7226         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
7227         Refactor as methods of gdbsim_target.
7228         (gdbsim_ops): Now a gdbsim_target.
7229         (init_gdbsim_ops): Delete.
7230         (gdbsim_cntrl_c): Adjust.
7231         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
7232
7233         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
7234         (the_amd64_linux_nat_target): New.
7235         (amd64_linux_fetch_inferior_registers)
7236         (amd64_linux_store_inferior_registers): Refactor as methods of
7237         amd64_linux_nat_target.
7238         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
7239         * i386-linux-nat.c: Don't include "linux-nat.h".
7240         (i386_linux_nat_target): New class.
7241         (the_i386_linux_nat_target): New.
7242         (i386_linux_fetch_inferior_registers)
7243         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
7244         as methods of i386_linux_nat_target.
7245         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
7246         * inf-child.c (inf_child_ops): Delete.
7247         (inf_child_fetch_inferior_registers)
7248         (inf_child_store_inferior_registers): Delete.
7249         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
7250         methods of inf_child_target.
7251         (inf_child_target::supports_terminal_ours)
7252         (inf_child_target::terminal_init)
7253         (inf_child_target::terminal_inferior)
7254         (inf_child_target::terminal_ours_for_output)
7255         (inf_child_target::terminal_ours, inf_child_target::interrupt)
7256         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
7257         New.
7258         (inf_child_open, inf_child_disconnect, inf_child_close)
7259         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
7260         (inf_child_post_startup_inferior, inf_child_can_run)
7261         (inf_child_pid_to_exec_file): Refactor as methods of
7262         inf_child_target.
7263         (inf_child_follow_fork): Delete.
7264         (inf_child_target::can_create_inferior)
7265         (inf_child_target::can_attach): New.
7266         (inf_child_target::has_all_memory, inf_child_target::has_memory)
7267         (inf_child_target::has_stack, inf_child_target::has_registers)
7268         (inf_child_target::has_execution): New.
7269         (inf_child_fileio_open, inf_child_fileio_pwrite)
7270         (inf_child_fileio_pread, inf_child_fileio_fstat)
7271         (inf_child_fileio_close, inf_child_fileio_unlink)
7272         (inf_child_fileio_readlink, inf_child_use_agent)
7273         (inf_child_can_use_agent): Refactor as methods of
7274         inf_child_target.
7275         (return_zero, inf_child_target): Delete.
7276         (inf_child_target::inf_child_target): New.
7277         * inf-child.h: Include "target.h".
7278         (inf_child_target): Delete function prototype.
7279         (inf_child_target): New class.
7280         (inf_child_open_target, inf_child_mourn_inferior)
7281         (inf_child_maybe_unpush_target): Delete.
7282         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
7283         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
7284         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
7285         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
7286         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
7287         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
7288         (inf_ptrace_wait, inf_ptrace_xfer_partial)
7289         (inf_ptrace_thread_alive, inf_ptrace_files_info)
7290         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
7291         methods of inf_ptrace_target.
7292         (inf_ptrace_target): Delete function.
7293         * inf-ptrace.h: Include "inf-child.h".
7294         (inf_ptrace_target): Delete function declaration.
7295         (inf_ptrace_target): New class.
7296         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
7297         * linux-nat.c (linux_target): New.
7298         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
7299         (linux_nat_target::~linux_nat_target): New.
7300         (linux_child_post_attach, linux_child_post_startup_inferior)
7301         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
7302         (linux_child_remove_fork_catchpoint)
7303         (linux_child_insert_vfork_catchpoint)
7304         (linux_child_remove_vfork_catchpoint)
7305         (linux_child_insert_exec_catchpoint)
7306         (linux_child_remove_exec_catchpoint)
7307         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
7308         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
7309         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
7310         (linux_nat_stopped_data_address)
7311         (linux_nat_stopped_by_sw_breakpoint)
7312         (linux_nat_supports_stopped_by_sw_breakpoint)
7313         (linux_nat_stopped_by_hw_breakpoint)
7314         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
7315         (linux_nat_kill, linux_nat_mourn_inferior)
7316         (linux_nat_xfer_partial, linux_nat_thread_alive)
7317         (linux_nat_update_thread_list, linux_nat_pid_to_str)
7318         (linux_nat_thread_name, linux_child_pid_to_exec_file)
7319         (linux_child_static_tracepoint_markers_by_strid)
7320         (linux_nat_is_async_p, linux_nat_can_async_p)
7321         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
7322         (linux_nat_supports_multi_process)
7323         (linux_nat_supports_disable_randomization, linux_nat_async)
7324         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
7325         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
7326         (linux_nat_fileio_open, linux_nat_fileio_readlink)
7327         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
7328         methods of linux_nat_target.
7329         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
7330         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
7331         parameter.
7332         (check_stopped_by_watchpoint): Adjust.
7333         (linux_xfer_partial): Delete.
7334         (linux_target_install_ops, linux_target, linux_nat_add_target):
7335         Delete.
7336         (linux_nat_target::linux_nat_target): New.
7337         * linux-nat.h: Include "inf-ptrace.h".
7338         (linux_nat_target): New.
7339         (linux_target, linux_target_install_ops, linux_nat_add_target):
7340         Delete function declarations.
7341         (linux_target): Declare global.
7342         * linux-thread-db.c (thread_db_target): New.
7343         (thread_db_target::thread_db_target): New.
7344         (thread_db_ops): Delete.
7345         (the_thread_db_target): New.
7346         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
7347         (thread_db_update_thread_list, thread_db_pid_to_str)
7348         (thread_db_extra_thread_info)
7349         (thread_db_thread_handle_to_thread_info)
7350         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
7351         (thread_db_resume): Refactor as methods of thread_db_target.
7352         (init_thread_db_ops): Delete.
7353         (_initialize_thread_db): Remove reference to init_thread_db_ops.
7354         * x86-linux-nat.c: Don't include "linux-nat.h".
7355         (super_post_startup_inferior): Delete.
7356         (x86_linux_nat_target::~x86_linux_nat_target): New.
7357         (x86_linux_child_post_startup_inferior)
7358         (x86_linux_read_description, x86_linux_enable_btrace)
7359         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
7360         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
7361         methods of x86_linux_nat_target.
7362         (x86_linux_create_target): Delete.  Bits folded ...
7363         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
7364         pointer.
7365         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
7366         (x86_linux_nat_target): New class.
7367         (x86_linux_create_target): Delete.
7368         (x86_linux_add_target): Now takes a linux_nat_target pointer.
7369         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
7370         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
7371         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
7372         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
7373         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
7374         make extern.
7375         (x86_use_watchpoints): Delete.
7376         * x86-nat.h: Include "breakpoint.h" and "target.h".
7377         (x86_use_watchpoints): Delete.
7378         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
7379         (x86_stopped_by_watchpoint, x86_stopped_data_address)
7380         (x86_insert_watchpoint, x86_remove_watchpoint)
7381         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
7382         (x86_stopped_by_hw_breakpoint): New declarations.
7383         (x86_nat_target): New template class.
7384
7385         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
7386         (the_ppc_linux_nat_target): New.
7387         (ppc_linux_fetch_inferior_registers)
7388         (ppc_linux_can_use_hw_breakpoint)
7389         (ppc_linux_region_ok_for_hw_watchpoint)
7390         (ppc_linux_ranged_break_num_registers)
7391         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
7392         (ppc_linux_insert_mask_watchpoint)
7393         (ppc_linux_remove_mask_watchpoint)
7394         (ppc_linux_can_accel_watchpoint_condition)
7395         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
7396         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
7397         (ppc_linux_watchpoint_addr_within_range)
7398         (ppc_linux_masked_watch_num_registers)
7399         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
7400         (ppc_linux_read_description): Refactor as methods of
7401         ppc_linux_nat_target.
7402         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
7403
7404         * procfs.c (procfs_xfer_partial): Delete forward declaration.
7405         (procfs_target): New class.
7406         (the_procfs_target): New.
7407         (procfs_target): Delete function.
7408         (procfs_auxv_parse, procfs_attach, procfs_detach)
7409         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
7410         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
7411         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
7412         (procfs_create_inferior, procfs_update_thread_list)
7413         (procfs_thread_alive, procfs_pid_to_str)
7414         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
7415         (procfs_stopped_data_address, procfs_insert_watchpoint)
7416         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
7417         (proc_find_memory_regions, procfs_info_proc)
7418         (procfs_make_note_section): Refactor as methods of procfs_target.
7419         (_initialize_procfs): Adjust.
7420         * sol-thread.c (sol_thread_target): New class.
7421         (sol_thread_ops): Now a sol_thread_target.
7422         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
7423         (sol_thread_fetch_registers, sol_thread_store_registers)
7424         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
7425         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
7426         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
7427         (init_sol_thread_ops): Delete.
7428         (_initialize_sol_thread): Adjust.  Remove references to
7429         init_sol_thread_ops and complete_target_initialization.
7430
7431         * windows-nat.c (windows_nat_target): New class.
7432         (windows_fetch_inferior_registers)
7433         (windows_store_inferior_registers, windows_resume, windows_wait)
7434         (windows_attach, windows_detach, windows_pid_to_exec_file)
7435         (windows_files_info, windows_create_inferior)
7436         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
7437         (windows_close, windows_pid_to_str, windows_xfer_partial)
7438         (windows_get_tib_address, windows_get_ada_task_ptid)
7439         (windows_thread_name, windows_thread_alive): Refactor as
7440         windows_nat_target methods.
7441         (do_initial_windows_stuff): Adjust.
7442         (windows_target): Delete function.
7443         (_initialize_windows_nat): Adjust.
7444
7445         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
7446         (darwin_mourn_inferior, darwin_kill_inferior)
7447         (darwin_create_inferior, darwin_attach, darwin_detach)
7448         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
7449         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
7450         (darwin_supports_multi_process): Refactor as darwin_nat_target
7451         methods.
7452         (darwin_resume_to, darwin_files_info): Delete.
7453         (_initialize_darwin_inferior): Rename to ...
7454         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
7455         * darwin-nat.h: Include "inf-child.h".
7456         (darwin_nat_target): New class.
7457         (darwin_complete_target): Delete.
7458         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
7459         (darwin_target): New.
7460         (i386_darwin_fetch_inferior_registers)
7461         (i386_darwin_store_inferior_registers): Refactor as methods of
7462         darwin_nat_target.
7463         (darwin_complete_target): Delete, with ...
7464         (_initialize_i386_darwin_nat): ... bits factored out here.
7465
7466         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
7467         (the_alpha_linux_nat_target): New.
7468         (alpha_linux_register_u_offset): Refactor as
7469         alpha_linux_nat_target method.
7470         (_initialize_alpha_linux_nat): Adjust.
7471         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
7472         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
7473         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
7474         methods of linux_nat_trad_target.
7475         (linux_trad_target): Delete.
7476         * linux-nat-trad.h (linux_trad_target): Delete function.
7477         (linux_nat_trad_target): New class.
7478         * mips-linux-nat.c (mips_linux_nat_target): New class.
7479         (super_fetch_registers, super_store_registers, super_close):
7480         Delete.
7481         (the_mips_linux_nat_target): New.
7482         (mips64_linux_regsets_fetch_registers)
7483         (mips64_linux_regsets_store_registers)
7484         (mips64_linux_fetch_registers, mips64_linux_store_registers)
7485         (mips_linux_register_u_offset, mips_linux_read_description)
7486         (mips_linux_can_use_hw_breakpoint)
7487         (mips_linux_stopped_by_watchpoint)
7488         (mips_linux_stopped_data_address)
7489         (mips_linux_region_ok_for_hw_watchpoint)
7490         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
7491         (mips_linux_close): Refactor as methods of mips_linux_nat.
7492         (_initialize_mips_linux_nat): Adjust to C++ification.
7493
7494         * aix-thread.c (aix_thread_target): New class.
7495         (aix_thread_ops): Now an aix_thread_target.
7496         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
7497         (aix_thread_fetch_registers, aix_thread_store_registers)
7498         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
7499         (aix_thread_thread_alive, aix_thread_pid_to_str)
7500         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
7501         Refactor as methods of aix_thread_target.
7502         (init_aix_thread_ops): Delete.
7503         (_initialize_aix_thread): Remove references to init_aix_thread_ops
7504         and complete_target_initialization.
7505         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
7506         (rs6000_nat_target): New class.
7507         (the_rs6000_nat_target): New.
7508         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
7509         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
7510         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
7511         (super_create_inferior): Delete.
7512         (_initialize_rs6000_nat): Adjust to C++ification.
7513
7514         * arm-linux-nat.c (arm_linux_nat_target): New class.
7515         (the_arm_linux_nat_target): New.
7516         (arm_linux_fetch_inferior_registers)
7517         (arm_linux_store_inferior_registers, arm_linux_read_description)
7518         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
7519         (arm_linux_remove_hw_breakpoint)
7520         (arm_linux_region_ok_for_hw_watchpoint)
7521         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
7522         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
7523         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
7524         arm_linux_nat_target.
7525         (_initialize_arm_linux_nat): Adjust to C++ification.
7526
7527         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
7528         (the_aarch64_linux_nat_target): New.
7529         (aarch64_linux_fetch_inferior_registers)
7530         (aarch64_linux_store_inferior_registers)
7531         (aarch64_linux_child_post_startup_inferior)
7532         (aarch64_linux_read_description)
7533         (aarch64_linux_can_use_hw_breakpoint)
7534         (aarch64_linux_insert_hw_breakpoint)
7535         (aarch64_linux_remove_hw_breakpoint)
7536         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
7537         (aarch64_linux_region_ok_for_hw_watchpoint)
7538         (aarch64_linux_stopped_data_address)
7539         (aarch64_linux_stopped_by_watchpoint)
7540         (aarch64_linux_watchpoint_addr_within_range)
7541         (aarch64_linux_can_do_single_step): Refactor as methods of
7542         aarch64_linux_nat_target.
7543         (super_post_startup_inferior): Delete.
7544         (_initialize_aarch64_linux_nat): Adjust to C++ification.
7545
7546         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
7547         (the_hppa_linux_nat_target): New.
7548         (hppa_linux_fetch_inferior_registers)
7549         (hppa_linux_store_inferior_registers): Refactor as methods of
7550         hppa_linux_nat_target.
7551         (_initialize_hppa_linux_nat): Adjust to C++ification.
7552
7553         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
7554         (the_ia64_linux_nat_target): New.
7555         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
7556         (ia64_linux_stopped_data_address)
7557         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
7558         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
7559         ia64_linux_nat_target methods.
7560         (super_xfer_partial): Delete.
7561         (_initialize_ia64_linux_nat): Adjust to C++ification.
7562
7563         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
7564         (the_m32r_linux_nat_target): New.
7565         (m32r_linux_fetch_inferior_registers)
7566         (m32r_linux_store_inferior_registers): Refactor as
7567         m32r_linux_nat_target methods.
7568         (_initialize_m32r_linux_nat): Adjust to C++ification.
7569
7570         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
7571         (the_m68k_linux_nat_target): New.
7572         (m68k_linux_fetch_inferior_registers)
7573         (m68k_linux_store_inferior_registers): Refactor as
7574         m68k_linux_nat_target methods.
7575         (_initialize_m68k_linux_nat): Adjust to C++ification.
7576
7577         * s390-linux-nat.c (s390_linux_nat_target): New class.
7578         (the_s390_linux_nat_target): New.
7579         (s390_linux_fetch_inferior_registers)
7580         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
7581         (s390_insert_watchpoint, s390_remove_watchpoint)
7582         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
7583         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
7584         (s390_auxv_parse, s390_read_description): Refactor as methods of
7585         s390_linux_nat_target.
7586         (_initialize_s390_nat): Adjust to C++ification.
7587
7588         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
7589         (the_sparc_linux_nat_target): New.
7590         (_initialize_sparc_linux_nat): Adjust to C++ification.
7591         * sparc-nat.c (sparc_fetch_inferior_registers)
7592         (sparc_store_inferior_registers): Remove target_ops parameter.
7593         * sparc-nat.h (sparc_fetch_inferior_registers)
7594         (sparc_store_inferior_registers): Remove target_ops parameter.
7595         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
7596         (the_sparc64_linux_nat_target): New.
7597         (_initialize_sparc64_linux_nat): Adjust to C++ification.
7598
7599         * spu-linux-nat.c (spu_linux_nat_target): New class.
7600         (the_spu_linux_nat_target): New.
7601         (spu_child_post_startup_inferior, spu_child_post_attach)
7602         (spu_child_wait, spu_fetch_inferior_registers)
7603         (spu_store_inferior_registers, spu_xfer_partial)
7604         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
7605         methods.
7606         (_initialize_spu_nat): Adjust to C++ification.
7607
7608         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
7609         (the_tilegx_linux_nat_target): New.
7610         (fetch_inferior_registers, store_inferior_registers):
7611         Refactor as methods.
7612         (_initialize_tile_linux_nat): Adjust to C++ification.
7613
7614         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
7615         (the_xtensa_linux_nat_target): New.
7616         (xtensa_linux_fetch_inferior_registers)
7617         (xtensa_linux_store_inferior_registers): Refactor as
7618         xtensa_linux_nat_target methods.
7619         (_initialize_xtensa_linux_nat): Adjust to C++ification.
7620
7621         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
7622         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
7623         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
7624         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
7625         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
7626         (fbsd_stopped_by_sw_breakpoint)
7627         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
7628         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
7629         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
7630         (fbsd_post_startup_inferior, fbsd_post_attach)
7631         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
7632         (fbsd_set_syscall_catchpoint)
7633         (super_xfer_partial, super_resume, super_wait)
7634         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
7635         (fbsd_handle_debug_trap): Remove target_ops parameter.
7636         (fbsd_nat_add_target): Delete.
7637         * fbsd-nat.h: Include "inf-ptrace.h".
7638         (fbsd_nat_add_target): Delete.
7639         (USE_SIGTRAP_SIGINFO): Define.
7640         (fbsd_nat_target): New class.
7641
7642         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
7643         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
7644         (amd64bsd_target): Delete.
7645         * amd64-bsd-nat.h: New file.
7646         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
7647         "x86-bsd-nat.h".
7648         (amd64_fbsd_nat_target): New class.
7649         (the_amd64_fbsd_nat_target): New.
7650         (amd64fbsd_read_description): Refactor as method of
7651         amd64_fbsd_nat_target.
7652         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
7653         (_initialize_amd64fbsd_nat): Adjust to C++ification.
7654         * amd64-nat.h (amd64bsd_target): Delete function declaration.
7655         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
7656         (i386bsd_store_inferior_registers): Remove target_ops parameter.
7657         (i386bsd_target): Delete.
7658         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
7659         (i386bsd_fetch_inferior_registers)
7660         (i386bsd_store_inferior_registers): Declare.
7661         (i386_bsd_nat_target): New class.
7662         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
7663         (the_i386_fbsd_nat_target): New.
7664         (i386fbsd_resume, i386fbsd_read_description): Refactor as
7665         i386_fbsd_nat_target methods.
7666         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
7667         (_initialize_i386fbsd_nat): Adjust to C++ification.
7668         * x86-bsd-nat.c (super_mourn_inferior): Delete.
7669         (x86bsd_mourn_inferior, x86bsd_target): Delete.
7670         (_initialize_x86_bsd_nat): Adjust to C++ification.
7671         * x86-bsd-nat.h: Include "x86-nat.h".
7672         (x86bsd_target): Delete declaration.
7673         (x86bsd_nat_target): New class.
7674
7675         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
7676         (the_aarch64_fbsd_nat_target): New.
7677         (aarch64_fbsd_fetch_inferior_registers)
7678         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
7679         aarch64_fbsd_nat_target.
7680         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
7681         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
7682         (the_alpha_bsd_nat_target): New.
7683         (alphabsd_fetch_inferior_registers)
7684         (alphabsd_store_inferior_registers): Refactor as
7685         alpha_bsd_nat_target methods.
7686         (_initialize_alphabsd_nat): Refactor as methods of
7687         alpha_bsd_nat_target.
7688         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
7689         (the_amd64_nbsd_nat_target): New.
7690         (_initialize_amd64nbsd_nat): Adjust to C++ification.
7691         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
7692         (the_amd64_obsd_nat_target): New.
7693         (_initialize_amd64obsd_nat): Adjust to C++ification.
7694         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
7695         (the_arm_fbsd_nat_target): New.
7696         (arm_fbsd_fetch_inferior_registers)
7697         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
7698         (_initialize_arm_fbsd_nat): Refactor as methods of
7699         arm_fbsd_nat_target.
7700         (_initialize_arm_fbsd_nat): Adjust to C++ification.
7701         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
7702         (the_arm_netbsd_nat_target): New.
7703         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
7704         arm_netbsd_nat_target.
7705         (_initialize_arm_netbsd_nat): Adjust to C++ification.
7706         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
7707         (the_hppa_nbsd_nat_target): New.
7708         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
7709         hppa_nbsd_nat_target methods.
7710         (_initialize_hppanbsd_nat): Adjust to C++ification.
7711         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
7712         (the_hppa_obsd_nat_target): New.
7713         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
7714         methods of hppa_obsd_nat_target.
7715         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
7716         add_target.
7717         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
7718         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
7719         add_target.
7720         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
7721         (_initialize_i386obsd_nat): Use add_target.
7722         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
7723         (the_m68k_bsd_nat_target): New.
7724         (m68kbsd_fetch_inferior_registers)
7725         (m68kbsd_store_inferior_registers): Refactor as methods of
7726         m68k_bsd_nat_target.
7727         (_initialize_m68kbsd_nat): Adjust to C++ification.
7728         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
7729         (the_mips_fbsd_nat_target): New.
7730         (mips_fbsd_fetch_inferior_registers)
7731         (mips_fbsd_store_inferior_registers): Refactor as methods of
7732         mips_fbsd_nat_target.
7733         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
7734         add_target.
7735         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
7736         (the_mips_nbsd_nat_target): New.
7737         (mipsnbsd_fetch_inferior_registers)
7738         (mipsnbsd_store_inferior_registers): Refactor as methods of
7739         mips_nbsd_nat_target.
7740         (_initialize_mipsnbsd_nat): Adjust to C++ification.
7741         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
7742         (the_mips64_obsd_nat_target): New.
7743         (mips64obsd_fetch_inferior_registers)
7744         (mips64obsd_store_inferior_registers): Refactor as methods of
7745         mips64_obsd_nat_target.
7746         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
7747         add_target.
7748         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
7749         nbsd_nat_target.
7750         * nbsd-nat.h: Include "inf-ptrace.h".
7751         (nbsd_nat_target): New class.
7752         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
7753         (obsd_wait): Refactor as methods of obsd_nat_target.
7754         (obsd_add_target): Delete.
7755         * obsd-nat.h: Include "inf-ptrace.h".
7756         (obsd_nat_target): New class.
7757         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
7758         (the_ppc_fbsd_nat_target): New.
7759         (ppcfbsd_fetch_inferior_registers)
7760         (ppcfbsd_store_inferior_registers): Refactor as methods of
7761         ppc_fbsd_nat_target.
7762         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
7763         add_target.
7764         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
7765         (the_ppc_nbsd_nat_target): New.
7766         (ppcnbsd_fetch_inferior_registers)
7767         (ppcnbsd_store_inferior_registers): Refactor as methods of
7768         ppc_nbsd_nat_target.
7769         (_initialize_ppcnbsd_nat): Adjust to C++ification.
7770         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
7771         (the_ppc_obsd_nat_target): New.
7772         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
7773         methods of ppc_obsd_nat_target.
7774         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
7775         add_target.
7776         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
7777         (the_sh_nbsd_nat_target): New.
7778         (shnbsd_fetch_inferior_registers)
7779         (shnbsd_store_inferior_registers): Refactor as methods of
7780         sh_nbsd_nat_target.
7781         (_initialize_shnbsd_nat): Adjust to C++ification.
7782         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
7783         (inf_ptrace_xfer_partial): Delete.
7784         (sparc_xfer_partial, sparc_target): Delete.
7785         * sparc-nat.h (sparc_fetch_inferior_registers)
7786         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
7787         (sparc_target): Delete function declaration.
7788         (sparc_target): New template class.
7789         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
7790         (_initialize_sparcnbsd_nat): Adjust to C++ification.
7791         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
7792         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
7793         add_target.
7794         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
7795         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
7796         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
7797         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
7798         add_target.
7799         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
7800         (the_vax_bsd_nat_target): New.
7801         (vaxbsd_fetch_inferior_registers)
7802         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
7803         methods.
7804         (_initialize_vaxbsd_nat): Adjust to C++ification.
7805
7806         * bsd-kvm.c (bsd_kvm_target): New class.
7807         (bsd_kvm_ops): Now a bsd_kvm_target.
7808         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
7809         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
7810         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
7811         bsd_kvm_target.
7812         (bsd_kvm_return_one): Delete.
7813         (bsd_kvm_add_target): Adjust to C++ification.
7814
7815         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
7816         (nto_procfs_target_procfs): New classes.
7817         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
7818         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
7819         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
7820         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
7821         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
7822         (procfs_remove_hw_breakpoint, procfs_resume)
7823         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
7824         (procfs_kill_inferior, procfs_store_registers)
7825         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
7826         as methods of nto_procfs_target.
7827         (nto_procfs_ops): Now an nto_procfs_target_procfs.
7828         (nto_native_ops): Delete.
7829         (procfs_open, procfs_native_open): Delete.
7830         (nto_native_ops): Now an nto_procfs_target_native.
7831         (init_procfs_targets): Adjust to C++ification.
7832         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
7833         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
7834         Refactor as methods of nto_procfs_target.
7835
7836         * go32-nat.c (go32_nat_target): New class.
7837         (the_go32_nat_target): New.
7838         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
7839         (go32_store_registers, go32_xfer_partial, go32_files_info)
7840         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
7841         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
7842         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
7843         (go32_pid_to_str): Refactor as methods of go32_nat_target.
7844         (go32_target): Delete.
7845         (_initialize_go32_nat): Adjust to C++ification.
7846
7847         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
7848         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
7849         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
7850         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
7851         gnu_nat_target.
7852         (gnu_target): Delete.
7853         * gnu-nat.h (gnu_target): Delete.
7854         (gnu_nat_target): New class.
7855         * i386-gnu-nat.c (gnu_base_target): New.
7856         (i386_gnu_nat_target): New class.
7857         (the_i386_gnu_nat_target): New.
7858         (_initialize_i386gnu_nat): Adjust to C++ification.
7859
7860 2018-05-02  Pedro Alves  <palves@redhat.com>
7861
7862         * bfd-target.c (target_bfd_xclose): Rename to ...
7863         (target_bfd_close): ... this.
7864         (target_bfd_reopen): Adjust.
7865         * target.c (target_close): Remove references to to_xclose.
7866         * target.h (target_ops::to_xclose): Delete.
7867         (target_ops::to_close): Update comments.
7868
7869 2018-05-02  Pedro Alves  <palves@redhat.com>
7870
7871         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
7872         "linux-nat.h".
7873         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
7874         * inf-ptrace.c (inf_ptrace_register_u_offset)
7875         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
7876         (inf_ptrace_store_register, inf_ptrace_store_registers)
7877         (inf_ptrace_trad_target): Move to ...
7878         * linux-nat-trad.c: ... this new file.
7879         * linux-nat-trad.h: New file.
7880         * linux-nat.c (linux_target_install_ops): Make extern.
7881         (linux_trad_target): Delete.
7882         * linux-nat.h (linux_trad_target): Delete declaration.
7883         (linux_target_install_ops): Declare.
7884         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
7885         "linux-nat.h".
7886
7887 2018-05-02  Pedro Alves  <palves@redhat.com>
7888
7889         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
7890         procfs_target/add_target here.
7891         * procfs.c (procfs_target): Make static.
7892         (_initialize_procfs): Call add_target here.
7893         * procfs.h (struct target_ops): Remove forward declaration.
7894         (procfs_target): Remove declaration.
7895         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
7896
7897 2018-05-02  Pedro Alves  <palves@redhat.com>
7898
7899         * procfs.c (procfs_stopped_by_watchpoint)
7900         (procfs_insert_watchpoint, procfs_remove_watchpoint)
7901         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
7902         Forward declare.
7903         (procfs_use_watchpoints): Delete, move contents...
7904         (procfs_target): ... here.
7905         * procfs.h (procfs_use_watchpoints): Delete declaration.
7906         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
7907         procfs_use_watchpoints.
7908         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
7909         procfs_use_watchpoints.
7910
7911 2018-05-02  Tom Tromey  <tom@tromey.com>
7912
7913         PR python/20084:
7914         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
7915         and var_zuinteger_unlimited.
7916         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
7917         and PARAM_ZUINTEGER_UNLIMITED.
7918         (set_parameter_value): Handle var_zuinteger and
7919         var_zuinteger_unlimited.
7920         (add_setshow_generic): Likewise.
7921         (parmpy_init): Likewise.
7922
7923 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
7924
7925         PR rust/23124
7926         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
7927         pointer is not null before dereferencing it.
7928
7929 2018-04-30  Tom Tromey  <tom@tromey.com>
7930
7931         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
7932         is_mi_like_p.
7933
7934 2018-04-30  Tom Tromey  <tom@tromey.com>
7935
7936         * breakpoint.c (mention): Remove use of is_mi_like_p.
7937         (print_mention_ranged_breakpoint): Likewise.
7938         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
7939         of is_mi_like_p.
7940
7941 2018-04-30  Tom Tromey  <tom@tromey.com>
7942
7943         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
7944
7945 2018-04-30  Tom Tromey  <tom@tromey.com>
7946
7947         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
7948         (info_spu_event_command): Remove some uses of is_mi_like_p.
7949
7950 2018-04-30  Tom Tromey  <tom@tromey.com>
7951
7952         * python/py-framefilter.c (py_print_single_arg)
7953         (enumerate_locals, py_print_args, py_print_frame): Remove some
7954         uses of is_mi_like_p.
7955
7956 2018-04-30  Tom Tromey  <tom@tromey.com>
7957
7958         * ui-out.c: Update.
7959         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
7960         * ui-out.h (ui_out::is_mi_like_p): Now const.
7961         (ui_out::do_is_mi_like_p): Now const.
7962         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
7963
7964 2018-04-30  Tom Tromey  <tom@tromey.com>
7965
7966         * varobj.c (varobj_set_visualizer): Use new_reference.
7967         * python/python.c (gdbpy_decode_line): Use new_reference.
7968         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
7969         new_reference.
7970
7971 2018-04-30  Tom Tromey  <tom@tromey.com>
7972
7973         * varobj.c (install_new_value): Use new_reference.
7974         * value.h (value_incref): Return void.  Swap intro comment with
7975         value_decref.
7976         * value.c (set_value_parent): Use new_reference.
7977         (value_incref): Return void.  Update intro comment.
7978         (release_value): Use new_reference.
7979         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
7980
7981 2018-04-30  Tom Tromey  <tom@tromey.com>
7982
7983         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
7984         * gdb_bfd.h (new_bfd_ref): Remove.
7985         (gdb_bfd_open): Update comment.
7986         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
7987         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
7988         (gdb_bfd_fdopenr): Use new_reference.
7989         * exec.c (exec_file_attach): Use new_reference.
7990
7991 2018-04-30  Tom Tromey  <tom@tromey.com>
7992
7993         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
7994         method.
7995
7996 2018-04-30  Tom Tromey  <tom@tromey.com>
7997
7998         * jit.c (jit_read_code_entry): Use type_align.
7999         * i386-tdep.c (i386_gdbarch_init): Don't call
8000         set_gdbarch_long_long_align_bit.
8001         * gdbarch.sh: Remove long_long_align_bit.
8002         * gdbarch.c, gdbarch.h: Rebuild.
8003         * arc-tdep.c (arc_type_align): New function.
8004         (arc_gdbarch_init): Use arc_type_align.  Don't call
8005         set_gdbarch_long_long_align_bit.
8006
8007 2018-04-30  Tom Tromey  <tom@tromey.com>
8008
8009         * rust-lang.c (rust_type_alignment): Remove.
8010         (rust_composite_type): Use type_align.
8011
8012 2018-04-30  Tom Tromey  <tom@tromey.com>
8013
8014         * NEWS: Mention Type.align.
8015         * python/py-type.c (typy_get_alignof): New function.
8016         (type_object_getset): Add "alignof".
8017
8018 2018-04-30  Tom Tromey  <tom@tromey.com>
8019
8020         PR exp/17095:
8021         * NEWS: Update.
8022         * std-operator.def (UNOP_ALIGNOF): New operator.
8023         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
8024         New.
8025         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
8026         * c-lang.c (c_op_print_tab): Add alignof.
8027         * c-exp.y (ALIGNOF): New token.
8028         (exp): Add "ALIGNOF" production.
8029         (ident_tokens): Add _Alignof and alignof.
8030
8031 2018-04-30  Tom Tromey  <tom@tromey.com>
8032
8033         * i386-tdep.c (i386_type_align): New function.
8034         (i386_gdbarch_init): Update.
8035         * gdbarch.sh (type_align): New method.
8036         * gdbarch.c, gdbarch.h: Rebuild.
8037         * arch-utils.h (default_type_align): Declare.
8038         * arch-utils.c (default_type_align): New function.
8039         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
8040         (struct type) <align_log2>: New field.
8041         <instance_flags>: Now a bitfield.
8042         (TYPE_RAW_ALIGN): New macro.
8043         (type_align, type_raw_align, set_type_align): Declare.
8044         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
8045         functions.
8046         * dwarf2read.c (quirk_rust_enum): Set type alignment.
8047         (get_alignment, maybe_set_alignment): New functions.
8048         (read_structure_type, read_enumeration_type, read_array_type)
8049         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
8050         (read_subrange_type, read_base_type): Set type alignment.
8051
8052 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
8053
8054         * dwarf2read.c (read_index_from_section): Use bool.
8055
8056 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
8057
8058         PR gdb/22950
8059         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
8060         with #ifdef.
8061
8062 2018-04-29  John Reiser  <jreiser@BitWagon.com>
8063
8064         PR build/22873
8065         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
8066         last step, and do it atomically.
8067
8068 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
8069
8070         * compile/compile-c-types.c (convert_int, convert_float):
8071         Update for C FE v1.
8072
8073 2018-04-27  Tom Tromey  <tom@tromey.com>
8074
8075         PR rust/22545:
8076         * rust-lang.c (rust_inclusive_range_type_p): New function.
8077         (rust_range): Handle inclusive ranges.
8078         (rust_compute_range): Likewise.
8079         * rust-exp.y (struct rust_op) <inclusive>: New field.
8080         (DOTDOTEQ): New constant.
8081         (range_expr): Add "..=" productions.
8082         (operator_tokens): Add "..=" token.
8083         (ast_range): Add "inclusive" parameter.
8084         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
8085         ranges.
8086         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
8087         bounds values.
8088         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
8089         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
8090         Update comments.
8091         * expprint.c (print_subexp_standard): Handle new bounds values.
8092         (dump_subexp_body_standard): Likewise.
8093
8094 2018-04-27  Tom Tromey  <tom@tromey.com>
8095
8096         * configure: Rebuild.
8097         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
8098         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
8099         "OVERRIDE".
8100         (class symbol_needs_eval_context): Likewise.
8101         * dwarf2read.c (mock_mapped_index::symbol_name_count)
8102         (mock_mapped_index::symbol_name_at): Use "override".  Remove
8103         "virtual".
8104         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
8105         "override".
8106         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
8107         * aarch64-tdep.c (instruction_reader::read): Use "override".
8108         (instruction_reader_test::read): Likewise.
8109         * arm-tdep.c (instruction_reader::read): Use "override".
8110         (instruction_reader_thumb::read): Likewise.
8111
8112 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
8113
8114         PR remote/9665
8115         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
8116         instead of remote_send.
8117         (remote_send): Remove.
8118
8119 2018-04-26  Pedro Alves  <palves@redhat.com>
8120
8121         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
8122         find_function_start_sal instead of find_pc_line.
8123
8124 2018-04-26  Pedro Alves  <palves@redhat.com>
8125
8126         * breakpoint.c (set_breakpoint_location_function): Handle
8127         mst_data_gnu_ifunc.
8128         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
8129         * elfread.c (elf_symtab_read): Give data symbols with
8130         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
8131         (elf_rel_plt_read): Update comment.
8132         * linespec.c (convert_linespec_to_sals): Handle
8133         mst_data_gnu_ifunc.
8134         (minsym_found): Handle mst_data_gnu_ifunc.
8135         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
8136         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
8137         * parse.c (find_minsym_type_and_address): Handle
8138         mst_data_gnu_ifunc.
8139         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
8140         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
8141         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
8142         comment.
8143         <mst_data_gnu_ifunc>: New enumerator.
8144
8145 2018-04-26  Pedro Alves  <palves@redhat.com>
8146
8147         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
8148         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
8149         'want_trampoline' parameter by a lookup_msym_prefer parameter.
8150         Handle it.
8151         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
8152         (lookup_minimal_symbol_by_pc): Adjust.
8153         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
8154         (lookup_solib_trampoline_symbol_by_pc): Adjust.
8155         * minsyms.h (lookup_msym_prefer): New enum.
8156         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
8157         parameter by a lookup_msym_prefer parameter.
8158
8159 2018-04-26  Pedro Alves  <palves@redhat.com>
8160
8161         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
8162         ends in "@plt" instead of looking at the symbol's section.
8163
8164 2018-04-26  Pedro Alves  <palves@redhat.com>
8165
8166         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
8167         all references.
8168         (find_pc_partial_function_gnu_ifunc): Rename to ...
8169         (find_pc_partial_function): ... this, and remove references to
8170         'is_gnu_ifunc_p'.
8171         (find_pc_partial_function): Delete old implementation.
8172         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
8173
8174 2018-04-26  Pedro Alves  <palves@redhat.com>
8175
8176         * linespec.c (struct bound_minimal_symbol_search_key): New.
8177         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
8178         skip first line if we found a GNU ifunc minimal symbol by name.
8179         (compare_msymbols): Change parameters to work with a destructured
8180         lhs minsym.
8181         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
8182         functions.
8183
8184 2018-04-26  Pedro Alves  <palves@redhat.com>
8185
8186         * breakpoint.c (set_breakpoint_location_function): Don't resolve
8187         ifunc targets here.  Instead, if we have an ifunc minsym, use its
8188         address/name.
8189         (add_location_to_breakpoint): Store the minsym and the objfile in
8190         the breakpoint location.
8191         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
8192         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
8193         Record the minsym in the sal.
8194         * symtab.h (symtab_and_line) <msymbol>: New field.
8195
8196 2018-04-26  Pedro Alves  <palves@redhat.com>
8197
8198         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
8199         unless we actually resolved the ifunc.
8200
8201 2018-04-26  Pedro Alves  <palves@redhat.com>
8202
8203         * c-exp.y (variable production): Prefer ifunc minsyms over
8204         regular function symbols.
8205         * symtab.c (find_gnu_ifunc): New function.
8206         * minsyms.h (lookup_msym_prefer): New enum.
8207         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
8208         parameter by a lookup_msym_prefer parameter.
8209         * symtab.h (find_gnu_ifunc): New declaration.
8210
8211 2018-04-26  Pedro Alves  <palves@redhat.com>
8212
8213         * blockframe.c (find_gnu_ifunc_target_type): New function.
8214         (find_function_type): New.
8215         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
8216         return a value with a memory address.
8217         (eval_call): For calls to GNU ifunc functions, try to find the
8218         type of the target function from the type that the resolver
8219         returns.
8220         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
8221         symbols.
8222         * infcall.c (find_function_return_type): Delete.
8223         (find_function_addr): Add 'function_type' parameter.  For calls to
8224         GNU ifunc functions, try to find the type of the target function
8225         from the type that the resolver returns, and return it via
8226         FUNCTION_TYPE.
8227         (call_function_by_hand_dummy): Adjust to use the function type
8228         returned by find_function_addr.
8229         (find_function_addr): Add 'function_type' parameter and move
8230         description here.
8231         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
8232         declarations.
8233
8234 2018-04-26  Pedro Alves  <palves@redhat.com>
8235
8236         * c-exp.y (variable production): Skip finding an alias for ifunc
8237         symbols.
8238
8239 2018-04-26  Pedro Alves  <palves@redhat.com>
8240
8241         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
8242
8243 2018-04-25  Pedro Alves  <palves@redhat.com>
8244
8245         * infcmd.c (kill_command): Print the pid as string, not the whole
8246         thread's ptid.  Add comment.  s/has been killed/killed/ in output
8247         message.
8248         * remote.c (remote_detach_1): Print the pid as string, not the
8249         whole thread's ptid.
8250
8251 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
8252             Sergio Durigan Junior  <sergiodj@redhat.com>
8253             Pedro Alves  <palves@redhat.com>
8254
8255         * infcmd.c (kill_command): Print message when inferior has
8256         been killed.
8257         * inferior.c (print_inferior_events): Remove 'static'.  Set as
8258         '1'.
8259         (add_inferior): Improve message printed when
8260         'print_inferior_events' is on.
8261         (exit_inferior): Remove message printed when
8262         'print_inferior_events' is on.
8263         (detach_inferior): Improve message printed when
8264         'print_inferior_events' is on.
8265         (initialize_inferiors): Use 'add_inferior_silent' to set
8266         'current_inferior_'.
8267         * inferior.h (print_inferior_events): Declare here as
8268         'extern'.
8269         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
8270         '[Detaching...]' messages when 'print_inferior_events' is on.
8271         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
8272         as prefix/suffix for messages.  Remove periods.  Fix erroneous
8273         'Detaching after fork from child...', replace it by '... from
8274         parent...'.
8275         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
8276         prefix/suffix when printing 'Detaching...' messages.  Print
8277         them when 'print_inferior_events' is on.
8278         * remote.c (remote_detach_1): Print message when detaching
8279         from inferior and '!is_fork_parent'.
8280
8281 2018-04-24  Tom Tromey  <tom@tromey.com>
8282
8283         * cli-out.h: Reindent.
8284
8285 2018-04-24  Tom Tromey  <tom@tromey.com>
8286
8287         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
8288         (cli_ui_out::do_field_string): Use fputs_filtered.
8289         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
8290
8291 2018-04-23  Tom Tromey  <tom@tromey.com>
8292
8293         * guile/scm-frame.c (gdbscm_frame_read_var): Use
8294         gdb::unique_xmalloc_ptr.
8295
8296 2018-04-23  Tom Tromey  <tom@tromey.com>
8297
8298         * configure: Rebuild.
8299
8300 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
8301
8302         PR gdb/23095
8303         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
8304         prepare_for_testing.  Set normal_bp to r_debug_state if target
8305         is bsd.
8306
8307 2018-04-21  Pedro Alves  <palves@redhat.com>
8308             Rajendra SY  <rajendra.sy@gmail.com>
8309
8310         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
8311         * remote.c (extended_remote_attach): In all-stop mode, mark the
8312         thread as executing.
8313
8314 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8315
8316         * thread.c (thread_apply_all_command): Fix comment.
8317         (thread_command): Fix comment.
8318
8319 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
8320
8321         * common/tdesc.h (tdesc_create_feature): Remove xml filename
8322         parameter.
8323         * features/aarch64-core.c (create_feature_aarch64_core):
8324         Regenerate.
8325         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
8326         Likewise.
8327         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
8328         Likewise.
8329         * features/i386/32bit-avx512.c
8330         (create_feature_i386_32bit_avx512): Likewise.
8331         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
8332         Likewise.
8333         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
8334         Likewise.
8335         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
8336         Likewise.
8337         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
8338         Likewise.
8339         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
8340         Likewise.
8341         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
8342         Likewise.
8343         * features/i386/64bit-avx512.c
8344         (create_feature_i386_64bit_avx512): Likewise.
8345         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
8346         Likewise.
8347         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
8348         Likewise.
8349         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
8350         Likewise.
8351         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
8352         Likewise.
8353         * features/i386/64bit-segments.c
8354         (create_feature_i386_64bit_segments): Likewise.
8355         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
8356         Likewise.
8357         * features/i386/x32-core.c
8358         (create_feature_i386_x32_core): Likewise.
8359         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
8360         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
8361         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
8362         * target-descriptions.c: In generated code, don't pass xml
8363         filename.
8364
8365 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
8366
8367         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
8368         (print_xml_feature::visit_post): Likewise.
8369         (print_xml_feature::visit): Likewise.
8370         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
8371         (print_xml_feature): Add new class.
8372         * regformats/regdat.sh: Null xmltarget on feature targets.
8373         * target-descriptions.c (struct target_desc): Add xmltarget.
8374         (maintenance_check_tdesc_xml_convert): Add unittest function.
8375         (tdesc_get_features_xml): Add function to get xml.
8376         (maintenance_check_xml_descriptions): Test xml generation.
8377         * xml-tdesc.c (string_read_description_xml): Add function.
8378         * xml-tdesc.h (string_read_description_xml): Add declaration.
8379
8380 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
8381
8382         * features/Makefile: Add feature marker to targets with new style
8383         target descriptions.
8384         * regformats/aarch64.dat: Regenerate.
8385         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
8386         * regformats/i386/amd64-avx-linux.dat: Likewise.
8387         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
8388         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
8389         * regformats/i386/amd64-linux.dat: Likewise.
8390         * regformats/i386/amd64-mpx-linux.dat: Likewise.
8391         * regformats/i386/amd64.dat: Likewise.
8392         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
8393         * regformats/i386/i386-avx-linux.dat: Likewise.
8394         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
8395         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
8396         * regformats/i386/i386-linux.dat: Likewise.
8397         * regformats/i386/i386-mmx-linux.dat: Likewise.
8398         * regformats/i386/i386-mpx-linux.dat: Likewise.
8399         * regformats/i386/i386.dat: Likewise.
8400         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
8401         * regformats/i386/x32-avx-linux.dat: Likewise.
8402         * regformats/i386/x32-linux.dat: Likewise.
8403         * regformats/tic6x-c62x-linux.dat: Likewise.
8404         * regformats/tic6x-c64x-linux.dat: Likewise.
8405         * regformats/tic6x-c64xp-linux.dat: Likewise.
8406         * regformats/regdat.sh: Parse feature marker.
8407
8408 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
8409
8410         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
8411         (tdesc_osabi_name): Likewise.
8412         * target-descriptions.c (tdesc_architecture_name): Add new
8413         function.
8414         (tdesc_osabi_name): Likewise.
8415
8416 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
8417
8418         * common/tdesc.c (tdesc_predefined_type): Move to here.
8419         (tdesc_named_type): Likewise.
8420         (tdesc_create_vector): Likewise.
8421         (tdesc_create_struct): Likewise.
8422         (tdesc_set_struct_size): Likewise.
8423         (tdesc_create_union): Likewise.
8424         (tdesc_create_flags): Likewise.
8425         (tdesc_create_enum): Likewise.
8426         (tdesc_add_field): Likewise.
8427         (tdesc_add_typed_bitfield): Likewise.
8428         (tdesc_add_bitfield): Likewise.
8429         (tdesc_add_flag): Likewise.
8430         (tdesc_add_enum_value): Likewise.
8431         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
8432         (struct tdesc_type_vector): Likewise.
8433         (struct tdesc_type_field): Likewise.
8434         (struct tdesc_type_with_fields): Likewise.
8435         (tdesc_create_enum): Add declaration.
8436         (tdesc_add_typed_bitfield): Likewise.
8437         (tdesc_add_enum_value): Likewise.
8438         * target-descriptions.c (tdesc_type_field): Move from here.
8439         (tdesc_type_builtin): Likewise.
8440         (tdesc_type_vector): Likewise.
8441         (tdesc_type_with_fields): Likewise.
8442         (tdesc_predefined_types): Likewise.
8443         (tdesc_named_type): Likewise.
8444         (tdesc_create_vector): Likewise.
8445         (tdesc_create_struct): Likewise.
8446         (tdesc_set_struct_size): Likewise.
8447         (tdesc_create_union): Likewise.
8448         (tdesc_create_flags): Likewise.
8449         (tdesc_create_enum): Likewise.
8450         (tdesc_add_field): Likewise.
8451         (tdesc_add_typed_bitfield): Likewise.
8452         (tdesc_add_bitfield): Likewise.
8453         (tdesc_add_flag): Likewise.
8454         (tdesc_add_enum_value): Likewise.
8455         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
8456         (tdesc_add_typed_bitfield): Likewise.
8457         (tdesc_add_enum_value): Likewise.
8458
8459 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
8460
8461         * common/tdesc.c (tdesc_feature::accept): Move to here.
8462         (tdesc_feature::operator==): Likewise.
8463         (tdesc_create_reg): Likewise.
8464         * common/tdesc.h (tdesc_type_kind): Likewise.
8465         (struct tdesc_type): Likewise.
8466         (struct tdesc_feature): Likewise.
8467         * regformats/regdat.sh: Create a feature.
8468         * target-descriptions.c (tdesc_type_kind): Move from here.
8469         (tdesc_type): Likewise.
8470         (tdesc_type_up): Likewise.
8471         (tdesc_feature): Likewise.
8472         (tdesc_create_reg): Likewise.
8473
8474 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
8475
8476         * Makefile.in: Add arch/tdesc.c
8477         * common/tdesc.c: New file.
8478         * common/tdesc.h (tdesc_element_visitor): Move to here.
8479         (tdesc_element): Likewise.
8480         (tdesc_reg): Likewise.
8481         (tdesc_reg_up): Likewise.
8482         * regformats/regdef.h (reg): Add offset to constructors.
8483         * target-descriptions.c (tdesc_element_visitor): Move from here.
8484         (tdesc_element): Likewise.
8485         (tdesc_reg): Likewise.
8486         (tdesc_reg_up): Likewise.
8487
8488 2018-04-17  Tom Tromey  <tom@tromey.com>
8489
8490         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
8491         discriminant field.
8492
8493 2018-04-17  Tom Tromey  <tom@tromey.com>
8494
8495         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
8496
8497 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
8498
8499         * symtab.c (print_symbol_info): Skip printing filename and line
8500         number when `last' is NULL.
8501         (symtab_symbol_info): Use empty string instead of NULL for first
8502         invocation of print_symbol_info.
8503         (rbreak_command): Pass NULL to `last' parameter of
8504         print_symbol_info.
8505
8506 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
8507
8508         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
8509         instead of nullptr.
8510
8511 2018-04-16  Pedro Alves  <palves@redhat.com>
8512
8513         * MAINTAINERS (sh): Remove.
8514         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
8515         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
8516         (ALLDEPFILES): Remove sh64-tdep.c.
8517         * NEWS: Mentions that support for SH-5/SH64 is removed.
8518         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
8519         (sh*-*-openbsd*): Ditto.
8520         (sh64-*-elf*): Remove.
8521         (sh*): Remove.
8522         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
8523         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
8524         * sh-tdep.c: No longer include "sh64-tdep.h".
8525         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
8526         * sh64-tdep.c, sh64-tdep.h: Remove files.
8527
8528 2018-04-16  Pedro Alves  <palves@redhat.com>
8529
8530         * MAINTAINERS: Remove m88k.
8531         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
8532         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
8533         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
8534         * NEWS: Mention that support for m88k was removed.
8535         * configure.host (m88*-*-*): Remove support.
8536         * configure.nat (m88k-*-*): Remove support.
8537         * configure.tgt (m88*-*-openbsd*): Remove.
8538         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
8539
8540 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
8541
8542         * configure.tgt (x86_tobjs): New variable.
8543         (amd64_tobjs, i386_tobjs): Use it.
8544
8545 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
8546
8547         * symtab.c (print_symbol_info): Precede the symbol definition by
8548         the line number when available.
8549         * NEWS: Advertise this enhancement.
8550
8551 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
8552
8553         * NEWS (New options): announce set/show record btrace cpu.
8554         * btrace.c: Include record-btrace.h.
8555         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
8556         the vendor is unknown.
8557         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
8558         Maybe overwrite the btrace configuration's cpu.
8559         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
8560         (btrace_fetch): Add cpu parameter.  Update callers.
8561         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
8562         Maybe overwrite the btrace configuration's cpu.  Skip enabling
8563         errata workarounds if the vendor is unknown.
8564         * python/py-record-btrace.c: Include record-btrace.h.
8565         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
8566         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
8567         * record-btrace.c (record_btrace_cpu_state_kind): New.
8568         (record_btrace_cpu): New.
8569         (set_record_btrace_cpu_cmdlist): New.
8570         (record_btrace_get_cpu): New.
8571         (require_btrace_thread, record_btrace_info)
8572         (record_btrace_resume_thread): Call record_btrace_get_cpu.
8573         (cmd_set_record_btrace_cpu_none): New.
8574         (cmd_set_record_btrace_cpu_auto): New.
8575         (cmd_set_record_btrace_cpu): New.
8576         (cmd_show_record_btrace_cpu): New.
8577         (_initialize_record_btrace): Initialize set/show record btrace cpu
8578         commands.
8579         * record-btrace.h (record_btrace_get_cpu): New.
8580
8581 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
8582
8583         * record.c (set_record_command): Fix typo in message.
8584
8585 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
8586
8587         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
8588
8589 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
8590
8591         * infrun.c (process_event_stop_test): Call
8592         gdbarch_in_indirect_branch_thunk.
8593         * gdbarch.sh (in_indirect_branch_thunk): New.
8594         * gdbarch.c: Regenerated.
8595         * gdbarch.h: Regenerated.
8596         * x86-tdep.h: New.
8597         * x86-tdep.c: New.
8598         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
8599         (HFILES_NO_SRCDIR): Add x86-tdep.h.
8600         (ALLDEPFILES): Add x86-tdep.c.
8601         * arch-utils.h (default_in_indirect_branch_thunk): New.
8602         * arch-utils.c (default_in_indirect_branch_thunk): New.
8603         * i386-tdep: Include x86-tdep.h.
8604         (i386_in_indirect_branch_thunk): New.
8605         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
8606         function.
8607         * amd64-tdep: Include x86-tdep.h.
8608         (amd64_in_indirect_branch_thunk): New.
8609         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
8610
8611 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
8612
8613         PR gdb/23053
8614         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
8615         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
8616         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
8617         regression.
8618
8619 2018-04-12  Tom Tromey  <tom@tromey.com>
8620
8621         * rust-lang.c (rust_print_struct_def): Remove univariant code.
8622         (rust_evaluate_subexp): Likewise.
8623
8624 2018-04-12  Pedro Alves  <palves@redhat.com>
8625
8626         * procfs.c (procfs_detach): Make forward declaration's prototype
8627         match definition's protototype.
8628         (proc_get_LDT_entry): Remove stale do_cleanups call.
8629
8630 2018-04-12  Pedro Alves  <palves@redhat.com>
8631
8632         * target.h (target_ops::to_has_exited): Delete.
8633         (target_has_exited): Delete.
8634         * target-delegates.c: Regenerate.
8635
8636 2018-04-11  Pedro Alves  <palves@redhat.com>
8637
8638         * target.c (fileio_fh_t::t): Add comment.
8639         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
8640         (target_fileio_close): Handle a NULL target.
8641         (invalidate_fileio_fh): New.
8642         (target_close): Call it.
8643         * remote.c (remote_hostio_send_command): No longer check whether
8644         remote_desc is open.
8645
8646 2018-04-11  Pedro Alves  <palves@redhat.com>
8647
8648         * target.c (fileio_fh_t): Make it a named struct instead of a
8649         typedef.
8650         (fileio_fh_t::is_closed): New method.
8651         (DEF_VEC_O (fileio_fh_t)): Remove.
8652         (fileio_fhandles): Now a std::vector.
8653         (is_closed_fileio_fh): Delete.
8654         (acquire_fileio_fd): Adjust.  Rename parameters.
8655         (release_fileio_fd): Adjust.
8656         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
8657         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
8658         (target_fileio_close): Adjust.
8659
8660 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
8661
8662         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
8663         index.
8664
8665 2018-04-10  Pedro Alves  <palves@redhat.com>
8666
8667         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
8668         (scoped_finish_thread_state): New class.
8669         * infcmd.c (run_command_1): Use it instead of finish_thread_state
8670         cleanup.
8671         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
8672         (fetch_inferior_event, normal_stop): Likewise.
8673         * thread.c (finish_thread_state_cleanup): Delete.
8674
8675 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
8676             Pedro Alves  <palves@redhat.com>
8677
8678         * value.c: Include "selftest.h" and "common/array-view.h".
8679         (struct range) <operator ==>: New.
8680         (test_ranges_contain): New.
8681         (check_ranges_vector): New.
8682         (test_insert_into_bit_range_vector): New.
8683         (_initialize_values): Register selftests.
8684         * common/array-view.h (operator==, operator!=): New.
8685
8686 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
8687
8688         * common/gdb_vecs.h (unordered_remove): Add overload that takes
8689         an iterator.
8690         * inline-frame.c: Include <algorithm>.
8691         (struct inline_state): Add constructor.
8692         (inline_state_s): Remove.
8693         (DEF_VEC_O(inline_state_s)): Remove.
8694         (inline_states): Change type to std::vector.
8695         (find_inline_frame_state): Adjust to std::vector.
8696         (allocate_inline_frame_state): Remove.
8697         (clear_inline_frame_state): Adjust to std::vector.
8698         (skip_inline_frames): Adjust to std::vector.
8699
8700 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
8701
8702         * tracepoint.h (struct trace_state_variable): Add constructor.
8703         <name>: Change type to std::string.
8704         * tracepoint.c (tsv_s): Remove.
8705         (DEF_VEC_O(tsv_s)): Remove.
8706         (tvariables): Change to std::vector.
8707         (create_trace_state_variable): Adjust to std::vector.
8708         (find_trace_state_variable): Likewise.
8709         (find_trace_state_variable_by_number): Likewise.
8710         (delete_trace_state_variable): Likewise.
8711         (trace_variable_command): Adjust to std::string.
8712         (delete_trace_variable_command): Likewise.
8713         (tvariables_info_1): Adjust to std::vector.
8714         (save_trace_state_variables): Likewise.
8715         (start_tracing): Likewise.
8716         (merge_uploaded_trace_state_variables): Adjust to std::vector
8717         and std::string.
8718         * target.h (struct target_ops)
8719         <to_download_trace_state_variable>: Pass reference to
8720         trace_state_variable.
8721         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
8722         * target-delegates.c: Re-generate.
8723         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
8724         (mi_tsv_deleted): Likewise.
8725         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
8726         * remote.c (remote_download_trace_state_variable): Change
8727         pointer to reference and adjust.
8728         * make-target-delegates (parse_argtypes): Handle references.
8729         (write_function_header): Likewise.
8730         (munge_type): Likewise.
8731
8732 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
8733
8734         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
8735         string_view-selftests.c.
8736         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
8737         testsuite.
8738         * unittests/basic_string_view/cons/char/1.cc: Likewise.
8739         * unittests/basic_string_view/cons/char/2.cc: Likewise.
8740         * unittests/basic_string_view/cons/char/3.cc: Likewise.
8741         * unittests/basic_string_view/element_access/char/1.cc:
8742         Likewise.
8743         * unittests/basic_string_view/element_access/char/empty.cc:
8744         Likewise.
8745         * unittests/basic_string_view/element_access/char/front_back.cc:
8746         Likewise.
8747         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
8748         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
8749         Likewise.
8750         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
8751         Likewise.
8752         * unittests/basic_string_view/modifiers/swap/char/1.cc:
8753         Likewise.
8754         * unittests/basic_string_view/operations/compare/char/1.cc:
8755         Likewise.
8756         * unittests/basic_string_view/operations/compare/char/13650.cc:
8757         Likewise.
8758         * unittests/basic_string_view/operations/copy/char/1.cc:
8759         Likewise.
8760         * unittests/basic_string_view/operations/data/char/1.cc:
8761         Likewise.
8762         * unittests/basic_string_view/operations/find/char/1.cc:
8763         Likewise.
8764         * unittests/basic_string_view/operations/find/char/2.cc:
8765         Likewise.
8766         * unittests/basic_string_view/operations/find/char/3.cc:
8767         Likewise.
8768         * unittests/basic_string_view/operations/find/char/4.cc:
8769         Likewise.
8770         * unittests/basic_string_view/operations/rfind/char/1.cc:
8771         Likewise.
8772         * unittests/basic_string_view/operations/rfind/char/2.cc:
8773         Likewise.
8774         * unittests/basic_string_view/operations/rfind/char/3.cc:
8775         Likewise.
8776         * unittests/basic_string_view/operations/substr/char/1.cc:
8777         Likewise.
8778         * unittests/basic_string_view/operators/char/2.cc: Likewise.
8779         * unittests/string_view-selftests.c: New file.
8780
8781 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
8782
8783         * unittests/basic_string_view/capacity/1.cc: New file.
8784         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
8785         * unittests/basic_string_view/cons/char/1.cc: New file.
8786         * unittests/basic_string_view/cons/char/2.cc: New file.
8787         * unittests/basic_string_view/cons/char/3.cc: New file.
8788         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
8789         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
8790         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
8791         * unittests/basic_string_view/element_access/char/1.cc: New file.
8792         * unittests/basic_string_view/element_access/char/2.cc: New file.
8793         * unittests/basic_string_view/element_access/char/empty.cc: New file.
8794         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
8795         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
8796         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
8797         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
8798         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
8799         * unittests/basic_string_view/include.cc: New file.
8800         * unittests/basic_string_view/inserters/char/1.cc: New file.
8801         * unittests/basic_string_view/inserters/char/2.cc: New file.
8802         * unittests/basic_string_view/inserters/char/3.cc: New file.
8803         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
8804         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
8805         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
8806         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
8807         * unittests/basic_string_view/literals/types.cc: New file.
8808         * unittests/basic_string_view/literals/values.cc: New file.
8809         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
8810         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
8811         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
8812         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
8813         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
8814         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
8815         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
8816         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
8817         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
8818         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
8819         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
8820         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
8821         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
8822         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
8823         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
8824         * unittests/basic_string_view/operations/data/char/1.cc: New file.
8825         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
8826         * unittests/basic_string_view/operations/find/char/1.cc: New file.
8827         * unittests/basic_string_view/operations/find/char/2.cc: New file.
8828         * unittests/basic_string_view/operations/find/char/3.cc: New file.
8829         * unittests/basic_string_view/operations/find/char/4.cc: New file.
8830         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
8831         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
8832         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
8833         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
8834         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
8835         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
8836         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
8837         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
8838         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
8839         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
8840         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
8841         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
8842         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
8843         * unittests/basic_string_view/operators/char/2.cc: New file.
8844         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
8845         * unittests/basic_string_view/range_access/char/1.cc: New file.
8846         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
8847         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
8848         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
8849         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
8850         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
8851         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
8852         * unittests/basic_string_view/requirements/typedefs.cc: New file.
8853         * unittests/basic_string_view/typedefs.cc: New file.
8854         * unittests/basic_string_view/types/1.cc: New file.
8855
8856 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
8857
8858         * common/gdb_string_view.h: Remove libstdc++ implementation
8859         details, adjust to gdb reality.
8860         * common/gdb_string_view.tcc: Likewise.
8861         * cli/cli-script.c (struct string_view): Remove.
8862         (user_args) <m_args>: Change element type to gdb::string_view.
8863         (user_args::insert_args): Adjust.
8864
8865 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
8866
8867         * common/gdb_string_view.h: New file.
8868         * common/gdb_string_view.tcc: New file.
8869
8870 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
8871
8872         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
8873         * configure: Re-generate.
8874
8875 2018-04-09  Pedro Alves  <palves@redhat.com>
8876
8877         * gdbarch.sh: Include "observable.h" instead of "observer.h".
8878         (set_target_gdbarch): Call
8879         gdb::observers::architecture_changed.notify instead of
8880         observer_notify_architecture_changed.
8881
8882 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
8883
8884         * tracepoint.c (struct current_traceframe_cleanup): Remove.
8885         (do_restore_current_traceframe_cleanup): Remove.
8886         (restore_current_traceframe_cleanup_dtor): Remove.
8887         (make_cleanup_restore_current_traceframe): Remove.
8888         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
8889         New.
8890         * tracepoint.h (struct scoped_restore_current_traceframe): New.
8891         * infrun.c (fetch_inferior_event): Use
8892         scoped_restore_current_traceframe.
8893
8894 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
8895
8896         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
8897         Remove.
8898         <n_allocated_type_units>: Remove.
8899         <all_type_units>: Change to std::vector.
8900         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
8901         to std::vector change.
8902         (dwarf2_per_objfile::get_cutu): Likewise.
8903         (dwarf2_per_objfile::get_tu): Likewise.
8904         (create_signatured_type_table_from_index): Likewise.
8905         (create_signatured_type_table_from_debug_names): Likewise.
8906         (dw2_symtab_iter_next): Likewise.
8907         (dw2_print_stats): Likewise.
8908         (dw2_expand_all_symtabs): Likewise.
8909         (dw2_expand_marked_cus): Likewise.
8910         (dw2_debug_names_iterator::next): Likewise.
8911         (dwarf2_initialize_objfile): Likewise.
8912         (add_signatured_type_cu_to_table): Likewise.
8913         (create_all_type_units): Likewise.
8914         (add_type_unit): Likewise.
8915         (struct tu_abbrev_offset): Add constructor.
8916         (build_type_psymtabs_1): Adjust to std::vector change.
8917         (print_tu_stats): Likewise.
8918         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
8919         (write_debug_names): Likewise.
8920
8921 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
8922
8923         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
8924         Make an std::vector.
8925         <n_comp_units>: Remove.
8926         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
8927         to std::vector change.
8928         (dwarf2_per_objfile::get_cutu): Likewise.
8929         (dwarf2_per_objfile::get_cu): Likewise.
8930         (create_cus_from_index): Likewise.
8931         (create_addrmap_from_index): Likewise.
8932         (create_addrmap_from_aranges): Likewise.
8933         (dwarf2_read_index): Likewise.
8934         (dw2_find_last_source_symtab): Likewise.
8935         (dw2_map_symtabs_matching_filename): Likewise.
8936         (dw2_symtab_iter_next): Likewise.
8937         (dw2_print_stats): Likewise.
8938         (dw2_expand_all_symtabs): Likewise.
8939         (dw2_expand_symtabs_with_fullname): Likewise.
8940         (dw2_expand_marked_cus): Likewise.
8941         (dw2_map_symbol_filenames): Likewise.
8942         (create_cus_from_debug_names): Likewise.
8943         (dwarf2_read_debug_names): Likewise.
8944         (dw2_debug_names_iterator::next): Likewise.
8945         (dwarf2_initialize_objfile): Likewise.
8946         (set_partial_user): Likewise.
8947         (dwarf2_build_psymtabs_hard): Likewise.
8948         (read_comp_units_from_section): Remove arguments, adjust to
8949         std::vector change.
8950         (create_all_comp_units): Adjust to std::vector and
8951         read_comp_units_from_section changes.
8952         (dwarf2_find_containing_comp_unit): Adjust to std::vector
8953         change.
8954         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
8955         (psyms_seen_size): Likewise.
8956         (write_gdbindex): Likewise.
8957         (write_debug_names): Likewise.
8958
8959 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
8960
8961         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
8962         with dwarf2_per_objfile.
8963         (create_cus_from_index): Likewise.
8964         (create_signatured_type_table_from_index): Likewise.
8965         (dwarf2_read_index): Likewise.
8966         (dwarf2_initialize_objfile): Likewise.
8967         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
8968         per_cu rather than get_dwarf2_per_objfile.
8969
8970 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
8971
8972         * dwarf2read.h (struct signatured_type): Forward declare.
8973         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
8974         New methods.
8975         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
8976         (dw2_get_cutu): ...this.
8977         (dwarf2_per_objfile::get_cu): Rename from...
8978         (dw2_get_cu): ...this.
8979         (dwarf2_per_objfile::get_tu): New.
8980         (create_addrmap_from_index): Adjust.
8981         (create_addrmap_from_aranges): Adjust.
8982         (dw2_find_last_source_symtab): Adjust.
8983         (dw2_map_symtabs_matching_filename): Adjust.
8984         (dw2_symtab_iter_next): Adjust.
8985         (dw2_print_stats): Adjust.
8986         (dw2_expand_all_symtabs): Adjust.
8987         (dw2_expand_symtabs_with_fullname): Adjust.
8988         (dw2_expand_marked_cus): Adjust.
8989         (dw_expand_symtabs_matching_file_matcher): Adjust.
8990         (dw2_map_symbol_filenames): Adjust.
8991         (dw2_debug_names_iterator::next): Adjust.
8992         (dwarf2_initialize_objfile): Adjust.
8993         (set_partial_user): Adjust.
8994         (dwarf2_build_psymtabs_hard): Adjust.
8995
8996 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
8997
8998         * dwarf2read.c (create_signatured_type_table_from_debug_names):
8999         Remove unused variables.
9000         (dw2_map_symtabs_matching_filename): Likewise.
9001         (dwarf2_record_block_ranges): Likewise.
9002         (dwarf2_read_addr_index): Likewise.
9003         (follow_die_offset): Likewise.
9004
9005 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9006
9007         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
9008         to symbol_file_add_main.
9009
9010 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9011
9012         PR mi/22299
9013         * mi/mi-console.c (do_fputc_async_safe): New.
9014         (mi_console_file::write_async_safe): New.
9015         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
9016         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
9017         New.
9018         * ui-file.c (ui_file::putstrn): Adjust call to
9019         fputstrn_unfiltered.
9020         * utils.c (printchar): Replace do_fputs and do_fprintf
9021         parameters by do_fputc.
9022         (fputstr_filtered): Adjust call to printchar.
9023         (fputstr_unfiltered): Likewise.
9024         (fputstrn_filtered): Likewise.
9025         (fputstrn_unfiltered): Add do_fputc parameter, pass to
9026         printchar.
9027         * utils.h (do_fputc_ftype): New typedef.
9028         (fputstrn_unfiltered): Add do_fputc parameter.
9029
9030 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9031
9032         * regformats/i386/i386-avx.dat: Remove.
9033
9034 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
9035
9036         PR gdb/22979
9037         * amd64-tdep.c (amd64_none_init_abi): New function.
9038         (amd64_x32_none_init_abi): New function.
9039         (_initialize_amd64_tdep): Register handlers for x86-64 and
9040         x64_32 with GDB_OSABI_NONE.
9041         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
9042         GDB_OSABI_NONE osabi.
9043
9044 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
9045
9046         PR gdb/22980
9047         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
9048         GDB_OSABI_NONE.
9049         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
9050         * osabi.c (gdb_osabi_names): Add "unknown" entry.
9051
9052 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
9053
9054         * common/byte-vector.h (char_vector): New type.
9055         * target.h (target_read_alloc): Return
9056         gdb::optional<byte_vector>.
9057         (target_read_stralloc): Return gdb::optional<char_vector>.
9058         (target_get_osdata): Return gdb::optional<char_vector>.
9059         * target.c (target_read_alloc_1): Templatize.  Replacement
9060         manual memory management with vector.
9061         (target_read_alloc): Change return type, adjust.
9062         (target_read_stralloc): Change return type, adjust.
9063         (target_get_osdata): Change return type, adjust.
9064         * auxv.c (struct auxv_info) <length>: Remove.
9065         <data>: Change type to gdb::optional<byte_vector>.
9066         (auxv_inferior_data_cleanup): Free auxv_info with delete.
9067         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
9068         (target_auxv_search): Adjust.
9069         (fprint_target_auxv): Adjust.
9070         * avr-tdep.c (avr_io_reg_read_command): Adjust.
9071         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
9072         (linux_make_corefile_notes): Adjust.
9073         * osdata.c (get_osdata): Adjust.
9074         * remote.c (remote_get_threads_with_qxfer): Adjust.
9075         (remote_memory_map): Adjust.
9076         (remote_traceframe_info): Adjust.
9077         (btrace_read_config): Adjust.
9078         (remote_read_btrace): Adjust.
9079         (remote_pid_to_exec_file): Adjust.
9080         * solib-aix.c (solib_aix_get_library_list): Adjust.
9081         * solib-dsbt.c (decode_loadmap): Don't free buf.
9082         (dsbt_get_initial_loadmaps): Adjust.
9083         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
9084         * solib-target.c (solib_target_current_sos): Adjust.
9085         * tracepoint.c (sdata_make_value): Adjust.
9086         * xml-support.c (xinclude_start_include): Adjust.
9087         (xml_fetch_content_from_file): Adjust.
9088         * xml-support.h (xml_fetch_another): Change return type.
9089         (xml_fetch_content_from_file): Change return type.
9090         * xml-syscall.c (xml_init_syscalls_info): Adjust.
9091         * xml-tdesc.c (file_read_description_xml): Adjust.
9092         (fetch_available_features_from_target): Change return type.
9093         (target_fetch_description_xml): Adjust.
9094         (target_read_description_xml): Adjust.
9095
9096 2018-04-06  Tom Tromey  <tom@tromey.com>
9097
9098         * value.c (~value): Update.
9099         (struct value) <contents>: Now unique_xmalloc_ptr.
9100         (value_contents_bits_eq, allocate_value_contents)
9101         (value_contents_raw, value_contents_all_raw)
9102         (value_contents_for_printing, value_contents_for_printing_const)
9103         (set_value_enclosing_type): Update.
9104
9105 2018-04-06  Tom Tromey  <tom@tromey.com>
9106
9107         * value.c (range_s): Remove typedef, VEC.
9108         (struct range): Add operator<.
9109         (range_lessthan): Remove.
9110         (ranges_contain): Change type.
9111         (~value): Update.
9112         (struct value) <unavailable, optimized_out>: Now std::vector.
9113         (value_entirely_available)
9114         (value_entirely_covered_by_range_vector)
9115         (value_entirely_unavailable, value_entirely_optimized_out):
9116         Update.
9117         (insert_into_bit_range_vector): Change argument type.
9118         (find_first_range_overlap): Likewise.
9119         (struct ranges_and_idx, value_contents_bits_eq)
9120         (require_not_optimized_out, require_available): Update.
9121         (ranges_copy_adjusted): Change argument types.
9122         (value_optimized_out, value_copy, value_fetch_lazy): Update.
9123
9124 2018-04-06  Tom Tromey  <tom@tromey.com>
9125
9126         * value.c (~value): Update.
9127         (struct value) <parent>: Now a value_ref_ptr.
9128         (value_parent, set_value_parent, value_address, value_copy):
9129         Update.
9130
9131 2018-04-06  Tom Tromey  <tom@tromey.com>
9132
9133         * value.c (struct value): Add constructor, destructor, and member
9134         initializers.
9135         (allocate_value_lazy, value_decref): Update.
9136
9137 2018-04-06  Tom Tromey  <tom@tromey.com>
9138
9139         * value.c (struct value) <released, next>: Remove.
9140         (all_values): Now a std::vector.
9141         (allocate_value_lazy): Update.
9142         (value_next): Remove.
9143         (value_mark, value_free_to_mark, release_value)
9144         (value_release_to_mark): Update.
9145
9146 2018-04-06  Tom Tromey  <tom@tromey.com>
9147
9148         * value.h (fetch_subexp_value, value_release_to_mark): Update.
9149         (free_value_chain): Remove.
9150         * value.c (free_value_chain): Remove.
9151         (value_release_to_mark): Return a std::vector.
9152         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
9153         std::vector.
9154         (check_condition): Update.
9155         * eval.c (fetch_subexp_value): Change "val_chain" to a
9156         std::vector.
9157         * breakpoint.c (update_watchpoint): Update.
9158         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
9159
9160 2018-04-06  Tom Tromey  <tom@tromey.com>
9161
9162         * value.h (free_all_values): Remove.
9163         * value.c (free_all_values): Remove.
9164
9165 2018-04-06  Tom Tromey  <tom@tromey.com>
9166
9167         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
9168         (value_history_chain, value_history_count): Remove.
9169         (value_history): New global.
9170         (record_latest_value, access_value_history, show_values)
9171         (preserve_values): Update.
9172
9173 2018-04-06  Tom Tromey  <tom@tromey.com>
9174
9175         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
9176         * varobj.c (varobj_set_display_format, varobj_set_value)
9177         (install_default_visualizer, construct_visualizer)
9178         (install_new_value, ~varobj, varobj_get_value_type)
9179         (my_value_of_variable, varobj_editable_p): Update.
9180         * c-varobj.c (c_describe_child, c_value_of_variable)
9181         (cplus_number_of_children, cplus_describe_child): Update.
9182         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
9183         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
9184         (ada_value_of_variable, ada_value_is_changeable_p): Update.
9185
9186 2018-04-06  Tom Tromey  <tom@tromey.com>
9187
9188         * printcmd.c (last_examine_address): Change type to
9189         value_ref_ptr.
9190         (do_examine, x_command): Update.
9191
9192 2018-04-06  Tom Tromey  <tom@tromey.com>
9193
9194         * value.c (release_value): Update.
9195         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
9196         (struct bpstats) <val>: Now a value_ref_ptr.
9197         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
9198         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
9199         (~watchpoint, print_it_watchpoint, watch_command_1)
9200         (invalidate_bp_value_on_memory_change): Update.
9201
9202 2018-04-06  Tom Tromey  <tom@tromey.com>
9203
9204         * varobj.c (varobj_clear_saved_item)
9205         (update_dynamic_varobj_children, install_new_value, ~varobj):
9206         Update.
9207         * value.h (value_incref): Move declaration earlier.
9208         (value_decref): Rename from value_free.
9209         (struct value_ref_policy): New.
9210         (value_ref_ptr): New typedef.
9211         (struct value_deleter): Remove.
9212         (gdb_value_up): Remove typedef.
9213         (release_value): Change return type.
9214         (release_value_or_incref): Remove.
9215         * value.c (set_value_parent): Update.
9216         (value_incref): Change return type.
9217         (value_decref): Rename from value_free.
9218         (value_free_to_mark, free_all_values, free_value_chain): Update.
9219         (release_value): Return value_ref_ptr.
9220         (release_value_or_incref): Remove.
9221         (record_latest_value, set_internalvar, clear_internalvar):
9222         Update.
9223         * stack.c (info_frame_command): Don't call value_free.
9224         * python/py-value.c (valpy_dealloc, valpy_new)
9225         (value_to_value_object): Update.
9226         * printcmd.c (do_examine): Update.
9227         * opencl-lang.c (lval_func_free_closure): Update.
9228         * mi/mi-main.c (register_changed_p): Don't call value_free.
9229         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
9230         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
9231         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
9232         value_free.
9233         * guile/scm-value.c (vlscm_free_value_smob)
9234         (vlscm_scm_from_value): Update.
9235         * frame.c (frame_register_unwind, frame_unwind_register_signed)
9236         (frame_unwind_register_unsigned, get_frame_register_bytes)
9237         (put_frame_register_bytes): Don't call value_free.
9238         * findvar.c (address_from_register): Don't call value_free.
9239         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
9240         * dwarf2loc.c (entry_data_value_free_closure)
9241         (value_of_dwarf_reg_entry, free_pieced_value_closure)
9242         (dwarf2_evaluate_loc_desc_full): Update.
9243         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
9244         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
9245         (~watchpoint, watch_command_1)
9246         (invalidate_bp_value_on_memory_change): Update.
9247         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
9248
9249 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
9250
9251         PR gdb/23022
9252         * warning.m4: Add -Wno-error=deprecated-register.
9253         * configure: Re-generate.
9254
9255 2018-04-05  Tom Tromey  <tom@tromey.com>
9256
9257         * linespec.h: Remove include of "vec.h".
9258
9259 2018-04-05  Tom Tromey  <tom@tromey.com>
9260
9261         * linespec.c (typep): Remove typedef.
9262         (find_methods, find_superclass_methods): Take a std::vector.
9263         (find_method): Use std::vector.
9264
9265 2018-04-05  Tom Tromey  <tom@tromey.com>
9266
9267         * utils.c (compare_strings): Remove.
9268         * utils.h (compare_strings): Remove.
9269         * objc-lang.h (find_imps): Update.
9270         * objc-lang.c (find_methods): Take a std::vector.
9271         (uniquify_strings, find_imps): Likewise.
9272         * linespec.c (find_methods): Take a std::vector.
9273         (decode_objc): Use std::vector.
9274         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
9275         a std::vector.
9276         (find_method, find_function_symbols): Use std::vector.
9277
9278 2018-04-05  Tom Tromey  <tom@tromey.com>
9279
9280         * completer.c (completion_tracker::completion_tracker): Remove
9281         cast.
9282         (completion_tracker::discard_completions): Likewise.
9283         * breakpoint.c (ambiguous_names_p): Remove cast.
9284         * ada-lang.c (_initialize_ada_language): Remove cast.
9285         * utils.h (streq): Update.
9286         (streq_hash): Add new declaration.
9287         * utils.c (streq): Return bool.
9288         (streq_hash): New function.
9289
9290 2018-04-05  Tom Tromey  <tom@tromey.com>
9291
9292         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
9293         Remove a string copy.
9294
9295 2018-04-05  Tom Tromey  <tom@tromey.com>
9296
9297         * linespec.c (filter_results): Use std::vector.
9298         (decode_line_2, decode_line_full): Update.
9299
9300 2018-04-05  Tom Tromey  <tom@tromey.com>
9301
9302         * linespec.c (canonical_to_fullform): Return std::string.
9303         (filter_results): Update.
9304         (struct decode_line_2_item): Add constructor.
9305         <fullform, displayform>: Now std::string.
9306         (decode_line_2_compare_items): Now a std::sort comparator.
9307         (decode_line_2): Update.
9308
9309 2018-04-05  Tom Tromey  <tom@tromey.com>
9310
9311         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
9312         (unexpected_linespec_error): Update.
9313         (linespec_parse_basic, parse_linespec): Update.
9314
9315 2018-04-05  Tom Tromey  <tom@tromey.com>
9316
9317         * linespec.c (linespec_parse_basic): Reindent.
9318
9319 2018-04-05  Tom Tromey  <tom@tromey.com>
9320
9321         * minsyms.h (iterate_over_minimal_symbols): Update.
9322         * minsyms.c (iterate_over_minimal_symbols): Take a
9323         gdb::function_view.
9324         * linespec.c (struct collect_minsyms): Remove.
9325         (compare_msyms): Now a std::sort comparator.
9326         (add_minsym): Add parameters.
9327         (search_minsyms_for_name): Update.  Use std::vector.
9328
9329 2018-04-03  Tom Tromey  <tom@tromey.com>
9330
9331         * mipsread.c (read_alphacoff_dynamic_symtab): Use
9332         gdb::byte_vector.
9333
9334 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
9335
9336         * MAINTAINERS (Write After Approval): Add Weimin Pan.
9337
9338 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
9339
9340         PR gdb/16959
9341         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
9342         printing static type.
9343
9344 2018-04-01  Tom Tromey  <tom@tromey.com>
9345
9346         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
9347         (rs6000_xfer_shared_libraries): Update.
9348
9349 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
9350
9351         * common/gdb_vecs.h (char_ptr): Remove.
9352         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
9353
9354 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
9355
9356         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
9357         with std::vector.
9358         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
9359
9360 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
9361
9362         * tracepoint.h (struct uploaded_tp): Initialize fields.
9363         <actions, step_actions, cmd_strings>: Change type to
9364         std::vector<char *>.
9365         * tracepoint.c (get_uploaded_tp): Allocate with new.
9366         (free_uploaded_tps): Free with delete.
9367         (parse_tracepoint_definition): Adjust to std::vector change.
9368         * breakpoint.c (read_uploaded_action): Likewise.
9369         (create_tracepoint_from_upload): Likewise.
9370         * ctf.c (ctf_write_uploaded_tp): Likewise.
9371         (SET_ARRAY_FIELD): Likewise.
9372         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
9373
9374 2018-03-30  Tom Tromey  <tom@tromey.com>
9375
9376         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
9377         std::unique_ptr.
9378         (svr4_keep_data_in_core): Update.
9379         (svr4_read_so_list): Update.
9380
9381 2018-03-30  Tom Tromey  <tom@tromey.com>
9382
9383         * windows-nat.c (handle_output_debug_string, handle_exception):
9384         Update.
9385         * target.h (target_read_string): Update.
9386         * target.c (target_read_string): Change "string" to
9387         unique_xmalloc_ptr.
9388         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
9389         Update.
9390         * solib-frv.c (frv_current_sos): Update.
9391         * solib-dsbt.c (dsbt_current_sos): Update.
9392         * solib-darwin.c (darwin_current_sos): Update.
9393         * linux-thread-db.c (inferior_has_bug): Update.
9394         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
9395         Update.  Remove alloca.
9396         * ada-lang.c (ada_main_name): Update.
9397
9398 2018-03-30  Tom Tromey  <tom@tromey.com>
9399
9400         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
9401         (struct dwo_file_deleter): New.
9402         (dwo_file_up): New typedef.
9403         (open_and_init_dwo_file): Use dwo_file_up.
9404         (free_dwo_file_cleanup): Remove.
9405
9406 2018-03-30  Tom Tromey  <tom@tromey.com>
9407
9408         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
9409         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
9410
9411 2018-03-30  Tom Tromey  <tom@tromey.com>
9412
9413         * dwarf2read.c (class free_cached_comp_units): New class.
9414         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
9415         (free_cached_comp_units): Remove function.
9416
9417 2018-03-30  Tom Tromey  <tom@tromey.com>
9418
9419         * utils.h (make_cleanup_unpush_target): Remove.
9420         * inf-ptrace.c (struct target_unpusher): New.
9421         (target_unpush_up) New typedef.
9422         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
9423         target_unpush_up.
9424         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
9425
9426 2018-03-27  Tom Tromey  <tom@tromey.com>
9427
9428         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
9429
9430 2018-03-27  Pedro Alves  <palves@redhat.com>
9431             Tom Tromey  <tom@tromey.com>
9432
9433         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
9434         destructor.  Now a class.
9435         (gdb_readline_wrapper_cleanup): Remove function.
9436         (gdb_readline_wrapper): Remove cleanups.
9437
9438 2018-03-27  Tom Tromey  <tom@tromey.com>
9439
9440         * typeprint.h (struct type_print_options) <local_typedefs,
9441         global_typedefs>: Remove "struct" keyword.
9442         (class typedef_hash_table): New class.
9443         (recursively_update_typedef_hash, add_template_parameters)
9444         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
9445         (find_typedef_in_hash): Don't declare.
9446         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
9447         (typedef_hash_table::recursively_update): Rename from
9448         recursively_update_typedef_hash.  Now a member.
9449         (typedef_hash_table::add_template_parameters): Rename from
9450         add_template_parameters.  Now a member.
9451         (typedef_hash_table::typedef_hash_table): Now a constructor;
9452         rename from create_typedef_hash.
9453         (typedef_hash_table::~typedef_hash_table): Now a destructor;
9454         rename from free_typedef_hash.
9455         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
9456         (do_free_global_table): Remove.
9457         (typedef_hash_table::typedef_hash_table): New constructor; renamed
9458         from copy_type_recursive.
9459         (create_global_typedef_table): Remove.
9460         (typedef_hash_table::find_global_typedef): Now a member of
9461         typedef_hash_table.
9462         (typedef_hash_table::find_typedef): Rename from
9463         find_typedef_in_hash; now a member.
9464         (whatis_exp): Update.
9465         * extension.h (struct ext_lang_type_printers): Add constructor and
9466         destructor.
9467         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
9468         declare.
9469         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
9470         Now a constructor; rename from start_ext_lang_type_printers.
9471         (ext_lang_type_printers): Now a destructor; rename from
9472         free_ext_lang_type_printers.
9473         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
9474         Update.
9475         (c_type_print_base_struct_union): Update.  Remove cleanups.
9476
9477 2018-03-27  Tom Tromey  <tom@tromey.com>
9478
9479         * dwarf-index-write.c: Include <cmath>.
9480
9481 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
9482
9483         * NEWS: Add entry describing new "set|show varsize-limit" command.
9484         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
9485         command.
9486         * printcmd.c (_initialize_printcmd): Add "set var" alias of
9487         "set variable".
9488
9489 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
9490
9491         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
9492         dwarf-index-write.c
9493         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
9494         * dwarf-index-common.c: New file.
9495         * dwarf-index-common.h: New file.
9496         * dwarf-index-write.c: New file.
9497         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
9498         (struct dwarf2_section_info): Move from here.
9499         (dwarf2_section_info_def): Likewise.
9500         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
9501         (offset_type): Likewise.
9502         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
9503         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
9504         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
9505         (byte_swap): Likewise.
9506         (MAYBE_SWAP): Likewise.
9507         (dwarf2_per_cu_ptr): Likewise.
9508         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
9509         (struct tu_stats): Likewise.
9510         (struct dwarf2_per_objfile): Likewise.
9511         (struct dwarf2_per_cu_data): Likewise.
9512         (struct signatured_type): Likewise.
9513         (sig_type_ptr): Likewise.
9514         (DEF_VEC_P (sig_type_ptr)): Likewise.
9515         (INDEX4_SUFFIX): Likewise.
9516         (INDEX5_SUFFIX): Likewise.
9517         (DEBUG_STR_SUFFIX): Likewise.
9518         (dwarf2_read_section): Make non-static.
9519         (mapped_index_string_hash): Move from here.
9520         (dwarf5_djb_hash): Likewise.
9521         (file_write): Likewise.
9522         (class data_buf): Likewise.
9523         (struct symtab_index_entry): Likewise.
9524         (struct mapped_symtab): Likewise.
9525         (find_slot): Likewise.
9526         (hash_expand): Likewise.
9527         (add_index_entry): Likewise.
9528         (uniquify_cu_indices): Likewise.
9529         (class c_str_view): Likewise.
9530         (class c_str_view_hasher): Likewise.
9531         (class vector_hasher): Likewise.
9532         (write_hash_table): Likewise.
9533         (psym_index_map): Likewise.
9534         (struct addrmap_index_data): Likewise.
9535         (add_address_entry): Likewise.
9536         (add_address_entry_worker): Likewise.
9537         (write_address_map): Likewise.
9538         (symbol_kind): Likewise.
9539         (write_psymbols): Likewise.
9540         (struct signatured_type_index_data): Likewise.
9541         (write_one_signatured_type): Likewise.
9542         (recursively_count_psymbols): Likewise.
9543         (recursively_write_psymbols): Likewise.
9544         (class debug_names): Likewise.
9545         (check_dwarf64_offsets): Likewise.
9546         (psyms_seen_size): Likewise.
9547         (write_gdbindex): Likewise.
9548         (write_debug_names): Likewise.
9549         (assert_file_size): Likewise.
9550         (write_psymtabs_to_index): Likewise.
9551         (save_gdb_index_command): Likewise.
9552         (_initialize_dwarf2_read): Don't register the "save gdb-index"
9553         command.
9554         * dwarf2read.h: New file.
9555
9556 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
9557
9558         PR gdb/22670
9559         * dwarf2read.c (dwarf2_physname): Do not return the demangled
9560         symbol name if the CU's language stores symbol names in linkage
9561         format.
9562         * language.h (struct language_defn)
9563         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
9564         all instances of this struct.
9565
9566 2018-03-26  Tom Tromey  <tom@tromey.com>
9567
9568         * stack.c (backtrace_command_1): Remove verbose code.
9569
9570 2018-03-26  Tom Tromey  <tom@tromey.com>
9571
9572         * python/py-framefilter.c (py_print_type): Don't catch
9573         exceptions.  Return void.
9574         (py_print_value): Likewise.
9575         (py_print_single_arg): Likewise.
9576         (enumerate_args): Don't catch exceptions.
9577         (py_print_args): Likewise.
9578         (py_print_frame): Likewise.
9579         (gdbpy_apply_frame_filter): Catch exceptions here.
9580
9581 2018-03-26  Tom Tromey  <tom@tromey.com>
9582
9583         * stack.c (_initialize_stack): Remove trailing newlines from help
9584         text.  Add "Usage" line to "backtrace" help.
9585
9586 2018-03-26  Tom Tromey  <tom@tromey.com>
9587
9588         PR python/16486:
9589         * python/py-framefilter.c (py_print_args): Call wrap_hint.
9590
9591 2018-03-26  Tom Tromey  <tom@tromey.com>
9592
9593         * python/py-framefilter.c (py_print_single_arg): Return
9594         EXT_LANG_BT_ERROR from catch.
9595
9596 2018-03-26  Tom Tromey  <tom@tromey.com>
9597
9598         PR backtrace/15584:
9599         * stack.c (backtrace_command_1): Move some code into no-filters
9600         "if".
9601
9602 2018-03-26  Tom Tromey  <tom@tromey.com>
9603
9604         * python/py-framefilter.c (throw_quit_or_print_exception): New
9605         function.
9606         (gdbpy_apply_frame_filter): Use it.
9607
9608 2018-03-26  Tom Tromey  <tom@tromey.com>
9609
9610         PR cli/17716:
9611         * python/py-framefilter.c (py_print_type, py_print_value)
9612         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
9613         RETURN_MASK_ERROR.
9614
9615 2018-03-26  Tom Tromey  <tom@tromey.com>
9616
9617         * python/py-framefilter.c (enumerate_args): Use
9618         gdb::unique_xmalloc_ptr.
9619
9620 2018-03-26  Tom Tromey  <tom@tromey.com>
9621
9622         * python/py-framefilter.c (py_print_frame): Return
9623         EXT_LANG_BT_OK.
9624         (gdbpy_apply_frame_filter): Update comment.
9625         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
9626         Remove.
9627         <EXT_LANG_BT_NO_FILTERS>: Change value.
9628
9629 2018-03-26  Tom Tromey  <tom@tromey.com>
9630
9631         PR backtrace/15582:
9632         * stack.c (backtrace_command): Parse "hide" argument.
9633         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
9634         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
9635         constant.
9636
9637 2018-03-26  Tom Tromey  <tom@tromey.com>
9638
9639         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
9640         add "flags".
9641         (backtrace_command): Remove "fulltrace", add "flags".
9642
9643 2018-03-26  Tom Tromey  <tom@tromey.com>
9644
9645         * stack.c (backtrace_command): Rewrite command line parsing.
9646
9647 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
9648
9649         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
9650
9651 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
9652
9653         * filename-seen-cache.h: Add include guard.
9654
9655 2018-03-26  Keith Seitz  <keiths@redhat.com>
9656
9657         * symfile.c (place_section): Remove "struct" from section_addr_info
9658         in comment.
9659         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
9660         "struct" keyword from section_addr_info.
9661
9662 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
9663
9664         * regformats/regdef.h (reg): Add constructors.
9665
9666 2018-03-25  Pedro Alves  <palves@redhat.com>
9667
9668         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
9669         if then/else bodies in var_func_name extraction.
9670
9671 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
9672
9673         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
9674         lookup_minimal_symbol() to find symbol entry.
9675         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
9676
9677 2018-03-23  Keith Seitz  <keiths@redhat.com>
9678
9679         PR c++/22968
9680         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
9681         nested type definitions for C++, too.
9682
9683 2018-03-23  Tom Tromey  <tom@tromey.com>
9684
9685         * machoread.c (struct oso_el): Add a constructor.  Don't define as
9686         a typedef.
9687         (macho_register_oso): Remove.
9688         (macho_symtab_read): Take a std::vector.
9689         (oso_el_compare_name): Now a std::sort comparator.
9690         (macho_symfile_read_all_oso): Take a std::vector.
9691         (macho_symfile_read): Use std::vector.  Remove cleanups.
9692
9693 2018-03-22  Tom Tromey  <tom@tromey.com>
9694
9695         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
9696         (record_full_goto_bookmark): Use std::string.
9697
9698 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9699
9700         PR tdep/18295
9701         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
9702         a single mask.
9703
9704 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9705
9706         * rs6000-tdep.c (store_insn_p): New function.
9707         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
9708         and cr_reg to their unshifted values. Use store_insn_p to
9709         match LR saves using either R1 or fdata->alloca_reg. Use
9710         store_insn_p to match CR saves. Set alloca_reg_offset
9711         when alloca_reg and framep are set. Remove lr_reg shift
9712         when assigning to fdata->lr_register.
9713
9714 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
9715
9716         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
9717         command line args instead of emitting a warning.
9718
9719 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
9720
9721         * tracepoint.h (struct static_tracepoint_marker): Initialize
9722         fields, define default constructor, move constructor and move
9723         assignment, disable the rest.
9724         <str_id, extra>: Make std::string.
9725         (release_static_tracepoint_marker): Remove.
9726         (free_current_marker): Remove.
9727         * tracepoint.c (free_current_marker): Remove.
9728         (parse_static_tracepoint_marker_definition): Adjust to
9729         std::string, use new hex2str overload.
9730         (release_static_tracepoint_marker): Remove.
9731         (print_one_static_tracepoint_marker): Get marker by reference
9732         and adjust to std::string.
9733         (info_static_tracepoint_markers_command): Adjust to std::vector
9734         changes
9735         * target.h (static_tracepoint_marker_p): Remove typedef.
9736         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
9737         (struct target_ops) <to_static_tracepoint_marker_at>: Return
9738         bool.
9739         <to_static_tracepoint_markers_by_strid>: Return std::vector.
9740         * target-debug.h
9741         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
9742         (target_debug_print_std_vector_static_tracepoint_marker): New.
9743         (target_debug_print_struct_static_tracepoint_marker_p): Rename
9744         to...
9745         (target_debug_print_static_tracepoint_marker_p): ... this.
9746         * target-delegates.c: Re-generate.
9747         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
9748         Make std::string.
9749         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
9750         (decode_static_tracepoint_spec): Adjust to std::vector.
9751         (tracepoint_print_one_detail): Adjust to std::string.
9752         (strace_marker_decode_location): Adjust to std::string.
9753         (update_static_tracepoint): Adjust to std::string, remove call
9754         to release_static_tracepoint_marker.
9755         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
9756         Adjust to std::vector.
9757         * remote.c (remote_static_tracepoint_marker_at): Return bool.
9758         (remote_static_tracepoint_markers_by_strid): Adjust to
9759         std::vector.
9760         * common/rsp-low.h (hex2str): New overload with explicit count
9761         of bytes.
9762         * common/rsp-low.c (hex2str): New overload with explicit count
9763         of bytes.
9764         * unittests/rsp-low-selftests.c (test_hex2str): New function.
9765         (_initialize_rsp_low_selftests): Add test_hex2str test.
9766         * unittests/tracepoint-selftests.c
9767         (test_parse_static_tracepoint_marker_definition): Adjust to
9768         std::string.
9769
9770 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
9771
9772         * tracepoint.c (parse_static_tracepoint_marker_definition):
9773         Consider case where the definition is followed by more
9774         definitions.
9775         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
9776         tracepoint-selftests.c.
9777         * unittests/tracepoint-selftests.c: New.
9778
9779 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9780
9781         * MAINTAINERS (Write After Approval): Add Pedro Franco de
9782         Carvalho.
9783
9784 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
9785
9786         * symtab.c (find_pc_sect_line): fixed indentation.
9787
9788 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
9789
9790         * symtab.c (find_pc_sect_line): now uses binary search.
9791
9792 2018-03-19  Tom Tromey  <tom@tromey.com>
9793
9794         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
9795         "IDENT" production.
9796
9797 2018-03-19  Pedro Alves  <palves@redhat.com>
9798             Tom Tromey  <tom@tromey.com>
9799
9800         * unittests/observable-selftests.c: New file.
9801         * common/observable.h: New file.
9802         * observable.h: New file.
9803         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
9804         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
9805         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
9806         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
9807         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
9808         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
9809         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
9810         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
9811         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
9812         python/py-breakpoint.c, python/py-finishbreakpoint.c,
9813         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
9814         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
9815         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
9816         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
9817         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
9818         tui/tui-interp.c, valops.c: Update all users.
9819         * tui/tui-hooks.c (tui_bp_created_observer)
9820         (tui_bp_deleted_observer, tui_bp_modified_observer)
9821         (tui_inferior_exit_observer, tui_before_prompt_observer)
9822         (tui_normal_stop_observer, tui_register_changed_observer):
9823         Remove.
9824         (tui_observers_token): New global.
9825         (attach_or_detach, tui_attach_detach_observers): New functions.
9826         (tui_install_hooks, tui_remove_hooks): Use
9827         tui_attach_detach_observers.
9828         * record-btrace.c (record_btrace_thread_observer): Remove.
9829         (record_btrace_thread_observer_token): New global.
9830         * observer.sh: Remove.
9831         * observer.c: Rename to observable.c.
9832         * observable.c (namespace gdb_observers): Define new objects.
9833         (observer_debug): Move into gdb_observers namespace.
9834         (struct observer, struct observer_list, xalloc_observer_list_node)
9835         (xfree_observer_list_node, generic_observer_attach)
9836         (generic_observer_detach, generic_observer_notify): Remove.
9837         (_initialize_observer): Update.
9838         Don't include observer.inc.
9839         * Makefile.in (generated_files): Remove observer.h, observer.inc.
9840         (clean mostlyclean): Likewise.
9841         (observer.h, observer.inc): Remove targets.
9842         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
9843         (COMMON_SFILES): Use observable.c, not observer.c.
9844         * .gitignore: Remove observer.h.
9845
9846 2018-03-18  Tom Tromey  <tom@tromey.com>
9847
9848         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
9849         gdb::def_vector.
9850         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
9851
9852 2018-03-17  Tom Tromey  <tom@tromey.com>
9853
9854         * auto-load.c (auto_load_objfile_script_1): Use std::string.
9855
9856 2018-03-17  Tom Tromey  <tom@tromey.com>
9857
9858         * target.c (class scoped_target_fd): New.
9859         (target_fileio_close_cleanup): Remove.
9860         (target_fileio_read_alloc_1): Use scoped_target_fd.
9861
9862 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
9863
9864         * silent-rules.mk: New.
9865         * Makefile.in: Include silent-rules.mk
9866         (srcdir, VPATH, top_srcdir): Move up.
9867         (COMPILE): Add ECHO_CXX.
9868         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
9869         (init.c): Add ECHO_INIT_C.
9870         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
9871         (version.c): Add ECHO_GEN.
9872         (printcmd.o): Add ECHO_CXX.
9873         (target-float.o): Add ECHO_CXX.
9874         (ada-exp.o): Add ECHO_CXX.
9875         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
9876         (insight$(EXEEXT)): Add ECHO_CXXLD.
9877         * gnulib/configure.ac: Add AM_SILENT_RULES.
9878         * gnulib/aclocal.m4: Re-generate.
9879         * gnulib/configure: Re-generate.
9880         * gnulib/import/Makefile.in: Re-generate.
9881
9882 2018-03-16  Tom Tromey  <tom@tromey.com>
9883
9884         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
9885         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
9886         * utils.c (do_free_section_addr_info)
9887         (make_cleanup_free_section_addr_info): Remove.
9888         * symfile.h (struct other_sections): Add constructor.
9889         (struct section_addr_info): Remove.
9890         (section_addr_info): New typedef.
9891         (struct sym_fns) <sym_offsets>: Change type of parameter.
9892         (build_section_addr_info_from_objfile)
9893         (relative_addr_info_to_section_offsets, addr_info_make_relative)
9894         (default_symfile_offsets, symbol_file_add)
9895         (symbol_file_add_from_bfd)
9896         (build_section_addr_info_from_section_table): Update.
9897         (alloc_section_addr_info, free_section_addr_info): Don't declare.
9898         * symfile.c (alloc_section_addr_info): Remove.
9899         (build_section_addr_info_from_section_table): Change return type.
9900         Update.
9901         (build_section_addr_info_from_bfd)
9902         (build_section_addr_info_from_objfile): Likewise.
9903         (free_section_addr_info): Remove.
9904         (relative_addr_info_to_section_offsets): Change type of "addrs".
9905         (addrs_section_compar): Now a std::sort comparator.
9906         (addrs_section_sort): Change return type.
9907         (addr_info_make_relative): Change type of "addrs".  Update.
9908         (default_symfile_offsets, syms_from_objfile_1)
9909         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
9910         (symbol_file_add_separate): Update.
9911         (symbol_file_add): Change type of "addrs".  Update.
9912         (add_symbol_file_command): Update.  Remove cleanups.
9913         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
9914         cleanups.
9915         * symfile-debug.c (debug_sym_offsets): Change type of "info".
9916         * solib.c (solib_read_symbols): Update.
9917         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
9918         * machoread.c (macho_symfile_offsets): Update.
9919         * jit.c (jit_bfd_try_read_symtab): Update.
9920
9921 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
9922
9923         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
9924         unittests/utils-selftests.c.
9925         * unittests/utils-selftests.c: New file.
9926
9927 2018-03-14  Tom Tromey  <tom@tromey.com>
9928
9929         PR cli/14977:
9930         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
9931         for NULL.
9932
9933 2018-03-14  Tom Tromey  <tom@tromey.com>
9934
9935         PR cli/19918:
9936         * printcmd.c (printf_pointer): Allow "-" in format.
9937
9938 2018-03-14  Tom Tromey  <tom@tromey.com>
9939
9940         * printcmd.c (_initialize_printcmd): Add usage to printf.
9941
9942 2018-03-14  Yao Qi  <qiyao@sourceware.org>
9943
9944         * MAINTAINERS: Update my email address.
9945
9946 2018-03-13  Tom Tromey  <tom@tromey.com>
9947
9948         * machoread.c (macho_check_dsym): Change filenamep to a
9949         std::string*.
9950         (macho_symfile_read): Update.
9951         * symfile.c (load_command): Use std::string.
9952
9953 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
9954
9955         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
9956         to error message string.
9957         (riscv_register_name): Use xsnprintf instead of sprintf.
9958         (riscv_insn::fetch_instruction): Use gdb_assert instead of
9959         internal_error.
9960         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
9961         error.
9962         (riscv_push_dummy_call): Likewise.
9963
9964 2018-03-12  Tom Tromey  <tom@tromey.com>
9965
9966         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
9967         Use gdb::byte_vector.
9968         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
9969
9970 2018-03-12  Yao Qi  <yao.qi@linaro.org>
9971
9972         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
9973         parameter type to readable_regcache.
9974         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
9975         the declaration.
9976
9977 2018-03-11  Tom Tromey  <tom@tromey.com>
9978
9979         * dwarf2read.c (struct nextfield): Add initializers.
9980         (struct nextfnfield): Remove.
9981         (struct fnfieldlist): Add initializers.  Remove "length" and
9982         "head", use std::vector.
9983         (struct decl_field_list): Remove.
9984         (struct field_info): Add initializers.
9985         <fields, baseclasses>: Now std::vector.
9986         <nbaseclasses, nfnfields, typedef_field_list_count,
9987         nested_types_list_count>: Remove.
9988         (dwarf2_add_field, dwarf2_add_type_defn)
9989         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
9990         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
9991         (process_structure_scope): Update.
9992
9993 2018-03-11  Tom Tromey  <tom@tromey.com>
9994
9995         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
9996         for use by std::sort.
9997         (build_type_psymtabs_1): Use std::vector.
9998
9999 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
10000
10001         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
10002         and LIBMPFR in the printed configuration.
10003
10004 2018-03-08  Tom Tromey  <tom@tromey.com>
10005
10006         * source.c (get_filename_and_charpos): Use scoped_fd.
10007         * nto-procfs.c (procfs_open_1): Use scoped_fd.
10008         (procfs_pidlist): Likewise.
10009         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
10010         (iterate_over_mappings): Likewise.
10011
10012 2018-03-08  Tom Tromey  <tom@tromey.com>
10013
10014         * infcall.c (struct call_return_meta_info)
10015         <stack_temporaries_enabled>: Remove.
10016         (get_call_return_value, call_function_by_hand_dummy): Update.
10017         * thread.c (disable_thread_stack_temporaries): Remove.
10018         (enable_thread_stack_temporaries): Remove.
10019         (thread_stack_temporaries_enabled_p): Return bool.
10020         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
10021         (get_last_thread_stack_temporary): Update.
10022         * eval.c (evaluate_subexp): Update.
10023         * gdbthread.h (class enable_thread_stack_temporaries): Now a
10024         class, not a function.
10025         (value_ptr, value_vec): Remove typedefs.
10026         (class thread_info) <stack_temporaries_enabled>: Now bool.
10027         <stack_temporaries>: Now a std::vector.
10028         (thread_stack_temporaries_enabled_p)
10029         (value_in_thread_stack_temporaries): Return bool.
10030
10031 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
10032
10033         * remote.c (putpkt_binary): Fix omitted bytes reporting.
10034         (getpkt_or_notif_sane_1): Likewise.
10035
10036 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
10037
10038         * build-id.c (build_id_to_debug_bfd): Use std::string.
10039
10040 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
10041
10042         * build-id.c (find_separate_debug_file_by_buildid): Return
10043         std::string.
10044         * build-id.h (find_separate_debug_file_by_buildid): Return
10045         std::string.
10046         * coffread.c (coff_symfile_read): Adjust to std::string.
10047         * elfread.c (elf_symfile_read): Adjust to std::string.
10048         * symfile.c (separate_debug_file_exists): Change parameter to
10049         std::string.
10050         (find_separate_debug_file): Return std::string.
10051         (find_separate_debug_file_by_debuglink): Return std::string.
10052         * symfile.h (find_separate_debug_file_by_debuglink): Return
10053         std::string.
10054
10055 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
10056
10057         * common/xml-utils.c (xml_escape_text): Move code to...
10058         (xml_escape_text_append): ... this new function.
10059         * common/xml-utils.h (xml_escape_text_append): New declaration.
10060         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
10061         New function.
10062         (_initialize_xml_utils): register test_xml_escape_text_append as
10063         a selftest.
10064
10065 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
10066
10067         * defs.h: Remove MAX_REGISTER_SIZE.
10068         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
10069         asserts.
10070         * python/py-unwind.c (pyuw_sniffer): Likewise.
10071
10072 2018-03-07  Tom Tromey  <tom@tromey.com>
10073
10074         * linux-tdep.c (linux_info_proc): Update.
10075         * target.h (struct target_ops) <to_fileio_readlink>: Return
10076         optional<string>.
10077         (target_fileio_readlink): Return optional<string>.
10078         * remote.c (remote_hostio_readlink): Return optional<string>.
10079         * inf-child.c (inf_child_fileio_readlink): Return
10080         optional<string>.
10081         * target.c (target_fileio_readlink): Return optional<string>.
10082
10083 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
10084
10085         * regcache.c (cooked_read_test): Add riscv to the list of
10086         architectures that have a save_reggroup.
10087
10088 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
10089
10090         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
10091         value is not a dynamic class object.
10092
10093 2018-03-06  Tom Tromey  <tom@tromey.com>
10094
10095         * rust-exp.y: Formatting fixes.
10096
10097 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10098
10099         * riscv-tdep.c (riscv_register_name): Remove target description
10100         support.
10101         (riscv_gdbarch_init): Remove target description check.
10102
10103 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10104
10105         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
10106         comment.
10107         * riscv-tdep.h: Likewise.
10108
10109 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10110
10111         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
10112         (riscv_pseudo_register_write): Delete.
10113         (riscv_gdbarch_init): Remove all use of pseudo registers.
10114
10115 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
10116
10117         * record-btrace.c (btrace_print_lines): Replace cleanup
10118         parameter with RAII equivalents.
10119         (btrace_insn_history): Replace cleanup with RAII equivalents.
10120         * ui-out.h (make_cleanup_ui_out_list_begin_end,
10121         make_cleanup_ui_out_tuple_begin_end): Remove.
10122         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
10123         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
10124         make_cleanup_ui_out_list_begin_end): Remove.
10125
10126 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
10127
10128         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
10129         parameter types to std::vector.  Use bool.
10130         (record_btrace_wait): Replace VEC(tp_t) with
10131         std::vector<thread_info *>.
10132         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
10133
10134 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
10135
10136         * record-btrace.c (record_btrace_disable_callback): Remove.
10137         (struct scoped_btrace_disable): New.
10138         (record_btrace_open): Use scoped_btrace_disable.
10139
10140 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10141
10142         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
10143         reading values from registers.
10144
10145 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10146
10147         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
10148         where appropriate.
10149
10150 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10151
10152         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
10153         change parameter type.  Use GDB's print functions, and use
10154         core_addr_to_string where appropriate.
10155         (riscv_push_dummy_call): Use core_addr_to_string where
10156         appropriate, update call to riscv_print_arg_location, and reindent
10157         a few lines.
10158         (riscv_return_value): Update call to riscv_print_arg_location.
10159
10160 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10161             Tim Newsome <tim@sifive.com>
10162             Albert Ou <a0u@eecs.berkeley.edu>
10163             Darius Rad <darius@bluespec.com>
10164
10165         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
10166         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
10167         (ALLDEPFILES): Add riscv-tdep.c
10168         * configure.tgt: Add riscv support.
10169         * riscv-tdep.c: New file.
10170         * riscv-tdep.h: New file.
10171         * NEWS: Mention new target.
10172         * MAINTAINERS: Add entry for riscv.
10173
10174 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10175
10176         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
10177         fields within aggregates.
10178
10179 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
10180
10181         * record-btrace.c (btrace_print_lines): Change type of flags to
10182         gdb_disassembly_flags.
10183
10184 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
10185
10186         * fbsd-nat.c: Include "inf-ptrace.h".
10187         (USE_SIGTRAP_SIGINFO): Conditionally define.
10188         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
10189         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
10190         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
10191         function.
10192         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
10193         Likewise.
10194         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
10195         Likewise.
10196         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
10197         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
10198         "supports_stopped_by_hw_breakpoint" target methods.
10199
10200 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
10201
10202         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
10203         * fbsd-nat.c (debug_fbsd_nat): New variable.
10204         (show_fbsd_nat_debug): New function.
10205         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
10206         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
10207
10208 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
10209
10210         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
10211         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
10212         prototype.
10213         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
10214         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
10215         method.
10216
10217 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
10218
10219         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
10220         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
10221
10222 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
10223
10224         * charset.c (struct charset_vector): New.
10225         (charsets): Change type to charset_vector.
10226         (find_charset_names): Adjust.
10227         (add_one): Adjust.
10228         (_initialize_charset): Adjust.
10229
10230 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
10231
10232         * progspace.h (struct program_space) <deleted_solibs>: Change
10233         type to std::vector<std::string>.
10234         * progspace.c (clear_program_space_solib_cache): Adjust.
10235         * breakpoint.c (print_solib_event): Adjust.
10236         (check_status_catch_solib): Adjust.
10237         * solib.c (update_solib_list): Adjust.
10238         * ui-out.h (class ui_out) <field_string>: New overload.
10239         * ui-out.c (ui_out::field_string): New overload.
10240
10241 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
10242
10243         * progspace.h (struct program_space): Add constructor and
10244         destructor, initialize fields.
10245         (add_program_space): Remove.
10246         * progspace.c (add_program_space): Rename to...
10247         (program_space::program_space): ... this.
10248         (release_program_space): Rename to...
10249         (program_space::~program_space): ... this.
10250         (delete_program_space): Use delete to delete program_space.
10251         (initialize_progspace): Use new to allocate program_space.
10252         * inferior.c (add_inferior_with_spaces): Likewise.
10253         (clone_inferior_command): Likewise.
10254         * infrun.c (follow_fork_inferior): Likewise.
10255         (handle_vfork_child_exec_or_exit): Likewise.
10256
10257 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
10258
10259         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
10260         (delim_string_to_char_ptr_vec): Return std::vector of
10261         gdb::unique_xmalloc_ptr.
10262         (dirnames_to_char_ptr_vec_append): Take std::vector of
10263         gdb::unique_xmalloc_ptr.
10264         (dirnames_to_char_ptr_vec): Return std::vector of
10265         gdb::unique_xmalloc_ptr.
10266         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
10267         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
10268         (delim_string_to_char_ptr_vec): Return an std::vector of
10269         gdb::unique_xmalloc_ptr, adjust the code.
10270         (dirnames_to_char_ptr_vec_append): Take an std::vector of
10271         gdb::unique_xmalloc_ptr, adjust the code.
10272         (dirnames_to_char_ptr_vec): Return an std::vector of
10273         gdb::unique_xmalloc_ptr, adjust the code.
10274         * auto-load.c (auto_load_safe_path_vec): Change type to
10275         std::vector of gdb::unique_xmalloc_ptr.
10276         (auto_load_expand_dir_vars): Return an std::vector of
10277         gdb::unique_xmalloc_ptr, adjust the code.
10278         (auto_load_safe_path_vec_update): Adjust.
10279         (filename_is_in_auto_load_safe_path_vec): Adjust.
10280         (auto_load_objfile_script_1): Adjust.
10281         * build-id.c (build_id_to_debug_bfd): Adjust.
10282         * linux-thread-db.c (thread_db_load_search): Adjust.
10283         * source.c (add_path): Adjust.
10284         (openp): Adjust.
10285         * symfile.c (find_separate_debug_file): Adjust.
10286         * utils.c (do_free_char_ptr_vec): Remove.
10287         (make_cleanup_free_char_ptr_vec): Remove.
10288
10289 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
10290
10291         PR gdb/22907
10292         * common/pathstuff.c: Conditionally include "<windows.h>".
10293
10294 2018-03-01  Georg Sauthoff  <mail@georg.so>
10295
10296         PR gdb/22888
10297         * gcore.in: Quote variables and switch interpreter to bash.
10298
10299 2018-03-01  Tom Tromey  <tom@tromey.com>
10300
10301         * dwarf2read.c (alloc_discriminant_info): Fix default_index
10302         assertion.  Add assertion for discriminant_index.
10303         (quirk_rust_enum): Use correct base type name in univariant case.
10304
10305 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
10306
10307         * record.c (get_call_history_modifiers): Return a
10308         record_print_flags.
10309         (cmd_record_call_history): Adjust.
10310         * record-btrace.c (record_btrace_call_history): Adjust.
10311         (record_btrace_call_history_range): Adjust.
10312         (record_btrace_call_history_from): Adjust.
10313         * target-debug.h (target_debug_print_record_print_flags): New.
10314         * target-delegates.c: Re-generate.
10315         * target.c (target_call_history): Change flags type.
10316         (target_call_history_from): Likewise.
10317         (target_call_history_range): Likewise.
10318         * target.h (struct target_ops) <target_call_history>: Likewise.
10319         (target_call_history_from): Likewise.
10320         (target_call_history_range): Likewise.
10321
10322 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
10323             Simon Marchi  <simon.marchi@polymtl.ca>
10324
10325         * common/common-utils.c: Include "sys/stat.h".
10326         (is_regular_file): Move here from "source.c"; change return
10327         type to "bool".
10328         * common/common-utils.h (is_regular_file): New prototype.
10329         * common/pathstuff.c (contains_dir_separator): New function.
10330         * common/pathstuff.h (contains_dir_separator): New prototype.
10331         * source.c: Don't include "sys/stat.h".
10332         (is_regular_file): Move to "common/common-utils.c".
10333
10334 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
10335
10336         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
10337         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
10338         * auto-load.c: Include "common/pathstuff.h".
10339         * common/common-def.h (current_directory): Move here.
10340         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
10341         function.
10342         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
10343         prototype.
10344         * common/pathstuff.c: New file.
10345         * common/pathstuff.h: New file.
10346         * compile/compile.c: Include "common/pathstuff.h".
10347         * defs.h (current_directory): Move to "common/common-defs.h".
10348         * dwarf2read.c: Include "common/pathstuff.h".
10349         * exec.c: Likewise.
10350         * guile/scm-safe-call.c: Likewise.
10351         * linux-thread-db.c: Likewise.
10352         * main.c: Likewise.
10353         * nto-tdep.c: Likewise.
10354         * objfiles.c: Likewise.
10355         * source.c: Likewise.
10356         * symtab.c: Likewise.
10357         * utils.c: Include "common/pathstuff.h".
10358         (gdb_realpath): Move to "common/pathstuff.c".
10359         (gdb_realpath_keepfile): Likewise.
10360         (gdb_abspath): Likewise.
10361         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
10362         (gdb_realpath_keepfile): Likewise.
10363         (gdb_abspath): Likewise.
10364
10365 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
10366
10367         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
10368         wildcard process pid for super_resume for kernels with a
10369         specific bug.
10370
10371 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
10372
10373         * compile/compile.c (get_args): Add additional comments
10374         explaining function.
10375
10376 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
10377             Tom Tromey  <tom@tromey.com>
10378
10379         * target.h (memory_write_request_s): Remove typedef.  Don't define
10380         VEC.
10381         (target_write_memory_blocks): Change argument to std::vector.
10382         (struct memory_write_request): Add constructor.
10383         * target-memory.c (compare_block_starting_address): Return bool.
10384         Change argument types.
10385         (claim_memory): Change arguments to use std::vector.
10386         (split_regular_and_flash_blocks, blocks_to_erase)
10387         (compute_garbled_blocks): Likewise.
10388         (cleanup_request_data, cleanup_write_requests_vector): Remove.
10389         (target_write_memory_blocks): Change argument to std::vector.
10390         * symfile.c (struct load_section_data): Add constructor and
10391         destructor.  Use std::vector for "requests".
10392         (struct load_progress_data): Add initializers.
10393         (load_section_callback): Update.  Use "new".
10394         (clear_memory_write_data): Remove.
10395         (generic_load): Update.
10396
10397 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
10398
10399         * arch/aarch64.h: Use common/tdesc.h.
10400
10401 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
10402
10403         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
10404         architecture with a 64-bit ABI.
10405
10406 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
10407
10408         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
10409         ahead of target description loading.
10410
10411 2018-02-26  Tom Tromey  <tom@tromey.com>
10412
10413         * stack.c (backtrace_command_1): Update.
10414         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
10415         of "flags".
10416         * python/py-framefilter.c (py_print_frame)
10417         (gdbpy_apply_frame_filter): Change type of "flags".
10418         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
10419         of "flags".
10420         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
10421         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
10422         * extension.h (enum frame_filter_flag): Rename from
10423         frame_filter_flags.
10424         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
10425         (apply_ext_lang_frame_filter): Change type of "flags".
10426         * extension.c (apply_ext_lang_frame_filter): Change type of
10427         "flags".
10428         * extension-priv.h (struct extension_language_ops)
10429         <apply_frame_filter>: Change type of "flags".
10430
10431 2018-02-26  Tom Tromey  <tom@tromey.com>
10432
10433         PR python/16497:
10434         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
10435         off-by-one in py_end computation.
10436         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
10437         PRINT_MORE_FRAMES.
10438         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
10439         constant.
10440
10441 2018-02-26  Tom Tromey  <tom@tromey.com>
10442
10443         * dwarf2read.c (struct variant_field): New.
10444         (struct nextfield) <variant>: New field.
10445         (dwarf2_add_field): Handle DW_TAG_variant_part.
10446         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
10447         discriminated union.
10448         (read_structure_type): Handle DW_TAG_variant_part.
10449         (handle_struct_member_die): New function, extracted from
10450         process_structure_scope.  Handle DW_TAG_variant.
10451         (process_structure_scope): Handle discriminated unions.  Call
10452         handle_struct_member_die.
10453
10454 2018-02-26  Tom Tromey  <tom@tromey.com>
10455
10456         * rust-lang.h (rust_last_path_segment): Declare.
10457         * rust-lang.c (rust_last_path_segment): Now public.  Change
10458         contract.
10459         (struct disr_info): Remove.
10460         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
10461         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
10462         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
10463         (rust_enum_p, rust_enum_variant): New function.
10464         (rust_underscore_fields): Remove "offset" parameter.
10465         (rust_print_enum): New function.
10466         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
10467         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
10468         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
10469         enums.
10470         (rust_internal_print_type): New function, from rust_print_type.
10471         Remove enum code.
10472         (rust_print_type): Call rust_internal_print_type.
10473         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
10474         Update enum handling.
10475         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
10476         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
10477         (rust_union_quirks): New functions.
10478         (process_full_comp_unit, process_full_type_unit): Call
10479         rust_union_quirks.
10480         (process_structure_scope): Update rust_unions if necessary.
10481
10482 2018-02-26  Tom Tromey  <tom@tromey.com>
10483
10484         * value.h (value_union_variant): Declare.
10485         * valops.c (value_union_variant): New function.
10486         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
10487         (struct discriminant_info): New.
10488         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
10489         enumerator.
10490         (struct main_type) <flag_discriminated_union>: New field.
10491
10492 2018-02-26  Tom Tromey  <tom@tromey.com>
10493
10494         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
10495         unittests/unpack-selftests.c.
10496         * unittests/unpack-selftests.c: New file.
10497         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
10498
10499 2018-02-26  Yao Qi  <yao.qi@linaro.org>
10500
10501         * dwarf2read.c (struct partial_die_info) <read>: New method.
10502         (read_partial_die): Remove the declaration.
10503         (load_partial_dies): Update.
10504         (partial_die_info::partial_die_info):
10505         (read_partial_die): Change it to partial_die_info::read.
10506
10507 2018-02-26  Yao Qi  <yao.qi@linaro.org>
10508
10509         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
10510         (fixup_partial_die): Remove declaration.
10511         (scan_partial_symbols): Update.
10512         (partial_die_parent_scope): Likewise.
10513         (partial_die_full_name): Likewise.
10514         (fixup_partial_die): Change it to partial_die_info::fixup.
10515
10516 2018-02-26  Yao Qi  <yao.qi@linaro.org>
10517
10518         * dwarf2read.c (read_partial_die): Update the declaration.
10519         (load_partial_dies): Caller update.
10520         (read_partial_die): Remove one argument abbrev_len.
10521
10522 2018-02-26  Yao Qi  <yao.qi@linaro.org>
10523
10524         * dwarf2read.c (struct partial_die_info): Add ctor, delete
10525         assignment operator.
10526         (load_partial_dies): Use ctor and copy ctor.
10527         (read_partial_die): Update.
10528         (dwarf2_cu::find_partial_die): Use ctor.
10529
10530 2018-02-26  Yao Qi  <yao.qi@linaro.org>
10531
10532         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
10533         (find_partial_die_in_comp_unit): Change it to
10534         dwarf2_cu::find_partial_die.
10535         (find_partial_die): Update.
10536
10537 2018-02-26  Yao Qi  <yao.qi@linaro.org>
10538
10539         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
10540         is NULL.
10541
10542 2018-02-26  Yao Qi  <yao.qi@linaro.org>
10543
10544         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
10545
10546 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
10547
10548         * arch/amd64.h: Use common/tdesc.h.
10549         * arch/i386.c: Likewise.
10550         * arch/i386.h: Likewise.
10551         * arch/tic6x.c: Likewise.
10552         * arch/tdesc.h: Move file from here...
10553         * common/tdesc.h: ...to here.
10554         * features/aarch64-core.c: Regenerate.
10555         * features/aarch64-fpu.c: Regenerate.
10556         * features/i386/32bit-avx.c: Regenerate.
10557         * features/i386/32bit-avx512.c: Regenerate.
10558         * features/i386/32bit-core.c: Regenerate.
10559         * features/i386/32bit-linux.c: Regenerate.
10560         * features/i386/32bit-mpx.c: Regenerate.
10561         * features/i386/32bit-pkeys.c: Regenerate.
10562         * features/i386/32bit-sse.c: Regenerate.
10563         * features/i386/64bit-avx.c: Regenerate.
10564         * features/i386/64bit-avx512.c: Regenerate.
10565         * features/i386/64bit-core.c: Regenerate.
10566         * features/i386/64bit-linux.c: Regenerate.
10567         * features/i386/64bit-mpx.c: Regenerate.
10568         * features/i386/64bit-pkeys.c: Regenerate.
10569         * features/i386/64bit-segments.c: Regenerate.
10570         * features/i386/64bit-sse.c: Regenerate.
10571         * features/i386/x32-core.c: Regenerate.
10572         * features/tic6x-c6xp.c: Regenerate.
10573         * features/tic6x-core.c: Regenerate.
10574         * features/tic6x-gp.c: Regenerate.
10575         * target-descriptions.c: Use common/tdesc.h.
10576         * target-descriptions.h: Likewise.
10577
10578 2018-02-24  Tom Tromey  <tom@tromey.com>
10579
10580         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
10581         (try_thread_db_load_from_dir, thread_db_load_search): Use
10582         std::string.
10583         (info_auto_load_libthread_db_compare): Return bool.  Change
10584         argument types.
10585         (info_auto_load_libthread_db): Use std::vector, std::string.
10586         Remove cleanups.
10587
10588 2018-02-24  Tom Tromey  <tom@tromey.com>
10589
10590         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
10591         std::string.
10592         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
10593         std::string*.
10594         * gdbarch.c: Rebuild.
10595         * gdbarch.h: Rebuild.
10596         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
10597         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
10598         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
10599         std::string*.
10600
10601 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
10602
10603         * gdbtypes.h (sect_offset): Change type to uint64_t.
10604         (sect_offset_str): New function.
10605         * dwarf2read.c (create_addrmap_from_aranges): Use
10606         sect_offset_str.
10607         (error_check_comp_unit_head): Likewise.
10608         (create_debug_type_hash_table): Likewise.
10609         (read_cutu_die_from_dwo): Likewise.
10610         (init_cutu_and_read_dies): Likewise.
10611         (init_cutu_and_read_dies_no_follow): Likewise.
10612         (process_psymtab_comp_unit_reader): Likewise.
10613         (partial_die_parent_scope): Likewise.
10614         (peek_die_abbrev): Likewise.
10615         (process_queue): Likewise.
10616         (dwarf2_physname): Likewise.
10617         (read_namespace_alias): Likewise.
10618         (read_import_statement): Likewise.
10619         (create_dwo_cu_reader): Likewise.
10620         (create_cus_hash_table): Likewise.
10621         (lookup_dwo_cutu): Likewise.
10622         (inherit_abstract_dies): Likewise.
10623         (read_func_scope): Likewise.
10624         (read_call_site_scope): Likewise.
10625         (dwarf2_add_member_fn): Likewise.
10626         (read_common_block): Likewise.
10627         (read_module_type): Likewise.
10628         (read_typedef): Likewise.
10629         (read_subrange_type): Likewise.
10630         (load_partial_dies): Likewise.
10631         (read_partial_die): Likewise.
10632         (find_partial_die): Likewise.
10633         (read_str_index): Likewise.
10634         (dwarf2_string_attr): Likewise.
10635         (build_error_marker_type): Likewise.
10636         (lookup_die_type): Likewise.
10637         (dump_die_shallow): Likewise.
10638         (follow_die_ref): Likewise.
10639         (dwarf2_fetch_die_loc_sect_off): Likewise.
10640         (dwarf2_fetch_constant_bytes): Likewise.
10641         (follow_die_sig): Likewise.
10642         (get_signatured_type): Likewise.
10643         (get_DW_AT_signature_type): Likewise.
10644         (dwarf2_find_containing_comp_unit): Likewise.
10645         (set_die_type): Likewise.
10646
10647 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
10648
10649         * arch/aarch64.c: Include "common-defs.h".
10650         * arch/amd64.c: Likewise.
10651         * arch/i386.c: Likewise.
10652
10653 2018-02-21  Tom Tromey  <tom@tromey.com>
10654
10655         * value.h: (extract_field_op): Update.
10656         * eval.c (extract_field_op): Return a const char *.
10657         * expression.h (parse_expression_for_completion): Update.
10658         * completer.c (complete_expression): Update.
10659         (add_struct_fields): Make fieldname const.
10660         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
10661         (mark_completion_tag, parse_exp_in_context_1): Update.
10662         (parse_expression_for_completion): Change "name" to
10663         unique_xmalloc_ptr*.
10664
10665 2018-02-21  Tom Tromey  <tom@tromey.com>
10666
10667         * infcall.c (call_function_by_hand_dummy): Use std::vector.
10668
10669 2018-02-21  Yao Qi  <yao.qi@linaro.org>
10670
10671         * avr-tdep.c (avr_read_pc): Change parameter type to
10672         readable_regcache.
10673         * gdbarch.sh (read_pc): Likewise.
10674         * gdbarch.c: Re-generated.
10675         * gdbarch.h: Re-generated.
10676         * hppa-tdep.c (hppa_read_pc): Change parameter type to
10677         readable_regcache.
10678         * ia64-tdep.c (ia64_read_pc): Likewise.
10679         * mips-tdep.c (mips_read_pc): Likewise.
10680         * spu-tdep.c (spu_read_pc): Likewise.
10681
10682 2018-02-21  Yao Qi  <yao.qi@linaro.org>
10683
10684         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
10685         * regcache-dump.c: New file.
10686         * regcache.c: Move register_dump to regcache-dump.c.
10687         (maintenance_print_registers): Likewise.
10688         (maintenance_print_raw_registers): Likewise.
10689         (maintenance_print_cooked_registers): Likewise.
10690         (maintenance_print_register_groups): Likewise.
10691         (maintenance_print_remote_registers): Likewise.
10692         (_initialize_regcache): Likewise.
10693         * regcache.h (register_dump): Moved from regcache.c.
10694
10695 2018-02-21  Yao Qi  <yao.qi@linaro.org>
10696
10697         * regcache.c (regcache::regcache): Update.
10698         (regcache::invalidate): Move it to detached_regcache::invalidate.
10699         (get_thread_arch_aspace_regcache): Update.
10700         (regcache::raw_update): Update.
10701         (regcache::cooked_read): Remove some code.
10702         (regcache::cooked_read_value): Likewise.
10703         (regcache::raw_write): Remove assert on m_readonly_p.
10704         (regcache::raw_supply_integer): Move it to
10705         detached_regcache::raw_supply_integer.
10706         (regcache::raw_supply_zeroed): Likewise.
10707         * regcache.h (detached_regcache) <raw_supply_integer>: New
10708         declaration.
10709         <raw_supply_zeroed, invalidate>: Likewise.
10710         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
10711         <invalidate>: Likewise.
10712         <m_readonly_p>: Removed.
10713
10714 2018-02-21  Yao Qi  <yao.qi@linaro.org>
10715
10716         * infcmd.c (get_return_value): Let stop_regs point to
10717         get_current_regcache.
10718         * regcache.c (regcache::regcache): Remove.
10719         (register_dump_reg_buffer): New class.
10720         (regcache_print): Adjust.
10721         * regcache.h (regcache): Remove constructors.
10722
10723 2018-02-21  Yao Qi  <yao.qi@linaro.org>
10724
10725         * regcache.c (class register_dump): New class.
10726         (register_dump_regcache, register_dump_none): New class.
10727         (register_dump_remote, register_dump_groups): New class.
10728         (regcache_print): Update.
10729         * regcache.h (regcache_dump_what): Move it to regcache.c.
10730         (regcache) <dump>: Remove.
10731
10732 2018-02-21  Yao Qi  <yao.qi@linaro.org>
10733
10734         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
10735          reg_buffer_rw *.
10736         (jit_unwind_reg_set_impl): Call raw_supply.
10737         (jit_frame_sniffer): Use reg_buffer_rw.
10738         * record-full.c (record_full_core_regbuf): Change its type.
10739         (record_full_core_open_1): Use reg_buffer_rw.
10740         (record_full_close): Likewise.
10741         (record_full_core_fetch_registers): Use regcache->raw_supply.
10742         (record_full_core_store_registers): Likewise.
10743         * regcache.c (regcache::get_register_status): Move it to
10744         reg_buffer.
10745         (regcache_raw_set_cached_value): Remove.
10746         (regcache::raw_set_cached_value): Remove.
10747         (regcache::raw_write): Call raw_supply.
10748         (regcache::raw_supply): Move it to reg_buffer_rw.
10749         * regcache.h (regcache_raw_set_cached_value): Remove.
10750         (reg_buffer_rw): New class.
10751
10752 2018-02-21  Yao Qi  <yao.qi@linaro.org>
10753
10754         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
10755         readonly_detached_regcache.
10756         (dummy_frame_prev_register): Use regcache->cooked_read.
10757         * frame.c (frame_save_as_regcache): Change return type.
10758         (frame_pop): Update.
10759         * frame.h (frame_save_as_regcache): Update declaration.
10760         * inferior.h (get_infcall_suspend_state_regcache): Update
10761         declaration.
10762         * infrun.c (infcall_suspend_state) <registers>: use
10763         readonly_detached_regcache.
10764         (save_infcall_suspend_state): Don't use regcache_dup.
10765         (get_infcall_suspend_state_regcache): Change return type.
10766         * linux-fork.c (struct fork_info) <savedregs>: Change to
10767         readonly_detached_regcache.
10768         <pc>: New field.
10769         (fork_save_infrun_state): Don't use regcache_dup.
10770         (info_checkpoints_command): Adjust.
10771         * mi/mi-main.c (register_changed_p): Update declaration.
10772         (mi_cmd_data_list_changed_registers): Use
10773         readonly_detached_regcache.
10774         (register_changed_p): Change parameter type to
10775         readonly_detached_regcache.
10776         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
10777         readonly_detached_regcache.
10778         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
10779         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
10780         New.
10781         (regcache::save): Move it to reg_buffer.
10782         (regcache::restore): Change parameter type.
10783         (regcache_dup): Remove.
10784         * regcache.h (reg_buffer) <save>: New method.
10785         (readonly_detached_regcache): New class.
10786         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
10787         readonly_detached_regcache.
10788         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
10789
10790 2018-02-21  Yao Qi  <yao.qi@linaro.org>
10791
10792         * frame.c (frame_save_as_regcache): Use regcache method save.
10793         (frame_pop): Use regcache method restore.
10794         * infrun.c (restore_infcall_suspend_state): Likewise.
10795         * linux-fork.c (fork_load_infrun_state): Likewise.
10796         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
10797         save.
10798         * regcache.c (regcache_save): Remove.
10799         (regcache::restore): More asserts.
10800         (regcache_cpy): Remove.
10801         * regcache.h (regcache_save): Remove the declaration.
10802         (regcache::restore): Move from private to public.
10803         Remove the friend declaration of regcache_cpy.
10804         (regcache_cpy): Remove declaration.
10805
10806 2018-02-21  Yao Qi  <yao.qi@linaro.org>
10807
10808         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
10809         parameter type to 'readable_regcache *'.
10810         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
10811         * arm-tdep.c (arm_neon_quad_read): Likewise.
10812         (arm_pseudo_read): Likewise.
10813         * avr-tdep.c (avr_pseudo_register_read): Likewise.
10814         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
10815         * frv-tdep.c (frv_pseudo_register_read): Likewise.
10816         * gdbarch.c: Re-generated.
10817         * gdbarch.h: Re-generated.
10818         * gdbarch.sh (pseudo_register_read): Change parameter type to
10819         'readable_regcache *'.
10820         (pseudo_register_read_value): Likewise.
10821         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
10822         (h8300_pseudo_register_read): Likewise.
10823         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
10824         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
10825         (i386_pseudo_register_read_into_value): Likewise.
10826         (i386_pseudo_register_read_value): Likewise.
10827         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
10828         declaration.
10829         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
10830         * m32c-tdep.c (m32c_raw_read): Likewise.
10831         (m32c_read_flg): Likewise.
10832         (m32c_banked_register): Likewise.
10833         (m32c_banked_read): Likewise.
10834         (m32c_sb_read): Likewise.
10835         (m32c_part_read): Likewise.
10836         (m32c_cat_read): Likewise.
10837         (m32c_r3r2r1r0_read): Likewise.
10838         (m32c_pseudo_register_read): Likewise.
10839         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
10840         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
10841         (mep_pseudo_cr64_read): Likewise.
10842         (mep_pseudo_register_read): Likewise.
10843         * mips-tdep.c (mips_pseudo_register_read): Likewise.
10844         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
10845         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
10846         * regcache.c (regcache::raw_read): Move it to readable_regcache.
10847         (regcache::cooked_read): Likewise.
10848         (regcache::cooked_read_value): Likewise.
10849         (regcache_cooked_read_signed):
10850         (regcache::cooked_read): Likewise.
10851         * regcache.h (readable_regcache): New class.
10852         (regcache): Inherit readable_regcache.  Move some methods to
10853         readable_regcache.
10854         * rl78-tdep.c (rl78_pseudo_register_read): Change
10855         parameter type to 'readable_regcache *'.
10856         * rs6000-tdep.c (do_regcache_raw_read): Remove.
10857         (e500_pseudo_register_read): Change parameter type to
10858         'readable_regcache *'.
10859         (dfp_pseudo_register_read): Likewise.
10860         (vsx_pseudo_register_read): Likewise.
10861         (efpr_pseudo_register_read): Likewise.
10862         * s390-tdep.c (s390_pseudo_register_read): Likewise.
10863         * sh-tdep.c (sh_pseudo_register_read): Likewise.
10864         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
10865         (sh64_pseudo_register_read): Likewise.
10866         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
10867         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
10868         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
10869         (spu_pseudo_register_read): Likewise.
10870         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
10871         (xtensa_pseudo_register_read): Likewise.
10872
10873 2018-02-21  Yao Qi  <yao.qi@linaro.org>
10874
10875         * regcache.c (regcache::regcache): Call reg_buffer ctor.
10876         (regcache::arch): Move it to reg_buffer::arch.
10877         (regcache::register_buffer): Likewise.
10878         (regcache::assert_regnum): Likewise.
10879         (regcache::num_raw_registers): Likewise.
10880         * regcache.h (reg_buffer): New class.
10881         (regcache): Inherit reg_buffer.
10882
10883 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
10884
10885         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
10886         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
10887
10888 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
10889
10890         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
10891
10892 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
10893
10894         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
10895         (SFILES): Remove common/*.c files.
10896         (COMMON_OBS): Remove some *.o files built from common/*.c files.
10897         * common/common.host: Add common reference.
10898         * configure.ac: Likewise.
10899         * configure: Regenerate.
10900
10901 2018-02-16  Yao Qi  <yao.qi@linaro.org>
10902
10903         * block.c (block_namespace_info): Inherit allocate_on_obstack.
10904         (block_initialize_namespace): Use new.
10905         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
10906         (dwarf2_free_objfile): Use delete.
10907         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
10908         (copy_type_recursive): Use new.
10909         * gdb_obstack.h (allocate_on_obstack): New.
10910
10911 2018-02-15  Yao Qi  <yao.qi@linaro.org>
10912
10913         PR gdb/22849
10914         * inferior.c (exit_inferior_1): Reset inf->control.
10915
10916 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
10917
10918         * ada-lang.c (ada_to_fixed_value_create): Delete advance
10919         declaration.
10920
10921 2018-02-14  Pedro Alves  <palves@redhat.com>
10922
10923         * frame-unwind.c (frame_unwind_try_unwinder): Always call
10924         frame_cleanup_after_sniffer on exception.
10925
10926 2018-02-14  Tom Tromey  <tom@tromey.com>
10927
10928         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
10929         const.
10930         (solib_bfd_open): Make pathname const.
10931         * solib.c (solib_bfd_open): Make pathname const.
10932         * solib-spu.c (spu_bfd_fopen): Make name const.
10933         (spu_bfd_open): Make pathname const.
10934         * solib-darwin.c (darwin_bfd_open): Make pathname const.
10935         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
10936
10937 2018-02-14  Tom Tromey  <tom@tromey.com>
10938
10939         * symfile.c (symfile_bfd_open): Update.
10940         * source.h (openp, source_full_path_of, find_and_open_source):
10941         Change argument type to unique_xmalloc_ptr.
10942         * source.c (openp): Take a unique_xmalloc_ptr.
10943         (source_full_path_of, find_and_open_source): Likewise.
10944         (open_source_file, symtab_to_fullname): Update.
10945         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
10946         unique_xmalloc_ptr.
10947         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
10948         (exec_file_find): Update.
10949         * psymtab.c (psymtab_to_fullname): Update.
10950         * nto-tdep.h (nto_find_and_open_solib): Update.
10951         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
10952         unique_xmalloc_ptr.
10953         * exec.c (exec_file_attach): Update.
10954         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
10955         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
10956
10957 2018-02-14  Tom Tromey  <tom@tromey.com>
10958
10959         * solib.c: Include source.h.
10960         * nto-tdep.c: Include source.h.
10961         * mi/mi-cmd-env.c: Include source.h.
10962         * infcmd.c: Include source.h.
10963         * exec.c: Include source.h.
10964         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
10965         (add_path, directory_switch, source_path, init_source_path): Move
10966         declarations...
10967         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
10968         (add_path, directory_switch, source_path, init_source_path):
10969         ...here.
10970
10971 2018-02-14  Tom Tromey  <tom@tromey.com>
10972
10973         * solist.h (exec_file_find, solib_find): Return
10974         unique_xmalloc_ptr.
10975         (solib_bfd_fopen): Take a const char *.
10976         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
10977         (exec_file_find, solib_find): Likewise.
10978         (solib_bfd_fopen): Do not take ownership of "pathname".
10979         (solib_bfd_open): Use unique_xmalloc_ptr.
10980         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
10981         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
10982         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
10983         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
10984
10985 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
10986
10987         * ada-lang.c (name_match_type_from_name): Remove reference to
10988         ada_name_for_lookup in function's documentation.
10989         * ada-lang.h (ada_name_for_lookup): Delete declaration.
10990
10991 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
10992
10993         * defs.h (enum openp_flags): New enum.
10994         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
10995         Move to enum openp_flags.
10996         (openp_flags): New enum flags.
10997         (openp): Change parameter type to openp_flags.
10998         * source.c (openp): Change parameter type to openp_flags.
10999         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
11000         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
11001
11002 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
11003
11004         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
11005         per-command.
11006
11007 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
11008
11009         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
11010         into...
11011         (class dwarf2_queue_guard): ...the destructor of this new class.
11012         (dw2_do_instantiate_symtab): Create instance of the new class
11013         dwarf2_queue_guard, remove cleanup.
11014
11015 2018-02-09  Tom Tromey  <tom@tromey.com>
11016
11017         * source.c (find_source_lines): Don't reference past the end of
11018         the vector.
11019
11020 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11021
11022         * remote.c (remote_btrace_maybe_reopen): Change error message.
11023         * btrace.c (btrace_enable): Likewise.
11024         (parse_xml_btrace): Likewise.
11025         (parse_xml_btrace_conf): Likewise.
11026
11027 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11028
11029         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
11030         (linux_enable_pt, linux_enable_bts): Call
11031         diagnose_perf_event_open_fail.
11032
11033 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11034
11035         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
11036         Remove parameter and change return type.  Update callers.  Move it.
11037         (linux_enable_bts, linux_enable_pt): Improve error message.
11038         (linux_enable_pt): Remove zero buffer size check.
11039         (linux_enable_btrace): Improve error messages.  Remove NULL return
11040         check.
11041
11042 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11043
11044         * btrace.c (btrace_enable): Remove target_supports_btrace call.
11045         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
11046         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
11047         (linux_supports_pt, linux_supports_btrace): Remove.
11048         (linux_enable_bts): Call cpu_supports_bts.
11049         * nat/linux-btrace.h (linux_supports_btrace): Remove.
11050         * remote.c (remote_supports_btrace): Remove.
11051         (init_remote_ops): Remove remote_supports_btrace.
11052         * target-delegates.c: Regenerated.
11053         * target.c (target_supports_btrace): Remove.
11054         * target.h (target_ops) <to_supports_btrace>: Remove
11055         (target_supports_btrace): Remove.
11056         * x86-linux-nat.c (x86_linux_create_target): Remove
11057         linux_supports_btrace.
11058
11059 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11060
11061         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
11062         btrace failed.
11063         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
11064         exception and use message in own exception.
11065
11066 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11067
11068         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
11069         (perf_event_pt_event_type): Use gdb_file_up.
11070         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
11071         scoped_fd, and scoped_mmap.
11072
11073 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11074
11075         * common/scoped_mmap.h: New.
11076         * unittests/scoped_mmap-selftest.c: New.
11077         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11078         unittests/scoped_mmap-selftest.c.
11079
11080 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11081
11082         * common/scoped_fd.h: New.
11083         * unittests/scoped_fd-selftest.c: New.
11084         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11085         unittests/scoped_fd-selftest.c.
11086
11087 2018-02-09  Tom Tromey  <tom@tromey.com>
11088
11089         * auto-load.c (auto_load_section_scripts): Use
11090         gdb::unique_xmalloc_ptr.
11091
11092 2018-02-09  Tom Tromey  <tom@tromey.com>
11093
11094         * auto-load.c (execute_script_contents): Use std::string.
11095
11096 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
11097
11098         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
11099         Python function, rather than a new command.
11100
11101 2018-02-08  Tom Tromey  <tom@tromey.com>
11102
11103         * solib.c (solib_find_1): Use std::string.
11104         (solib_bfd_fopen): Use unique_xmalloc_ptr.
11105
11106 2018-02-08  Tom Tromey  <tom@tromey.com>
11107
11108         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
11109
11110 2018-02-08  Tom Tromey  <tom@tromey.com>
11111
11112         * source.c (find_source_lines): Use gdb::def_vector.
11113
11114 2018-02-08  Tom Tromey  <tom@tromey.com>
11115
11116         * macrocmd.c (struct temporary_macro_definition): New.
11117         (macro_define_command): Use temporary_macro_definition.  Remove
11118         cleanups.
11119         (free_macro_definition_ptr): Remove.
11120
11121 2018-02-08  Tom Tromey  <tom@tromey.com>
11122
11123         * macroexp.c (maybe_expand): Use std::string.
11124
11125 2018-02-08  Tom Tromey  <tom@tromey.com>
11126
11127         * macroexp.c (struct macro_buffer): Add initializers for some
11128         members.
11129         (init_buffer, init_shared_buffer, free_buffer)
11130         (free_buffer_return_text): Remove.
11131         (macro_buffer): New constructors.
11132         (~macro_buffer): New destructor.
11133         (macro_buffer::set_shared): New method.
11134         (macro_buffer::resize_buffer, macro_buffer::appendc)
11135         (macro_buffer::appendmem): Now methods, not free functions.
11136         (set_token, append_tokens_without_splicing, stringify)
11137         (macro_stringify): Update.
11138         (gather_arguments): Change return type.  Remove argc_p argument,
11139         add args_ptr argument.  Use std::vector.
11140         (substitute_args): Remove argc argument.  Accept std::vector.
11141         (expand): Update.  Use std::vector.
11142         (scan, macro_expand, macro_expand_next): Update.
11143
11144 2018-02-08  Tom Tromey  <tom@tromey.com>
11145
11146         * symtab.c (default_collect_symbol_completion_matches_break_on):
11147         Use unique_xmalloc_ptr.
11148         * macroscope.h: (sal_macro_scope, user_macro_scope)
11149         (default_macro_scope): Return unique_xmalloc_ptr.
11150         * macroscope.c (sal_macro_scope, user_macro_scope)
11151         (default_macro_scope): Return unique_xmalloc_ptr.
11152         * macroexp.h (macro_expand, macro_expand_once): Return
11153         unique_xmalloc_ptr.
11154         * macroexp.c (macro_expand, macro_expand_once): Return
11155         unique_xmalloc_ptr.
11156         * macrocmd.c (macro_expand_command, macro_expand_once_command)
11157         (info_macro_command, info_macros_command): Use
11158         unique_xmalloc_ptr.
11159         * compile/compile-c-support.c (write_macro_definitions): Use
11160         unique_xmalloc_ptr.
11161         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
11162
11163 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
11164
11165         * value.c (value_static_field): Assign field type instead of
11166         containing type when returning an optimized out value.
11167
11168 2018-02-06  Yao Qi  <yao.qi@linaro.org>
11169
11170         * ft32-tdep.c (ft32_read_pc): Remove.
11171         (ft32_write_pc): Remove.
11172         (ft32_gdbarch_init): Update.
11173         * m32r-tdep.c (m32r_read_pc): Remove.
11174         (m32r_gdbarch_init): Update.
11175         * mep-tdep.c (mep_read_pc): Remove.
11176         (mep_gdbarch_init): Update.
11177         * microblaze-tdep.c (microblaze_write_pc): Remove.
11178         (microblaze_gdbarch_init): Update.
11179         * mn10300-tdep.c (mn10300_read_pc): Remove.
11180         (mn10300_write_pc): Remove.
11181         (mn10300_gdbarch_init): Update.
11182         * moxie-tdep.c (moxie_read_pc): Remove.
11183         (moxie_write_pc): Remove.
11184         (moxie_gdbarch_init): Update.
11185
11186 2018-02-06  Yao Qi  <yao.qi@linaro.org>
11187
11188         * expprint.c (print_subexp_standard): Handle
11189         OP_F77_UNDETERMINED_ARGLIST.
11190         (dump_subexp_body_standard): Likewise.
11191
11192 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
11193
11194         * target-descriptions.c (tdesc_element_visitor) Add empty
11195         implementations.
11196         (tdesc_type): Move make_gdb_type from here.
11197         (tdesc_type_builtin): Likewise.
11198         (tdesc_type_vector): Likewise.
11199         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
11200         (make_gdb_type_struct): Move from tdesc_type_with_fields.
11201         (make_gdb_type_union): Likewise.
11202         (make_gdb_type_flags): Likewise.
11203         (make_gdb_type_enum): Likewise.
11204         (make_gdb_type): New function.
11205         (tdesc_register_type): Use static make_gdb_type.
11206
11207 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
11208
11209         * infcmd.c (default_print_one_register_info): Align natural-format
11210         column values consistently one under another.
11211         (pad_to_column): New function.
11212
11213 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
11214
11215         * dwarf2read.c (dwarf2_physname): Move commment.
11216
11217 2018-02-01  Leszek Swirski  <leszeks@google.com>
11218
11219         * varobj.c (varobj_formatted_print_options): Allow recursive
11220         pretty printing if pretty printing is enabled.
11221
11222 2018-02-01  Leszek Swirski  <leszeks@google.com>
11223
11224         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
11225         names after a structop as a filename.
11226
11227 2018-02-01  Yao Qi  <yao.qi@linaro.org>
11228
11229         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
11230         (arm_record_coproc_data_proc): Likewise.
11231
11232 2018-02-01  Yao Qi  <yao.qi@linaro.org>
11233
11234         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
11235
11236 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
11237
11238         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
11239         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
11240
11241 2018-01-31  Pedro Alves  <palves@redhat.com>
11242
11243         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
11244         * inflow.c (child_terminal_save_inferior): Wrap reference to
11245         tcgetpgrp in HAVE_TERMIOS_H.
11246         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
11247         _WIN32.
11248         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
11249         always iterate over all inferiors.
11250         (gdbsim_cntrl_c): Adjust.
11251         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
11252
11253 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
11254
11255         * gdbtypes.c (lookup_array_range_type): Make sure the array's
11256         index type is objfile-owned if the element type is as well.
11257
11258 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
11259
11260         GDB 8.1 released.
11261
11262 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
11263
11264         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
11265         "features/s390x-linux64.c".
11266         (_initialize_s390_linux_tdep): Remove initialization of tdescs
11267         s390_linux32 and s390x_linux64.
11268         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
11269         default tdesc.
11270         * s390-tdep.c: Include "features/s390-linux32.c" and
11271         "features/s390x-linux64.c".
11272         (s390_tdesc_valid): Add check for tdesc_has_registers.
11273         (s390_gdbarch_init): Make sure there is always a valid tdesc.
11274         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
11275         tdesc_s390x_linux64.
11276         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
11277         tdesc_s390x_linux64 to...
11278         * s390-tdep.h: ...here.
11279
11280 2018-01-30  Pedro Alves  <palves@redhat.com>
11281
11282         PR gdb/13211
11283         * config.in, configure: Regenerate.
11284         * configure.ac: Check for getpgid.
11285         * go32-nat.c (go32_pass_ctrlc): New.
11286         (go32_target): Install it.
11287         * inf-child.c (inf_child_target): Install
11288         child_terminal_save_inferior, child_pass_ctrlc and
11289         child_interrupt.
11290         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
11291         (inf_ptrace_target): No longer install it.
11292         * infcmd.c (interrupt_target_1): Adjust.
11293         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
11294         (child_interrupt): Declare.
11295         (inferior::terminal_state): New.
11296         * inflow.c (struct terminal_info): Update comments.
11297         (inferior_process_group): Delete.
11298         (terminal_is_ours): Delete.
11299         (gdb_tty_state): New.
11300         (child_terminal_init): Adjust.
11301         (is_gdb_terminal, sharing_input_terminal_1)
11302         (sharing_input_terminal): New functions.
11303         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
11304         Set the process's actual process group in the foreground if
11305         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
11306         mark terminal as the inferior's if not sharing GDB's terminal.
11307         Don't check attach_flag.
11308         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
11309         pass down a target_terminal_state.
11310         (child_terminal_save_inferior): New, factored out from ...
11311         (child_terminal_ours_1): ... this.  Handle
11312         target_terminal_state::is_ours_for_output.
11313         (child_interrupt, child_pass_ctrlc): New.
11314         (inflow_inferior_exit): Clear the inferior's terminal_state.
11315         (copy_terminal_info): Copy the inferior's terminal state.
11316         (_initialize_inflow): Remove reference to terminal_is_ours.
11317         * inflow.h (inferior_process_group): Delete.
11318         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
11319         * procfs.c (procfs_target): Don't install procfs_interrupt.
11320         (procfs_interrupt): Delete.
11321         * remote.c (remote_serial_quit_handler): Adjust.
11322         (remote_interrupt): Remove ptid parameter.  Adjust.
11323         * target-delegates.c: Regenerate.
11324         * target.c: Include "terminal.h".
11325         (target_terminal::terminal_state): Rename to ...
11326         (target_terminal::m_terminal_state): ... this.
11327         (target_terminal::init): Adjust.
11328         (target_terminal::inferior): Adjust to per-inferior
11329         terminal_state.
11330         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
11331         (target_terminal::ours, target_terminal::ours_for_output): Use
11332         target_terminal_is_ours_kind.
11333         (target_interrupt): Remove ptid parameter.  Adjust.
11334         (default_target_pass_ctrlc): Adjust.
11335         * target.h (target_ops::to_terminal_save_inferior): New field.
11336         (target_ops::to_interrupt): Remove ptid_t parameter.
11337         (target_interrupt): Remove ptid_t parameter.  Update comment.
11338         (target_pass_ctrlc): Update comment.
11339         * target/target.h (target_terminal_state): New scoped enum,
11340         factored out of ...
11341         (target_terminal::terminal_state): ... here.
11342         (target_terminal::inferior): Update comments.
11343         (target_terminal::restore_inferior): New.
11344         (target_terminal::is_inferior, target_terminal::is_ours)
11345         (target_terminal::is_ours_for_output): Adjust.
11346         (target_terminal::scoped_restore_terminal_state): Adjust to
11347         rename, and call restore_inferior() instead of inferior().
11348         (target_terminal::scoped_restore_terminal_state::m_state): Change
11349         type.
11350         (target_terminal::terminal_state): Rename to ...
11351         (target_terminal::m_terminal_state): ... this and change type.
11352
11353 2018-01-30  Pedro Alves  <palves@redhat.com>
11354
11355         * linux-nat.c (wait_for_signal): New function.
11356         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
11357         directly.
11358         (async_terminal_is_ours)
11359         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
11360         (linux_nat_add_target): Don't override
11361         to_terminal_inferior/to_terminal_ours.
11362
11363 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
11364
11365         * remote.c (remote_follow_fork): Don't call "detach_inferior".
11366
11367 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
11368
11369         * dwarf2read.c (free_dwo_files): Add forward-declaration.
11370         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
11371         dwarf2_per_objfile_free here.
11372         (dwarf2_per_objfile_free): Remove.
11373         (_initialize_dwarf2_read): Don't register
11374         dwarf2_per_objfile_free as a registry cleanup.
11375
11376 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
11377
11378         Avoid compilation errors in MinGW native builds
11379
11380         The error is triggered by including python-internal.h, and the
11381         error message is:
11382
11383              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
11384                       from build-gnulib/import/math.h:27,
11385                       from d:/usr/Python26/include/pyport.h:235,
11386                       from d:/usr/Python26/include/Python.h:58,
11387                       from python/python-internal.h:94,
11388                       from python/py-arch.c:24:
11389              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
11390         using ::hypot;
11391                 ^~~~~
11392
11393         This happens because Python headers define 'hypot' to expand t
11394         '_hypot' in the Windows builds.
11395         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
11396         'hypoth'.  This avoids a compilation error.
11397
11398 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
11399
11400         * MAINTAINERS (Write After Approval): Fix ordering.
11401
11402 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
11403
11404         * MAINTAINERS (Write After Approval): Add Alan Hayward.
11405
11406 2018-01-26  Alan Modra  <amodra@gmail.com>
11407
11408         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
11409         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
11410         Remove nop.  Make const.  Comment.
11411         (powerpc32_plt_stub_so_2): New.
11412         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
11413         Correct count.  Update uses.
11414         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
11415         Move common code reading PLT entry word.  Correct
11416         powerpc32_plt_stub PLT address calculation.
11417         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
11418         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
11419         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
11420         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
11421         (ppc64_standard_linkage8): Likewise.
11422         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
11423         Correct insns description.
11424         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
11425
11426 2018-01-24  Pedro Alves  <palves@redhat.com>
11427
11428         GCC PR libstdc++/83906
11429         * gdbtypes.c (operator==(const dynamic_prop &,
11430         const dynamic_prop &)): New.
11431         (operator==(const range_bounds &, const range_bounds &)): New.
11432         (check_types_equal): Use them instead of memcmp.
11433         * gdbtypes.h (operator==(const dynamic_prop &,
11434         const dynamic_prop &)): Declare.
11435         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
11436         (operator==(const range_bounds &, const range_bounds &)): Declare.
11437         (operator!=(const range_bounds &, const range_bounds &)): Declare.
11438
11439 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
11440
11441         * s390-linux-tdep.c (s390_record_address_mask)
11442         (s390_record_calc_disp_common, s390_record_calc_disp)
11443         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
11444         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
11445         (s390_process_record): Move to s390-tdep.c.
11446         (s390_linux_init_abi_any): Adjust.
11447         * s390-tdep.c (s390_record_address_mask)
11448         (s390_record_calc_disp_common, s390_record_calc_disp)
11449         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
11450         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
11451         (s390_process_record): Moved from s390-linux-tdep.c
11452         (s390_gdbarch_init): Adjust.
11453
11454 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
11455
11456         * s390-linux-nat.c (s390-tdep.h): New include.
11457         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
11458         (HFILES_NO_SRCDIR): Add s390-tdep.h.
11459         (ALLDEPFILES): Add s390-tdep.c.
11460         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
11461         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
11462         * s390-tdep.h: ...this.  New file.
11463         * s390-linux-tdep.c (s390-tdep.h): New include.
11464         (_initialize_s390_tdep): Rename to...
11465         (_initialize_s390_linux_tdep): ...this and adjust.
11466         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
11467         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
11468         s390-tdep.h.
11469         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
11470         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
11471         (s390_is_partial_instruction, s390_software_single_step)
11472         (is_non_branch_ril, s390_displaced_step_copy_insn)
11473         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
11474         (s390_prologue_data, s390_addr, s390_store, s390_load)
11475         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
11476         (s390_register_call_saved, s390_guess_tracepoint_registers)
11477         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
11478         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
11479         (s390_pseudo_register_name, s390_pseudo_register_type)
11480         (s390_pseudo_register_read, s390_pseudo_register_write)
11481         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
11482         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
11483         (s390_addr_bits_remove, s390_address_class_type_flags)
11484         (s390_address_class_type_flags_to_name)
11485         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
11486         (s390_function_arg_float, s390_function_arg_vector)
11487         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
11488         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
11489         (s390_frame_align, s390_register_return_value, s390_return_value)
11490         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
11491         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
11492         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
11493         (s390_trad_frame_prev_register, s390_unwind_cache)
11494         (s390_prologue_frame_unwind_cache)
11495         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
11496         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
11497         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
11498         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
11499         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
11500         (s390_frame_base_address, s390_local_base_address)
11501         (s390_frame_base, s390_gcc_target_options)
11502         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
11503         (s390_validate_reg_range, s390_tdesc_valid)
11504         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
11505         * s390-tdep.c: ...this.  New file.
11506
11507 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
11508
11509         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
11510         (s390_process_record, s390_gdbarch_tdep_alloc)
11511         (s390_linux_init_abi_any): Use/set new hook.
11512
11513 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
11514
11515         * s390-linux-tdep.c (osabi.h): New include.
11516         (s390_linux_init_abi_31, s390_linux_init_abi_64)
11517         (s390_linux_init_abi_any): New functions.
11518         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
11519
11520 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
11521
11522         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
11523         tdesc_has_registers check
11524
11525 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
11526
11527         * s390-linux-tdep.c (s390_tdesc_valid): New function.
11528         (s390_validate_reg_range): New macro.
11529         (s390_gdbarch_init): Adjust.
11530
11531 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
11532
11533         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
11534         (s390_gdbarch_tdep_alloc): Adjust.
11535         (s390_gdbarch_init): Adjust.
11536
11537 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
11538
11539         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
11540         <have_tdb>: Change type to bool.
11541         (s390_gdbarch_tdep_alloc): Adjust.
11542         (s390_gdbarch_init): Adjust.
11543
11544 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
11545
11546         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
11547         (gdbarch_tdep) <have_upper, have_vx>: New fields.
11548         (s390_gdbarch_tdep_alloc): New function.
11549         (s390_gdbarch_init): Allocate tdep at start and use its fields
11550         instead of separate variables.
11551
11552 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
11553
11554         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
11555         when looking for cached gdbarch and add comment for remaining.
11556
11557 2018-01-22  Pedro Alves  <palves@redhat.com>
11558             Sergio Durigan Junior  <sergiodj@redhat.com>
11559
11560         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
11561         case.
11562
11563 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
11564
11565         * MAINTAINERS: Update my company e-mail address.
11566
11567 2018-01-22  Yao Qi  <yao.qi@linaro.org>
11568
11569         * regcache.c (cooked_write_test): New function.
11570         (_initialize_regcache): Register the test.
11571
11572 2018-01-22  Yao Qi  <yao.qi@linaro.org>
11573
11574         * ia64-tdep.c (ia64_pseudo_register_read): Call
11575         regcache->cooked_read instead of regcache_cooked_read_unsigned.
11576         * m32c-tdep.c (m32c_cat_read): Likewise.
11577         (m32c_r3r2r1r0_read): Likewise.
11578         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
11579         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
11580
11581 2018-01-22  Yao Qi  <yao.qi@linaro.org>
11582
11583         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
11584         method raw_read instead of regcache_raw_read.
11585         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
11586         * arm-tdep.c (arm_neon_quad_read): Likewise.
11587         * avr-tdep.c (avr_pseudo_register_read): Likewise.
11588         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
11589         * frv-tdep.c (frv_pseudo_register_read): Likewise.
11590         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
11591         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
11592         (i386_pseudo_register_read_into_value): Likewise.
11593         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
11594         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
11595         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
11596         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
11597         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
11598         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
11599         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
11600         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
11601         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
11602
11603 2018-01-22  Yao Qi  <yao.qi@linaro.org>
11604
11605         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
11606         * configure.tgt: Remove target mt.
11607         * mt-tdep.c: Remove.
11608         * regcache.c (cooked_read_test): Remove the check for mt.
11609
11610 2018-01-22  Yao Qi  <yao.qi@linaro.org>
11611
11612         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
11613         instead of gdbarch_pseudo_register_read_value.
11614
11615 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
11616
11617         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
11618         language is Ada.
11619
11620 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
11621
11622         * linespec.c (create_sals_line_offset): Remove code that preserved
11623         the symtab_and_line's line number.
11624
11625 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
11626
11627         * varobj.c (varobj_create): Don't set valid_block when creating a
11628         floating varobj.
11629
11630 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
11631
11632         * varobj.c (varobj_create): Remove out of date comment.
11633
11634 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
11635
11636         PR mi/20395
11637         * ada-exp.y (write_var_from_sym): Pass extra parameter when
11638         updating innermost block.
11639         * parse.c (innermost_block_tracker::update): Take extra type
11640         parameter, and check types match before updating innermost block.
11641         (write_dollar_variable): Update innermost block for registers.
11642         * parser-defs.h (enum innermost_block_tracker_type): New enum.
11643         (innermost_block_tracker::innermost_block_tracker): Initialise
11644         m_types member.
11645         (innermost_block_tracker::reset): Take type parameter.
11646         (innermost_block_tracker::update): Take type parameter, and pass
11647         type through as needed.
11648         (innermost_block_tracker::m_types): New member.
11649         * varobj.c (varobj_create): Pass type when reseting innermost
11650         block.
11651
11652 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
11653
11654         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
11655         * ada-lang.c (resolve_subexp): Likewise.
11656         * breakpoint.c (set_breakpoint_condition) Likewise.
11657         (watch_command_1) Likewise.
11658         * c-exp.y (variable): Likewise.
11659         * d-exp.y (PrimaryExpression): Likewise.
11660         * f-exp.y (variable): Likewise.
11661         * go-exp.y (variable): Likewise.
11662         * m2-exp.y (variable): Likewise.
11663         * objfiles.c (objfile::~objfile): Likewise.
11664         * p-exp.y (variable): Likewise.
11665         * parse.c (innermost_block): Change type.
11666         * parser-defs.h (class innermost_block_tracker): New.
11667         (innermost_block): Change to innermost_block_tracker.
11668         * printcmd.c (display_command): Switch to innermost_block API.
11669         (do_one_display): Likewise.
11670         * rust-exp.y (do_one_display): Likewise.
11671         * symfile.c (clear_symtab_users): Likewise.
11672         * varobj.c (varobj_create): Switch to innermost_block API, replace
11673         use of innermost_block with block stored on varobj object.
11674
11675 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
11676
11677         * expression.h (innermost_block): Remove declaration.
11678         * varobj.c: Add 'parser-defs.h' include.
11679
11680 2018-01-19  Tom Tromey  <tom@tromey.com>
11681
11682         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
11683         symbols in the static and global blocks.
11684
11685 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
11686
11687         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
11688         gdb_ptrace.h, and move including gdb_wait.h ...
11689         * nat/linux-ptrace.h: ... to here.
11690
11691 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
11692
11693         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
11694         inf_ptrace_detach_success.
11695         (inf_ptrace_detach_success): Add inferior parameter, use it
11696         instead of inferior_ptid, pass it to detach_inferior.
11697         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
11698         parameter.
11699         * inferior.c (detach_inferior): Add overload that takes an
11700         inferior object.
11701         * inferior.h (detach_inferior): Likewise.
11702         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
11703         use inferior_ptid, adjust call to inf_ptrace_detach_success.
11704         * linux-thread-db.c (thread_db_detach): Use inf parameter.
11705
11706 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
11707
11708         * target.h (struct target_ops) <to_detach>: Add inferior
11709         parameter.
11710         (target_detach): Likewise.
11711         * target.c (dispose_inferior): Pass inferior down.
11712         (target_detach): Pass inferior down.  Assert that it is equal to
11713         the current inferior.
11714         * aix-thread.c (aix_thread_detach): Pass inferior down.
11715         * corefile.c (core_file_command): Pass current_inferior() down.
11716         * corelow.c (core_detach): Add inferior parameter.
11717         * darwin-nat.c (darwin_detach): Likewise.
11718         * gnu-nat.c (gnu_detach): Likewise.
11719         * inf-ptrace.c (inf_ptrace_detach): Likewise.
11720         * infcmd.c (detach_command): Pass current_inferior() down to
11721         target_detach.
11722         * infrun.c (follow_fork_inferior): Pass parent_inf to
11723         target_detach.
11724         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
11725         target_detach.
11726         * linux-nat.c (linux_nat_detach): Add inferior parameter.
11727         * linux-thread-db.c (thread_db_detach): Likewise.
11728         * nto-procfs.c (procfs_detach): Likewise.
11729         * procfs.c (procfs_detach): Likewise.
11730         * record.c (record_detach): Likewise.
11731         * record.h (struct inferior): Forward-declare.
11732         (record_detach): Add inferior parameter.
11733         * remote-sim.c (gdbsim_detach): Likewise.
11734         * remote.c (remote_detach_1): Likewise.
11735         (remote_detach): Likewise.
11736         (extended_remote_detach): Likewise.
11737         * sol-thread.c (sol_thread_detach): Likewise.
11738         * target-debug.h (target_debug_print_inferior_p): New macro.
11739         * target-delegates.c: Re-generate.
11740         * top.c (kill_or_detach): Pass inferior down to target_detach.
11741         * windows-nat.c (windows_detach): Add inferior parameter.
11742
11743 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
11744
11745         * target.h (struct target_ops) <to_detach>: Remove args
11746         parameter.
11747         (target_detach): Likewise.
11748         * target.c (dispose_inferior): Adjust.
11749         (target_detach): Remove args parameter, adjust.
11750         * aix-thread.c (aix_thread_detach): Adjust.
11751         * corefile.c (core_file_command): Adjust.
11752         * corelow.c (core_detach): Adjust.
11753         * darwin-nat.c (darwin_detach): Adjust.
11754         * gnu-nat.c (gnu_detach): Adjust.
11755         * inf-ptrace.c (inf_ptrace_detach): Adjust.
11756         * infcmd.c (detach_command): Adjust
11757         * infrun.c (follow_fork_inferior): Adjust.
11758         (handle_vfork_child_exec_or_exit): Adjust.
11759         * linux-fork.c (linux_fork_detach): Remove args parameter.
11760         * linux-fork.h (linux_fork_detach): Likewise.
11761         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
11762         * linux-thread-db.c (thread_db_detach): Likewise.
11763         * nto-procfs.c (procfs_detach): Likewise.
11764         * procfs.c (procfs_detach): Likewise.
11765         (do_detach): Remove signo parameter.
11766         * record.c (record_detach): Remove args parameter.
11767         * record.h (record_detach): Likewise.
11768         * remote-sim.c (gdbsim_detach): Likewise.
11769         * remote.c (remote_detach_1): Likewise.
11770         (remote_detach): Likewise.
11771         (extended_remote_detach): Likewise.
11772         * sol-thread.c (sol_thread_detach): Likewise.
11773         * target-delegates.c: Re-generate.
11774         * top.c (struct qt_args) <args>: Remove field.
11775         (kill_or_detach): Don't pass args.
11776         (quit_force): Don't set args.
11777         * windows-nat.c (windows_detach): Remove args parameter.
11778
11779 2018-01-19  Yao Qi  <yao.qi@linaro.org>
11780
11781         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
11782         (arm_linux_init_abi): Install it.
11783
11784 2018-01-19  Yao Qi  <yao.qi@linaro.org>
11785
11786         * osabi.c (gdb_osabi_names): Extend the regexp for
11787         arm-linux-gnueabihf.
11788
11789 2018-01-18  Yao Qi  <yao.qi@linaro.org>
11790
11791         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
11792         m_abbrevs.
11793         (abbrev_table::add_abbrev): Update.
11794         (abbrev_table::lookup_abbrev): Update.
11795
11796 2018-01-18  Yao Qi  <yao.qi@linaro.org>
11797
11798         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
11799
11800 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
11801
11802         * compile/compile.c (compile_to_object): Convert "triplet_rx"
11803         to "std::string".
11804
11805 2018-01-17  Tom Tromey  <tom@tromey.com>
11806
11807         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
11808
11809 2018-01-17  Tom Tromey  <tom@tromey.com>
11810
11811         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
11812         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
11813         (create_array_type_with_stride): Update.
11814         * dwarf2read.c (set_die_type): Update.
11815
11816 2018-01-17  Tom Tromey  <tom@tromey.com>
11817
11818         * dwarf2read.c (delayed_method_info): Remove typedef.
11819         (dwarf2_cu::method_info): Now a std::vector.
11820         (add_to_method_list): Update.
11821         (free_delayed_list): Remove.
11822         (compute_delayed_physnames): Update.
11823         (process_full_comp_unit, process_full_type_unit): Clear the method
11824         list.  Remove cleanups.
11825         (psymtab_include_file_name): Add name_holder parameter.  Use
11826         unique_xmalloc_ptr.
11827         (dwarf_decode_lines): Update.
11828
11829 2018-01-17  Tom Tromey  <tom@tromey.com>
11830             Simon Marchi  <simon.marchi@ericsson.com>
11831
11832         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
11833         (dwarf2_per_objfile::free_cached_comp_units)
11834         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
11835         (init_cutu_and_read_dies_no_follow): Update.
11836         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
11837         (dwarf2_cu::~dwarf2_cu): New.
11838         (free_heap_comp_unit, free_stack_comp_unit): Remove.
11839         (age_cached_comp_units, free_one_cached_comp_unit): Update.
11840
11841 2018-01-17  Tom Tromey  <tom@tromey.com>
11842             Simon Marchi  <simon.marchi@ericsson.com>
11843
11844         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
11845         (struct die_reader_specs) <abbrev_table>: New member.
11846         (struct abbrev_table): Add constructor.
11847         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
11848         <abbrev_obstack>: Now an auto_obstack.
11849         (abbrev_table_up): New typedef.
11850         (init_cu_die_reader): Add abbrev_table parameter.
11851         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
11852         Add result_dwo_abbrev_table.
11853         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
11854         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
11855         Update.
11856         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
11857         parameter.
11858         (skip_children): Update.
11859         (abbrev_table::alloc_abbrev): Rename from
11860         abbrev_table_alloc_abbrev.
11861         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
11862         (abbrev_table::lookup_abbrev): Rename from
11863         abbrev_table_lookup_abbrev.
11864         (abbrev_table_read_table): Return abbrev_table_up.
11865         (abbrev_table_free, abbrev_table_free_cleanup)
11866         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
11867         (load_partial_dies): Update.
11868
11869 2018-01-17  Tom Tromey  <tom@tromey.com>
11870
11871         * dwarf2read.c (dwarf2_compute_name): Update comment.
11872         (read_func_scope, read_variable): Update.
11873         (new_symbol): Remove.
11874         (new_symbol_full): Rename to new_symbol.
11875
11876 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
11877
11878         PR gdb/16577
11879         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
11880         a warning instead of throwing an error, set section size to 0 and return
11881         NULL.
11882         * gdb_bfd.h (gdb_bfd_map_section): Update description.
11883
11884 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
11885
11886         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
11887         std::string.
11888         (linux_ptrace_attach_fail_reason_string): Likewise.
11889         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
11890         Likewise.
11891         (linux_ptrace_attach_fail_reason_string): Likewise.
11892         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
11893
11894 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
11895
11896         * linux-nat.c (linux_nat_attach): Remove xstrdup.
11897
11898 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
11899
11900         PR gdb/21559
11901         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
11902         checking for fs_base/gs_base fields in struct user_regs_struct.
11903         * configure: Regenerate.
11904
11905 2018-01-17  Yao Qi  <yao.qi@linaro.org>
11906
11907         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
11908         function.
11909         (aarch64_linux_init_abi): Install it to gdbarch hook
11910         gcc_target_options.
11911
11912 2018-01-15  Pedro Alves  <palves@redhat.com>
11913
11914         * common/signals-state-save-restore.c
11915         (save_original_signals_state): Fix typos.
11916
11917 2017-01-12  Tom Tromey  <tom@tromey.com>
11918             Sergio Durigan Junior  <sergiodj@redhat.com>
11919
11920         * Makefile.in (install-only): Install gdb-add-index.
11921
11922 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
11923
11924         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
11925
11926 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11927
11928         * infrun.c (keep_going_pass_signal): Clear step-over info when
11929         insert_breakpoints fails.
11930
11931 2018-01-11  Pedro Alves  <palves@redhat.com>
11932
11933         PR gdb/22583
11934         * infrun.c (resume): Rename to ...
11935         (resume_1): ... this.
11936         (resume): Reimplement as wrapper around resume_1.
11937
11938 2018-01-11  Pedro Alves  <palves@redhat.com>
11939
11940         PR remote/22597
11941         * remote.c (remote_parse_stop_reply): Default to the last-set
11942         general thread instead of to 'magic_null_ptid'.
11943
11944 2018-01-10  Pedro Alves  <palves@redhat.com>
11945
11946         * language.h (language_get_symbol_name_matcher): Rename ...
11947         (get_symbol_name_matcher): ... this.
11948         * language.c (language_get_symbol_name_matcher): Ditto.
11949         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
11950         callers adjusted.
11951
11952 2018-01-10  Pedro Alves  <palves@redhat.com>
11953
11954         PR gdb/22670
11955         * dwarf2read.c
11956         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
11957         Adjust to use language_get_symbol_name_matcher instead of
11958         language_defn::la_get_symbol_name_matcher.
11959         * language.c (language_get_symbol_name_matcher): If in Ada mode
11960         and the lookup name is a verbatim match, return Ada's matcher.
11961         * language.h (language_get_symbol_name_matcher): Adjust comment.
11962         (ada_lookup_name_info::verbatim_p):: New method.
11963
11964 2018-01-10  Pedro Alves  <palves@redhat.com>
11965
11966         PR gdb/22670
11967         * ada-lang.c (ada_collect_symbol_completion_matches): If the
11968         minsym's language is language_auto or language_cplus, pass down
11969         language_ada instead.
11970         * symtab.c (compare_symbol_name): Don't frob symbol language here.
11971
11972 2018-01-10  Pedro Alves  <palves@redhat.com>
11973
11974         PR gdb/22670
11975         * minsyms.c (linkage_name_str): New function.
11976         (iterate_over_minimal_symbols): Use it.
11977
11978 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
11979
11980         * NEWS: Document that 'info proc' now works on FreeBSD.
11981
11982 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
11983
11984         * configure.ac: Check for kinfo_getfile in libutil.
11985         * configure: Regenerate.
11986         * config.in: Regenerate.
11987         * fbsd-nat.c: Include "fbsd-tdep.h".
11988         (fbsd_fetch_cmdline): New.
11989         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
11990         rather than calling error.
11991         (fbsd_info_proc): New.
11992         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
11993         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
11994         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
11995
11996 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
11997
11998         * fbsd-nat.c (struct free_deleter): Remove.
11999         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
12000
12001 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
12002
12003         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
12004         NULL for an empty pathname.
12005
12006 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
12007
12008         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
12009         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
12010         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
12011         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
12012         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
12013         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
12014         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
12015         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
12016         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
12017         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
12018         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
12019         (fbsd_core_fetch_timeval, fbsd_print_sigset)
12020         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
12021         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
12022         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
12023
12024 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
12025
12026         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
12027         (gnu_xfer_auxv): New function.
12028         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
12029         TARGET_OBJECT_AUXV.
12030
12031 2018-01-08  Yao Qi  <yao.qi@linaro.org>
12032             Simon Marchi  <simon.marchi@ericsson.com>
12033
12034         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
12035         common/selftest.c.
12036         (COMMON_OBS): Remove selftest.o.
12037         * configure.ac: Append selftest-arch.c and common/selftest.c to
12038         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
12039         * configure: Re-generated.
12040         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
12041         GDB_SELF_TEST.
12042         (maintenance_info_selftests): Likewise.
12043
12044 2018-01-08  Xavier Roirand  <roirand@adacore.com>
12045
12046         * ada-valprint.c (val_print_packed_array_elements): Use
12047         proper number of elements when printing an array indexed
12048         by an enumeration type.
12049
12050 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
12051
12052         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
12053         (dw2_get_file_names_reader): Adjust.
12054         (lookup_dwo_signatured_type): Adjust.
12055         (lookup_dwp_signatured_type): Adjust.
12056         (lookup_signatured_type): Adjust.
12057         (create_type_unit_group): Adjust.
12058         (get_type_unit_group): Adjust.
12059         (process_psymtab_comp_unit_reader): Adjust.
12060         (build_type_psymtabs_reader): Adjust.
12061         (scan_partial_symbols): Adjust.
12062         (add_partial_symbol): Adjust.
12063         (add_partial_subprogram): Adjust.
12064         (peek_die_abbrev): Adjust.
12065         (fixup_go_packaging): Adjust.
12066         (process_imported_unit_die): Adjust.
12067         (dwarf2_compute_name): Adjust.
12068         (dwarf2_physname): Adjust.
12069         (read_import_statement): Adjust.
12070         (handle_DW_AT_stmt_list): Adjust.
12071         (read_file_scope): Adjust.
12072         (read_func_scope): Adjust.
12073         (read_lexical_block_scope): Adjust.
12074         (read_call_site_scope): Adjust.
12075         (read_variable): Adjust.
12076         (dwarf2_rnglists_process): Adjust.
12077         (dwarf2_ranges_process): Adjust.
12078         (dwarf2_ranges_read): Adjust.
12079         (dwarf2_get_pc_bounds): Adjust.
12080         (dwarf2_record_block_ranges): Adjust.
12081         (dwarf2_add_field): Adjust.
12082         (dwarf2_add_member_fn): Adjust.
12083         (read_structure_type): Adjust.
12084         (process_structure_scope): Adjust.
12085         (read_enumeration_type): Adjust.
12086         (read_array_type): Adjust.
12087         (mark_common_block_symbol_computed): Adjust.
12088         (read_common_block): Adjust.
12089         (read_namespace_type): Adjust.
12090         (read_namespace): Adjust.
12091         (read_module_type): Adjust.
12092         (read_tag_pointer_type): Adjust.
12093         (read_tag_ptr_to_member_type): Adjust.
12094         (read_tag_string_type): Adjust.
12095         (read_subroutine_type): Adjust.
12096         (read_typedef): Adjust.
12097         (read_base_type): Adjust.
12098         (attr_to_dynamic_prop): Adjust.
12099         (read_subrange_type): Adjust.
12100         (read_unspecified_type): Adjust.
12101         (dwarf2_read_abbrevs): Adjust.
12102         (load_partial_dies): Adjust.
12103         (read_partial_die): Adjust.
12104         (find_partial_die): Adjust.
12105         (guess_partial_die_structure_name): Adjust.
12106         (fixup_partial_die): Adjust.
12107         (read_attribute_value): Adjust.
12108         (read_addr_index): Adjust.
12109         (read_addr_index_from_leb128): Adjust.
12110         (read_str_index): Adjust.
12111         (dwarf2_string_attr): Adjust.
12112         (get_debug_line_section): Adjust.
12113         (dwarf_decode_line_header): Adjust.
12114         (lnp_state_machine::check_line_address): Adjust.
12115         (dwarf_decode_lines_1): Adjust.
12116         (dwarf_decode_lines): Adjust.
12117         (dwarf2_start_symtab): Adjust.
12118         (var_decode_location): Adjust.
12119         (new_symbol_full): Adjust.
12120         (dwarf2_const_value_data): Adjust.
12121         (dwarf2_const_value_attr): Adjust.
12122         (dwarf2_const_value): Adjust.
12123         (die_type): Adjust.
12124         (die_containing_type): Adjust.
12125         (build_error_marker_type): Adjust.
12126         (lookup_die_type): Adjust.
12127         (guess_full_die_structure_name): Adjust.
12128         (anonymous_struct_prefix): Adjust.
12129         (determine_prefix): Adjust.
12130         (dwarf2_name): Adjust.
12131         (follow_die_ref_or_sig): Adjust.
12132         (follow_die_offset): Adjust.
12133         (follow_die_ref): Adjust.
12134         (follow_die_sig_1): Adjust.
12135         (follow_die_sig): Adjust.
12136         (get_signatured_type): Adjust.
12137         (get_DW_AT_signature_type): Adjust.
12138         (decode_locdesc): Adjust.
12139         (dwarf_decode_macros): Adjust.
12140         (cu_debug_loc_section): Adjust.
12141         (fill_in_loclist_baton): Adjust.
12142         (dwarf2_symbol_mark_computed): Adjust.
12143         (init_one_comp_unit): Don't assign
12144         dwarf2_cu::dwarf2_per_objfile.
12145         (set_die_type): Adjust.
12146
12147 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
12148
12149         * dwarf2read.c (struct mapped_debug_names): Add constructor.
12150         <dwarf2_per_objfile>: New field.
12151         (dwarf2_per_objfile): Remove global.
12152         (get_dwarf2_per_objfile): New function.
12153         (set_dwarf2_per_objfile): New function.
12154         (dwarf2_build_psymtabs_hard): Change objfile parameter to
12155         dwarf2_per_objfile.
12156         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
12157         (read_abbrev_offset): Likewise.
12158         (read_indirect_string): Likewise.
12159         (read_indirect_line_string): Likewise.
12160         (read_indirect_string_at_offset): Likewise.
12161         (read_indirect_string_from_dwz): Likewise.
12162         (dwarf2_find_containing_comp_unit): Change objfile parameter to
12163         dwarf2_per_objfile.
12164         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
12165         (create_all_comp_units): Change objfile parameter to
12166         dwarf2_per_objfile.
12167         (create_all_type_units): Likewise.
12168         (process_queue): Add dwarf2_per_objfile parameter.
12169         (read_and_check_comp_unit_head): Likewise.
12170         (lookup_dwo_unit_in_dwp): Likewise.
12171         (get_dwp_file): Likewise.
12172         (process_cu_includes): Likewise.
12173         (struct free_dwo_file_cleanup_data): New struct.
12174         (dwarf2_has_info): Use get_dwarf2_per_objfile and
12175         set_dwarf2_per_objfile.
12176         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
12177         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
12178         context, adjust calls.
12179         (dw2_instantiate_symtab): Likewise.
12180         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
12181         (dw2_get_cu): Likewise.
12182         (create_cu_from_index_list): Change objfile parameter to
12183         dwarf2_per_objfile.
12184         (create_cus_from_index_list): Get dwarf2_per_objfile from
12185         context, adjust calls.
12186         (create_cus_from_index): Likewise.
12187         (create_signatured_type_table_from_index): Change objfile
12188         parameter to dwarf2_per_objfile.
12189         (create_signatured_type_table_from_debug_names): Change objfile
12190         parameter to dwarf2_per_objfile.
12191         (create_addrmap_from_index): Likewise.
12192         (create_addrmap_from_aranges): Likewise.
12193         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
12194         (dw2_setup): Remove.
12195         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
12196         context.
12197         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
12198         get_dwarf2_per_objfile.
12199         (dw2_forget_cached_source_info): Likewise.
12200         (dw2_map_symtabs_matching_filename): Likewise.
12201         (struct dw2_symtab_iterator) <index>: Remove.
12202         <dwarf2_per_objfile>: New field.
12203         (dw2_symtab_iter_init): Replace index parameter with
12204         dwarf2_per_objfile.
12205         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
12206         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
12207         (dw2_print_stats): Likewise.
12208         (dw2_dump): Likewise.
12209         (dw2_expand_symtabs_for_function): Likewise.
12210         (dw2_expand_all_symtabs): Likewise.
12211         (dw2_expand_symtabs_with_fullname): Likewise.
12212         (dw2_expand_marked_cus): Replace index and objfile parameters
12213         with dwarf2_per_objfile.
12214         (dw_expand_symtabs_matching_file_matcher): Add
12215         dwarf2_per_objfile parameter and adjust calls.
12216         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
12217         adjust calls.
12218         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
12219         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
12220         adjust calls.
12221         (create_cus_from_debug_names_list): Replace objfile parameter
12222         with dwarf2_per_objfile and adjust calls.
12223         (create_cus_from_debug_names): Likewise.
12224         (dwarf2_read_debug_names): Likewise.
12225         (mapped_debug_names::namei_to_name): Adjust call.
12226         (dw2_debug_names_iterator::next): Likewise.
12227         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
12228         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
12229         (dw2_debug_names_dump): Likewise.
12230         (dw2_debug_names_expand_symtabs_for_function): Likewise.
12231         (dw2_debug_names_expand_symtabs_matching): Likewise.
12232         (dwarf2_initialize_objfile): Likewise.
12233         (dwarf2_build_psymtabs): Likewise.
12234         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
12235         this_cu.
12236         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
12237         (read_and_check_comp_unit_head): Likewise.
12238         (read_abbrev_offset): Likewise.
12239         (create_debug_type_hash_table): Likewise.
12240         (create_debug_types_hash_table): Likewise.
12241         (create_all_type_units): Replace objfile parameter with
12242         dwarf2_per_objfile.
12243         (add_type_unit): Add dwarf2_per_objfile parameter.
12244         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
12245         with dwarf2_per_objfile.
12246         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
12247         (lookup_dwp_signatured_type): Likewise.
12248         (lookup_signatured_type): Likewise.
12249         (read_cutu_die_from_dwo): Likewise.
12250         (init_tu_and_read_dwo_dies): Likewise.
12251         (init_cutu_and_read_dies): Likewise.
12252         (init_cutu_and_read_dies_no_follow): Likewise.
12253         (allocate_type_unit_groups_table): Add objfile parameter.
12254         (create_type_unit_group): Use dwarf2_per_objfile from cu.
12255         (get_type_unit_group): Likewise.
12256         (process_psymtab_comp_unit): Update call.
12257         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
12258         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
12259         (print_tu_stats): Likewise.
12260         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
12261         in void* parameter.
12262         (build_type_psymtabs): Change objfile parameter to
12263         dwarf2_per_objfile.
12264         (process_skeletonless_type_unit): Use dwarf2_per_objfile
12265         passed in void* parameter.
12266         (process_skeletonless_type_units): Change objfile parameter to
12267         dwarf2_per_objfile.
12268         (set_partial_user): Likewise.
12269         (dwarf2_build_psymtabs_hard): Likewise.
12270         (read_comp_units_from_section): Likewise.
12271         (create_all_comp_units): Likewise.
12272         (scan_partial_symbols): Update calls.
12273         (add_partial_symbol): Likewise.
12274         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
12275         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
12276         (process_queue): Add dwarf2_per_objfile parameter.
12277         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
12278         (compute_compunit_symtab_includes): Likewise.
12279         (process_cu_includes): Add dwarf2_per_objfile parameter.
12280         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
12281         (process_full_type_unit): Likewise.
12282         (process_imported_unit_die): Update call.
12283         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
12284         (read_file_scope): Likewise.
12285         (allocate_dwo_file_hash_table): Add objfile parameter.
12286         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
12287         (create_cus_hash_table): Likewise.
12288         (create_dwp_hash_table): Likewise.
12289         (create_dwo_unit_in_dwp_v1): Likewise.
12290         (create_dwp_v2_section): Likewise.
12291         (create_dwo_unit_in_dwp_v2): Likewise.
12292         (lookup_dwo_unit_in_dwp): Likewise.
12293         (try_open_dwop_file): Likewise.
12294         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
12295         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
12296         cleanup to include a reference to dwarf2_per_objfile.
12297         (open_dwp_file): Add dwarf2_per_objfile parameter.
12298         (open_and_init_dwp_file): Likewise.
12299         (get_dwp_file): Likewise.
12300         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
12301         (queue_and_load_all_dwo_tus): Update call.
12302         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
12303         data.
12304         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
12305         (dwarf2_ranges_process): Likewise.
12306         (dwarf2_get_pc_bounds): Likewise.
12307         (mark_common_block_symbol_computed): Likewise.
12308         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
12309         (dwarf2_read_abbrevs): Update call.
12310         (read_partial_die): Use dwarf2_per_objfile from cu.
12311         (find_partial_die): Likewise.
12312         (fixup_partial_die): Likewise.
12313         (read_attribute_value): Likewise.
12314         (read_indirect_string_at_offset_from): Add objfile parameter.
12315         (read_indirect_string_at_offset): Add dwarf2_per_objfile
12316         parameter.
12317         (read_indirect_string_from_dwz): Add objfile parameter.
12318         (read_indirect_string): Add objfile parameter.
12319         (read_addr_index_1): Add dwarf2_per_objfile parameter.
12320         (read_addr_index): Use dwarf2_per_objfile from cu.
12321         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
12322         call dw2_setup.
12323         (read_str_index): Use dwarf2_per_objfile from cu.
12324         (get_debug_line_section): Likewise.
12325         (read_formatted_entries): Add dwarf2_per_objfile parameter.
12326         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
12327         (new_symbol_full): Use dwarf2_per_objfile from cu.
12328         (build_error_marker_type): Likewise.
12329         (lookup_die_type): Likewise.
12330         (determine_prefix): Likewise.
12331         (follow_die_offset): Likewise.
12332         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
12333         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
12334         (dwarf2_fetch_die_type_sect_off): Likewise.
12335         (dwarf2_get_die_type): Likewise.
12336         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
12337         (get_signatured_type): Likewise.
12338         (get_DW_AT_signature_type): Likewise.
12339         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
12340         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
12341         (cu_debug_loc_section): Likewise.
12342         (fill_in_loclist_baton): Likewise.
12343         (dwarf2_symbol_mark_computed): Likewise.
12344         (dwarf2_find_containing_comp_unit): Change objfile parameter to
12345         dwarf2_per_objfile.
12346         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
12347         parameter.
12348         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
12349         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
12350         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
12351         (set_die_type): Use dwarf2_free_objfile from cu.
12352         (get_die_type_at_offset): Likewise.
12353         (dwarf2_per_objfile_free): Don't assign global variable.
12354         (debug_names) <constructor>: Add dwarf2_per_objfile
12355         parameter, update m_debugstrlookup construction.
12356         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
12357         parameter.
12358         <m_dwarf2_per_objfile>: New field.
12359         <lookup>: Use m_dwarf2_per_objfile.
12360         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
12361         (psyms_seen_size): Likewise.
12362         (write_gdbindex): Replace objfile parameter with
12363         dwarf2_per_objfile.
12364         (write_debug_names): Likewise.
12365         (write_psymtabs_to_index): Likewise.
12366         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
12367         calls.
12368
12369 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
12370
12371         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
12372         <dwarf2_per_objfile>: New field.
12373         (struct dwarf2_per_cu_data) <objfile>: Remove.
12374         <dwarf2_per_objfile>: New field.
12375         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
12376         of objfile.
12377         (create_signatured_type_table_from_index): Likewise.
12378         (create_debug_type_hash_table): Likewise.
12379         (fill_in_sig_entry_from_dwo_entry): Likewise.
12380         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
12381         (create_type_unit_group): Assign dwarf2_per_objfile instead of
12382         objfile.
12383         (create_partial_symtab): Access objfile through
12384         dwarf2_per_objfile.
12385         (process_psymtab_comp_unit_reader): Likewise.
12386         (read_comp_units_from_section): Likewise.
12387         (scan_partial_symbols): Likewise.
12388         (add_partial_symbol): Likewise.
12389         (add_partial_subprogram): Likewise.
12390         (peek_die_abbrev): Likewise.
12391         (fixup_go_packaging): Likewise.
12392         (process_full_comp_unit): Likewise.
12393         (process_full_type_unit): Likewise.
12394         (process_imported_unit_die): Likewise.
12395         (dwarf2_compute_name): Likewise.
12396         (dwarf2_physname): Likewise.
12397         (read_import_statement): Likewise.
12398         (create_cus_hash_table): Assign dwarf2_physname instead of
12399         objfile.
12400         (read_func_scope): Access objfile through dwarf2_per_objfile.
12401         (read_lexical_block_scope): Likewise.
12402         (read_call_site_scope): Likewise.
12403         (read_variable): Likewise.
12404         (dwarf2_rnglists_process): Likewise.
12405         (dwarf2_ranges_process): Likewise.
12406         (dwarf2_ranges_read): Likewise.
12407         (dwarf2_record_block_ranges): Likewise.
12408         (dwarf2_add_field): Likewise.
12409         (dwarf2_add_member_fn): Likewise.
12410         (read_structure_type): Likewise.
12411         (process_structure_scope): Likewise.
12412         (read_enumeration_type): Likewise.
12413         (read_array_type): Likewise.
12414         (read_common_block): Likewise.
12415         (read_namespace_type): Likewise.
12416         (read_namespace): Likewise.
12417         (read_module_type): Likewise.
12418         (read_tag_pointer_type): Likewise.
12419         (read_tag_ptr_to_member_type): Likewise.
12420         (read_tag_string_type): Likewise.
12421         (read_subroutine_type): Likewise.
12422         (read_typedef): Likewise.
12423         (read_base_type): Likewise.
12424         (attr_to_dynamic_prop): Likewise.
12425         (read_subrange_type): Likewise.
12426         (read_unspecified_type): Likewise.
12427         (load_partial_dies): Likewise.
12428         (read_partial_die): Likewise.
12429         (find_partial_die): Likewise.
12430         (guess_partial_die_structure_name): Likewise.
12431         (fixup_partial_die): Likewise.
12432         (read_attribute_value): Likewise.
12433         (read_addr_index_from_leb128): Likewise.
12434         (dwarf2_read_addr_index): Likewise.
12435         (dwarf2_string_attr): Likewise.
12436         (lnp_state_machine::check_line_address): Likewise.
12437         (dwarf_decode_lines_1): Likewise.
12438         (dwarf_decode_lines): Likewise.
12439         (dwarf2_start_symtab): Likewise.
12440         (var_decode_location): Likewise.
12441         (new_symbol_full): Likewise.
12442         (dwarf2_const_value_data): Likewise.
12443         (dwarf2_const_value_attr): Likewise.
12444         (dwarf2_const_value): Likewise.
12445         (die_type): Likewise.
12446         (die_containing_type): Likewise.
12447         (lookup_die_type): Likewise.
12448         (guess_full_die_structure_name): Likewise.
12449         (anonymous_struct_prefix): Likewise.
12450         (dwarf2_name): Likewise.
12451         (follow_die_ref_or_sig): Likewise.
12452         (follow_die_offset): Likewise.
12453         (follow_die_ref): Likewise.
12454         (dwarf2_fetch_die_loc_sect_off): Likewise.
12455         (dwarf2_fetch_constant_bytes): Likewise.
12456         (dwarf2_fetch_die_type_sect_off): Likewise.
12457         (dwarf2_get_die_type): Likewise.
12458         (follow_die_sig): Likewise.
12459         (decode_locdesc): Likewise.
12460         (dwarf2_per_cu_objfile): Likewise.
12461         (dwarf2_per_cu_text_offset): Likewise.
12462         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
12463         objfile.
12464         (set_die_type): Access objfile through
12465         dwarf2_per_objfile.
12466
12467 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
12468
12469         * valprint.c (converted_character_d): Remove typedef.
12470         (DEF_VEC_O (converted_character_d)): Remove.
12471         (count_next_character): Use std::vector.
12472         (print_converted_chars_to_obstack): Likewise.
12473         (generic_printstr): Likewise.
12474
12475 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
12476
12477         * xml-support.h (struct gdb_xml_value): Add constructor.
12478         <value>: Change type to unique_xmalloc_ptr.
12479         (gdb_xml_value_s): Remove typedef.
12480         (DEF_VEC_O (gdb_xml_value_s)): Remove.
12481         (gdb_xml_element_start_handler): Change parameter type to
12482         std::vector.
12483         (xml_find_attribute): Likewise.
12484         * xml-support.c (xml_find_attribute): Change parameter type to
12485         std::vector and adjust.
12486         (gdb_xml_values_cleanup): Remove.
12487         (gdb_xml_parser::start_element): Adjust to std::vector.
12488         (xinclude_start_include): Change paraeter type to std::vector
12489         and adjust.
12490         * btrace.c (check_xml_btrace_version): Likewise.
12491         (parse_xml_btrace_block): Likewise.
12492         (parse_xml_btrace_pt_config_cpu): Likewise.
12493         (parse_xml_btrace_pt): Likewise.
12494         (parse_xml_btrace_conf_bts): Likewise.
12495         (parse_xml_btrace_conf_pt): Likewise.
12496         * memory-map.c (memory_map_start_memory): Likewise.
12497         (memory_map_start_property): Likewise.
12498         * osdata.c (osdata_start_osdata): Likewise.
12499         (osdata_start_item): Likewise.
12500         (osdata_start_column): Likewise.
12501         * remote.c (start_thread): Likewise.
12502         * solib-aix.c (library_list_start_library): Likewise.
12503         (library_list_start_list): Likewise.
12504         * solib-svr4.c (library_list_start_library): Likewise.
12505         (svr4_library_list_start_list): Likewise.
12506         * solib-target.c (library_list_start_segment): Likewise.
12507         (library_list_start_section): Likewise.
12508         (library_list_start_library): Likewise.
12509         (library_list_start_list): Likewise.
12510         * tracepoint.c (traceframe_info_start_memory): Likewise.
12511         (traceframe_info_start_tvar): Likewise.
12512         * xml-syscall.c (syscall_start_syscall): Likewise.
12513         * xml-tdesc.c (tdesc_start_target): Likewise.
12514         (tdesc_start_feature): Likewise.
12515         (tdesc_start_reg): Likewise.
12516         (tdesc_start_union): Likewise.
12517         (tdesc_start_struct): Likewise.
12518         (tdesc_start_flags): Likewise.
12519         (tdesc_start_enum): Likewise.
12520         (tdesc_start_field): Likewise.
12521         (tdesc_start_enum_value): Likewise.
12522         (tdesc_start_vector): Likewise.
12523
12524 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
12525
12526         * extension.h (struct xmethod_worker) <clone>: Remove.
12527         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
12528         Remove.
12529         (python_xmethod_worker::clone): Remove.
12530         * valops.c (find_overload_match): Use std::move instead of
12531         clone.
12532
12533 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
12534
12535         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
12536         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
12537         <free_xmethod_worker_data>: Remove.
12538         <get_matching_xmethod_workers>: Chance VEC to std::vector.
12539         <get_xmethod_arg_types>: Remove.
12540         <get_xmethod_result_type>: Remove.
12541         <invoke_xmethod>: Remove.
12542         * extension.c (new_xmethod_worker): Remove.
12543         (clone_xmethod_worker): Remove.
12544         (get_matching_xmethod_workers): Return void, pass std::vector by
12545         pointer.
12546         (get_xmethod_arg_types): Rename to...
12547         (xmethod_worker::get_arg_types): ... this, and adjust.
12548         (get_xmethod_result_type): Rename to...
12549         (xmethod_worker::get_result_type): ... this, and adjust.
12550         (invoke_xmethod): Remove.
12551         (free_xmethod_worker): Remove.
12552         (free_xmethod_worker_vec): Remove.
12553         * extension.h (enum ext_lang_rc): Move here from
12554         extension-priv.h.
12555         (struct xmethod_worker): Add constructor and destructor.
12556         <data>: Remove.
12557         <value>: Remove.
12558         <invoke, clone, do_get_result_type, do_get_arg_types>: New
12559         virtual pure methods.
12560         <get_arg_types, get_result_type>: New methods.
12561         (xmethod_worker_ptr): Remove typedef.
12562         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
12563         (xmethod_worker_vec): Remove typedef.
12564         (xmethod_worker_up): New typedef.
12565         (invoke_xmethod): Remove.
12566         (clone_xmethod_worker): Remove.
12567         (free_xmethod_worker): Remove.
12568         (free_xmethod_worker_vec): Remove.
12569         (get_xmethod_arg_types): Remove.
12570         (get_xmethod_result_type): Remove.
12571         * valops.c (find_method_list): Use std::vector, don't use
12572         intermediate vector.
12573         (value_find_oload_method_list): Use std::vector.
12574         (find_overload_match): Use std::vector.
12575         (find_oload_champ): Use std::vector.
12576         * value.c (value_free): Use operator delete.
12577         (value_of_xmethod): Rename to...
12578         (value_from_xmethod): ... this.  Don't assign
12579         xmethod_worker::value, take rvalue-reference.
12580         (result_type_of_xmethod): Adjust.
12581         (call_xmethod): Adjust.
12582         * value.h: Include extension.h.
12583         (struct xmethod_worker): Don't forward-declare.
12584         (value_of_xmethod): Rename to...
12585         (value_from_xmethod): ... this, take rvalue-reference.
12586         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
12587         (struct python_xmethod_worker): ... this, add constructor and
12588         destructor.
12589         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
12590         (gdbpy_free_xmethod_worker_data): Rename to...
12591         (python_xmethod_worker::~python_xmethod_worker): ... this and
12592         adjust.
12593         (gdbpy_clone_xmethod_worker_data): Rename to...
12594         (python_xmethod_worker::clone): ... this and adjust.
12595         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
12596         temporary vector.
12597         (gdbpy_get_xmethod_arg_types): Rename to...
12598         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
12599         (gdbpy_get_xmethod_result_type): Rename to...
12600         (python_xmethod_worker::do_get_result_type): ... this and
12601         adjust.
12602         (gdbpy_invoke_xmethod): Rename to...
12603         (python_xmethod_worker::invoke): ... this and adjust.
12604         (new_python_xmethod_worker): Rename to...
12605         (python_xmethod_worker::python_xmethod_worker): ... this and
12606         adjust.
12607         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
12608         Remove.
12609         (gdbpy_free_xmethod_worker_data): Remove.
12610         (gdbpy_get_matching_xmethod_workers): Use std::vector.
12611         (gdbpy_get_xmethod_arg_types): Remove.
12612         (gdbpy_get_xmethod_result_type): Remove.
12613         (gdbpy_invoke_xmethod): Remove.
12614         * python/python.c (python_extension_ops): Remove obsolete
12615         callbacks.
12616
12617 2018-01-05  Pedro Alves  <palves@redhat.com>
12618
12619         PR gdb/18653
12620         * common/signals-state-save-restore.c
12621         (save_original_signals_state): New parameter 'quiet'.  Warn if we
12622         find a custom handler preinstalled, instead of internal erroring.
12623         But only warn if !quiet.
12624         * common/signals-state-save-restore.h
12625         (save_original_signals_state): New parameter 'quiet'.
12626         * main.c (captured_main_1): Move save_original_signals_state call
12627         after option handling, and pass QUIET.
12628
12629 2018-01-05  Pedro Alves  <palves@redhat.com>
12630
12631         * spu-tdep.c (spu_catch_start): Pass
12632         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
12633
12634 2018-01-05  Pedro Alves  <palves@redhat.com>
12635
12636         PR gdb/22670
12637         * ada-lang.c (literal_symbol_name_matcher): New function.
12638         (ada_get_symbol_name_matcher): Use it for
12639         symbol_name_match_type::SEARCH_NAME.
12640         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
12641         it down instead of assuming symbol_name_match_type::FULL.
12642         * block.h (block_lookup_symbol): New parameter 'match_type'.
12643         * c-valprint.c (print_unpacked_pointer): Use
12644         lookup_symbol_search_name instead of lookup_symbol.
12645         * compile/compile-object-load.c (get_out_value_type): Pass down
12646         symbol_name_match_type::SEARCH_NAME.
12647         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
12648         symbol_name_match_type::FULL.
12649         * cp-support.c (cp_get_symbol_name_matcher): Handle
12650         symbol_name_match_type::SEARCH_NAME.
12651         * infrun.c (insert_exception_resume_breakpoint): Use
12652         lookup_symbol_search_name.
12653         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
12654         * psymtab.c (maintenance_check_psymtabs): Use
12655         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
12656         * stack.c (print_frame_args): Use lookup_symbol_search_name and
12657         SYMBOL_SEARCH_NAME.
12658         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
12659         if symbol_name_match_type::SEARCH_NAME.
12660         (lookup_symbol_in_language): Pass down
12661         symbol_name_match_type::FULL.
12662         (lookup_symbol_search_name): New.
12663         (lookup_language_this): Pass down
12664         symbol_name_match_type::SEARCH_NAME.
12665         (lookup_symbol_aux, lookup_local_symbol): New parameter
12666         'match_type'.  Pass it down.
12667         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
12668         (lookup_symbol_search_name): New declaration.
12669         (lookup_symbol_in_block): New 'match_type' parameter.
12670
12671 2018-01-05  Pedro Alves  <palves@redhat.com>
12672
12673         PR gdb/22670
12674         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
12675         ada_lookup_symbol.
12676         (ada_lookup_symbol): Reimplement in terms of
12677         ada_lookup_symbol_list, bits factored out from
12678         ada_lookup_encoded_symbol.
12679
12680 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
12681
12682         * ada-exp.y (write_object_renaming): When subscripting an array
12683         using a symbol as the index, pass the block in call to
12684         ada_lookup_encoded_symbol when looking that symbol up.
12685
12686 2018-01-05  Jerome Guitton  <guitton@adacore.com>
12687
12688         * ada-lang.c (ada_array_length): Use ada_index_type instead of
12689         TYPE_INDEX_TYPE.
12690
12691 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
12692
12693         * ada-lang.c (ada_to_fixed_value_create): Add handling of
12694         the case where VALUE_LVAL (val0) is not lval_memory.
12695
12696 2018-01-05  Xavier Roirand  <roirand@adacore.com>
12697
12698         * ada-valprint.c (print_optional_low_bound): Handle
12699         character-indexed array printing like boolean-indexed array
12700         printing.
12701
12702 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
12703
12704         * NEWS: Create a new section for the next release branch.
12705         Rename the section of the current branch, now that it has
12706         been cut.
12707
12708 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
12709
12710         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
12711         * version.in: Bump version to 8.1.50.DATE-git.
12712
12713 2018-01-03  Xavier Roirand  <roirand@adacore.com>
12714
12715         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
12716         Add field.
12717         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
12718         Add field.
12719         (default_exception_support_info) <catch_handlers_sym>: Add field.
12720         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
12721         (ada_exception_name_addr_1): Add "catch handlers" handling.
12722         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
12723         Update all callers.
12724         (create_excep_cond_exprs) <ex>: Add parameter.
12725         (re_set_exception): Update create_excep_cond_exprs call.
12726         (print_it_exception, print_one_exception, print_mention_exception)
12727         (print_recreate_exception): Add "catch handler" handling.
12728         (allocate_location_catch_handlers, re_set_catch_handlers)
12729         (check_status_catch_handlers, print_it_catch_handlers)
12730         (print_one_catch_handlers, print_mention_catch_handlers)
12731         (print_recreate_catch_handlers): New function.
12732         (catch_handlers_breakpoint_ops): New variable.
12733         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
12734         Add parameter.  Add "catch handler" handling.
12735         (ada_exception_sym_name, ada_exception_breakpoint_ops):
12736         Add "catch handler" handling.
12737         (ada_exception_catchpoint_cond_string): Add "catch handler"
12738         handling.
12739         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
12740         call.
12741         (catch_ada_handlers_command): New function.
12742         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
12743         operations structure.
12744         (_initialize_ada_language): Add "catch handlers" command entry.
12745         * NEWS: Document "catch handlers" feature.
12746
12747 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
12748
12749         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
12750         account when creating the array type of the slice.
12751         (ada_value_slice): Likewise.
12752
12753 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
12754
12755         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
12756         New enum value.
12757         (create_array_type_with_stride): Add byte_stride_prop parameter.
12758         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
12759         New parameter.  Update all callers in this file.
12760         (array_type_has_dynamic_stride): New function.
12761         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
12762         of arrays with dynamic byte strides.
12763         * dwarf2read.c (read_array_type): Add support for dynamic
12764         DW_AT_byte_stride attributes.
12765
12766 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
12767
12768         * dwarf2read.c (read_unspecified_type): Treat
12769         DW_TAG_enumeration_type DIEs from Ada units as stubs.
12770
12771 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
12772
12773         Update copyright year range in all GDB files.
12774
12775 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
12776
12777         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
12778         and gdb/testsuite/gdb.base/step-line.c.
12779
12780 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
12781
12782         * copyright.py (main): Dump the contents of
12783         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
12784         even if BY_HAND is empty.
12785
12786 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
12787
12788         * top.c (print_gdb_version): Update Copyright year in version
12789         message.
12790
12791 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
12792
12793         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
12794
12795 For older changes see ChangeLog-2017.
12796 \f
12797 Local Variables:
12798 mode: change-log
12799 left-margin: 8
12800 fill-column: 74
12801 version-control: never
12802 coding: utf-8
12803 End: