Remove obsolete comments from Makefiles
[external/binutils.git] / gdb / ChangeLog
1 2018-09-04  Tom Tromey  <tom@tromey.com>
2
3         * gnulib/Makefile.in: Remove obsolete comment.
4         * Makefile.in: Remove obsolete comment.
5
6 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
7
8         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
9         line with '+'.
10
11 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
12
13         * riscv-tdep.c: Add 'prologue-value.h' include.
14         (struct riscv_unwind_cache): New struct.
15         (riscv_debug_unwinder): New global.
16         (riscv_scan_prologue): Update arguments, capture register details
17         from prologue scan.
18         (riscv_skip_prologue): Reformat arguments line, move end of
19         prologue calculation into riscv_scan_prologue.
20         (riscv_frame_cache): Update return type, create
21         riscv_unwind_cache, scan the prologue, and fill in remaining cache
22         details.
23         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
24         (riscv_frame_prev_register): Use the trad_frame within the
25         riscv_unwind_cache.
26         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
27         flag.
28
29 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
30
31         * trad-frame.h (trad_frame_set_realreg): Declare.
32         (trad_frame_set_addr): Declare.
33         * trad-frame.c (trad_frame_set_realreg): Define new function.
34         (trad_frame_set_addr): Define new function.
35         (trad_frame_set_reg_realreg): Use new function.
36         (trad_frame_set_reg_addr): Use new function.
37
38 2018-09-01  Keith Seitz  <keiths@redhat.com>
39
40         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
41         pulongest instead of "%lld".
42         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
43         ATTRIBUTE_UNUSED.
44
45 2018-08-31  Tom Tromey  <tom@tromey.com>
46
47         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
48         variant part type.
49
50 2018-08-31  Pedro Alves  <palves@redhat.com>
51
52         * gdbarch.h: Regenerate.
53
54 2018-08-31  Pedro Alves  <palves@redhat.com>
55
56         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
57         * target.h (Hardware watchpoint interfaces): Describe
58         continuable/steppable/non-steppable watchpoints.
59         * gdbarch.h, gdbarch.c: Regenerate.
60
61 2018-08-31  Pedro Alves  <palves@redhat.com>
62
63         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
64         Delete.
65         * s390-linux-nat.c
66         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
67         * target.h (target_ops::have_continuable_watchpoint): Delete.
68         (target_have_continuable_watchpoint): Delete.
69         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
70         * target-delegates.c: Regenerate.
71
72 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
73
74         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
75         the files present in "gnulib/import/m4/".
76
77 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
78
79         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
80         c.sw, c.swsp, and c.sdsp.
81
82 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
83
84         * riscv-tdep.c (struct riscv_inferior_data): Delete.
85         (riscv_read_misa_reg): Don't cache value read into inferior data.
86         (riscv_new_inferior_data): Delete.
87         (riscv_inferior_data_cleanup): Delete.
88         (riscv_inferior_data): Delete.
89         (riscv_invalidate_inferior_data): Delete.
90         (_initialize_riscv_tdep): Remove initialisation of inferior data.
91
92 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
93
94         * compile/compile-cplus-types.c
95         (compile_cplus_instance::leave_scope): Take the address of scope
96         object.
97         (compile_cplus_instance::convert_qualified_base): Compare quals
98         to 0.
99
100 2018-08-30  Keith Seitz  <keiths@redhat.com>
101
102         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
103         Use "%s" and host_address_to_string instead of "%p" in printf.
104
105 2018-08-29  Keith Seitz  <keiths@redhat.com>
106
107         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
108         and compile-cplus-types.c.
109         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
110         * c-lang.c (cplus_language_defn): Set C++ compile functions.
111         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
112         Declare.
113         * compile/compile-c-support.c: Include compile-cplus.h.
114         (load_libcompile): Templatize.
115         (get_compile_context): "New" function.
116         (c_get_compile_context): Use get_compile_context.
117         (cplus_get_compile_context): New function.
118         (cplus_push_user_expression, cplus_pop_user_expression)
119         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
120         (cplus_compute_program): Define new structs/functions.
121         * compile/compile-cplus-symmbols.c: New file.
122         * compile/compile-cplus-types.c: New file.
123         * compile/compile-cplus.h: New file.
124         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
125         Declare.
126         * compile/compile-object-load.c (get_out_value_type): Use
127         strncmp_iw when comparing symbol names.
128         (compile_object_load): Add mst_bss and mst_data.
129         * compile/compile.c (_initialize_compile): Remove
130         -Wno-implicit-function-declaration from `compile_args'.
131         * compile/gcc-cp-plugin.h: New file.
132         * NEWS: Mention C++ compile support and new debug options.
133
134 2018-08-29  Keith Seitz  <keiths@redhat.com>
135
136         * linespec.c (collect_info::add_symbol): Make virtual.
137         (struct symbol_searcher_collect_info): New struct.
138         (symbol_searcher::find_all_symbols): New method.
139         * symtab.h (class symbol_searcher): New class.
140
141 2018-08-29  Keith Seitz  <keiths@redhat.com>
142
143         * linespec.c (struct linespec) <function_symbols, label_symbols>:
144         Change to vector of block_symbol.  Update all users.
145         (struct collect_info) <symbols>: Likewise.
146         (collect_info::add_symbol): Take block_symbol as argument.
147         Update all callers.
148         (decode_compound_collector) <m_symbols>: Change type to vector
149         of block_symbol.  Update all users.
150         (decode_compound_collector::operator ()): Change parameter type
151         to block_symbol.
152         (find_method, find_function_symbols, find_linespec_symbols)
153         (find_label_symbols_in_block, find_label_symbols): Change symbol
154         vectors to block_symbol vectors.
155         * symtab.h (symbol_found_callback_ftype): Change parameter type to
156         block_symbol.
157
158 2018-08-29  Keith Seitz  <keiths@redhat.com>
159
160         * linespec.c (symbolp): Remove typedef and VEC definitions.
161         (bound_minimal_symbol_d): Likewise.
162
163 2018-08-29  Keith Seitz  <keiths@redhat.com>
164
165         * linespec.c (decode_compound_collector::decode_compound_collector):
166         Remove initialization for `m_symtabs'.
167         (decode_compound_collector::release_symbols): Change return type
168         to std::vector.  Update all callers.
169         (class decode_compound_collector) <m_symbols>: Change type to
170         std::vector.
171         (lookup_prefix_sym): Change return type to std::vector.  Update all
172         callers.
173         (compare_symbols): Remove.
174         (std_compare_symbols): Rename to `compare_symbols'.
175         (find_method): Change `sym_classes' parameter to std::vector.
176         Update all callers.  Use std::sort to sort sym_classes.
177         (find_linespec_symbols): Remove cleanup.
178
179 2018-08-29  Keith Seitz  <keiths@redhat.com>
180
181         * linespec.c (struct linespec) <minimal_symbols>: Change type to
182         std::vector.  Update all users.
183         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
184         (struct collect_info) <minimal_symbols>: Likewise.
185         (compare_msymbols): Return bool.  Change parameters to const
186         bound_minimal_symbol references.
187         (find_method, find_function_symbols, find_linespec_symbols): Change
188         `minsyms' parameter to std::vector.  Update all callers.
189
190 2018-08-29  Keith Seitz  <keiths@redhat.com>
191
192         * linespec.c (struct linespec) <label_symbols>: Change type to
193         std::vector.  Update all users.
194         (find_label_symbols_in_block): Change `result' parameter to
195         std::vector.  Update all callers.
196         (find_label_symbols): Return std::vector.  Update all callers.
197
198 2018-08-29  Keith Seitz  <keiths@redhat.com>
199
200         * linespec.c (struct linespec) <function_symbols>: Change type to
201         std::vector.  Update all users.
202         (struct collect_info) <function_symbols>: Likewise.
203         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
204         (std_compare_symbols): New function.
205         (find_method, find_function_symbols, find_linespec_symbols)
206         (find_label_symbols_in_block): Change `symbols' parameter to
207         std::vector.  Update all callers.
208         (find_label_symbols): Likewise for `function_symbols' and
209         `label_funcs_ret'.
210
211 2018-08-29  Keith Seitz  <keiths@redhat.com>
212
213         * linespec.c (symtab_vector_up): Define.
214         (struct linespec) <file_symtabs>: Change type to std::vector *.
215         Update all uses.
216         (struct collect_info) <file_symtabs>: Likewise.
217         (collect_symtabs_from_filename): Return symtab_vector_up.
218         Update all callers.
219         (decode_objc): Remove cleanup.
220         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
221         (symtab_collector::release_symtabs): Return symtab_vector_up.
222         Update all callers.
223         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
224         Update all users.
225         (collect_symtabs_from_filename, symtabs_from_filename): Return
226         symtab_vector_up.  Update all callers.
227
228 2018-08-29  Tom Tromey  <tom@tromey.com>
229
230         * csky-tdep.c (csky_analyze_prologue): Use
231         core_addr_to_string_nz.
232
233 2018-08-29  Tom Tromey  <tom@tromey.com>
234
235         * windows-nat.c (struct xlate_exception) <them>: Change type to
236         DWORD.
237         (xlate): Fix formatting.  Remove last entry.
238         (struct xlate_exception, xlate): Comment out.
239         (windows_nat_target::resume): Use ranged for.
240
241 2018-08-29  Jim Wilson  <jimw@sifive.com>
242
243         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
244         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
245         of NT_PRFPREG.
246         (riscv_linux_nat_target::store_registers): Likewise.
247
248 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
249
250         PR gdb/23555
251         PR gdb/23558
252         * gnulib/aclocal.m4: Regenerate.
253         * gnulib/config.in: Regenerate.
254         * gnulib/configure: Regenerate.
255         * gnulib/import/Makefile.am: Update.
256         * gnulib/import/Makefile.in: Update.
257         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
258         * gnulib/import/_Noreturn.h: ... this.
259         * gnulib/import/alloca.in.h: Update.
260         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
261         * gnulib/import/arg-nonnull.h: ... this.
262         * gnulib/import/assure.h: Update.
263         * gnulib/import/at-func.c: Update.
264         * gnulib/import/basename-lgpl.c: Update.
265         * gnulib/import/extra/snippet/c++defs.h: Rename to...
266         * gnulib/import/c++defs.h: ... this.
267         * gnulib/import/canonicalize-lgpl.c: Update.
268         * gnulib/import/cdefs.h: Update.
269         * gnulib/import/chdir-long.c: Update.
270         * gnulib/import/chdir-long.h: Update.
271         * gnulib/import/cloexec.c: Update.
272         * gnulib/import/cloexec.h: Update.
273         * gnulib/import/close.c: Update.
274         * gnulib/import/closedir.c: Update.
275         * gnulib/import/config.charset: Update.
276         * gnulib/import/dirent-private.h: Update.
277         * gnulib/import/dirent.in.h: Update.
278         * gnulib/import/dirfd.c: Update.
279         * gnulib/import/dirname-lgpl.c: Update.
280         * gnulib/import/dirname.h: Update.
281         * gnulib/import/dosname.h: Update.
282         * gnulib/import/dup-safer-flag.c: Update.
283         * gnulib/import/dup-safer.c: Update.
284         * gnulib/import/dup.c: Update.
285         * gnulib/import/dup2.c: Update.
286         * gnulib/import/errno.in.h: Update.
287         * gnulib/import/error.c: Update.
288         * gnulib/import/error.h: Update.
289         * gnulib/import/exitfail.c: Update.
290         * gnulib/import/exitfail.h: Update.
291         * gnulib/import/extra/update-copyright: Update.
292         * gnulib/import/fchdir.c: Update.
293         * gnulib/import/fcntl.c: Update.
294         * gnulib/import/fcntl.in.h: Update.
295         * gnulib/import/fd-hook.c: Update.
296         * gnulib/import/fd-hook.h: Update.
297         * gnulib/import/fd-safer-flag.c: Update.
298         * gnulib/import/fd-safer.c: Update.
299         * gnulib/import/fdopendir.c: Update.
300         * gnulib/import/filename.h: Update.
301         * gnulib/import/filenamecat-lgpl.c: Update.
302         * gnulib/import/filenamecat.h: Update.
303         * gnulib/import/flexmember.h: Update.
304         * gnulib/import/float+.h: Update.
305         * gnulib/import/float.c: Update.
306         * gnulib/import/float.in.h: Update.
307         * gnulib/import/fnmatch.c: Update.
308         * gnulib/import/fnmatch.in.h: Update.
309         * gnulib/import/fnmatch_loop.c: Update.
310         * gnulib/import/fpucw.h: Update.
311         * gnulib/import/frexp.c: Update.
312         * gnulib/import/frexpl.c: Update.
313         * gnulib/import/fstat.c: Update.
314         * gnulib/import/fstatat.c: Update.
315         * gnulib/import/getcwd-lgpl.c: Update.
316         * gnulib/import/getcwd.c: Update.
317         * gnulib/import/getdtablesize.c: Update.
318         * gnulib/import/getlogin_r.c: Update.
319         * gnulib/import/getprogname.c: Update.
320         * gnulib/import/getprogname.h: Update.
321         * gnulib/import/gettext.h: Update.
322         * gnulib/import/gettimeofday.c: Update.
323         * gnulib/import/glob-libc.h: Update.
324         * gnulib/import/glob.c: Update.
325         * gnulib/import/glob.in.h: Update.
326         * gnulib/import/glob_internal.h: Update.
327         * gnulib/import/glob_pattern_p.c: Update.
328         * gnulib/import/globfree.c: Update.
329         * gnulib/import/hard-locale.c: Update.
330         * gnulib/import/hard-locale.h: Update.
331         * gnulib/import/intprops.h: Update.
332         * gnulib/import/inttypes.in.h: Update.
333         * gnulib/import/isnan.c: Update.
334         * gnulib/import/isnand-nolibm.h: Update.
335         * gnulib/import/isnand.c: Update.
336         * gnulib/import/isnanl-nolibm.h: Update.
337         * gnulib/import/isnanl.c: Update.
338         * gnulib/import/itold.c: Update.
339         * gnulib/import/libc-config.h: Update.
340         * gnulib/import/limits.in.h: Update.
341         * gnulib/import/localcharset.c: Update.
342         * gnulib/import/localcharset.h: Update.
343         * gnulib/import/localtime-buffer.c: Update.
344         * gnulib/import/localtime-buffer.h: Update.
345         * gnulib/import/lstat.c: Update.
346         * gnulib/import/m4/00gnulib.m4: Update.
347         * gnulib/import/m4/__inline.m4: Update.
348         * gnulib/import/m4/absolute-header.m4: Update.
349         * gnulib/import/m4/alloca.m4: Update.
350         * gnulib/import/m4/builtin-expect.m4: Update.
351         * gnulib/import/m4/canonicalize.m4: Update.
352         * gnulib/import/m4/chdir-long.m4: Update.
353         * gnulib/import/m4/close.m4: Update.
354         * gnulib/import/m4/closedir.m4: Update.
355         * gnulib/import/m4/configmake.m4: Update.
356         * gnulib/import/m4/d-ino.m4: Update.
357         * gnulib/import/m4/d-type.m4: Update.
358         * gnulib/import/m4/dirent_h.m4: Update.
359         * gnulib/import/m4/dirfd.m4: Update.
360         * gnulib/import/m4/dirname.m4: Update.
361         * gnulib/import/m4/double-slash-root.m4: Update.
362         * gnulib/import/m4/dup.m4: Update.
363         * gnulib/import/m4/dup2.m4: Update.
364         * gnulib/import/m4/eealloc.m4: Update.
365         * gnulib/import/m4/environ.m4: Update.
366         * gnulib/import/m4/errno_h.m4: Update.
367         * gnulib/import/m4/error.m4: Update.
368         * gnulib/import/m4/exponentd.m4: Update.
369         * gnulib/import/m4/exponentl.m4: Update.
370         * gnulib/import/m4/extensions.m4: Update.
371         * gnulib/import/m4/extern-inline.m4: Update.
372         * gnulib/import/m4/fchdir.m4: Update.
373         * gnulib/import/m4/fcntl-o.m4: Update.
374         * gnulib/import/m4/fcntl.m4: Update.
375         * gnulib/import/m4/fcntl_h.m4: Update.
376         * gnulib/import/m4/fdopendir.m4: Update.
377         * gnulib/import/m4/filenamecat.m4: Update.
378         * gnulib/import/m4/flexmember.m4: Update.
379         * gnulib/import/m4/float_h.m4: Update.
380         * gnulib/import/m4/fnmatch.m4: Update.
381         * gnulib/import/m4/fnmatch_h.m4: Update.
382         * gnulib/import/m4/fpieee.m4: Update.
383         * gnulib/import/m4/frexp.m4: Update.
384         * gnulib/import/m4/frexpl.m4: Update.
385         * gnulib/import/m4/fstat.m4: Update.
386         * gnulib/import/m4/fstatat.m4: Update.
387         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
388         * gnulib/import/m4/getcwd-path-max.m4: Update.
389         * gnulib/import/m4/getcwd.m4: Update.
390         * gnulib/import/m4/getdtablesize.m4: Update.
391         * gnulib/import/m4/getlogin.m4: Update.
392         * gnulib/import/m4/getlogin_r.m4: Update.
393         * gnulib/import/m4/getpagesize.m4: Update.
394         * gnulib/import/m4/getprogname.m4: Update.
395         * gnulib/import/m4/gettimeofday.m4: Update.
396         * gnulib/import/m4/glibc21.m4: Update.
397         * gnulib/import/m4/glob.m4: Update.
398         * gnulib/import/m4/glob_h.m4: Update.
399         * gnulib/import/m4/gnulib-cache.m4: Update.
400         * gnulib/import/m4/gnulib-common.m4: Update.
401         * gnulib/import/m4/gnulib-comp.m4: Update.
402         * gnulib/import/m4/gnulib-tool.m4: Update.
403         * gnulib/import/m4/hard-locale.m4: Update.
404         * gnulib/import/m4/include_next.m4: Update.
405         * gnulib/import/m4/inttypes-pri.m4: Update.
406         * gnulib/import/m4/inttypes.m4: Update.
407         * gnulib/import/m4/isnand.m4: Update.
408         * gnulib/import/m4/isnanl.m4: Update.
409         * gnulib/import/m4/largefile.m4: Update.
410         * gnulib/import/m4/limits-h.m4: Update.
411         * gnulib/import/m4/localcharset.m4: Update.
412         * gnulib/import/m4/locale-fr.m4: Update.
413         * gnulib/import/m4/locale-ja.m4: Update.
414         * gnulib/import/m4/locale-zh.m4: Update.
415         * gnulib/import/m4/localtime-buffer.m4: Update.
416         * gnulib/import/m4/longlong.m4: Update.
417         * gnulib/import/m4/lstat.m4: Update.
418         * gnulib/import/m4/malloc.m4: Update.
419         * gnulib/import/m4/malloca.m4: Update.
420         * gnulib/import/m4/math_h.m4: Update.
421         * gnulib/import/m4/mbrtowc.m4: Update.
422         * gnulib/import/m4/mbsinit.m4: Update.
423         * gnulib/import/m4/mbsrtowcs.m4: Update.
424         * gnulib/import/m4/mbstate_t.m4: Update.
425         * gnulib/import/m4/memchr.m4: Update.
426         * gnulib/import/m4/memmem.m4: Update.
427         * gnulib/import/m4/mempcpy.m4: Update.
428         * gnulib/import/m4/memrchr.m4: Update.
429         * gnulib/import/m4/mkdir.m4: Update.
430         * gnulib/import/m4/mkstemp.m4: Update.
431         * gnulib/import/m4/mmap-anon.m4: Update.
432         * gnulib/import/m4/mode_t.m4: Update.
433         * gnulib/import/m4/msvc-inval.m4: Update.
434         * gnulib/import/m4/msvc-nothrow.m4: Update.
435         * gnulib/import/m4/multiarch.m4: Update.
436         * gnulib/import/m4/nocrash.m4: Update.
437         * gnulib/import/m4/off_t.m4: Update.
438         * gnulib/import/m4/onceonly.m4: Update.
439         * gnulib/import/m4/open-cloexec.m4: Update.
440         * gnulib/import/m4/open.m4: Update.
441         * gnulib/import/m4/openat.m4: Update.
442         * gnulib/import/m4/opendir.m4: Update.
443         * gnulib/import/m4/pathmax.m4: Update.
444         * gnulib/import/m4/rawmemchr.m4: Update.
445         * gnulib/import/m4/readdir.m4: Update.
446         * gnulib/import/m4/readlink.m4: Update.
447         * gnulib/import/m4/realloc.m4: Update.
448         * gnulib/import/m4/rename.m4: Update.
449         * gnulib/import/m4/rewinddir.m4: Update.
450         * gnulib/import/m4/rmdir.m4: Update.
451         * gnulib/import/m4/save-cwd.m4: Update.
452         * gnulib/import/m4/secure_getenv.m4: Update.
453         * gnulib/import/m4/setenv.m4: Update.
454         * gnulib/import/m4/signal_h.m4: Update.
455         * gnulib/import/m4/ssize_t.m4: Update.
456         * gnulib/import/m4/stat-time.m4: Update.
457         * gnulib/import/m4/stat.m4: Update.
458         * gnulib/import/m4/std-gnu11.m4: Update.
459         * gnulib/import/m4/stdbool.m4: Update.
460         * gnulib/import/m4/stddef_h.m4: Update.
461         * gnulib/import/m4/stdint.m4: Update.
462         * gnulib/import/m4/stdio_h.m4: Update.
463         * gnulib/import/m4/stdlib_h.m4: Update.
464         * gnulib/import/m4/strchrnul.m4: Update.
465         * gnulib/import/m4/strdup.m4: Update.
466         * gnulib/import/m4/strerror.m4: Update.
467         * gnulib/import/m4/string_h.m4: Update.
468         * gnulib/import/m4/strstr.m4: Update.
469         * gnulib/import/m4/strtok_r.m4: Update.
470         * gnulib/import/m4/sys_socket_h.m4: Update.
471         * gnulib/import/m4/sys_stat_h.m4: Update.
472         * gnulib/import/m4/sys_time_h.m4: Update.
473         * gnulib/import/m4/sys_types_h.m4: Update.
474         * gnulib/import/m4/tempname.m4: Update.
475         * gnulib/import/m4/time_h.m4: Update.
476         * gnulib/import/m4/unistd-safer.m4: Update.
477         * gnulib/import/m4/unistd_h.m4: Update.
478         * gnulib/import/m4/warn-on-use.m4: Update.
479         * gnulib/import/m4/wchar_h.m4: Update.
480         * gnulib/import/m4/wchar_t.m4: Update.
481         * gnulib/import/m4/wctype_h.m4: Update.
482         * gnulib/import/m4/wint_t.m4: Update.
483         * gnulib/import/malloc.c: Update.
484         * gnulib/import/malloc/scratch_buffer.h: Update.
485         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
486         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
487         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
488         * gnulib/import/malloca.c: Update.
489         * gnulib/import/malloca.h: Update.
490         * gnulib/import/malloca.valgrind: Update.
491         * gnulib/import/math.in.h: Update.
492         * gnulib/import/mbrtowc.c: Update.
493         * gnulib/import/mbsinit.c: Update.
494         * gnulib/import/mbsrtowcs-impl.h: Update.
495         * gnulib/import/mbsrtowcs-state.c: Update.
496         * gnulib/import/mbsrtowcs.c: Update.
497         * gnulib/import/memchr.c: Update.
498         * gnulib/import/memmem.c: Update.
499         * gnulib/import/mempcpy.c: Update.
500         * gnulib/import/memrchr.c: Update.
501         * gnulib/import/mkdir.c: Update.
502         * gnulib/import/mkstemp.c: Update.
503         * gnulib/import/msvc-inval.c: Update.
504         * gnulib/import/msvc-inval.h: Update.
505         * gnulib/import/msvc-nothrow.c: Update.
506         * gnulib/import/msvc-nothrow.h: Update.
507         * gnulib/import/open.c: Update.
508         * gnulib/import/openat-die.c: Update.
509         * gnulib/import/openat-priv.h: Update.
510         * gnulib/import/openat-proc.c: Update.
511         * gnulib/import/openat.c: Update.
512         * gnulib/import/openat.h: Update.
513         * gnulib/import/opendir.c: Update.
514         * gnulib/import/pathmax.h: Update.
515         * gnulib/import/pipe-safer.c: Update.
516         * gnulib/import/rawmemchr.c: Update.
517         * gnulib/import/readdir.c: Update.
518         * gnulib/import/readlink.c: Update.
519         * gnulib/import/realloc.c: Update.
520         * gnulib/import/ref-add.sin: Update.
521         * gnulib/import/ref-del.sin: Update.
522         * gnulib/import/rename.c: Update.
523         * gnulib/import/rewinddir.c: Update.
524         * gnulib/import/rmdir.c: Update.
525         * gnulib/import/same-inode.h: Update.
526         * gnulib/import/save-cwd.c: Update.
527         * gnulib/import/save-cwd.h: Update.
528         * gnulib/import/scratch_buffer.h: Update.
529         * gnulib/import/secure_getenv.c: Update.
530         * gnulib/import/setenv.c: Update.
531         * gnulib/import/signal.in.h: Update.
532         * gnulib/import/stat-time.c: Update.
533         * gnulib/import/stat-time.h: Update.
534         * gnulib/import/stat-w32.c: Update.
535         * gnulib/import/stat-w32.h: Update.
536         * gnulib/import/stat.c: Update.
537         * gnulib/import/stdbool.in.h: Update.
538         * gnulib/import/stddef.in.h: Update.
539         * gnulib/import/stdint.in.h: Update.
540         * gnulib/import/stdio.in.h: Update.
541         * gnulib/import/stdlib.in.h: Update.
542         * gnulib/import/str-two-way.h: Update.
543         * gnulib/import/strchrnul.c: Update.
544         * gnulib/import/strdup.c: Update.
545         * gnulib/import/streq.h: Update.
546         * gnulib/import/strerror-override.c: Update.
547         * gnulib/import/strerror-override.h: Update.
548         * gnulib/import/strerror.c: Update.
549         * gnulib/import/string.in.h: Update.
550         * gnulib/import/stripslash.c: Update.
551         * gnulib/import/strnlen1.c: Update.
552         * gnulib/import/strnlen1.h: Update.
553         * gnulib/import/strstr.c: Update.
554         * gnulib/import/strtok_r.c: Update.
555         * gnulib/import/sys_stat.in.h: Update.
556         * gnulib/import/sys_time.in.h: Update.
557         * gnulib/import/sys_types.in.h: Update.
558         * gnulib/import/tempname.c: Update.
559         * gnulib/import/tempname.h: Update.
560         * gnulib/import/time.in.h: Update.
561         * gnulib/import/unistd--.h: Update.
562         * gnulib/import/unistd-safer.h: Update.
563         * gnulib/import/unistd.in.h: Update.
564         * gnulib/import/unsetenv.c: Update.
565         * gnulib/import/verify.h: Update.
566         * gnulib/import/extra/snippet/warn-on-use.h: Update.
567         * gnulib/import/wchar.in.h: Update.
568         * gnulib/import/wctype.in.h: Update.
569         * gnulib/import/xalloc-oversized.h: Update.
570         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
571         "53e2c179f26a890fa6685af4b6c1397ee370433b".
572
573 2018-08-16  Gary Benson <gbenson@redhat.com>
574
575         PR gdb/13000:
576         * gdb/main.c (captured_main_1): Exit with nonzero status
577         in batch mode if the last command to be executed failed.
578         * NEWS: Mention the above.
579
580 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
581
582         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
583         end of warning message.
584
585 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
586
587         PR gdb/22943:
588         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
589         (aarch64_extract_return_value): Use
590         aapcs_is_vfp_call_or_return_candidate.
591         (aarch64_return_in_memory): Likewise.
592         (aarch64_store_return_value): Likewise.
593
594 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
595
596         * aarch64-tdep.c
597         (aapcs_is_vfp_call_or_return_candidate): Make static
598         (pass_in_v_or_stack): Remove function.
599         (pass_in_v_vfp_candidate): New function.
600         (aarch64_push_dummy_call): Check for float register candidates.
601
602 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
603
604         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
605         (aapcs_is_vfp_call_or_return_candidate_1): New function.
606         (aapcs_is_vfp_call_or_return_candidate): Likewise.
607
608 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
609
610         PR build/23399
611         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
612         (struct ipa_sym_addresses): Rename to...
613         (struct ipa_sym_addresses_common): ... this.
614         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
615
616 2018-08-28  Tom Tromey  <tom@tromey.com>
617
618         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
619         (token_fifo): Now a std::vector.
620         (yylex, c_parse): Update.
621         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
622         (token_fifo): Now a std::vector.
623         (yylex, d_parse): Update.
624         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
625         (token_fifo): Now a std::vector.
626         (yylex, go_parse): Update.
627
628 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
629
630         * parser-defs.h (struct type_stack) <elements>: Change type to
631         std::vector<union type_stack_elt>.
632         <depth, size>: Remove.
633         * parse.c (parse_exp_in_context_1): Adjust.
634         (type_stack_reserve): Remove.
635         (check_type_stack_depth): Remove.
636         (insert_into_type_stack): Adjust to std::vector.
637         (insert_type): Likewise.
638         (push_type): Likewise.
639         (push_type_int): Likewise.
640         (insert_type_address_space): Likewise.
641         (pop_type): Likewise.
642         (pop_type_int): Likewise.
643         (pop_typelist): Likewise.
644         (pop_type_stack): Likewise.
645         (append_type_stack): Likewise.
646         (push_type_stack): Likewise.
647         (get_type_stack): Likewise.
648         (type_stack_cleanup): Likewise.
649         (push_typelist): Likewise.
650         (follow_types): Likewise.
651         (_initialize_parse): Likewise.
652
653 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
654
655         * NEWS: Mention csky target.
656
657 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
658             Hafiz Abid Qadeer  <abidh@codesourcery.com>
659             Don Breazeal  <donb@codesourcery.com>
660
661         * csky-linux-tdep.c: New file.
662         * csky-tdep.c: Likewise.
663         * csky-tdep.h: Likewise.
664         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
665         csky-tdep.o.
666         (HFILES_NO_SRCDIR): Add csky-tdep.h.
667         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
668         * configure.tgt: Add csky support.
669
670 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
671
672         * python/py-framefilter.c (py_print_frame): Print frame architecture
673         when printing on an MI output.
674
675 2018-08-27  Tom Tromey  <tom@tromey.com>
676
677         PR build/23087:
678         * configure: Rebuild.
679         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
680
681 2018-08-27  Tom Tromey  <tom@tromey.com>
682
683         * aarch64-linux-tdep.c
684         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
685         casts to int.
686
687 2018-08-27  Tom Tromey  <tom@tromey.com>
688
689         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
690         unsigned.
691         (ppc64_standard_linkage1, ppc64_standard_linkage2)
692         (ppc64_standard_linkage3, ppc64_standard_linkage4)
693         (ppc64_standard_linkage5, ppc64_standard_linkage6)
694         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
695         unsigned.
696
697 2018-08-27  Tom Tromey  <tom@tromey.com>
698
699         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
700         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
701
702 2018-08-27  Tom Tromey  <tom@tromey.com>
703
704         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
705         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
706         ULONGEST_MAX.
707         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
708         ULONGEST_MAX.
709         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
710         ULONGEST_MAX.
711         * sparc-linux-tdep.c (sparc32_linux_sigframe)
712         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
713         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
714         ULONGEST_MAX.
715         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
716         (ppc64_linux_sigaction_tramp_frame)
717         (ppc32_linux_sighandler_tramp_frame)
718         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
719         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
720         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
721         * mn10300-linux-tdep.c (am33_linux_sigframe)
722         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
723         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
724         * mips-linux-tdep.c (mips_linux_o32_sigframe)
725         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
726         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
727         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
728         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
729         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
730         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
731         * microblaze-linux-tdep.c
732         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
733         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
734         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
735         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
736         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
737         * common/common-types.h (ULONGEST_MAX): New define.
738         (CORE_ADDR_MAX): Fix formatting.
739         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
740         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
741         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
742         (arm_linux_rt_sigreturn_tramp_frame)
743         (arm_eabi_linux_sigreturn_tramp_frame)
744         (arm_eabi_linux_rt_sigreturn_tramp_frame)
745         (thumb2_eabi_linux_sigreturn_tramp_frame)
746         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
747         (arm_linux_restart_syscall_tramp_frame)
748         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
749         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
750         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
751         ULONGEST_MAX.
752         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
753
754 2018-08-27  Tom Tromey  <tom@tromey.com>
755
756         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
757         CORE_ADDR_MAX.
758         * mips-tdep.c (mips_deal_with_atomic_sequence)
759         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
760         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
761         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
762         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
763         CORE_ADDR_MAX.
764         * aarch64-tdep.c (aarch64_software_single_step): Use
765         CORE_ADDR_MAX.
766
767 2018-08-27  Tom Tromey  <tom@tromey.com>
768
769         * linespec.c (complete_linespec_component): Add cast to "char".
770         * completer.c (completion_tracker::build_completion_result): Add
771         cast to "char".
772
773 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
774
775         * solist.h (struct solist, struct target_so_ops): Fix
776         indentation.
777
778 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
779
780         * ada-tasks.c (ada_task_info_s): Remove typedef.
781         (DEF_VEC_O(ada_task_info_s)): Remove.
782         (struct ada_tasks_inferior_data): Initialize fields.
783         <task_list>: Make an std::vector.
784         (get_ada_tasks_inferior_data): Allocate with new.
785         (ada_get_task_number): Adjust.
786         (get_task_number_from_id): Likewise.
787         (valid_task_id): Likewise.
788         (ada_get_task_info_from_ptid): Likewise.
789         (iterate_over_live_ada_tasks): Likewise.
790         (add_ada_task): Likewise.
791         (read_known_tasks): Likewise.
792         (ada_build_task_list): Likewise.
793         (print_ada_task_info): Likewise.
794         (info_task): Likewise.
795         (task_command_1): Likewise.
796
797 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
798
799         * ada-lang.c (add_angle_brackets): Return std::string.
800
801 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
802
803         * python/py-threadevent.c (py_get_event_thread): Initialize
804         pythread.
805
806 2018-08-24  Pedro Alves  <palves@redhat.com>
807
808         * python/py-bpevent.c (create_breakpoint_event_object): Use
809         copy-initialization.
810         * python/py-continueevent.c (emit_continue_event): Use
811         copy-initialization.
812         * python/py-exitedevent.c (create_exited_event_object): Return a
813         gdbpy_ref<>.
814         (emit_exited_event): Use copy-initialization.
815         * python/py-inferior.c (python_new_inferior)
816         (python_inferior_deleted, add_thread_object): Use
817         copy-initialization.
818         * python/py-infevents.c (create_inferior_call_event_object)
819         (create_register_changed_event_object)
820         (create_memory_changed_event_object): Return a gdbpy_ref<>.
821         (emit_inferior_call_event, emit_memory_changed_event)
822         (emit_register_changed_event): Use copy-initialization.
823         * python/py-newobjfileevent.c (create_new_objfile_event_object):
824         Return a gdbpy_ref<>.
825         (emit_new_objfile_event): Use copy-initialization.
826         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
827         (emit_clear_objfiles_event): Use copy-initialization.
828         * python/py-signalevent.c (create_signal_event_object): Use
829         copy-initialization.
830         * python/py-threadevent.c (create_thread_event_object): Use
831         copy-initialization.
832
833 2018-08-24  Pedro Alves  <palves@redhat.com>
834             Simon Marchi  <simon.marchi@ericsson.com>
835
836         PR gdb/23379
837         * python/py-continueevent.c: Include "gdbthread.h".
838         (create_continue_event_object): Add intro comment.  Add 'ptid'
839         parameter.  Use it to find thread to pass to
840         create_thread_event_object.
841         (emit_continue_event): Pass PTID down to
842         create_continue_event_object.
843         * python/py-event.h (py_get_event_thread): Declare.
844         (create_thread_event_object): Remove default from 'thread'
845         parameter.
846         * python/py-stopevent.c (create_stop_event_object): Use
847         py_get_event_thread.
848         * python/py-threadevent.c (get_event_thread): Rename to ...
849         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
850         and use it to find the thread.
851         (create_thread_event_object): Assert that THREAD isn't null.
852         Don't find the event thread here.
853
854 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
855
856         * block.h (blockrange, blockranges): New struct declarations.
857         (struct block): Add new field named `ranges'.
858         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
859         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
860         macros for accessing ranges in struct block.
861         (make_blockranges): New declaration.
862         block.c (make_blockranges): New function.
863         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
864         for block.
865         * symtab.h (find_pc_partial_function): Add new parameter `block'.
866         * blockframe.c (cache_pc_function_block): New static global.
867         (clear_pc_function_cache): Clear cache_pc_function_block.
868         (find_pc_partial_function): Move comment to symtab.h.  Add
869         support for non-contiguous blocks.
870         * cli/cli-cmds.c (block.h): Include.
871         (print_disassembly): Handle printing of non-contiguous blocks.
872         (disassemble_current_function): Likewise.
873         (disassemble_command): Likewise.
874
875         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
876         BLOCK_START.
877         * blockframe.c (get_pc_function_start): Likewise.
878         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
879         (gcc_symbol_address): Likewise.
880         * compile/compile-object-run.c (compile_object_run): Likewise.
881         * compile/compile.c (get_expr_block_and_pc): Likewise.
882         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
883         (func_addr_to_tail_call_list): Likewise.
884         * findvar.c (default_read_var_value): Likewise.
885         * inline-frame.c (inline_frame_this_id): Likewise.
886         (skip-inline_frames): Likewise.
887         * infcmd.c (until_next_command): Likewise.
888         * linespec.c (convert_linespec_to_sals): Likewise.
889         * parse.c (parse_exp_in_context_1): Likewise.
890         * printcmd.c (build_address_symbolic): likewise.
891         (info_address_command): Likewise.
892         symtab.c (find_function_start_sal): Likewise.
893         (skip_prologue_sal): Likewise.
894         (find_function_alias_target): Likewise.
895         (find_gnu_ifunc): Likewise.
896         * stack.c (find_frame_funname): Likewise.
897         * symtab.c (fixup_symbol_section): Likewise.
898         (find_function_start_sal): Likewise.
899         (skip_prologue_sal): Likewsie.
900         (find_function_alias_target): Likewise.
901         (find_gnu_ifunc): Likewise.
902         * tracepoint.c (info_scope_command): Likewise.
903         * value.c (value_fn_field): Likewise.
904
905         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
906         in place of find_pc_partial_function.
907         * blockframe.c (find_function_entry_range_from_pc): New function.
908         * symtab.h (find_function_entry_range_from_pc): Declare and document.
909         * objfiles.c (objfile_relocate1): Relocate start and end addresses
910         for each range in a block.
911
912
913 2018-08-23  Xavier Roirand  <roirand@adacore.com>
914
915         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
916         incrementation.
917
918 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
919
920         * solib-svr4.c (read_program_headers_from_bfd): Return
921         gdb::optional<gdb::byte_vector>.
922         (svr4_exec_displacement): Adjust.
923
924 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
925
926         * solib-svr4.c (read_program_header): Return
927         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
928         (find_program_interpreter): Return
929         gdb::optional<gdb::byte_vector>.
930         (scan_dyntag_auxv): Adjust.
931         (enable_break): Adjust.
932         (svr4_exec_displacement): Adjust.
933
934 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
935
936         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
937         * inf-child.c (inf_child_target::terminal_save_inferior): New.
938
939 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
940
941         * guile/scm-string.c (gdbscm_scm_from_printf): Use
942         string_vprintf.
943         * guile/scm-utils.c (gdbscm_printf): Likewise.
944         * serial.c (serial_printf): Likewise.
945         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
946
947 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
948
949         * stack.c (print_frame): Print frame architecture when printing on
950         an MI output.
951         * NEWS: Mention new "arch" attribute in frame output.
952
953 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
954
955         * arch/aarch64.h (aarch64_regnum): Update comment.
956
957 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
958
959         * NEWS: Add SVE to 8.2 section.
960
961 2018-08-21  Pedro Alves  <palves@redhat.com>
962
963         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
964         out from gdbscm_parse_function_args.
965         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
966         gdbscm_parse_function_args_1.
967
968 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
969
970         PR gdb/17816
971         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
972         operator.
973
974 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
975
976         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
977
978 2018-08-19  Michael Spang  <spang@google.com>
979
980         PR gdb/11786
981         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
982         for PT_TLS segments.
983
984 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
985
986         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
987         dwarf_variable_value.
988         * dwarf2-frame.c (class dwarf_expr_executor):
989         Add override for dwarf_variable_value.
990         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
991         (class symbol_needs_eval_context): Likewise.
992         (indirect_synthetic_pointer): Add forward declaration.
993         (sect_variable_value): New function.
994         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
995         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
996         for DW_OP_GNU_variable_value.
997
998 2018-08-16  Tom Tromey  <tom@tromey.com>
999
1000         * top.c (read_command_file): Update.
1001         (command_line_input): Remove "repeat" argument.
1002         * ada-lang.c (get_selections): Update.
1003         * linespec.c (decode_line_2): Update.
1004         * defs.h (command_line_input): Remove argument.
1005         * cli/cli-script.c (read_next_line): Update.
1006         * python/py-gdb-readline.c: Update.
1007
1008 2018-08-17  Tom Tromey  <tom@tromey.com>
1009
1010         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
1011         command_line_input.
1012
1013 2018-08-15  Tom Tromey  <tom@tromey.com>
1014
1015         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
1016
1017 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
1018
1019         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
1020         If used, use find_pc_partial_function to find address range
1021         to disassemble.
1022         * mi/mi-main.c (mi_cmd_list_features): Report
1023         "data-disassemble-a-option" feature.
1024         * NEWS: Mention new -data-disassemble option -a.
1025
1026 2018-08-13  Tom Tromey  <tom@tromey.com>
1027
1028         * common/common-defs.h (_FORTIFY_SOURCE): Define.
1029
1030 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
1031
1032         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
1033         (aarch64_linux_collect_sve_regset): Likewise.
1034         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
1035         * regcache.h (regcache_map_entry_size): New function.
1036
1037 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
1038
1039         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
1040         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
1041         (SVE_HEADER_VL_LENGTH): Likewise.
1042         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
1043         (SVE_HEADER_FLAGS_LENGTH): Likewise.
1044         (SVE_HEADER_RESERVED_LENGTH): Likewise.
1045         (SVE_HEADER_SIZE_OFFSET): Likewise.
1046         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
1047         (SVE_HEADER_VL_OFFSET): Likewise.
1048         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
1049         (SVE_HEADER_FLAGS_OFFSET): Likewise.
1050         (SVE_HEADER_RESERVED_OFFSET): Likewise.
1051         (SVE_HEADER_SIZE): Likewise.
1052         (aarch64_linux_core_read_vq): Add function.
1053         (aarch64_linux_core_read_description): Check for SVE section.
1054
1055 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
1056
1057         * aarch64-fbsd-tdep.c
1058         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
1059         collect_size.
1060         * aarch64-linux-tdep.c
1061         (aarch64_linux_iterate_over_regset_sections): Likewise.
1062         * alpha-linux-tdep.c
1063         (alpha_linux_iterate_over_regset_sections):
1064         * alpha-nbsd-tdep.c
1065         (alphanbsd_iterate_over_regset_sections): Likewise.
1066         * amd64-fbsd-tdep.c
1067         (amd64fbsd_iterate_over_regset_sections): Likewise.
1068         * amd64-linux-tdep.c
1069         (amd64_linux_iterate_over_regset_sections): Likewise.
1070         * arm-bsd-tdep.c
1071         (armbsd_iterate_over_regset_sections): Likewise.
1072         * arm-fbsd-tdep.c
1073         (arm_fbsd_iterate_over_regset_sections): Likewise.
1074         * arm-linux-tdep.c
1075         (arm_linux_iterate_over_regset_sections): Likewise.
1076         * corelow.c (get_core_registers_cb): Likewise.
1077         (core_target::fetch_registers): Likewise.
1078         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
1079         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
1080         * gdbarch.h (void): Regenerate.
1081         * gdbarch.sh: Add supply_size and collect_size.
1082         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
1083         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
1084         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
1085         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
1086         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
1087         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
1088         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
1089         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
1090         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
1091         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
1092         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
1093         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
1094         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
1095         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
1096         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections): Likewise.
1097         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
1098         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
1099         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
1100         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
1101         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
1102         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
1103         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections): Likewise.
1104         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
1105         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
1106         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
1107         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
1108         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
1109         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
1110         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
1111         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
1112
1113 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
1114
1115         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
1116         with string_printf.
1117
1118 2018-08-10  Keith Seitz  <keiths@redhat.com>
1119
1120         * compile/compile-c-support.c (add_code_header, add_code_footer):
1121         Move into policy class.
1122         (c_push_user_expression, pop_user_expression_nop)
1123         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
1124         (compile_program): New host class.
1125         (c_compile_program): New typedef.
1126         (c_compute_porgram): Use c_compile_program.
1127
1128 2018-08-10  Keith Seitz  <keiths@redhat.com>
1129
1130         * compile/compile-internal.h (compile_instance::~compile_instance):
1131         Remove calls to htab_delete.
1132         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
1133         * compile.c (compile_instance::compile_instance): Initialize
1134         htab unique pointers.
1135         (compile_instance::get_cached_type, compile_instance::insert_type)
1136         (compile_instance::error_symbol_once): Update for unique_ptr.
1137
1138 2018-08-10  Keith Seitz  <keiths@redhat.com>
1139
1140         * compile/compile-c-symbols.c (struct symbol_error)
1141         (hash_symbol_error, eq_symbol_error, del_symbol_error)
1142         (compile_instance::insert_symbol_error)
1143         (compile_instance::error_symbol_once): Move to ...
1144         * compile/compile.c: ... here.
1145
1146 2018-08-10  Keith Seitz  <keiths@redhat.com>
1147
1148         * compile/compile-c-support.c (c_get_compile_context): Use `new'
1149         instead of `new_compile_instance'.
1150         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
1151         Update description.
1152         If the symbol error map is not initialized, create it.
1153         (generate_c_for_for_one_symbol): Do not check/initialize
1154         the symbol error map.
1155         * compile/compile-c-types.c (compile_c_instance): Make a class.
1156         Update all callers.
1157         (compile_instance::compile_instance): Initialize the type cache.
1158         (get_cached_type): New function.
1159         (insert_type): Update description.
1160         (compile_c_instance::m_default_cflags): Define.
1161         (convert_type): Update description.  Use get_cached_type.
1162         (delete_instance): Moved to destructor.
1163         (new_compile_instance): Moved to constructor.
1164         * compile/compile-c.h (compile_c_instance): Make class inheriting
1165         from compile_instance.
1166         <base>: Remove field.
1167         <type_map, symbol_err_map>: Move to base class.
1168         <c_plugin>: Rename to `m_plugin' and remove pointer type.
1169         * compile/compile-internal.h (compile_instance): Make class.
1170         <type_map_t, symbol_err_map_t>: Define.
1171         <fe>: Rename to `m_gcc_fe'.
1172         <scope, block, gcc_target_options>: Add `m_' prefix.
1173         <m_type_map, m_symbol_err_map>: New fields, moved from
1174         compile_c_instance.
1175         <destroy>: Remove.
1176         (convert_type, new_compile_instance): Remove.
1177         * compile/compile.c (cleanup_compile_instance): Remove.
1178         (compile_to_object): Use unique_ptr to eliminate cleanups.
1179         (compile_instance::set_print_callback, compile_instance::version)
1180         (compile_instance::set_verbose)
1181         (compile_instance::set_driver_filename)
1182         (compile_instance::set_triplet_regexp)
1183         (compile_instance::set_arguments)
1184         (compile_instance::set_source_file)
1185         (compile_instance::compile): Define.
1186
1187 2018-08-10  Keith Seitz  <keiths@redhat.com>
1188
1189         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
1190         * compile/compile-c-types.c: Define GCC_METHODN macros and include
1191         gcc-c-fe.def to define C plugin.
1192         (delete_instance): Delete `c_plugin'.
1193         (new_compile_instance): Initialize `c_plugin'.
1194         * compile/compile-c.h: Include gcc_c_plugin.h.
1195         (struct compile_c_instance) <c_plugin>: New member.
1196         * gcc-c-plugin.h: New file.
1197         Update all callers with API change.
1198
1199 2018-08-10  Keith Seitz  <keiths@redhat.com>
1200
1201         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
1202         (HFILES_NO_SRCDIR): ... to here.
1203         Add compile-internal.h and compile-c.h.
1204         * compile/compile-c-support.c: Include compile-c.h.
1205         * compile/compile-c-symbols.c: Include compile-c.h.
1206         (generate_c_for_variable_locations): Update comment.
1207         * compile/compile-c-types.c: Include compile-c.h.
1208         * compile/compile-c.h: New file -- moved C language declarations
1209         from other files here.
1210         * compile/compile-internal.h: Do not include hashtab.h or
1211         common/enum-flags.h.
1212         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
1213         (gcc_convert_symbol, gcc_symbol_address)
1214         (generate_c_for_variable_locations, c_get_mode_for_size)
1215         (c_get_range_decl_name): Definitions moved to compile-c.h.
1216         * compile/compile-loc2c.c: Include compile-c.h.
1217
1218 2018-08-10  Keith Seitz  <keiths@redhat.com>
1219
1220         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
1221         (c_symbol_substitution_name): ... this.
1222         Update all callers.
1223
1224 2018-08-10  Keith Seitz  <keiths@redhat.com>
1225
1226         * compile/compile-c-support.c (c_compute_program): Use
1227         unique_xmalloc_ptr to eliminate cleanup.
1228         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
1229         Return a unique_xmalloc_ptr and eliminate cleanup.
1230         * compile/compile-internal.h (generate_c_for_variable_locations):
1231         Return unique_xmalloc_ptr and update description.
1232
1233 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
1234
1235         * corelow.c (core_target::get_core_register_section): Rename
1236         min_size to section_min_size.
1237
1238 2018-08-09  Jim Wilson  <jimw@sifive.com>
1239
1240         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
1241         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
1242         * NEWS: Mention new GNU/Linux RISC-V target.
1243         * configure.host: Add riscv*-*-linux*.
1244         * configure.nat: Add riscv*.
1245         * configure.tgt: Add riscv*-*-linux*.
1246         * riscv-linux-nat.c: New file.
1247         * riscv-linux-tdep.c: New file.
1248
1249 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
1250
1251         * infrun.c (resume): Make static, add forward declaration.
1252         (proceed): Update header comment.
1253         * infrun.h (resume): Delete declaration.
1254
1255 2018-08-09  Tom Tromey  <tom@tromey.com>
1256
1257         * riscv-tdep.h: Minor formatting fixes.
1258
1259 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
1260
1261         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
1262         * dwarf-index-cache.c (create_dir_and_check): Likewise.
1263         (test_mkdir_recursive): Likewise.
1264         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
1265
1266 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
1267
1268         * valarith.c (value_subscripted_rvalue): If an array is not in
1269         memory, and we don't know the upper bound, then we can't know that
1270         the requested element exists or not.
1271
1272 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
1273
1274         * target.c (str_comma_list_concat_elem): Fix typo in comment.
1275         (target_options_to_string): Add comment.
1276
1277 2018-08-08  Tom Tromey  <tom@tromey.com>
1278
1279         * unittests/scoped_mmap-selftests.c: Check result of "write".
1280
1281 2018-08-08  Jim Wilson  <jimw@sifive.com>
1282
1283         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
1284         (decode_register_index_short): New.
1285         (decode_j_type_insn, decode_cj_type_insn): New.
1286         (decode_b_type_insn, decode_cb_type_insn): New.
1287         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
1288         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
1289         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
1290         is_c_sw_insn instead of is_sw_insn.
1291         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
1292         (riscv_software_single_step): New.
1293         * riscv-tdep.h (riscv_software_single_step): Declare.
1294
1295         * riscv-tdep.c (riscv_isa_xlen): Drop static.
1296         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
1297
1298 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
1299
1300         PR gdb/18050:
1301         * target.c (dispose_inferior): Don't dispose of inferiors that are
1302         already killed.
1303
1304 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
1305
1306         * remote.c (remote_target::download_tracepoint): Change char* to
1307         const char*.
1308
1309 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
1310
1311         * target.h (target_options_to_string): Return an std::string.
1312         * target.c (str_comma_list_concat_elem): Return void, use
1313         std::string.
1314         (do_option): Likewise.
1315         (target_options_to_string): Return an std::string.
1316         * linux-nat.c (linux_nat_target::wait): Adjust.
1317         * target-debug.h (target_debug_print_options): Adjust.
1318
1319 2018-08-07  Tom Tromey  <tom@tromey.com>
1320
1321         * Makefile.in (CPPFLAGS): New variable.
1322         (INTERNAL_CPPFLAGS): Use it.
1323
1324 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
1325
1326         * NEWS: Mention the index cache.
1327
1328 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
1329
1330         * common/pathstuff.h (get_standard_cache_dir): New.
1331         * common/pathstuff.c (get_standard_cache_dir): New.
1332         * build-id.h (build_id_to_string): New.
1333         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
1334         DEBUG_STR_SUFFIX): Move to here.
1335         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
1336         DEBUG_STR_SUFFIX): Move from there.
1337         (write_psymtabs_to_index): Make non-static, add basename
1338         parameter.  Write to temporary files, rename when done.
1339         (save_gdb_index_command): Adjust call to
1340         write_psymtabs_to_index.
1341         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
1342         field.
1343         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
1344         (get_gdb_index_contents_from_cache): New.
1345         (get_gdb_index_contents_from_cache_dwz): New.
1346         (dwarf2_initialize_objfile): Read index from cache.
1347         (dwarf2_build_psymtabs): Save to index.
1348         * dwarf-index-cache.h: New file.
1349         * dwarf-index-cache.c: New file.
1350         * dwarf-index-write.h: New file.
1351
1352 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
1353
1354         * gnulib/aclocal.m4: Re-generate.
1355         * gnulib/config.in: Re-generate.
1356         * gnulib/configure: Re-generate.
1357         * gnulib/import/Makefile.am: Re-generate.
1358         * gnulib/import/Makefile.in: Re-generate.
1359         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
1360         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
1361         * gnulib/import/m4/mkdir.m4: New file.
1362         * gnulib/import/mkdir.c: New file.
1363         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
1364         module.
1365
1366 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
1367
1368         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
1369         * common/scoped_mmap.c: New file.
1370         * common/scoped_mmap.h (destroy): New method.
1371         (~scoped_mmap, reset): Use destroy.
1372         (scoped_mmap): New move constructor.
1373         (mmap_file): New declaration.
1374         * unittests/scoped_mmap-selftests.c (test_normal,
1375         test_invalid_filename, run_tests): New functions.
1376         (_initialize_scoped_mmap_selftests): Register selftest.
1377
1378 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
1379
1380         * dwarf2read.c (read_gdb_index_from_section): Rename to...
1381         (read_gdb_index_from_buffer): ... this.  Remove section
1382         parameter, add buffer parameter.
1383         (get_gdb_index_contents_ftype,
1384         get_gdb_index_contents_dwz_ftype): New typedefs.
1385         (dwarf2_read_gdb_index): Add callback parameters to get the
1386         index contents.
1387         (get_gdb_index_contents_from_section): New.
1388         (dwarf2_initialize_objfile): Update call to
1389         dwarf2_read_gdb_index.
1390
1391 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
1392
1393         * common/filestuff.h (gdb_fopen_cloexec): New overload.
1394         (gdb_open_cloexec): Likewise.
1395         * nat/linux-osdata.c (command_from_pid): Use string_printf.
1396         (commandline_from_pid): Likewise.
1397         (linux_xfer_osdata_threads): Likewise.
1398         (linux_xfer_osdata_fds): Likewise.
1399         * ada-lang.c (is_package_name): Likewise.
1400         * auxv.c (procfs_xfer_auxv): Likewise.
1401         * breakpoint.c (print_one_breakpoint_location): Use
1402         uiout::field_fmt.
1403         (print_one_catch_solib): Use string_printf.
1404         * coff-pe-read.c (add_pe_exported_sym): Likewise.
1405         (add_pe_forwarded_sym): Likewise.
1406         * dwarf2read.c (create_type_unit_group): Likewise.
1407         (build_error_marker_type): Likewise.
1408         * infcall.c (get_function_name): Likewise.
1409         * valprint.c (print_converted_chars_to_obstack): Likewise.
1410         * xtensa-tdep.c (xtensa_register_type): Likewise.
1411
1412 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
1413
1414         * remote.c (remote_target::download_tracepoint): Fix format
1415         string errors.
1416
1417 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1418
1419         * tracefile.c: Include common/byte-vector.h.
1420         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
1421         with trace_regblock_size if needed.  Update uses of buf.
1422
1423 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1424
1425         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
1426         std::vector<unsigned char>.
1427         * tracepoint.c (collection_list::collection_list): Remove
1428         m_regs_mask initializer from initializer list.  Resize
1429         m_regs_mask using the largest remote register number.
1430         (collection_list::add_remote_register): Remove size check on
1431         m_regs_mask.  Use at to access element.
1432         (collection_list::stringify): Change type of temp_buf to
1433         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
1434         stringify the register mask.  Use pack_hex_byte for the register
1435         mask.
1436
1437 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1438
1439         * tracepoint.h (class collection_list) <add_register>: Remove.
1440         <add_remote_register, add_ax_registers, add_local_register>:
1441         Declare.
1442         <add_memrange>: Add scope parameter.
1443         * tracepoint.c (encode_actions_1): Likewise.
1444         (collection_list::add_register): Rename to ...
1445         (collection_list::add_remote_register): ... this.  Update
1446         comment.
1447         (collection_list::add_ax_registers, add_local_register): New
1448         methods.
1449         (collection_list::add_memrange): Add scope parameter.  Call
1450         add_local_register instead of add_register.
1451         (finalize_tracepoint_aexpr): New function.
1452         (collection_list::collect_symbol): Update calls to add_memrange.
1453         Call add_local_register instead of add_register.  Call
1454         add_ax_registers.  Call finalize_tracepoint_aexpr.
1455         (encode_actions_1): Get remote regnos for $reg action.  Call
1456         add_remote_register, add_ax_registers, and add_local_register.
1457         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
1458         (validate_actionline): Call finalize_tracepoint_aexpr.
1459
1460 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1461
1462         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
1463         Replace array buf with gdb::char_vector buf, of size
1464         get_remote_packet_size ().  Replace references to buf and
1465         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
1466         and xsnprintf with snprintf.  Raise errors if the buffer is too
1467         small.
1468
1469 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1470
1471         * remote.c (remote_target::download_tracepoint): Fix the has_more
1472         predicate in the QTDP action list iteration.
1473
1474 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1475
1476         * remote.c (remote_target::download_tracepoint): Fix indentation
1477         in for block.
1478
1479 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1480
1481         * proc-api.c (_initialize_proc_api): Remove c, unused.
1482         * procfs.c (procfs_init_inferior): Remove signals, unused.
1483         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
1484         unused.
1485
1486 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
1487             Andrew Burgess  <andrew.burgess@embecosm.com>
1488
1489         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
1490         'W_STOPCODE (0)' as this could be ambiguous.
1491
1492 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
1493
1494         * ser-tcp.c (net_open): Fix thinko when deciding whether to
1495         disable TCP's Nagle algorithm (use "ai_protocol" instead of
1496         "ai_socktype").
1497
1498 2018-08-02  Tom Tromey  <tom@tromey.com>
1499
1500         PR symtab/16842.
1501         * dwarf2read.c (read_func_scope): Set symtab on template parameter
1502         symbols.
1503         (process_structure_scope): Likewise.
1504
1505 2018-08-02  Xavier Roirand  <roirand@adacore.com>
1506
1507         PR gdb/22629:
1508         * darwin-nat.c (darwin_kill_inferior): Fix handling of
1509         kill inferior.
1510
1511 2018-08-02  Tom Tromey  <tom@tromey.com>
1512
1513         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
1514         (darwin_suspend_inferior, darwin_resume_inferior)
1515         (darwin_decode_notify_message, darwin_resume_inferior_threads)
1516         (darwin_check_new_threads): Check result of get_darwin_inferior.
1517
1518 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
1519
1520         GDB 8.1.1 released.
1521
1522 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
1523
1524         * varobj.c (varobj_get_path_expr_parent): Report an error if
1525         parent is a dynamic varobj.
1526
1527 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
1528
1529         * gnulib/aclocal.m4: Re-generate.
1530         * gnulib/config.in: Re-generate.
1531         * gnulib/configure: Re-generate.
1532         * gnulib/import/Makefile.in: Re-generate.
1533         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
1534         * gnulib/import/m4/onceonly.m4: Re-generate.
1535
1536 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
1537
1538         * target-descriptions.c (struct xml_test_tdesc): New.
1539         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
1540         (record_xml_tdesc): Update.
1541         (maintenance_check_xml_descriptions): Update.
1542         * target-descriptions.h (record_xml_tdesc): Update comment.
1543
1544 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
1545
1546         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
1547         checking array bounds are defined.
1548
1549 2018-07-30  Tom Tromey  <tom@tromey.com>
1550
1551         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
1552         irreflexivity violation.
1553
1554 2018-07-30  Tom Tromey  <tom@tromey.com>
1555
1556         * cli/cli-decode.c (lookup_cmd): Remove lint code.
1557         * value.c (unpack_long): Remove lint code.
1558         * valops.c (value_ind): Remove lint code.
1559         * valarith.c (value_x_binop, value_x_unop, value_equal)
1560         (value_pos): Remove lint code.
1561
1562 2018-07-28  Tom de Vries  <tdevries@suse.de>
1563
1564         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
1565         with undefined upper bound as <optimized out>.
1566
1567 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
1568
1569         * gcore.in: Rename variable "name" to "prefix".  Expand
1570         "usage" text.
1571
1572 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
1573
1574         * windows-nat.c (windows_nat_target::create_inferior): Update to
1575         call close() in global namespace.
1576
1577 2018-07-26  Tom Tromey  <tom@tromey.com>
1578
1579         * dwarf-index-write.c (add_address_entry): Don't add objfile
1580         offsets.
1581         * dbxread.c (find_stab_function): Rename from
1582         find_stab_function_addr.  Return a bound_minimal_symbol.
1583         (read_dbx_symtab): Use raw_text_low, raw_text_high.
1584         Don't add objfile offsets.
1585         (end_psymtab): Use raw_text_low, raw_text_high,
1586         MSYMBOL_VALUE_RAW_ADDRESS.
1587         (read_ofile_symtab): Update.
1588         (process_one_symbol): Update.
1589         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
1590         offsets.
1591         (dw2_relocate): Remove.
1592         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
1593         searching addrmap.
1594         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
1595         Update.
1596         (process_psymtab_comp_unit_reader, add_partial_symbol)
1597         (add_partial_subprogram, dwarf2_ranges_read): Update.
1598         (load_partial_dies): Update.
1599         (add_address_entry): Don't add objfile offsets.
1600         (dwarf2_build_include_psymtabs): Update.
1601         (create_addrmap_from_aranges): Don't add objfile offsets.
1602         (dw2_find_pc_sect_compunit_symtab): Update.
1603         * mdebugread.c (parse_symbol): Don't add objfile offsets.
1604         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
1605         Update.
1606         (parse_partial_symbols): Don't add objfile offsets.  Use
1607         raw_text_low, raw_text_high.  Update.
1608         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
1609         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
1610         or call 'relocate' quick function.  Clear psymbol_map.
1611         * psympriv.h (struct partial_symbol) <address>: Add section
1612         offset.
1613         <set_unrelocated_address>: Rename from set_address.
1614         <raw_text_low, raw_text_high>: New methods.
1615         <text_low, text_high>: Add objfile parameter.
1616         (add_psymbol_to_bcache): Add 'section' parameter.  Call
1617         set_unrelocated_address.
1618         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
1619         (find_pc_psymbol): Update.
1620         (fixup_psymbol_section, relocate_psymtabs): Remove.
1621         (dump_psymtab, psym_functions): Update.
1622         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
1623         parameter.
1624         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
1625         (start_psymtab_common): Update.
1626         * symfile-debug.c (debug_qf_relocate): Remove.
1627         (debug_sym_quick_functions): Update.
1628         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
1629         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
1630         Update.
1631
1632 2018-07-26  Tom Tromey  <tromey@redhat.com>
1633
1634         * dbxread.c (end_psymtab): Use text_high_valid and
1635         text_low_valid.
1636         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
1637         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
1638         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
1639         Update comment.
1640         <text_low_valid, text_high_valid>: New fields.
1641         <set_text_low, set_text_high>: Update.
1642         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
1643
1644 2018-07-26  Tom Tromey  <tom@tromey.com>
1645
1646         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
1647         Update.
1648         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
1649         textlow and texthigh fields.
1650         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
1651         Update.
1652         * mdebugread.c (parse_lines, parse_partial_symbols)
1653         (psymtab_to_symtab_1): Update.
1654         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
1655         Rename fields.  Update comment.  Now private.
1656         <text_low, text_high, set_text_low, set_text_high>: New methods.
1657         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
1658         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
1659         (start_psymtab_common, maintenance_info_psymtabs)
1660         (maintenance_check_psymtabs): Update.
1661         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
1662         texthigh fields.
1663         (scan_xcoff_symtab): Update.
1664
1665 2018-07-26  Tom Tromey  <tromey@redhat.com>
1666
1667         * psympriv.h (struct partial_symbol) <unrelocated_address,
1668         address, set_address>: New methods.
1669         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
1670         (fixup_psymbol_section, relocate_psymtabs): Update.
1671         (print_partial_symbols): Add 'objfile' parameter.  Update.
1672         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
1673         Update.
1674
1675 2018-07-26  Tom Tromey  <tom@tromey.com>
1676
1677         * dwarf-index-write.c (write_psymbols, debug_names::insert)
1678         (debug_names::write_psymbols): Update.
1679         * psympriv.h (struct partial_symbol): Derive from
1680         general_symbol_info.
1681         <obj_section>: New method.
1682         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
1683         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
1684         (find_pc_sect_psymbol, fixup_psymbol_section)
1685         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
1686         (print_partial_symbols, recursively_search_psymtabs)
1687         (compare_psymbols, psymbol_hash, psymbol_compare)
1688         (add_psymbol_to_bcache, maintenance_check_psymtabs)
1689         (psymbol_name_matches, psym_fill_psymbol_map): Update.
1690
1691 2018-07-26  Tom Tromey  <tromey@redhat.com>
1692
1693         * dbxread.c (end_psymtab): Remove dead code.
1694
1695 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
1696
1697         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
1698         DWARF unwinders are disabled.
1699         * dwarf2-frame.c: Add dwarf2read.h include.
1700         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
1701         disabled.
1702         (dwarf2_frame_unwinders_enabled_p): Define.
1703         (show_dwarf_unwinders_enabled_p): New function.
1704         (_initialize_dwarf2_frame): Register switch to control DWARF
1705         unwinder use.
1706         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
1707         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
1708         (show_dwarf_cmdlist): Remove static keyword.
1709         * dwarf2read.h (set_dwarf_cmdlist): Declare.
1710         (show_dwarf_cmdlist): Declare.
1711         * NEWS: Document new feature.
1712
1713 2018-07-26  Tom de Vries  <tdevries@suse.de>
1714
1715         PR breakpoints/23366
1716         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
1717
1718 2018-07-26  Tom de Vries  <tdevries@suse.de>
1719
1720         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
1721         DW_AT_count can't be translated to a dynamic prop.
1722
1723 2018-07-25  Tom de Vries  <tdevries@suse.de>
1724
1725         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
1726         try/catch.
1727
1728 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
1729
1730         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
1731
1732 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
1733
1734         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
1735
1736 2018-07-24  Keith Seitz  <keiths@redhat.comt
1737
1738         PR symtab/23010
1739         * dwarf2read.c (dw2_add_symbol_to_list): New function.
1740         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
1741         instead of add_symbol_to_list.
1742         (read_file_scope): Call prepare_one_comp_unit before reading
1743         any other DIEs.
1744
1745 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
1746
1747         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
1748
1749 2018-07-24  Tom Tromey  <tom@tromey.com>
1750
1751         * utils.c (malloc, realloc, free): Don't declare.
1752         * configure, config.in: Rebuild.
1753         * configure.ac: Don't check for declarations of free, malloc, or
1754         realloc.
1755
1756 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
1757
1758         * aarch64-linux-nat.c
1759         (aarch64_linux_nat_target::stopped_data_address): Remove unused
1760         variable.
1761         * arm-linux-nat.c (fetch_regs): Likewise.
1762         (store_regs): Likewise.
1763         (fetch_vfp_regs): Likewise.
1764         (store_vfp_regs): Likewise.
1765         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
1766         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
1767         (arm_linux_nat_target::insert_watchpoint): Likewise.
1768         (arm_linux_nat_target::remove_watchpoint): Likewise.
1769         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
1770         Likewise.
1771         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
1772         Likewise.
1773         * ppc-linux-nat.c (fetch_register): Likewise.
1774         (fetch_all_gp_regs): Likewise.
1775         (fetch_ppc_registers): Likewise.
1776         (store_all_gp_regs): Likewise.
1777         (store_ppc_registers): Likewise.
1778         (hwdebug_insert_point): Likewise.
1779         (can_use_watchpoint_cond_accel): Likewise.
1780         * remote-sim.c (gdb_os_write_stdout): Likewise.
1781
1782 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
1783             Tom Tromey  <tom@tromey.com>
1784
1785         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
1786         test for it.
1787         * configure: Rebuild.
1788
1789 2018-07-22  Tom Tromey  <tom@tromey.com>
1790
1791         * regformats/regdat.sh: Define xmltarget_${name} inside
1792         #ifndef IN_PROCESS_AGENT.
1793
1794 2018-07-22  Tom Tromey  <tom@tromey.com>
1795
1796         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
1797
1798 2018-07-22  Tom Tromey  <tom@tromey.com>
1799
1800         * symfile.c (reread_symbols): Notify iter, not objfile.
1801
1802 2018-07-22  Tom Tromey  <tom@tromey.com>
1803
1804         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
1805         Use arch_ops.
1806         (ravenscar_thread_target::prepare_to_store): Likewise.
1807
1808 2018-07-22  Tom Tromey  <tom@tromey.com>
1809
1810         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
1811         unused variable.  Call value_fetch_lazy when needed.
1812         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
1813         Remove unused variable.  Call value_fetch_lazy when needed.
1814
1815 2018-07-22  Tom Tromey  <tom@tromey.com>
1816
1817         * m32c-tdep.c (mark_dma): Return void.
1818         (make_regs): Remove unused declarations.
1819
1820 2018-07-22  Tom Tromey  <tom@tromey.com>
1821
1822         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
1823         cmdscm_get_valid_command_smob_arg_unsafe for effect.
1824         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
1825         bkscm_get_valid_block_smob_arg_unsafe for effect.
1826
1827 2018-07-22  Tom Tromey  <tom@tromey.com>
1828
1829         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
1830         value_type.
1831
1832 2018-07-22  Tom Tromey  <tom@tromey.com>
1833
1834         * windows-nat.c (saved_context): Conditionally define.
1835         * remote.c (remote_target::remote_btrace_maybe_reopen):
1836         Conditionally declare "warned".
1837         * inflow.c (sigquit_ours): Conditionally define.
1838         (new_tty): Move "tty" declaration inside #if.
1839         * guile/guile.c (guile_datadir): Conditionally define.
1840         * charset.c (set_be_le_names): Move some declarations inside #if.
1841         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
1842         #if.
1843         (parse_xml_btrace_conf): Likewise.
1844
1845 2018-07-22  Tom Tromey  <tom@tromey.com>
1846
1847         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
1848
1849 2018-07-22  Tom Tromey  <tom@tromey.com>
1850
1851         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
1852         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
1853         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
1854         * buildsym-legacy.c (get_macro_table): Remove unused variable.
1855         * stack.c (frame_apply_level_command): Remove unused variable.
1856         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
1857         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
1858         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
1859         unused variable.
1860         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
1861         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
1862         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
1863         variable.
1864         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
1865         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
1866         variable.
1867         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
1868         Remove unused variable.
1869         * cli/cli-script.c (recurse_read_control_structure): Remove unused
1870         variable.
1871         * common/tdesc.c (print_xml_feature::visit): Remove unused
1872         variable.
1873         * compile/compile-object-load.c (store_regs): Remove unused
1874         variables.
1875         * complaints.c (clear_complaints): Remove unused variable.
1876         * corelow.c (core_target_open): Remove unused variable.
1877         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
1878         variable.
1879         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
1880         variable.
1881         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
1882         variable.
1883         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
1884         variable.
1885         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
1886         variable.
1887         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
1888         variable.
1889         * ia64-tdep.c (examine_prologue): Remove unused variable.
1890         * infcall.c (run_inferior_call): Remove unused variable.
1891         * inferior.c (exit_inferior): Remove unused variable.
1892         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
1893         * linespec.c (decode_line_2): Remove unused variable.
1894         * linux-nat.c (super_close): Remove.
1895         * linux-tdep.c (linux_info_proc): Remove unused variable.
1896         * mi/mi-main.c (mi_execute_command): Remove unused variable.
1897         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
1898         Remove unused variable.
1899         * parse.c (find_minsym_type_and_address): Remove unused variable.
1900         * printcmd.c (info_symbol_command, printf_floating): Remove unused
1901         variable.
1902         * python/py-breakpoint.c (bppy_set_commands): Remove unused
1903         variable.
1904         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
1905         variables.
1906         * record-btrace.c (record_btrace_target::store_registers): Remove
1907         unused variable.
1908         (cmd_show_record_btrace_cpu): Remove unused variable.
1909         * riscv-tdep.c (riscv_register_reggroup_p)
1910         (riscv_push_dummy_call, riscv_return_value): Remove unused
1911         variable.
1912         * rust-exp.y (literal): Remove unused variable.
1913         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
1914         unused variable.
1915         <STRUCTOP_ANONYMOUS>: Likewise.
1916         * s390-linux-tdep.c (s390_linux_init_abi_31)
1917         (s390_linux_init_abi_64): Remove unused variable.
1918         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
1919         (file_select_thread, net_windows_open, _initialize_ser_windows):
1920         Remove unused variables.
1921         * symtab.c (find_pc_sect_line): Remove unused variable.
1922         * target-memory.c (compute_garbled_blocks): Remove unused
1923         variable.
1924         (target_write_memory_blocks): Remove unused variable.
1925         * target.c (target_stack::unpush): Remove unused variables.
1926         * tracepoint.c (start_tracing, all_tracepoint_actions)
1927         (merge_uploaded_trace_state_variables)
1928         (print_one_static_tracepoint_marker): Remove unused variable.
1929         * unittests/basic_string_view/element_access/char/1.cc (test01):
1930         Remove unused variable.
1931         * windows-nat.c (windows_continue, windows_add_all_dlls)
1932         (do_initial_windows_stuff, windows_nat_target::create_inferior):
1933         Remove unused variables.
1934
1935 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
1936
1937         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
1938         attr_profile in HAVE_ELF.
1939         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
1940         HAVE_ELF.
1941
1942 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
1943
1944         * frame.c (frame_register_unwind): Change parameter name.
1945         (frame_unwind_register): Likewise.
1946         (frame_unwind_register_value): Likewise.
1947         (frame_unwind_register_signed): Likewise.
1948         (frame_unwind_register_unsigned): Likewise.
1949         * frame.h (frame_register_unwind): Likewise.
1950         (frame_unwind_register): Likewise.
1951         (frame_unwind_register_value): Likewise.
1952         (frame_unwind_register_signed): Likewise.
1953         (frame_unwind_register_unsigned): Likewise.
1954         (frame_unwind_arch): Likewise.
1955
1956 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
1957
1958         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
1959         ISA maintenance.
1960
1961 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
1962
1963         * mips-linux-nat.c (mips_linux_nat_target::read_description):
1964         Call `get_ptrace_pid' rather than extracting the ptrace PID by
1965         hand.
1966
1967 2018-07-20  Keith Seitz  <keiths@redhat.com>
1968
1969         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
1970         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
1971         m_compunit_symtab, m_language>: Add "m_" prefix.
1972         Update all uses.
1973         * buildsym.c: Update all uses.
1974
1975 2018-07-20  Tom Tromey  <tom@tromey.com>
1976
1977         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
1978         * buildsym.h (record_line_ftype): Remove typedef.
1979
1980 2018-07-20  Tom Tromey  <tom@tromey.com>
1981
1982         * buildsym-legacy.h (augment_type_symtab): Don't declare.
1983         (end_expandable_symtab): Likewise.
1984         (end_symtab_get_static_block): Likewise.
1985         (end_symtab_from_static_block): Likewise.
1986         * buildsym-legacy.c (augment_type_symtab): Remove.
1987         (end_expandable_symtab): Remove.
1988         (end_symtab_get_static_block): Remove.
1989         (end_symtab_from_static_block): Remove.
1990
1991 2018-07-20  Tom Tromey  <tom@tromey.com>
1992
1993         * dwarf2read.c: Include buildsym.h.
1994         (struct dwarf2_cu) <builder>: New method.
1995         (fixup_go_packaging): Update.
1996         (process_full_comp_unit, process_full_type_unit): Update.  Don't
1997         use scoped_free_pendings.
1998         (using_directives): Add "cu" parameter, remove "language".
1999         (read_import_statement, setup_type_unit_groups, )
2000         (read_func_scope, read_lexical_block_scope)
2001         (dwarf2_record_block_ranges, read_namespace): Update.
2002         (lnp_state_machine::lnp_state_machine): Add cu parameter.
2003         (lnp_state_machine::handle_end_sequence): Update.
2004         (class lnp_state_machine) <m_cu>: New member.
2005         <m_record_line_callback>: Remove.
2006         <m_currently_recording_lines>: New member.
2007         (lnp_state_machine::handle_set_file): Update.
2008         (noop_record_line): Remove.
2009         (dwarf_record_line_p): Add cu parameter.
2010         (dwarf_record_line_1, dwarf_finish_line): Likewise.
2011         (lnp_state_machine::record_line)
2012         (lnp_state_machine::lnp_state_machine)
2013         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
2014         (dwarf_decode_lines): Update.
2015         (dwarf2_start_subfile): Add cu parameter.
2016         (dwarf2_start_symtab, new_symbol): Update.
2017         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
2018         Remove dwarf2_per_objfile parameter.
2019         (dwarf_decode_macros): Update.
2020
2021 2018-07-20  Tom Tromey  <tom@tromey.com>
2022
2023         * stabsread.c (define_symbol): Update.
2024         * buildsym-legacy.h (get_buildsym_compunit): Declare.
2025         * dwarf2read.c (new_symbol): Update.
2026         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
2027         * cp-namespace.c: Include buildsym.h.
2028         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
2029         * buildsym-legacy.c (get_buildsym_compunit): New function.
2030
2031 2018-07-20  Tom Tromey  <tom@tromey.com>
2032
2033         * xcoffread.c: Include buildsym-legacy.h.
2034         * windows-nat.c: Include buildsym-legacy.h.
2035         * stabsread.c: Include buildsym-legacy.h.
2036         * mdebugread.c: Include buildsym-legacy.h.
2037         * buildsym-legacy.h: New file.
2038         * buildsym-legacy.c: New file, from buildsym.c.
2039         * go32-nat.c: Include buildsym-legacy.h.
2040         * dwarf2read.c: Include buildsym-legacy.h.
2041         * dbxread.c: Include buildsym-legacy.h.
2042         * cp-namespace.c: Include buildsym-legacy.h.
2043         * coffread.c: Include buildsym-legacy.h.
2044         * buildsym.h: Move some contents to buildsym-legacy.h.
2045         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
2046         buildsym-legacy.c.
2047         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
2048
2049 2018-07-20  Tom Tromey  <tom@tromey.com>
2050
2051         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
2052         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
2053         (buildsym_compunit::buildsym_compunit)
2054         (buildsym_compunit::~buildsym_compunit)
2055         (buildsym_compunit::get_macro_table): Define.
2056
2057 2018-07-20  Tom Tromey  <tom@tromey.com>
2058
2059         * buildsym.c (reset_symtab_globals): Remove.
2060         (buildsym_compunit::end_symtab_from_static_block): Update.
2061         (buildsym_compunit::augment_type_symtab): Update.
2062         (end_symtab_from_static_block): Call free_buildsym_compunit.
2063         (augment_type_symtab, end_symtab, end_expandable_symtab):
2064         Likewise.
2065
2066 2018-07-20  Tom Tromey  <tom@tromey.com>
2067
2068         * arch-utils.c: Do not include buildsym.h.
2069         * mipsread.c: Do not include buildsym.h.
2070         * machoread.c: Do not include buildsym.h.
2071         * elfread.c: Do not include buildsym.h.
2072
2073 2018-07-20  Tom Tromey  <tom@tromey.com>
2074
2075         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
2076         initialization.
2077         (buildsym_compunit): Add new constructor.
2078         (struct buildsym_compunit) <get_last_source_file, finish_block,
2079         record_block_range, start_subfile, patch_subfile_names,
2080         push_subfile, pop_subfile, record_line, get_compunit_symtab,
2081         set_last_source_start_addr, get_last_source_start_addr,
2082         get_local_using_directives, set_local_using_directives,
2083         get_global_using_directives, outermost_context_p,
2084         get_current_context_stack, get_context_stack_depth,
2085         get_current_subfile, get_local_symbols, get_file_symbols,
2086         get_global_symbols, record_debugformat, record_producer,
2087         push_context, pop_context, end_symtab_get_static_block,
2088         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
2089         New public methods.
2090         <record_pending_block, finish_block_internal, make_blockvector,
2091         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
2092         private methods.
2093         Update all users.
2094
2095 2018-05-22  Tom Tromey  <tom@tromey.com>
2096
2097         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
2098         parameter.
2099         (finish_block_internal): Update.
2100
2101 2018-07-20  Tom Tromey  <tom@tromey.com>
2102
2103         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
2104         parameter.
2105         (finish_block_internal): Update.
2106
2107 2018-07-20  Tom Tromey  <tom@tromey.com>
2108
2109         * buildsym.h (EXTERN): Don't define or undef.
2110         * buildsym.c (EXTERN): Don't define.
2111
2112 2018-07-20  Tom Tromey  <tom@tromey.com>
2113
2114         * buildsym.c: Remove TODO comment.
2115
2116 2018-07-20  Tom Tromey  <tom@tromey.com>
2117
2118         * coffread.c (coff_symtab_read): Update.
2119         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
2120         (xcoff_new_init): Update.
2121         * mipsread.c (mipscoff_new_init): Update.
2122         * mdebugread.c (mdebug_build_psymtabs): Update.
2123         * elfread.c (elf_new_init): Update.
2124         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
2125         Update.
2126         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
2127         (coffstab_build_psymtabs, elfstab_build_psymtabs)
2128         (stabsect_build_psymtabs): Update.
2129         * buildsym.h (buildsym_init): Don't declare.
2130         * buildsym.c: Update comment.
2131         (prepare_for_building): Remove.
2132         (start_symtab, restart_symtab): Update.
2133         (reset_symtab_globals): Update comment.
2134         (buildsym_init): Remove.
2135
2136 2018-07-20  Tom Tromey  <tom@tromey.com>
2137
2138         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
2139         * stabsread.c (patch_block_stabs, define_symbol, read_type)
2140         (read_enum_type, common_block_start, common_block_end)
2141         (cleanup_undefined_types_1, finish_global_stabs): Update.
2142         * mdebugread.c (psymtab_to_symtab_1): Update.
2143         * dwarf2read.c (fixup_go_packaging, read_func_scope)
2144         (read_lexical_block_scope, new_symbol): Update.
2145         * dbxread.c (process_one_symbol): Update.
2146         * coffread.c (coff_symtab_read, process_coff_symbol)
2147         (coff_read_enum_type): Update.
2148         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
2149         declare.
2150         (get_local_symbols, get_file_symbols, get_global_symbols): New
2151         functions.
2152         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
2153         m_global_symbols.
2154         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
2155         (~scoped_free_pendings): Update.
2156         (finish_block, prepare_for_building, reset_symtab_globals)
2157         (end_symtab_get_static_block, end_symtab_with_blockvector)
2158         (augment_type_symtab, push_context): Update.
2159         (get_local_symbols, get_file_symbols, get_global_symbols): New
2160         functions.
2161         (buildsym_init): Update.
2162
2163 2018-07-20  Tom Tromey  <tom@tromey.com>
2164
2165         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
2166         (process_full_type_unit): Likewise.
2167         (dwarf2_start_symtab): Set list_in_scope.
2168
2169 2018-07-20  Tom Tromey  <tom@tromey.com>
2170
2171         * dwarf2read.c (process_psymtab_comp_unit_reader)
2172         (build_type_psymtabs_reader): Do not set list_in_scope.
2173
2174 2018-07-20  Tom Tromey  <tom@tromey.com>
2175
2176         * buildsym.c (free_pendings): Remove.
2177         (add_symbol_to_list, scoped_free_pendings)
2178         (finish_block_internal, buildsym_init): Update.
2179
2180 2018-07-20  Tom Tromey  <tom@tromey.com>
2181
2182         * xcoffread.c (read_xcoff_symtab): Update.
2183         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
2184         Update.
2185         * dbxread.c (process_one_symbol): Update.
2186         * coffread.c (coff_symtab_read): Update.
2187         * buildsym.h (finish_block): Update.
2188         * buildsym.c (finish_block): Remove "listhead" argument.
2189         (end_symtab_get_static_block): Update.
2190
2191 2018-07-20  Tom Tromey  <tom@tromey.com>
2192
2193         * buildsym.h (class scoped_free_pendings): Remove constructor.
2194         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
2195         method.
2196         <m_pending_block_obstack, m_pending_blocks>: New members.
2197         (pending_block_obstack, pending_blocks): Remove.
2198         (scoped_free_pendings::scoped_free_pendings): Default.
2199         (~scoped_free_pendings): Update.
2200         (free_pending_blocks): Remove.
2201         (finish_block_internal, record_pending_block, make_blockvector)
2202         (end_symtab_get_static_block, augment_type_symtab, push_context)
2203         (buildsym_init): Update.
2204
2205 2018-07-20  Tom Tromey  <tom@tromey.com>
2206
2207         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
2208         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
2209         members.
2210         (pending_addrmap, pending_addrmap_obstack)
2211         (pending_addrmap_interesting): Remove.
2212         (scoped_free_pendings, record_block_range, make_blockvector)
2213         (prepare_for_building, reset_symtab_globals, buildsym_init):
2214         Update.
2215
2216 2018-07-20  Tom Tromey  <tom@tromey.com>
2217
2218         * xcoffread.c (process_linenos): Update.
2219         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
2220         * mdebugread.c (psymtab_to_symtab_1): Update.
2221         * dwarf2read.c (setup_type_unit_groups)
2222         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
2223         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
2224         * dbxread.c (process_one_symbol): Update.
2225         * coffread.c (coff_symtab_read, enter_linenos)
2226         (process_coff_symbol): Update.
2227         * buildsym.h (current_subfile): Don't declare.
2228         (get_current_subfile): Declare.
2229         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
2230         member.
2231         (start_subfile, free_buildsym_compunit, push_subfile)
2232         (prepare_for_building, start_symtab): Update.
2233         (get_current_subfile): New function.
2234
2235 2018-07-20  Tom Tromey  <tom@tromey.com>
2236
2237         * coffread.c (coff_symtab_read): Update.
2238         * xcoffread.c (read_xcoff_symtab): Update.
2239         * dwarf2read.c (new_symbol): Update.
2240         (read_func_scope, read_lexical_block_scope): Update.
2241         * dbxread.c (process_one_symbol): Update.
2242         * buildsym.h (context_stack, context_stack_depth): Don't declare.
2243         (outermost_context_p): Remove macro.
2244         (outermost_context_p, get_current_context_stack)
2245         (get_context_stack_depth): Declare.
2246         (pop_context): Return struct context_stack.
2247         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
2248         member.
2249         (context_stack_size): Remove.
2250         (INITIAL_CONTEXT_STACK_SIZE): Remove.
2251         (prepare_for_building, end_symtab_get_static_block)
2252         (augment_type_symtab, push_context): Update.
2253         (pop_context): Return struct context_stack.
2254         (outermost_context_p, get_current_context_stack)
2255         (get_context_stack_depth): New functions.
2256         (buildsym_init): Update.
2257
2258 2018-07-20  Tom Tromey  <tom@tromey.com>
2259
2260         * rust-exp.y: Now a pure parser.  Update all rules.
2261         (%union): Move earlier.
2262         (current_parser, work_obstack): Remove globals.
2263         (rust_parser, ~rust_parser): Update.
2264         (class rust_parser) <copy_name, concat3, crate_name, super_name,
2265         lex_character, lex_number, lex_string, lex_identifier,
2266         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
2267         convert_name, convert_params_to_expression,
2268         convert_ast_to_expression, ast_basic_type, ast_operation,
2269         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
2270         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
2271         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
2272         ast_array_type, ast_slice_type, ast_reference_type,
2273         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
2274         (rust_parse): Update.
2275         (rustyyerror, rustyylex): Add parser parameter.
2276         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
2277         (rust_lex_stringish_test, rust_lex_test_sequence)
2278         (rust_lex_test_trailing_dot, rust_lex_test_completion)
2279         (rust_lex_test_push_back, rust_lex_tests): Update.
2280
2281 2018-07-19  Pedro Alves  <palves@redhat.com>
2282
2283         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
2284         gdb::unique_xmalloc_ptr.
2285         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
2286         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
2287         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
2288         copy-initialization.
2289         * guile/scm-pretty-print.c (ppscm_print_children): Use
2290         gdb::unique_xmalloc_ptr instead of cleanups.
2291         (gdbscm_apply_val_pretty_printer): Remove cleanups.
2292         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
2293         gdb::unique_xmalloc_ptr.
2294         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
2295         Adjust to use gdb::unique_xmalloc_ptr.
2296         * guile/scm-utils.c (extract_arg): Adjust.
2297         * guile/scm-value.c (gdbscm_value_field): Adjust to use
2298         gdb::unique_xmalloc_ptr instead of a cleanup.
2299
2300 2018-07-19  Tom Tromey  <tom@tromey.com>
2301
2302         * utils.c (do_value_free_to_mark)
2303         (make_cleanup_value_free_to_mark): Remove.
2304         * utils.h (make_cleanup_value_free_to_mark): Remove.
2305
2306 2018-07-19  Pedro Alves  <palves@redhat.com>
2307
2308         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
2309         forwarding reference.
2310
2311 2018-07-18  Pedro Alves  <palves@redhat.com>
2312
2313         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
2314         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
2315         cleanup.
2316
2317 2018-07-18  Pedro Alves  <palves@redhat.com>
2318
2319         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
2320         exceptions.
2321         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
2322         (gdbscm_wrap): New.
2323         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
2324         directly instead of a cleanup.
2325         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
2326         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
2327         (vlscm_binop_gdbthrow): New, factored out from ...
2328         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
2329         (vlscm_rich_compare): Use gdbscm_wrap.
2330         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
2331         instead of a cleanup.
2332         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
2333         cleanup.
2334         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
2335         Use xfree directly instead of a cleanup.
2336         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
2337         Adjust to use gdbscm_wrap and scoped_value_mark.
2338         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
2339         (gdbscm_value_address, gdbscm_value_dereference)
2340         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
2341         scoped_value_mark.
2342         (gdbscm_value_dynamic_type): Use scoped_value_mark.
2343         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
2344         scoped_value_mark.
2345         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
2346         gdbscm_wrap and scoped_value_mark.
2347         (gdbscm_value_to_string): Use xfree directly instead of a
2348         cleanup.  Move 'buffer' unique_ptr to TRY scope.
2349         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
2350         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
2351         scoped_value_mark.
2352         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
2353         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
2354         scoped_value_mark.
2355         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
2356         gdbscm_wrap.
2357
2358 2018-07-18  Tom de Vries  <tdevries@suse.de>
2359
2360         * findvar.c (default_read_var_value): Also resolve dynamic type for
2361         LOC_OPTIMIZED_OUT vars.
2362
2363 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
2364
2365         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
2366         decoding.
2367
2368 2018-07-17  Tom Tromey  <tom@tromey.com>
2369
2370         * guile/scm-param.c (pascm_set_func, pascm_show_func)
2371         (compute_enum_list, pascm_set_param_value_x)
2372         (gdbscm_parameter_value): Update.
2373         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
2374         (gdbscm_scm_to_host_string): Update.
2375         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
2376         Update.
2377         * guile/scm-cmd.c (cmdscm_add_completion): Update.
2378         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
2379         * guile/scm-string.c (gdbscm_scm_to_string): Return
2380         unique_xmalloc_ptr.
2381         (gdbscm_scm_to_host_string): Likewise.
2382
2383 2018-07-17  Tom Tromey  <tom@tromey.com>
2384
2385         * guile/guile.c (gdbscm_eval_from_control_command): Update.
2386         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
2387         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
2388         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
2389         unique_xmalloc_ptr.
2390
2391 2018-07-17  Tom Tromey  <tom@tromey.com>
2392
2393         * guile/scm-param.c (pascm_signal_setshow_error): Update.
2394         * guile/guile-internal.h (gdbscm_exception_message_to_string):
2395         Update.
2396         * guile/scm-cmd.c (cmdscm_function): Update.
2397         * guile/scm-pretty-print.c
2398         (ppscm_print_exception_unless_memory_error): Update.
2399         * guile/scm-exception.c (gdbscm_exception_message_to_string):
2400         Return unique_xmalloc_ptr.
2401
2402 2018-07-17  Tom Tromey  <tom@tromey.com>
2403
2404         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
2405         Use string_printf.
2406
2407 2018-07-17  Jim Wilson  <jimw@sifive.com>
2408
2409         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
2410         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
2411         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
2412         unecessary braces after EF_RISCV_RVC test.  Delete call to
2413         set_gdbarch_decr_pc_after_break.
2414
2415         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
2416         RISCV_LAST_FP_REGNUM + 1.
2417         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
2418
2419 2018-07-17  Tom Tromey  <tom@tromey.com>
2420
2421         * configure.ac: Remove --disable-gdbcli.
2422         * configure: Rebuild.
2423         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
2424         (SUBDIR_CLI_CFLAGS): Remove.
2425         (SFILES): Use SUBDIR_CLI_SRCS.
2426         (COMMON_OBS): Use SUBDIR_CLI_OBS.
2427
2428 2018-07-17  Tom Tromey  <tom@tromey.com>
2429
2430         PR gdb/18624:
2431         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
2432
2433 2018-07-16  Jim Wilson  <jimw@sifive.com>
2434
2435         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
2436
2437 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
2438
2439         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
2440         variable.
2441         (libunwind_frame_sniffer): Likewise.
2442         (libunwind_frame_prev_register): Likewise.
2443         (libunwind_sigtramp_frame_sniffer): Likewise.
2444         * ia64-tdep.c (ia64_access_reg): Likewise.
2445         (ia64_access_rse_reg): Likewise.
2446         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
2447         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
2448
2449 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
2450
2451         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
2452
2453 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
2454
2455         * remote-sim.c (gdbsim_target::close,
2456         gdbsim_target::mourn_inferior): Remove unused variables.
2457
2458 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
2459
2460         * ia64-tdep.c (ktab_buf): New global.
2461         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
2462         (get_kernel_table): Adjust.
2463
2464 2018-07-16  Tom Tromey  <tom@tromey.com>
2465
2466         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
2467         * dwarf2read.c (using_directives, new_symbol): Use
2468         outermost_context_p.
2469         * dbxread.c (process_one_symbol): Use outermost_context_p.
2470         * coffread.c (coff_symtab_read): Use outermost_context_p.
2471
2472 2018-07-16  Tom Tromey  <tom@tromey.com>
2473
2474         * dwarf2read.c (using_directives, read_func_scope)
2475         (read_lexical_block_scope): Update.
2476         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
2477         * buildsym.h (local_using_directives, global_using_directives):
2478         Don't declare.
2479         (get_local_using_directives, set_local_using_directives)
2480         (get_global_using_directives): Declare.
2481         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
2482         m_global_using_directives>: New members.
2483         (finish_block_internal, prepare_for_building)
2484         (reset_symtab_globals, end_symtab_get_static_block)
2485         (push_context): Update.
2486         (get_local_using_directives, set_local_using_directives)
2487         (get_global_using_directives): New functions.
2488         (buildsym_init): Update.
2489
2490 2018-07-16  Tom Tromey  <tom@tromey.com>
2491
2492         * xcoffread.c (xcoff_initial_scan): Don't call
2493         free_pending_blocks.
2494         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
2495         * buildsym.h (class scoped_free_pendings): Add constructor.
2496         (free_pending_blocks): Don't declare.
2497         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
2498         (free_pending_blocks): Now static.
2499
2500 2018-07-16  Tom Tromey  <tom@tromey.com>
2501
2502         * buildsym.h (push_subfile, pop_subfile): Update declarations.
2503         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
2504         member.
2505         (struct subfile_stack): Remove.
2506         (subfile_stack): Remove.
2507         (push_subfile, pop_subfile, buildsym_init): Update.
2508
2509 2018-07-16  Tom Tromey  <tom@tromey.com>
2510
2511         * buildsym.c (push_subfile): Use gdb_assert.
2512         (pop_subfile): Use gdb_assert.
2513
2514 2018-07-16  Tom Tromey  <tom@tromey.com>
2515
2516         * buildsym.h (merge_symbol_lists): Remove.
2517         * buildsym.c (merge_symbol_lists): Remove.
2518
2519 2018-07-16  Tom Tromey  <tom@tromey.com>
2520
2521         * stabsread.c (scan_file_globals): Update comment.
2522         * stabsread.h (scan_file_globals): Move from buildsym.h.
2523         * buildsym.h (scan_file_globals): Move to stabsread.h.
2524
2525 2018-07-16  Tom Tromey  <tom@tromey.com>
2526
2527         * xcoffread.c (xcoff_new_init): Update.
2528         * mipsread.c (mipscoff_new_init): Update.
2529         * mdebugread.c (mdebug_build_psymtabs): Update.
2530         * elfread.c (elf_new_init): Update.
2531         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
2532         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
2533         * buildsym.h (buildsym_new_init): Don't declare.
2534         * buildsym.c (buildsym_new_init): Remove.
2535
2536 2018-07-16  Tom Tromey  <tom@tromey.com>
2537
2538         * stabsread.h (within_function): Move from buildsym.h.
2539         * stabsread.c (start_stabs): Clear within_function.
2540         * coffread.c (coff_start_symtab): Clear within_function.
2541         * buildsym.h (within_function): Move to stabsread.h.
2542         * buildsym.c (prepare_for_building): Update.
2543
2544 2018-07-16  Tom Tromey  <tom@tromey.com>
2545
2546         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
2547         * dwarf2read.c (dwarf2_start_symtab): Don't set
2548         processing_gcc_compilation.
2549         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
2550
2551 2018-07-16  Tom Tromey  <tom@tromey.com>
2552
2553         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
2554         (next_symbol_text_func): Move from buildsym.h.
2555         * stabsread.c (hashname): Move from buildsym.c.
2556         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
2557         (next_symbol_text_func, hashname): Move to stabsread.h.
2558         * buildsym.c: Don't include bcache.h
2559         (hashname): Move to stasbread.c.
2560
2561 2018-07-16  Tom Tromey  <tom@tromey.com>
2562
2563         * buildsym.h (context_stack_size): Don't declare.
2564         * buildsym.c (context_stack_size): New global.
2565
2566 2018-07-16  Tom Tromey  <tom@tromey.com>
2567
2568         * dbxread.c (processing_acc_compilation): New global.
2569         * buildsym.h (processing_acc_compilation): Don't declare.
2570
2571 2018-07-16  Tom Tromey  <tom@tromey.com>
2572
2573         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
2574         * dbxread.c (read_ofile_symtab): Update.
2575         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
2576         * buildsym.h (last_source_start_addr): Remove.
2577         (set_last_source_start_addr, get_last_source_start_addr):
2578         Declare.
2579         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
2580         parameter.
2581         (struct buildsym_compunit) <m_last_source_start_addr>: New
2582         member.
2583         (prepare_for_building): Remove start_addr parameter.
2584         (start_symtab, restart_symtab, end_symtab_get_static_block)
2585         (end_symtab_with_blockvector): Update.
2586         (set_last_source_start_addr, get_last_source_start_addr): New
2587         functions.
2588
2589 2018-07-16  Tom Tromey  <tom@tromey.com>
2590
2591         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
2592         member.
2593         (have_line_numbers): Remove.
2594         (record_line, prepare_for_building, end_symtab_get_static_block)
2595         (augment_type_symtab): Update.
2596
2597 2018-07-16  Tom Tromey  <tom@tromey.com>
2598
2599         * buildsym.c (~buildsym_compunit): Free the macro table.
2600         (struct buildsym_compunit) <get_macro_table, release_macros>: New
2601         methods.
2602         <m_pending_macros>: New member.
2603         (pending_macros): Remove.
2604         (~scoped_free_pendings, get_macro_table, prepare_for_building)
2605         (reset_symtab_globals, end_symtab_get_static_block)
2606         (end_symtab_with_blockvector, augment_type_symtab)
2607         (buildsym_init): Update.
2608
2609 2018-07-16  Tom Tromey  <tom@tromey.com>
2610
2611         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
2612         parameter.
2613         (buildsym_compunit::set_last_source_file): New method.
2614         <m_last_source_file>: New member.
2615         (prepare_for_building): Remove "name" parameter.
2616         (start_symtab, restart_symtab, reset_symtab_globals): Update.
2617         (last_source_file): Remove.
2618         (set_last_source_file, get_last_source_file): Update.
2619
2620 2018-07-16  Tom Tromey  <tom@tromey.com>
2621
2622         * buildsym.c (prepare_for_building): Add assert.
2623
2624 2018-07-16  Tom Tromey  <tom@tromey.com>
2625
2626         * buildsym.c (~buildsym_compunit): Update.
2627         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
2628         (start_subfile, patch_subfile_names)
2629         (end_symtab_with_blockvector): Update.
2630
2631 2018-07-16  Tom Tromey  <tom@tromey.com>
2632
2633         * buildsym.c (struct buildsym_compunit): Add constructor,
2634         destructor, initializers.
2635         (start_buildsym_compunit): Remove.
2636         (free_buildsym_compunit): Use "delete".
2637         (start_symtab, restart_symtab): Use "new".
2638
2639 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
2640
2641         * symfile.c (set_objfile_default_section_offset): Remove struct
2642         keyword.
2643
2644 2018-07-14  Stafford Horne  <shorne@gmail.com>
2645
2646         * (Responsible Maintainers): Add myself as or1k maintainer.
2647
2648 2018-07-13  Tom Tromey  <tom@tromey.com>
2649
2650         * symfile.c (set_objfile_default_section_offset): Use extra braces
2651         around initializer.
2652
2653 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
2654
2655         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
2656         non-branching basr.
2657
2658 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2659
2660         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
2661         unittests/cli-utils-selftests.c
2662         * unittests/cli-utils-selftests.c: New file.
2663
2664 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2665
2666         * NEWS: Mention new commands. Mention change to 'thread apply'.
2667
2668 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2669
2670         * thread.c (thr_try_catch_cmd): New function.
2671         (thread_apply_all_command): Handle qcs flags.
2672         (thread_apply_command): Handle qcs flags.
2673         (taas_command): New function.
2674         (tfaas_command): New function.
2675         (_initialize_thread): Update to setup the new commands 'taas
2676         and 'tfaas'. Change doc string for 'thread apply'.
2677
2678 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2679
2680         * stack.c: (trailing_outermost_frame): New function, mostly
2681         extracted from backtrace_command_1.
2682         (leading_innermost_frame): New function.
2683         (backtrace_command_1): Update to call trailing_outermost_frame.
2684         (frame_apply_command_count): New function.
2685         (frame_apply_level_command): New function.
2686         (frame_apply_all_command): New function.
2687         (frame_apply_command): New function.
2688         (faas_command): New function.
2689         (frame_cmd_list): New variable.
2690         (_initialize_stack): Update to setup the new commands 'frame apply'
2691         and 'faas'.
2692
2693 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2694
2695         * cli-utils.c (number_or_range_parser::get_number): Only handle
2696         numbers or convenience var as numbers.
2697         (parse_flags): New function.
2698         (parse_flags_qcs): New function.
2699         (number_or_range_parser::finished): Ensure parsing end is detected
2700         before end of string.
2701         * cli-utils.h (parse_flags): New function.
2702         (parse_flags_qcs): New function.
2703         (number_or_range_parser): Remove m_finished bool.
2704         (number_or_range_parser::skip_range): Set m_in_range to false.
2705
2706 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
2707
2708         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
2709         on Windows.
2710
2711 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
2712             Jan Kratochvil  <jan.kratochvil@redhat.com>
2713             Paul Fertser  <fercerpav@gmail.com>
2714             Tsutomu Seki  <sekiriki@gmail.com>
2715             Pedro Alves  <palves@redhat.com>
2716
2717         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
2718         'unittests/parse-connection-spec-selftests.c'.
2719         (COMMON_SFILES): Add 'common/netstuff.c'.
2720         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
2721         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
2722         * common/netstuff.c: New file.
2723         * common/netstuff.h: New file.
2724         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
2725         (wait_for_connect): Update comment.  New parameter
2726         'gdb::optional<int> sock' instead of 'struct serial *scb'.
2727         Use 'sock' directly instead of 'scb->fd'.
2728         (try_connect): New function, with code from 'net_open'.
2729         (net_open): Rewrite main loop to deal with multiple
2730         sockets/addresses.  Handle IPv6-style hostnames; implement
2731         support for IPv6 connections.
2732         * unittests/parse-connection-spec-selftests.c: New file.
2733
2734 2018-07-11  Pedro Alves  <palves@redhat.com>
2735
2736         PR gdb/23377
2737         * remote.c (remote_target::remote_detach_pid): Call
2738         set_current_process.
2739
2740 2018-07-11  Pedro Alves  <palves@redhat.com>
2741
2742         * h8300-tdep.c (h8300_gdbarch_init): Remove
2743         set_gdbarch_ecoff_reg_to_regnum calls.
2744
2745 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
2746
2747         PR c++/23373
2748         * c-typeprint.c (c_type_print_base_struct_union): Don't print
2749         offsets/sizes for static members of a class/struct.
2750
2751 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
2752
2753         * target-descriptions.c (tdesc_register_bitsize): Rename.
2754         * target-descriptions.h (tdesc_register_bitsize): Likewise.
2755         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
2756         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
2757
2758 2018-07-10  Tom Tromey  <tom@tromey.com>
2759
2760         * breakpoint.c (moribund_locations): Now static and a
2761         std::vector.
2762         (breakpoint_init_inferior, moribund_breakpoint_here_p)
2763         (build_bpstat_chain, update_global_location_list)
2764         (breakpoint_retire_moribund): Update.
2765         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
2766         VEC.
2767
2768 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
2769
2770         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
2771         (riscv_register_reggroup_p): Use new function, remove unneeded
2772         parenthesis.
2773         (riscv_push_dummy_call): Extend assert to compare against xlen or
2774         flen based on register type.
2775
2776 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
2777
2778         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
2779
2780 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
2781
2782         * remote.c (show_hardware_watchpoint_limit): New function.
2783         (show_hardware_watchpoint_length_limit): New function.
2784         (show_hardware_breakpoint_limit): New function.
2785         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
2786         where appropriate, update help text.
2787
2788 2018-07-09  Tom Tromey  <tom@tromey.com>
2789
2790         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
2791         (CLIBS): Don't mention NAT_CLIBS.
2792
2793 2018-07-09  Tom Tromey  <tom@tromey.com>
2794
2795         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
2796         (LIBGDB_OBS, clean mostlyclean): Update.
2797         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
2798
2799 2018-07-09  Tom Tromey  <tom@tromey.com>
2800
2801         * Makefile.in (%.c: %.y): Use ECHO_YACC.
2802         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
2803         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
2804
2805 2018-07-09  Tom Tromey  <tom@tromey.com>
2806
2807         * Makefile.in (ALLDEPFILES): Remove exec.c.
2808         (COMMON_OBS): Remove exec.o.
2809         (COMMON_SFILES): Add exec.c.
2810
2811 2018-07-09  Tom Tromey  <tom@tromey.com>
2812
2813         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
2814
2815 2018-07-09  Tom Tromey  <tom@tromey.com>
2816
2817         * Makefile.in (clean mostlyclean): Remove stamp-version.
2818         (version.c): Depend on stamp-version.
2819         (stamp-version): New rule, from version.c rule.
2820
2821 2018-07-09  Tom Tromey  <tom@tromey.com>
2822
2823         * Makefile.in (init.c): Depend on stamp-init.
2824         (stamp-init): New rule, from init.c rule.
2825         (clean mostlyclean): Remove stamp-init.
2826
2827 2018-07-09  Tom Tromey  <tom@tromey.com>
2828
2829         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
2830         SUBDIR_GCC_COMPILE_SRCS.
2831
2832 2018-07-09  Tom Tromey  <tom@tromey.com>
2833
2834         * Makefile.in (init.c): Remove some unused sed rules.
2835
2836 2018-07-09  Tom Tromey  <tom@tromey.com>
2837
2838         * Makefile.in (TSOBS): Remove.
2839         (INIT_FILES): Update.
2840         (LIBGDB_OBS): Update.
2841         (COMMON_SFILES): Add inflow.c.
2842         (SFILES): Remove inflow.c.
2843
2844 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
2845
2846         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
2847
2848 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
2849
2850         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
2851         get_saveloc_name, is_signal_frame_name, step_name,
2852         init_remote_name, create_addr_space_name,
2853         destroy_addr_space_name, search_unwind_table_name,
2854         find_dyn_list_name): Constify.
2855
2856 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
2857
2858         * darwin-nat.c (darwin_pthread_kill): New function.
2859         (darwin_resume_thread): Use darwin_pthread_kill.
2860
2861 2018-07-05  Tom de Vries  <tdevries@suse.de>
2862
2863         * macroexp.c (macro_buffer) <operator=>: New member function.
2864
2865 2018-07-04  Tom Tromey  <tom@tromey.com>
2866
2867         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
2868
2869 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
2870
2871         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
2872         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
2873         * maint.c: Likewise.
2874         * top.c: Likewise.
2875
2876 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
2877
2878         * NEWS: Create a new section for the next release branch.
2879         Rename the section of the current branch, now that it has
2880         been cut.
2881
2882 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
2883
2884         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
2885         * version.in: Bump version to 8.2.50.DATE-git.
2886
2887 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
2888             Pedro Alves  <palves@redhat.com>
2889
2890         * linux-nat.c (linux_init_ptrace): Rename to ...
2891         (linux_init_ptrace_procfs): ... this.  Call
2892         linux_proc_init_warnings.
2893         (linux_nat_target::post_attach)
2894         (linux_nat_target::post_startup_inferior): Adjust.
2895         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
2896         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
2897
2898 2018-07-04  Tom de Vries  <tdevries@suse.de>
2899
2900         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
2901         check ...
2902         (read_comp_unit_head): ... here.
2903
2904 2018-07-03  Tom Tromey  <tom@tromey.com>
2905
2906         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
2907         (stop_tracing, tstatus_command)
2908         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
2909         (print_one_static_tracepoint_marker): Update.
2910         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
2911         std::vector.
2912         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
2913         VEC.
2914         (all_tracepoints, static_tracepoints_here): Return std::vector.
2915
2916 2018-07-03  Tom Tromey  <tom@tromey.com>
2917
2918         * common/ptid.c (ptid_equal): Remove.
2919         * common/ptid.h (ptid_equal): Don't declare.
2920         * ada-tasks.c: Update.
2921         * breakpoint.c: Update.
2922         * common/agent.c: Update.
2923         * corelow.c: Update.
2924         * darwin-nat-info.c: Update.
2925         * darwin-nat.c: Update.
2926         * dcache.c: Update.
2927         * dtrace-probe.c: Update.
2928         * dummy-frame.c: Update.
2929         * fbsd-nat.c: Update.
2930         * frame.c: Update.
2931         * gdbthread.h: Update.
2932         * gnu-nat.c: Update.
2933         * go32-nat.c: Update.
2934         * inf-loop.c: Update.
2935         * inf-ptrace.c: Update.
2936         * infcall.c: Update.
2937         * infcmd.c: Update.
2938         * inflow.c: Update.
2939         * infrun.c: Update.
2940         * linux-fork.c: Update.
2941         * linux-nat.c: Update.
2942         * linux-thread-db.c: Update.
2943         * mi/mi-cmd-var.c: Update.
2944         * mi/mi-interp.c: Update.
2945         * mi/mi-main.c: Update.
2946         * nto-procfs.c: Update.
2947         * ppc-linux-tdep.c: Update.
2948         * procfs.c: Update.
2949         * python/py-inferior.c: Update.
2950         * python/py-record-btrace.c: Update.
2951         * python/py-record.c: Update.
2952         * ravenscar-thread.c: Update.
2953         * regcache.c: Update.
2954         * remote-sim.c: Update.
2955         * remote.c: Update.
2956         * sol-thread.c: Update.
2957         * solib.c: Update.
2958         * target.c: Update.
2959         * tui/tui-stack.c: Update.
2960         * varobj.c: Update.
2961         * windows-nat.c: Update.
2962         * windows-tdep.c: Update.
2963
2964 2018-07-03  Tom Tromey  <tom@tromey.com>
2965
2966         * common/ptid.c (ptid_match): Remove.
2967         * common/ptid.h (ptid_match): Don't declare.
2968         * fbsd-nat.c: Update.
2969         * infcmd.c: Update.
2970         * infrun.c: Update.
2971         * linux-nat.c: Update.
2972         * record-btrace.c: Update.
2973         * regcache.c: Update.
2974         * remote.c: Update.
2975
2976 2018-07-03  Tom Tromey  <tom@tromey.com>
2977
2978         * common/ptid.c (ptid_tid_p): Remove.
2979         * common/ptid.h (ptid_tid_p): Don't declare.
2980         * sol-thread.c: Update.
2981
2982 2018-07-03  Tom Tromey  <tom@tromey.com>
2983
2984         * common/ptid.c (ptid_lwp_p): Remove.
2985         * common/ptid.h (ptid_lwp_p): Don't declare.
2986         * fbsd-nat.c: Update.
2987         * linux-nat.c: Update.
2988         * nat/linux-procfs.c: Update.
2989         * nat/x86-linux-dregs.c: Update.
2990         * sol-thread.c: Update.
2991
2992 2018-07-03  Tom Tromey  <tom@tromey.com>
2993
2994         * common/ptid.c (ptid_is_pid): Remove.
2995         * common/ptid.h (ptid_is_pid): Don't declare.
2996         * infrun.c: Update.
2997         * linux-nat.c: Update.
2998         * mi/mi-interp.c: Update.
2999         * remote.c: Update.
3000         * thread.c: Update.
3001
3002 2018-07-03  Tom Tromey  <tom@tromey.com>
3003
3004         * common/ptid.c (ptid_get_tid): Remove.
3005         * common/ptid.h (ptid_get_tid): Don't declare.
3006         * ada-tasks.c: Update.
3007         * aix-thread.c: Update.
3008         * bsd-uthread.c: Update.
3009         * darwin-nat.c: Update.
3010         * fbsd-nat.c: Update.
3011         * i386-darwin-nat.c: Update.
3012         * infrun.c: Update.
3013         * linux-tdep.c: Update.
3014         * nto-procfs.c: Update.
3015         * ppc-ravenscar-thread.c: Update.
3016         * python/py-infthread.c: Update.
3017         * ravenscar-thread.c: Update.
3018         * sol-thread.c: Update.
3019         * sparc-ravenscar-thread.c: Update.
3020         * windows-nat.c: Update.
3021
3022 2018-07-03  Tom Tromey  <tom@tromey.com>
3023
3024         * common/ptid.c (ptid_get_lwp): Remove.
3025         * common/ptid.h (ptid_get_lwp): Don't declare.
3026         * aarch64-linux-nat.c: Update.
3027         * ada-tasks.c: Update.
3028         * aix-thread.c: Update.
3029         * amd64-linux-nat.c: Update.
3030         * arm-linux-nat.c: Update.
3031         * corelow.c: Update.
3032         * fbsd-nat.c: Update.
3033         * fbsd-tdep.c: Update.
3034         * gnu-nat.c: Update.
3035         * i386-cygwin-tdep.c: Update.
3036         * i386-gnu-nat.c: Update.
3037         * i386-linux-nat.c: Update.
3038         * ia64-linux-nat.c: Update.
3039         * inf-ptrace.c: Update.
3040         * infrun.c: Update.
3041         * linux-fork.c: Update.
3042         * linux-nat.c: Update.
3043         * linux-tdep.c: Update.
3044         * linux-thread-db.c: Update.
3045         * mips-linux-nat.c: Update.
3046         * nat/aarch64-linux-hw-point.c: Update.
3047         * nat/aarch64-linux.c: Update.
3048         * nat/linux-btrace.c: Update.
3049         * nat/linux-osdata.c: Update.
3050         * nat/linux-procfs.c: Update.
3051         * nat/x86-linux-dregs.c: Update.
3052         * obsd-nat.c: Update.
3053         * ppc-fbsd-nat.c: Update.
3054         * ppc-linux-nat.c: Update.
3055         * procfs.c: Update.
3056         * python/py-infthread.c: Update.
3057         * ravenscar-thread.c: Update.
3058         * remote.c: Update.
3059         * s390-linux-nat.c: Update.
3060         * sol-thread.c: Update.
3061         * sol2-tdep.c: Update.
3062         * spu-linux-nat.c: Update.
3063         * x86-linux-nat.c: Update.
3064         * xtensa-linux-nat.c: Update.
3065
3066 2018-07-03  Tom Tromey  <tom@tromey.com>
3067
3068         * common/ptid.c (ptid_get_pid): Remove.
3069         * common/ptid.h (ptid_get_pid): Don't declare.
3070         * aarch64-linux-nat.c: Update.
3071         * ada-lang.c: Update.
3072         * aix-thread.c: Update.
3073         * alpha-bsd-nat.c: Update.
3074         * amd64-fbsd-nat.c: Update.
3075         * amd64-linux-nat.c: Update.
3076         * arm-linux-nat.c: Update.
3077         * arm-nbsd-nat.c: Update.
3078         * auxv.c: Update.
3079         * break-catch-syscall.c: Update.
3080         * breakpoint.c: Update.
3081         * bsd-uthread.c: Update.
3082         * corelow.c: Update.
3083         * ctf.c: Update.
3084         * darwin-nat.c: Update.
3085         * fbsd-nat.c: Update.
3086         * fbsd-tdep.c: Update.
3087         * gcore.c: Update.
3088         * gnu-nat.c: Update.
3089         * hppa-nbsd-nat.c: Update.
3090         * hppa-obsd-nat.c: Update.
3091         * i386-fbsd-nat.c: Update.
3092         * ia64-linux-nat.c: Update.
3093         * inf-ptrace.c: Update.
3094         * infcmd.c: Update.
3095         * inferior.c: Update.
3096         * inferior.h: Update.
3097         * inflow.c: Update.
3098         * infrun.c: Update.
3099         * linux-fork.c: Update.
3100         * linux-nat.c: Update.
3101         * linux-tdep.c: Update.
3102         * linux-thread-db.c: Update.
3103         * m68k-bsd-nat.c: Update.
3104         * mi/mi-interp.c: Update.
3105         * mi/mi-main.c: Update.
3106         * mips-linux-nat.c: Update.
3107         * mips-nbsd-nat.c: Update.
3108         * mips64-obsd-nat.c: Update.
3109         * nat/aarch64-linux-hw-point.c: Update.
3110         * nat/aarch64-linux.c: Update.
3111         * nat/linux-btrace.c: Update.
3112         * nat/linux-osdata.c: Update.
3113         * nat/linux-procfs.c: Update.
3114         * nat/x86-linux-dregs.c: Update.
3115         * nto-procfs.c: Update.
3116         * obsd-nat.c: Update.
3117         * ppc-linux-nat.c: Update.
3118         * ppc-nbsd-nat.c: Update.
3119         * ppc-obsd-nat.c: Update.
3120         * proc-service.c: Update.
3121         * procfs.c: Update.
3122         * python/py-inferior.c: Update.
3123         * python/py-infthread.c: Update.
3124         * ravenscar-thread.c: Update.
3125         * record.c: Update.
3126         * remote-sim.c: Update.
3127         * remote.c: Update.
3128         * rs6000-nat.c: Update.
3129         * s390-linux-nat.c: Update.
3130         * sh-nbsd-nat.c: Update.
3131         * sol-thread.c: Update.
3132         * sparc-nat.c: Update.
3133         * sparc64-tdep.c: Update.
3134         * spu-linux-nat.c: Update.
3135         * spu-tdep.c: Update.
3136         * target-debug.h: Update.
3137         * target.c: Update.
3138         * thread.c: Update.
3139         * tid-parse.c: Update.
3140         * tracefile-tfile.c: Update.
3141         * vax-bsd-nat.c: Update.
3142         * windows-nat.c: Update.
3143         * x86-linux-nat.c: Update.
3144         * x86-nat.c: Update.
3145
3146 2018-07-03  Tom Tromey  <tom@tromey.com>
3147
3148         * common/ptid.c (pid_to_ptid): Remove.
3149         * common/ptid.h (pid_to_ptid): Don't declare.
3150         * aix-thread.c: Update.
3151         * arm-linux-nat.c: Update.
3152         * common/ptid.c: Update.
3153         * common/ptid.h: Update.
3154         * corelow.c: Update.
3155         * ctf.c: Update.
3156         * darwin-nat.c: Update.
3157         * fbsd-nat.c: Update.
3158         * fork-child.c: Update.
3159         * gnu-nat.c: Update.
3160         * go32-nat.c: Update.
3161         * inf-ptrace.c: Update.
3162         * infcmd.c: Update.
3163         * inferior.c: Update.
3164         * infrun.c: Update.
3165         * linux-fork.c: Update.
3166         * linux-nat.c: Update.
3167         * nat/aarch64-linux-hw-point.c: Update.
3168         * nat/fork-inferior.c: Update.
3169         * nat/x86-linux-dregs.c: Update.
3170         * nto-procfs.c: Update.
3171         * obsd-nat.c: Update.
3172         * procfs.c: Update.
3173         * progspace.c: Update.
3174         * remote.c: Update.
3175         * rs6000-nat.c: Update.
3176         * s390-linux-nat.c: Update.
3177         * sol-thread.c: Update.
3178         * spu-linux-nat.c: Update.
3179         * target.c: Update.
3180         * top.c: Update.
3181         * tracefile-tfile.c: Update.
3182         * windows-nat.c: Update.
3183
3184 2018-07-03  Tom Tromey  <tom@tromey.com>
3185
3186         * common/ptid.h (ptid_build): Don't declare.
3187         * common/ptid.c (ptid_build): Remove.
3188         * aix-thread.c: Update.
3189         * bsd-kvm.c: Update.
3190         * bsd-uthread.c: Update.
3191         * common/agent.c: Update.
3192         * common/ptid.c: Update.
3193         * common/ptid.h: Update.
3194         * corelow.c: Update.
3195         * darwin-nat.c: Update.
3196         * fbsd-nat.c: Update.
3197         * gnu-nat.c: Update.
3198         * linux-fork.c: Update.
3199         * linux-nat.c: Update.
3200         * linux-thread-db.c: Update.
3201         * nat/linux-osdata.c: Update.
3202         * nat/linux-procfs.c: Update.
3203         * nto-procfs.c: Update.
3204         * obsd-nat.c: Update.
3205         * proc-service.c: Update.
3206         * procfs.c: Update.
3207         * ravenscar-thread.c: Update.
3208         * remote-sim.c: Update.
3209         * remote.c: Update.
3210         * sol-thread.c: Update.
3211         * target.c: Update.
3212         * windows-nat.c: Update.
3213
3214 2018-07-03  Tom Tromey  <tom@tromey.com>
3215
3216         * infrun.c (follow_exec): Use exit_inferior_silent.
3217         * inferior.c (exit_inferior_num_silent): Remove.
3218         * inferior.h (exit_inferior_num_silent): Don't declare.
3219
3220 2018-07-03  Tom Tromey  <tom@tromey.com>
3221
3222         PR cli/23340:
3223         * darwin-nat.c (darwin_attach_pid): Reset inferior and
3224         inferior_ptid on error.
3225
3226 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
3227             Simon Marchi  <simon.marchi@polymtl.ca>
3228
3229         PR tdep/8282
3230         * disasm.h (gdb_disassembler): Add
3231         `m_disassembler_options_holder'. member
3232         * disasm.c (get_all_disassembler_options): New function.
3233         (gdb_disassembler::gdb_disassembler): Use it.
3234         (gdb_buffered_insn_length_init_dis): Likewise.
3235         (gdb_buffered_insn_length): Adjust accordingly.
3236         (set_disassembler_options): Handle options with arguments.
3237         (show_disassembler_options_sfunc): Likewise.  Add a leading new
3238         line if showing options with descriptions.
3239         (disassembler_options_completer): Adapt to using the
3240         `disasm_options_and_args_t' structure.
3241         * mips-tdep.c (mips_disassembler_options): New variable.
3242         (mips_disassembler_options_o32): Likewise.
3243         (mips_disassembler_options_n32): Likewise.
3244         (mips_disassembler_options_n64): Likewise.
3245         (gdb_print_insn_mips): Don't set `disassembler_options'.
3246         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
3247         functions.
3248         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
3249         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
3250         `gdbarch_disassembler_options_implicit' and
3251         `gdbarch_valid_disassembler_options'.
3252         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
3253         `disasm_options_and_args_t' structure.
3254         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
3255         method.
3256         (valid_disassembler_options): Switch from `disasm_options_t' to
3257         the `disasm_options_and_args_t' structure.
3258         * NEWS: Document `set disassembler-options' support for the MIPS
3259         target.
3260         * gdbarch.h: Regenerate.
3261         * gdbarch.c: Regenerate.
3262
3263 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
3264
3265         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
3266
3267 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
3268
3269         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
3270         parameter in call to amd64_target_description.
3271         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
3272         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
3273         (amd64fbsd_init_abi): Likewise.
3274         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
3275         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
3276         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
3277         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
3278
3279 2018-06-29  Pedro Alves  <palves@redhat.com>
3280
3281         * gdb/amd64-tdep.h (amd64_create_target_description): Add
3282         "segments" parameter.
3283         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
3284         (_initialize_amd64_tdep): Update call to
3285         amd64_create_target_description.
3286         (amd64_target_description): Add "segments" parameter.  Adjust
3287         the implementation to use it.
3288         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
3289         call to amd64_create_target_description.
3290         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
3291         * gdb/arch/amd64.h (amd64_create_target_description): Add
3292         "segments" register.
3293         * gdb/arch/amd64.c (amd64_create_target_description): Add
3294         "segments" parameter.  Call create_feature_i386_64bit_segments
3295         only if SEGMENTS is true.
3296         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
3297         call to amd64_create_target_description.
3298
3299 2018-06-29  Pedro Alves  <palves@redhat.com>
3300
3301         * thread.c (thread_target_id_str): New, factored out from ...
3302         (print_thread_info_1): ... here.  Use it to compute the max
3303         "Target Id" column width.
3304
3305 2018-06-29  Pedro Alves  <palves@redhat.com>
3306
3307         * remote.c (remote_target::extra_thread_info): Delete
3308         'display_buf' and 'n' locals.  from the cache, regardless of
3309         packet mechanims is in use.  Use cache for qThreadExtra and qP
3310         methods too.
3311
3312 2018-06-29  Pedro Alves  <palves@redhat.com>
3313
3314         * blockframe.c (find_pc_sect_containing_function): New function.
3315         * breakpoint.c (print_breakpoint_location): Don't call
3316         find_pc_sect_function.
3317         * linespec.c (create_sals_line_offset): Record the location's
3318         symbol in the sal.
3319         * linespec.c (convert_address_location_to_sals): Fill in sal's
3320         symbol with find_pc_sect_containing_function.
3321         * symtab.c (find_function_start_sal): Rename to ...
3322         (find_function_start_sal_1): ... this.
3323         (find_function_start_sal): Reimplement as wrapper around
3324         find_function_start_sal_1, and use
3325         find_pc_sect_containing_function to fill in the sal's symbol.
3326         (find_function_start_sal(symbol*, bool)): Adjust.
3327         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
3328         comments.
3329         (find_pc_sect_containing_function): Declare.
3330
3331 2018-06-29  Pedro Alves  <palves@redhat.com>
3332
3333         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
3334         true if the the location has no symbol.
3335
3336 2018-06-28  Tom Tromey  <tom@tromey.com>
3337
3338         * NEWS: Mention --enable-codesign.
3339         * silent-rules.mk (ECHO_SIGN): New variable.
3340         * configure.ac: Add --enable-codesign.
3341         * configure: Rebuild.
3342         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
3343         (gdb$(EXEEXT)): Optionally invoke codesign.
3344
3345 2018-06-28  Pedro Alves  <palves@redhat.com>
3346
3347         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
3348         comments.
3349         (switch_to_thread_no_regs): Adjust comment.
3350         * infcmd.c (stop_pc): Delete.
3351         (post_create_inferior, info_program_command): Replace references
3352         to stop_pc with references to thread_info->suspend.stop_pc.
3353         * inferior.h (stop_pc): Delete declaration.
3354         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
3355         (handle_inferior_event_1, handle_signal_stop)
3356         (process_event_stop_test, keep_going_stepped_thread)
3357         (handle_step_into_function, handle_step_into_function_backward)
3358         (print_stop_location): Replace references to stop_pc with
3359         references to thread_info->suspend.stop_pc.
3360         (struct infcall_suspend_state) <stop_pc>: Delete field.
3361         (save_infcall_suspend_state, restore_infcall_suspend_state):
3362         Remove references to inf_stat->stop_pc.
3363         * linux-fork.c (fork_load_infrun_state): Likewise.
3364         * record-btrace.c (record_btrace_set_replay): Likewise.
3365         * record-full.c (record_full_goto_entry): Likewise.
3366         * remote.c (print_one_stopped_thread): Likewise.
3367         * target.c (target_resume): Extend comment.
3368         * thread.c (set_executing_thread): New.
3369         (set_executing): Use it.
3370         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
3371         Remove references to stop_pc.
3372
3373 2018-06-28  Pedro Alves  <palves@redhat.com>
3374
3375         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
3376         Moving fetching stop_pc until after ecs->event_thread is refreshed.
3377
3378 2018-06-28  Tom Tromey  <tom@tromey.com>
3379
3380         * coffread.c (coff_symfile_finish): Update.
3381         * xcoffread.c (xcoff_symfile_finish): Update.
3382         * elfread.c (elf_symfile_finish): Update.
3383         * symfile.h (dwarf2_free_objfile): Don't declare.
3384         * dwarf2read.c (_initialize_dwarf2_read): Use
3385         register_objfile_data_with_cleanup.
3386         (dwarf2_free_objfile): Now static.  Change signature.
3387
3388 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
3389
3390         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
3391         option "-o" to add-symbol-file-load to add an offset to each
3392         section's load address.
3393         * symfile.c (set_objfile_default_section_offset): New function.
3394
3395 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
3396
3397         * symfile.c (add_symbol_file_command): Make sure that sections
3398         with the same name are sorted in the same order.
3399
3400 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
3401
3402         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
3403         require the second argument.  If omitted, load sections at the
3404         addresses specified in the file.
3405
3406 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
3407
3408         * symfile.c (symbol_file_command, symbol_file_add_main_1)
3409         (_initialize_symfile): Add option "-o" to symbol-file to add an
3410         offset to each section of the symbol file.
3411
3412 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
3413
3414         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
3415
3416 2018-06-27  Tom Tromey  <tom@tromey.com>
3417
3418         * stack.c (_initialize_stack): Update "func" help text.
3419
3420 2018-06-27  Tom Tromey  <tom@tromey.com>
3421
3422         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
3423         std::vector.
3424         (unwind_infopy_str, pyuw_create_unwind_info)
3425         (unwind_infopy_add_saved_register, pyuw_sniffer)
3426         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
3427         Update.
3428         (struct saved_reg): Add constructor.
3429         <value>: Now a gdbpy_ref<>.
3430
3431 2018-06-27  Tom Tromey  <tom@tromey.com>
3432
3433         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
3434
3435 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
3436
3437         * gdb-gdb.py.in: Format using autopep8.
3438
3439 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
3440
3441         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
3442         (type_lookup_function): Recognize CORE_ADDR values.
3443
3444 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
3445
3446         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
3447         print tag_name.
3448
3449 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
3450
3451         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
3452         <__lt__>: Add.
3453
3454 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
3455
3456         * gdb-gdb.py: Move to...
3457         * gdb-gdb.py.in: ... here.
3458         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
3459         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
3460         dependencies.
3461         (distclean): Remove gdb-gdb.py when cleaning.
3462         (gdb-gdb.py, gdb-gdb.gdb): New rules.
3463         * configure: Re-generate.
3464
3465 2018-06-27  Pedro Alves  <palves@redhat.com>
3466
3467         * proc-service.c (get_ps_regcache): New.
3468         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
3469         (ps_lsetfpregs): Use it.
3470
3471 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
3472
3473         PR gdb/21695
3474         * dwarf2read.c (lnp_state_machine::check_line_address): Update declaration.
3475         (dwarf_decode_lines_1): Adjust.
3476
3477 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
3478
3479         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
3480         override.
3481         <info_proc>: Likewise.
3482
3483 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
3484
3485         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
3486         to windows_fetch_one_register, and only handle the case of
3487         fetching one register.  Move the code that reloads the context
3488         and iterates over all registers if R is negative to...
3489         (windows_nat_target::fetch_registers): ... here.
3490         (do_windows_store_inferior_registers): Rename to
3491         windows_store_one_register, and only handle the case of storing
3492         one register.  Move the code that handles the case where r is
3493         negative to...
3494         (windows_nat_target::store_registers) ... here.
3495
3496 2018-06-26  Tom Tromey  <tom@tromey.com>
3497
3498         PR rust/22574:
3499         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
3500         * rust-lang.c (rust_print_struct_def): Add podata parameter.
3501         Update.
3502         (rust_internal_print_type): Add podata parameter.
3503         (rust_print_type): Update.
3504
3505 2018-06-26  Tom Tromey  <tom@tromey.com>
3506
3507         * typeprint.h (struct print_offset_data) <update, finish,
3508         maybe_print_hole>: New methods.
3509         <indentation>: New constant.
3510         * typeprint.c (print_offset_data::indentation): Define.
3511         (print_offset_data::maybe_print_hole, print_offset_data::update)
3512         (print_offset_data::finish): Move from c-typeprint.c and rename.
3513         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
3514         (print_spaces_filtered_with_print_options): Update.
3515         (c_print_type_union_field_offset, maybe_print_hole)
3516         (c_print_type_struct_field_offset): Move to typeprint.c and
3517         rename.
3518         (c_type_print_base_struct_union): Update.
3519
3520 2018-06-25  Pedro Alves  <palves@redhat.com>
3521
3522         * gdbthread.h (thread_info_ref, delete_thread)
3523         (delete_thread_silent, first_thread_of_inferior)
3524         (any_thread_of_inferior, switch_to_thread)
3525         (enable_thread_stack_temporaries)
3526         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
3527         (get_last_thread_stack_temporary)
3528         (value_in_thread_stack_temporaries, can_access_registers_thread):
3529         Spell out "struct thread_info" instead of just "thread_info".
3530         * inferior.h (notice_new_inferior): Likewise.
3531
3532 2018-06-25  Pedro Alves  <palves@redhat.com>
3533
3534         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
3535         pass thread_info pointer to delete_thread.
3536         (windows_nat_target::detach): Pass inferior pointer to
3537         detach_inferior.
3538         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
3539         delete_thread.
3540         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
3541         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
3542         and pass a thread_info pointer to delete_thread.
3543         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
3544         pass thread_info pointer to delete_thread.
3545         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
3546         delete_thread_silent call.
3547         * procfs.c (procfs_target::detach): Pass inferior pointer to
3548         detach_inferior.
3549         (procfs_target::wait): Pass thread_info pointer to delete_thread.
3550         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
3551         delete_thread_silent call.
3552         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
3553         pass thread_info pointer to delete_thread.
3554         (windows_nat_target::detach): Pass inferior pointer to
3555         delete_inferior.
3556
3557 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
3558
3559         * regcache.c (readable_regcache::read_part): Fix asserts.
3560         (reg_buffer::raw_collect_part): New function.
3561         (regcache::write_part): Fix asserts.
3562         (reg_buffer::raw_supply_part): New function.
3563         (regcache::transfer_regset_register): New helper function.
3564         (regcache::transfer_regset): Call new functions.
3565         (regcache_supply_regset): Use gdb_byte*.
3566         (regcache::supply_regset): Likewise.
3567         (regcache_collect_regset): Likewise.
3568         (regcache::collect_regset): Likewise.
3569         * regcache.h (reg_buffer::raw_collect_part): New declaration.
3570         (reg_buffer::raw_supply_part): Likewise.
3571         (regcache::transfer_regset_register): Likewise.
3572         (regcache::transfer_regset): Use gdb_byte*.
3573
3574 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
3575
3576         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
3577
3578 2018-06-21  Pedro Alves  <palves@redhat.com>
3579
3580         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
3581         instead of a ptid_t.  All callers adjusted.
3582         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
3583         adjusted.
3584         (print_ada_task_info, display_current_task_id, task_command_1):
3585         Adjust.
3586         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
3587         inferior_thread.
3588         (breakpoint_kind): Adjust.
3589         (remove_breakpoints_pid): Rename to ...
3590         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
3591         pointer.  All callers adjusted.
3592         (bpstat_clear_actions): Use inferior_thread.
3593         (get_bpstat_thread): New.
3594         (bpstat_do_actions): Use it.
3595         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
3596         to take a thread_info pointer.  All callers adjusted.
3597         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
3598         (breakpoint_re_set_thread): Use inferior_thread.
3599         * breakpoint.h (struct inferior): Forward declare.
3600         (bpstat_stop_status): Update.
3601         (remove_breakpoints_pid): Delete.
3602         (remove_breakpoints_inf): New.
3603         * bsd-uthread.c (bsd_uthread_target::wait)
3604         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
3605         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
3606         (maint_btrace_packet_history_cmd)
3607         (maint_btrace_clear_packet_history_cmd): Adjust.
3608         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
3609         inferior_thread.
3610         * cli/cli-interp.c: Include "inferior.h".
3611         * common/refcounted-object.h (struct
3612         refcounted_object_ref_policy): New.
3613         * compile/compile-object-load.c: Include gdbthread.h.
3614         (store_regs): Use inferior_thread.
3615         * corelow.c (core_target::close): Use current_inferior.
3616         (core_target_open): Adjust to use first_thread_of_inferior and use
3617         the current inferior.
3618         * ctf.c (ctf_target::close): Adjust to use current_inferior.
3619         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
3620         <thread>: ... this new field.  All references adjusted.
3621         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
3622         Take a thread_info pointer instead of a ptid_t.
3623         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
3624         (dummy_frame_discard, register_dummy_frame_dtor): Take a
3625         thread_info pointer instead of a ptid_t.
3626         * elfread.c: Include "inferior.h".
3627         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
3628         Use inferior_thread.
3629         * eval.c (evaluate_subexp): Likewise.
3630         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
3631         inferior_thread.
3632         * gdb_proc_service.h (struct thread_info): Forward declare.
3633         (struct ps_prochandle) <ptid>: Delete, replaced by ...
3634         <thread>: ... this new field.  All references adjusted.
3635         * gdbarch.h, gdbarch.c: Regenerate.
3636         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
3637         'thread' parameter.  All implementations and callers adjusted.
3638         * gdbthread.h (thread_info) <set_running>: New method.
3639         (delete_thread, delete_thread_silent): Take a thread_info pointer
3640         instead of a ptid.
3641         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
3642         (first_thread_of_process): Delete, replaced by ...
3643         (first_thread_of_inferior): ... this new function.  All callers
3644         adjusted.
3645         (any_live_thread_of_process): Delete, replaced by ...
3646         (any_live_thread_of_inferior): ... this new function.  All callers
3647         adjusted.
3648         (switch_to_thread, switch_to_no_thread): Declare.
3649         (is_executing): Delete.
3650         (enable_thread_stack_temporaries): Update comment.
3651         <enable_thread_stack_temporaries>: Take a thread_info pointer
3652         instead of a ptid_t.  Incref the thread.
3653         <~enable_thread_stack_temporaries>: Decref the thread.
3654         <m_ptid>: Delete
3655         <m_thr>: New.
3656         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
3657         (get_last_thread_stack_temporary)
3658         (value_in_thread_stack_temporaries, can_access_registers_thread):
3659         Take a thread_info pointer instead of a ptid_t.  All callers
3660         adjusted.
3661         * infcall.c (get_call_return_value): Use inferior_thread.
3662         (run_inferior_call): Work with thread pointers instead of ptid_t.
3663         (call_function_by_hand_dummy): Work with thread pointers instead
3664         of ptid_t.  Use thread_info_ref.
3665         * infcmd.c (proceed_thread_callback): Access thread's state
3666         directly.
3667         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
3668         access thread's state directly.
3669         (continue_command): Use inferior_thread.
3670         (info_program_command): Use find_thread_ptid and access thread
3671         state directly.
3672         (proceed_after_attach_callback): Use thread state directly.
3673         (notice_new_inferior): Take a thread_info pointer instead of a
3674         ptid_t.  All callers adjusted.
3675         (exit_inferior): Take an inferior pointer instead of a pid.  All
3676         callers adjusted.
3677         (exit_inferior_silent): New.
3678         (detach_inferior): Delete.
3679         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
3680         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
3681         (detach_inferior_command, kill_inferior_command): Use
3682         find_inferior_id instead of valid_gdb_inferior_id and
3683         gdb_inferior_id_to_pid.
3684         (inferior_command): Use inferior and thread pointers.
3685         * inferior.h (struct thread_info): Forward declare.
3686         (notice_new_inferior): Take a thread_info pointer instead of a
3687         ptid_t.  All callers adjusted.
3688         (detach_inferior): Delete declaration.
3689         (exit_inferior, exit_inferior_silent): Take an inferior pointer
3690         instead of a pid.  All callers adjusted.
3691         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
3692         (valid_gdb_inferior_id): Delete.
3693         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
3694         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
3695         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
3696         ...
3697         <inf>: ... this new field.
3698         <step_ptid>: Delete, replaced by ...
3699         <step_thread>: ... this new field.
3700         (get_displaced_stepping_state): Take an inferior pointer instead
3701         of a pid.  All callers adjusted.
3702         (displaced_step_in_progress_any_inferior): Adjust.
3703         (displaced_step_in_progress_thread): Take a thread pointer instead
3704         of a ptid_t.  All callers adjusted.
3705         (displaced_step_in_progress, add_displaced_stepping_state): Take
3706         an inferior pointer instead of a pid.  All callers adjusted.
3707         (get_displaced_step_closure_by_addr): Adjust.
3708         (remove_displaced_stepping_state): Take an inferior pointer
3709         instead of a pid.  All callers adjusted.
3710         (displaced_step_prepare_throw, displaced_step_prepare)
3711         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
3712         All callers adjusted.
3713         (start_step_over): Adjust.
3714         (infrun_thread_ptid_changed): Remove bit updating ptids in the
3715         displaced step queue.
3716         (do_target_resume): Adjust.
3717         (fetch_inferior_event): Use inferior_thread.
3718         (context_switch, get_inferior_stop_soon): Take an
3719         execution_control_state pointer instead of a ptid_t.  All callers
3720         adjusted.
3721         (switch_to_thread_cleanup): Delete.
3722         (stop_all_threads): Use scoped_restore_current_thread.
3723         * inline-frame.c: Include "gdbthread.h".
3724         (inline_state) <inline_state>: Take a thread pointer instead of a
3725         ptid_t.  All callers adjusted.
3726         <ptid>: Delete, replaced by ...
3727         <thread>: ... this new field.
3728         (find_inline_frame_state): Take a thread pointer instead of a
3729         ptid_t.  All callers adjusted.
3730         (skip_inline_frames, step_into_inline_frame)
3731         (inline_skipped_frames, inline_skipped_symbol): Take a thread
3732         pointer instead of a ptid_t.  All callers adjusted.
3733         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
3734         (inline_skipped_frames, inline_skipped_symbol): Likewise.
3735         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
3736         pointers directly.
3737         * linux-nat.c (get_detach_signal): Likewise.
3738         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
3739         (thread_db_notice_clone): Adjust.
3740         (thread_db_find_new_threads_silently)
3741         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
3742         a thread pointer instead of a ptid_t.  All callers adjusted.
3743         * mi/mi-cmd-var.c: Include "inferior.h".
3744         (mi_cmd_var_update_iter): Update to use thread pointers.
3745         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
3746         inferior directly.
3747         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
3748         out to ...
3749         (mi_output_running): ... this new function.
3750         (mi_on_resume_1): Adjust to use it.
3751         (mi_user_selected_context_changed): Adjust to use inferior_thread.
3752         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
3753         directly.
3754         (interrupt_thread_callback): : Adjust to use thread and inferior
3755         pointers.
3756         * proc-service.c: Include "gdbthread.h".
3757         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
3758         * progspace-and-thread.c: Include "inferior.h".
3759         * progspace.c: Include "inferior.h".
3760         * python/py-exitedevent.c (create_exited_event_object): Adjust to
3761         hold a reference to an inferior_object.
3762         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
3763         inferior_thread.
3764         * python/py-inferior.c (struct inferior_object): Give the type a
3765         tag name instead of a typedef.
3766         (python_on_normal_stop): No need to check if the current thread is
3767         listed.
3768         (inferior_to_inferior_object): Change return type to
3769         inferior_object.  All callers adjusted.
3770         (find_thread_object): Delete, bits factored out to ...
3771         (thread_to_thread_object): ... this new function.
3772         * python/py-infthread.c (create_thread_object): Use
3773         inferior_to_inferior_object.
3774         (thpy_is_stopped): Use thread pointer directly.
3775         (gdbpy_selected_thread): Use inferior_thread.
3776         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
3777         field, replaced with ...
3778         <thread>: ... this new field.  All users adjusted.
3779         (btpy_insn_or_gap_new): Drop const.
3780         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
3781         callers adjusted.
3782         * python/py-record.c: Include "gdbthread.h".
3783         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
3784         a ptid_t.  All callers adjusted.
3785         (gdbpy_current_recording): Use inferior_thread.
3786         * python/py-record.h (recpy_record_object) <ptid>: Delete
3787         field, replaced with ...
3788         <thread>: ... this new field.  All users adjusted.
3789         (recpy_element_object) <ptid>: Delete
3790         field, replaced with ...
3791         <thread>: ... this new field.  All users adjusted.
3792         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
3793         a ptid_t.  All callers adjusted.
3794         * python/py-threadevent.c: Include "gdbthread.h".
3795         (get_event_thread): Use thread_to_thread_object.
3796         * python/python-internal.h (struct inferior_object): Forward
3797         declare.
3798         (find_thread_object, find_inferior_object): Delete declarations.
3799         (thread_to_thread_object, inferior_to_inferior_object): New
3800         declarations.
3801         * record-btrace.c: Include "inferior.h".
3802         (require_btrace_thread): Use inferior_thread.
3803         (record_btrace_frame_sniffer)
3804         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
3805         (get_thread_current_frame): Use scoped_restore_current_thread and
3806         switch_to_thread.
3807         (get_thread_current_frame): Use thread pointer directly.
3808         (record_btrace_replay_at_breakpoint): Use thread's inferior
3809         pointer directly.
3810         * record-full.c: Include "inferior.h".
3811         * regcache.c: Include "gdbthread.h".
3812         (get_thread_arch_regcache): Use the inferior's address space
3813         directly.
3814         (get_thread_regcache, registers_changed_thread): New.
3815         * regcache.h (get_thread_regcache(thread_info *thread)): New
3816         overload.
3817         (registers_changed_thread): New.
3818         (remote_target) <remote_detach_1>: Swap order of parameters.
3819         (remote_add_thread): <remote_add_thread>: Return the new thread.
3820         (get_remote_thread_info(ptid_t)): New overload.
3821         (remote_target::remote_notice_new_inferior): Use thread pointers
3822         directly.
3823         (remote_target::process_initial_stop_replies): Use
3824         thread_info::set_running.
3825         (remote_target::remote_detach_1, remote_target::detach)
3826         (extended_remote_target::detach): Adjust.
3827         * stack.c (frame_show_address): Use inferior_thread.
3828         * target-debug.h (target_debug_print_thread_info_pp): New.
3829         * target-delegates.c: Regenerate.
3830         * target.c (default_thread_address_space): Delete.
3831         (memory_xfer_partial_1): Use current_inferior.
3832         (target_detach): Use current_inferior.
3833         (target_thread_address_space): Delete.
3834         (generic_mourn_inferior): Use current_inferior.
3835         * target.h (struct target_ops) <thread_address_space>: Delete.
3836         (target_thread_address_space): Delete.
3837         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
3838         pointers directly.
3839         (delete_thread_1, delete_thread, delete_thread_silent): Take a
3840         thread pointer instead of a ptid_t.  Adjust all callers.
3841         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
3842         (first_thread_of_process): Delete, replaced by ...
3843         (first_thread_of_inferior): ... this new function.  All callers
3844         adjusted.
3845         (any_thread_of_process): Rename to ...
3846         (any_thread_of_inferior): ... this, and take an inferior pointer.
3847         (any_live_thread_of_process): Rename to ...
3848         (any_live_thread_of_inferior): ... this, and take an inferior
3849         pointer.
3850         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
3851         (value_in_thread_stack_temporaries)
3852         (get_last_thread_stack_temporary): Take a thread pointer instead
3853         of a ptid_t.  Adjust all callers.
3854         (thread_info::set_running): New.
3855         (validate_registers_access): Use inferior_thread.
3856         (can_access_registers_ptid): Rename to ...
3857         (can_access_registers_thread): ... this, and take a thread
3858         pointer.
3859         (print_thread_info_1): Adjust to compare thread pointers instead
3860         of ptids.
3861         (switch_to_no_thread, switch_to_thread): Make extern.
3862         (scoped_restore_current_thread::~scoped_restore_current_thread):
3863         Use m_thread pointer directly.
3864         (scoped_restore_current_thread::scoped_restore_current_thread):
3865         Use inferior_thread.
3866         (thread_command): Use thread pointer directly.
3867         (thread_num_make_value_helper): Use inferior_thread.
3868         * top.c (execute_command): Use inferior_thread.
3869         * tui/tui-interp.c: Include "inferior.h".
3870         * varobj.c (varobj_create): Use inferior_thread.
3871         (value_of_root_1): Use find_thread_global_id instead of
3872         global_thread_id_to_ptid.
3873
3874 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
3875
3876         * regcache.c (readable_regcache::read_part): Avoid memcpy when
3877         possible.
3878         (regcache::write_part): Likewise.
3879         (readable_regcache::cooked_read_part): Update comment.
3880         (readable_regcache::cooked_write_part): Likewise.
3881         * regcache.h: (readable_regcache::read_part): Likewise.
3882         (regcache::write_part): Likewise.
3883
3884 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
3885             Dirk Schubert  <dirk.schubert@arm.com>
3886
3887         * aarch64-linux-nat.c (post_attach): New.
3888         (aarch64_linux_nat_target::post_attach): Override post_attach to
3889         record the number of hardware debug registers.
3890
3891 2018-06-20  Tom Tromey  <tom@tromey.com>
3892
3893         * python/py-param.c (add_setshow_generic): Make parameters const.
3894         (parmpy_init): Update.
3895
3896 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
3897
3898         * regcache.h (regcache_cooked_read_ftype): Rename to...
3899         (register_read_ftype): ...this, change type to function_view.
3900         (class reg_buffer) <save>: Remove src parameter.
3901         (readonly_detached_regcache) <readonly_detached_regcache>: Make
3902         parameter non-const in first overload.  Remove src parameter in
3903         second overload.
3904         * regcache.c (do_cooked_read): Remove.
3905         (readonly_detached_regcache::readonly_detached_regcache): Make
3906         parameter non-const, adjust call to other constructor.
3907         (reg_buffer::save): Remove src parameter.
3908         * frame.c (do_frame_register_read): Remove.
3909         (frame_save_as_regcache): Use lambda function.
3910         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
3911         parameter to ppu2spu_data *.
3912         (ppu2spu_sniffer): Use lambda function.
3913
3914 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
3915
3916         * record-full.c (record_full_target::insert_breakpoint): Remove
3917         "struct" keyword, add const.
3918
3919 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
3920
3921         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
3922         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
3923         * configure.ac: Remove AC_PREREQ, add missing quoting.
3924         * gnulib/configure.ac: Modernize usage of
3925         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
3926         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
3927         (AUTOMAKE_VERSION): Bump to 1.15.1.
3928         * configure: Re-generate.
3929         * config.in: Re-generate.
3930         * aclocal.m4: Re-generate.
3931         * gnulib/aclocal.m4: Re-generate.
3932         * gnulib/config.in: Re-generate.
3933         * gnulib/configure: Re-generate.
3934         * gnulib/import/Makefile.in: Re-generate.
3935
3936 2018-06-19  Pedro Alves  <palves@redhat.com>
3937
3938         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
3939         (lookup_minimal_symbol_by_pc_section): ... here with
3940         gdb_assert_not_reached added.
3941
3942 2018-06-19  Pedro Alves  <palves@redhat.com>
3943
3944         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
3945         parameter with a block parameter.  Compare location's block symbol
3946         with the frame's block instead of addresses.
3947         (skip_inline_frames): Pass the current block instead of the
3948         frame's address.  Break out as soon as we determine the frame
3949         should not be skipped.
3950
3951 2018-06-18  Tom Tromey  <tom@tromey.com>
3952
3953         * solib-aix.c (solib_aix_get_section_offsets): Return
3954         unique_xmalloc_ptr.
3955         (solib_aix_solib_create_inferior_hook): Update.
3956
3957 2018-06-18  Tom Tromey  <tom@tromey.com>
3958
3959         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
3960
3961 2018-06-18  Tom Tromey  <tom@tromey.com>
3962
3963         * solib-frv.c (frv_relocate_main_executable): Use
3964         unique_xmalloc_ptr.
3965         * solib-dsbt.c (dsbt_relocate_main_executable): Use
3966         unique_xmalloc_ptr.
3967
3968 2018-06-18  Tom Tromey  <tom@tromey.com>
3969
3970         * objfiles.h (inhibit_section_map_updates): Update.
3971         (resume_section_map_updates, resume_section_map_updates_cleanup):
3972         Remove.
3973         * solib-svr4.c (svr4_handle_solib_event): Update.
3974         * objfiles.c (inhibit_section_map_updates): Return
3975         scoped_restore_tmpl<int>.
3976         (resume_section_map_updates, resume_section_map_updates_cleanup):
3977         Remove.
3978
3979 2018-06-18  Tom Tromey  <tom@tromey.com>
3980
3981         * valprint.h (read_string): Update.
3982         * valprint.c (read_string): Change type of "buffer".
3983         (val_print_string): Update.
3984         * python/py-value.c (valpy_string): Update.
3985         * language.h (struct language_defn) <la_get_string>: Change
3986         type of "buffer".
3987         (default_get_string, c_get_string): Update.
3988         * language.c (default_get_string): Change type of "buffer".
3989         * guile/scm-value.c (gdbscm_value_to_string): Update.
3990         * c-lang.c (c_get_string): Change type of "buffer".
3991
3992 2018-06-18  Tom Tromey  <tom@tromey.com>
3993
3994         * ser-mingw.c (struct pipe_state_destroyer): New.
3995         (pipe_state_up): New typedef.
3996         (cleanup_pipe_state): Remove.
3997         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
3998
3999 2018-06-18  Tom Tromey  <tom@tromey.com>
4000
4001         * rust-lang.h (rust_yyerror): Don't declare.
4002         * rust-lang.c (rust_language_defn): Update.
4003         * rust-exp.y (yyerror): Now static.
4004         * parse.c (parse_exp_in_context_1): Update.
4005         * p-lang.h (p_yyerror): Don't declare.
4006         * p-lang.c (p_language_defn): Update.
4007         * p-exp.y (yyerror): Now static.
4008         * opencl-lang.c (opencl_language_defn): Update.
4009         * objc-lang.c (objc_language_defn): Update.
4010         * m2-lang.h (m2_yyerror): Don't declare.
4011         * m2-lang.c (m2_language_defn): Update.
4012         * m2-exp.y (yyerror): Now static.
4013         * language.h (struct language_defn) <la_error>: Remove.
4014         * language.c (unk_lang_error): Remove.
4015         (unknown_language_defn, auto_language_defn): Remove.
4016         * go-lang.h (go_yyerror): Don't declare.
4017         * go-lang.c (go_language_defn): Update.
4018         * go-exp.y (yyerror): Now static.
4019         * f-lang.h (f_yyerror): Don't declare.
4020         * f-lang.c (f_language_defn): Update.
4021         * f-exp.y (yyerror): Now static.
4022         * d-lang.h (d_yyerror): Don't declare.
4023         * d-lang.c (d_language_defn): Update.
4024         * d-exp.y (yyerror): Now static.
4025         * c-lang.h (c_yyerror): Don't declare.
4026         * c-lang.c (c_language_defn, cplus_language_defn)
4027         (asm_language_defn, minimal_language_defn): Update.
4028         * c-exp.y (yyerror): Now static.
4029         * ada-lang.h (ada_yyerror): Don't declare.
4030         * ada-lang.c (ada_language_defn): Update.
4031         * ada-exp.y (yyerror): Now static.
4032
4033 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
4034
4035         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
4036         (store_sveregs_to_thread): Likewise.
4037         (aarch64_linux_fetch_inferior_registers): Check for SVE.
4038         (aarch64_linux_store_inferior_registers): Likewise.
4039         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
4040         function.
4041         (aarch64_sve_regs_copy_to_regcache): Likewise.
4042         (aarch64_sve_regs_copy_from_regcache): Likewise.
4043         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
4044         declaration.
4045         (aarch64_sve_regs_copy_to_regcache): Likewise.
4046         (aarch64_sve_regs_copy_from_regcache): Likewise.
4047         (sve_context): Structure from Linux headers.
4048         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
4049         (SVE_SIG_ZREG_SIZE): Likewise.
4050         (SVE_SIG_PREG_SIZE): Likewise.
4051         (SVE_SIG_FFR_SIZE): Likewise.
4052         (SVE_SIG_REGS_OFFSET): Likewise.
4053         (SVE_SIG_ZREGS_OFFSET): Likewise.
4054         (SVE_SIG_ZREG_OFFSET): Likewise.
4055         (SVE_SIG_ZREGS_SIZE): Likewise.
4056         (SVE_SIG_PREGS_OFFSET): Likewise.
4057         (SVE_SIG_PREG_OFFSET): Likewise.
4058         (SVE_SIG_PREGS_SIZE): Likewise.
4059         (SVE_SIG_FFR_OFFSET): Likewise.
4060         (SVE_SIG_REGS_SIZE): Likewise.
4061         (SVE_SIG_CONTEXT_SIZE): Likewise.
4062         (SVE_PT_REGS_MASK): Likewise.
4063         (SVE_PT_REGS_FPSIMD): Likewise.
4064         (SVE_PT_REGS_SVE): Likewise.
4065         (SVE_PT_VL_INHERIT): Likewise.
4066         (SVE_PT_VL_ONEXEC): Likewise.
4067         (SVE_PT_REGS_OFFSET): Likewise.
4068         (SVE_PT_FPSIMD_OFFSET): Likewise.
4069         (SVE_PT_FPSIMD_SIZE): Likewise.
4070         (SVE_PT_SVE_ZREG_SIZE): Likewise.
4071         (SVE_PT_SVE_PREG_SIZE): Likewise.
4072         (SVE_PT_SVE_FFR_SIZE): Likewise.
4073         (SVE_PT_SVE_FPSR_SIZE): Likewise.
4074         (SVE_PT_SVE_FPCR_SIZE): Likewise.
4075         (__SVE_SIG_TO_PT): Likewise.
4076         (SVE_PT_SVE_OFFSET): Likewise.
4077         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
4078         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
4079         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
4080         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
4081         (SVE_PT_SVE_PREG_OFFSET): Likewise.
4082         (SVE_PT_SVE_PREGS_SIZE): Likewise.
4083         (SVE_PT_SVE_FFR_OFFSET): Likewise.
4084         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
4085         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
4086         (SVE_PT_SVE_SIZE): Likewise.
4087         (SVE_PT_SIZE): Likewise.
4088         (HAS_SVE_STATE): New define.
4089
4090 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
4091
4092         * nat/aarch64-sve-linux-sigcontext.h: New file.
4093         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
4094         new files.
4095         (SVE_VQ_MIN): Likewise.
4096         (SVE_VQ_MAX): Likewise.
4097         (SVE_VL_MIN): Likewise.
4098         (SVE_VL_MAX): Likewise.
4099         (SVE_NUM_ZREGS): Likewise.
4100         (SVE_NUM_PREGS): Likewise.
4101         (sve_vl_valid): Likewise.
4102         (struct user_sve_header): Likewise.
4103
4104 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
4105             Richard Bunt <Richard.Bunt@arm.com>
4106
4107         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
4108         was requested by GDB.
4109
4110 2018-06-15  Tom de Vries  <tdevries@suse.de>
4111
4112         * MAINTAINERS (Write After Approval): Add Tom de Vries.
4113
4114 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
4115
4116         * gnulib/update-gnulib.sh: Print expected versions of
4117         autoconf/aclocal.
4118
4119 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
4120
4121         * arch-utils.c (default_type_align): Use type_length_units.
4122         * gdbtypes.c (type_align): Use type_length_units.
4123
4124 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4125
4126         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
4127         of 'define' command.
4128
4129 2018-06-14  Tom de Vries  <tdevries@suse.de>
4130
4131         PR cli/22573
4132         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
4133         get_no_prettyformat_print_options.
4134
4135 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
4136
4137         * sparc-nat.h: Include target.h.
4138         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
4139         <fetch_registers>: Remove this argument in function call.
4140         <store_registers>: Remove this argument in function call, remove
4141         extra semicolon.
4142         <low_forget_process>: Call sparc64_forget_process instead of
4143         sparc_forget_process.
4144
4145 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4146
4147         * procfs.c (_initialize_procfs): Use add_inf_child_target.
4148         (procfs_target::make_corefile_notes): Adjust to new
4149         target_read_alloc return type.
4150
4151 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
4152             Stephen Roberts  <stephen.roberts@arm.com>
4153
4154         PR gdb/22882
4155         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
4156         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
4157         Move should_notify_stop local into more inner scope.
4158
4159 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
4160             Stephen Roberts  <stephen.roberts@arm.com>
4161
4162         PR gdb/22882
4163         * infrun.c (resume_1): Add call to mark_async_event_handler.
4164
4165 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
4166
4167         * infrun.c (do_target_wait): Change old version of $pc printed.
4168
4169 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
4170
4171         * dwarf2read.c (read_index_from_section): Rename to...
4172         (read_gdb_index_from_section): ... this, update all callers.
4173         (dwarf2_read_index): Rename to...
4174         (dwarf2_read_gdb_index): ... this, update all callers.
4175
4176 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
4177
4178         * gdb/hppa-linux-nat.c
4179         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
4180         hppa_linux_nat_target::fetch_registers.
4181
4182 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
4183
4184         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
4185         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
4186         (AARCH64_DWARF_SVE_FFR): Likewise.
4187         (AARCH64_DWARF_SVE_P0): Likewise.
4188         (AARCH64_DWARF_SVE_Z0): Likewise.
4189
4190 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
4191
4192         * common/common-regcache.h (raw_compare): New function.
4193         * regcache.c (regcache::raw_compare): Likewise.
4194         * regcache.h (regcache::raw_compare): New declaration.
4195
4196 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
4197
4198         * common/common-regcache.h (reg_buffer_common): New structure.
4199         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
4200         (reg_buffer::raw_supply): Likewise.
4201         (reg_buffer::raw_supply_integer): Likewise.
4202         (reg_buffer::raw_supply_zeroed): Likewise.
4203         (reg_buffer::raw_collect): Likewise.
4204         (reg_buffer::raw_collect_integer): Likewise.
4205         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
4206         (reg_buffer::raw_supply): Likewise.
4207         (reg_buffer::raw_supply_integer): Likewise.
4208         (reg_buffer::raw_supply_zeroed): Likewise.
4209         (reg_buffer::raw_collect): Likewise.
4210         (reg_buffer::raw_collect_integer): Likewise.
4211
4212 2018-06-10  Tom Tromey  <tom@tromey.com>
4213
4214         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
4215         (class remote_state) <stop_reply_queue>: Now std::vector.
4216         (remote_state::~remote_state)
4217         (remote_target::stop_reply_queue_length): Update.
4218         (struct queue_iter_param, remove_child_of_pending_fork)
4219         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
4220         (check_pending_event_prevents_wildcard_vcont_callback)
4221         (remove_stop_reply_for_inferior)
4222         (remove_stop_reply_of_remote_state)
4223         (remote_notif_remove_once_on_match)
4224         (stop_reply_match_ptid_and_ws)
4225         (remote_kill_child_of_pending_fork): Remove.
4226         (remote_target::remove_new_fork_children)
4227         (remote_target::check_pending_events_prevent_wildcard_vcont)
4228         (remote_target::discard_pending_stop_replies)
4229         (remote_target::discard_pending_stop_replies_in_queue)
4230         (remote_target::remote_notif_remove_queued_reply)
4231         (remote_target::queued_stop_reply)
4232         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
4233         (remote_target::wait, remote_target::kill_new_fork_children)
4234         (remote_target::async): Update.
4235
4236 2018-06-10  Tom Tromey  <tom@tromey.com>
4237
4238         * record-full.c (record_full_arch_list_cleanups): Remove.
4239         (record_full_message): Use try/catch.
4240         (record_full_wait_cleanups): Remove.
4241         (record_full_wait_1): Use try/catch.
4242         (record_full_restore): Likewise.
4243
4244 2018-06-10  Tom Tromey  <tom@tromey.com>
4245
4246         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
4247         declare VEC.  Add constructor.
4248         <in_target_beneath>: Now bool.
4249         (record_full_breakpoints): Now a std::vector, static.
4250         (record_full_sync_record_breakpoints)
4251         (record_full_init_record_breakpoints)
4252         (record_full_target::insert_breakpoint)
4253         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
4254
4255 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
4256
4257         * dwarf2read.c (process_cu_includes): Remove struct keyword.
4258         * serial.c (serial_interface_lookup): Remove struct keyword.
4259
4260 2018-06-10  Tom Tromey  <tom@tromey.com>
4261
4262         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
4263         method.
4264         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
4265         a method.
4266         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
4267         method.
4268         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
4269         "beneath" as a method.
4270         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
4271         Use "beneath" as a method.
4272
4273 2018-06-10  Tom Tromey  <tom@tromey.com>
4274
4275         * tracefile.c (struct trace_file_writer_deleter): New.
4276         <operator()>: Rename from trace_file_writer_xfree.
4277         (trace_file_writer_up): New typedef.
4278         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
4279
4280 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
4281
4282         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
4283         <m_registers, m_register_status>: Change type to
4284         std::unique_ptr.
4285         * regcache.c (reg_buffer::reg_buffer): Use new instead of
4286         XCNEWVEC.
4287
4288 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
4289
4290         * common/common-regcache.h (enum register_status): Add
4291         underlying type "signed char".
4292         * regcache.h (reg_buffer) <m_register_status>: Change type to
4293         register_status *.
4294         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
4295         register_status instead of signed char.
4296         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
4297         (reg_buffer::get_register_status): Remove cast.
4298         (readable_regcache::raw_read): Remove cast.
4299         (readable_regcache::cooked_read): Remove cast.
4300
4301 2018-06-09  Tom Tromey  <tom@tromey.com>
4302
4303         * source.c (reverse_search_command, forward_search_command): Use
4304         scoped_fd.
4305
4306 2018-06-09  Tom Tromey  <tom@tromey.com>
4307
4308         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
4309         (serial_ops_list): Now static, std::vector.
4310         (serial_interface_lookup, serial_add_interface): Update.
4311
4312 2018-06-09  Tom Tromey  <tom@tromey.com>
4313
4314         * dwarf2read.c (process_cu_includes): Update.
4315         (process_full_comp_unit): Update.
4316         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
4317         std::vector.
4318
4319 2018-06-08  Paul Koning  <paul_koning@dell.com>
4320
4321         PR gdb/23252
4322
4323         * python/python.c (do_start_initialization):
4324         Avoid call to internal Python API.
4325         (init__gdb_module): New function.
4326
4327 2018-06-08  Gary Benson <gbenson@redhat.com>
4328
4329         * linux-thread-db.c (valprint.h): New include.
4330         (struct check_thread_db_info): New structure.
4331         (check_thread_db_on_load, tdb_testinfo): New static globals.
4332         (check_thread_db, check_thread_db_callback): New functions.
4333         (try_thread_db_load_1): Run integrity checks if requested.
4334         (maintenance_check_libthread_db): New function.
4335         (_initialize_thread_db): Register "maint check libthread-db"
4336         and "maint set/show check-libthread-db".
4337         * NEWS: Mention the above new commands.
4338
4339 2018-06-08  Tom Tromey  <tom@tromey.com>
4340
4341         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
4342         now a method.
4343
4344 2018-06-08  Tom Tromey  <tom@tromey.com>
4345
4346         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
4347
4348 2018-06-08  Tom Tromey  <tom@tromey.com>
4349
4350         * common/btrace-common.h (struct btrace_data): Add constructor,
4351         destructor, move assignment operator.
4352         <empty, clear, fini>: New methods.
4353         <format>: Initialize.
4354         (btrace_data_init, btrace_data_fini, btrace_data_clear)
4355         (btrace_data_empty): Don't declare.
4356         * common/btrace-common.c (btrace_data_init): Remove.
4357         (btrace_data::fini): Rename from btrace_data_fini.
4358         (btrace_data::empty): Rename from btrace_data_empty.
4359         (btrace_data::clear): Rename from btrace_data_clear.  Return
4360         bool.
4361         * btrace.h (make_cleanup_btrace_data): Don't declare.
4362         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
4363         (parse_xml_btrace): Update.
4364         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
4365         (maint_btrace_clear_packet_history_cmd): Update.
4366
4367 2018-06-07  Pedro Alves  <palves@redhat.com>
4368
4369         * target.h (target_ops) <beneath>: Now a method.  All references
4370         updated.
4371         (class target_stack): New.
4372         * target.c (g_target_stack): New.
4373         (g_current_top_target): Delete.
4374         (current_top_target): Get the top target out of g_target_stack.
4375         (target_stack::push, target_stack::unpush): New.
4376         (push_target, unpush_target): Reimplement.
4377         (target_is_pushed): Reimplement in terms of g_target_stack.
4378         (target_ops::beneath, target_stack::find_beneath): New.
4379
4380 2018-06-07  Pedro Alves  <palves@redhat.com>
4381
4382         * target.h (find_target_beneath): Delete declaration.
4383         * target.c (find_target_beneath): Delete definition.
4384         * aix-thread.c: All callers of find_target_beneath adjusted to
4385         call target_ops::beneath instead.
4386         * bsd-uthread.c: Likewise.
4387         * linux-thread-db.c: Likewise.
4388         * ravenscar-thread.c: Likewise.
4389         * sol-thread.c: Likewise.
4390         * spu-multiarch.c: Likewise.
4391
4392 2018-06-07  Pedro Alves  <palves@redhat.com>
4393
4394         * target.h (target_ops) <beneath>: Now a method.  All references
4395         updated.
4396         (target_ops) <m_beneath>: New.
4397         * target.c (target_ops::beneath): New.
4398         * corelow.c: Adjust all references to target_ops::beneath.
4399         * linux-thread-db.c: Likewise.
4400         * make-target-delegates: Likewise.
4401         * record-btrace.c: Likewise.
4402         * record-full.c: Likewise.
4403         * remote.c: Likewise.
4404         * target.c: Likewise.
4405         * target-delegates.c: Regenerate.
4406
4407 2018-06-07  Pedro Alves  <palves@redhat.com>
4408
4409         * target.h (target_stack): Delete.
4410         (current_top_target): Declare function.
4411         * target.c (target_stack): Delete.
4412         (g_current_top_target): New.
4413         (current_top_target): New function.
4414         * auxv.c: Use current_top_target instead of target_stack
4415         throughout.
4416         * avr-tdep.c: Likewise.
4417         * breakpoint.c: Likewise.
4418         * corefile.c: Likewise.
4419         * elfread.c: Likewise.
4420         * eval.c: Likewise.
4421         * exceptions.c: Likewise.
4422         * frame.c: Likewise.
4423         * gdbarch-selftests.c: Likewise.
4424         * gnu-v3-abi.c: Likewise.
4425         * ia64-tdep.c: Likewise.
4426         * ia64-vms-tdep.c: Likewise.
4427         * infcall.c: Likewise.
4428         * infcmd.c: Likewise.
4429         * infrun.c: Likewise.
4430         * linespec.c: Likewise.
4431         * linux-tdep.c: Likewise.
4432         * minsyms.c: Likewise.
4433         * ppc-linux-nat.c: Likewise.
4434         * ppc-linux-tdep.c: Likewise.
4435         * procfs.c: Likewise.
4436         * regcache.c: Likewise.
4437         * remote.c: Likewise.
4438         * rs6000-tdep.c: Likewise.
4439         * s390-linux-nat.c: Likewise.
4440         * s390-tdep.c: Likewise.
4441         * solib-aix.c: Likewise.
4442         * solib-darwin.c: Likewise.
4443         * solib-dsbt.c: Likewise.
4444         * solib-spu.c: Likewise.
4445         * solib-svr4.c: Likewise.
4446         * solib-target.c: Likewise.
4447         * sparc-tdep.c: Likewise.
4448         * sparc64-tdep.c: Likewise.
4449         * spu-tdep.c: Likewise.
4450         * symfile.c: Likewise.
4451         * symtab.c: Likewise.
4452         * target-descriptions.c: Likewise.
4453         * target-memory.c: Likewise.
4454         * target.c: Likewise.
4455         * target.h: Likewise.
4456         * tracefile-tfile.c: Likewise.
4457         * tracepoint.c: Likewise.
4458         * valops.c: Likewise.
4459         * valprint.c: Likewise.
4460         * value.c: Likewise.
4461         * windows-tdep.c: Likewise.
4462         * mi/mi-main.c: Likewise.
4463
4464 2018-06-07  Tom Tromey  <tom@tromey.com>
4465
4466         * valprint.h (build_address_symbolic): Declare.
4467         * printcmd.c (print_address_symbolic): Update.
4468         (build_address_symbolic): Change "name" and "filename" to
4469         std::string.
4470         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
4471         Update.
4472         * defs.h (build_address_symbolic): Remove declaration.
4473
4474 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
4475
4476         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
4477         (aarch64_vnv_type): Add function.
4478         (aarch64_pseudo_register_name): Add V regs for SVE.
4479         (aarch64_pseudo_register_type): Likewise.
4480         (aarch64_pseudo_register_reggroup_p): Likewise.
4481         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
4482         (aarch64_pseudo_read_value): Add V regs for SVE.
4483         (aarch64_pseudo_write_2): Use V0 offset for SVE
4484         (aarch64_pseudo_write): Add V regs for SVE.
4485         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
4486
4487 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
4488
4489         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
4490         (sve_vl_from_vq): Likewise.
4491
4492 2018-06-05  Tom Tromey  <tom@tromey.com>
4493
4494         * cli/cli-cmds.c (show_version): Update.
4495         * top.c (print_gdb_version): Add "interactive" parameter.
4496         Update.
4497         * main.c (captured_main_1): Update.
4498         * top.h (print_gdb_version): Add "interactive" parameter and a
4499         comment.
4500
4501 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
4502
4503         * common/enum-flags.h: Add trailing semicolon to example in
4504         comment.
4505
4506 2018-06-05  Tom Tromey  <tom@tromey.com>
4507
4508         PR cli/12326:
4509         * NEWS: Add entry about pager.
4510         * utils.c (pagination_disabled_for_command): New global.
4511         (prompt_for_continue): Allow "c" response to prompt.
4512         (reinitialize_more_filter): Clear
4513         pagination_disabled_for_command.
4514         (fputs_maybe_filtered): Check pagination_disabled_for_command.
4515
4516 2018-06-04  Tom Tromey  <tom@tromey.com>
4517
4518         * ada-lang.h (ada_lookup_symbol_list): Update.
4519         * ada-lang.c (resolve_subexp): Update.
4520         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
4521         parameter.
4522         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
4523         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
4524         results parameter to std::vector.
4525         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
4526         Update.
4527         * ada-exp.y (block_lookup): Update.
4528         (select_possible_type_sym): Change type of syms.  Remove nsyms
4529         parameter.
4530         (write_var_or_type, write_name_assoc): Update.
4531
4532 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
4533
4534         * windows-nat.c (windows_nat_target::xfer_partial): Return
4535         TARGET_XFER_E_IO if we need to delegate to the target beneath
4536         but BENEATH is NULL.
4537
4538 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
4539
4540         * Makefile.in (config.status): Add configure.nat as a
4541         dependency.
4542
4543 2018-06-04  Tom Tromey  <tom@tromey.com>
4544
4545         * cp-name-parser.y (cpname_state): Add method declarations.
4546         (HANDLE_QUAL): Update.
4547         (cpname_state::d_grab, cpname_state::fill_comp)
4548         (cpname_state::make_operator, cpname_state::make_dtor)
4549         (cpname_state::make_builtin_type, cpname_state::make_name)
4550         (cpname_state::d_qualify, cpname_state::d_int_type)
4551         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
4552         (%union): Move earlier.
4553
4554 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
4555
4556         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
4557
4558 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
4559
4560         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
4561         (aarch64_pseudo_write_1): Likewise.
4562         (aarch64_pseudo_read_value): Use helper.
4563         (aarch64_pseudo_write): Likewise.
4564
4565 2018-06-04  Pedro Alves  <palves@redhat.com>
4566
4567         * darwin-nat.c (darwin_ops): Delete.
4568         (darwin_attach_pid): Use get_native_target.
4569
4570 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
4571
4572         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
4573         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
4574
4575 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
4576
4577         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
4578         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
4579         (aarch64_gdbarch_init): Check for SVE.
4580         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
4581
4582 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
4583
4584         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
4585         * aarch64-tdep.h (aarch64_read_description): Likewise.
4586         * arch/aarch64.c (aarch64_create_target_description): Likewise.
4587         * arch/aarch64.h (aarch64_create_target_description): Likewise.
4588         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
4589         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
4590         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
4591
4592 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
4593
4594         * value.c (value_fetch_lazy_bitfield): New.
4595         (value_fetch_lazy_memory): New.
4596         (value_fetch_lazy_register): New.
4597         (value_fetch_lazy): Factor out to smaller functions.
4598
4599 2018-06-01  Tom Tromey  <tom@tromey.com>
4600
4601         * cp-name-parser.y (backslashable, represented): Now const.
4602
4603 2018-06-01  Tom Tromey  <tom@tromey.com>
4604
4605         * cp-name-parser.y: Include parser-defs.h.
4606         (parser_fprintf): Remove declaration.
4607
4608 2018-06-01  Tom Tromey  <tom@tromey.com>
4609
4610         * cp-name-parser.y: Use %pure-parser, %lex-param, and
4611         %parse-param.
4612         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
4613         (global_result): Remove globals.
4614         (struct cpname_state): New.
4615         (yyparse): Don't declare.
4616         (yylex, yyerror): Move declarations after %union.
4617         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
4618         (make_name): Add state parameter.
4619         Update all callers.
4620         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
4621         parameter.
4622         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
4623         Update.
4624         (yylex): Add lvalp, state parameters.
4625         (yyerror): Add state parameter.
4626         (cp_demangled_name_to_comp): Update.
4627
4628 2018-06-01  Tom Tromey  <tom@tromey.com>
4629
4630         * cp-name-parser.y (parser_fprintf): Declare.
4631         (GDB_YY_REMAP_PREFIX): Define.
4632         Include yy-remap.h.  Don't redefine yy* identifiers.
4633
4634 2018-06-01  Tom Tromey  <tom@tromey.com>
4635
4636         * python/py-type.c (typy_legacy_template_argument): Update.
4637         * cp-support.h (cp_demangled_name_to_comp): Update.
4638         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
4639         parameter to be a "std::string *".
4640         (main): Update.
4641
4642 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
4643
4644         * ada-lex.l: Include "diagnostics.h" instead of
4645         "common/diagnostics.h".
4646         * unittests/environ-selftests.c: Likewise.
4647         * common/diagnostics.h: Moved to ../include.
4648
4649 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
4650
4651         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
4652         to language_mode_manual while calling breakpoint_re_set_one.
4653
4654 2018-06-01  Tom Tromey  <tom@tromey.com>
4655
4656         * valops.c (value_cast_structs, destructor_name_p): Update.
4657         * symtab.c (gdb_mangle_name): Update.
4658         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
4659         Update.
4660         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
4661         (pascal_object_print_value_fields, pascal_object_print_value):
4662         Update.
4663         * p-typeprint.c (pascal_type_print_derivation_info): Update.
4664         * linespec.c (find_methods): Update.
4665         * gdbtypes.h (type_name_no_tag): Remove.
4666         (type_name_or_error): Rename from type_name_no_tag_or_error.
4667         * gdbtypes.c (type_name_no_tag): Remove.
4668         (type_name_or_error): Rename from type_name_no_tag_or_error.
4669         (lookup_struct_elt_type, check_typedef): Update.
4670         * expprint.c (print_subexp_standard): Update.
4671         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
4672         * d-namespace.c (d_lookup_nested_symbol): Update.
4673         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
4674         (cp_print_class_member): Update.
4675         * cp-namespace.c (cp_lookup_nested_symbol): Update.
4676         * completer.c (add_struct_fields): Update.
4677         * c-typeprint.c (cp_type_print_derivation_info)
4678         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
4679         Update.
4680         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
4681         (ada_prefer_type, ada_is_exception_sym): Update.
4682
4683 2018-06-01  Tom Tromey  <tom@tromey.com>
4684
4685         * valops.c (enum_constant_from_type, value_namespace_elt)
4686         (value_maybe_namespace_elt): Update.
4687         * valarith.c (find_size_for_pointer_math): Update.
4688         * target-descriptions.c (make_gdb_type): Update.
4689         * symmisc.c (print_symbol): Update.
4690         * stabsread.c (define_symbol, read_type)
4691         (complain_about_struct_wipeout, add_undefined_type)
4692         (cleanup_undefined_types_1): Update.
4693         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
4694         (rust_range_type_p, val_print_struct, rust_print_struct_def)
4695         (rust_internal_print_type, rust_composite_type)
4696         (rust_evaluate_funcall, rust_evaluate_subexp)
4697         (rust_inclusive_range_type_p): Update.
4698         * python/py-type.c (typy_get_tag): Update.
4699         * p-typeprint.c (pascal_type_print_base): Update.
4700         * mdebugread.c (parse_symbol, parse_type): Update.
4701         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
4702         Update.
4703         * guile/scm-type.c (gdbscm_type_tag): Update.
4704         * go-lang.c (sixg_string_p): Update.
4705         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
4706         Update.
4707         * gdbtypes.h (struct main_type) <tag_name>: Remove.
4708         (TYPE_TAG_NAME): Remove.
4709         * gdbtypes.c (type_name_no_tag): Simplify.
4710         (check_typedef, check_types_equal, recursive_dump_type)
4711         (copy_type_recursive, arch_composite_type): Update.
4712         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
4713         in summary mode when needed.
4714         * eval.c (evaluate_funcall): Update.
4715         * dwarf2read.c (fixup_go_packaging, read_structure_type)
4716         (process_structure_scope, read_enumeration_type)
4717         (read_namespace_type, read_module_type, determine_prefix): Update.
4718         * cp-support.c (inspect_type): Update.
4719         * coffread.c (process_coff_symbol, decode_base_type): Update.
4720         * c-varobj.c (c_is_path_expr_parent): Update.
4721         * c-typeprint.c (c_type_print_base_struct_union): Update.
4722         (c_type_print_base_1): Update.  Print struct/class/union/enum in
4723         summary when using C language.
4724         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
4725         (gen_maybe_namespace_elt): Update.
4726         * ada-lang.c (ada_type_name): Simplify.
4727         (empty_record, ada_template_to_fixed_record_type_1)
4728         (template_to_static_fixed_type)
4729         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
4730
4731 2018-06-01  Tom Tromey  <tom@tromey.com>
4732
4733         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
4734         c_print_type.
4735         * c-typeprint.c (c_print_type_1): Add "language" parameter.
4736         (c_print_type): Update.
4737         (c_print_type): New overload.
4738         (c_type_print_varspec_prefix, c_type_print_args)
4739         (c_type_print_varspec_suffix, c_print_type_no_offsets)
4740         (c_type_print_base_struct_union, c_type_print_base_1)
4741         (cp_type_print_method_args): Add "language" parameter.
4742         (c_type_print_base): Update.
4743         * c-lang.h (c_print_type): Add new overload.
4744
4745 2018-06-01  Tom Tromey  <tom@tromey.com>
4746
4747         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
4748         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
4749
4750 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
4751
4752         * aarch64-tdep.c (aarch64_sve_register_names): New const
4753         var.
4754         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
4755         (AARCH64_SVE_Z_REGS_NUM): New define.
4756         (AARCH64_SVE_P_REGS_NUM): Likewise.
4757         (AARCH64_SVE_NUM_REGS): Likewise.
4758
4759 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
4760
4761         * nat/linux-ptrace.h [__alpha__]
4762         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
4763         definitions.
4764
4765 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
4766
4767         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
4768         the endianness selected.
4769         * NEWS: Document `set endian auto' mode operation update.
4770
4771 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
4772
4773         * Makefile.in: Add new header.
4774         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
4775         (sve_vl_from_vg): Likewise.
4776         (sve_vq_from_vl): Likewise.
4777         (sve_vl_from_vq): Likewise.
4778         (sve_vq_from_vg): Likewise.
4779         (sve_vg_from_vq): Likewise.
4780         * configure.nat: Add new c file.
4781         * nat/aarch64-sve-linux-ptrace.c: New file.
4782         * nat/aarch64-sve-linux-ptrace.h: New file.
4783
4784 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
4785
4786         * aarch64-linux-nat.c (aarch64_linux_read_description):
4787         Add parmeter zero.
4788         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
4789         Likewise.
4790         * aarch64-tdep.c (tdesc_aarch64_list): Add.
4791         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
4792         (aarch64_gdbarch_init): Add parmeter zero.
4793         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
4794         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
4795         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
4796         parmeter.
4797         * doc/gdb.texinfo: Describe SVE feature
4798         * features/aarch64-sve.c: New file.
4799
4800 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
4801
4802         PR gdb/23210
4803         * gdbarch.sh (significant_addr_bit): Default to zero when
4804         not set by target architecture.
4805         * gdbarch.c: Re-generated.
4806         * utils.c (address_significant): Update.
4807
4808 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
4809
4810         * stack.c (func_command): Remove trailing newline in call to error.
4811
4812 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
4813
4814         * regcache.h (regcache_raw_collect): Remove, update callers to
4815         use regcache::raw_collect.
4816         * regcache.c (regcache_raw_collect): Remove.
4817
4818 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
4819
4820         * regcache.h (regcache_raw_supply): Remove, update callers to
4821         use detached_regcache::raw_supply.
4822         * regcache.c (regcache_raw_supply): Remove.
4823
4824 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
4825
4826         * regcache.h (regcache_cooked_write_part): Remove, update
4827         callers to use regcache::cooked_write_part.
4828         * regcache.c (regcache_cooked_write_part): Remove.
4829
4830 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
4831
4832         * regcache.h (regcache_cooked_read_part): Remove, update callers
4833         to use readable_regcache::cooked_read_part.
4834         * regcache.c (regcache_cooked_read_part): Remove.
4835
4836 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
4837
4838         * regcache.h (regcache_cooked_read_value): Remove, update
4839         callers to use readable_regcache::cooked_read_value.
4840         * regcache.c (regcache_cooked_read_value): Remove.
4841
4842 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
4843
4844         * regcache.h (regcache_cooked_write): Remove, update callers to
4845         use regcache::cooked_write.
4846         * regcache.c (regcache_cooked_write): Remove.
4847
4848 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
4849
4850         * regcache.h (regcache_invalidate): Remove, update callers to
4851         use detached_regcache::invalidate instead.
4852         * regcache.c (regcache_invalidate): Remove.
4853
4854 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
4855
4856         * regcache.h (regcache_raw_write_part): Remove, update callers
4857         to use regcache::raw_write_part instead.
4858         * regcache.c (regcache_raw_write_part): Remove.
4859
4860 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
4861
4862         * regcache.h (regcache_raw_read_part): Remove, update callers to
4863         use readable_regcache::raw_read_part instead.
4864         * regcache.c (regcache_raw_read_part): Remove.
4865
4866 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
4867
4868         * regcache.h (regcache_cooked_read): Remove, update callers to
4869         use readable_regcache::cooked_read instead.
4870         * regcache.c (regcache_cooked_read): Remove.
4871
4872 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
4873
4874         * regcache.h (regcache_raw_write): Remove, update callers to use
4875         regcache::raw_write instead.
4876         * regcache.c (regcache_raw_write): Remove.
4877
4878 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
4879
4880         * regcache.h (regcache_raw_read): Remove, update callers to use
4881         readable_regcache::raw_read instead.
4882         * regcache.c (regcache_raw_read): Remove.
4883
4884 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
4885
4886         * regcache.h (regcache_raw_update): Remove, update callers to
4887         use readable_regcache::raw_update instead.
4888         * regcache.c (regcache_raw_update): Remove.
4889
4890 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
4891
4892         * regcache.h (regcache_register_status): Remove, update callers
4893         to use reg_buffer::get_register_status directly instead.
4894         * regcache.c (regcache_register_status): Remove.
4895
4896 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
4897
4898         * regcache.h (regcache_get_ptid): Remove, update all callers to
4899         call regcache::ptid instead.
4900         * regcache.c (regcache_get_ptid): Remove.
4901
4902 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
4903
4904         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
4905
4906 2018-05-30  Pedro Alves  <palves@redhat.com>
4907
4908         * common/common-exceptions.h (exception_rethrow): Use
4909         ATTRIBUTE_NORETURN.
4910
4911 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
4912
4913         * breakpoint.c (print_solib_event, check_status_catch_solib):
4914         Remove struct keyword in range-based for loops.
4915         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
4916         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
4917         Likewise.
4918         * linespec.c (find_superclass_methods, search_minsyms_for_name):
4919         Likewise.
4920         * symfile.c (addr_info_make_relative): Likewise.
4921         * thread.c (value_in_thread_stack_temporaries): Likewise.
4922
4923 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
4924
4925         PR gdb/16841
4926         * valops.c (value_struct_elt_for_reference): Call check_typedef on
4927         aggregate type to get its real type before accessing it.
4928
4929 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
4930
4931         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
4932         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
4933         * coff-pe-read.c (add_pe_forwarded_sym): Replace
4934         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
4935         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
4936         * jit.c (jit_breakpoint_re_set_internal): Likewise.
4937         * printcmd.c (info_address_command): Likewise.
4938
4939 2018-05-29  Tom Tromey  <tom@tromey.com>
4940
4941         * windows-nat.c (handle_exception): Update fall-through comment.
4942
4943 2018-05-29  Tom Tromey  <tom@tromey.com>
4944
4945         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
4946         (struct program_space) <added_solibs>: Now a std::vector.
4947         * breakpoint.c (print_solib_event): Update.
4948         (check_status_catch_solib): Update.
4949         * progspace.c (clear_program_space_solib_cache): Update.
4950         * solib.c (update_solib_list): Update.
4951
4952 2018-05-29  Tom Tromey  <tom@tromey.com>
4953
4954         * python/py-type.c (typy_richcompare): Update.
4955         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
4956         * gdbtypes.h (types_deeply_equal): Return bool.
4957         (types_equal): Likewise.
4958         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
4959         declare VEC.
4960         (check_types_equal): Change worklist to std::vector.  Return
4961         bool.
4962         (struct type_equality_entry): Add constructor.
4963         (compare_maybe_null_strings): Return bool.
4964         (check_types_worklist): Return bool.  Change worklist to
4965         std::vector.
4966         (types_deeply_equal): Use std::vector.
4967         (types_equal): Return bool.
4968         (compare_maybe_null_strings): Simplify.
4969
4970 2018-05-29  Tom Tromey  <tom@tromey.com>
4971
4972         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
4973
4974 2018-05-29  Tom Tromey  <tom@tromey.com>
4975
4976         * objc-lang.h: Don't include cp-support.h.
4977         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
4978         declare VEC.
4979
4980 2018-05-27  Tom Tromey  <tom@tromey.com>
4981
4982         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
4983
4984 2018-05-25  Tom Tromey  <tom@tromey.com>
4985
4986         * value.c (value::location): Initialize.
4987
4988 2018-05-25  Tom Tromey  <tom@tromey.com>
4989
4990         * dbxread.c (init_bincl_list): Remove.
4991         (bincl_list): Now a std::vector.
4992         (bincls_allocated, next_bincl): Remove.
4993         (free_bincl_list, do_free_bincl_list_cleanup)
4994         (make_cleanup_free_bincl_list): Remove.
4995         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
4996         unique_xmalloc_ptr.
4997         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
4998         (struct header_file_location): Add constructor.
4999         (add_bincl_to_list): Remove.
5000
5001 2018-05-25  Tom Tromey  <tom@tromey.com>
5002
5003         * tui/tui.c (tui_enable): Update.
5004         * mi/mi-interp.c (mi_interp::init): Update.
5005         * interps.h (class interp) <name>: New method.
5006         <m_name>: Rename from name.
5007         (~scoped_restore_interp): Update.
5008         * interps.c (interp::interp): Update.
5009         (interp_add, interp_set, interp_lookup_existing)
5010         (current_interp_named_p): Update.
5011
5012 2018-05-25  Tom Tromey  <tom@tromey.com>
5013
5014         * interps.c (interp_name): Remove.
5015         * mi/mi-interp.c (mi_interp::init): Update.
5016         * interps.h (interp_name): Remove.
5017         (~scoped_restore_interp): Update.
5018         * tui/tui.c (tui_enable): Update.
5019
5020 2018-05-25  Tom Tromey  <tom@tromey.com>
5021
5022         * utils.c (fputs_maybe_filtered): Update.
5023         * linespec.c (decode_line_full): Update.
5024         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
5025         (mi_print_breakpoint_for_event, mi_solib_loaded)
5026         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
5027         (mi_user_selected_context_changed): Update.
5028         * mi/mi-main.c (mi_execute_command): Update.
5029         * cli/cli-script.c (execute_control_command): Update.
5030         * python/python.c (execute_gdb_command): Update.
5031         * solib.c (info_sharedlibrary_command): Update.
5032         * interps.c (interp_ui_out): Remove.
5033         * interps.h (interp_ui_out): Remove.
5034
5035 2018-05-25  Tom Tromey  <tom@tromey.com>
5036
5037         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
5038         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
5039         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
5040
5041 2018-05-25  Tom Tromey  <tom@tromey.com>
5042
5043         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
5044         * interps.c (interp_exec): Use scoped_restore.
5045
5046 2018-05-25  Tom Tromey  <tom@tromey.com>
5047
5048         * remote.c (remote_target::remote_file_get): Use
5049         gdb::byte_vector.
5050         (remote_target::remote_file_put): Likewise.
5051
5052 2018-05-25  Tom Tromey  <tom@tromey.com>
5053
5054         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
5055         a std::string.
5056         (get_pe_section_index, add_pe_exported_sym): Update.
5057         (read_pe_exported_syms): Use gdb::def_vector.
5058
5059 2018-05-25  Tom Tromey  <tom@tromey.com>
5060
5061         * frame.c (remove_prev_frame): Remove.
5062         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
5063
5064 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
5065
5066         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
5067         Remove prototypes.
5068         * mips-linux-nat.c (supply_fpregset): Always call
5069         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
5070         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
5071         `mips_fill_fpregset'.
5072         * mips-linux-tdep.c (mips_supply_fpregset)
5073         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
5074         (mips_fill_fpregset_wrapper): Remove functions.
5075         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
5076         (mips_linux_fpregset): Remove variable.
5077         (mips_linux_iterate_over_regset_sections): Use
5078         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
5079         (mips_linux_o32_sigframe_init): Remove comment.
5080
5081 2018-05-25  Pedro Alves  <palves@redhat.com>
5082
5083         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
5084         (struct readahead_cache, struct packet_reg, struct
5085         remote_arch_state, class remote_state): Move higher up in the
5086         file.
5087         (remote_target::m_remote_state): Now an object instead of a pointer.
5088         (remote_target::get_remote_state): Adjust.
5089
5090 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
5091
5092         * stack.c (select_and_print_frame): Delete.
5093         (struct function_bounds): Move struct within function.
5094         (func_command): Most content moved into new function
5095         find_frame_for_function, use new function, print result, add
5096         function comment.
5097         (find_frame_for_function): New function, now returns a result.
5098
5099 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5100
5101         * stack.c (iterate_over_block_arg_vars): Fix comment.
5102         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
5103
5104 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
5105
5106         PR gdb/23203
5107         * frame.c
5108         (scoped_restore_selected_frame::scoped_restore_selected_frame):
5109         Define.
5110         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
5111         Define.
5112         * frame.h (class scoped_restore_selected_frame): New class.
5113         * stack.c (print_frame_local_vars): Remove catching and rethrowing
5114         of any exception, use scoped_restore_selected_frame to restore the
5115         frame instead.
5116
5117 2018-05-24  Pedro Alves  <palves@redhat.com>
5118
5119         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
5120         override.
5121
5122 2018-05-23  Tom Tromey  <tom@tromey.com>
5123
5124         * complaints.c (struct complaints): Remove.
5125         (symfile_complaint_book): Remove.
5126         (series): New global.
5127         (complaint_internal): Update.
5128         (clear_complaints): Update.
5129
5130 2018-05-23  Tom Tromey  <tom@tromey.com>
5131
5132         * complaints.c (counters): New global.
5133         (struct complain): Remove.
5134         (struct complaints) <root>: Remove.
5135         (complaint_sentinel): Remove.
5136         (symfile_complaint_book): Update.
5137         (find_complaint) Remove.
5138         (complaint_internal, clear_complaints): Update.
5139
5140 2018-05-23  Tom Tromey  <tom@tromey.com>
5141
5142         * complaints.c (struct complain) <file, line>: Remove.
5143         (find_complaint): Remove file, line parameters.
5144         (complaint_internal): Update.
5145
5146 2018-05-23  Tom Tromey  <tom@tromey.com>
5147
5148         * complaints.c (vcomplaint): Remove.
5149         (complaint_internal) Merge in contents of vcomplaint.
5150
5151 2018-05-23  Tom Tromey  <tom@tromey.com>
5152
5153         * complaints.c (struct complaints) <explanation>: Remove.
5154         (symfile_explanations): Remove.
5155         (symfile_complaint_book): Update.
5156         (vcomplaint): Update.
5157         (struct explanation): Remove.
5158
5159 2018-05-23  Tom Tromey  <tom@tromey.com>
5160
5161         * complaints.c (symfile_complaints): Remove.
5162         (complaint_internal): Remove "complaints" parameter.
5163         (clear_complaints, vcomplaint): Remove "c" parameter.
5164         (get_complaints): Remove.
5165         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
5166         (dwarf2_debug_line_missing_file_complaint)
5167         (dwarf2_debug_line_missing_end_sequence_complaint)
5168         (dwarf2_complex_location_expr_complaint)
5169         (dwarf2_const_value_length_mismatch_complaint)
5170         (dwarf2_section_buffer_overflow_complaint)
5171         (dwarf2_macro_malformed_definition_complaint)
5172         (dwarf2_invalid_attrib_class_complaint)
5173         (create_addrmap_from_index, dw2_symtab_iter_next)
5174         (dw2_expand_marked_cus)
5175         (dw2_debug_names_iterator::find_vec_in_debug_names)
5176         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
5177         (create_debug_type_hash_table, init_cutu_and_read_dies)
5178         (partial_die_parent_scope, add_partial_enumeration)
5179         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
5180         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
5181         (read_import_statement, read_file_scope, create_dwo_cu_reader)
5182         (create_cus_hash_table, create_dwp_hash_table)
5183         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
5184         (dwarf2_rnglists_process, dwarf2_ranges_process)
5185         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
5186         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
5187         (handle_struct_member_die, process_structure_scope)
5188         (read_array_type, read_common_block, read_module_type)
5189         (read_tag_pointer_type, read_typedef, read_base_type)
5190         (read_subrange_type, load_partial_dies, partial_die_info::read)
5191         (partial_die_info::read, partial_die_info::read)
5192         (partial_die_info::read, read_checked_initial_length_and_offset)
5193         (dwarf2_string_attr, read_formatted_entries)
5194         (dwarf_decode_line_header)
5195         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
5196         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
5197         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
5198         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
5199         (get_signatured_type, get_DW_AT_signature_type)
5200         (decode_locdesc, file_file_name, consume_improper_spaces)
5201         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
5202         (dwarf_decode_macro_bytes, dwarf_decode_macros)
5203         (dwarf2_symbol_mark_computed, set_die_type)
5204         (read_attribute_value): Update.
5205         * stap-probe.c (handle_stap_probe, get_stap_base_address):
5206         Update.
5207         * dbxread.c (unknown_symtype_complaint)
5208         (lbrac_mismatch_complaint, repeated_header_complaint)
5209         (set_namestring, function_outside_compilation_unit_complaint)
5210         (read_dbx_symtab, process_one_symbol): Update.
5211         * gdbtypes.c (stub_noname_complaint): Update.
5212         * windows-nat.c (handle_unload_dll): Update.
5213         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
5214         (decode_base_type): Update.
5215         * xcoffread.c (bf_notfound_complaint, ef_complaint)
5216         (eb_complaint, record_include_begin, record_include_end)
5217         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
5218         (process_xcoff_symbol, read_symbol)
5219         (function_outside_compilation_unit_complaint)
5220         (scan_xcoff_symtab): Update.
5221         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
5222         * buildsym.c (finish_block_internal, make_blockvector)
5223         (end_symtab_get_static_block, augment_type_symtab): Update.
5224         * dtrace-probe.c (dtrace_process_dof)
5225         (dtrace_static_probe_ops::get_probes): Update.
5226         * complaints.h (struct complaint): Don't declare.
5227         (symfile_complaints): Remove.
5228         (complaint_internal): Remove "complaints" parameter.
5229         (complaint): Likewise.
5230         (clear_complaints): Likewise.
5231         * symfile.c (syms_from_objfile_1, finish_new_objfile)
5232         (reread_symbols): Update.
5233         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
5234         (dwarf2_frame_cache, decode_frame_entry): Update.
5235         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
5236         * objc-lang.c (lookup_objc_class, lookup_child_selector)
5237         (info_selectors_command): Update.
5238         * macrotab.c (macro_include, check_for_redefinition)
5239         (macro_undef): Update.
5240         * objfiles.c (filter_overlapping_sections): Update.
5241         * stabsread.c (invalid_cpp_abbrev_complaint)
5242         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
5243         (define_symbol, error_type, read_type, rs6000_builtin_type)
5244         (stabs_method_name_from_physname, read_member_functions)
5245         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
5246         (attach_fields_to_type, complain_about_struct_wipeout)
5247         (read_range_type, read_args, common_block_start)
5248         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
5249         Update.
5250         * mdebugread.c (index_complaint, unknown_ext_complaint)
5251         (basic_type_complaint, bad_tag_guess_complaint)
5252         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
5253         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
5254         (parse_procedure, parse_lines)
5255         (function_outside_compilation_unit_complaint)
5256         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
5257         (bad_tag_guess_complaint, reg_value_complaint): Update.
5258         * cp-support.c (demangled_name_complaint): Update.
5259         * macroscope.c (sal_macro_scope): Update.
5260         * dwarf-index-write.c (class debug_names): Update.
5261
5262 2018-05-23  Tom Tromey  <tom@tromey.com>
5263
5264         * complaints.c (clear_complaints): Remove "noisy" parameter.
5265         * complaints.h (clear_complaints): Update.
5266         * symfile.c (syms_from_objfile_1, finish_new_objfile)
5267         (reread_symbols): Update.
5268
5269 2018-05-23  Tom Tromey  <tom@tromey.com>
5270
5271         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
5272         SUBSEQUENT_MESSAGE.
5273         (vcomplaint, clear_complaints): Update.
5274         (symfile_explanations): Remove some messages.
5275
5276 2018-05-23  Tom Tromey  <tom@tromey.com>
5277
5278         * complaints.c (internal_complaint): Remove.
5279         * complaints.h (internal_complaint): Remove.
5280
5281 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
5282
5283         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
5284
5285 2018-05-22  Pedro Alves  <palves@redhat.com>
5286
5287         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
5288         (remote_fileio_badfd, remote_fileio_return_errno)
5289         (remote_fileio_return_success, remote_fileio_func_open)
5290         (remote_fileio_func_open, remote_fileio_func_close)
5291         (remote_fileio_func_read, remote_fileio_func_write)
5292         (remote_fileio_func_lseek, remote_fileio_func_rename)
5293         (remote_fileio_func_unlink, remote_fileio_func_stat)
5294         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
5295         (remote_fileio_func_isatty, remote_fileio_func_system): Add
5296         remote_target parameter.
5297         (remote_fio_func_map) <func>: Add remote_target parameter.
5298         (do_remote_fileio_request, remote_fileio_request):
5299         * remote-fileio.h (remote_fileio_request):
5300         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
5301         remote_target parameter.
5302         (remote_notif_process, handle_notification): Adjust to pass down
5303         the remote.
5304         (remote_notif_state_allocate): Add remote_target parameter.  Save
5305         it.
5306         * remote-notif.h (struct remote_target): Forward declare.
5307         (struct notif_client) <parse, ack, can_get_pending_events>: Add
5308         remote_target parameter.
5309         (struct remote_notif_state) <remote>: New field.
5310         (remote_notif_ack, remote_notif_parse): Add remote_target
5311         parameter.
5312         (remote_notif_state_allocate, remote_notif_state_allocate): Add
5313         remote_target parameter.
5314         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
5315         (threads_listing_context, rmt_thread_action, protocol_feature)
5316         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
5317         (packet_result, struct threads_listing_context, remote_state):
5318         Move definitions and declarations higher up.
5319         (remote_target) <~remote_target>: Declare.
5320         (remote_download_command_source, remote_file_put, remote_file_get)
5321         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
5322         (remote_hostio_pread_vFile, remote_hostio_send_command)
5323         (remote_hostio_set_filesystem, remote_hostio_open)
5324         (remote_hostio_close, remote_hostio_unlink, remote_state)
5325         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
5326         (get_memory_write_packet_size, get_memory_read_packet_size)
5327         (append_pending_thread_resumptions, remote_detach_1)
5328         (append_resumption, remote_resume_with_vcont)
5329         (add_current_inferior_and_thread, wait_ns, wait_as)
5330         (process_stop_reply, remote_notice_new_inferior)
5331         (process_initial_stop_replies, remote_add_thread)
5332         (btrace_sync_conf, remote_btrace_maybe_reopen)
5333         (remove_new_fork_children, kill_new_fork_children)
5334         (discard_pending_stop_replies, stop_reply_queue_length)
5335         (check_pending_events_prevent_wildcard_vcont)
5336         (discard_pending_stop_replies_in_queue, stop_reply)
5337         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
5338         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
5339         (remote_interrupt_as, remote_interrupt_ns)
5340         (remote_get_noisy_reply, remote_query_attached)
5341         (remote_add_inferior, remote_current_thread, get_current_thread)
5342         (set_thread, set_general_thread, set_continue_thread)
5343         (set_general_process, write_ptid)
5344         (remote_unpack_thread_info_response, remote_get_threadinfo)
5345         (parse_threadlist_response, remote_get_threadlist)
5346         (remote_threadlist_iterator, remote_get_threads_with_ql)
5347         (remote_get_threads_with_qxfer)
5348         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
5349         (get_offsets, remote_check_symbols, remote_supported_packet)
5350         (remote_query_supported, remote_packet_size)
5351         (remote_serial_quit_handler, remote_detach_pid)
5352         (remote_vcont_probe, remote_resume_with_hc)
5353         (send_interrupt_sequence, interrupt_query)
5354         (remote_notif_get_pending_events, fetch_register_using_p)
5355         (send_g_packet, process_g_packet, fetch_registers_using_g)
5356         (store_register_using_P, store_registers_using_G)
5357         (set_remote_traceframe, check_binary_download)
5358         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
5359         (remote_xfer_live_readonly_partial, remote_read_bytes)
5360         (remote_send_printf, remote_flash_write, readchar)
5361         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
5362         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
5363         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
5364         (extended_remote_disable_randomization, extended_remote_run)
5365         (send_environment_packet, extended_remote_environment_support)
5366         (extended_remote_set_inferior_cwd, remote_write_qxfer)
5367         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
5368         (packet_command): Now methods of ...
5369         (remote_target): ... this class.
5370         (m_remote_state) <remote_target>: New field.
5371         (struct remote_state) <stop_reply_queue,
5372         remote_async_inferior_event_token, wait_forever_enabled_p>: New
5373         fields.
5374         (remote_state::remote_state): Allocate stop_reply_queue.
5375         (remote_state): Delete global.
5376         (get_remote_state_raw): Delete.
5377         (remote_target::get_remote_state): Allocate m_remote_state on
5378         demand.
5379         (get_current_remote_target): New.
5380         (remote_ops, extended_remote_ops): Delete.
5381         (wait_forever_enabled_p, remote_async_inferior_event_token):
5382         Delete, moved to struct remote_state.
5383         (remote_target::close): Delete self.  Destruction bits split to
5384         ...
5385         (remote_target::~remote_target): ... this.
5386         (show_memory_packet_size): Adjust to use
5387         get_current_remote_target.
5388         (struct protocol_feature) <func>: Add remote_target parameter.
5389         All callers adjusted.
5390         (curr_quit_handler_target): New.
5391         (remote_serial_quit_handler): Reimplement.
5392         (remote_target::open_1): Adjust to use get_current_remote_target.
5393         Heap-allocate remote_target/extended_remote_target instances.
5394         (vcont_builder::vcont_builder): Add remote_target parameter, and
5395         save it in m_remote.  All callers adjusted.
5396         (vcont_builder::m_remote): New field.
5397         (vcont_builder::restart, vcont_builder::flush)
5398         (vcont_builder::push_action): Use it.
5399         (remote_target::commit_resume): Use it.
5400         (struct queue_iter_param) <remote>: New field.
5401         (remote_target::remove_new_fork_children): Fill in 'remote' field.
5402         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
5403         (check_pending_event_prevents_wildcard_vcont_callback)
5404         (remote_target::check_pending_events_prevent_wildcard_vcont)
5405         (remote_target::discard_pending_stop_replies)
5406         (remote_target::discard_pending_stop_replies_in_queue)
5407         (remote_target::remote_notif_remove_queued_reply): Fill in
5408         'remote' field.
5409         (remote_notif_get_pending_events): New.
5410         (remote_target::readchar, remote_target::remote_serial_write):
5411         Save/restore curr_quit_handler_target.
5412         (putpkt): New.
5413         (kill_new_fork_children): Fill in 'remote' field.
5414         (packet_command): Use get_current_remote_target, defer to
5415         remote_target method of same name.
5416         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
5417         parameter, and save it in m_remote.  All callers adjusted.
5418         (scoped_remote_fd::release): Use m_remote.
5419         (scoped_remote_fd::m_remote): New field.
5420         (remote_file_put, remote_file_get, remote_file_delete): Use
5421         get_current_remote_target, defer to remote_target method of same
5422         name.
5423         (remote_btrace_reset): Add remote_state paremeter.  Update all
5424         callers.
5425         (remote_async_inferior_event_handler). Pass down 'data'.
5426         (remote_new_objfile): Use get_current_remote_target.
5427         (remote_target::vcont_r_supported): New.
5428         (set_range_stepping): Use get_current_remote_target and
5429         remote_target::vcont_r_supported.
5430         (_initialize_remote): Don't allocate 'remote_state' and
5431         'stop_reply_queue' globals.
5432         * remote.h (struct remote_target): Forward declare.
5433         (getpkt, putpkt, remote_notif_get_pending_events): Add
5434         'remote_target' parameter.
5435
5436 2018-05-22  Pedro Alves  <palves@redhat.com>
5437
5438         * remote.c (vcont_builder): Now a class.  Make all data members
5439         private.
5440         (vcont_builder) <vcont_builder, restart, flush, push_action>:
5441         Declare methods.
5442         (vcont_builder_restart): Rename to ...
5443         (vcont_builder::restart): ... this.
5444         (vcont_builder_flush): Rename to ...
5445         (vcont_builder::flush): ... this.
5446         (vcont_builder_push_action): Rename to ...
5447         (vcont_builder::push_action): ... this.
5448         (remote_target::commit_resume): Adjust.
5449
5450 2018-05-22  Pedro Alves  <palves@redhat.com>
5451
5452         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
5453         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
5454         (get_fixed_memory_packet_size): New.
5455         (get_memory_packet_size): Use it.
5456         (set_memory_packet_size): Don't override the config size with
5457         DEFAULT_MAX_MEMORY_PACKET_SIZE.
5458         (show_memory_packet_size): Use get_fixed_memory_packet_size.
5459         Don't refer to get_memory_packet_size if not connected to a remote
5460         target.  Show "(default)" if configured size is 0.
5461
5462 2018-05-22  Pedro Alves  <palves@redhat.com>
5463
5464         * remote.c (remote_target::mourn_inferior): Move
5465         discard_pending_stop_replies call here from ...
5466         (_initialize_remote): ... here.
5467
5468 2018-05-22  Pedro Alves  <palves@redhat.com>
5469
5470         * remote.c (compare_section_command): Remove set_general_process
5471         call.
5472
5473 2018-05-22  Pedro Alves  <palves@redhat.com>
5474
5475         * remote.c (struct packet_reg, struct remote_arch_state):
5476         Move higher up in the file.
5477         (remote_state) <m_arch_states>: Store remote_arch_state values
5478         instead of remote_arch_state pointers.
5479         (remote_state::get_remote_arch_state): Adjust.
5480
5481 2018-05-22  Pedro Alves  <palves@redhat.com>
5482
5483         * remote.c: Include <unordered_map>.
5484         (remote_state): Now a class.
5485         (remote_state) <get_remote_arch_state>: Declare method.
5486         <get_remote_arch_state>: New field.
5487         (remote_arch_state) <remote_arch_state>: Declare ctor.
5488         <regs>: Now a unique_ptr.
5489         (remote_gdbarch_data_handle): Delete.
5490         (get_remote_arch_state): Delete.
5491         (remote_state::get_remote_arch_state): New.
5492         (get_remote_state): Adjust to call remote_state's
5493         get_remote_arch_state method.
5494         (init_remote_state): Delete, bits factored out to ...
5495         (remote_arch_state::remote_arch_state): ... this new method.
5496         (get_remote_packet_size, get_memory_packet_size)
5497         (process_g_packet, remote_target::fetch_registers)
5498         (remote_target::prepare_to_store, store_registers_using_G)
5499         (remote_target::store_registers, remote_target::get_trace_status):
5500         Adjust to call remote_state's method.
5501         (_initialize_remote): Remove reference to
5502         remote_gdbarch_data_handle.
5503
5504 2018-05-22  Pedro Alves  <palves@redhat.com>
5505
5506         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
5507         pread>: New method declarations.
5508         (remote_target::open_1): Adjust.
5509         (readahead_cache_invalidate): Rename to ...
5510         (readahead_cache::invalidate): ... this, and adjust to be a class
5511         method.
5512         (readahead_cache_invalidate_fd): Rename to ...
5513         (readahead_cache::invalidate_fd): ... this, and adjust to be a
5514         class method.
5515         (remote_hostio_pwrite): Adjust.
5516         (remote_hostio_pread_from_cache): Rename to ...
5517         (readahead_cache::pread): ... this, and adjust to be a class
5518         method.
5519         (remote_hostio_close): Adjust.
5520
5521 2018-05-22  Pedro Alves  <palves@redhat.com>
5522
5523         * remote.c (remote_hostio_close_cleanup): Delete.
5524         (class scoped_remote_fd): New.
5525         (remote_file_put, remote_file_get): Use it.
5526
5527 2018-05-22  Pedro Alves  <palves@redhat.com>
5528
5529         (struct vCont_action_support): Use bool and initialize all fields.
5530         (struct readahead_cache): Initialize all fields.
5531         (remote_state): Use bool and initialize all fields.
5532         (remote_state::remote_state, remote_state::~remote_state): New.
5533         (new_remote_state): Delete.
5534         (_initialize_remote): Use new to allocate remote_state.
5535
5536 2018-05-22  Pedro Alves  <palves@redhat.com>
5537             張俊芝  <zjz@zjz.name>
5538
5539         PR gdb/22973
5540         * c-exp.y: Include "c-support.h".
5541         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
5542         of tolower.  Use c_ident_is_alpha to scan names.
5543         * c-lang.c: Include "c-support.h".
5544         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
5545         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
5546         * c-support.h: New file, with bits factored out from ...
5547         * cp-name-parser.y: ... this file.
5548         Include "c-support.h".
5549         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
5550         c-support.h and renamed.
5551         (symbol_end, yylex): Adjust.
5552
5553 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
5554
5555         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
5556         parameter type to CORE_ADDR.
5557         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
5558         parameter type in declaration to CORE_ADDR.
5559         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
5560         target_auxv_search to get AT_HWCAP and use the result to get the
5561         target description.
5562         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
5563         to CORE_ADDR. Remove the cast of the return value to unsigned
5564         long. Fix error predicate of target_auxv_search.
5565         (ppc_linux_nat_target::read_description): Change the type of the
5566         hwcap variable to CORE_ADDR.
5567
5568 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
5569
5570         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
5571         if the size of fpscr is larger than 32 bits.
5572
5573 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
5574
5575         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
5576         (ppc32_linux_vsxregmap): New global.
5577         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
5578         regcache_supply_regset, and regcache_collect_regset.
5579         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
5580         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
5581         (fetch_vsx_register, store_vsx_register): Remove.
5582         (fetch_vsx_registers): Add regno parameter. Get regset using
5583         ppc_linux_vsxregset. Use regset to supply registers.
5584         (store_vsx_registers): Add regno parameter. Get regset using
5585         ppc_linux_vsxregset. Use regset to collect registers.
5586         (fetch_register): Call fetch_vsx_registers instead of
5587         fetch_vsx_register.
5588         (store_register): Call store_vsx_registers instead of
5589         store_vsx_register.
5590         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
5591         new regno parameter.
5592         (store_ppc_registers): Call store_vsx_registers with -1 for the
5593         new regno parameter.
5594         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
5595         (ppc_collect_vsxregset): Remove.
5596
5597 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
5598
5599         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
5600         offset fields.
5601         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
5602         for vector register offset fields.
5603         (ppc64_fbsd_reg_offsets): Likewise.
5604         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
5605         to vector register offset fields.
5606         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
5607         to vector register offset fields.
5608         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
5609         vector register offset fields.
5610         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
5611         initializers for vector register offset fields.
5612         (rs6000_aix64_reg_offsets): Likewise.
5613         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
5614         (ppc_supply_vrregset): Remove.
5615         (ppc_collect_vrregset): Remove.
5616         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
5617         (ppc_linux_vrregset) : New function.
5618         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
5619         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
5620         (ppc32_linux_vrregset): Remove.
5621         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
5622         and use result instead of ppc32_linux_vrregset.
5623         (ppc32_linux_reg_offsets): Remove initializers for vector register
5624         offset fields.
5625         (ppc64_linux_reg_offsets): Likewise.
5626         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
5627         * ppc-linux-nat.c: Include regset.h.
5628         (gdb_vrregset_t): Adjust comment to account for little-endian
5629         mode.
5630         (supply_vrregset, fill_vrregset): Remove.
5631         (fetch_altivec_register, store_altivec_register): Remove.
5632         (fetch_altivec_registers): Add regno parameter. Get regset using
5633         ppc_linux_vrregset. Use regset to supply registers.
5634         (store_altivec_registers): Add regno parameter. Get regset using
5635         ppc_linux_vrregset. Use regset to collect registers.
5636         (fetch_register): Call fetch_altivec_registers instead of
5637         fetch_altivec_register.
5638         (store_register): Call store_altivec_registers instead of
5639         store_altivec_register.
5640         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
5641         the new regno parameter.
5642         (store_ppc_registers): Call store_altivec_registers with -1 for
5643         the new regno parameter.
5644
5645 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
5646
5647         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
5648         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
5649         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
5650         (gdb_vrregset_t): Change array type size to
5651         PPC_LINUX_SIZEOF_VRREGSET.
5652         (gdb_vsxregset_t): Change array type size to
5653         PPC_LINUX_SIZEOF_VSXREGSET.
5654         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
5655         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
5656         PPC_LINUX_SIZEOF_VSXREGSET.
5657
5658 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
5659
5660         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
5661         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
5662         nat/ppc-linux.c.
5663         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
5664         ppc_linux_target_wordsize with tid.
5665         (ppc_linux_nat_target::read_description): Call ppc_linux_target
5666         wordsize with tid.
5667         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
5668         (ppc64_64bit_inferior_p): Add static and inline specifiers.
5669         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
5670         tid parameter. Remove static specifier.
5671         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
5672         (ppc_linux_target_wordsize): New declaration.
5673
5674 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
5675
5676         * arch/ppc-linux-common.c: New file.
5677         * arch/ppc-linux-common.h: New file.
5678         * arch/ppc-linux-tdesc.h: New file.
5679         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
5680         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
5681         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
5682         arch/ppc-linux-tdesc.h.
5683         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
5684         arch/ppc-linux-tdesc.h.
5685         (ppc_linux_nat_target::read_description): Remove target
5686         description matching code. Fill a ppc_linux_features struct and
5687         call ppc_linux_match_description with it. Move comment about ISA
5688         2.05 to ppc-linux-common.c.
5689         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
5690         arch/ppc-linux-tdesc.h.
5691         (ppc_linux_core_read_description): Remove target description
5692         matching code. Fill a ppc_linux_features struct and call
5693         ppc_linux_match_description with it.
5694         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
5695         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
5696         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
5697         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
5698         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
5699         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
5700         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
5701         (tdesc_powerpc_e500l): Remove.
5702
5703 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
5704
5705         * ada-lang.c (catch_assert_command): Pass empty string instead
5706         of NULL for excep_string argument.
5707
5708 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
5709
5710         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
5711         the width of the requested register exceeds the width of the
5712         `ptrace' data type.
5713
5714 2018-05-21  Tom Tromey  <tom@tromey.com>
5715
5716         * printcmd.c (output_command): Remove.
5717         (output_command_const): Rename to output_command.
5718         * valprint.h (output_command): Rename from output_command_const.
5719         * tracepoint.c (trace_dump_actions): Call output_command.
5720
5721 2018-05-21  Tom Tromey  <tom@tromey.com>
5722
5723         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
5724         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
5725         * ada-lang.h (create_ada_exception_catchpoint): Update.
5726         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
5727         std::string.
5728         (create_excep_cond_exprs, ~ada_catchpoint)
5729         (should_stop_exception, print_one_exception)
5730         (print_mention_exception, print_recreate_exception): Update.
5731         (ada_get_next_arg): Remove.
5732         (catch_ada_exception_command_split): Use std::string.  Change type
5733         of "excep_string", "cond_string".
5734         (catch_ada_exception_command): Update.
5735         (create_ada_exception_catchpoint): Change type of excep_string.
5736         (ada_exception_sal): Remove excep_string parameter.
5737         (~ada_catchpoint): Remove.
5738
5739 2018-05-21  Tom Tromey  <tom@tromey.com>
5740
5741         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
5742         cleanup.
5743
5744 2018-05-21  Tom Tromey  <tom@tromey.com>
5745
5746         * ada-lang.c (ada_exception_message_1, ada_exception_message):
5747         Return unique_xmalloc_ptr.
5748         (print_it_exception): Update.
5749
5750 2018-05-21  Tom Tromey  <tom@tromey.com>
5751
5752         * tracepoint.c (trace_dump_actions): Use std::string.
5753
5754 2018-05-21  Tom Tromey  <tom@tromey.com>
5755
5756         * symfile.c (reread_symbols): Use std::string for original_name.
5757
5758 2018-05-21  Tom Tromey  <tom@tromey.com>
5759
5760         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
5761         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
5762         constructor.
5763
5764 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
5765
5766         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
5767         instance to...
5768         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
5769         * objfiles.c (get_objfile_bfd_data): Allocate
5770         objfile_per_bfd_storage with obstack_new when allocating on
5771         obstack.
5772
5773 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
5774
5775         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
5776         OBSTACK_ZALLOC.
5777         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
5778         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
5779         * mdebugread.c (mdebug_build_psymtabs): Likewise.
5780         (add_pending): Likewise.
5781         (parse_symbol): Likewise.
5782         (parse_partial_symbols): Likewise.
5783         (psymtab_to_symtab_1): Likewise.
5784         (new_psymtab): Likewise.
5785         (elfmdebug_build_psymtabs): Likewise.
5786         * minsyms.c (terminate_minimal_symbol_table): Likewise.
5787         * objfiles.c (get_objfile_bfd_data): Likewise.
5788         (objfile_register_static_link): Likewise.
5789         * psymtab.c (allocate_psymtab): Likewise.
5790         * stabsread.c (read_member_functions): Likewise.
5791         * xcoffread.c (xcoff_end_psymtab): Likewise.
5792
5793 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
5794
5795         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
5796         compiler supports std::is_trivially_constructible.
5797         * common/poison.h: Include obstack.h.
5798         (IsMallocable): Define to is_trivially_constructible if the
5799         compiler supports it, define to true_type otherwise.
5800         (xobnew): New.
5801         (XOBNEW): Redefine.
5802         (xobnewvec): New.
5803         (XOBNEWVEC): Redefine.
5804         * gdb_obstack.h (obstack_zalloc): New.
5805         (OBSTACK_ZALLOC): Redefine.
5806         (obstack_calloc): New.
5807         (OBSTACK_CALLOC): Redefine.
5808         (obstack_new): New.
5809         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
5810         (gdbarch_obstack): New declaration in gdbarch.h, definition in
5811         gdbarch.c.
5812         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
5813         obstack_calloc/obstack_zalloc.
5814         (gdbarch_obstack_zalloc): Remove.
5815         * target-descriptions.c (tdesc_data_init): Use obstack_new.
5816
5817 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5818
5819         * stack.c (backtrace_command_1): Remove useless variable int i.
5820
5821 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5822
5823         * stack.c (print_frame_info): Fix comment.
5824
5825 2018-05-18  Tom Tromey  <tom@tromey.com>
5826
5827         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
5828         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
5829         (~dwarf2_per_objfile): Update
5830         (dwarf2_get_dwz_file): Use new.
5831         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
5832         unique_ptr.
5833
5834 2018-05-18  Tom Tromey  <tom@tromey.com>
5835
5836         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
5837         unique_ptr.
5838         * dwarf2read.c (struct dwp_file): Add constructor and
5839         initializers.
5840         (open_and_init_dwp_file): Return a unique_ptr.
5841         (dwarf2_per_objfile, create_dwp_hash_table)
5842         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
5843         (lookup_dwo_unit_in_dwp): Update.
5844         (open_and_init_dwp_file, get_dwp_file): Update.
5845
5846 2018-05-18  Tom Tromey  <tom@tromey.com>
5847
5848         * dwarf2read.c (dwarf2_per_objfile): Update.
5849         (struct mapped_index): Add initializers.
5850         (dwarf2_read_index): Use new.
5851         (dw2_symtab_iter_init): Update.
5852         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
5853         unique_ptr.
5854
5855 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
5856
5857         * dwarf2read.c (mapped_index) <total_size>: Remove.
5858
5859 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
5860
5861         * unittests/format_pieces-selftests.c (test_format_specifier):
5862         Add ARI comments.
5863
5864 2018-05-18  Tom Tromey  <tom@tromey.com>
5865
5866         * c-typeprint.c (maybe_print_hole): New function.
5867         (c_print_type_struct_field_offset): Update.
5868         (c_type_print_base_struct_union): Call maybe_print_hole.
5869
5870 2018-05-17  Keith Seitz  <keiths@redhat.com>
5871
5872         * breakpoint.c (build_bpstat_chain): New function, moved from
5873         bpstat_stop_status.
5874         (bpstat_stop_status): Add optional parameter, `stop_chain'.
5875         If no stop chain is passed, call build_bpstat_chain to build it.
5876         * breakpoint.h (build_bpstat_chain): Declare.
5877         (bpstat_stop_status): Move documentation here from breakpoint.c.
5878         * infrun.c (handle_signal_stop): Before eliding inlined frames,
5879         build the stop chain and pass it to skip_inline_frames.
5880         Pass this stop chain to bpstat_stop_status.
5881         * inline-frame.c: Include breakpoint.h.
5882         (stopped_by_user_bp_inline_frame): New function.
5883         (skip_inline_frames): Add parameter `stop_chain'.
5884         Move documention to inline-frame.h.
5885         If non-NULL, use stopped_by_user_bp_inline_frame to determine
5886         whether the frame should be elided.
5887         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
5888         Add moved documentation and update for new parameter.
5889
5890 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
5891
5892         PR cli/14975
5893         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5894         unittests/format_pieces-selftests.c.
5895         * common/format.h (format_piece) <operator==>: New.
5896         (format_pieces) <operator[]>: Remove.
5897         * common/format.c (format_pieces::format_pieces): Handle \e.
5898         * unittests/format_pieces-selftests.c: New.
5899
5900 2018-05-17  Tom Tromey  <tom@tromey.com>
5901
5902         PR symtab/23010:
5903         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
5904         (dw2_instantiate_symtab): Add skip_partial parameter.
5905         (dw2_find_last_source_symtab, dw2_map_expand_apply)
5906         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
5907         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
5908         (dw2_expand_symtabs_matching_one)
5909         (dw2_find_pc_sect_compunit_symtab)
5910         (dw2_debug_names_lookup_symbol)
5911         (dw2_debug_names_expand_symtabs_for_function): Update.
5912         (init_cutu_and_read_dies): Add skip_partial parameter.
5913         (process_psymtab_comp_unit, build_type_psymtabs_1)
5914         (process_skeletonless_type_unit, load_partial_comp_unit)
5915         (psymtab_to_symtab_1): Update.
5916         (load_full_comp_unit): Add skip_partial parameter.
5917         (process_imported_unit_die, dwarf2_read_addr_index)
5918         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
5919         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
5920         (read_signatured_type): Update.
5921
5922 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
5923
5924         * value.c (release_value): Remove unused variable.
5925         (record_latest_value): Likewise.
5926         (access_value_history): Likewise.
5927         (preserve_values): Likewise.
5928
5929 2018-05-17  Tom Tromey  <tom@tromey.com>
5930
5931         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
5932         Initialize.
5933
5934 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
5935
5936         PR gdb/22286
5937         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
5938         Also handle registers whose width is not a multiple of
5939         PTRACE_TYPE_RET.
5940         (linux_nat_trad_target::store_register): Likewise.
5941
5942 2018-05-16  Tom Tromey  <tom@tromey.com>
5943
5944         * gdbcore.h (core_bfd): Redefine.
5945         * corelow.c (core_target::close): Update.
5946         (core_target_open): Update.
5947         * progspace.h (struct program_space) <cbfd>: Now a
5948         gdb_bfd_ref_ptr.
5949
5950 2018-05-16  Tom Tromey  <tom@tromey.com>
5951
5952         PR cli/19551:
5953         * symfile-add-flags.h (enum symfile_add_flags)
5954         <SYMFILE_NOT_FILENAME>: New constant.
5955         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
5956         objfile name from BFD.
5957         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
5958         * minidebug.c (find_separate_debug_file_in_section): Put
5959         ".gnu_debugdata" into BFD's file name.
5960
5961 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
5962
5963         * regcache.c (regcache_read_ftype, regcache_write_ftype):
5964         Remove.
5965
5966 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
5967
5968         PR binutils/21446
5969         * aarch64-tdep.c (aarch64_analyze_prologue,
5970         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
5971         Indicate not interested in errors.
5972
5973 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
5974
5975         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
5976         Supply the MIPS_ZERO_REGNUM register.
5977
5978 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
5979
5980         * mips-tdep.c (mask_address_var): Make variable static.
5981
5982 2018-05-14  Tom Tromey  <tom@tromey.com>
5983
5984         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
5985
5986 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
5987
5988         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
5989         FXSAVE_ADDR for the mxcsr register.
5990
5991 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
5992
5993         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
5994
5995 2018-05-11  Pedro Alves  <palves@redhat.com>
5996
5997         * corelow.c (core_target) <core_target>: No longer inline.
5998         Initialize m_core_gdbarch, m_core_vec and build the section table
5999         here.
6000         <~core_target>: New.
6001         <core_gdbarch, get_core_register_section>: New methods.
6002         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
6003         factored out from ...
6004         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
6005         (core_ops): Delete.
6006         (sniff_core_bfd): Add gdbarch parameter.
6007         (core_close): Delete, merged into ...
6008         (core_target::close): ... here.  Delete self.
6009         (core_close_cleanup): Delete.
6010         (core_target_open): Allocate a core_target on the heap.  Use a
6011         unique_ptr instead of a cleanup.  Bits moved into the core_target
6012         ctor.  Adjust to use core_target methods instead of globals.
6013         (get_core_register_section): Rename to ...
6014         (core_target::get_core_register_section): ... this and adjust.
6015         (struct get_core_registers_cb_data): New.
6016         (get_core_registers_cb): Use it.  Use bool.
6017         (core_target::fetch_registers, core_target::files_info)
6018         (core_target::xfer_partial, core_target::read_description)
6019         (core_target::pid_to, core_target::thread_name): Adjust to
6020         reference class fields instead of globals.
6021         * target.h (struct target_ops_deleter, target_ops_up): New.
6022
6023 2018-05-11  Pedro Alves  <palves@redhat.com>
6024
6025         * corefile.c (core_file_command): Move to corelow.c.
6026         * corelow.c (the_core_target): Delete.
6027         (core_file_command): Moved from corefile.c.  Check exec_bfd
6028         instead of the_core_target.  Use target_detach instead of calling
6029         into the_core_target directly.
6030         (maybe_say_no_core_file_now): New.
6031         (core_target::detach): Use it.
6032         (_initialize_corelow): Remove references to the_core_target.
6033         * gdbcore.h (the_core_target): Delete.
6034
6035 2018-05-11  Tom Tromey  <tromey@redhat.com>
6036             Pedro Alves  <palves@redhat.com>
6037
6038         * corefile.c (core_bfd): Remove.
6039         * gdbcore.h (core_bfd): Now a macro.
6040         * progspace.h (struct program_space) <cbfd>: New field.
6041
6042 2018-05-11  Tom Tromey  <tom@tromey.com>
6043
6044         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
6045         gdb::def_vector.
6046
6047 2018-05-10  Tom Tromey  <tom@tromey.com>
6048
6049         * configure: Rebuild.
6050         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
6051
6052 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
6053
6054         PR server/23158:
6055         * regformats/regdat.sh: Adjust script, following the addition
6056         of the new expedite_regs parameter to init_target_desc.
6057
6058 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
6059     
6060         PR gdb/23127
6061         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
6062         set_gdbarch_significant_addr_bit.
6063         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
6064         set_gdbarch_significant_addr_bit.
6065         * utils.c (address_significant): Update to sign extend addr.
6066
6067 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
6068
6069         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
6070         (xtensa_linux_init_abi): Limit tdep->num_regs by
6071         tdep->num_nopriv_regs.
6072         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
6073         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
6074         not initialized.
6075
6076 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
6077
6078         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
6079
6080 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
6081
6082         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
6083         (I387_MXCSR_INIT_VAL): New constant.
6084         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
6085         buffer if it was supplied by the inferior.
6086         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
6087         (i387_xsave_get_clear_bv): New function.
6088         (i387_supply_xsave): Only read x87 control registers from the
6089         xsave buffer if the feature is enabled, and the state will have
6090         been written, otherwise, provide a suitable default.
6091         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
6092         including x87 control registers.  Update control registers if they
6093         have changed from the default value, and mark features as enabled
6094         as required.
6095         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
6096
6097 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
6098
6099         * spu-tdep.c (info_spu_event_command): Fix output formatting.
6100
6101 2018-05-07  Tom Tromey  <tom@tromey.com>
6102
6103         * configure: Rebuild.
6104         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
6105
6106 2018-05-07  Tom Tromey  <tom@tromey.com>
6107
6108         PR tdep/20362:
6109         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
6110         bit.  Use correct value for VDIV.
6111
6112 2018-05-04  Tom Tromey  <tom@tromey.com>
6113
6114         * configure: Rebuild.
6115         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
6116
6117 2018-05-04  Tom Tromey  <tom@tromey.com>
6118
6119         * linux-record.c (record_linux_system_call) <case
6120         RECORD_SYS_RECVFROM>: Add "break".
6121
6122 2018-05-04  Tom Tromey  <tom@tromey.com>
6123
6124         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
6125         Add missing "break".
6126         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
6127         Add missing "break".
6128
6129 2018-05-04  Tom Tromey  <tom@tromey.com>
6130
6131         * rs6000-tdep.c (ppc_process_record_op4)
6132         (ppc_process_record_op63): Add fall-through comment.
6133
6134 2018-05-04  Tom Tromey  <tom@tromey.com>
6135
6136         * i386-tdep.c (i386_process_record): Add fall-through comment.
6137
6138 2018-05-04  Tom Tromey  <tom@tromey.com>
6139
6140         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
6141         comment.
6142
6143 2018-05-04  Tom Tromey  <tom@tromey.com>
6144
6145         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
6146         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
6147         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
6148         comment.
6149         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
6150         comment.
6151         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
6152         comment.
6153
6154 2018-05-04  Tom Tromey  <tom@tromey.com>
6155
6156         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
6157
6158 2018-05-04  Tom Tromey  <tom@tromey.com>
6159
6160         * s390-tdep.c (s390_process_record): Fix fall-through comments.
6161         * xcoffread.c (scan_xcoff_symtab): Move comment later.
6162         * symfile.c (section_is_mapped): Fix fall-through comment.
6163         * stabsread.c (define_symbol, read_member_functions): Fix
6164         fall-through comment.
6165         * s390-linux-tdep.c (s390_process_record): Fix fall-through
6166         comment.
6167         * remote.c (remote_wait_as): Fix fall-through comment.
6168         * p-exp.y (yylex): Fix fall-through comment.
6169         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
6170         comment.
6171         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
6172         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
6173         * jv-exp.y (yylex): Fix fall-through comment.
6174         * go-exp.y (lex_one_token): Fix fall-through comment.
6175         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
6176         fall-through comment.
6177         * f-exp.y (yylex): Fix fall-through comment.
6178         * dwarf2read.c (process_die): Fix fall-through comments.
6179         * dbxread.c (process_one_symbol): Fix fall-through comment.
6180         * d-exp.y (lex_one_token): Fix fall-through comment.
6181         * cp-name-parser.y (yylex): Fix fall-through comment.
6182         * coffread.c (coff_symtab_read): Fix fall-through comment.
6183         * c-exp.y (lex_one_token): Fix fall-through comment.
6184         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
6185         comment.
6186         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
6187         comment.
6188
6189 2018-05-04  Tom Tromey  <tom@tromey.com>
6190
6191         PR python/22730:
6192         * NEWS: Mention gdb.execute change.
6193         * gdbcmd.h (execute_control_command): Don't declare.
6194         * python/python.c (execute_gdb_command): Use read_command_lines_1,
6195         execute_control_commands, execute_control_commands_to_string.
6196         * cli/cli-script.h (execute_control_commands)
6197         (execute_control_commands_to_string): Declare.
6198         (execute_control_command): Add from_tty parameter.
6199         * cli/cli-script.c (execute_control_commands)
6200         (execute_control_commands_to_string): New functions.
6201         (execute_user_command): Use execute_control_commands.
6202         (execute_control_command_1): Add "from_tty" parameter.  Update.
6203         (execute_control_command): Likewise.
6204
6205 2018-05-04  Tom Tromey  <tom@tromey.com>
6206
6207         PR python/22731:
6208         * NEWS: Mention that breakpoint commands are writable.
6209         * python/py-breakpoint.c (bppy_set_commands): New function.
6210         (breakpoint_object_getset) <"commands">: Use it.
6211
6212 2018-05-04  Tom Tromey  <tom@tromey.com>
6213
6214         * tracepoint.c (actions_command): Update.
6215         * mi/mi-cmd-break.c (mi_command_line_array)
6216         (mi_command_line_array_cnt, mi_command_line_array_ptr)
6217         (mi_read_next_line): Remove.
6218         (mi_cmd_break_commands): Update.
6219         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
6220         function_view.
6221         * cli/cli-script.c (get_command_line): Update.
6222         (process_next_line): Use function_view.  Constify.
6223         (recurse_read_control_structure, read_command_lines)
6224         (read_command_lines_1): Change argument types to function_view.
6225         (do_define_command, document_command): Update.
6226         * breakpoint.h (check_tracepoint_command): Don't declare.
6227         * breakpoint.c (check_tracepoint_command): Remove.
6228         (commands_command_1, create_tracepoint_from_upload): Update.
6229
6230 2018-05-04  Tom Tromey  <tom@tromey.com>
6231
6232         PR gdb/11750:
6233         * cli/cli-script.h (enum command_control_type) <define_control>:
6234         New constant.
6235         * cli/cli-script.c (multi_line_command_p): Handle define_control.
6236         (build_command_line, execute_control_command_1)
6237         (process_next_line): Likewise.
6238         (do_define_command): New function, extracted from define_command.
6239         (define_command): Use it.
6240
6241 2018-05-04  Tom Tromey  <tom@tromey.com>
6242
6243         * tracepoint.c (actions_command): Update.
6244         * cli/cli-script.h (read_command_lines): Update.
6245         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
6246         (MAX_TMPBUF): Remove define.
6247         (define_command): Use string_printf.
6248         (document_command): Likewise.
6249         * breakpoint.c (commands_command_1): Update.
6250
6251 2018-05-04  Tom Tromey  <tom@tromey.com>
6252
6253         * top.c (execute_command): Update.
6254         * cli/cli-script.h (print_command_lines): Now varargs.
6255         * cli/cli-script.c (print_command_lines): Now varargs.
6256         (execute_control_command_1) <case while_control, case if_control>:
6257         Update.
6258
6259 2018-05-04  Tom Tromey  <tom@tromey.com>
6260
6261         * tracepoint.c (all_tracepoint_actions): Rename from
6262         all_tracepoint_actions_and_cleanup.  Change return type.
6263         (actions_command, encode_actions_1, encode_actions)
6264         (trace_dump_actions, tdump_command): Update.
6265         * remote.c (remote_download_command_source): Update.
6266         * python/python.c (gdbpy_eval_from_control_command)
6267         (python_command, python_interactive_command): Update.
6268         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
6269         * guile/guile.c (guile_command)
6270         (gdbscm_eval_from_control_command, guile_command): Update.
6271         * compile/compile.c (compile_code_command)
6272         (compile_print_command, compile_to_object): Update.
6273         * cli/cli-script.h (struct command_lines_deleter): New.
6274         (counted_command_line): New typedef.
6275         (struct command_line): Add constructor, destructor.
6276         <body_list>: Remove.
6277         <body_list_0, body_list_1>: New members.
6278         (command_line_up): Remove typedef.
6279         (read_command_lines, read_command_lines_1, get_command_line):
6280         Update.
6281         (copy_command_lines): Don't declare.
6282         * cli/cli-script.c (build_command_line): Use "new".
6283         (get_command_line): Return counted_command_line.
6284         (print_command_lines, execute_user_command)
6285         (execute_control_command_1, while_command, if_command): Update.
6286         (realloc_body_list): Remove.
6287         (process_next_line, recurse_read_control_structure): Update.
6288         (read_command_lines, read_command_lines_1): Return counted_command_line.
6289         (free_command_lines): Use "delete".
6290         (copy_command_lines): Remove.
6291         (define_command, document_command, show_user_1): Update.
6292         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
6293         a counted_command_line.
6294         * breakpoint.h (counted_command_line): Remove typedef.
6295         (breakpoint_set_commands): Update.
6296         * breakpoint.c (check_no_tracepoint_commands)
6297         (validate_commands_for_breakpoint): Update.
6298         (breakpoint_set_commands): Change commands to be a
6299         counted_command_line.
6300         (commands_command_1, update_dprintf_command_list)
6301         (create_tracepoint_from_upload): Update.
6302
6303 2018-05-04  Tom Tromey  <tom@tromey.com>
6304
6305         * cli/cli-decode.h (cmd_list_element): New constructor.
6306         (~cmd_list_element): New destructor.
6307         (struct cmd_list_element): Add initializers.
6308         * cli/cli-decode.c (do_add_cmd): Use "new".
6309         (delete_cmd): Use "delete".
6310
6311 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
6312             Pedro Alves <palves@redhat.com>
6313
6314         PR breakpoints/19806 and support for PR external/20207.
6315         * NEWS: Mention Aarch64 watchpoint improvements.
6316         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
6317         watchpoints and PR external/20207 watchpoints.
6318         * nat/aarch64-linux-hw-point.c
6319         (kernel_supports_any_contiguous_range): New.
6320         (aarch64_watchpoint_offset): New.
6321         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
6322         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
6323         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
6324         (aarch64_align_watchpoint): New parameters aligned_offset_p and
6325         next_addr_orig_p.  Support PR external/20207 watchpoints.
6326         (aarch64_downgrade_regs): New.
6327         (aarch64_dr_state_insert_one_point): New parameters offset and
6328         addr_orig.
6329         (aarch64_dr_state_remove_one_point): Likewise.
6330         (aarch64_handle_breakpoint): Update caller.
6331         (aarch64_handle_aligned_watchpoint): Likewise.
6332         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
6333         aligned_offset.
6334         (aarch64_linux_set_debug_regs): Remove const from state.  Call
6335         aarch64_downgrade_regs.
6336         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
6337         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
6338         (DR_CONTROL_MASK): ... this.
6339         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
6340         (unsigned int aarch64_watchpoint_offset): New prototype.
6341         (aarch64_linux_set_debug_regs): Remove const from state.
6342         * utils.c (align_up, align_down): Move to ...
6343         * common/common-utils.c (align_up, align_down): ... here.
6344         * utils.h (align_up, align_down): Move to ...
6345         * common/common-utils.h (align_up, align_down): ... here.
6346
6347 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
6348
6349         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
6350         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
6351         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
6352         Re-implement to match the ABI as summarized in GCC's
6353         gcc/config/sparc/sparc.c.  All callers updated.
6354         (sparc32_store_arguments): Remove assertion.
6355
6356 2018-05-04  Tom Tromey  <tom@tromey.com>
6357
6358         * printcmd.c: Don't include tui.h.
6359         (decode_format): Use skip_spaces.
6360
6361 2018-05-04  Tom Tromey  <tom@tromey.com>
6362
6363         PR gdb/22619:
6364         * printcmd.c (last_count): New global.
6365         (x_command): Use saved count when repeating.
6366
6367 2018-05-04  Tom Tromey  <tom@tromey.com>
6368
6369         * nto-procfs.c (do_closedir_cleanup): Remove.
6370         (procfs_pidlist): Use gdb_dir_up.
6371         * procfs.c (do_closedir_cleanup): Remove.
6372         (proc_update_threads): Use gdb_dir_up.
6373         * common/filestuff.h (struct gdb_dir_deleter): New.
6374         (gdb_dir_up): New typedef.
6375
6376 2018-05-04  Tom Tromey  <tom@tromey.com>
6377
6378         * ada-lang.c (print_mention_exception): Use std::string.
6379
6380 2018-05-04  Tom Tromey  <tom@tromey.com>
6381
6382         * ada-lang.c (create_excep_cond_exprs): Update.
6383         (ada_exception_catchpoint_cond_string): Use std::string.
6384
6385 2018-05-04  Tom Tromey  <tom@tromey.com>
6386
6387         * ada-lang.c (xget_renaming_scope): Return std::string.
6388         (old_renaming_is_invisible): Update.
6389
6390 2018-05-04  Tom Tromey  <tom@tromey.com>
6391
6392         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
6393         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
6394
6395 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
6396
6397         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
6398
6399 2018-05-04  Tom Tromey  <tom@tromey.com>
6400
6401         * remote.c (remote_query_supported_append): Change type.
6402         (remote_check_symbols): Update.
6403
6404 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
6405
6406         PR gdb/11420
6407         * configure.ac: Prepend libpython.
6408         * python/python-config.py: Likewise.
6409         * configure: Regenerate.
6410
6411 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
6412
6413         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
6414
6415 2018-05-03  Pedro Alves  <palves@redhat.com>
6416
6417         * s390-linux-nat.c
6418         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
6419         override.  Write 'true' instead of '1'.
6420         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
6421         declaration.
6422
6423 2018-05-02  Pedro Alves  <palves@redhat.com>
6424
6425         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
6426         add_inf_child_target.
6427         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
6428         add_inf_child_target.
6429         * aix-thread.c (aix_thread_target_info): New.
6430         (aix_thread_target) <shortname, longname, doc>: Delete.
6431         <info>: New.
6432         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
6433         add_inf_child_target.
6434         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
6435         add_inf_child_target.
6436         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
6437         add_inf_child_target.
6438         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
6439         add_inf_child_target.
6440         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
6441         add_inf_child_target.
6442         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
6443         add_inf_child_target.
6444         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
6445         add_inf_child_target.
6446         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
6447         add_inf_child_target.
6448         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
6449         add_inf_child_target.
6450         * bfd-target.c (target_bfd_target_info): New.
6451         (target_bfd) <shortname, longname, doc>: Delete.
6452         <info>: New.
6453         * bsd-kvm.c (bsd_kvm_target_info): New.
6454         (bsd_kvm_target) <shortname, longname, doc>: Delete.
6455         <info>: New.
6456         (bsd_kvm_target::open): Rename to ...
6457         (bsd_kvm_target_open): ... this.  Adjust.
6458         * bsd-uthread.c (bsd_uthread_target_info): New.
6459         (bsd_uthread_target) <shortname, longname, doc>: Delete.
6460         <info>: New.
6461         * corefile.c (core_file_command): Adjust.
6462         * corelow.c (core_target_info): New.
6463         (core_target) <shortname, longname, doc>: Delete.
6464         <info>: New.
6465         (core_target::open): Rename to ...
6466         (core_target_open): ... this.  Adjust.
6467         * ctf.c (ctf_target_info): New.
6468         (ctf_target) <shortname, longname, doc>: Delete.
6469         <info>: New.
6470         (ctf_target::open): Rename to ...
6471         (ctf_target_open): ... this.
6472         (_initialize_ctf): Adjust.
6473         * exec.c (exec_target_info): New.
6474         (exec_target) <shortname, longname, doc>: Delete.
6475         <info>: New.
6476         (exec_target::open): Rename to ...
6477         (exec_target_open): ... this.
6478         * gdbcore.h (core_target_open): Declare.
6479         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
6480         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
6481         add_inf_child_target.
6482         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
6483         add_inf_child_target.
6484         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
6485         add_inf_child_target.
6486         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
6487         add_inf_child_target.
6488         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
6489         add_inf_child_target.
6490         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
6491         add_inf_child_target.
6492         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
6493         add_inf_child_target.
6494         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
6495         add_inf_child_target.
6496         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
6497         add_inf_child_target.
6498         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
6499         add_inf_child_target.
6500         * inf-child.c (inf_child_target_info): New.
6501         (inf_child_target::info): New.
6502         (inf_child_open_target): Remove 'target' parameter.  Use
6503         get_native_target instead.
6504         (inf_child_target::open): Delete.
6505         (add_inf_child_target): New.
6506         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
6507         Delete.
6508         <info>: New.
6509         (add_inf_child_target): Declare.
6510         (inf_child_open_target): Declare.
6511         * linux-thread-db.c (thread_db_target_info): New.
6512         (thread_db_target) <shortname, longname, doc>: Delete.
6513         <info>: New.
6514         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
6515         add_inf_child_target.
6516         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
6517         add_inf_child_target.
6518         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
6519         add_inf_child_target.
6520         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
6521         add_inf_child_target.
6522         * make-target-delegates (print_class): Adjust.
6523         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
6524         add_inf_child_target.
6525         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
6526         add_inf_child_target.
6527         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
6528         add_inf_child_target.
6529         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
6530         add_inf_child_target.
6531         * nto-procfs.c (nto_native_target_info): New.
6532         (nto_procfs_target_native) <shortname, longname, doc>:
6533         Delete.
6534         <info>: New.
6535         (nto_procfs_target_info): New.
6536         (nto_procfs_target_procfs) <shortname, longname, doc>:
6537         Delete.
6538         <info>: New.
6539         (init_procfs_targets): Adjust.
6540         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
6541         add_inf_child_target.
6542         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
6543         add_inf_child_target.
6544         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
6545         add_inf_child_target.
6546         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
6547         add_inf_child_target.
6548         * ravenscar-thread.c (ravenscar_target_info): New.
6549         (ravenscar_thread_target) <shortname, longname, doc>:
6550         Delete.
6551         <info>: New.
6552         * record-btrace.c (record_btrace_target_info):
6553         (record_btrace_target) <shortname, longname, doc>: Delete.
6554         <info>: New.
6555         (record_btrace_target::open): Rename to ...
6556         (record_btrace_target_open): ... this.  Adjust.
6557         * record-full.c (record_longname, record_doc): New.
6558         (record_full_base_target) <shortname, longname, doc>: Delete.
6559         <info>: New.
6560         (record_full_target_info): New.
6561         (record_full_target): <shortname>: Delete.
6562         <info>: New.
6563         (record_full_core_open_1, record_full_open_1): Update comments.
6564         (record_full_base_target::open): Rename to ...
6565         (record_full_open): ... this.
6566         (cmd_record_full_restore): Update.
6567         (_initialize_record_full): Update.
6568         * remote-sim.c (remote_sim_target_info): New.
6569         (gdbsim_target) <shortname, longname, doc>: Delete.
6570         <info>: New.
6571         (gdbsim_target::open): Rename to ...
6572         (gdbsim_target_open): ... this.
6573         (_initialize_remote_sim): Adjust.
6574         * remote.c (remote_doc): New.
6575         (remote_target_info): New.
6576         (remote_target) <shortname, longname, doc>: Delete.
6577         <info>: New.
6578         (extended_remote_target_info): New.
6579         (extended_remote_target) <shortname, longname, doc>: Delete.
6580         <info>: New.
6581         (remote_target::open_1): Make static.  Adjust.
6582         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
6583         * s390-linux-nat.c (_initialize_s390_nat): Use
6584         add_inf_child_target.
6585         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
6586         add_inf_child_target.
6587         * sol-thread.c (thread_db_target_info): New.
6588         (sol_thread_target) <shortname, longname, doc>: Delete.
6589         <info>: New.
6590         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
6591         add_inf_child_target.
6592         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
6593         add_inf_child_target.
6594         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
6595         add_inf_child_target.
6596         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
6597         add_inf_child_target.
6598         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
6599         add_inf_child_target.
6600         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
6601         add_inf_child_target.
6602         * spu-linux-nat.c (_initialize_spu_nat): Use
6603         add_inf_child_target.
6604         * spu-multiarch.c (spu_multiarch_target_info): New.
6605         (spu_multiarch_target) <shortname, longname, doc>: Delete.
6606         <info>: New.
6607         * target-delegates.c: Regenerate.
6608         * target.c: Include <unordered_map>.
6609         (target_ops_p): Delete.
6610         (DEF_VEC_P(target_ops_p)): Delete.
6611         (target_factories): New.
6612         (test_target_info): New.
6613         (test_target_ops::info): New.
6614         (open_target): Adjust to use target_factories.
6615         (add_target_with_completer): Rename to ...
6616         (add_target): ... this.  Change prototype.  Register target_info
6617         and open callback in target_factories.  Register target_info in
6618         command context instead of target_ops.
6619         (add_target): Delete old implementation.
6620         (add_deprecated_target_alias): Change prototype.  Adjust.
6621         (the_native_target): New.
6622         (set_native_target, get_native_target): New.
6623         (find_default_run_target): Use the_native_target.
6624         (find_attach_target, find_run_target): Simplify.
6625         (target_ops::open): Delete.
6626         (dummy_target_info): New.
6627         (dummy_target::shortname, dummy_target::longname)
6628         (dummy_target::doc): Delete.
6629         (dummy_target::info): New.
6630         (debug_target::shortname, debug_target::longname)
6631         (debug_target::doc): Delete.
6632         (debug_target::info): New.
6633         * target.h (struct target_info): New.
6634         (target_ops::~target_ops): Add comment.
6635         (target_ops::info): New.
6636         (target_ops::shortname, target_ops::longname, target_ops::doc): No
6637         longer virtual.  Implement in terms of target_info.
6638         (set_native_target, get_native_target): Declare.
6639         (target_open_ftype): New.
6640         (add_target, add_target_with_completer)
6641         (add_deprecated_target_alias): Change prototype.
6642         (test_target) <shortname, longname, doc>: Delete.
6643         <info>: New.
6644         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
6645         add_inf_child_target.
6646         * tracefile-tfile.c (tfile_target_info): New.
6647         (tfile_target) <shortname, longname, doc>: Delete.
6648         <info>: New.
6649         (tfile_target::open): Rename to ...
6650         (tfile_target_open): ... this.
6651         (_initialize_tracefile_tfile): Adjust.
6652         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
6653         add_inf_child_target.
6654         * windows-nat.c (_initialize_windows_nat): Use
6655         add_inf_child_target.
6656         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
6657         add_inf_child_target.
6658
6659 2018-05-02  Pedro Alves  <palves@redhat.com>
6660
6661         * linux-nat.h (linux_nat_target) <low_new_thread,
6662         low_delete_thread, low_new_fork, low_forget_process,
6663         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
6664         New virtual methods.
6665         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
6666         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
6667         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
6668         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
6669         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
6670         Delete.
6671         * linux-fork.c (delete_fork): Adjust to call low method.
6672         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
6673         (linux_nat_new_fork, linux_nat_forget_process_hook)
6674         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
6675         (linux_nat_status_is_event):
6676         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
6677         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
6678         to call low method.
6679         (sigtrap_is_event): Rename to ...
6680         (linux_nat_target::low_status_is_event): ... this.
6681         (linux_nat_set_status_is_event): Delete.
6682         (save_stop_reason, linux_nat_wait_1)
6683         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
6684         low methods.
6685         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
6686         (linux_nat_set_new_fork, linux_nat_set_forget_process)
6687         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
6688         (linux_nat_set_prepare_to_resume): Delete.
6689         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
6690         low virtual methods.
6691         * amd64-linux-nat.c: Likewise.
6692         * arm-linux-nat.c: Likewise.
6693         * i386-linux-nat.c: Likewise.
6694         * ia64-linux-nat.c: Likewise.
6695         * mips-linux-nat.c: Likewise.
6696         * ppc-linux-nat.c: Likewise.
6697         * s390-linux-nat.c: Likewise.
6698         * sparc64-linux-nat.c: Likewise.
6699         * x86-linux-nat.c: Likewise.
6700         * x86-linux-nat.h: Include "nat/x86-linux.h".
6701         (x86_linux_nat_target) <low_new_fork, low_forget_process,
6702         low_prepare_to_resume, low_new_thread, low_delete_thread>:
6703         Override methods.
6704
6705 2018-05-02  Pedro Alves  <palves@redhat.com>
6706
6707         * target.h (target_ops)
6708         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
6709         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
6710         stopped_by_watchpoint, have_continuable_watchpoint,
6711         stopped_data_address, watchpoint_addr_within_range,
6712         can_accel_watchpoint_condition, can_run, thread_alive,
6713         has_all_memory, has_memory, has_stack, has_registers,
6714         has_execution, can_async_p, is_async_p, supports_non_stop,
6715         always_non_stop_p, can_execute_reverse, supports_multi_process,
6716         supports_enable_disable_tracepoint,
6717         supports_disable_randomization, supports_string_tracing,
6718         supports_evaluation_of_breakpoint_conditions,
6719         can_run_breakpoint_commands, filesystem_is_local,
6720         can_download_tracepoint, get_trace_state_variable_value,
6721         set_trace_notes, get_tib_address, use_agent, can_use_agent,
6722         record_is_replaying, record_will_replay,
6723         augmented_libraries_svr4_read>: Adjust to return bool.
6724         * aarch64-linux-nat.c: All implementations adjusted.
6725         * aix-thread.c: All implementations adjusted.
6726         * arm-linux-nat.c: All implementations adjusted.
6727         * breakpoint.c: All implementations adjusted.
6728         * bsd-kvm.c: All implementations adjusted.
6729         * bsd-uthread.c: All implementations adjusted.
6730         * corelow.c: All implementations adjusted.
6731         * ctf.c: All implementations adjusted.
6732         * darwin-nat.c: All implementations adjusted.
6733         * darwin-nat.h: All implementations adjusted.
6734         * exec.c: All implementations adjusted.
6735         * fbsd-nat.c: All implementations adjusted.
6736         * fbsd-nat.h: All implementations adjusted.
6737         * gnu-nat.c: All implementations adjusted.
6738         * gnu-nat.h: All implementations adjusted.
6739         * go32-nat.c: All implementations adjusted.
6740         * ia64-linux-nat.c: All implementations adjusted.
6741         * inf-child.c: All implementations adjusted.
6742         * inf-child.h: All implementations adjusted.
6743         * inf-ptrace.c: All implementations adjusted.
6744         * inf-ptrace.h: All implementations adjusted.
6745         * linux-nat.c: All implementations adjusted.
6746         * linux-nat.h: All implementations adjusted.
6747         * mips-linux-nat.c: All implementations adjusted.
6748         * nto-procfs.c: All implementations adjusted.
6749         * ppc-linux-nat.c: All implementations adjusted.
6750         * procfs.c: All implementations adjusted.
6751         * ravenscar-thread.c: All implementations adjusted.
6752         * record-btrace.c: All implementations adjusted.
6753         * record-full.c: All implementations adjusted.
6754         * remote-sim.c: All implementations adjusted.
6755         * remote.c: All implementations adjusted.
6756         * s390-linux-nat.c: All implementations adjusted.
6757         * sol-thread.c: All implementations adjusted.
6758         * spu-multiarch.c: All implementations adjusted.
6759         * target-delegates.c: All implementations adjusted.
6760         * target.c: All implementations adjusted.
6761         * target.h: All implementations adjusted.
6762         * tracefile-tfile.c: All implementations adjusted.
6763         * tracefile.c: All implementations adjusted.
6764         * tracefile.h: All implementations adjusted.
6765         * windows-nat.c: All implementations adjusted.
6766         * x86-linux-nat.h: All implementations adjusted.
6767         * x86-nat.h: All implementations adjusted.
6768
6769 2018-05-02  Pedro Alves  <palves@redhat.com>
6770
6771         * make-target-delegates (scan_target_h): Don't trim lines here.
6772         Replace sequences of tabs and/or whitespace with a single
6773         whitespace.
6774         (top level, parsing methods): Trim each line before processing it
6775         here.
6776
6777 2018-05-02  Pedro Alves  <palves@redhat.com>
6778             John Baldwin  <jhb@freebsd.org>
6779
6780         * target.h (enum strata) <debug_stratum>: New.
6781         (struct target_ops) <all delegation methods>: Replace by C++
6782         virtual methods, and drop "to_" prefix.  All references updated
6783         throughout.
6784         <to_shortname, to_longname, to_doc, to_data,
6785         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
6786         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
6787         virtual methods.  All references updated throughout.
6788         <can_attach, supports_terminal_ours, can_create_inferior,
6789         get_thread_control_capabilities, attach_no_wait>: New
6790         virtual methods.
6791         <insert_breakpoint, remove_breakpoint>: Now
6792         TARGET_DEFAULT_NORETURN methods.
6793         <info_proc>: Now returns bool.
6794         <to_magic>: Delete.
6795         (OPS_MAGIC): Delete.
6796         (current_target): Delete.  All references replaced by references
6797         to ...
6798         (target_stack): ... this.  New.
6799         (target_shortname, target_longname): Adjust.
6800         (target_can_run): Now a function declaration.
6801         (default_child_has_all_memory, default_child_has_memory)
6802         (default_child_has_stack, default_child_has_registers)
6803         (default_child_has_execution): Remove target_ops parameter.
6804         (complete_target_initialization): Delete.
6805         (memory_breakpoint_target): New template class.
6806         (test_target_ops): Refactor as a C++ class with virtual methods.
6807         * make-target-delegates (NAME_PART): Tighten.
6808         (POINTER_PART, CP_SYMBOL): New.
6809         (SIMPLE_RETURN_PART): Reimplement.
6810         (VEC_RETURN_PART): Expect less.
6811         (RETURN_PART, VIRTUAL_PART): New.
6812         (METHOD): Adjust to C++ virtual methods.
6813         (scan_target_h): Remove reference to C99.
6814         (dname): Output "target_ops::" prefix.
6815         (write_function_header): Adjust to output a C++ class method.
6816         (write_declaration): New.
6817         (write_delegator): Adjust to output a C++ class method.
6818         (tdname): Output "dummy_target::" prefix.
6819         (write_tdefault, write_debugmethod): Adjust to output a C++ class
6820         method.
6821         (tdefault_names, debug_names): Delete.
6822         (return_types, tdefaults, styles, argtypes_array): New.
6823         (top level): All methods are delegators.
6824         (print_class): New.
6825         (top level): Print dummy_target and debug_target classes.
6826         * target-delegates.c: Regenerate.
6827         * target-debug.h (target_debug_print_enum_info_proc_what)
6828         (target_debug_print_thread_control_capabilities)
6829         (target_debug_print_thread_info_p): New.
6830         * target.c (dummy_target): Delete.
6831         (the_dummy_target, the_debug_target): New.
6832         (target_stack): Now extern.
6833         (set_targetdebug): Push/unpush debug target.
6834         (default_child_has_all_memory, default_child_has_memory)
6835         (default_child_has_stack, default_child_has_registers)
6836         (default_child_has_execution): Remove target_ops parameter.
6837         (complete_target_initialization): Delete.
6838         (add_target_with_completer): No longer call
6839         complete_target_initialization.
6840         (target_supports_terminal_ours): Use regular delegation.
6841         (update_current_target): Delete.
6842         (push_target): No longer check magic number.  Don't call
6843         update_current_target.
6844         (unpush_target): Don't call update_current_target.
6845         (target_is_pushed): No longer check magic number.
6846         (target_require_runnable): Skip for all stratums over
6847         process_stratum.
6848         (target_ops::info_proc): New.
6849         (target_info_proc): Use find_target_at and
6850         find_default_run_target.
6851         (target_supports_disable_randomization): Use regular delegation.
6852         (target_get_osdata): Use find_target_at.
6853         (target_ops::open, target_ops::close, target_ops::can_attach)
6854         (target_ops::attach, target_ops::can_create_inferior)
6855         (target_ops::create_inferior, target_ops::can_run)
6856         (target_can_run): New.
6857         (default_fileio_target): Use regular delegation.
6858         (target_ops::fileio_open, target_ops::fileio_pwrite)
6859         (target_ops::fileio_pread, target_ops::fileio_fstat)
6860         (target_ops::fileio_close, target_ops::fileio_unlink)
6861         (target_ops::fileio_readlink): New.
6862         (target_fileio_open_1, target_fileio_unlink)
6863         (target_fileio_readlink): Always call the target method.  Handle
6864         FILEIO_ENOSYS.
6865         (return_zero, return_zero_has_execution): Delete.
6866         (init_dummy_target): Delete.
6867         (dummy_target::dummy_target, dummy_target::shortname)
6868         (dummy_target::longname, dummy_target::doc)
6869         (debug_target::debug_target, debug_target::shortname)
6870         (debug_target::longname, debug_target::doc): New.
6871         (target_supports_delete_record): Use regular delegation.
6872         (setup_target_debug): Delete.
6873         (maintenance_print_target_stack): Skip debug_stratum.
6874         (initialize_targets): Instantiate the_dummy_target and
6875         the_debug_target.
6876         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
6877         use target_stack.
6878         (target_auxv_search, fprint_target_auxv): Adjust.
6879         (info_auxv_command): Adjust to use target_stack.
6880         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
6881         * exceptions.c (print_flush): Handle a NULL target_stack.
6882         * regcache.c (target_ops_no_register): Refactor as class with
6883         virtual methods.
6884
6885         * exec.c (exec_target): New class.
6886         (exec_ops): Now an exec_target.
6887         (exec_open, exec_close_1, exec_get_section_table)
6888         (exec_xfer_partial, exec_files_info, exec_has_memory)
6889         (exec_make_note_section): Refactor as exec_target methods.
6890         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
6891         Delete.
6892         (exec_target::find_memory_regions): New.
6893         (_initialize_exec): Don't call init_exec_ops.
6894         * gdbcore.h (exec_file_clear): Delete.
6895
6896         * corefile.c (core_target): Delete.
6897         (core_file_command): Adjust.
6898         * corelow.c (core_target): New class.
6899         (the_core_target): New.
6900         (core_close): Remove target_ops parameter.
6901         (core_close_cleanup): Adjust.
6902         (core_target::close): New.
6903         (core_open, core_detach, get_core_registers, core_files_info)
6904         (core_xfer_partial, core_thread_alive, core_read_description)
6905         (core_pid_to_str, core_thread_name, core_has_memory)
6906         (core_has_stack, core_has_registers, core_info_proc): Rework as
6907         core_target methods.
6908         (ignore, core_remove_breakpoint, init_core_ops): Delete.
6909         (_initialize_corelow): Initialize the_core_target.
6910         * gdbcore.h (core_target): Delete.
6911         (the_core_target): New.
6912
6913         * ctf.c: (ctf_target): New class.
6914         (ctf_ops): Now a ctf_target.
6915         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
6916         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
6917         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
6918         methods.
6919         (init_ctf_ops): Delete.
6920         (_initialize_ctf): Don't call it.
6921         * tracefile-tfile.c (tfile_target): New class.
6922         (tfile_ops): Now a tfile_target.
6923         (tfile_open, tfile_close, tfile_files_info)
6924         (tfile_get_tracepoint_status, tfile_trace_find)
6925         (tfile_fetch_registers, tfile_xfer_partial)
6926         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
6927         Refactor as tfile_target methods.
6928         (tfile_xfer_partial_features): Remove target_ops parameter.
6929         (init_tfile_ops): Delete.
6930         (_initialize_tracefile_tfile): Don't call it.
6931         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
6932         (tracefile_has_stack, tracefile_has_registers)
6933         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
6934         tracefile_target methods.
6935         (init_tracefile_ops): Delete.
6936         (tracefile_target::tracefile_target): New.
6937         * tracefile.h: Include "target.h".
6938         (tracefile_target): New class.
6939         (init_tracefile_ops): Delete.
6940
6941         * spu-multiarch.c (spu_multiarch_target): New class.
6942         (spu_ops): Now a spu_multiarch_target.
6943         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
6944         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
6945         (spu_search_memory, spu_mourn_inferior): Refactor as
6946         spu_multiarch_target methods.
6947         (init_spu_ops): Delete.
6948         (_initialize_spu_multiarch): Remove references to init_spu_ops,
6949         complete_target_initialization.
6950
6951         * ravenscar-thread.c (ravenscar_thread_target): New class.
6952         (ravenscar_ops): Now a ravenscar_thread_target.
6953         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
6954         (ravenscar_thread_alive, ravenscar_pid_to_str)
6955         (ravenscar_fetch_registers, ravenscar_store_registers)
6956         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
6957         (ravenscar_stopped_by_hw_breakpoint)
6958         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
6959         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
6960         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
6961         methods.
6962         (init_ravenscar_thread_ops): Delete.
6963         (_initialize_ravenscar): Remove references to
6964         init_ravenscar_thread_ops and complete_target_initialization.
6965
6966         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
6967         (bsd_uthread_target): New class.
6968         (bsd_uthread_ops): Now a bsd_uthread_target.
6969         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
6970         (bsd_uthread_close, bsd_uthread_mourn_inferior)
6971         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
6972         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
6973         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
6974         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
6975         (bsd_uthread_target): Delete function.
6976         (_initialize_bsd_uthread): Remove reference to
6977         complete_target_initialization.
6978
6979         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
6980         (target_bfd): ... this new class.
6981         (target_bfd_xfer_partial, target_bfd_get_section_table)
6982         (target_bfd_close): Refactor as target_bfd methods.
6983         (target_bfd::~target_bfd): New.
6984         (target_bfd_reopen): Adjust.
6985         (target_bfd::close): New.
6986
6987         * record-btrace.c (record_btrace_target): New class.
6988         (record_btrace_ops): Now a record_btrace_target.
6989         (record_btrace_open, record_btrace_stop_recording)
6990         (record_btrace_disconnect, record_btrace_close)
6991         (record_btrace_async, record_btrace_info)
6992         (record_btrace_insn_history, record_btrace_insn_history_range)
6993         (record_btrace_insn_history_from, record_btrace_call_history)
6994         (record_btrace_call_history_range)
6995         (record_btrace_call_history_from, record_btrace_record_method)
6996         (record_btrace_is_replaying, record_btrace_will_replay)
6997         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
6998         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
6999         (record_btrace_store_registers, record_btrace_prepare_to_store)
7000         (record_btrace_to_get_unwinder)
7001         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
7002         (record_btrace_commit_resume, record_btrace_wait)
7003         (record_btrace_stop, record_btrace_can_execute_reverse)
7004         (record_btrace_stopped_by_sw_breakpoint)
7005         (record_btrace_supports_stopped_by_sw_breakpoint)
7006         (record_btrace_stopped_by_hw_breakpoint)
7007         (record_btrace_supports_stopped_by_hw_breakpoint)
7008         (record_btrace_update_thread_list, record_btrace_thread_alive)
7009         (record_btrace_goto_begin, record_btrace_goto_end)
7010         (record_btrace_goto, record_btrace_stop_replaying_all)
7011         (record_btrace_execution_direction)
7012         (record_btrace_prepare_to_generate_core)
7013         (record_btrace_done_generating_core): Refactor as
7014         record_btrace_target methods.
7015         (init_record_btrace_ops): Delete.
7016         (_initialize_record_btrace): Remove reference to
7017         init_record_btrace_ops.
7018         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
7019         the execution_direction global.
7020         (record_full_base_target, record_full_target)
7021         (record_full_core_target): New classes.
7022         (record_full_ops): Now a record_full_target.
7023         (record_full_core_ops): Now a record_full_core_target.
7024         (record_full_target::detach, record_full_target::disconnect)
7025         (record_full_core_target::disconnect)
7026         (record_full_target::mourn_inferior, record_full_target::kill):
7027         New.
7028         (record_full_open, record_full_close, record_full_async): Refactor
7029         as methods of the record_full_base_target class.
7030         (record_full_resume, record_full_commit_resume): Refactor
7031         as methods of the record_full_target class.
7032         (record_full_wait, record_full_stopped_by_watchpoint)
7033         (record_full_stopped_data_address)
7034         (record_full_stopped_by_sw_breakpoint)
7035         (record_full_supports_stopped_by_sw_breakpoint)
7036         (record_full_stopped_by_hw_breakpoint)
7037         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
7038         methods of the record_full_base_target class.
7039         (record_full_store_registers, record_full_xfer_partial)
7040         (record_full_insert_breakpoint, record_full_remove_breakpoint):
7041         Refactor as methods of the record_full_target class.
7042         (record_full_can_execute_reverse, record_full_get_bookmark)
7043         (record_full_goto_bookmark, record_full_execution_direction)
7044         (record_full_record_method, record_full_info, record_full_delete)
7045         (record_full_is_replaying, record_full_will_replay)
7046         (record_full_goto_begin, record_full_goto_end, record_full_goto)
7047         (record_full_stop_replaying): Refactor as methods of the
7048         record_full_base_target class.
7049         (record_full_core_resume, record_full_core_kill)
7050         (record_full_core_fetch_registers)
7051         (record_full_core_prepare_to_store)
7052         (record_full_core_store_registers, record_full_core_xfer_partial)
7053         (record_full_core_insert_breakpoint)
7054         (record_full_core_remove_breakpoint)
7055         (record_full_core_has_execution): Refactor
7056         as methods of the record_full_core_target class.
7057         (record_full_base_target::supports_delete_record): New.
7058         (init_record_full_ops): Delete.
7059         (init_record_full_core_ops): Delete.
7060         (record_full_save): Refactor as method of the
7061         record_full_base_target class.
7062         (_initialize_record_full): Remove references to
7063         init_record_full_ops and init_record_full_core_ops.
7064
7065         * remote.c (remote_target, extended_remote_target): New classes.
7066         (remote_ops): Now a remote_target.
7067         (extended_remote_ops): Now an extended_remote_target.
7068         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
7069         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
7070         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
7071         (remote_pass_signals, remote_set_syscall_catchpoint)
7072         (remote_program_signals, )
7073         (remote_thread_always_alive): Remove target_ops parameter.
7074         (remote_thread_alive, remote_thread_name)
7075         (remote_update_thread_list, remote_threads_extra_info)
7076         (remote_static_tracepoint_marker_at)
7077         (remote_static_tracepoint_markers_by_strid)
7078         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
7079         (remote_open): Refactor as methods of remote_target.
7080         (extended_remote_open, extended_remote_detach)
7081         (extended_remote_attach, extended_remote_post_attach):
7082         (extended_remote_supports_disable_randomization)
7083         (extended_remote_create_inferior): : Refactor as method of
7084         extended_remote_target.
7085         (remote_set_permissions, remote_open_1, remote_detach)
7086         (remote_follow_fork, remote_follow_exec, remote_disconnect)
7087         (remote_resume, remote_commit_resume, remote_stop)
7088         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
7089         (remote_terminal_ours, remote_wait, remote_fetch_registers)
7090         (remote_prepare_to_store, remote_store_registers)
7091         (remote_flash_erase, remote_flash_done, remote_files_info)
7092         (remote_kill, remote_mourn, remote_insert_breakpoint)
7093         (remote_remove_breakpoint, remote_insert_watchpoint)
7094         (remote_watchpoint_addr_within_range)
7095         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
7096         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
7097         (remote_supports_stopped_by_sw_breakpoint)
7098         (remote_stopped_by_hw_breakpoint)
7099         (remote_supports_stopped_by_hw_breakpoint)
7100         (remote_stopped_by_watchpoint, remote_stopped_data_address)
7101         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
7102         (remote_verify_memory): Refactor as methods of remote_target.
7103         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
7104         parameter.
7105         (remote_xfer_partial, remote_get_memory_xfer_limit)
7106         (remote_search_memory, remote_rcmd, remote_memory_map)
7107         (remote_pid_to_str, remote_get_thread_local_address)
7108         (remote_get_tib_address, remote_read_description): Refactor as
7109         methods of remote_target.
7110         (remote_target::fileio_open, remote_target::fileio_pwrite)
7111         (remote_target::fileio_pread, remote_target::fileio_close): New.
7112         (remote_hostio_readlink, remote_hostio_fstat)
7113         (remote_filesystem_is_local, remote_can_execute_reverse)
7114         (remote_supports_non_stop, remote_supports_disable_randomization)
7115         (remote_supports_multi_process, remote_supports_cond_breakpoints)
7116         (remote_supports_enable_disable_tracepoint)
7117         (remote_supports_string_tracing)
7118         (remote_can_run_breakpoint_commands, remote_trace_init)
7119         (remote_download_tracepoint, remote_can_download_tracepoint)
7120         (remote_download_trace_state_variable, remote_enable_tracepoint)
7121         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
7122         (remote_trace_start, remote_get_trace_status)
7123         (remote_get_tracepoint_status, remote_trace_stop)
7124         (remote_trace_find, remote_get_trace_state_variable_value)
7125         (remote_save_trace_data, remote_get_raw_trace_data)
7126         (remote_set_disconnected_tracing, remote_core_of_thread)
7127         (remote_set_circular_trace_buffer, remote_traceframe_info)
7128         (remote_get_min_fast_tracepoint_insn_len)
7129         (remote_set_trace_buffer_size, remote_set_trace_notes)
7130         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
7131         (remote_disable_btrace, remote_teardown_btrace)
7132         (remote_read_btrace, remote_btrace_conf)
7133         (remote_augmented_libraries_svr4_read, remote_load)
7134         (remote_pid_to_exec_file, remote_can_do_single_step)
7135         (remote_execution_direction, remote_thread_handle_to_thread_info):
7136         Refactor as methods of remote_target.
7137         (init_remote_ops, init_extended_remote_ops): Delete.
7138         (remote_can_async_p, remote_is_async_p, remote_async)
7139         (remote_thread_events, remote_upload_tracepoints)
7140         (remote_upload_trace_state_variables): Refactor as methods of
7141         remote_target.
7142         (_initialize_remote): Remove references to init_remote_ops and
7143         init_extended_remote_ops.
7144
7145         * remote-sim.c (gdbsim_target): New class.
7146         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
7147         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
7148         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
7149         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
7150         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
7151         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
7152         Refactor as methods of gdbsim_target.
7153         (gdbsim_ops): Now a gdbsim_target.
7154         (init_gdbsim_ops): Delete.
7155         (gdbsim_cntrl_c): Adjust.
7156         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
7157
7158         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
7159         (the_amd64_linux_nat_target): New.
7160         (amd64_linux_fetch_inferior_registers)
7161         (amd64_linux_store_inferior_registers): Refactor as methods of
7162         amd64_linux_nat_target.
7163         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
7164         * i386-linux-nat.c: Don't include "linux-nat.h".
7165         (i386_linux_nat_target): New class.
7166         (the_i386_linux_nat_target): New.
7167         (i386_linux_fetch_inferior_registers)
7168         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
7169         as methods of i386_linux_nat_target.
7170         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
7171         * inf-child.c (inf_child_ops): Delete.
7172         (inf_child_fetch_inferior_registers)
7173         (inf_child_store_inferior_registers): Delete.
7174         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
7175         methods of inf_child_target.
7176         (inf_child_target::supports_terminal_ours)
7177         (inf_child_target::terminal_init)
7178         (inf_child_target::terminal_inferior)
7179         (inf_child_target::terminal_ours_for_output)
7180         (inf_child_target::terminal_ours, inf_child_target::interrupt)
7181         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
7182         New.
7183         (inf_child_open, inf_child_disconnect, inf_child_close)
7184         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
7185         (inf_child_post_startup_inferior, inf_child_can_run)
7186         (inf_child_pid_to_exec_file): Refactor as methods of
7187         inf_child_target.
7188         (inf_child_follow_fork): Delete.
7189         (inf_child_target::can_create_inferior)
7190         (inf_child_target::can_attach): New.
7191         (inf_child_target::has_all_memory, inf_child_target::has_memory)
7192         (inf_child_target::has_stack, inf_child_target::has_registers)
7193         (inf_child_target::has_execution): New.
7194         (inf_child_fileio_open, inf_child_fileio_pwrite)
7195         (inf_child_fileio_pread, inf_child_fileio_fstat)
7196         (inf_child_fileio_close, inf_child_fileio_unlink)
7197         (inf_child_fileio_readlink, inf_child_use_agent)
7198         (inf_child_can_use_agent): Refactor as methods of
7199         inf_child_target.
7200         (return_zero, inf_child_target): Delete.
7201         (inf_child_target::inf_child_target): New.
7202         * inf-child.h: Include "target.h".
7203         (inf_child_target): Delete function prototype.
7204         (inf_child_target): New class.
7205         (inf_child_open_target, inf_child_mourn_inferior)
7206         (inf_child_maybe_unpush_target): Delete.
7207         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
7208         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
7209         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
7210         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
7211         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
7212         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
7213         (inf_ptrace_wait, inf_ptrace_xfer_partial)
7214         (inf_ptrace_thread_alive, inf_ptrace_files_info)
7215         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
7216         methods of inf_ptrace_target.
7217         (inf_ptrace_target): Delete function.
7218         * inf-ptrace.h: Include "inf-child.h".
7219         (inf_ptrace_target): Delete function declaration.
7220         (inf_ptrace_target): New class.
7221         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
7222         * linux-nat.c (linux_target): New.
7223         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
7224         (linux_nat_target::~linux_nat_target): New.
7225         (linux_child_post_attach, linux_child_post_startup_inferior)
7226         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
7227         (linux_child_remove_fork_catchpoint)
7228         (linux_child_insert_vfork_catchpoint)
7229         (linux_child_remove_vfork_catchpoint)
7230         (linux_child_insert_exec_catchpoint)
7231         (linux_child_remove_exec_catchpoint)
7232         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
7233         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
7234         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
7235         (linux_nat_stopped_data_address)
7236         (linux_nat_stopped_by_sw_breakpoint)
7237         (linux_nat_supports_stopped_by_sw_breakpoint)
7238         (linux_nat_stopped_by_hw_breakpoint)
7239         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
7240         (linux_nat_kill, linux_nat_mourn_inferior)
7241         (linux_nat_xfer_partial, linux_nat_thread_alive)
7242         (linux_nat_update_thread_list, linux_nat_pid_to_str)
7243         (linux_nat_thread_name, linux_child_pid_to_exec_file)
7244         (linux_child_static_tracepoint_markers_by_strid)
7245         (linux_nat_is_async_p, linux_nat_can_async_p)
7246         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
7247         (linux_nat_supports_multi_process)
7248         (linux_nat_supports_disable_randomization, linux_nat_async)
7249         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
7250         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
7251         (linux_nat_fileio_open, linux_nat_fileio_readlink)
7252         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
7253         methods of linux_nat_target.
7254         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
7255         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
7256         parameter.
7257         (check_stopped_by_watchpoint): Adjust.
7258         (linux_xfer_partial): Delete.
7259         (linux_target_install_ops, linux_target, linux_nat_add_target):
7260         Delete.
7261         (linux_nat_target::linux_nat_target): New.
7262         * linux-nat.h: Include "inf-ptrace.h".
7263         (linux_nat_target): New.
7264         (linux_target, linux_target_install_ops, linux_nat_add_target):
7265         Delete function declarations.
7266         (linux_target): Declare global.
7267         * linux-thread-db.c (thread_db_target): New.
7268         (thread_db_target::thread_db_target): New.
7269         (thread_db_ops): Delete.
7270         (the_thread_db_target): New.
7271         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
7272         (thread_db_update_thread_list, thread_db_pid_to_str)
7273         (thread_db_extra_thread_info)
7274         (thread_db_thread_handle_to_thread_info)
7275         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
7276         (thread_db_resume): Refactor as methods of thread_db_target.
7277         (init_thread_db_ops): Delete.
7278         (_initialize_thread_db): Remove reference to init_thread_db_ops.
7279         * x86-linux-nat.c: Don't include "linux-nat.h".
7280         (super_post_startup_inferior): Delete.
7281         (x86_linux_nat_target::~x86_linux_nat_target): New.
7282         (x86_linux_child_post_startup_inferior)
7283         (x86_linux_read_description, x86_linux_enable_btrace)
7284         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
7285         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
7286         methods of x86_linux_nat_target.
7287         (x86_linux_create_target): Delete.  Bits folded ...
7288         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
7289         pointer.
7290         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
7291         (x86_linux_nat_target): New class.
7292         (x86_linux_create_target): Delete.
7293         (x86_linux_add_target): Now takes a linux_nat_target pointer.
7294         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
7295         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
7296         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
7297         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
7298         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
7299         make extern.
7300         (x86_use_watchpoints): Delete.
7301         * x86-nat.h: Include "breakpoint.h" and "target.h".
7302         (x86_use_watchpoints): Delete.
7303         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
7304         (x86_stopped_by_watchpoint, x86_stopped_data_address)
7305         (x86_insert_watchpoint, x86_remove_watchpoint)
7306         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
7307         (x86_stopped_by_hw_breakpoint): New declarations.
7308         (x86_nat_target): New template class.
7309
7310         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
7311         (the_ppc_linux_nat_target): New.
7312         (ppc_linux_fetch_inferior_registers)
7313         (ppc_linux_can_use_hw_breakpoint)
7314         (ppc_linux_region_ok_for_hw_watchpoint)
7315         (ppc_linux_ranged_break_num_registers)
7316         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
7317         (ppc_linux_insert_mask_watchpoint)
7318         (ppc_linux_remove_mask_watchpoint)
7319         (ppc_linux_can_accel_watchpoint_condition)
7320         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
7321         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
7322         (ppc_linux_watchpoint_addr_within_range)
7323         (ppc_linux_masked_watch_num_registers)
7324         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
7325         (ppc_linux_read_description): Refactor as methods of
7326         ppc_linux_nat_target.
7327         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
7328
7329         * procfs.c (procfs_xfer_partial): Delete forward declaration.
7330         (procfs_target): New class.
7331         (the_procfs_target): New.
7332         (procfs_target): Delete function.
7333         (procfs_auxv_parse, procfs_attach, procfs_detach)
7334         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
7335         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
7336         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
7337         (procfs_create_inferior, procfs_update_thread_list)
7338         (procfs_thread_alive, procfs_pid_to_str)
7339         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
7340         (procfs_stopped_data_address, procfs_insert_watchpoint)
7341         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
7342         (proc_find_memory_regions, procfs_info_proc)
7343         (procfs_make_note_section): Refactor as methods of procfs_target.
7344         (_initialize_procfs): Adjust.
7345         * sol-thread.c (sol_thread_target): New class.
7346         (sol_thread_ops): Now a sol_thread_target.
7347         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
7348         (sol_thread_fetch_registers, sol_thread_store_registers)
7349         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
7350         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
7351         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
7352         (init_sol_thread_ops): Delete.
7353         (_initialize_sol_thread): Adjust.  Remove references to
7354         init_sol_thread_ops and complete_target_initialization.
7355
7356         * windows-nat.c (windows_nat_target): New class.
7357         (windows_fetch_inferior_registers)
7358         (windows_store_inferior_registers, windows_resume, windows_wait)
7359         (windows_attach, windows_detach, windows_pid_to_exec_file)
7360         (windows_files_info, windows_create_inferior)
7361         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
7362         (windows_close, windows_pid_to_str, windows_xfer_partial)
7363         (windows_get_tib_address, windows_get_ada_task_ptid)
7364         (windows_thread_name, windows_thread_alive): Refactor as
7365         windows_nat_target methods.
7366         (do_initial_windows_stuff): Adjust.
7367         (windows_target): Delete function.
7368         (_initialize_windows_nat): Adjust.
7369
7370         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
7371         (darwin_mourn_inferior, darwin_kill_inferior)
7372         (darwin_create_inferior, darwin_attach, darwin_detach)
7373         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
7374         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
7375         (darwin_supports_multi_process): Refactor as darwin_nat_target
7376         methods.
7377         (darwin_resume_to, darwin_files_info): Delete.
7378         (_initialize_darwin_inferior): Rename to ...
7379         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
7380         * darwin-nat.h: Include "inf-child.h".
7381         (darwin_nat_target): New class.
7382         (darwin_complete_target): Delete.
7383         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
7384         (darwin_target): New.
7385         (i386_darwin_fetch_inferior_registers)
7386         (i386_darwin_store_inferior_registers): Refactor as methods of
7387         darwin_nat_target.
7388         (darwin_complete_target): Delete, with ...
7389         (_initialize_i386_darwin_nat): ... bits factored out here.
7390
7391         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
7392         (the_alpha_linux_nat_target): New.
7393         (alpha_linux_register_u_offset): Refactor as
7394         alpha_linux_nat_target method.
7395         (_initialize_alpha_linux_nat): Adjust.
7396         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
7397         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
7398         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
7399         methods of linux_nat_trad_target.
7400         (linux_trad_target): Delete.
7401         * linux-nat-trad.h (linux_trad_target): Delete function.
7402         (linux_nat_trad_target): New class.
7403         * mips-linux-nat.c (mips_linux_nat_target): New class.
7404         (super_fetch_registers, super_store_registers, super_close):
7405         Delete.
7406         (the_mips_linux_nat_target): New.
7407         (mips64_linux_regsets_fetch_registers)
7408         (mips64_linux_regsets_store_registers)
7409         (mips64_linux_fetch_registers, mips64_linux_store_registers)
7410         (mips_linux_register_u_offset, mips_linux_read_description)
7411         (mips_linux_can_use_hw_breakpoint)
7412         (mips_linux_stopped_by_watchpoint)
7413         (mips_linux_stopped_data_address)
7414         (mips_linux_region_ok_for_hw_watchpoint)
7415         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
7416         (mips_linux_close): Refactor as methods of mips_linux_nat.
7417         (_initialize_mips_linux_nat): Adjust to C++ification.
7418
7419         * aix-thread.c (aix_thread_target): New class.
7420         (aix_thread_ops): Now an aix_thread_target.
7421         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
7422         (aix_thread_fetch_registers, aix_thread_store_registers)
7423         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
7424         (aix_thread_thread_alive, aix_thread_pid_to_str)
7425         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
7426         Refactor as methods of aix_thread_target.
7427         (init_aix_thread_ops): Delete.
7428         (_initialize_aix_thread): Remove references to init_aix_thread_ops
7429         and complete_target_initialization.
7430         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
7431         (rs6000_nat_target): New class.
7432         (the_rs6000_nat_target): New.
7433         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
7434         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
7435         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
7436         (super_create_inferior): Delete.
7437         (_initialize_rs6000_nat): Adjust to C++ification.
7438
7439         * arm-linux-nat.c (arm_linux_nat_target): New class.
7440         (the_arm_linux_nat_target): New.
7441         (arm_linux_fetch_inferior_registers)
7442         (arm_linux_store_inferior_registers, arm_linux_read_description)
7443         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
7444         (arm_linux_remove_hw_breakpoint)
7445         (arm_linux_region_ok_for_hw_watchpoint)
7446         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
7447         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
7448         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
7449         arm_linux_nat_target.
7450         (_initialize_arm_linux_nat): Adjust to C++ification.
7451
7452         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
7453         (the_aarch64_linux_nat_target): New.
7454         (aarch64_linux_fetch_inferior_registers)
7455         (aarch64_linux_store_inferior_registers)
7456         (aarch64_linux_child_post_startup_inferior)
7457         (aarch64_linux_read_description)
7458         (aarch64_linux_can_use_hw_breakpoint)
7459         (aarch64_linux_insert_hw_breakpoint)
7460         (aarch64_linux_remove_hw_breakpoint)
7461         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
7462         (aarch64_linux_region_ok_for_hw_watchpoint)
7463         (aarch64_linux_stopped_data_address)
7464         (aarch64_linux_stopped_by_watchpoint)
7465         (aarch64_linux_watchpoint_addr_within_range)
7466         (aarch64_linux_can_do_single_step): Refactor as methods of
7467         aarch64_linux_nat_target.
7468         (super_post_startup_inferior): Delete.
7469         (_initialize_aarch64_linux_nat): Adjust to C++ification.
7470
7471         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
7472         (the_hppa_linux_nat_target): New.
7473         (hppa_linux_fetch_inferior_registers)
7474         (hppa_linux_store_inferior_registers): Refactor as methods of
7475         hppa_linux_nat_target.
7476         (_initialize_hppa_linux_nat): Adjust to C++ification.
7477
7478         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
7479         (the_ia64_linux_nat_target): New.
7480         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
7481         (ia64_linux_stopped_data_address)
7482         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
7483         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
7484         ia64_linux_nat_target methods.
7485         (super_xfer_partial): Delete.
7486         (_initialize_ia64_linux_nat): Adjust to C++ification.
7487
7488         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
7489         (the_m32r_linux_nat_target): New.
7490         (m32r_linux_fetch_inferior_registers)
7491         (m32r_linux_store_inferior_registers): Refactor as
7492         m32r_linux_nat_target methods.
7493         (_initialize_m32r_linux_nat): Adjust to C++ification.
7494
7495         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
7496         (the_m68k_linux_nat_target): New.
7497         (m68k_linux_fetch_inferior_registers)
7498         (m68k_linux_store_inferior_registers): Refactor as
7499         m68k_linux_nat_target methods.
7500         (_initialize_m68k_linux_nat): Adjust to C++ification.
7501
7502         * s390-linux-nat.c (s390_linux_nat_target): New class.
7503         (the_s390_linux_nat_target): New.
7504         (s390_linux_fetch_inferior_registers)
7505         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
7506         (s390_insert_watchpoint, s390_remove_watchpoint)
7507         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
7508         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
7509         (s390_auxv_parse, s390_read_description): Refactor as methods of
7510         s390_linux_nat_target.
7511         (_initialize_s390_nat): Adjust to C++ification.
7512
7513         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
7514         (the_sparc_linux_nat_target): New.
7515         (_initialize_sparc_linux_nat): Adjust to C++ification.
7516         * sparc-nat.c (sparc_fetch_inferior_registers)
7517         (sparc_store_inferior_registers): Remove target_ops parameter.
7518         * sparc-nat.h (sparc_fetch_inferior_registers)
7519         (sparc_store_inferior_registers): Remove target_ops parameter.
7520         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
7521         (the_sparc64_linux_nat_target): New.
7522         (_initialize_sparc64_linux_nat): Adjust to C++ification.
7523
7524         * spu-linux-nat.c (spu_linux_nat_target): New class.
7525         (the_spu_linux_nat_target): New.
7526         (spu_child_post_startup_inferior, spu_child_post_attach)
7527         (spu_child_wait, spu_fetch_inferior_registers)
7528         (spu_store_inferior_registers, spu_xfer_partial)
7529         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
7530         methods.
7531         (_initialize_spu_nat): Adjust to C++ification.
7532
7533         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
7534         (the_tilegx_linux_nat_target): New.
7535         (fetch_inferior_registers, store_inferior_registers):
7536         Refactor as methods.
7537         (_initialize_tile_linux_nat): Adjust to C++ification.
7538
7539         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
7540         (the_xtensa_linux_nat_target): New.
7541         (xtensa_linux_fetch_inferior_registers)
7542         (xtensa_linux_store_inferior_registers): Refactor as
7543         xtensa_linux_nat_target methods.
7544         (_initialize_xtensa_linux_nat): Adjust to C++ification.
7545
7546         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
7547         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
7548         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
7549         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
7550         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
7551         (fbsd_stopped_by_sw_breakpoint)
7552         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
7553         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
7554         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
7555         (fbsd_post_startup_inferior, fbsd_post_attach)
7556         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
7557         (fbsd_set_syscall_catchpoint)
7558         (super_xfer_partial, super_resume, super_wait)
7559         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
7560         (fbsd_handle_debug_trap): Remove target_ops parameter.
7561         (fbsd_nat_add_target): Delete.
7562         * fbsd-nat.h: Include "inf-ptrace.h".
7563         (fbsd_nat_add_target): Delete.
7564         (USE_SIGTRAP_SIGINFO): Define.
7565         (fbsd_nat_target): New class.
7566
7567         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
7568         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
7569         (amd64bsd_target): Delete.
7570         * amd64-bsd-nat.h: New file.
7571         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
7572         "x86-bsd-nat.h".
7573         (amd64_fbsd_nat_target): New class.
7574         (the_amd64_fbsd_nat_target): New.
7575         (amd64fbsd_read_description): Refactor as method of
7576         amd64_fbsd_nat_target.
7577         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
7578         (_initialize_amd64fbsd_nat): Adjust to C++ification.
7579         * amd64-nat.h (amd64bsd_target): Delete function declaration.
7580         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
7581         (i386bsd_store_inferior_registers): Remove target_ops parameter.
7582         (i386bsd_target): Delete.
7583         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
7584         (i386bsd_fetch_inferior_registers)
7585         (i386bsd_store_inferior_registers): Declare.
7586         (i386_bsd_nat_target): New class.
7587         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
7588         (the_i386_fbsd_nat_target): New.
7589         (i386fbsd_resume, i386fbsd_read_description): Refactor as
7590         i386_fbsd_nat_target methods.
7591         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
7592         (_initialize_i386fbsd_nat): Adjust to C++ification.
7593         * x86-bsd-nat.c (super_mourn_inferior): Delete.
7594         (x86bsd_mourn_inferior, x86bsd_target): Delete.
7595         (_initialize_x86_bsd_nat): Adjust to C++ification.
7596         * x86-bsd-nat.h: Include "x86-nat.h".
7597         (x86bsd_target): Delete declaration.
7598         (x86bsd_nat_target): New class.
7599
7600         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
7601         (the_aarch64_fbsd_nat_target): New.
7602         (aarch64_fbsd_fetch_inferior_registers)
7603         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
7604         aarch64_fbsd_nat_target.
7605         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
7606         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
7607         (the_alpha_bsd_nat_target): New.
7608         (alphabsd_fetch_inferior_registers)
7609         (alphabsd_store_inferior_registers): Refactor as
7610         alpha_bsd_nat_target methods.
7611         (_initialize_alphabsd_nat): Refactor as methods of
7612         alpha_bsd_nat_target.
7613         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
7614         (the_amd64_nbsd_nat_target): New.
7615         (_initialize_amd64nbsd_nat): Adjust to C++ification.
7616         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
7617         (the_amd64_obsd_nat_target): New.
7618         (_initialize_amd64obsd_nat): Adjust to C++ification.
7619         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
7620         (the_arm_fbsd_nat_target): New.
7621         (arm_fbsd_fetch_inferior_registers)
7622         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
7623         (_initialize_arm_fbsd_nat): Refactor as methods of
7624         arm_fbsd_nat_target.
7625         (_initialize_arm_fbsd_nat): Adjust to C++ification.
7626         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
7627         (the_arm_netbsd_nat_target): New.
7628         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
7629         arm_netbsd_nat_target.
7630         (_initialize_arm_netbsd_nat): Adjust to C++ification.
7631         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
7632         (the_hppa_nbsd_nat_target): New.
7633         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
7634         hppa_nbsd_nat_target methods.
7635         (_initialize_hppanbsd_nat): Adjust to C++ification.
7636         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
7637         (the_hppa_obsd_nat_target): New.
7638         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
7639         methods of hppa_obsd_nat_target.
7640         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
7641         add_target.
7642         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
7643         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
7644         add_target.
7645         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
7646         (_initialize_i386obsd_nat): Use add_target.
7647         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
7648         (the_m68k_bsd_nat_target): New.
7649         (m68kbsd_fetch_inferior_registers)
7650         (m68kbsd_store_inferior_registers): Refactor as methods of
7651         m68k_bsd_nat_target.
7652         (_initialize_m68kbsd_nat): Adjust to C++ification.
7653         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
7654         (the_mips_fbsd_nat_target): New.
7655         (mips_fbsd_fetch_inferior_registers)
7656         (mips_fbsd_store_inferior_registers): Refactor as methods of
7657         mips_fbsd_nat_target.
7658         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
7659         add_target.
7660         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
7661         (the_mips_nbsd_nat_target): New.
7662         (mipsnbsd_fetch_inferior_registers)
7663         (mipsnbsd_store_inferior_registers): Refactor as methods of
7664         mips_nbsd_nat_target.
7665         (_initialize_mipsnbsd_nat): Adjust to C++ification.
7666         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
7667         (the_mips64_obsd_nat_target): New.
7668         (mips64obsd_fetch_inferior_registers)
7669         (mips64obsd_store_inferior_registers): Refactor as methods of
7670         mips64_obsd_nat_target.
7671         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
7672         add_target.
7673         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
7674         nbsd_nat_target.
7675         * nbsd-nat.h: Include "inf-ptrace.h".
7676         (nbsd_nat_target): New class.
7677         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
7678         (obsd_wait): Refactor as methods of obsd_nat_target.
7679         (obsd_add_target): Delete.
7680         * obsd-nat.h: Include "inf-ptrace.h".
7681         (obsd_nat_target): New class.
7682         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
7683         (the_ppc_fbsd_nat_target): New.
7684         (ppcfbsd_fetch_inferior_registers)
7685         (ppcfbsd_store_inferior_registers): Refactor as methods of
7686         ppc_fbsd_nat_target.
7687         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
7688         add_target.
7689         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
7690         (the_ppc_nbsd_nat_target): New.
7691         (ppcnbsd_fetch_inferior_registers)
7692         (ppcnbsd_store_inferior_registers): Refactor as methods of
7693         ppc_nbsd_nat_target.
7694         (_initialize_ppcnbsd_nat): Adjust to C++ification.
7695         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
7696         (the_ppc_obsd_nat_target): New.
7697         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
7698         methods of ppc_obsd_nat_target.
7699         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
7700         add_target.
7701         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
7702         (the_sh_nbsd_nat_target): New.
7703         (shnbsd_fetch_inferior_registers)
7704         (shnbsd_store_inferior_registers): Refactor as methods of
7705         sh_nbsd_nat_target.
7706         (_initialize_shnbsd_nat): Adjust to C++ification.
7707         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
7708         (inf_ptrace_xfer_partial): Delete.
7709         (sparc_xfer_partial, sparc_target): Delete.
7710         * sparc-nat.h (sparc_fetch_inferior_registers)
7711         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
7712         (sparc_target): Delete function declaration.
7713         (sparc_target): New template class.
7714         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
7715         (_initialize_sparcnbsd_nat): Adjust to C++ification.
7716         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
7717         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
7718         add_target.
7719         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
7720         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
7721         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
7722         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
7723         add_target.
7724         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
7725         (the_vax_bsd_nat_target): New.
7726         (vaxbsd_fetch_inferior_registers)
7727         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
7728         methods.
7729         (_initialize_vaxbsd_nat): Adjust to C++ification.
7730
7731         * bsd-kvm.c (bsd_kvm_target): New class.
7732         (bsd_kvm_ops): Now a bsd_kvm_target.
7733         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
7734         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
7735         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
7736         bsd_kvm_target.
7737         (bsd_kvm_return_one): Delete.
7738         (bsd_kvm_add_target): Adjust to C++ification.
7739
7740         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
7741         (nto_procfs_target_procfs): New classes.
7742         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
7743         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
7744         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
7745         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
7746         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
7747         (procfs_remove_hw_breakpoint, procfs_resume)
7748         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
7749         (procfs_kill_inferior, procfs_store_registers)
7750         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
7751         as methods of nto_procfs_target.
7752         (nto_procfs_ops): Now an nto_procfs_target_procfs.
7753         (nto_native_ops): Delete.
7754         (procfs_open, procfs_native_open): Delete.
7755         (nto_native_ops): Now an nto_procfs_target_native.
7756         (init_procfs_targets): Adjust to C++ification.
7757         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
7758         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
7759         Refactor as methods of nto_procfs_target.
7760
7761         * go32-nat.c (go32_nat_target): New class.
7762         (the_go32_nat_target): New.
7763         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
7764         (go32_store_registers, go32_xfer_partial, go32_files_info)
7765         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
7766         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
7767         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
7768         (go32_pid_to_str): Refactor as methods of go32_nat_target.
7769         (go32_target): Delete.
7770         (_initialize_go32_nat): Adjust to C++ification.
7771
7772         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
7773         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
7774         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
7775         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
7776         gnu_nat_target.
7777         (gnu_target): Delete.
7778         * gnu-nat.h (gnu_target): Delete.
7779         (gnu_nat_target): New class.
7780         * i386-gnu-nat.c (gnu_base_target): New.
7781         (i386_gnu_nat_target): New class.
7782         (the_i386_gnu_nat_target): New.
7783         (_initialize_i386gnu_nat): Adjust to C++ification.
7784
7785 2018-05-02  Pedro Alves  <palves@redhat.com>
7786
7787         * bfd-target.c (target_bfd_xclose): Rename to ...
7788         (target_bfd_close): ... this.
7789         (target_bfd_reopen): Adjust.
7790         * target.c (target_close): Remove references to to_xclose.
7791         * target.h (target_ops::to_xclose): Delete.
7792         (target_ops::to_close): Update comments.
7793
7794 2018-05-02  Pedro Alves  <palves@redhat.com>
7795
7796         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
7797         "linux-nat.h".
7798         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
7799         * inf-ptrace.c (inf_ptrace_register_u_offset)
7800         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
7801         (inf_ptrace_store_register, inf_ptrace_store_registers)
7802         (inf_ptrace_trad_target): Move to ...
7803         * linux-nat-trad.c: ... this new file.
7804         * linux-nat-trad.h: New file.
7805         * linux-nat.c (linux_target_install_ops): Make extern.
7806         (linux_trad_target): Delete.
7807         * linux-nat.h (linux_trad_target): Delete declaration.
7808         (linux_target_install_ops): Declare.
7809         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
7810         "linux-nat.h".
7811
7812 2018-05-02  Pedro Alves  <palves@redhat.com>
7813
7814         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
7815         procfs_target/add_target here.
7816         * procfs.c (procfs_target): Make static.
7817         (_initialize_procfs): Call add_target here.
7818         * procfs.h (struct target_ops): Remove forward declaration.
7819         (procfs_target): Remove declaration.
7820         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
7821
7822 2018-05-02  Pedro Alves  <palves@redhat.com>
7823
7824         * procfs.c (procfs_stopped_by_watchpoint)
7825         (procfs_insert_watchpoint, procfs_remove_watchpoint)
7826         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
7827         Forward declare.
7828         (procfs_use_watchpoints): Delete, move contents...
7829         (procfs_target): ... here.
7830         * procfs.h (procfs_use_watchpoints): Delete declaration.
7831         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
7832         procfs_use_watchpoints.
7833         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
7834         procfs_use_watchpoints.
7835
7836 2018-05-02  Tom Tromey  <tom@tromey.com>
7837
7838         PR python/20084:
7839         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
7840         and var_zuinteger_unlimited.
7841         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
7842         and PARAM_ZUINTEGER_UNLIMITED.
7843         (set_parameter_value): Handle var_zuinteger and
7844         var_zuinteger_unlimited.
7845         (add_setshow_generic): Likewise.
7846         (parmpy_init): Likewise.
7847
7848 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
7849
7850         PR rust/23124
7851         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
7852         pointer is not null before dereferencing it.
7853
7854 2018-04-30  Tom Tromey  <tom@tromey.com>
7855
7856         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
7857         is_mi_like_p.
7858
7859 2018-04-30  Tom Tromey  <tom@tromey.com>
7860
7861         * breakpoint.c (mention): Remove use of is_mi_like_p.
7862         (print_mention_ranged_breakpoint): Likewise.
7863         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
7864         of is_mi_like_p.
7865
7866 2018-04-30  Tom Tromey  <tom@tromey.com>
7867
7868         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
7869
7870 2018-04-30  Tom Tromey  <tom@tromey.com>
7871
7872         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
7873         (info_spu_event_command): Remove some uses of is_mi_like_p.
7874
7875 2018-04-30  Tom Tromey  <tom@tromey.com>
7876
7877         * python/py-framefilter.c (py_print_single_arg)
7878         (enumerate_locals, py_print_args, py_print_frame): Remove some
7879         uses of is_mi_like_p.
7880
7881 2018-04-30  Tom Tromey  <tom@tromey.com>
7882
7883         * ui-out.c: Update.
7884         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
7885         * ui-out.h (ui_out::is_mi_like_p): Now const.
7886         (ui_out::do_is_mi_like_p): Now const.
7887         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
7888
7889 2018-04-30  Tom Tromey  <tom@tromey.com>
7890
7891         * varobj.c (varobj_set_visualizer): Use new_reference.
7892         * python/python.c (gdbpy_decode_line): Use new_reference.
7893         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
7894         new_reference.
7895
7896 2018-04-30  Tom Tromey  <tom@tromey.com>
7897
7898         * varobj.c (install_new_value): Use new_reference.
7899         * value.h (value_incref): Return void.  Swap intro comment with
7900         value_decref.
7901         * value.c (set_value_parent): Use new_reference.
7902         (value_incref): Return void.  Update intro comment.
7903         (release_value): Use new_reference.
7904         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
7905
7906 2018-04-30  Tom Tromey  <tom@tromey.com>
7907
7908         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
7909         * gdb_bfd.h (new_bfd_ref): Remove.
7910         (gdb_bfd_open): Update comment.
7911         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
7912         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
7913         (gdb_bfd_fdopenr): Use new_reference.
7914         * exec.c (exec_file_attach): Use new_reference.
7915
7916 2018-04-30  Tom Tromey  <tom@tromey.com>
7917
7918         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
7919         method.
7920
7921 2018-04-30  Tom Tromey  <tom@tromey.com>
7922
7923         * jit.c (jit_read_code_entry): Use type_align.
7924         * i386-tdep.c (i386_gdbarch_init): Don't call
7925         set_gdbarch_long_long_align_bit.
7926         * gdbarch.sh: Remove long_long_align_bit.
7927         * gdbarch.c, gdbarch.h: Rebuild.
7928         * arc-tdep.c (arc_type_align): New function.
7929         (arc_gdbarch_init): Use arc_type_align.  Don't call
7930         set_gdbarch_long_long_align_bit.
7931
7932 2018-04-30  Tom Tromey  <tom@tromey.com>
7933
7934         * rust-lang.c (rust_type_alignment): Remove.
7935         (rust_composite_type): Use type_align.
7936
7937 2018-04-30  Tom Tromey  <tom@tromey.com>
7938
7939         * NEWS: Mention Type.align.
7940         * python/py-type.c (typy_get_alignof): New function.
7941         (type_object_getset): Add "alignof".
7942
7943 2018-04-30  Tom Tromey  <tom@tromey.com>
7944
7945         PR exp/17095:
7946         * NEWS: Update.
7947         * std-operator.def (UNOP_ALIGNOF): New operator.
7948         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
7949         New.
7950         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
7951         * c-lang.c (c_op_print_tab): Add alignof.
7952         * c-exp.y (ALIGNOF): New token.
7953         (exp): Add "ALIGNOF" production.
7954         (ident_tokens): Add _Alignof and alignof.
7955
7956 2018-04-30  Tom Tromey  <tom@tromey.com>
7957
7958         * i386-tdep.c (i386_type_align): New function.
7959         (i386_gdbarch_init): Update.
7960         * gdbarch.sh (type_align): New method.
7961         * gdbarch.c, gdbarch.h: Rebuild.
7962         * arch-utils.h (default_type_align): Declare.
7963         * arch-utils.c (default_type_align): New function.
7964         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
7965         (struct type) <align_log2>: New field.
7966         <instance_flags>: Now a bitfield.
7967         (TYPE_RAW_ALIGN): New macro.
7968         (type_align, type_raw_align, set_type_align): Declare.
7969         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
7970         functions.
7971         * dwarf2read.c (quirk_rust_enum): Set type alignment.
7972         (get_alignment, maybe_set_alignment): New functions.
7973         (read_structure_type, read_enumeration_type, read_array_type)
7974         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
7975         (read_subrange_type, read_base_type): Set type alignment.
7976
7977 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
7978
7979         * dwarf2read.c (read_index_from_section): Use bool.
7980
7981 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
7982
7983         PR gdb/22950
7984         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
7985         with #ifdef.
7986
7987 2018-04-29  John Reiser  <jreiser@BitWagon.com>
7988
7989         PR build/22873
7990         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
7991         last step, and do it atomically.
7992
7993 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
7994
7995         * compile/compile-c-types.c (convert_int, convert_float):
7996         Update for C FE v1.
7997
7998 2018-04-27  Tom Tromey  <tom@tromey.com>
7999
8000         PR rust/22545:
8001         * rust-lang.c (rust_inclusive_range_type_p): New function.
8002         (rust_range): Handle inclusive ranges.
8003         (rust_compute_range): Likewise.
8004         * rust-exp.y (struct rust_op) <inclusive>: New field.
8005         (DOTDOTEQ): New constant.
8006         (range_expr): Add "..=" productions.
8007         (operator_tokens): Add "..=" token.
8008         (ast_range): Add "inclusive" parameter.
8009         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
8010         ranges.
8011         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
8012         bounds values.
8013         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
8014         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
8015         Update comments.
8016         * expprint.c (print_subexp_standard): Handle new bounds values.
8017         (dump_subexp_body_standard): Likewise.
8018
8019 2018-04-27  Tom Tromey  <tom@tromey.com>
8020
8021         * configure: Rebuild.
8022         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
8023         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
8024         "OVERRIDE".
8025         (class symbol_needs_eval_context): Likewise.
8026         * dwarf2read.c (mock_mapped_index::symbol_name_count)
8027         (mock_mapped_index::symbol_name_at): Use "override".  Remove
8028         "virtual".
8029         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
8030         "override".
8031         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
8032         * aarch64-tdep.c (instruction_reader::read): Use "override".
8033         (instruction_reader_test::read): Likewise.
8034         * arm-tdep.c (instruction_reader::read): Use "override".
8035         (instruction_reader_thumb::read): Likewise.
8036
8037 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
8038
8039         PR remote/9665
8040         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
8041         instead of remote_send.
8042         (remote_send): Remove.
8043
8044 2018-04-26  Pedro Alves  <palves@redhat.com>
8045
8046         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
8047         find_function_start_sal instead of find_pc_line.
8048
8049 2018-04-26  Pedro Alves  <palves@redhat.com>
8050
8051         * breakpoint.c (set_breakpoint_location_function): Handle
8052         mst_data_gnu_ifunc.
8053         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
8054         * elfread.c (elf_symtab_read): Give data symbols with
8055         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
8056         (elf_rel_plt_read): Update comment.
8057         * linespec.c (convert_linespec_to_sals): Handle
8058         mst_data_gnu_ifunc.
8059         (minsym_found): Handle mst_data_gnu_ifunc.
8060         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
8061         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
8062         * parse.c (find_minsym_type_and_address): Handle
8063         mst_data_gnu_ifunc.
8064         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
8065         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
8066         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
8067         comment.
8068         <mst_data_gnu_ifunc>: New enumerator.
8069
8070 2018-04-26  Pedro Alves  <palves@redhat.com>
8071
8072         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
8073         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
8074         'want_trampoline' parameter by a lookup_msym_prefer parameter.
8075         Handle it.
8076         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
8077         (lookup_minimal_symbol_by_pc): Adjust.
8078         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
8079         (lookup_solib_trampoline_symbol_by_pc): Adjust.
8080         * minsyms.h (lookup_msym_prefer): New enum.
8081         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
8082         parameter by a lookup_msym_prefer parameter.
8083
8084 2018-04-26  Pedro Alves  <palves@redhat.com>
8085
8086         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
8087         ends in "@plt" instead of looking at the symbol's section.
8088
8089 2018-04-26  Pedro Alves  <palves@redhat.com>
8090
8091         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
8092         all references.
8093         (find_pc_partial_function_gnu_ifunc): Rename to ...
8094         (find_pc_partial_function): ... this, and remove references to
8095         'is_gnu_ifunc_p'.
8096         (find_pc_partial_function): Delete old implementation.
8097         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
8098
8099 2018-04-26  Pedro Alves  <palves@redhat.com>
8100
8101         * linespec.c (struct bound_minimal_symbol_search_key): New.
8102         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
8103         skip first line if we found a GNU ifunc minimal symbol by name.
8104         (compare_msymbols): Change parameters to work with a destructured
8105         lhs minsym.
8106         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
8107         functions.
8108
8109 2018-04-26  Pedro Alves  <palves@redhat.com>
8110
8111         * breakpoint.c (set_breakpoint_location_function): Don't resolve
8112         ifunc targets here.  Instead, if we have an ifunc minsym, use its
8113         address/name.
8114         (add_location_to_breakpoint): Store the minsym and the objfile in
8115         the breakpoint location.
8116         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
8117         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
8118         Record the minsym in the sal.
8119         * symtab.h (symtab_and_line) <msymbol>: New field.
8120
8121 2018-04-26  Pedro Alves  <palves@redhat.com>
8122
8123         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
8124         unless we actually resolved the ifunc.
8125
8126 2018-04-26  Pedro Alves  <palves@redhat.com>
8127
8128         * c-exp.y (variable production): Prefer ifunc minsyms over
8129         regular function symbols.
8130         * symtab.c (find_gnu_ifunc): New function.
8131         * minsyms.h (lookup_msym_prefer): New enum.
8132         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
8133         parameter by a lookup_msym_prefer parameter.
8134         * symtab.h (find_gnu_ifunc): New declaration.
8135
8136 2018-04-26  Pedro Alves  <palves@redhat.com>
8137
8138         * blockframe.c (find_gnu_ifunc_target_type): New function.
8139         (find_function_type): New.
8140         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
8141         return a value with a memory address.
8142         (eval_call): For calls to GNU ifunc functions, try to find the
8143         type of the target function from the type that the resolver
8144         returns.
8145         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
8146         symbols.
8147         * infcall.c (find_function_return_type): Delete.
8148         (find_function_addr): Add 'function_type' parameter.  For calls to
8149         GNU ifunc functions, try to find the type of the target function
8150         from the type that the resolver returns, and return it via
8151         FUNCTION_TYPE.
8152         (call_function_by_hand_dummy): Adjust to use the function type
8153         returned by find_function_addr.
8154         (find_function_addr): Add 'function_type' parameter and move
8155         description here.
8156         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
8157         declarations.
8158
8159 2018-04-26  Pedro Alves  <palves@redhat.com>
8160
8161         * c-exp.y (variable production): Skip finding an alias for ifunc
8162         symbols.
8163
8164 2018-04-26  Pedro Alves  <palves@redhat.com>
8165
8166         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
8167
8168 2018-04-25  Pedro Alves  <palves@redhat.com>
8169
8170         * infcmd.c (kill_command): Print the pid as string, not the whole
8171         thread's ptid.  Add comment.  s/has been killed/killed/ in output
8172         message.
8173         * remote.c (remote_detach_1): Print the pid as string, not the
8174         whole thread's ptid.
8175
8176 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
8177             Sergio Durigan Junior  <sergiodj@redhat.com>
8178             Pedro Alves  <palves@redhat.com>
8179
8180         * infcmd.c (kill_command): Print message when inferior has
8181         been killed.
8182         * inferior.c (print_inferior_events): Remove 'static'.  Set as
8183         '1'.
8184         (add_inferior): Improve message printed when
8185         'print_inferior_events' is on.
8186         (exit_inferior): Remove message printed when
8187         'print_inferior_events' is on.
8188         (detach_inferior): Improve message printed when
8189         'print_inferior_events' is on.
8190         (initialize_inferiors): Use 'add_inferior_silent' to set
8191         'current_inferior_'.
8192         * inferior.h (print_inferior_events): Declare here as
8193         'extern'.
8194         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
8195         '[Detaching...]' messages when 'print_inferior_events' is on.
8196         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
8197         as prefix/suffix for messages.  Remove periods.  Fix erroneous
8198         'Detaching after fork from child...', replace it by '... from
8199         parent...'.
8200         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
8201         prefix/suffix when printing 'Detaching...' messages.  Print
8202         them when 'print_inferior_events' is on.
8203         * remote.c (remote_detach_1): Print message when detaching
8204         from inferior and '!is_fork_parent'.
8205
8206 2018-04-24  Tom Tromey  <tom@tromey.com>
8207
8208         * cli-out.h: Reindent.
8209
8210 2018-04-24  Tom Tromey  <tom@tromey.com>
8211
8212         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
8213         (cli_ui_out::do_field_string): Use fputs_filtered.
8214         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
8215
8216 2018-04-23  Tom Tromey  <tom@tromey.com>
8217
8218         * guile/scm-frame.c (gdbscm_frame_read_var): Use
8219         gdb::unique_xmalloc_ptr.
8220
8221 2018-04-23  Tom Tromey  <tom@tromey.com>
8222
8223         * configure: Rebuild.
8224
8225 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
8226
8227         PR gdb/23095
8228         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
8229         prepare_for_testing.  Set normal_bp to r_debug_state if target
8230         is bsd.
8231
8232 2018-04-21  Pedro Alves  <palves@redhat.com>
8233             Rajendra SY  <rajendra.sy@gmail.com>
8234
8235         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
8236         * remote.c (extended_remote_attach): In all-stop mode, mark the
8237         thread as executing.
8238
8239 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8240
8241         * thread.c (thread_apply_all_command): Fix comment.
8242         (thread_command): Fix comment.
8243
8244 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
8245
8246         * common/tdesc.h (tdesc_create_feature): Remove xml filename
8247         parameter.
8248         * features/aarch64-core.c (create_feature_aarch64_core):
8249         Regenerate.
8250         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
8251         Likewise.
8252         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
8253         Likewise.
8254         * features/i386/32bit-avx512.c
8255         (create_feature_i386_32bit_avx512): Likewise.
8256         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
8257         Likewise.
8258         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
8259         Likewise.
8260         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
8261         Likewise.
8262         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
8263         Likewise.
8264         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
8265         Likewise.
8266         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
8267         Likewise.
8268         * features/i386/64bit-avx512.c
8269         (create_feature_i386_64bit_avx512): Likewise.
8270         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
8271         Likewise.
8272         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
8273         Likewise.
8274         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
8275         Likewise.
8276         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
8277         Likewise.
8278         * features/i386/64bit-segments.c
8279         (create_feature_i386_64bit_segments): Likewise.
8280         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
8281         Likewise.
8282         * features/i386/x32-core.c
8283         (create_feature_i386_x32_core): Likewise.
8284         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
8285         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
8286         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
8287         * target-descriptions.c: In generated code, don't pass xml
8288         filename.
8289
8290 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
8291
8292         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
8293         (print_xml_feature::visit_post): Likewise.
8294         (print_xml_feature::visit): Likewise.
8295         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
8296         (print_xml_feature): Add new class.
8297         * regformats/regdat.sh: Null xmltarget on feature targets.
8298         * target-descriptions.c (struct target_desc): Add xmltarget.
8299         (maintenance_check_tdesc_xml_convert): Add unittest function.
8300         (tdesc_get_features_xml): Add function to get xml.
8301         (maintenance_check_xml_descriptions): Test xml generation.
8302         * xml-tdesc.c (string_read_description_xml): Add function.
8303         * xml-tdesc.h (string_read_description_xml): Add declaration.
8304
8305 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
8306
8307         * features/Makefile: Add feature marker to targets with new style
8308         target descriptions.
8309         * regformats/aarch64.dat: Regenerate.
8310         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
8311         * regformats/i386/amd64-avx-linux.dat: Likewise.
8312         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
8313         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
8314         * regformats/i386/amd64-linux.dat: Likewise.
8315         * regformats/i386/amd64-mpx-linux.dat: Likewise.
8316         * regformats/i386/amd64.dat: Likewise.
8317         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
8318         * regformats/i386/i386-avx-linux.dat: Likewise.
8319         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
8320         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
8321         * regformats/i386/i386-linux.dat: Likewise.
8322         * regformats/i386/i386-mmx-linux.dat: Likewise.
8323         * regformats/i386/i386-mpx-linux.dat: Likewise.
8324         * regformats/i386/i386.dat: Likewise.
8325         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
8326         * regformats/i386/x32-avx-linux.dat: Likewise.
8327         * regformats/i386/x32-linux.dat: Likewise.
8328         * regformats/tic6x-c62x-linux.dat: Likewise.
8329         * regformats/tic6x-c64x-linux.dat: Likewise.
8330         * regformats/tic6x-c64xp-linux.dat: Likewise.
8331         * regformats/regdat.sh: Parse feature marker.
8332
8333 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
8334
8335         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
8336         (tdesc_osabi_name): Likewise.
8337         * target-descriptions.c (tdesc_architecture_name): Add new
8338         function.
8339         (tdesc_osabi_name): Likewise.
8340
8341 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
8342
8343         * common/tdesc.c (tdesc_predefined_type): Move to here.
8344         (tdesc_named_type): Likewise.
8345         (tdesc_create_vector): Likewise.
8346         (tdesc_create_struct): Likewise.
8347         (tdesc_set_struct_size): Likewise.
8348         (tdesc_create_union): Likewise.
8349         (tdesc_create_flags): Likewise.
8350         (tdesc_create_enum): Likewise.
8351         (tdesc_add_field): Likewise.
8352         (tdesc_add_typed_bitfield): Likewise.
8353         (tdesc_add_bitfield): Likewise.
8354         (tdesc_add_flag): Likewise.
8355         (tdesc_add_enum_value): Likewise.
8356         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
8357         (struct tdesc_type_vector): Likewise.
8358         (struct tdesc_type_field): Likewise.
8359         (struct tdesc_type_with_fields): Likewise.
8360         (tdesc_create_enum): Add declaration.
8361         (tdesc_add_typed_bitfield): Likewise.
8362         (tdesc_add_enum_value): Likewise.
8363         * target-descriptions.c (tdesc_type_field): Move from here.
8364         (tdesc_type_builtin): Likewise.
8365         (tdesc_type_vector): Likewise.
8366         (tdesc_type_with_fields): Likewise.
8367         (tdesc_predefined_types): Likewise.
8368         (tdesc_named_type): Likewise.
8369         (tdesc_create_vector): Likewise.
8370         (tdesc_create_struct): Likewise.
8371         (tdesc_set_struct_size): Likewise.
8372         (tdesc_create_union): Likewise.
8373         (tdesc_create_flags): Likewise.
8374         (tdesc_create_enum): Likewise.
8375         (tdesc_add_field): Likewise.
8376         (tdesc_add_typed_bitfield): Likewise.
8377         (tdesc_add_bitfield): Likewise.
8378         (tdesc_add_flag): Likewise.
8379         (tdesc_add_enum_value): Likewise.
8380         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
8381         (tdesc_add_typed_bitfield): Likewise.
8382         (tdesc_add_enum_value): Likewise.
8383
8384 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
8385
8386         * common/tdesc.c (tdesc_feature::accept): Move to here.
8387         (tdesc_feature::operator==): Likewise.
8388         (tdesc_create_reg): Likewise.
8389         * common/tdesc.h (tdesc_type_kind): Likewise.
8390         (struct tdesc_type): Likewise.
8391         (struct tdesc_feature): Likewise.
8392         * regformats/regdat.sh: Create a feature.
8393         * target-descriptions.c (tdesc_type_kind): Move from here.
8394         (tdesc_type): Likewise.
8395         (tdesc_type_up): Likewise.
8396         (tdesc_feature): Likewise.
8397         (tdesc_create_reg): Likewise.
8398
8399 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
8400
8401         * Makefile.in: Add arch/tdesc.c
8402         * common/tdesc.c: New file.
8403         * common/tdesc.h (tdesc_element_visitor): Move to here.
8404         (tdesc_element): Likewise.
8405         (tdesc_reg): Likewise.
8406         (tdesc_reg_up): Likewise.
8407         * regformats/regdef.h (reg): Add offset to constructors.
8408         * target-descriptions.c (tdesc_element_visitor): Move from here.
8409         (tdesc_element): Likewise.
8410         (tdesc_reg): Likewise.
8411         (tdesc_reg_up): Likewise.
8412
8413 2018-04-17  Tom Tromey  <tom@tromey.com>
8414
8415         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
8416         discriminant field.
8417
8418 2018-04-17  Tom Tromey  <tom@tromey.com>
8419
8420         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
8421
8422 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
8423
8424         * symtab.c (print_symbol_info): Skip printing filename and line
8425         number when `last' is NULL.
8426         (symtab_symbol_info): Use empty string instead of NULL for first
8427         invocation of print_symbol_info.
8428         (rbreak_command): Pass NULL to `last' parameter of
8429         print_symbol_info.
8430
8431 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
8432
8433         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
8434         instead of nullptr.
8435
8436 2018-04-16  Pedro Alves  <palves@redhat.com>
8437
8438         * MAINTAINERS (sh): Remove.
8439         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
8440         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
8441         (ALLDEPFILES): Remove sh64-tdep.c.
8442         * NEWS: Mentions that support for SH-5/SH64 is removed.
8443         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
8444         (sh*-*-openbsd*): Ditto.
8445         (sh64-*-elf*): Remove.
8446         (sh*): Remove.
8447         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
8448         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
8449         * sh-tdep.c: No longer include "sh64-tdep.h".
8450         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
8451         * sh64-tdep.c, sh64-tdep.h: Remove files.
8452
8453 2018-04-16  Pedro Alves  <palves@redhat.com>
8454
8455         * MAINTAINERS: Remove m88k.
8456         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
8457         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
8458         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
8459         * NEWS: Mention that support for m88k was removed.
8460         * configure.host (m88*-*-*): Remove support.
8461         * configure.nat (m88k-*-*): Remove support.
8462         * configure.tgt (m88*-*-openbsd*): Remove.
8463         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
8464
8465 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
8466
8467         * configure.tgt (x86_tobjs): New variable.
8468         (amd64_tobjs, i386_tobjs): Use it.
8469
8470 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
8471
8472         * symtab.c (print_symbol_info): Precede the symbol definition by
8473         the line number when available.
8474         * NEWS: Advertise this enhancement.
8475
8476 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
8477
8478         * NEWS (New options): announce set/show record btrace cpu.
8479         * btrace.c: Include record-btrace.h.
8480         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
8481         the vendor is unknown.
8482         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
8483         Maybe overwrite the btrace configuration's cpu.
8484         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
8485         (btrace_fetch): Add cpu parameter.  Update callers.
8486         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
8487         Maybe overwrite the btrace configuration's cpu.  Skip enabling
8488         errata workarounds if the vendor is unknown.
8489         * python/py-record-btrace.c: Include record-btrace.h.
8490         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
8491         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
8492         * record-btrace.c (record_btrace_cpu_state_kind): New.
8493         (record_btrace_cpu): New.
8494         (set_record_btrace_cpu_cmdlist): New.
8495         (record_btrace_get_cpu): New.
8496         (require_btrace_thread, record_btrace_info)
8497         (record_btrace_resume_thread): Call record_btrace_get_cpu.
8498         (cmd_set_record_btrace_cpu_none): New.
8499         (cmd_set_record_btrace_cpu_auto): New.
8500         (cmd_set_record_btrace_cpu): New.
8501         (cmd_show_record_btrace_cpu): New.
8502         (_initialize_record_btrace): Initialize set/show record btrace cpu
8503         commands.
8504         * record-btrace.h (record_btrace_get_cpu): New.
8505
8506 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
8507
8508         * record.c (set_record_command): Fix typo in message.
8509
8510 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
8511
8512         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
8513
8514 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
8515
8516         * infrun.c (process_event_stop_test): Call
8517         gdbarch_in_indirect_branch_thunk.
8518         * gdbarch.sh (in_indirect_branch_thunk): New.
8519         * gdbarch.c: Regenerated.
8520         * gdbarch.h: Regenerated.
8521         * x86-tdep.h: New.
8522         * x86-tdep.c: New.
8523         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
8524         (HFILES_NO_SRCDIR): Add x86-tdep.h.
8525         (ALLDEPFILES): Add x86-tdep.c.
8526         * arch-utils.h (default_in_indirect_branch_thunk): New.
8527         * arch-utils.c (default_in_indirect_branch_thunk): New.
8528         * i386-tdep: Include x86-tdep.h.
8529         (i386_in_indirect_branch_thunk): New.
8530         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
8531         function.
8532         * amd64-tdep: Include x86-tdep.h.
8533         (amd64_in_indirect_branch_thunk): New.
8534         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
8535
8536 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
8537
8538         PR gdb/23053
8539         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
8540         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
8541         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
8542         regression.
8543
8544 2018-04-12  Tom Tromey  <tom@tromey.com>
8545
8546         * rust-lang.c (rust_print_struct_def): Remove univariant code.
8547         (rust_evaluate_subexp): Likewise.
8548
8549 2018-04-12  Pedro Alves  <palves@redhat.com>
8550
8551         * procfs.c (procfs_detach): Make forward declaration's prototype
8552         match definition's protototype.
8553         (proc_get_LDT_entry): Remove stale do_cleanups call.
8554
8555 2018-04-12  Pedro Alves  <palves@redhat.com>
8556
8557         * target.h (target_ops::to_has_exited): Delete.
8558         (target_has_exited): Delete.
8559         * target-delegates.c: Regenerate.
8560
8561 2018-04-11  Pedro Alves  <palves@redhat.com>
8562
8563         * target.c (fileio_fh_t::t): Add comment.
8564         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
8565         (target_fileio_close): Handle a NULL target.
8566         (invalidate_fileio_fh): New.
8567         (target_close): Call it.
8568         * remote.c (remote_hostio_send_command): No longer check whether
8569         remote_desc is open.
8570
8571 2018-04-11  Pedro Alves  <palves@redhat.com>
8572
8573         * target.c (fileio_fh_t): Make it a named struct instead of a
8574         typedef.
8575         (fileio_fh_t::is_closed): New method.
8576         (DEF_VEC_O (fileio_fh_t)): Remove.
8577         (fileio_fhandles): Now a std::vector.
8578         (is_closed_fileio_fh): Delete.
8579         (acquire_fileio_fd): Adjust.  Rename parameters.
8580         (release_fileio_fd): Adjust.
8581         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
8582         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
8583         (target_fileio_close): Adjust.
8584
8585 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
8586
8587         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
8588         index.
8589
8590 2018-04-10  Pedro Alves  <palves@redhat.com>
8591
8592         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
8593         (scoped_finish_thread_state): New class.
8594         * infcmd.c (run_command_1): Use it instead of finish_thread_state
8595         cleanup.
8596         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
8597         (fetch_inferior_event, normal_stop): Likewise.
8598         * thread.c (finish_thread_state_cleanup): Delete.
8599
8600 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
8601             Pedro Alves  <palves@redhat.com>
8602
8603         * value.c: Include "selftest.h" and "common/array-view.h".
8604         (struct range) <operator ==>: New.
8605         (test_ranges_contain): New.
8606         (check_ranges_vector): New.
8607         (test_insert_into_bit_range_vector): New.
8608         (_initialize_values): Register selftests.
8609         * common/array-view.h (operator==, operator!=): New.
8610
8611 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
8612
8613         * common/gdb_vecs.h (unordered_remove): Add overload that takes
8614         an iterator.
8615         * inline-frame.c: Include <algorithm>.
8616         (struct inline_state): Add constructor.
8617         (inline_state_s): Remove.
8618         (DEF_VEC_O(inline_state_s)): Remove.
8619         (inline_states): Change type to std::vector.
8620         (find_inline_frame_state): Adjust to std::vector.
8621         (allocate_inline_frame_state): Remove.
8622         (clear_inline_frame_state): Adjust to std::vector.
8623         (skip_inline_frames): Adjust to std::vector.
8624
8625 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
8626
8627         * tracepoint.h (struct trace_state_variable): Add constructor.
8628         <name>: Change type to std::string.
8629         * tracepoint.c (tsv_s): Remove.
8630         (DEF_VEC_O(tsv_s)): Remove.
8631         (tvariables): Change to std::vector.
8632         (create_trace_state_variable): Adjust to std::vector.
8633         (find_trace_state_variable): Likewise.
8634         (find_trace_state_variable_by_number): Likewise.
8635         (delete_trace_state_variable): Likewise.
8636         (trace_variable_command): Adjust to std::string.
8637         (delete_trace_variable_command): Likewise.
8638         (tvariables_info_1): Adjust to std::vector.
8639         (save_trace_state_variables): Likewise.
8640         (start_tracing): Likewise.
8641         (merge_uploaded_trace_state_variables): Adjust to std::vector
8642         and std::string.
8643         * target.h (struct target_ops)
8644         <to_download_trace_state_variable>: Pass reference to
8645         trace_state_variable.
8646         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
8647         * target-delegates.c: Re-generate.
8648         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
8649         (mi_tsv_deleted): Likewise.
8650         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
8651         * remote.c (remote_download_trace_state_variable): Change
8652         pointer to reference and adjust.
8653         * make-target-delegates (parse_argtypes): Handle references.
8654         (write_function_header): Likewise.
8655         (munge_type): Likewise.
8656
8657 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
8658
8659         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
8660         string_view-selftests.c.
8661         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
8662         testsuite.
8663         * unittests/basic_string_view/cons/char/1.cc: Likewise.
8664         * unittests/basic_string_view/cons/char/2.cc: Likewise.
8665         * unittests/basic_string_view/cons/char/3.cc: Likewise.
8666         * unittests/basic_string_view/element_access/char/1.cc:
8667         Likewise.
8668         * unittests/basic_string_view/element_access/char/empty.cc:
8669         Likewise.
8670         * unittests/basic_string_view/element_access/char/front_back.cc:
8671         Likewise.
8672         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
8673         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
8674         Likewise.
8675         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
8676         Likewise.
8677         * unittests/basic_string_view/modifiers/swap/char/1.cc:
8678         Likewise.
8679         * unittests/basic_string_view/operations/compare/char/1.cc:
8680         Likewise.
8681         * unittests/basic_string_view/operations/compare/char/13650.cc:
8682         Likewise.
8683         * unittests/basic_string_view/operations/copy/char/1.cc:
8684         Likewise.
8685         * unittests/basic_string_view/operations/data/char/1.cc:
8686         Likewise.
8687         * unittests/basic_string_view/operations/find/char/1.cc:
8688         Likewise.
8689         * unittests/basic_string_view/operations/find/char/2.cc:
8690         Likewise.
8691         * unittests/basic_string_view/operations/find/char/3.cc:
8692         Likewise.
8693         * unittests/basic_string_view/operations/find/char/4.cc:
8694         Likewise.
8695         * unittests/basic_string_view/operations/rfind/char/1.cc:
8696         Likewise.
8697         * unittests/basic_string_view/operations/rfind/char/2.cc:
8698         Likewise.
8699         * unittests/basic_string_view/operations/rfind/char/3.cc:
8700         Likewise.
8701         * unittests/basic_string_view/operations/substr/char/1.cc:
8702         Likewise.
8703         * unittests/basic_string_view/operators/char/2.cc: Likewise.
8704         * unittests/string_view-selftests.c: New file.
8705
8706 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
8707
8708         * unittests/basic_string_view/capacity/1.cc: New file.
8709         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
8710         * unittests/basic_string_view/cons/char/1.cc: New file.
8711         * unittests/basic_string_view/cons/char/2.cc: New file.
8712         * unittests/basic_string_view/cons/char/3.cc: New file.
8713         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
8714         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
8715         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
8716         * unittests/basic_string_view/element_access/char/1.cc: New file.
8717         * unittests/basic_string_view/element_access/char/2.cc: New file.
8718         * unittests/basic_string_view/element_access/char/empty.cc: New file.
8719         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
8720         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
8721         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
8722         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
8723         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
8724         * unittests/basic_string_view/include.cc: New file.
8725         * unittests/basic_string_view/inserters/char/1.cc: New file.
8726         * unittests/basic_string_view/inserters/char/2.cc: New file.
8727         * unittests/basic_string_view/inserters/char/3.cc: New file.
8728         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
8729         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
8730         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
8731         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
8732         * unittests/basic_string_view/literals/types.cc: New file.
8733         * unittests/basic_string_view/literals/values.cc: New file.
8734         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
8735         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
8736         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
8737         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
8738         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
8739         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
8740         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
8741         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
8742         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
8743         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
8744         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
8745         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
8746         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
8747         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
8748         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
8749         * unittests/basic_string_view/operations/data/char/1.cc: New file.
8750         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
8751         * unittests/basic_string_view/operations/find/char/1.cc: New file.
8752         * unittests/basic_string_view/operations/find/char/2.cc: New file.
8753         * unittests/basic_string_view/operations/find/char/3.cc: New file.
8754         * unittests/basic_string_view/operations/find/char/4.cc: New file.
8755         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
8756         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
8757         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
8758         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
8759         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
8760         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
8761         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
8762         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
8763         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
8764         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
8765         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
8766         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
8767         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
8768         * unittests/basic_string_view/operators/char/2.cc: New file.
8769         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
8770         * unittests/basic_string_view/range_access/char/1.cc: New file.
8771         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
8772         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
8773         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
8774         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
8775         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
8776         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
8777         * unittests/basic_string_view/requirements/typedefs.cc: New file.
8778         * unittests/basic_string_view/typedefs.cc: New file.
8779         * unittests/basic_string_view/types/1.cc: New file.
8780
8781 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
8782
8783         * common/gdb_string_view.h: Remove libstdc++ implementation
8784         details, adjust to gdb reality.
8785         * common/gdb_string_view.tcc: Likewise.
8786         * cli/cli-script.c (struct string_view): Remove.
8787         (user_args) <m_args>: Change element type to gdb::string_view.
8788         (user_args::insert_args): Adjust.
8789
8790 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
8791
8792         * common/gdb_string_view.h: New file.
8793         * common/gdb_string_view.tcc: New file.
8794
8795 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
8796
8797         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
8798         * configure: Re-generate.
8799
8800 2018-04-09  Pedro Alves  <palves@redhat.com>
8801
8802         * gdbarch.sh: Include "observable.h" instead of "observer.h".
8803         (set_target_gdbarch): Call
8804         gdb::observers::architecture_changed.notify instead of
8805         observer_notify_architecture_changed.
8806
8807 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
8808
8809         * tracepoint.c (struct current_traceframe_cleanup): Remove.
8810         (do_restore_current_traceframe_cleanup): Remove.
8811         (restore_current_traceframe_cleanup_dtor): Remove.
8812         (make_cleanup_restore_current_traceframe): Remove.
8813         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
8814         New.
8815         * tracepoint.h (struct scoped_restore_current_traceframe): New.
8816         * infrun.c (fetch_inferior_event): Use
8817         scoped_restore_current_traceframe.
8818
8819 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
8820
8821         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
8822         Remove.
8823         <n_allocated_type_units>: Remove.
8824         <all_type_units>: Change to std::vector.
8825         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
8826         to std::vector change.
8827         (dwarf2_per_objfile::get_cutu): Likewise.
8828         (dwarf2_per_objfile::get_tu): Likewise.
8829         (create_signatured_type_table_from_index): Likewise.
8830         (create_signatured_type_table_from_debug_names): Likewise.
8831         (dw2_symtab_iter_next): Likewise.
8832         (dw2_print_stats): Likewise.
8833         (dw2_expand_all_symtabs): Likewise.
8834         (dw2_expand_marked_cus): Likewise.
8835         (dw2_debug_names_iterator::next): Likewise.
8836         (dwarf2_initialize_objfile): Likewise.
8837         (add_signatured_type_cu_to_table): Likewise.
8838         (create_all_type_units): Likewise.
8839         (add_type_unit): Likewise.
8840         (struct tu_abbrev_offset): Add constructor.
8841         (build_type_psymtabs_1): Adjust to std::vector change.
8842         (print_tu_stats): Likewise.
8843         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
8844         (write_debug_names): Likewise.
8845
8846 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
8847
8848         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
8849         Make an std::vector.
8850         <n_comp_units>: Remove.
8851         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
8852         to std::vector change.
8853         (dwarf2_per_objfile::get_cutu): Likewise.
8854         (dwarf2_per_objfile::get_cu): Likewise.
8855         (create_cus_from_index): Likewise.
8856         (create_addrmap_from_index): Likewise.
8857         (create_addrmap_from_aranges): Likewise.
8858         (dwarf2_read_index): Likewise.
8859         (dw2_find_last_source_symtab): Likewise.
8860         (dw2_map_symtabs_matching_filename): Likewise.
8861         (dw2_symtab_iter_next): Likewise.
8862         (dw2_print_stats): Likewise.
8863         (dw2_expand_all_symtabs): Likewise.
8864         (dw2_expand_symtabs_with_fullname): Likewise.
8865         (dw2_expand_marked_cus): Likewise.
8866         (dw2_map_symbol_filenames): Likewise.
8867         (create_cus_from_debug_names): Likewise.
8868         (dwarf2_read_debug_names): Likewise.
8869         (dw2_debug_names_iterator::next): Likewise.
8870         (dwarf2_initialize_objfile): Likewise.
8871         (set_partial_user): Likewise.
8872         (dwarf2_build_psymtabs_hard): Likewise.
8873         (read_comp_units_from_section): Remove arguments, adjust to
8874         std::vector change.
8875         (create_all_comp_units): Adjust to std::vector and
8876         read_comp_units_from_section changes.
8877         (dwarf2_find_containing_comp_unit): Adjust to std::vector
8878         change.
8879         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
8880         (psyms_seen_size): Likewise.
8881         (write_gdbindex): Likewise.
8882         (write_debug_names): Likewise.
8883
8884 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
8885
8886         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
8887         with dwarf2_per_objfile.
8888         (create_cus_from_index): Likewise.
8889         (create_signatured_type_table_from_index): Likewise.
8890         (dwarf2_read_index): Likewise.
8891         (dwarf2_initialize_objfile): Likewise.
8892         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
8893         per_cu rather than get_dwarf2_per_objfile.
8894
8895 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
8896
8897         * dwarf2read.h (struct signatured_type): Forward declare.
8898         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
8899         New methods.
8900         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
8901         (dw2_get_cutu): ...this.
8902         (dwarf2_per_objfile::get_cu): Rename from...
8903         (dw2_get_cu): ...this.
8904         (dwarf2_per_objfile::get_tu): New.
8905         (create_addrmap_from_index): Adjust.
8906         (create_addrmap_from_aranges): Adjust.
8907         (dw2_find_last_source_symtab): Adjust.
8908         (dw2_map_symtabs_matching_filename): Adjust.
8909         (dw2_symtab_iter_next): Adjust.
8910         (dw2_print_stats): Adjust.
8911         (dw2_expand_all_symtabs): Adjust.
8912         (dw2_expand_symtabs_with_fullname): Adjust.
8913         (dw2_expand_marked_cus): Adjust.
8914         (dw_expand_symtabs_matching_file_matcher): Adjust.
8915         (dw2_map_symbol_filenames): Adjust.
8916         (dw2_debug_names_iterator::next): Adjust.
8917         (dwarf2_initialize_objfile): Adjust.
8918         (set_partial_user): Adjust.
8919         (dwarf2_build_psymtabs_hard): Adjust.
8920
8921 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
8922
8923         * dwarf2read.c (create_signatured_type_table_from_debug_names):
8924         Remove unused variables.
8925         (dw2_map_symtabs_matching_filename): Likewise.
8926         (dwarf2_record_block_ranges): Likewise.
8927         (dwarf2_read_addr_index): Likewise.
8928         (follow_die_offset): Likewise.
8929
8930 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
8931
8932         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
8933         to symbol_file_add_main.
8934
8935 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
8936
8937         PR mi/22299
8938         * mi/mi-console.c (do_fputc_async_safe): New.
8939         (mi_console_file::write_async_safe): New.
8940         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
8941         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
8942         New.
8943         * ui-file.c (ui_file::putstrn): Adjust call to
8944         fputstrn_unfiltered.
8945         * utils.c (printchar): Replace do_fputs and do_fprintf
8946         parameters by do_fputc.
8947         (fputstr_filtered): Adjust call to printchar.
8948         (fputstr_unfiltered): Likewise.
8949         (fputstrn_filtered): Likewise.
8950         (fputstrn_unfiltered): Add do_fputc parameter, pass to
8951         printchar.
8952         * utils.h (do_fputc_ftype): New typedef.
8953         (fputstrn_unfiltered): Add do_fputc parameter.
8954
8955 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
8956
8957         * regformats/i386/i386-avx.dat: Remove.
8958
8959 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
8960
8961         PR gdb/22979
8962         * amd64-tdep.c (amd64_none_init_abi): New function.
8963         (amd64_x32_none_init_abi): New function.
8964         (_initialize_amd64_tdep): Register handlers for x86-64 and
8965         x64_32 with GDB_OSABI_NONE.
8966         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
8967         GDB_OSABI_NONE osabi.
8968
8969 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
8970
8971         PR gdb/22980
8972         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
8973         GDB_OSABI_NONE.
8974         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
8975         * osabi.c (gdb_osabi_names): Add "unknown" entry.
8976
8977 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
8978
8979         * common/byte-vector.h (char_vector): New type.
8980         * target.h (target_read_alloc): Return
8981         gdb::optional<byte_vector>.
8982         (target_read_stralloc): Return gdb::optional<char_vector>.
8983         (target_get_osdata): Return gdb::optional<char_vector>.
8984         * target.c (target_read_alloc_1): Templatize.  Replacement
8985         manual memory management with vector.
8986         (target_read_alloc): Change return type, adjust.
8987         (target_read_stralloc): Change return type, adjust.
8988         (target_get_osdata): Change return type, adjust.
8989         * auxv.c (struct auxv_info) <length>: Remove.
8990         <data>: Change type to gdb::optional<byte_vector>.
8991         (auxv_inferior_data_cleanup): Free auxv_info with delete.
8992         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
8993         (target_auxv_search): Adjust.
8994         (fprint_target_auxv): Adjust.
8995         * avr-tdep.c (avr_io_reg_read_command): Adjust.
8996         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
8997         (linux_make_corefile_notes): Adjust.
8998         * osdata.c (get_osdata): Adjust.
8999         * remote.c (remote_get_threads_with_qxfer): Adjust.
9000         (remote_memory_map): Adjust.
9001         (remote_traceframe_info): Adjust.
9002         (btrace_read_config): Adjust.
9003         (remote_read_btrace): Adjust.
9004         (remote_pid_to_exec_file): Adjust.
9005         * solib-aix.c (solib_aix_get_library_list): Adjust.
9006         * solib-dsbt.c (decode_loadmap): Don't free buf.
9007         (dsbt_get_initial_loadmaps): Adjust.
9008         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
9009         * solib-target.c (solib_target_current_sos): Adjust.
9010         * tracepoint.c (sdata_make_value): Adjust.
9011         * xml-support.c (xinclude_start_include): Adjust.
9012         (xml_fetch_content_from_file): Adjust.
9013         * xml-support.h (xml_fetch_another): Change return type.
9014         (xml_fetch_content_from_file): Change return type.
9015         * xml-syscall.c (xml_init_syscalls_info): Adjust.
9016         * xml-tdesc.c (file_read_description_xml): Adjust.
9017         (fetch_available_features_from_target): Change return type.
9018         (target_fetch_description_xml): Adjust.
9019         (target_read_description_xml): Adjust.
9020
9021 2018-04-06  Tom Tromey  <tom@tromey.com>
9022
9023         * value.c (~value): Update.
9024         (struct value) <contents>: Now unique_xmalloc_ptr.
9025         (value_contents_bits_eq, allocate_value_contents)
9026         (value_contents_raw, value_contents_all_raw)
9027         (value_contents_for_printing, value_contents_for_printing_const)
9028         (set_value_enclosing_type): Update.
9029
9030 2018-04-06  Tom Tromey  <tom@tromey.com>
9031
9032         * value.c (range_s): Remove typedef, VEC.
9033         (struct range): Add operator<.
9034         (range_lessthan): Remove.
9035         (ranges_contain): Change type.
9036         (~value): Update.
9037         (struct value) <unavailable, optimized_out>: Now std::vector.
9038         (value_entirely_available)
9039         (value_entirely_covered_by_range_vector)
9040         (value_entirely_unavailable, value_entirely_optimized_out):
9041         Update.
9042         (insert_into_bit_range_vector): Change argument type.
9043         (find_first_range_overlap): Likewise.
9044         (struct ranges_and_idx, value_contents_bits_eq)
9045         (require_not_optimized_out, require_available): Update.
9046         (ranges_copy_adjusted): Change argument types.
9047         (value_optimized_out, value_copy, value_fetch_lazy): Update.
9048
9049 2018-04-06  Tom Tromey  <tom@tromey.com>
9050
9051         * value.c (~value): Update.
9052         (struct value) <parent>: Now a value_ref_ptr.
9053         (value_parent, set_value_parent, value_address, value_copy):
9054         Update.
9055
9056 2018-04-06  Tom Tromey  <tom@tromey.com>
9057
9058         * value.c (struct value): Add constructor, destructor, and member
9059         initializers.
9060         (allocate_value_lazy, value_decref): Update.
9061
9062 2018-04-06  Tom Tromey  <tom@tromey.com>
9063
9064         * value.c (struct value) <released, next>: Remove.
9065         (all_values): Now a std::vector.
9066         (allocate_value_lazy): Update.
9067         (value_next): Remove.
9068         (value_mark, value_free_to_mark, release_value)
9069         (value_release_to_mark): Update.
9070
9071 2018-04-06  Tom Tromey  <tom@tromey.com>
9072
9073         * value.h (fetch_subexp_value, value_release_to_mark): Update.
9074         (free_value_chain): Remove.
9075         * value.c (free_value_chain): Remove.
9076         (value_release_to_mark): Return a std::vector.
9077         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
9078         std::vector.
9079         (check_condition): Update.
9080         * eval.c (fetch_subexp_value): Change "val_chain" to a
9081         std::vector.
9082         * breakpoint.c (update_watchpoint): Update.
9083         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
9084
9085 2018-04-06  Tom Tromey  <tom@tromey.com>
9086
9087         * value.h (free_all_values): Remove.
9088         * value.c (free_all_values): Remove.
9089
9090 2018-04-06  Tom Tromey  <tom@tromey.com>
9091
9092         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
9093         (value_history_chain, value_history_count): Remove.
9094         (value_history): New global.
9095         (record_latest_value, access_value_history, show_values)
9096         (preserve_values): Update.
9097
9098 2018-04-06  Tom Tromey  <tom@tromey.com>
9099
9100         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
9101         * varobj.c (varobj_set_display_format, varobj_set_value)
9102         (install_default_visualizer, construct_visualizer)
9103         (install_new_value, ~varobj, varobj_get_value_type)
9104         (my_value_of_variable, varobj_editable_p): Update.
9105         * c-varobj.c (c_describe_child, c_value_of_variable)
9106         (cplus_number_of_children, cplus_describe_child): Update.
9107         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
9108         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
9109         (ada_value_of_variable, ada_value_is_changeable_p): Update.
9110
9111 2018-04-06  Tom Tromey  <tom@tromey.com>
9112
9113         * printcmd.c (last_examine_address): Change type to
9114         value_ref_ptr.
9115         (do_examine, x_command): Update.
9116
9117 2018-04-06  Tom Tromey  <tom@tromey.com>
9118
9119         * value.c (release_value): Update.
9120         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
9121         (struct bpstats) <val>: Now a value_ref_ptr.
9122         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
9123         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
9124         (~watchpoint, print_it_watchpoint, watch_command_1)
9125         (invalidate_bp_value_on_memory_change): Update.
9126
9127 2018-04-06  Tom Tromey  <tom@tromey.com>
9128
9129         * varobj.c (varobj_clear_saved_item)
9130         (update_dynamic_varobj_children, install_new_value, ~varobj):
9131         Update.
9132         * value.h (value_incref): Move declaration earlier.
9133         (value_decref): Rename from value_free.
9134         (struct value_ref_policy): New.
9135         (value_ref_ptr): New typedef.
9136         (struct value_deleter): Remove.
9137         (gdb_value_up): Remove typedef.
9138         (release_value): Change return type.
9139         (release_value_or_incref): Remove.
9140         * value.c (set_value_parent): Update.
9141         (value_incref): Change return type.
9142         (value_decref): Rename from value_free.
9143         (value_free_to_mark, free_all_values, free_value_chain): Update.
9144         (release_value): Return value_ref_ptr.
9145         (release_value_or_incref): Remove.
9146         (record_latest_value, set_internalvar, clear_internalvar):
9147         Update.
9148         * stack.c (info_frame_command): Don't call value_free.
9149         * python/py-value.c (valpy_dealloc, valpy_new)
9150         (value_to_value_object): Update.
9151         * printcmd.c (do_examine): Update.
9152         * opencl-lang.c (lval_func_free_closure): Update.
9153         * mi/mi-main.c (register_changed_p): Don't call value_free.
9154         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
9155         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
9156         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
9157         value_free.
9158         * guile/scm-value.c (vlscm_free_value_smob)
9159         (vlscm_scm_from_value): Update.
9160         * frame.c (frame_register_unwind, frame_unwind_register_signed)
9161         (frame_unwind_register_unsigned, get_frame_register_bytes)
9162         (put_frame_register_bytes): Don't call value_free.
9163         * findvar.c (address_from_register): Don't call value_free.
9164         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
9165         * dwarf2loc.c (entry_data_value_free_closure)
9166         (value_of_dwarf_reg_entry, free_pieced_value_closure)
9167         (dwarf2_evaluate_loc_desc_full): Update.
9168         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
9169         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
9170         (~watchpoint, watch_command_1)
9171         (invalidate_bp_value_on_memory_change): Update.
9172         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
9173
9174 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
9175
9176         PR gdb/23022
9177         * warning.m4: Add -Wno-error=deprecated-register.
9178         * configure: Re-generate.
9179
9180 2018-04-05  Tom Tromey  <tom@tromey.com>
9181
9182         * linespec.h: Remove include of "vec.h".
9183
9184 2018-04-05  Tom Tromey  <tom@tromey.com>
9185
9186         * linespec.c (typep): Remove typedef.
9187         (find_methods, find_superclass_methods): Take a std::vector.
9188         (find_method): Use std::vector.
9189
9190 2018-04-05  Tom Tromey  <tom@tromey.com>
9191
9192         * utils.c (compare_strings): Remove.
9193         * utils.h (compare_strings): Remove.
9194         * objc-lang.h (find_imps): Update.
9195         * objc-lang.c (find_methods): Take a std::vector.
9196         (uniquify_strings, find_imps): Likewise.
9197         * linespec.c (find_methods): Take a std::vector.
9198         (decode_objc): Use std::vector.
9199         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
9200         a std::vector.
9201         (find_method, find_function_symbols): Use std::vector.
9202
9203 2018-04-05  Tom Tromey  <tom@tromey.com>
9204
9205         * completer.c (completion_tracker::completion_tracker): Remove
9206         cast.
9207         (completion_tracker::discard_completions): Likewise.
9208         * breakpoint.c (ambiguous_names_p): Remove cast.
9209         * ada-lang.c (_initialize_ada_language): Remove cast.
9210         * utils.h (streq): Update.
9211         (streq_hash): Add new declaration.
9212         * utils.c (streq): Return bool.
9213         (streq_hash): New function.
9214
9215 2018-04-05  Tom Tromey  <tom@tromey.com>
9216
9217         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
9218         Remove a string copy.
9219
9220 2018-04-05  Tom Tromey  <tom@tromey.com>
9221
9222         * linespec.c (filter_results): Use std::vector.
9223         (decode_line_2, decode_line_full): Update.
9224
9225 2018-04-05  Tom Tromey  <tom@tromey.com>
9226
9227         * linespec.c (canonical_to_fullform): Return std::string.
9228         (filter_results): Update.
9229         (struct decode_line_2_item): Add constructor.
9230         <fullform, displayform>: Now std::string.
9231         (decode_line_2_compare_items): Now a std::sort comparator.
9232         (decode_line_2): Update.
9233
9234 2018-04-05  Tom Tromey  <tom@tromey.com>
9235
9236         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
9237         (unexpected_linespec_error): Update.
9238         (linespec_parse_basic, parse_linespec): Update.
9239
9240 2018-04-05  Tom Tromey  <tom@tromey.com>
9241
9242         * linespec.c (linespec_parse_basic): Reindent.
9243
9244 2018-04-05  Tom Tromey  <tom@tromey.com>
9245
9246         * minsyms.h (iterate_over_minimal_symbols): Update.
9247         * minsyms.c (iterate_over_minimal_symbols): Take a
9248         gdb::function_view.
9249         * linespec.c (struct collect_minsyms): Remove.
9250         (compare_msyms): Now a std::sort comparator.
9251         (add_minsym): Add parameters.
9252         (search_minsyms_for_name): Update.  Use std::vector.
9253
9254 2018-04-03  Tom Tromey  <tom@tromey.com>
9255
9256         * mipsread.c (read_alphacoff_dynamic_symtab): Use
9257         gdb::byte_vector.
9258
9259 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
9260
9261         * MAINTAINERS (Write After Approval): Add Weimin Pan.
9262
9263 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
9264
9265         PR gdb/16959
9266         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
9267         printing static type.
9268
9269 2018-04-01  Tom Tromey  <tom@tromey.com>
9270
9271         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
9272         (rs6000_xfer_shared_libraries): Update.
9273
9274 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
9275
9276         * common/gdb_vecs.h (char_ptr): Remove.
9277         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
9278
9279 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
9280
9281         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
9282         with std::vector.
9283         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
9284
9285 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
9286
9287         * tracepoint.h (struct uploaded_tp): Initialize fields.
9288         <actions, step_actions, cmd_strings>: Change type to
9289         std::vector<char *>.
9290         * tracepoint.c (get_uploaded_tp): Allocate with new.
9291         (free_uploaded_tps): Free with delete.
9292         (parse_tracepoint_definition): Adjust to std::vector change.
9293         * breakpoint.c (read_uploaded_action): Likewise.
9294         (create_tracepoint_from_upload): Likewise.
9295         * ctf.c (ctf_write_uploaded_tp): Likewise.
9296         (SET_ARRAY_FIELD): Likewise.
9297         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
9298
9299 2018-03-30  Tom Tromey  <tom@tromey.com>
9300
9301         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
9302         std::unique_ptr.
9303         (svr4_keep_data_in_core): Update.
9304         (svr4_read_so_list): Update.
9305
9306 2018-03-30  Tom Tromey  <tom@tromey.com>
9307
9308         * windows-nat.c (handle_output_debug_string, handle_exception):
9309         Update.
9310         * target.h (target_read_string): Update.
9311         * target.c (target_read_string): Change "string" to
9312         unique_xmalloc_ptr.
9313         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
9314         Update.
9315         * solib-frv.c (frv_current_sos): Update.
9316         * solib-dsbt.c (dsbt_current_sos): Update.
9317         * solib-darwin.c (darwin_current_sos): Update.
9318         * linux-thread-db.c (inferior_has_bug): Update.
9319         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
9320         Update.  Remove alloca.
9321         * ada-lang.c (ada_main_name): Update.
9322
9323 2018-03-30  Tom Tromey  <tom@tromey.com>
9324
9325         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
9326         (struct dwo_file_deleter): New.
9327         (dwo_file_up): New typedef.
9328         (open_and_init_dwo_file): Use dwo_file_up.
9329         (free_dwo_file_cleanup): Remove.
9330
9331 2018-03-30  Tom Tromey  <tom@tromey.com>
9332
9333         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
9334         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
9335
9336 2018-03-30  Tom Tromey  <tom@tromey.com>
9337
9338         * dwarf2read.c (class free_cached_comp_units): New class.
9339         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
9340         (free_cached_comp_units): Remove function.
9341
9342 2018-03-30  Tom Tromey  <tom@tromey.com>
9343
9344         * utils.h (make_cleanup_unpush_target): Remove.
9345         * inf-ptrace.c (struct target_unpusher): New.
9346         (target_unpush_up) New typedef.
9347         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
9348         target_unpush_up.
9349         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
9350
9351 2018-03-27  Tom Tromey  <tom@tromey.com>
9352
9353         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
9354
9355 2018-03-27  Pedro Alves  <palves@redhat.com>
9356             Tom Tromey  <tom@tromey.com>
9357
9358         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
9359         destructor.  Now a class.
9360         (gdb_readline_wrapper_cleanup): Remove function.
9361         (gdb_readline_wrapper): Remove cleanups.
9362
9363 2018-03-27  Tom Tromey  <tom@tromey.com>
9364
9365         * typeprint.h (struct type_print_options) <local_typedefs,
9366         global_typedefs>: Remove "struct" keyword.
9367         (class typedef_hash_table): New class.
9368         (recursively_update_typedef_hash, add_template_parameters)
9369         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
9370         (find_typedef_in_hash): Don't declare.
9371         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
9372         (typedef_hash_table::recursively_update): Rename from
9373         recursively_update_typedef_hash.  Now a member.
9374         (typedef_hash_table::add_template_parameters): Rename from
9375         add_template_parameters.  Now a member.
9376         (typedef_hash_table::typedef_hash_table): Now a constructor;
9377         rename from create_typedef_hash.
9378         (typedef_hash_table::~typedef_hash_table): Now a destructor;
9379         rename from free_typedef_hash.
9380         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
9381         (do_free_global_table): Remove.
9382         (typedef_hash_table::typedef_hash_table): New constructor; renamed
9383         from copy_type_recursive.
9384         (create_global_typedef_table): Remove.
9385         (typedef_hash_table::find_global_typedef): Now a member of
9386         typedef_hash_table.
9387         (typedef_hash_table::find_typedef): Rename from
9388         find_typedef_in_hash; now a member.
9389         (whatis_exp): Update.
9390         * extension.h (struct ext_lang_type_printers): Add constructor and
9391         destructor.
9392         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
9393         declare.
9394         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
9395         Now a constructor; rename from start_ext_lang_type_printers.
9396         (ext_lang_type_printers): Now a destructor; rename from
9397         free_ext_lang_type_printers.
9398         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
9399         Update.
9400         (c_type_print_base_struct_union): Update.  Remove cleanups.
9401
9402 2018-03-27  Tom Tromey  <tom@tromey.com>
9403
9404         * dwarf-index-write.c: Include <cmath>.
9405
9406 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
9407
9408         * NEWS: Add entry describing new "set|show varsize-limit" command.
9409         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
9410         command.
9411         * printcmd.c (_initialize_printcmd): Add "set var" alias of
9412         "set variable".
9413
9414 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
9415
9416         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
9417         dwarf-index-write.c
9418         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
9419         * dwarf-index-common.c: New file.
9420         * dwarf-index-common.h: New file.
9421         * dwarf-index-write.c: New file.
9422         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
9423         (struct dwarf2_section_info): Move from here.
9424         (dwarf2_section_info_def): Likewise.
9425         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
9426         (offset_type): Likewise.
9427         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
9428         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
9429         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
9430         (byte_swap): Likewise.
9431         (MAYBE_SWAP): Likewise.
9432         (dwarf2_per_cu_ptr): Likewise.
9433         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
9434         (struct tu_stats): Likewise.
9435         (struct dwarf2_per_objfile): Likewise.
9436         (struct dwarf2_per_cu_data): Likewise.
9437         (struct signatured_type): Likewise.
9438         (sig_type_ptr): Likewise.
9439         (DEF_VEC_P (sig_type_ptr)): Likewise.
9440         (INDEX4_SUFFIX): Likewise.
9441         (INDEX5_SUFFIX): Likewise.
9442         (DEBUG_STR_SUFFIX): Likewise.
9443         (dwarf2_read_section): Make non-static.
9444         (mapped_index_string_hash): Move from here.
9445         (dwarf5_djb_hash): Likewise.
9446         (file_write): Likewise.
9447         (class data_buf): Likewise.
9448         (struct symtab_index_entry): Likewise.
9449         (struct mapped_symtab): Likewise.
9450         (find_slot): Likewise.
9451         (hash_expand): Likewise.
9452         (add_index_entry): Likewise.
9453         (uniquify_cu_indices): Likewise.
9454         (class c_str_view): Likewise.
9455         (class c_str_view_hasher): Likewise.
9456         (class vector_hasher): Likewise.
9457         (write_hash_table): Likewise.
9458         (psym_index_map): Likewise.
9459         (struct addrmap_index_data): Likewise.
9460         (add_address_entry): Likewise.
9461         (add_address_entry_worker): Likewise.
9462         (write_address_map): Likewise.
9463         (symbol_kind): Likewise.
9464         (write_psymbols): Likewise.
9465         (struct signatured_type_index_data): Likewise.
9466         (write_one_signatured_type): Likewise.
9467         (recursively_count_psymbols): Likewise.
9468         (recursively_write_psymbols): Likewise.
9469         (class debug_names): Likewise.
9470         (check_dwarf64_offsets): Likewise.
9471         (psyms_seen_size): Likewise.
9472         (write_gdbindex): Likewise.
9473         (write_debug_names): Likewise.
9474         (assert_file_size): Likewise.
9475         (write_psymtabs_to_index): Likewise.
9476         (save_gdb_index_command): Likewise.
9477         (_initialize_dwarf2_read): Don't register the "save gdb-index"
9478         command.
9479         * dwarf2read.h: New file.
9480
9481 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
9482
9483         PR gdb/22670
9484         * dwarf2read.c (dwarf2_physname): Do not return the demangled
9485         symbol name if the CU's language stores symbol names in linkage
9486         format.
9487         * language.h (struct language_defn)
9488         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
9489         all instances of this struct.
9490
9491 2018-03-26  Tom Tromey  <tom@tromey.com>
9492
9493         * stack.c (backtrace_command_1): Remove verbose code.
9494
9495 2018-03-26  Tom Tromey  <tom@tromey.com>
9496
9497         * python/py-framefilter.c (py_print_type): Don't catch
9498         exceptions.  Return void.
9499         (py_print_value): Likewise.
9500         (py_print_single_arg): Likewise.
9501         (enumerate_args): Don't catch exceptions.
9502         (py_print_args): Likewise.
9503         (py_print_frame): Likewise.
9504         (gdbpy_apply_frame_filter): Catch exceptions here.
9505
9506 2018-03-26  Tom Tromey  <tom@tromey.com>
9507
9508         * stack.c (_initialize_stack): Remove trailing newlines from help
9509         text.  Add "Usage" line to "backtrace" help.
9510
9511 2018-03-26  Tom Tromey  <tom@tromey.com>
9512
9513         PR python/16486:
9514         * python/py-framefilter.c (py_print_args): Call wrap_hint.
9515
9516 2018-03-26  Tom Tromey  <tom@tromey.com>
9517
9518         * python/py-framefilter.c (py_print_single_arg): Return
9519         EXT_LANG_BT_ERROR from catch.
9520
9521 2018-03-26  Tom Tromey  <tom@tromey.com>
9522
9523         PR backtrace/15584:
9524         * stack.c (backtrace_command_1): Move some code into no-filters
9525         "if".
9526
9527 2018-03-26  Tom Tromey  <tom@tromey.com>
9528
9529         * python/py-framefilter.c (throw_quit_or_print_exception): New
9530         function.
9531         (gdbpy_apply_frame_filter): Use it.
9532
9533 2018-03-26  Tom Tromey  <tom@tromey.com>
9534
9535         PR cli/17716:
9536         * python/py-framefilter.c (py_print_type, py_print_value)
9537         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
9538         RETURN_MASK_ERROR.
9539
9540 2018-03-26  Tom Tromey  <tom@tromey.com>
9541
9542         * python/py-framefilter.c (enumerate_args): Use
9543         gdb::unique_xmalloc_ptr.
9544
9545 2018-03-26  Tom Tromey  <tom@tromey.com>
9546
9547         * python/py-framefilter.c (py_print_frame): Return
9548         EXT_LANG_BT_OK.
9549         (gdbpy_apply_frame_filter): Update comment.
9550         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
9551         Remove.
9552         <EXT_LANG_BT_NO_FILTERS>: Change value.
9553
9554 2018-03-26  Tom Tromey  <tom@tromey.com>
9555
9556         PR backtrace/15582:
9557         * stack.c (backtrace_command): Parse "hide" argument.
9558         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
9559         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
9560         constant.
9561
9562 2018-03-26  Tom Tromey  <tom@tromey.com>
9563
9564         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
9565         add "flags".
9566         (backtrace_command): Remove "fulltrace", add "flags".
9567
9568 2018-03-26  Tom Tromey  <tom@tromey.com>
9569
9570         * stack.c (backtrace_command): Rewrite command line parsing.
9571
9572 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
9573
9574         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
9575
9576 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
9577
9578         * filename-seen-cache.h: Add include guard.
9579
9580 2018-03-26  Keith Seitz  <keiths@redhat.com>
9581
9582         * symfile.c (place_section): Remove "struct" from section_addr_info
9583         in comment.
9584         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
9585         "struct" keyword from section_addr_info.
9586
9587 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
9588
9589         * regformats/regdef.h (reg): Add constructors.
9590
9591 2018-03-25  Pedro Alves  <palves@redhat.com>
9592
9593         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
9594         if then/else bodies in var_func_name extraction.
9595
9596 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
9597
9598         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
9599         lookup_minimal_symbol() to find symbol entry.
9600         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
9601
9602 2018-03-23  Keith Seitz  <keiths@redhat.com>
9603
9604         PR c++/22968
9605         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
9606         nested type definitions for C++, too.
9607
9608 2018-03-23  Tom Tromey  <tom@tromey.com>
9609
9610         * machoread.c (struct oso_el): Add a constructor.  Don't define as
9611         a typedef.
9612         (macho_register_oso): Remove.
9613         (macho_symtab_read): Take a std::vector.
9614         (oso_el_compare_name): Now a std::sort comparator.
9615         (macho_symfile_read_all_oso): Take a std::vector.
9616         (macho_symfile_read): Use std::vector.  Remove cleanups.
9617
9618 2018-03-22  Tom Tromey  <tom@tromey.com>
9619
9620         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
9621         (record_full_goto_bookmark): Use std::string.
9622
9623 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9624
9625         PR tdep/18295
9626         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
9627         a single mask.
9628
9629 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9630
9631         * rs6000-tdep.c (store_insn_p): New function.
9632         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
9633         and cr_reg to their unshifted values. Use store_insn_p to
9634         match LR saves using either R1 or fdata->alloca_reg. Use
9635         store_insn_p to match CR saves. Set alloca_reg_offset
9636         when alloca_reg and framep are set. Remove lr_reg shift
9637         when assigning to fdata->lr_register.
9638
9639 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
9640
9641         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
9642         command line args instead of emitting a warning.
9643
9644 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
9645
9646         * tracepoint.h (struct static_tracepoint_marker): Initialize
9647         fields, define default constructor, move constructor and move
9648         assignment, disable the rest.
9649         <str_id, extra>: Make std::string.
9650         (release_static_tracepoint_marker): Remove.
9651         (free_current_marker): Remove.
9652         * tracepoint.c (free_current_marker): Remove.
9653         (parse_static_tracepoint_marker_definition): Adjust to
9654         std::string, use new hex2str overload.
9655         (release_static_tracepoint_marker): Remove.
9656         (print_one_static_tracepoint_marker): Get marker by reference
9657         and adjust to std::string.
9658         (info_static_tracepoint_markers_command): Adjust to std::vector
9659         changes
9660         * target.h (static_tracepoint_marker_p): Remove typedef.
9661         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
9662         (struct target_ops) <to_static_tracepoint_marker_at>: Return
9663         bool.
9664         <to_static_tracepoint_markers_by_strid>: Return std::vector.
9665         * target-debug.h
9666         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
9667         (target_debug_print_std_vector_static_tracepoint_marker): New.
9668         (target_debug_print_struct_static_tracepoint_marker_p): Rename
9669         to...
9670         (target_debug_print_static_tracepoint_marker_p): ... this.
9671         * target-delegates.c: Re-generate.
9672         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
9673         Make std::string.
9674         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
9675         (decode_static_tracepoint_spec): Adjust to std::vector.
9676         (tracepoint_print_one_detail): Adjust to std::string.
9677         (strace_marker_decode_location): Adjust to std::string.
9678         (update_static_tracepoint): Adjust to std::string, remove call
9679         to release_static_tracepoint_marker.
9680         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
9681         Adjust to std::vector.
9682         * remote.c (remote_static_tracepoint_marker_at): Return bool.
9683         (remote_static_tracepoint_markers_by_strid): Adjust to
9684         std::vector.
9685         * common/rsp-low.h (hex2str): New overload with explicit count
9686         of bytes.
9687         * common/rsp-low.c (hex2str): New overload with explicit count
9688         of bytes.
9689         * unittests/rsp-low-selftests.c (test_hex2str): New function.
9690         (_initialize_rsp_low_selftests): Add test_hex2str test.
9691         * unittests/tracepoint-selftests.c
9692         (test_parse_static_tracepoint_marker_definition): Adjust to
9693         std::string.
9694
9695 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
9696
9697         * tracepoint.c (parse_static_tracepoint_marker_definition):
9698         Consider case where the definition is followed by more
9699         definitions.
9700         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
9701         tracepoint-selftests.c.
9702         * unittests/tracepoint-selftests.c: New.
9703
9704 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9705
9706         * MAINTAINERS (Write After Approval): Add Pedro Franco de
9707         Carvalho.
9708
9709 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
9710
9711         * symtab.c (find_pc_sect_line): fixed indentation.
9712
9713 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
9714
9715         * symtab.c (find_pc_sect_line): now uses binary search.
9716
9717 2018-03-19  Tom Tromey  <tom@tromey.com>
9718
9719         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
9720         "IDENT" production.
9721
9722 2018-03-19  Pedro Alves  <palves@redhat.com>
9723             Tom Tromey  <tom@tromey.com>
9724
9725         * unittests/observable-selftests.c: New file.
9726         * common/observable.h: New file.
9727         * observable.h: New file.
9728         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
9729         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
9730         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
9731         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
9732         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
9733         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
9734         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
9735         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
9736         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
9737         python/py-breakpoint.c, python/py-finishbreakpoint.c,
9738         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
9739         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
9740         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
9741         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
9742         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
9743         tui/tui-interp.c, valops.c: Update all users.
9744         * tui/tui-hooks.c (tui_bp_created_observer)
9745         (tui_bp_deleted_observer, tui_bp_modified_observer)
9746         (tui_inferior_exit_observer, tui_before_prompt_observer)
9747         (tui_normal_stop_observer, tui_register_changed_observer):
9748         Remove.
9749         (tui_observers_token): New global.
9750         (attach_or_detach, tui_attach_detach_observers): New functions.
9751         (tui_install_hooks, tui_remove_hooks): Use
9752         tui_attach_detach_observers.
9753         * record-btrace.c (record_btrace_thread_observer): Remove.
9754         (record_btrace_thread_observer_token): New global.
9755         * observer.sh: Remove.
9756         * observer.c: Rename to observable.c.
9757         * observable.c (namespace gdb_observers): Define new objects.
9758         (observer_debug): Move into gdb_observers namespace.
9759         (struct observer, struct observer_list, xalloc_observer_list_node)
9760         (xfree_observer_list_node, generic_observer_attach)
9761         (generic_observer_detach, generic_observer_notify): Remove.
9762         (_initialize_observer): Update.
9763         Don't include observer.inc.
9764         * Makefile.in (generated_files): Remove observer.h, observer.inc.
9765         (clean mostlyclean): Likewise.
9766         (observer.h, observer.inc): Remove targets.
9767         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
9768         (COMMON_SFILES): Use observable.c, not observer.c.
9769         * .gitignore: Remove observer.h.
9770
9771 2018-03-18  Tom Tromey  <tom@tromey.com>
9772
9773         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
9774         gdb::def_vector.
9775         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
9776
9777 2018-03-17  Tom Tromey  <tom@tromey.com>
9778
9779         * auto-load.c (auto_load_objfile_script_1): Use std::string.
9780
9781 2018-03-17  Tom Tromey  <tom@tromey.com>
9782
9783         * target.c (class scoped_target_fd): New.
9784         (target_fileio_close_cleanup): Remove.
9785         (target_fileio_read_alloc_1): Use scoped_target_fd.
9786
9787 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
9788
9789         * silent-rules.mk: New.
9790         * Makefile.in: Include silent-rules.mk
9791         (srcdir, VPATH, top_srcdir): Move up.
9792         (COMPILE): Add ECHO_CXX.
9793         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
9794         (init.c): Add ECHO_INIT_C.
9795         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
9796         (version.c): Add ECHO_GEN.
9797         (printcmd.o): Add ECHO_CXX.
9798         (target-float.o): Add ECHO_CXX.
9799         (ada-exp.o): Add ECHO_CXX.
9800         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
9801         (insight$(EXEEXT)): Add ECHO_CXXLD.
9802         * gnulib/configure.ac: Add AM_SILENT_RULES.
9803         * gnulib/aclocal.m4: Re-generate.
9804         * gnulib/configure: Re-generate.
9805         * gnulib/import/Makefile.in: Re-generate.
9806
9807 2018-03-16  Tom Tromey  <tom@tromey.com>
9808
9809         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
9810         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
9811         * utils.c (do_free_section_addr_info)
9812         (make_cleanup_free_section_addr_info): Remove.
9813         * symfile.h (struct other_sections): Add constructor.
9814         (struct section_addr_info): Remove.
9815         (section_addr_info): New typedef.
9816         (struct sym_fns) <sym_offsets>: Change type of parameter.
9817         (build_section_addr_info_from_objfile)
9818         (relative_addr_info_to_section_offsets, addr_info_make_relative)
9819         (default_symfile_offsets, symbol_file_add)
9820         (symbol_file_add_from_bfd)
9821         (build_section_addr_info_from_section_table): Update.
9822         (alloc_section_addr_info, free_section_addr_info): Don't declare.
9823         * symfile.c (alloc_section_addr_info): Remove.
9824         (build_section_addr_info_from_section_table): Change return type.
9825         Update.
9826         (build_section_addr_info_from_bfd)
9827         (build_section_addr_info_from_objfile): Likewise.
9828         (free_section_addr_info): Remove.
9829         (relative_addr_info_to_section_offsets): Change type of "addrs".
9830         (addrs_section_compar): Now a std::sort comparator.
9831         (addrs_section_sort): Change return type.
9832         (addr_info_make_relative): Change type of "addrs".  Update.
9833         (default_symfile_offsets, syms_from_objfile_1)
9834         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
9835         (symbol_file_add_separate): Update.
9836         (symbol_file_add): Change type of "addrs".  Update.
9837         (add_symbol_file_command): Update.  Remove cleanups.
9838         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
9839         cleanups.
9840         * symfile-debug.c (debug_sym_offsets): Change type of "info".
9841         * solib.c (solib_read_symbols): Update.
9842         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
9843         * machoread.c (macho_symfile_offsets): Update.
9844         * jit.c (jit_bfd_try_read_symtab): Update.
9845
9846 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
9847
9848         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
9849         unittests/utils-selftests.c.
9850         * unittests/utils-selftests.c: New file.
9851
9852 2018-03-14  Tom Tromey  <tom@tromey.com>
9853
9854         PR cli/14977:
9855         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
9856         for NULL.
9857
9858 2018-03-14  Tom Tromey  <tom@tromey.com>
9859
9860         PR cli/19918:
9861         * printcmd.c (printf_pointer): Allow "-" in format.
9862
9863 2018-03-14  Tom Tromey  <tom@tromey.com>
9864
9865         * printcmd.c (_initialize_printcmd): Add usage to printf.
9866
9867 2018-03-14  Yao Qi  <qiyao@sourceware.org>
9868
9869         * MAINTAINERS: Update my email address.
9870
9871 2018-03-13  Tom Tromey  <tom@tromey.com>
9872
9873         * machoread.c (macho_check_dsym): Change filenamep to a
9874         std::string*.
9875         (macho_symfile_read): Update.
9876         * symfile.c (load_command): Use std::string.
9877
9878 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
9879
9880         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
9881         to error message string.
9882         (riscv_register_name): Use xsnprintf instead of sprintf.
9883         (riscv_insn::fetch_instruction): Use gdb_assert instead of
9884         internal_error.
9885         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
9886         error.
9887         (riscv_push_dummy_call): Likewise.
9888
9889 2018-03-12  Tom Tromey  <tom@tromey.com>
9890
9891         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
9892         Use gdb::byte_vector.
9893         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
9894
9895 2018-03-12  Yao Qi  <yao.qi@linaro.org>
9896
9897         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
9898         parameter type to readable_regcache.
9899         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
9900         the declaration.
9901
9902 2018-03-11  Tom Tromey  <tom@tromey.com>
9903
9904         * dwarf2read.c (struct nextfield): Add initializers.
9905         (struct nextfnfield): Remove.
9906         (struct fnfieldlist): Add initializers.  Remove "length" and
9907         "head", use std::vector.
9908         (struct decl_field_list): Remove.
9909         (struct field_info): Add initializers.
9910         <fields, baseclasses>: Now std::vector.
9911         <nbaseclasses, nfnfields, typedef_field_list_count,
9912         nested_types_list_count>: Remove.
9913         (dwarf2_add_field, dwarf2_add_type_defn)
9914         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
9915         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
9916         (process_structure_scope): Update.
9917
9918 2018-03-11  Tom Tromey  <tom@tromey.com>
9919
9920         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
9921         for use by std::sort.
9922         (build_type_psymtabs_1): Use std::vector.
9923
9924 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
9925
9926         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
9927         and LIBMPFR in the printed configuration.
9928
9929 2018-03-08  Tom Tromey  <tom@tromey.com>
9930
9931         * source.c (get_filename_and_charpos): Use scoped_fd.
9932         * nto-procfs.c (procfs_open_1): Use scoped_fd.
9933         (procfs_pidlist): Likewise.
9934         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
9935         (iterate_over_mappings): Likewise.
9936
9937 2018-03-08  Tom Tromey  <tom@tromey.com>
9938
9939         * infcall.c (struct call_return_meta_info)
9940         <stack_temporaries_enabled>: Remove.
9941         (get_call_return_value, call_function_by_hand_dummy): Update.
9942         * thread.c (disable_thread_stack_temporaries): Remove.
9943         (enable_thread_stack_temporaries): Remove.
9944         (thread_stack_temporaries_enabled_p): Return bool.
9945         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
9946         (get_last_thread_stack_temporary): Update.
9947         * eval.c (evaluate_subexp): Update.
9948         * gdbthread.h (class enable_thread_stack_temporaries): Now a
9949         class, not a function.
9950         (value_ptr, value_vec): Remove typedefs.
9951         (class thread_info) <stack_temporaries_enabled>: Now bool.
9952         <stack_temporaries>: Now a std::vector.
9953         (thread_stack_temporaries_enabled_p)
9954         (value_in_thread_stack_temporaries): Return bool.
9955
9956 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
9957
9958         * remote.c (putpkt_binary): Fix omitted bytes reporting.
9959         (getpkt_or_notif_sane_1): Likewise.
9960
9961 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
9962
9963         * build-id.c (build_id_to_debug_bfd): Use std::string.
9964
9965 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
9966
9967         * build-id.c (find_separate_debug_file_by_buildid): Return
9968         std::string.
9969         * build-id.h (find_separate_debug_file_by_buildid): Return
9970         std::string.
9971         * coffread.c (coff_symfile_read): Adjust to std::string.
9972         * elfread.c (elf_symfile_read): Adjust to std::string.
9973         * symfile.c (separate_debug_file_exists): Change parameter to
9974         std::string.
9975         (find_separate_debug_file): Return std::string.
9976         (find_separate_debug_file_by_debuglink): Return std::string.
9977         * symfile.h (find_separate_debug_file_by_debuglink): Return
9978         std::string.
9979
9980 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
9981
9982         * common/xml-utils.c (xml_escape_text): Move code to...
9983         (xml_escape_text_append): ... this new function.
9984         * common/xml-utils.h (xml_escape_text_append): New declaration.
9985         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
9986         New function.
9987         (_initialize_xml_utils): register test_xml_escape_text_append as
9988         a selftest.
9989
9990 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
9991
9992         * defs.h: Remove MAX_REGISTER_SIZE.
9993         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
9994         asserts.
9995         * python/py-unwind.c (pyuw_sniffer): Likewise.
9996
9997 2018-03-07  Tom Tromey  <tom@tromey.com>
9998
9999         * linux-tdep.c (linux_info_proc): Update.
10000         * target.h (struct target_ops) <to_fileio_readlink>: Return
10001         optional<string>.
10002         (target_fileio_readlink): Return optional<string>.
10003         * remote.c (remote_hostio_readlink): Return optional<string>.
10004         * inf-child.c (inf_child_fileio_readlink): Return
10005         optional<string>.
10006         * target.c (target_fileio_readlink): Return optional<string>.
10007
10008 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
10009
10010         * regcache.c (cooked_read_test): Add riscv to the list of
10011         architectures that have a save_reggroup.
10012
10013 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
10014
10015         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
10016         value is not a dynamic class object.
10017
10018 2018-03-06  Tom Tromey  <tom@tromey.com>
10019
10020         * rust-exp.y: Formatting fixes.
10021
10022 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10023
10024         * riscv-tdep.c (riscv_register_name): Remove target description
10025         support.
10026         (riscv_gdbarch_init): Remove target description check.
10027
10028 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10029
10030         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
10031         comment.
10032         * riscv-tdep.h: Likewise.
10033
10034 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10035
10036         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
10037         (riscv_pseudo_register_write): Delete.
10038         (riscv_gdbarch_init): Remove all use of pseudo registers.
10039
10040 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
10041
10042         * record-btrace.c (btrace_print_lines): Replace cleanup
10043         parameter with RAII equivalents.
10044         (btrace_insn_history): Replace cleanup with RAII equivalents.
10045         * ui-out.h (make_cleanup_ui_out_list_begin_end,
10046         make_cleanup_ui_out_tuple_begin_end): Remove.
10047         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
10048         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
10049         make_cleanup_ui_out_list_begin_end): Remove.
10050
10051 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
10052
10053         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
10054         parameter types to std::vector.  Use bool.
10055         (record_btrace_wait): Replace VEC(tp_t) with
10056         std::vector<thread_info *>.
10057         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
10058
10059 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
10060
10061         * record-btrace.c (record_btrace_disable_callback): Remove.
10062         (struct scoped_btrace_disable): New.
10063         (record_btrace_open): Use scoped_btrace_disable.
10064
10065 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10066
10067         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
10068         reading values from registers.
10069
10070 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10071
10072         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
10073         where appropriate.
10074
10075 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10076
10077         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
10078         change parameter type.  Use GDB's print functions, and use
10079         core_addr_to_string where appropriate.
10080         (riscv_push_dummy_call): Use core_addr_to_string where
10081         appropriate, update call to riscv_print_arg_location, and reindent
10082         a few lines.
10083         (riscv_return_value): Update call to riscv_print_arg_location.
10084
10085 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10086             Tim Newsome <tim@sifive.com>
10087             Albert Ou <a0u@eecs.berkeley.edu>
10088             Darius Rad <darius@bluespec.com>
10089
10090         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
10091         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
10092         (ALLDEPFILES): Add riscv-tdep.c
10093         * configure.tgt: Add riscv support.
10094         * riscv-tdep.c: New file.
10095         * riscv-tdep.h: New file.
10096         * NEWS: Mention new target.
10097         * MAINTAINERS: Add entry for riscv.
10098
10099 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10100
10101         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
10102         fields within aggregates.
10103
10104 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
10105
10106         * record-btrace.c (btrace_print_lines): Change type of flags to
10107         gdb_disassembly_flags.
10108
10109 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
10110
10111         * fbsd-nat.c: Include "inf-ptrace.h".
10112         (USE_SIGTRAP_SIGINFO): Conditionally define.
10113         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
10114         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
10115         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
10116         function.
10117         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
10118         Likewise.
10119         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
10120         Likewise.
10121         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
10122         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
10123         "supports_stopped_by_hw_breakpoint" target methods.
10124
10125 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
10126
10127         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
10128         * fbsd-nat.c (debug_fbsd_nat): New variable.
10129         (show_fbsd_nat_debug): New function.
10130         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
10131         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
10132
10133 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
10134
10135         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
10136         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
10137         prototype.
10138         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
10139         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
10140         method.
10141
10142 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
10143
10144         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
10145         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
10146
10147 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
10148
10149         * charset.c (struct charset_vector): New.
10150         (charsets): Change type to charset_vector.
10151         (find_charset_names): Adjust.
10152         (add_one): Adjust.
10153         (_initialize_charset): Adjust.
10154
10155 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
10156
10157         * progspace.h (struct program_space) <deleted_solibs>: Change
10158         type to std::vector<std::string>.
10159         * progspace.c (clear_program_space_solib_cache): Adjust.
10160         * breakpoint.c (print_solib_event): Adjust.
10161         (check_status_catch_solib): Adjust.
10162         * solib.c (update_solib_list): Adjust.
10163         * ui-out.h (class ui_out) <field_string>: New overload.
10164         * ui-out.c (ui_out::field_string): New overload.
10165
10166 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
10167
10168         * progspace.h (struct program_space): Add constructor and
10169         destructor, initialize fields.
10170         (add_program_space): Remove.
10171         * progspace.c (add_program_space): Rename to...
10172         (program_space::program_space): ... this.
10173         (release_program_space): Rename to...
10174         (program_space::~program_space): ... this.
10175         (delete_program_space): Use delete to delete program_space.
10176         (initialize_progspace): Use new to allocate program_space.
10177         * inferior.c (add_inferior_with_spaces): Likewise.
10178         (clone_inferior_command): Likewise.
10179         * infrun.c (follow_fork_inferior): Likewise.
10180         (handle_vfork_child_exec_or_exit): Likewise.
10181
10182 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
10183
10184         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
10185         (delim_string_to_char_ptr_vec): Return std::vector of
10186         gdb::unique_xmalloc_ptr.
10187         (dirnames_to_char_ptr_vec_append): Take std::vector of
10188         gdb::unique_xmalloc_ptr.
10189         (dirnames_to_char_ptr_vec): Return std::vector of
10190         gdb::unique_xmalloc_ptr.
10191         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
10192         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
10193         (delim_string_to_char_ptr_vec): Return an std::vector of
10194         gdb::unique_xmalloc_ptr, adjust the code.
10195         (dirnames_to_char_ptr_vec_append): Take an std::vector of
10196         gdb::unique_xmalloc_ptr, adjust the code.
10197         (dirnames_to_char_ptr_vec): Return an std::vector of
10198         gdb::unique_xmalloc_ptr, adjust the code.
10199         * auto-load.c (auto_load_safe_path_vec): Change type to
10200         std::vector of gdb::unique_xmalloc_ptr.
10201         (auto_load_expand_dir_vars): Return an std::vector of
10202         gdb::unique_xmalloc_ptr, adjust the code.
10203         (auto_load_safe_path_vec_update): Adjust.
10204         (filename_is_in_auto_load_safe_path_vec): Adjust.
10205         (auto_load_objfile_script_1): Adjust.
10206         * build-id.c (build_id_to_debug_bfd): Adjust.
10207         * linux-thread-db.c (thread_db_load_search): Adjust.
10208         * source.c (add_path): Adjust.
10209         (openp): Adjust.
10210         * symfile.c (find_separate_debug_file): Adjust.
10211         * utils.c (do_free_char_ptr_vec): Remove.
10212         (make_cleanup_free_char_ptr_vec): Remove.
10213
10214 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
10215
10216         PR gdb/22907
10217         * common/pathstuff.c: Conditionally include "<windows.h>".
10218
10219 2018-03-01  Georg Sauthoff  <mail@georg.so>
10220
10221         PR gdb/22888
10222         * gcore.in: Quote variables and switch interpreter to bash.
10223
10224 2018-03-01  Tom Tromey  <tom@tromey.com>
10225
10226         * dwarf2read.c (alloc_discriminant_info): Fix default_index
10227         assertion.  Add assertion for discriminant_index.
10228         (quirk_rust_enum): Use correct base type name in univariant case.
10229
10230 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
10231
10232         * record.c (get_call_history_modifiers): Return a
10233         record_print_flags.
10234         (cmd_record_call_history): Adjust.
10235         * record-btrace.c (record_btrace_call_history): Adjust.
10236         (record_btrace_call_history_range): Adjust.
10237         (record_btrace_call_history_from): Adjust.
10238         * target-debug.h (target_debug_print_record_print_flags): New.
10239         * target-delegates.c: Re-generate.
10240         * target.c (target_call_history): Change flags type.
10241         (target_call_history_from): Likewise.
10242         (target_call_history_range): Likewise.
10243         * target.h (struct target_ops) <target_call_history>: Likewise.
10244         (target_call_history_from): Likewise.
10245         (target_call_history_range): Likewise.
10246
10247 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
10248             Simon Marchi  <simon.marchi@polymtl.ca>
10249
10250         * common/common-utils.c: Include "sys/stat.h".
10251         (is_regular_file): Move here from "source.c"; change return
10252         type to "bool".
10253         * common/common-utils.h (is_regular_file): New prototype.
10254         * common/pathstuff.c (contains_dir_separator): New function.
10255         * common/pathstuff.h (contains_dir_separator): New prototype.
10256         * source.c: Don't include "sys/stat.h".
10257         (is_regular_file): Move to "common/common-utils.c".
10258
10259 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
10260
10261         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
10262         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
10263         * auto-load.c: Include "common/pathstuff.h".
10264         * common/common-def.h (current_directory): Move here.
10265         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
10266         function.
10267         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
10268         prototype.
10269         * common/pathstuff.c: New file.
10270         * common/pathstuff.h: New file.
10271         * compile/compile.c: Include "common/pathstuff.h".
10272         * defs.h (current_directory): Move to "common/common-defs.h".
10273         * dwarf2read.c: Include "common/pathstuff.h".
10274         * exec.c: Likewise.
10275         * guile/scm-safe-call.c: Likewise.
10276         * linux-thread-db.c: Likewise.
10277         * main.c: Likewise.
10278         * nto-tdep.c: Likewise.
10279         * objfiles.c: Likewise.
10280         * source.c: Likewise.
10281         * symtab.c: Likewise.
10282         * utils.c: Include "common/pathstuff.h".
10283         (gdb_realpath): Move to "common/pathstuff.c".
10284         (gdb_realpath_keepfile): Likewise.
10285         (gdb_abspath): Likewise.
10286         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
10287         (gdb_realpath_keepfile): Likewise.
10288         (gdb_abspath): Likewise.
10289
10290 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
10291
10292         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
10293         wildcard process pid for super_resume for kernels with a
10294         specific bug.
10295
10296 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
10297
10298         * compile/compile.c (get_args): Add additional comments
10299         explaining function.
10300
10301 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
10302             Tom Tromey  <tom@tromey.com>
10303
10304         * target.h (memory_write_request_s): Remove typedef.  Don't define
10305         VEC.
10306         (target_write_memory_blocks): Change argument to std::vector.
10307         (struct memory_write_request): Add constructor.
10308         * target-memory.c (compare_block_starting_address): Return bool.
10309         Change argument types.
10310         (claim_memory): Change arguments to use std::vector.
10311         (split_regular_and_flash_blocks, blocks_to_erase)
10312         (compute_garbled_blocks): Likewise.
10313         (cleanup_request_data, cleanup_write_requests_vector): Remove.
10314         (target_write_memory_blocks): Change argument to std::vector.
10315         * symfile.c (struct load_section_data): Add constructor and
10316         destructor.  Use std::vector for "requests".
10317         (struct load_progress_data): Add initializers.
10318         (load_section_callback): Update.  Use "new".
10319         (clear_memory_write_data): Remove.
10320         (generic_load): Update.
10321
10322 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
10323
10324         * arch/aarch64.h: Use common/tdesc.h.
10325
10326 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
10327
10328         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
10329         architecture with a 64-bit ABI.
10330
10331 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
10332
10333         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
10334         ahead of target description loading.
10335
10336 2018-02-26  Tom Tromey  <tom@tromey.com>
10337
10338         * stack.c (backtrace_command_1): Update.
10339         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
10340         of "flags".
10341         * python/py-framefilter.c (py_print_frame)
10342         (gdbpy_apply_frame_filter): Change type of "flags".
10343         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
10344         of "flags".
10345         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
10346         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
10347         * extension.h (enum frame_filter_flag): Rename from
10348         frame_filter_flags.
10349         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
10350         (apply_ext_lang_frame_filter): Change type of "flags".
10351         * extension.c (apply_ext_lang_frame_filter): Change type of
10352         "flags".
10353         * extension-priv.h (struct extension_language_ops)
10354         <apply_frame_filter>: Change type of "flags".
10355
10356 2018-02-26  Tom Tromey  <tom@tromey.com>
10357
10358         PR python/16497:
10359         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
10360         off-by-one in py_end computation.
10361         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
10362         PRINT_MORE_FRAMES.
10363         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
10364         constant.
10365
10366 2018-02-26  Tom Tromey  <tom@tromey.com>
10367
10368         * dwarf2read.c (struct variant_field): New.
10369         (struct nextfield) <variant>: New field.
10370         (dwarf2_add_field): Handle DW_TAG_variant_part.
10371         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
10372         discriminated union.
10373         (read_structure_type): Handle DW_TAG_variant_part.
10374         (handle_struct_member_die): New function, extracted from
10375         process_structure_scope.  Handle DW_TAG_variant.
10376         (process_structure_scope): Handle discriminated unions.  Call
10377         handle_struct_member_die.
10378
10379 2018-02-26  Tom Tromey  <tom@tromey.com>
10380
10381         * rust-lang.h (rust_last_path_segment): Declare.
10382         * rust-lang.c (rust_last_path_segment): Now public.  Change
10383         contract.
10384         (struct disr_info): Remove.
10385         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
10386         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
10387         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
10388         (rust_enum_p, rust_enum_variant): New function.
10389         (rust_underscore_fields): Remove "offset" parameter.
10390         (rust_print_enum): New function.
10391         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
10392         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
10393         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
10394         enums.
10395         (rust_internal_print_type): New function, from rust_print_type.
10396         Remove enum code.
10397         (rust_print_type): Call rust_internal_print_type.
10398         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
10399         Update enum handling.
10400         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
10401         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
10402         (rust_union_quirks): New functions.
10403         (process_full_comp_unit, process_full_type_unit): Call
10404         rust_union_quirks.
10405         (process_structure_scope): Update rust_unions if necessary.
10406
10407 2018-02-26  Tom Tromey  <tom@tromey.com>
10408
10409         * value.h (value_union_variant): Declare.
10410         * valops.c (value_union_variant): New function.
10411         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
10412         (struct discriminant_info): New.
10413         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
10414         enumerator.
10415         (struct main_type) <flag_discriminated_union>: New field.
10416
10417 2018-02-26  Tom Tromey  <tom@tromey.com>
10418
10419         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
10420         unittests/unpack-selftests.c.
10421         * unittests/unpack-selftests.c: New file.
10422         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
10423
10424 2018-02-26  Yao Qi  <yao.qi@linaro.org>
10425
10426         * dwarf2read.c (struct partial_die_info) <read>: New method.
10427         (read_partial_die): Remove the declaration.
10428         (load_partial_dies): Update.
10429         (partial_die_info::partial_die_info):
10430         (read_partial_die): Change it to partial_die_info::read.
10431
10432 2018-02-26  Yao Qi  <yao.qi@linaro.org>
10433
10434         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
10435         (fixup_partial_die): Remove declaration.
10436         (scan_partial_symbols): Update.
10437         (partial_die_parent_scope): Likewise.
10438         (partial_die_full_name): Likewise.
10439         (fixup_partial_die): Change it to partial_die_info::fixup.
10440
10441 2018-02-26  Yao Qi  <yao.qi@linaro.org>
10442
10443         * dwarf2read.c (read_partial_die): Update the declaration.
10444         (load_partial_dies): Caller update.
10445         (read_partial_die): Remove one argument abbrev_len.
10446
10447 2018-02-26  Yao Qi  <yao.qi@linaro.org>
10448
10449         * dwarf2read.c (struct partial_die_info): Add ctor, delete
10450         assignment operator.
10451         (load_partial_dies): Use ctor and copy ctor.
10452         (read_partial_die): Update.
10453         (dwarf2_cu::find_partial_die): Use ctor.
10454
10455 2018-02-26  Yao Qi  <yao.qi@linaro.org>
10456
10457         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
10458         (find_partial_die_in_comp_unit): Change it to
10459         dwarf2_cu::find_partial_die.
10460         (find_partial_die): Update.
10461
10462 2018-02-26  Yao Qi  <yao.qi@linaro.org>
10463
10464         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
10465         is NULL.
10466
10467 2018-02-26  Yao Qi  <yao.qi@linaro.org>
10468
10469         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
10470
10471 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
10472
10473         * arch/amd64.h: Use common/tdesc.h.
10474         * arch/i386.c: Likewise.
10475         * arch/i386.h: Likewise.
10476         * arch/tic6x.c: Likewise.
10477         * arch/tdesc.h: Move file from here...
10478         * common/tdesc.h: ...to here.
10479         * features/aarch64-core.c: Regenerate.
10480         * features/aarch64-fpu.c: Regenerate.
10481         * features/i386/32bit-avx.c: Regenerate.
10482         * features/i386/32bit-avx512.c: Regenerate.
10483         * features/i386/32bit-core.c: Regenerate.
10484         * features/i386/32bit-linux.c: Regenerate.
10485         * features/i386/32bit-mpx.c: Regenerate.
10486         * features/i386/32bit-pkeys.c: Regenerate.
10487         * features/i386/32bit-sse.c: Regenerate.
10488         * features/i386/64bit-avx.c: Regenerate.
10489         * features/i386/64bit-avx512.c: Regenerate.
10490         * features/i386/64bit-core.c: Regenerate.
10491         * features/i386/64bit-linux.c: Regenerate.
10492         * features/i386/64bit-mpx.c: Regenerate.
10493         * features/i386/64bit-pkeys.c: Regenerate.
10494         * features/i386/64bit-segments.c: Regenerate.
10495         * features/i386/64bit-sse.c: Regenerate.
10496         * features/i386/x32-core.c: Regenerate.
10497         * features/tic6x-c6xp.c: Regenerate.
10498         * features/tic6x-core.c: Regenerate.
10499         * features/tic6x-gp.c: Regenerate.
10500         * target-descriptions.c: Use common/tdesc.h.
10501         * target-descriptions.h: Likewise.
10502
10503 2018-02-24  Tom Tromey  <tom@tromey.com>
10504
10505         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
10506         (try_thread_db_load_from_dir, thread_db_load_search): Use
10507         std::string.
10508         (info_auto_load_libthread_db_compare): Return bool.  Change
10509         argument types.
10510         (info_auto_load_libthread_db): Use std::vector, std::string.
10511         Remove cleanups.
10512
10513 2018-02-24  Tom Tromey  <tom@tromey.com>
10514
10515         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
10516         std::string.
10517         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
10518         std::string*.
10519         * gdbarch.c: Rebuild.
10520         * gdbarch.h: Rebuild.
10521         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
10522         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
10523         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
10524         std::string*.
10525
10526 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
10527
10528         * gdbtypes.h (sect_offset): Change type to uint64_t.
10529         (sect_offset_str): New function.
10530         * dwarf2read.c (create_addrmap_from_aranges): Use
10531         sect_offset_str.
10532         (error_check_comp_unit_head): Likewise.
10533         (create_debug_type_hash_table): Likewise.
10534         (read_cutu_die_from_dwo): Likewise.
10535         (init_cutu_and_read_dies): Likewise.
10536         (init_cutu_and_read_dies_no_follow): Likewise.
10537         (process_psymtab_comp_unit_reader): Likewise.
10538         (partial_die_parent_scope): Likewise.
10539         (peek_die_abbrev): Likewise.
10540         (process_queue): Likewise.
10541         (dwarf2_physname): Likewise.
10542         (read_namespace_alias): Likewise.
10543         (read_import_statement): Likewise.
10544         (create_dwo_cu_reader): Likewise.
10545         (create_cus_hash_table): Likewise.
10546         (lookup_dwo_cutu): Likewise.
10547         (inherit_abstract_dies): Likewise.
10548         (read_func_scope): Likewise.
10549         (read_call_site_scope): Likewise.
10550         (dwarf2_add_member_fn): Likewise.
10551         (read_common_block): Likewise.
10552         (read_module_type): Likewise.
10553         (read_typedef): Likewise.
10554         (read_subrange_type): Likewise.
10555         (load_partial_dies): Likewise.
10556         (read_partial_die): Likewise.
10557         (find_partial_die): Likewise.
10558         (read_str_index): Likewise.
10559         (dwarf2_string_attr): Likewise.
10560         (build_error_marker_type): Likewise.
10561         (lookup_die_type): Likewise.
10562         (dump_die_shallow): Likewise.
10563         (follow_die_ref): Likewise.
10564         (dwarf2_fetch_die_loc_sect_off): Likewise.
10565         (dwarf2_fetch_constant_bytes): Likewise.
10566         (follow_die_sig): Likewise.
10567         (get_signatured_type): Likewise.
10568         (get_DW_AT_signature_type): Likewise.
10569         (dwarf2_find_containing_comp_unit): Likewise.
10570         (set_die_type): Likewise.
10571
10572 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
10573
10574         * arch/aarch64.c: Include "common-defs.h".
10575         * arch/amd64.c: Likewise.
10576         * arch/i386.c: Likewise.
10577
10578 2018-02-21  Tom Tromey  <tom@tromey.com>
10579
10580         * value.h: (extract_field_op): Update.
10581         * eval.c (extract_field_op): Return a const char *.
10582         * expression.h (parse_expression_for_completion): Update.
10583         * completer.c (complete_expression): Update.
10584         (add_struct_fields): Make fieldname const.
10585         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
10586         (mark_completion_tag, parse_exp_in_context_1): Update.
10587         (parse_expression_for_completion): Change "name" to
10588         unique_xmalloc_ptr*.
10589
10590 2018-02-21  Tom Tromey  <tom@tromey.com>
10591
10592         * infcall.c (call_function_by_hand_dummy): Use std::vector.
10593
10594 2018-02-21  Yao Qi  <yao.qi@linaro.org>
10595
10596         * avr-tdep.c (avr_read_pc): Change parameter type to
10597         readable_regcache.
10598         * gdbarch.sh (read_pc): Likewise.
10599         * gdbarch.c: Re-generated.
10600         * gdbarch.h: Re-generated.
10601         * hppa-tdep.c (hppa_read_pc): Change parameter type to
10602         readable_regcache.
10603         * ia64-tdep.c (ia64_read_pc): Likewise.
10604         * mips-tdep.c (mips_read_pc): Likewise.
10605         * spu-tdep.c (spu_read_pc): Likewise.
10606
10607 2018-02-21  Yao Qi  <yao.qi@linaro.org>
10608
10609         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
10610         * regcache-dump.c: New file.
10611         * regcache.c: Move register_dump to regcache-dump.c.
10612         (maintenance_print_registers): Likewise.
10613         (maintenance_print_raw_registers): Likewise.
10614         (maintenance_print_cooked_registers): Likewise.
10615         (maintenance_print_register_groups): Likewise.
10616         (maintenance_print_remote_registers): Likewise.
10617         (_initialize_regcache): Likewise.
10618         * regcache.h (register_dump): Moved from regcache.c.
10619
10620 2018-02-21  Yao Qi  <yao.qi@linaro.org>
10621
10622         * regcache.c (regcache::regcache): Update.
10623         (regcache::invalidate): Move it to detached_regcache::invalidate.
10624         (get_thread_arch_aspace_regcache): Update.
10625         (regcache::raw_update): Update.
10626         (regcache::cooked_read): Remove some code.
10627         (regcache::cooked_read_value): Likewise.
10628         (regcache::raw_write): Remove assert on m_readonly_p.
10629         (regcache::raw_supply_integer): Move it to
10630         detached_regcache::raw_supply_integer.
10631         (regcache::raw_supply_zeroed): Likewise.
10632         * regcache.h (detached_regcache) <raw_supply_integer>: New
10633         declaration.
10634         <raw_supply_zeroed, invalidate>: Likewise.
10635         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
10636         <invalidate>: Likewise.
10637         <m_readonly_p>: Removed.
10638
10639 2018-02-21  Yao Qi  <yao.qi@linaro.org>
10640
10641         * infcmd.c (get_return_value): Let stop_regs point to
10642         get_current_regcache.
10643         * regcache.c (regcache::regcache): Remove.
10644         (register_dump_reg_buffer): New class.
10645         (regcache_print): Adjust.
10646         * regcache.h (regcache): Remove constructors.
10647
10648 2018-02-21  Yao Qi  <yao.qi@linaro.org>
10649
10650         * regcache.c (class register_dump): New class.
10651         (register_dump_regcache, register_dump_none): New class.
10652         (register_dump_remote, register_dump_groups): New class.
10653         (regcache_print): Update.
10654         * regcache.h (regcache_dump_what): Move it to regcache.c.
10655         (regcache) <dump>: Remove.
10656
10657 2018-02-21  Yao Qi  <yao.qi@linaro.org>
10658
10659         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
10660          reg_buffer_rw *.
10661         (jit_unwind_reg_set_impl): Call raw_supply.
10662         (jit_frame_sniffer): Use reg_buffer_rw.
10663         * record-full.c (record_full_core_regbuf): Change its type.
10664         (record_full_core_open_1): Use reg_buffer_rw.
10665         (record_full_close): Likewise.
10666         (record_full_core_fetch_registers): Use regcache->raw_supply.
10667         (record_full_core_store_registers): Likewise.
10668         * regcache.c (regcache::get_register_status): Move it to
10669         reg_buffer.
10670         (regcache_raw_set_cached_value): Remove.
10671         (regcache::raw_set_cached_value): Remove.
10672         (regcache::raw_write): Call raw_supply.
10673         (regcache::raw_supply): Move it to reg_buffer_rw.
10674         * regcache.h (regcache_raw_set_cached_value): Remove.
10675         (reg_buffer_rw): New class.
10676
10677 2018-02-21  Yao Qi  <yao.qi@linaro.org>
10678
10679         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
10680         readonly_detached_regcache.
10681         (dummy_frame_prev_register): Use regcache->cooked_read.
10682         * frame.c (frame_save_as_regcache): Change return type.
10683         (frame_pop): Update.
10684         * frame.h (frame_save_as_regcache): Update declaration.
10685         * inferior.h (get_infcall_suspend_state_regcache): Update
10686         declaration.
10687         * infrun.c (infcall_suspend_state) <registers>: use
10688         readonly_detached_regcache.
10689         (save_infcall_suspend_state): Don't use regcache_dup.
10690         (get_infcall_suspend_state_regcache): Change return type.
10691         * linux-fork.c (struct fork_info) <savedregs>: Change to
10692         readonly_detached_regcache.
10693         <pc>: New field.
10694         (fork_save_infrun_state): Don't use regcache_dup.
10695         (info_checkpoints_command): Adjust.
10696         * mi/mi-main.c (register_changed_p): Update declaration.
10697         (mi_cmd_data_list_changed_registers): Use
10698         readonly_detached_regcache.
10699         (register_changed_p): Change parameter type to
10700         readonly_detached_regcache.
10701         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
10702         readonly_detached_regcache.
10703         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
10704         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
10705         New.
10706         (regcache::save): Move it to reg_buffer.
10707         (regcache::restore): Change parameter type.
10708         (regcache_dup): Remove.
10709         * regcache.h (reg_buffer) <save>: New method.
10710         (readonly_detached_regcache): New class.
10711         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
10712         readonly_detached_regcache.
10713         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
10714
10715 2018-02-21  Yao Qi  <yao.qi@linaro.org>
10716
10717         * frame.c (frame_save_as_regcache): Use regcache method save.
10718         (frame_pop): Use regcache method restore.
10719         * infrun.c (restore_infcall_suspend_state): Likewise.
10720         * linux-fork.c (fork_load_infrun_state): Likewise.
10721         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
10722         save.
10723         * regcache.c (regcache_save): Remove.
10724         (regcache::restore): More asserts.
10725         (regcache_cpy): Remove.
10726         * regcache.h (regcache_save): Remove the declaration.
10727         (regcache::restore): Move from private to public.
10728         Remove the friend declaration of regcache_cpy.
10729         (regcache_cpy): Remove declaration.
10730
10731 2018-02-21  Yao Qi  <yao.qi@linaro.org>
10732
10733         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
10734         parameter type to 'readable_regcache *'.
10735         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
10736         * arm-tdep.c (arm_neon_quad_read): Likewise.
10737         (arm_pseudo_read): Likewise.
10738         * avr-tdep.c (avr_pseudo_register_read): Likewise.
10739         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
10740         * frv-tdep.c (frv_pseudo_register_read): Likewise.
10741         * gdbarch.c: Re-generated.
10742         * gdbarch.h: Re-generated.
10743         * gdbarch.sh (pseudo_register_read): Change parameter type to
10744         'readable_regcache *'.
10745         (pseudo_register_read_value): Likewise.
10746         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
10747         (h8300_pseudo_register_read): Likewise.
10748         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
10749         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
10750         (i386_pseudo_register_read_into_value): Likewise.
10751         (i386_pseudo_register_read_value): Likewise.
10752         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
10753         declaration.
10754         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
10755         * m32c-tdep.c (m32c_raw_read): Likewise.
10756         (m32c_read_flg): Likewise.
10757         (m32c_banked_register): Likewise.
10758         (m32c_banked_read): Likewise.
10759         (m32c_sb_read): Likewise.
10760         (m32c_part_read): Likewise.
10761         (m32c_cat_read): Likewise.
10762         (m32c_r3r2r1r0_read): Likewise.
10763         (m32c_pseudo_register_read): Likewise.
10764         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
10765         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
10766         (mep_pseudo_cr64_read): Likewise.
10767         (mep_pseudo_register_read): Likewise.
10768         * mips-tdep.c (mips_pseudo_register_read): Likewise.
10769         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
10770         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
10771         * regcache.c (regcache::raw_read): Move it to readable_regcache.
10772         (regcache::cooked_read): Likewise.
10773         (regcache::cooked_read_value): Likewise.
10774         (regcache_cooked_read_signed):
10775         (regcache::cooked_read): Likewise.
10776         * regcache.h (readable_regcache): New class.
10777         (regcache): Inherit readable_regcache.  Move some methods to
10778         readable_regcache.
10779         * rl78-tdep.c (rl78_pseudo_register_read): Change
10780         parameter type to 'readable_regcache *'.
10781         * rs6000-tdep.c (do_regcache_raw_read): Remove.
10782         (e500_pseudo_register_read): Change parameter type to
10783         'readable_regcache *'.
10784         (dfp_pseudo_register_read): Likewise.
10785         (vsx_pseudo_register_read): Likewise.
10786         (efpr_pseudo_register_read): Likewise.
10787         * s390-tdep.c (s390_pseudo_register_read): Likewise.
10788         * sh-tdep.c (sh_pseudo_register_read): Likewise.
10789         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
10790         (sh64_pseudo_register_read): Likewise.
10791         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
10792         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
10793         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
10794         (spu_pseudo_register_read): Likewise.
10795         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
10796         (xtensa_pseudo_register_read): Likewise.
10797
10798 2018-02-21  Yao Qi  <yao.qi@linaro.org>
10799
10800         * regcache.c (regcache::regcache): Call reg_buffer ctor.
10801         (regcache::arch): Move it to reg_buffer::arch.
10802         (regcache::register_buffer): Likewise.
10803         (regcache::assert_regnum): Likewise.
10804         (regcache::num_raw_registers): Likewise.
10805         * regcache.h (reg_buffer): New class.
10806         (regcache): Inherit reg_buffer.
10807
10808 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
10809
10810         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
10811         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
10812
10813 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
10814
10815         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
10816
10817 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
10818
10819         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
10820         (SFILES): Remove common/*.c files.
10821         (COMMON_OBS): Remove some *.o files built from common/*.c files.
10822         * common/common.host: Add common reference.
10823         * configure.ac: Likewise.
10824         * configure: Regenerate.
10825
10826 2018-02-16  Yao Qi  <yao.qi@linaro.org>
10827
10828         * block.c (block_namespace_info): Inherit allocate_on_obstack.
10829         (block_initialize_namespace): Use new.
10830         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
10831         (dwarf2_free_objfile): Use delete.
10832         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
10833         (copy_type_recursive): Use new.
10834         * gdb_obstack.h (allocate_on_obstack): New.
10835
10836 2018-02-15  Yao Qi  <yao.qi@linaro.org>
10837
10838         PR gdb/22849
10839         * inferior.c (exit_inferior_1): Reset inf->control.
10840
10841 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
10842
10843         * ada-lang.c (ada_to_fixed_value_create): Delete advance
10844         declaration.
10845
10846 2018-02-14  Pedro Alves  <palves@redhat.com>
10847
10848         * frame-unwind.c (frame_unwind_try_unwinder): Always call
10849         frame_cleanup_after_sniffer on exception.
10850
10851 2018-02-14  Tom Tromey  <tom@tromey.com>
10852
10853         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
10854         const.
10855         (solib_bfd_open): Make pathname const.
10856         * solib.c (solib_bfd_open): Make pathname const.
10857         * solib-spu.c (spu_bfd_fopen): Make name const.
10858         (spu_bfd_open): Make pathname const.
10859         * solib-darwin.c (darwin_bfd_open): Make pathname const.
10860         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
10861
10862 2018-02-14  Tom Tromey  <tom@tromey.com>
10863
10864         * symfile.c (symfile_bfd_open): Update.
10865         * source.h (openp, source_full_path_of, find_and_open_source):
10866         Change argument type to unique_xmalloc_ptr.
10867         * source.c (openp): Take a unique_xmalloc_ptr.
10868         (source_full_path_of, find_and_open_source): Likewise.
10869         (open_source_file, symtab_to_fullname): Update.
10870         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
10871         unique_xmalloc_ptr.
10872         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
10873         (exec_file_find): Update.
10874         * psymtab.c (psymtab_to_fullname): Update.
10875         * nto-tdep.h (nto_find_and_open_solib): Update.
10876         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
10877         unique_xmalloc_ptr.
10878         * exec.c (exec_file_attach): Update.
10879         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
10880         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
10881
10882 2018-02-14  Tom Tromey  <tom@tromey.com>
10883
10884         * solib.c: Include source.h.
10885         * nto-tdep.c: Include source.h.
10886         * mi/mi-cmd-env.c: Include source.h.
10887         * infcmd.c: Include source.h.
10888         * exec.c: Include source.h.
10889         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
10890         (add_path, directory_switch, source_path, init_source_path): Move
10891         declarations...
10892         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
10893         (add_path, directory_switch, source_path, init_source_path):
10894         ...here.
10895
10896 2018-02-14  Tom Tromey  <tom@tromey.com>
10897
10898         * solist.h (exec_file_find, solib_find): Return
10899         unique_xmalloc_ptr.
10900         (solib_bfd_fopen): Take a const char *.
10901         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
10902         (exec_file_find, solib_find): Likewise.
10903         (solib_bfd_fopen): Do not take ownership of "pathname".
10904         (solib_bfd_open): Use unique_xmalloc_ptr.
10905         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
10906         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
10907         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
10908         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
10909
10910 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
10911
10912         * ada-lang.c (name_match_type_from_name): Remove reference to
10913         ada_name_for_lookup in function's documentation.
10914         * ada-lang.h (ada_name_for_lookup): Delete declaration.
10915
10916 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
10917
10918         * defs.h (enum openp_flags): New enum.
10919         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
10920         Move to enum openp_flags.
10921         (openp_flags): New enum flags.
10922         (openp): Change parameter type to openp_flags.
10923         * source.c (openp): Change parameter type to openp_flags.
10924         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
10925         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
10926
10927 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
10928
10929         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
10930         per-command.
10931
10932 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
10933
10934         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
10935         into...
10936         (class dwarf2_queue_guard): ...the destructor of this new class.
10937         (dw2_do_instantiate_symtab): Create instance of the new class
10938         dwarf2_queue_guard, remove cleanup.
10939
10940 2018-02-09  Tom Tromey  <tom@tromey.com>
10941
10942         * source.c (find_source_lines): Don't reference past the end of
10943         the vector.
10944
10945 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
10946
10947         * remote.c (remote_btrace_maybe_reopen): Change error message.
10948         * btrace.c (btrace_enable): Likewise.
10949         (parse_xml_btrace): Likewise.
10950         (parse_xml_btrace_conf): Likewise.
10951
10952 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
10953
10954         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
10955         (linux_enable_pt, linux_enable_bts): Call
10956         diagnose_perf_event_open_fail.
10957
10958 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
10959
10960         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
10961         Remove parameter and change return type.  Update callers.  Move it.
10962         (linux_enable_bts, linux_enable_pt): Improve error message.
10963         (linux_enable_pt): Remove zero buffer size check.
10964         (linux_enable_btrace): Improve error messages.  Remove NULL return
10965         check.
10966
10967 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
10968
10969         * btrace.c (btrace_enable): Remove target_supports_btrace call.
10970         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
10971         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
10972         (linux_supports_pt, linux_supports_btrace): Remove.
10973         (linux_enable_bts): Call cpu_supports_bts.
10974         * nat/linux-btrace.h (linux_supports_btrace): Remove.
10975         * remote.c (remote_supports_btrace): Remove.
10976         (init_remote_ops): Remove remote_supports_btrace.
10977         * target-delegates.c: Regenerated.
10978         * target.c (target_supports_btrace): Remove.
10979         * target.h (target_ops) <to_supports_btrace>: Remove
10980         (target_supports_btrace): Remove.
10981         * x86-linux-nat.c (x86_linux_create_target): Remove
10982         linux_supports_btrace.
10983
10984 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
10985
10986         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
10987         btrace failed.
10988         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
10989         exception and use message in own exception.
10990
10991 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
10992
10993         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
10994         (perf_event_pt_event_type): Use gdb_file_up.
10995         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
10996         scoped_fd, and scoped_mmap.
10997
10998 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
10999
11000         * common/scoped_mmap.h: New.
11001         * unittests/scoped_mmap-selftest.c: New.
11002         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11003         unittests/scoped_mmap-selftest.c.
11004
11005 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11006
11007         * common/scoped_fd.h: New.
11008         * unittests/scoped_fd-selftest.c: New.
11009         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11010         unittests/scoped_fd-selftest.c.
11011
11012 2018-02-09  Tom Tromey  <tom@tromey.com>
11013
11014         * auto-load.c (auto_load_section_scripts): Use
11015         gdb::unique_xmalloc_ptr.
11016
11017 2018-02-09  Tom Tromey  <tom@tromey.com>
11018
11019         * auto-load.c (execute_script_contents): Use std::string.
11020
11021 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
11022
11023         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
11024         Python function, rather than a new command.
11025
11026 2018-02-08  Tom Tromey  <tom@tromey.com>
11027
11028         * solib.c (solib_find_1): Use std::string.
11029         (solib_bfd_fopen): Use unique_xmalloc_ptr.
11030
11031 2018-02-08  Tom Tromey  <tom@tromey.com>
11032
11033         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
11034
11035 2018-02-08  Tom Tromey  <tom@tromey.com>
11036
11037         * source.c (find_source_lines): Use gdb::def_vector.
11038
11039 2018-02-08  Tom Tromey  <tom@tromey.com>
11040
11041         * macrocmd.c (struct temporary_macro_definition): New.
11042         (macro_define_command): Use temporary_macro_definition.  Remove
11043         cleanups.
11044         (free_macro_definition_ptr): Remove.
11045
11046 2018-02-08  Tom Tromey  <tom@tromey.com>
11047
11048         * macroexp.c (maybe_expand): Use std::string.
11049
11050 2018-02-08  Tom Tromey  <tom@tromey.com>
11051
11052         * macroexp.c (struct macro_buffer): Add initializers for some
11053         members.
11054         (init_buffer, init_shared_buffer, free_buffer)
11055         (free_buffer_return_text): Remove.
11056         (macro_buffer): New constructors.
11057         (~macro_buffer): New destructor.
11058         (macro_buffer::set_shared): New method.
11059         (macro_buffer::resize_buffer, macro_buffer::appendc)
11060         (macro_buffer::appendmem): Now methods, not free functions.
11061         (set_token, append_tokens_without_splicing, stringify)
11062         (macro_stringify): Update.
11063         (gather_arguments): Change return type.  Remove argc_p argument,
11064         add args_ptr argument.  Use std::vector.
11065         (substitute_args): Remove argc argument.  Accept std::vector.
11066         (expand): Update.  Use std::vector.
11067         (scan, macro_expand, macro_expand_next): Update.
11068
11069 2018-02-08  Tom Tromey  <tom@tromey.com>
11070
11071         * symtab.c (default_collect_symbol_completion_matches_break_on):
11072         Use unique_xmalloc_ptr.
11073         * macroscope.h: (sal_macro_scope, user_macro_scope)
11074         (default_macro_scope): Return unique_xmalloc_ptr.
11075         * macroscope.c (sal_macro_scope, user_macro_scope)
11076         (default_macro_scope): Return unique_xmalloc_ptr.
11077         * macroexp.h (macro_expand, macro_expand_once): Return
11078         unique_xmalloc_ptr.
11079         * macroexp.c (macro_expand, macro_expand_once): Return
11080         unique_xmalloc_ptr.
11081         * macrocmd.c (macro_expand_command, macro_expand_once_command)
11082         (info_macro_command, info_macros_command): Use
11083         unique_xmalloc_ptr.
11084         * compile/compile-c-support.c (write_macro_definitions): Use
11085         unique_xmalloc_ptr.
11086         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
11087
11088 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
11089
11090         * value.c (value_static_field): Assign field type instead of
11091         containing type when returning an optimized out value.
11092
11093 2018-02-06  Yao Qi  <yao.qi@linaro.org>
11094
11095         * ft32-tdep.c (ft32_read_pc): Remove.
11096         (ft32_write_pc): Remove.
11097         (ft32_gdbarch_init): Update.
11098         * m32r-tdep.c (m32r_read_pc): Remove.
11099         (m32r_gdbarch_init): Update.
11100         * mep-tdep.c (mep_read_pc): Remove.
11101         (mep_gdbarch_init): Update.
11102         * microblaze-tdep.c (microblaze_write_pc): Remove.
11103         (microblaze_gdbarch_init): Update.
11104         * mn10300-tdep.c (mn10300_read_pc): Remove.
11105         (mn10300_write_pc): Remove.
11106         (mn10300_gdbarch_init): Update.
11107         * moxie-tdep.c (moxie_read_pc): Remove.
11108         (moxie_write_pc): Remove.
11109         (moxie_gdbarch_init): Update.
11110
11111 2018-02-06  Yao Qi  <yao.qi@linaro.org>
11112
11113         * expprint.c (print_subexp_standard): Handle
11114         OP_F77_UNDETERMINED_ARGLIST.
11115         (dump_subexp_body_standard): Likewise.
11116
11117 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
11118
11119         * target-descriptions.c (tdesc_element_visitor) Add empty
11120         implementations.
11121         (tdesc_type): Move make_gdb_type from here.
11122         (tdesc_type_builtin): Likewise.
11123         (tdesc_type_vector): Likewise.
11124         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
11125         (make_gdb_type_struct): Move from tdesc_type_with_fields.
11126         (make_gdb_type_union): Likewise.
11127         (make_gdb_type_flags): Likewise.
11128         (make_gdb_type_enum): Likewise.
11129         (make_gdb_type): New function.
11130         (tdesc_register_type): Use static make_gdb_type.
11131
11132 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
11133
11134         * infcmd.c (default_print_one_register_info): Align natural-format
11135         column values consistently one under another.
11136         (pad_to_column): New function.
11137
11138 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
11139
11140         * dwarf2read.c (dwarf2_physname): Move commment.
11141
11142 2018-02-01  Leszek Swirski  <leszeks@google.com>
11143
11144         * varobj.c (varobj_formatted_print_options): Allow recursive
11145         pretty printing if pretty printing is enabled.
11146
11147 2018-02-01  Leszek Swirski  <leszeks@google.com>
11148
11149         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
11150         names after a structop as a filename.
11151
11152 2018-02-01  Yao Qi  <yao.qi@linaro.org>
11153
11154         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
11155         (arm_record_coproc_data_proc): Likewise.
11156
11157 2018-02-01  Yao Qi  <yao.qi@linaro.org>
11158
11159         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
11160
11161 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
11162
11163         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
11164         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
11165
11166 2018-01-31  Pedro Alves  <palves@redhat.com>
11167
11168         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
11169         * inflow.c (child_terminal_save_inferior): Wrap reference to
11170         tcgetpgrp in HAVE_TERMIOS_H.
11171         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
11172         _WIN32.
11173         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
11174         always iterate over all inferiors.
11175         (gdbsim_cntrl_c): Adjust.
11176         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
11177
11178 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
11179
11180         * gdbtypes.c (lookup_array_range_type): Make sure the array's
11181         index type is objfile-owned if the element type is as well.
11182
11183 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
11184
11185         GDB 8.1 released.
11186
11187 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
11188
11189         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
11190         "features/s390x-linux64.c".
11191         (_initialize_s390_linux_tdep): Remove initialization of tdescs
11192         s390_linux32 and s390x_linux64.
11193         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
11194         default tdesc.
11195         * s390-tdep.c: Include "features/s390-linux32.c" and
11196         "features/s390x-linux64.c".
11197         (s390_tdesc_valid): Add check for tdesc_has_registers.
11198         (s390_gdbarch_init): Make sure there is always a valid tdesc.
11199         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
11200         tdesc_s390x_linux64.
11201         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
11202         tdesc_s390x_linux64 to...
11203         * s390-tdep.h: ...here.
11204
11205 2018-01-30  Pedro Alves  <palves@redhat.com>
11206
11207         PR gdb/13211
11208         * config.in, configure: Regenerate.
11209         * configure.ac: Check for getpgid.
11210         * go32-nat.c (go32_pass_ctrlc): New.
11211         (go32_target): Install it.
11212         * inf-child.c (inf_child_target): Install
11213         child_terminal_save_inferior, child_pass_ctrlc and
11214         child_interrupt.
11215         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
11216         (inf_ptrace_target): No longer install it.
11217         * infcmd.c (interrupt_target_1): Adjust.
11218         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
11219         (child_interrupt): Declare.
11220         (inferior::terminal_state): New.
11221         * inflow.c (struct terminal_info): Update comments.
11222         (inferior_process_group): Delete.
11223         (terminal_is_ours): Delete.
11224         (gdb_tty_state): New.
11225         (child_terminal_init): Adjust.
11226         (is_gdb_terminal, sharing_input_terminal_1)
11227         (sharing_input_terminal): New functions.
11228         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
11229         Set the process's actual process group in the foreground if
11230         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
11231         mark terminal as the inferior's if not sharing GDB's terminal.
11232         Don't check attach_flag.
11233         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
11234         pass down a target_terminal_state.
11235         (child_terminal_save_inferior): New, factored out from ...
11236         (child_terminal_ours_1): ... this.  Handle
11237         target_terminal_state::is_ours_for_output.
11238         (child_interrupt, child_pass_ctrlc): New.
11239         (inflow_inferior_exit): Clear the inferior's terminal_state.
11240         (copy_terminal_info): Copy the inferior's terminal state.
11241         (_initialize_inflow): Remove reference to terminal_is_ours.
11242         * inflow.h (inferior_process_group): Delete.
11243         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
11244         * procfs.c (procfs_target): Don't install procfs_interrupt.
11245         (procfs_interrupt): Delete.
11246         * remote.c (remote_serial_quit_handler): Adjust.
11247         (remote_interrupt): Remove ptid parameter.  Adjust.
11248         * target-delegates.c: Regenerate.
11249         * target.c: Include "terminal.h".
11250         (target_terminal::terminal_state): Rename to ...
11251         (target_terminal::m_terminal_state): ... this.
11252         (target_terminal::init): Adjust.
11253         (target_terminal::inferior): Adjust to per-inferior
11254         terminal_state.
11255         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
11256         (target_terminal::ours, target_terminal::ours_for_output): Use
11257         target_terminal_is_ours_kind.
11258         (target_interrupt): Remove ptid parameter.  Adjust.
11259         (default_target_pass_ctrlc): Adjust.
11260         * target.h (target_ops::to_terminal_save_inferior): New field.
11261         (target_ops::to_interrupt): Remove ptid_t parameter.
11262         (target_interrupt): Remove ptid_t parameter.  Update comment.
11263         (target_pass_ctrlc): Update comment.
11264         * target/target.h (target_terminal_state): New scoped enum,
11265         factored out of ...
11266         (target_terminal::terminal_state): ... here.
11267         (target_terminal::inferior): Update comments.
11268         (target_terminal::restore_inferior): New.
11269         (target_terminal::is_inferior, target_terminal::is_ours)
11270         (target_terminal::is_ours_for_output): Adjust.
11271         (target_terminal::scoped_restore_terminal_state): Adjust to
11272         rename, and call restore_inferior() instead of inferior().
11273         (target_terminal::scoped_restore_terminal_state::m_state): Change
11274         type.
11275         (target_terminal::terminal_state): Rename to ...
11276         (target_terminal::m_terminal_state): ... this and change type.
11277
11278 2018-01-30  Pedro Alves  <palves@redhat.com>
11279
11280         * linux-nat.c (wait_for_signal): New function.
11281         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
11282         directly.
11283         (async_terminal_is_ours)
11284         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
11285         (linux_nat_add_target): Don't override
11286         to_terminal_inferior/to_terminal_ours.
11287
11288 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
11289
11290         * remote.c (remote_follow_fork): Don't call "detach_inferior".
11291
11292 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
11293
11294         * dwarf2read.c (free_dwo_files): Add forward-declaration.
11295         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
11296         dwarf2_per_objfile_free here.
11297         (dwarf2_per_objfile_free): Remove.
11298         (_initialize_dwarf2_read): Don't register
11299         dwarf2_per_objfile_free as a registry cleanup.
11300
11301 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
11302
11303         Avoid compilation errors in MinGW native builds
11304
11305         The error is triggered by including python-internal.h, and the
11306         error message is:
11307
11308              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
11309                       from build-gnulib/import/math.h:27,
11310                       from d:/usr/Python26/include/pyport.h:235,
11311                       from d:/usr/Python26/include/Python.h:58,
11312                       from python/python-internal.h:94,
11313                       from python/py-arch.c:24:
11314              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
11315         using ::hypot;
11316                 ^~~~~
11317
11318         This happens because Python headers define 'hypot' to expand t
11319         '_hypot' in the Windows builds.
11320         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
11321         'hypoth'.  This avoids a compilation error.
11322
11323 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
11324
11325         * MAINTAINERS (Write After Approval): Fix ordering.
11326
11327 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
11328
11329         * MAINTAINERS (Write After Approval): Add Alan Hayward.
11330
11331 2018-01-26  Alan Modra  <amodra@gmail.com>
11332
11333         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
11334         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
11335         Remove nop.  Make const.  Comment.
11336         (powerpc32_plt_stub_so_2): New.
11337         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
11338         Correct count.  Update uses.
11339         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
11340         Move common code reading PLT entry word.  Correct
11341         powerpc32_plt_stub PLT address calculation.
11342         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
11343         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
11344         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
11345         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
11346         (ppc64_standard_linkage8): Likewise.
11347         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
11348         Correct insns description.
11349         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
11350
11351 2018-01-24  Pedro Alves  <palves@redhat.com>
11352
11353         GCC PR libstdc++/83906
11354         * gdbtypes.c (operator==(const dynamic_prop &,
11355         const dynamic_prop &)): New.
11356         (operator==(const range_bounds &, const range_bounds &)): New.
11357         (check_types_equal): Use them instead of memcmp.
11358         * gdbtypes.h (operator==(const dynamic_prop &,
11359         const dynamic_prop &)): Declare.
11360         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
11361         (operator==(const range_bounds &, const range_bounds &)): Declare.
11362         (operator!=(const range_bounds &, const range_bounds &)): Declare.
11363
11364 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
11365
11366         * s390-linux-tdep.c (s390_record_address_mask)
11367         (s390_record_calc_disp_common, s390_record_calc_disp)
11368         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
11369         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
11370         (s390_process_record): Move to s390-tdep.c.
11371         (s390_linux_init_abi_any): Adjust.
11372         * s390-tdep.c (s390_record_address_mask)
11373         (s390_record_calc_disp_common, s390_record_calc_disp)
11374         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
11375         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
11376         (s390_process_record): Moved from s390-linux-tdep.c
11377         (s390_gdbarch_init): Adjust.
11378
11379 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
11380
11381         * s390-linux-nat.c (s390-tdep.h): New include.
11382         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
11383         (HFILES_NO_SRCDIR): Add s390-tdep.h.
11384         (ALLDEPFILES): Add s390-tdep.c.
11385         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
11386         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
11387         * s390-tdep.h: ...this.  New file.
11388         * s390-linux-tdep.c (s390-tdep.h): New include.
11389         (_initialize_s390_tdep): Rename to...
11390         (_initialize_s390_linux_tdep): ...this and adjust.
11391         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
11392         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
11393         s390-tdep.h.
11394         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
11395         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
11396         (s390_is_partial_instruction, s390_software_single_step)
11397         (is_non_branch_ril, s390_displaced_step_copy_insn)
11398         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
11399         (s390_prologue_data, s390_addr, s390_store, s390_load)
11400         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
11401         (s390_register_call_saved, s390_guess_tracepoint_registers)
11402         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
11403         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
11404         (s390_pseudo_register_name, s390_pseudo_register_type)
11405         (s390_pseudo_register_read, s390_pseudo_register_write)
11406         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
11407         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
11408         (s390_addr_bits_remove, s390_address_class_type_flags)
11409         (s390_address_class_type_flags_to_name)
11410         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
11411         (s390_function_arg_float, s390_function_arg_vector)
11412         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
11413         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
11414         (s390_frame_align, s390_register_return_value, s390_return_value)
11415         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
11416         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
11417         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
11418         (s390_trad_frame_prev_register, s390_unwind_cache)
11419         (s390_prologue_frame_unwind_cache)
11420         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
11421         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
11422         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
11423         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
11424         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
11425         (s390_frame_base_address, s390_local_base_address)
11426         (s390_frame_base, s390_gcc_target_options)
11427         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
11428         (s390_validate_reg_range, s390_tdesc_valid)
11429         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
11430         * s390-tdep.c: ...this.  New file.
11431
11432 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
11433
11434         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
11435         (s390_process_record, s390_gdbarch_tdep_alloc)
11436         (s390_linux_init_abi_any): Use/set new hook.
11437
11438 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
11439
11440         * s390-linux-tdep.c (osabi.h): New include.
11441         (s390_linux_init_abi_31, s390_linux_init_abi_64)
11442         (s390_linux_init_abi_any): New functions.
11443         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
11444
11445 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
11446
11447         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
11448         tdesc_has_registers check
11449
11450 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
11451
11452         * s390-linux-tdep.c (s390_tdesc_valid): New function.
11453         (s390_validate_reg_range): New macro.
11454         (s390_gdbarch_init): Adjust.
11455
11456 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
11457
11458         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
11459         (s390_gdbarch_tdep_alloc): Adjust.
11460         (s390_gdbarch_init): Adjust.
11461
11462 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
11463
11464         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
11465         <have_tdb>: Change type to bool.
11466         (s390_gdbarch_tdep_alloc): Adjust.
11467         (s390_gdbarch_init): Adjust.
11468
11469 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
11470
11471         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
11472         (gdbarch_tdep) <have_upper, have_vx>: New fields.
11473         (s390_gdbarch_tdep_alloc): New function.
11474         (s390_gdbarch_init): Allocate tdep at start and use its fields
11475         instead of separate variables.
11476
11477 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
11478
11479         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
11480         when looking for cached gdbarch and add comment for remaining.
11481
11482 2018-01-22  Pedro Alves  <palves@redhat.com>
11483             Sergio Durigan Junior  <sergiodj@redhat.com>
11484
11485         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
11486         case.
11487
11488 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
11489
11490         * MAINTAINERS: Update my company e-mail address.
11491
11492 2018-01-22  Yao Qi  <yao.qi@linaro.org>
11493
11494         * regcache.c (cooked_write_test): New function.
11495         (_initialize_regcache): Register the test.
11496
11497 2018-01-22  Yao Qi  <yao.qi@linaro.org>
11498
11499         * ia64-tdep.c (ia64_pseudo_register_read): Call
11500         regcache->cooked_read instead of regcache_cooked_read_unsigned.
11501         * m32c-tdep.c (m32c_cat_read): Likewise.
11502         (m32c_r3r2r1r0_read): Likewise.
11503         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
11504         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
11505
11506 2018-01-22  Yao Qi  <yao.qi@linaro.org>
11507
11508         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
11509         method raw_read instead of regcache_raw_read.
11510         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
11511         * arm-tdep.c (arm_neon_quad_read): Likewise.
11512         * avr-tdep.c (avr_pseudo_register_read): Likewise.
11513         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
11514         * frv-tdep.c (frv_pseudo_register_read): Likewise.
11515         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
11516         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
11517         (i386_pseudo_register_read_into_value): Likewise.
11518         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
11519         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
11520         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
11521         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
11522         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
11523         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
11524         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
11525         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
11526         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
11527
11528 2018-01-22  Yao Qi  <yao.qi@linaro.org>
11529
11530         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
11531         * configure.tgt: Remove target mt.
11532         * mt-tdep.c: Remove.
11533         * regcache.c (cooked_read_test): Remove the check for mt.
11534
11535 2018-01-22  Yao Qi  <yao.qi@linaro.org>
11536
11537         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
11538         instead of gdbarch_pseudo_register_read_value.
11539
11540 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
11541
11542         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
11543         language is Ada.
11544
11545 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
11546
11547         * linespec.c (create_sals_line_offset): Remove code that preserved
11548         the symtab_and_line's line number.
11549
11550 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
11551
11552         * varobj.c (varobj_create): Don't set valid_block when creating a
11553         floating varobj.
11554
11555 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
11556
11557         * varobj.c (varobj_create): Remove out of date comment.
11558
11559 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
11560
11561         PR mi/20395
11562         * ada-exp.y (write_var_from_sym): Pass extra parameter when
11563         updating innermost block.
11564         * parse.c (innermost_block_tracker::update): Take extra type
11565         parameter, and check types match before updating innermost block.
11566         (write_dollar_variable): Update innermost block for registers.
11567         * parser-defs.h (enum innermost_block_tracker_type): New enum.
11568         (innermost_block_tracker::innermost_block_tracker): Initialise
11569         m_types member.
11570         (innermost_block_tracker::reset): Take type parameter.
11571         (innermost_block_tracker::update): Take type parameter, and pass
11572         type through as needed.
11573         (innermost_block_tracker::m_types): New member.
11574         * varobj.c (varobj_create): Pass type when reseting innermost
11575         block.
11576
11577 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
11578
11579         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
11580         * ada-lang.c (resolve_subexp): Likewise.
11581         * breakpoint.c (set_breakpoint_condition) Likewise.
11582         (watch_command_1) Likewise.
11583         * c-exp.y (variable): Likewise.
11584         * d-exp.y (PrimaryExpression): Likewise.
11585         * f-exp.y (variable): Likewise.
11586         * go-exp.y (variable): Likewise.
11587         * m2-exp.y (variable): Likewise.
11588         * objfiles.c (objfile::~objfile): Likewise.
11589         * p-exp.y (variable): Likewise.
11590         * parse.c (innermost_block): Change type.
11591         * parser-defs.h (class innermost_block_tracker): New.
11592         (innermost_block): Change to innermost_block_tracker.
11593         * printcmd.c (display_command): Switch to innermost_block API.
11594         (do_one_display): Likewise.
11595         * rust-exp.y (do_one_display): Likewise.
11596         * symfile.c (clear_symtab_users): Likewise.
11597         * varobj.c (varobj_create): Switch to innermost_block API, replace
11598         use of innermost_block with block stored on varobj object.
11599
11600 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
11601
11602         * expression.h (innermost_block): Remove declaration.
11603         * varobj.c: Add 'parser-defs.h' include.
11604
11605 2018-01-19  Tom Tromey  <tom@tromey.com>
11606
11607         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
11608         symbols in the static and global blocks.
11609
11610 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
11611
11612         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
11613         gdb_ptrace.h, and move including gdb_wait.h ...
11614         * nat/linux-ptrace.h: ... to here.
11615
11616 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
11617
11618         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
11619         inf_ptrace_detach_success.
11620         (inf_ptrace_detach_success): Add inferior parameter, use it
11621         instead of inferior_ptid, pass it to detach_inferior.
11622         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
11623         parameter.
11624         * inferior.c (detach_inferior): Add overload that takes an
11625         inferior object.
11626         * inferior.h (detach_inferior): Likewise.
11627         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
11628         use inferior_ptid, adjust call to inf_ptrace_detach_success.
11629         * linux-thread-db.c (thread_db_detach): Use inf parameter.
11630
11631 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
11632
11633         * target.h (struct target_ops) <to_detach>: Add inferior
11634         parameter.
11635         (target_detach): Likewise.
11636         * target.c (dispose_inferior): Pass inferior down.
11637         (target_detach): Pass inferior down.  Assert that it is equal to
11638         the current inferior.
11639         * aix-thread.c (aix_thread_detach): Pass inferior down.
11640         * corefile.c (core_file_command): Pass current_inferior() down.
11641         * corelow.c (core_detach): Add inferior parameter.
11642         * darwin-nat.c (darwin_detach): Likewise.
11643         * gnu-nat.c (gnu_detach): Likewise.
11644         * inf-ptrace.c (inf_ptrace_detach): Likewise.
11645         * infcmd.c (detach_command): Pass current_inferior() down to
11646         target_detach.
11647         * infrun.c (follow_fork_inferior): Pass parent_inf to
11648         target_detach.
11649         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
11650         target_detach.
11651         * linux-nat.c (linux_nat_detach): Add inferior parameter.
11652         * linux-thread-db.c (thread_db_detach): Likewise.
11653         * nto-procfs.c (procfs_detach): Likewise.
11654         * procfs.c (procfs_detach): Likewise.
11655         * record.c (record_detach): Likewise.
11656         * record.h (struct inferior): Forward-declare.
11657         (record_detach): Add inferior parameter.
11658         * remote-sim.c (gdbsim_detach): Likewise.
11659         * remote.c (remote_detach_1): Likewise.
11660         (remote_detach): Likewise.
11661         (extended_remote_detach): Likewise.
11662         * sol-thread.c (sol_thread_detach): Likewise.
11663         * target-debug.h (target_debug_print_inferior_p): New macro.
11664         * target-delegates.c: Re-generate.
11665         * top.c (kill_or_detach): Pass inferior down to target_detach.
11666         * windows-nat.c (windows_detach): Add inferior parameter.
11667
11668 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
11669
11670         * target.h (struct target_ops) <to_detach>: Remove args
11671         parameter.
11672         (target_detach): Likewise.
11673         * target.c (dispose_inferior): Adjust.
11674         (target_detach): Remove args parameter, adjust.
11675         * aix-thread.c (aix_thread_detach): Adjust.
11676         * corefile.c (core_file_command): Adjust.
11677         * corelow.c (core_detach): Adjust.
11678         * darwin-nat.c (darwin_detach): Adjust.
11679         * gnu-nat.c (gnu_detach): Adjust.
11680         * inf-ptrace.c (inf_ptrace_detach): Adjust.
11681         * infcmd.c (detach_command): Adjust
11682         * infrun.c (follow_fork_inferior): Adjust.
11683         (handle_vfork_child_exec_or_exit): Adjust.
11684         * linux-fork.c (linux_fork_detach): Remove args parameter.
11685         * linux-fork.h (linux_fork_detach): Likewise.
11686         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
11687         * linux-thread-db.c (thread_db_detach): Likewise.
11688         * nto-procfs.c (procfs_detach): Likewise.
11689         * procfs.c (procfs_detach): Likewise.
11690         (do_detach): Remove signo parameter.
11691         * record.c (record_detach): Remove args parameter.
11692         * record.h (record_detach): Likewise.
11693         * remote-sim.c (gdbsim_detach): Likewise.
11694         * remote.c (remote_detach_1): Likewise.
11695         (remote_detach): Likewise.
11696         (extended_remote_detach): Likewise.
11697         * sol-thread.c (sol_thread_detach): Likewise.
11698         * target-delegates.c: Re-generate.
11699         * top.c (struct qt_args) <args>: Remove field.
11700         (kill_or_detach): Don't pass args.
11701         (quit_force): Don't set args.
11702         * windows-nat.c (windows_detach): Remove args parameter.
11703
11704 2018-01-19  Yao Qi  <yao.qi@linaro.org>
11705
11706         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
11707         (arm_linux_init_abi): Install it.
11708
11709 2018-01-19  Yao Qi  <yao.qi@linaro.org>
11710
11711         * osabi.c (gdb_osabi_names): Extend the regexp for
11712         arm-linux-gnueabihf.
11713
11714 2018-01-18  Yao Qi  <yao.qi@linaro.org>
11715
11716         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
11717         m_abbrevs.
11718         (abbrev_table::add_abbrev): Update.
11719         (abbrev_table::lookup_abbrev): Update.
11720
11721 2018-01-18  Yao Qi  <yao.qi@linaro.org>
11722
11723         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
11724
11725 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
11726
11727         * compile/compile.c (compile_to_object): Convert "triplet_rx"
11728         to "std::string".
11729
11730 2018-01-17  Tom Tromey  <tom@tromey.com>
11731
11732         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
11733
11734 2018-01-17  Tom Tromey  <tom@tromey.com>
11735
11736         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
11737         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
11738         (create_array_type_with_stride): Update.
11739         * dwarf2read.c (set_die_type): Update.
11740
11741 2018-01-17  Tom Tromey  <tom@tromey.com>
11742
11743         * dwarf2read.c (delayed_method_info): Remove typedef.
11744         (dwarf2_cu::method_info): Now a std::vector.
11745         (add_to_method_list): Update.
11746         (free_delayed_list): Remove.
11747         (compute_delayed_physnames): Update.
11748         (process_full_comp_unit, process_full_type_unit): Clear the method
11749         list.  Remove cleanups.
11750         (psymtab_include_file_name): Add name_holder parameter.  Use
11751         unique_xmalloc_ptr.
11752         (dwarf_decode_lines): Update.
11753
11754 2018-01-17  Tom Tromey  <tom@tromey.com>
11755             Simon Marchi  <simon.marchi@ericsson.com>
11756
11757         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
11758         (dwarf2_per_objfile::free_cached_comp_units)
11759         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
11760         (init_cutu_and_read_dies_no_follow): Update.
11761         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
11762         (dwarf2_cu::~dwarf2_cu): New.
11763         (free_heap_comp_unit, free_stack_comp_unit): Remove.
11764         (age_cached_comp_units, free_one_cached_comp_unit): Update.
11765
11766 2018-01-17  Tom Tromey  <tom@tromey.com>
11767             Simon Marchi  <simon.marchi@ericsson.com>
11768
11769         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
11770         (struct die_reader_specs) <abbrev_table>: New member.
11771         (struct abbrev_table): Add constructor.
11772         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
11773         <abbrev_obstack>: Now an auto_obstack.
11774         (abbrev_table_up): New typedef.
11775         (init_cu_die_reader): Add abbrev_table parameter.
11776         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
11777         Add result_dwo_abbrev_table.
11778         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
11779         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
11780         Update.
11781         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
11782         parameter.
11783         (skip_children): Update.
11784         (abbrev_table::alloc_abbrev): Rename from
11785         abbrev_table_alloc_abbrev.
11786         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
11787         (abbrev_table::lookup_abbrev): Rename from
11788         abbrev_table_lookup_abbrev.
11789         (abbrev_table_read_table): Return abbrev_table_up.
11790         (abbrev_table_free, abbrev_table_free_cleanup)
11791         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
11792         (load_partial_dies): Update.
11793
11794 2018-01-17  Tom Tromey  <tom@tromey.com>
11795
11796         * dwarf2read.c (dwarf2_compute_name): Update comment.
11797         (read_func_scope, read_variable): Update.
11798         (new_symbol): Remove.
11799         (new_symbol_full): Rename to new_symbol.
11800
11801 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
11802
11803         PR gdb/16577
11804         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
11805         a warning instead of throwing an error, set section size to 0 and return
11806         NULL.
11807         * gdb_bfd.h (gdb_bfd_map_section): Update description.
11808
11809 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
11810
11811         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
11812         std::string.
11813         (linux_ptrace_attach_fail_reason_string): Likewise.
11814         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
11815         Likewise.
11816         (linux_ptrace_attach_fail_reason_string): Likewise.
11817         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
11818
11819 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
11820
11821         * linux-nat.c (linux_nat_attach): Remove xstrdup.
11822
11823 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
11824
11825         PR gdb/21559
11826         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
11827         checking for fs_base/gs_base fields in struct user_regs_struct.
11828         * configure: Regenerate.
11829
11830 2018-01-17  Yao Qi  <yao.qi@linaro.org>
11831
11832         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
11833         function.
11834         (aarch64_linux_init_abi): Install it to gdbarch hook
11835         gcc_target_options.
11836
11837 2018-01-15  Pedro Alves  <palves@redhat.com>
11838
11839         * common/signals-state-save-restore.c
11840         (save_original_signals_state): Fix typos.
11841
11842 2017-01-12  Tom Tromey  <tom@tromey.com>
11843             Sergio Durigan Junior  <sergiodj@redhat.com>
11844
11845         * Makefile.in (install-only): Install gdb-add-index.
11846
11847 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
11848
11849         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
11850
11851 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11852
11853         * infrun.c (keep_going_pass_signal): Clear step-over info when
11854         insert_breakpoints fails.
11855
11856 2018-01-11  Pedro Alves  <palves@redhat.com>
11857
11858         PR gdb/22583
11859         * infrun.c (resume): Rename to ...
11860         (resume_1): ... this.
11861         (resume): Reimplement as wrapper around resume_1.
11862
11863 2018-01-11  Pedro Alves  <palves@redhat.com>
11864
11865         PR remote/22597
11866         * remote.c (remote_parse_stop_reply): Default to the last-set
11867         general thread instead of to 'magic_null_ptid'.
11868
11869 2018-01-10  Pedro Alves  <palves@redhat.com>
11870
11871         * language.h (language_get_symbol_name_matcher): Rename ...
11872         (get_symbol_name_matcher): ... this.
11873         * language.c (language_get_symbol_name_matcher): Ditto.
11874         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
11875         callers adjusted.
11876
11877 2018-01-10  Pedro Alves  <palves@redhat.com>
11878
11879         PR gdb/22670
11880         * dwarf2read.c
11881         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
11882         Adjust to use language_get_symbol_name_matcher instead of
11883         language_defn::la_get_symbol_name_matcher.
11884         * language.c (language_get_symbol_name_matcher): If in Ada mode
11885         and the lookup name is a verbatim match, return Ada's matcher.
11886         * language.h (language_get_symbol_name_matcher): Adjust comment.
11887         (ada_lookup_name_info::verbatim_p):: New method.
11888
11889 2018-01-10  Pedro Alves  <palves@redhat.com>
11890
11891         PR gdb/22670
11892         * ada-lang.c (ada_collect_symbol_completion_matches): If the
11893         minsym's language is language_auto or language_cplus, pass down
11894         language_ada instead.
11895         * symtab.c (compare_symbol_name): Don't frob symbol language here.
11896
11897 2018-01-10  Pedro Alves  <palves@redhat.com>
11898
11899         PR gdb/22670
11900         * minsyms.c (linkage_name_str): New function.
11901         (iterate_over_minimal_symbols): Use it.
11902
11903 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
11904
11905         * NEWS: Document that 'info proc' now works on FreeBSD.
11906
11907 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
11908
11909         * configure.ac: Check for kinfo_getfile in libutil.
11910         * configure: Regenerate.
11911         * config.in: Regenerate.
11912         * fbsd-nat.c: Include "fbsd-tdep.h".
11913         (fbsd_fetch_cmdline): New.
11914         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
11915         rather than calling error.
11916         (fbsd_info_proc): New.
11917         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
11918         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
11919         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
11920
11921 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
11922
11923         * fbsd-nat.c (struct free_deleter): Remove.
11924         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
11925
11926 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
11927
11928         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
11929         NULL for an empty pathname.
11930
11931 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
11932
11933         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
11934         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
11935         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
11936         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
11937         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
11938         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
11939         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
11940         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
11941         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
11942         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
11943         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
11944         (fbsd_core_fetch_timeval, fbsd_print_sigset)
11945         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
11946         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
11947         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
11948
11949 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
11950
11951         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
11952         (gnu_xfer_auxv): New function.
11953         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
11954         TARGET_OBJECT_AUXV.
11955
11956 2018-01-08  Yao Qi  <yao.qi@linaro.org>
11957             Simon Marchi  <simon.marchi@ericsson.com>
11958
11959         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
11960         common/selftest.c.
11961         (COMMON_OBS): Remove selftest.o.
11962         * configure.ac: Append selftest-arch.c and common/selftest.c to
11963         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
11964         * configure: Re-generated.
11965         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
11966         GDB_SELF_TEST.
11967         (maintenance_info_selftests): Likewise.
11968
11969 2018-01-08  Xavier Roirand  <roirand@adacore.com>
11970
11971         * ada-valprint.c (val_print_packed_array_elements): Use
11972         proper number of elements when printing an array indexed
11973         by an enumeration type.
11974
11975 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
11976
11977         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
11978         (dw2_get_file_names_reader): Adjust.
11979         (lookup_dwo_signatured_type): Adjust.
11980         (lookup_dwp_signatured_type): Adjust.
11981         (lookup_signatured_type): Adjust.
11982         (create_type_unit_group): Adjust.
11983         (get_type_unit_group): Adjust.
11984         (process_psymtab_comp_unit_reader): Adjust.
11985         (build_type_psymtabs_reader): Adjust.
11986         (scan_partial_symbols): Adjust.
11987         (add_partial_symbol): Adjust.
11988         (add_partial_subprogram): Adjust.
11989         (peek_die_abbrev): Adjust.
11990         (fixup_go_packaging): Adjust.
11991         (process_imported_unit_die): Adjust.
11992         (dwarf2_compute_name): Adjust.
11993         (dwarf2_physname): Adjust.
11994         (read_import_statement): Adjust.
11995         (handle_DW_AT_stmt_list): Adjust.
11996         (read_file_scope): Adjust.
11997         (read_func_scope): Adjust.
11998         (read_lexical_block_scope): Adjust.
11999         (read_call_site_scope): Adjust.
12000         (read_variable): Adjust.
12001         (dwarf2_rnglists_process): Adjust.
12002         (dwarf2_ranges_process): Adjust.
12003         (dwarf2_ranges_read): Adjust.
12004         (dwarf2_get_pc_bounds): Adjust.
12005         (dwarf2_record_block_ranges): Adjust.
12006         (dwarf2_add_field): Adjust.
12007         (dwarf2_add_member_fn): Adjust.
12008         (read_structure_type): Adjust.
12009         (process_structure_scope): Adjust.
12010         (read_enumeration_type): Adjust.
12011         (read_array_type): Adjust.
12012         (mark_common_block_symbol_computed): Adjust.
12013         (read_common_block): Adjust.
12014         (read_namespace_type): Adjust.
12015         (read_namespace): Adjust.
12016         (read_module_type): Adjust.
12017         (read_tag_pointer_type): Adjust.
12018         (read_tag_ptr_to_member_type): Adjust.
12019         (read_tag_string_type): Adjust.
12020         (read_subroutine_type): Adjust.
12021         (read_typedef): Adjust.
12022         (read_base_type): Adjust.
12023         (attr_to_dynamic_prop): Adjust.
12024         (read_subrange_type): Adjust.
12025         (read_unspecified_type): Adjust.
12026         (dwarf2_read_abbrevs): Adjust.
12027         (load_partial_dies): Adjust.
12028         (read_partial_die): Adjust.
12029         (find_partial_die): Adjust.
12030         (guess_partial_die_structure_name): Adjust.
12031         (fixup_partial_die): Adjust.
12032         (read_attribute_value): Adjust.
12033         (read_addr_index): Adjust.
12034         (read_addr_index_from_leb128): Adjust.
12035         (read_str_index): Adjust.
12036         (dwarf2_string_attr): Adjust.
12037         (get_debug_line_section): Adjust.
12038         (dwarf_decode_line_header): Adjust.
12039         (lnp_state_machine::check_line_address): Adjust.
12040         (dwarf_decode_lines_1): Adjust.
12041         (dwarf_decode_lines): Adjust.
12042         (dwarf2_start_symtab): Adjust.
12043         (var_decode_location): Adjust.
12044         (new_symbol_full): Adjust.
12045         (dwarf2_const_value_data): Adjust.
12046         (dwarf2_const_value_attr): Adjust.
12047         (dwarf2_const_value): Adjust.
12048         (die_type): Adjust.
12049         (die_containing_type): Adjust.
12050         (build_error_marker_type): Adjust.
12051         (lookup_die_type): Adjust.
12052         (guess_full_die_structure_name): Adjust.
12053         (anonymous_struct_prefix): Adjust.
12054         (determine_prefix): Adjust.
12055         (dwarf2_name): Adjust.
12056         (follow_die_ref_or_sig): Adjust.
12057         (follow_die_offset): Adjust.
12058         (follow_die_ref): Adjust.
12059         (follow_die_sig_1): Adjust.
12060         (follow_die_sig): Adjust.
12061         (get_signatured_type): Adjust.
12062         (get_DW_AT_signature_type): Adjust.
12063         (decode_locdesc): Adjust.
12064         (dwarf_decode_macros): Adjust.
12065         (cu_debug_loc_section): Adjust.
12066         (fill_in_loclist_baton): Adjust.
12067         (dwarf2_symbol_mark_computed): Adjust.
12068         (init_one_comp_unit): Don't assign
12069         dwarf2_cu::dwarf2_per_objfile.
12070         (set_die_type): Adjust.
12071
12072 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
12073
12074         * dwarf2read.c (struct mapped_debug_names): Add constructor.
12075         <dwarf2_per_objfile>: New field.
12076         (dwarf2_per_objfile): Remove global.
12077         (get_dwarf2_per_objfile): New function.
12078         (set_dwarf2_per_objfile): New function.
12079         (dwarf2_build_psymtabs_hard): Change objfile parameter to
12080         dwarf2_per_objfile.
12081         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
12082         (read_abbrev_offset): Likewise.
12083         (read_indirect_string): Likewise.
12084         (read_indirect_line_string): Likewise.
12085         (read_indirect_string_at_offset): Likewise.
12086         (read_indirect_string_from_dwz): Likewise.
12087         (dwarf2_find_containing_comp_unit): Change objfile parameter to
12088         dwarf2_per_objfile.
12089         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
12090         (create_all_comp_units): Change objfile parameter to
12091         dwarf2_per_objfile.
12092         (create_all_type_units): Likewise.
12093         (process_queue): Add dwarf2_per_objfile parameter.
12094         (read_and_check_comp_unit_head): Likewise.
12095         (lookup_dwo_unit_in_dwp): Likewise.
12096         (get_dwp_file): Likewise.
12097         (process_cu_includes): Likewise.
12098         (struct free_dwo_file_cleanup_data): New struct.
12099         (dwarf2_has_info): Use get_dwarf2_per_objfile and
12100         set_dwarf2_per_objfile.
12101         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
12102         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
12103         context, adjust calls.
12104         (dw2_instantiate_symtab): Likewise.
12105         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
12106         (dw2_get_cu): Likewise.
12107         (create_cu_from_index_list): Change objfile parameter to
12108         dwarf2_per_objfile.
12109         (create_cus_from_index_list): Get dwarf2_per_objfile from
12110         context, adjust calls.
12111         (create_cus_from_index): Likewise.
12112         (create_signatured_type_table_from_index): Change objfile
12113         parameter to dwarf2_per_objfile.
12114         (create_signatured_type_table_from_debug_names): Change objfile
12115         parameter to dwarf2_per_objfile.
12116         (create_addrmap_from_index): Likewise.
12117         (create_addrmap_from_aranges): Likewise.
12118         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
12119         (dw2_setup): Remove.
12120         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
12121         context.
12122         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
12123         get_dwarf2_per_objfile.
12124         (dw2_forget_cached_source_info): Likewise.
12125         (dw2_map_symtabs_matching_filename): Likewise.
12126         (struct dw2_symtab_iterator) <index>: Remove.
12127         <dwarf2_per_objfile>: New field.
12128         (dw2_symtab_iter_init): Replace index parameter with
12129         dwarf2_per_objfile.
12130         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
12131         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
12132         (dw2_print_stats): Likewise.
12133         (dw2_dump): Likewise.
12134         (dw2_expand_symtabs_for_function): Likewise.
12135         (dw2_expand_all_symtabs): Likewise.
12136         (dw2_expand_symtabs_with_fullname): Likewise.
12137         (dw2_expand_marked_cus): Replace index and objfile parameters
12138         with dwarf2_per_objfile.
12139         (dw_expand_symtabs_matching_file_matcher): Add
12140         dwarf2_per_objfile parameter and adjust calls.
12141         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
12142         adjust calls.
12143         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
12144         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
12145         adjust calls.
12146         (create_cus_from_debug_names_list): Replace objfile parameter
12147         with dwarf2_per_objfile and adjust calls.
12148         (create_cus_from_debug_names): Likewise.
12149         (dwarf2_read_debug_names): Likewise.
12150         (mapped_debug_names::namei_to_name): Adjust call.
12151         (dw2_debug_names_iterator::next): Likewise.
12152         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
12153         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
12154         (dw2_debug_names_dump): Likewise.
12155         (dw2_debug_names_expand_symtabs_for_function): Likewise.
12156         (dw2_debug_names_expand_symtabs_matching): Likewise.
12157         (dwarf2_initialize_objfile): Likewise.
12158         (dwarf2_build_psymtabs): Likewise.
12159         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
12160         this_cu.
12161         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
12162         (read_and_check_comp_unit_head): Likewise.
12163         (read_abbrev_offset): Likewise.
12164         (create_debug_type_hash_table): Likewise.
12165         (create_debug_types_hash_table): Likewise.
12166         (create_all_type_units): Replace objfile parameter with
12167         dwarf2_per_objfile.
12168         (add_type_unit): Add dwarf2_per_objfile parameter.
12169         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
12170         with dwarf2_per_objfile.
12171         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
12172         (lookup_dwp_signatured_type): Likewise.
12173         (lookup_signatured_type): Likewise.
12174         (read_cutu_die_from_dwo): Likewise.
12175         (init_tu_and_read_dwo_dies): Likewise.
12176         (init_cutu_and_read_dies): Likewise.
12177         (init_cutu_and_read_dies_no_follow): Likewise.
12178         (allocate_type_unit_groups_table): Add objfile parameter.
12179         (create_type_unit_group): Use dwarf2_per_objfile from cu.
12180         (get_type_unit_group): Likewise.
12181         (process_psymtab_comp_unit): Update call.
12182         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
12183         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
12184         (print_tu_stats): Likewise.
12185         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
12186         in void* parameter.
12187         (build_type_psymtabs): Change objfile parameter to
12188         dwarf2_per_objfile.
12189         (process_skeletonless_type_unit): Use dwarf2_per_objfile
12190         passed in void* parameter.
12191         (process_skeletonless_type_units): Change objfile parameter to
12192         dwarf2_per_objfile.
12193         (set_partial_user): Likewise.
12194         (dwarf2_build_psymtabs_hard): Likewise.
12195         (read_comp_units_from_section): Likewise.
12196         (create_all_comp_units): Likewise.
12197         (scan_partial_symbols): Update calls.
12198         (add_partial_symbol): Likewise.
12199         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
12200         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
12201         (process_queue): Add dwarf2_per_objfile parameter.
12202         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
12203         (compute_compunit_symtab_includes): Likewise.
12204         (process_cu_includes): Add dwarf2_per_objfile parameter.
12205         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
12206         (process_full_type_unit): Likewise.
12207         (process_imported_unit_die): Update call.
12208         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
12209         (read_file_scope): Likewise.
12210         (allocate_dwo_file_hash_table): Add objfile parameter.
12211         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
12212         (create_cus_hash_table): Likewise.
12213         (create_dwp_hash_table): Likewise.
12214         (create_dwo_unit_in_dwp_v1): Likewise.
12215         (create_dwp_v2_section): Likewise.
12216         (create_dwo_unit_in_dwp_v2): Likewise.
12217         (lookup_dwo_unit_in_dwp): Likewise.
12218         (try_open_dwop_file): Likewise.
12219         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
12220         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
12221         cleanup to include a reference to dwarf2_per_objfile.
12222         (open_dwp_file): Add dwarf2_per_objfile parameter.
12223         (open_and_init_dwp_file): Likewise.
12224         (get_dwp_file): Likewise.
12225         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
12226         (queue_and_load_all_dwo_tus): Update call.
12227         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
12228         data.
12229         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
12230         (dwarf2_ranges_process): Likewise.
12231         (dwarf2_get_pc_bounds): Likewise.
12232         (mark_common_block_symbol_computed): Likewise.
12233         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
12234         (dwarf2_read_abbrevs): Update call.
12235         (read_partial_die): Use dwarf2_per_objfile from cu.
12236         (find_partial_die): Likewise.
12237         (fixup_partial_die): Likewise.
12238         (read_attribute_value): Likewise.
12239         (read_indirect_string_at_offset_from): Add objfile parameter.
12240         (read_indirect_string_at_offset): Add dwarf2_per_objfile
12241         parameter.
12242         (read_indirect_string_from_dwz): Add objfile parameter.
12243         (read_indirect_string): Add objfile parameter.
12244         (read_addr_index_1): Add dwarf2_per_objfile parameter.
12245         (read_addr_index): Use dwarf2_per_objfile from cu.
12246         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
12247         call dw2_setup.
12248         (read_str_index): Use dwarf2_per_objfile from cu.
12249         (get_debug_line_section): Likewise.
12250         (read_formatted_entries): Add dwarf2_per_objfile parameter.
12251         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
12252         (new_symbol_full): Use dwarf2_per_objfile from cu.
12253         (build_error_marker_type): Likewise.
12254         (lookup_die_type): Likewise.
12255         (determine_prefix): Likewise.
12256         (follow_die_offset): Likewise.
12257         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
12258         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
12259         (dwarf2_fetch_die_type_sect_off): Likewise.
12260         (dwarf2_get_die_type): Likewise.
12261         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
12262         (get_signatured_type): Likewise.
12263         (get_DW_AT_signature_type): Likewise.
12264         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
12265         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
12266         (cu_debug_loc_section): Likewise.
12267         (fill_in_loclist_baton): Likewise.
12268         (dwarf2_symbol_mark_computed): Likewise.
12269         (dwarf2_find_containing_comp_unit): Change objfile parameter to
12270         dwarf2_per_objfile.
12271         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
12272         parameter.
12273         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
12274         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
12275         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
12276         (set_die_type): Use dwarf2_free_objfile from cu.
12277         (get_die_type_at_offset): Likewise.
12278         (dwarf2_per_objfile_free): Don't assign global variable.
12279         (debug_names) <constructor>: Add dwarf2_per_objfile
12280         parameter, update m_debugstrlookup construction.
12281         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
12282         parameter.
12283         <m_dwarf2_per_objfile>: New field.
12284         <lookup>: Use m_dwarf2_per_objfile.
12285         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
12286         (psyms_seen_size): Likewise.
12287         (write_gdbindex): Replace objfile parameter with
12288         dwarf2_per_objfile.
12289         (write_debug_names): Likewise.
12290         (write_psymtabs_to_index): Likewise.
12291         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
12292         calls.
12293
12294 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
12295
12296         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
12297         <dwarf2_per_objfile>: New field.
12298         (struct dwarf2_per_cu_data) <objfile>: Remove.
12299         <dwarf2_per_objfile>: New field.
12300         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
12301         of objfile.
12302         (create_signatured_type_table_from_index): Likewise.
12303         (create_debug_type_hash_table): Likewise.
12304         (fill_in_sig_entry_from_dwo_entry): Likewise.
12305         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
12306         (create_type_unit_group): Assign dwarf2_per_objfile instead of
12307         objfile.
12308         (create_partial_symtab): Access objfile through
12309         dwarf2_per_objfile.
12310         (process_psymtab_comp_unit_reader): Likewise.
12311         (read_comp_units_from_section): Likewise.
12312         (scan_partial_symbols): Likewise.
12313         (add_partial_symbol): Likewise.
12314         (add_partial_subprogram): Likewise.
12315         (peek_die_abbrev): Likewise.
12316         (fixup_go_packaging): Likewise.
12317         (process_full_comp_unit): Likewise.
12318         (process_full_type_unit): Likewise.
12319         (process_imported_unit_die): Likewise.
12320         (dwarf2_compute_name): Likewise.
12321         (dwarf2_physname): Likewise.
12322         (read_import_statement): Likewise.
12323         (create_cus_hash_table): Assign dwarf2_physname instead of
12324         objfile.
12325         (read_func_scope): Access objfile through dwarf2_per_objfile.
12326         (read_lexical_block_scope): Likewise.
12327         (read_call_site_scope): Likewise.
12328         (read_variable): Likewise.
12329         (dwarf2_rnglists_process): Likewise.
12330         (dwarf2_ranges_process): Likewise.
12331         (dwarf2_ranges_read): Likewise.
12332         (dwarf2_record_block_ranges): Likewise.
12333         (dwarf2_add_field): Likewise.
12334         (dwarf2_add_member_fn): Likewise.
12335         (read_structure_type): Likewise.
12336         (process_structure_scope): Likewise.
12337         (read_enumeration_type): Likewise.
12338         (read_array_type): Likewise.
12339         (read_common_block): Likewise.
12340         (read_namespace_type): Likewise.
12341         (read_namespace): Likewise.
12342         (read_module_type): Likewise.
12343         (read_tag_pointer_type): Likewise.
12344         (read_tag_ptr_to_member_type): Likewise.
12345         (read_tag_string_type): Likewise.
12346         (read_subroutine_type): Likewise.
12347         (read_typedef): Likewise.
12348         (read_base_type): Likewise.
12349         (attr_to_dynamic_prop): Likewise.
12350         (read_subrange_type): Likewise.
12351         (read_unspecified_type): Likewise.
12352         (load_partial_dies): Likewise.
12353         (read_partial_die): Likewise.
12354         (find_partial_die): Likewise.
12355         (guess_partial_die_structure_name): Likewise.
12356         (fixup_partial_die): Likewise.
12357         (read_attribute_value): Likewise.
12358         (read_addr_index_from_leb128): Likewise.
12359         (dwarf2_read_addr_index): Likewise.
12360         (dwarf2_string_attr): Likewise.
12361         (lnp_state_machine::check_line_address): Likewise.
12362         (dwarf_decode_lines_1): Likewise.
12363         (dwarf_decode_lines): Likewise.
12364         (dwarf2_start_symtab): Likewise.
12365         (var_decode_location): Likewise.
12366         (new_symbol_full): Likewise.
12367         (dwarf2_const_value_data): Likewise.
12368         (dwarf2_const_value_attr): Likewise.
12369         (dwarf2_const_value): Likewise.
12370         (die_type): Likewise.
12371         (die_containing_type): Likewise.
12372         (lookup_die_type): Likewise.
12373         (guess_full_die_structure_name): Likewise.
12374         (anonymous_struct_prefix): Likewise.
12375         (dwarf2_name): Likewise.
12376         (follow_die_ref_or_sig): Likewise.
12377         (follow_die_offset): Likewise.
12378         (follow_die_ref): Likewise.
12379         (dwarf2_fetch_die_loc_sect_off): Likewise.
12380         (dwarf2_fetch_constant_bytes): Likewise.
12381         (dwarf2_fetch_die_type_sect_off): Likewise.
12382         (dwarf2_get_die_type): Likewise.
12383         (follow_die_sig): Likewise.
12384         (decode_locdesc): Likewise.
12385         (dwarf2_per_cu_objfile): Likewise.
12386         (dwarf2_per_cu_text_offset): Likewise.
12387         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
12388         objfile.
12389         (set_die_type): Access objfile through
12390         dwarf2_per_objfile.
12391
12392 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
12393
12394         * valprint.c (converted_character_d): Remove typedef.
12395         (DEF_VEC_O (converted_character_d)): Remove.
12396         (count_next_character): Use std::vector.
12397         (print_converted_chars_to_obstack): Likewise.
12398         (generic_printstr): Likewise.
12399
12400 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
12401
12402         * xml-support.h (struct gdb_xml_value): Add constructor.
12403         <value>: Change type to unique_xmalloc_ptr.
12404         (gdb_xml_value_s): Remove typedef.
12405         (DEF_VEC_O (gdb_xml_value_s)): Remove.
12406         (gdb_xml_element_start_handler): Change parameter type to
12407         std::vector.
12408         (xml_find_attribute): Likewise.
12409         * xml-support.c (xml_find_attribute): Change parameter type to
12410         std::vector and adjust.
12411         (gdb_xml_values_cleanup): Remove.
12412         (gdb_xml_parser::start_element): Adjust to std::vector.
12413         (xinclude_start_include): Change paraeter type to std::vector
12414         and adjust.
12415         * btrace.c (check_xml_btrace_version): Likewise.
12416         (parse_xml_btrace_block): Likewise.
12417         (parse_xml_btrace_pt_config_cpu): Likewise.
12418         (parse_xml_btrace_pt): Likewise.
12419         (parse_xml_btrace_conf_bts): Likewise.
12420         (parse_xml_btrace_conf_pt): Likewise.
12421         * memory-map.c (memory_map_start_memory): Likewise.
12422         (memory_map_start_property): Likewise.
12423         * osdata.c (osdata_start_osdata): Likewise.
12424         (osdata_start_item): Likewise.
12425         (osdata_start_column): Likewise.
12426         * remote.c (start_thread): Likewise.
12427         * solib-aix.c (library_list_start_library): Likewise.
12428         (library_list_start_list): Likewise.
12429         * solib-svr4.c (library_list_start_library): Likewise.
12430         (svr4_library_list_start_list): Likewise.
12431         * solib-target.c (library_list_start_segment): Likewise.
12432         (library_list_start_section): Likewise.
12433         (library_list_start_library): Likewise.
12434         (library_list_start_list): Likewise.
12435         * tracepoint.c (traceframe_info_start_memory): Likewise.
12436         (traceframe_info_start_tvar): Likewise.
12437         * xml-syscall.c (syscall_start_syscall): Likewise.
12438         * xml-tdesc.c (tdesc_start_target): Likewise.
12439         (tdesc_start_feature): Likewise.
12440         (tdesc_start_reg): Likewise.
12441         (tdesc_start_union): Likewise.
12442         (tdesc_start_struct): Likewise.
12443         (tdesc_start_flags): Likewise.
12444         (tdesc_start_enum): Likewise.
12445         (tdesc_start_field): Likewise.
12446         (tdesc_start_enum_value): Likewise.
12447         (tdesc_start_vector): Likewise.
12448
12449 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
12450
12451         * extension.h (struct xmethod_worker) <clone>: Remove.
12452         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
12453         Remove.
12454         (python_xmethod_worker::clone): Remove.
12455         * valops.c (find_overload_match): Use std::move instead of
12456         clone.
12457
12458 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
12459
12460         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
12461         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
12462         <free_xmethod_worker_data>: Remove.
12463         <get_matching_xmethod_workers>: Chance VEC to std::vector.
12464         <get_xmethod_arg_types>: Remove.
12465         <get_xmethod_result_type>: Remove.
12466         <invoke_xmethod>: Remove.
12467         * extension.c (new_xmethod_worker): Remove.
12468         (clone_xmethod_worker): Remove.
12469         (get_matching_xmethod_workers): Return void, pass std::vector by
12470         pointer.
12471         (get_xmethod_arg_types): Rename to...
12472         (xmethod_worker::get_arg_types): ... this, and adjust.
12473         (get_xmethod_result_type): Rename to...
12474         (xmethod_worker::get_result_type): ... this, and adjust.
12475         (invoke_xmethod): Remove.
12476         (free_xmethod_worker): Remove.
12477         (free_xmethod_worker_vec): Remove.
12478         * extension.h (enum ext_lang_rc): Move here from
12479         extension-priv.h.
12480         (struct xmethod_worker): Add constructor and destructor.
12481         <data>: Remove.
12482         <value>: Remove.
12483         <invoke, clone, do_get_result_type, do_get_arg_types>: New
12484         virtual pure methods.
12485         <get_arg_types, get_result_type>: New methods.
12486         (xmethod_worker_ptr): Remove typedef.
12487         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
12488         (xmethod_worker_vec): Remove typedef.
12489         (xmethod_worker_up): New typedef.
12490         (invoke_xmethod): Remove.
12491         (clone_xmethod_worker): Remove.
12492         (free_xmethod_worker): Remove.
12493         (free_xmethod_worker_vec): Remove.
12494         (get_xmethod_arg_types): Remove.
12495         (get_xmethod_result_type): Remove.
12496         * valops.c (find_method_list): Use std::vector, don't use
12497         intermediate vector.
12498         (value_find_oload_method_list): Use std::vector.
12499         (find_overload_match): Use std::vector.
12500         (find_oload_champ): Use std::vector.
12501         * value.c (value_free): Use operator delete.
12502         (value_of_xmethod): Rename to...
12503         (value_from_xmethod): ... this.  Don't assign
12504         xmethod_worker::value, take rvalue-reference.
12505         (result_type_of_xmethod): Adjust.
12506         (call_xmethod): Adjust.
12507         * value.h: Include extension.h.
12508         (struct xmethod_worker): Don't forward-declare.
12509         (value_of_xmethod): Rename to...
12510         (value_from_xmethod): ... this, take rvalue-reference.
12511         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
12512         (struct python_xmethod_worker): ... this, add constructor and
12513         destructor.
12514         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
12515         (gdbpy_free_xmethod_worker_data): Rename to...
12516         (python_xmethod_worker::~python_xmethod_worker): ... this and
12517         adjust.
12518         (gdbpy_clone_xmethod_worker_data): Rename to...
12519         (python_xmethod_worker::clone): ... this and adjust.
12520         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
12521         temporary vector.
12522         (gdbpy_get_xmethod_arg_types): Rename to...
12523         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
12524         (gdbpy_get_xmethod_result_type): Rename to...
12525         (python_xmethod_worker::do_get_result_type): ... this and
12526         adjust.
12527         (gdbpy_invoke_xmethod): Rename to...
12528         (python_xmethod_worker::invoke): ... this and adjust.
12529         (new_python_xmethod_worker): Rename to...
12530         (python_xmethod_worker::python_xmethod_worker): ... this and
12531         adjust.
12532         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
12533         Remove.
12534         (gdbpy_free_xmethod_worker_data): Remove.
12535         (gdbpy_get_matching_xmethod_workers): Use std::vector.
12536         (gdbpy_get_xmethod_arg_types): Remove.
12537         (gdbpy_get_xmethod_result_type): Remove.
12538         (gdbpy_invoke_xmethod): Remove.
12539         * python/python.c (python_extension_ops): Remove obsolete
12540         callbacks.
12541
12542 2018-01-05  Pedro Alves  <palves@redhat.com>
12543
12544         PR gdb/18653
12545         * common/signals-state-save-restore.c
12546         (save_original_signals_state): New parameter 'quiet'.  Warn if we
12547         find a custom handler preinstalled, instead of internal erroring.
12548         But only warn if !quiet.
12549         * common/signals-state-save-restore.h
12550         (save_original_signals_state): New parameter 'quiet'.
12551         * main.c (captured_main_1): Move save_original_signals_state call
12552         after option handling, and pass QUIET.
12553
12554 2018-01-05  Pedro Alves  <palves@redhat.com>
12555
12556         * spu-tdep.c (spu_catch_start): Pass
12557         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
12558
12559 2018-01-05  Pedro Alves  <palves@redhat.com>
12560
12561         PR gdb/22670
12562         * ada-lang.c (literal_symbol_name_matcher): New function.
12563         (ada_get_symbol_name_matcher): Use it for
12564         symbol_name_match_type::SEARCH_NAME.
12565         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
12566         it down instead of assuming symbol_name_match_type::FULL.
12567         * block.h (block_lookup_symbol): New parameter 'match_type'.
12568         * c-valprint.c (print_unpacked_pointer): Use
12569         lookup_symbol_search_name instead of lookup_symbol.
12570         * compile/compile-object-load.c (get_out_value_type): Pass down
12571         symbol_name_match_type::SEARCH_NAME.
12572         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
12573         symbol_name_match_type::FULL.
12574         * cp-support.c (cp_get_symbol_name_matcher): Handle
12575         symbol_name_match_type::SEARCH_NAME.
12576         * infrun.c (insert_exception_resume_breakpoint): Use
12577         lookup_symbol_search_name.
12578         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
12579         * psymtab.c (maintenance_check_psymtabs): Use
12580         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
12581         * stack.c (print_frame_args): Use lookup_symbol_search_name and
12582         SYMBOL_SEARCH_NAME.
12583         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
12584         if symbol_name_match_type::SEARCH_NAME.
12585         (lookup_symbol_in_language): Pass down
12586         symbol_name_match_type::FULL.
12587         (lookup_symbol_search_name): New.
12588         (lookup_language_this): Pass down
12589         symbol_name_match_type::SEARCH_NAME.
12590         (lookup_symbol_aux, lookup_local_symbol): New parameter
12591         'match_type'.  Pass it down.
12592         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
12593         (lookup_symbol_search_name): New declaration.
12594         (lookup_symbol_in_block): New 'match_type' parameter.
12595
12596 2018-01-05  Pedro Alves  <palves@redhat.com>
12597
12598         PR gdb/22670
12599         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
12600         ada_lookup_symbol.
12601         (ada_lookup_symbol): Reimplement in terms of
12602         ada_lookup_symbol_list, bits factored out from
12603         ada_lookup_encoded_symbol.
12604
12605 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
12606
12607         * ada-exp.y (write_object_renaming): When subscripting an array
12608         using a symbol as the index, pass the block in call to
12609         ada_lookup_encoded_symbol when looking that symbol up.
12610
12611 2018-01-05  Jerome Guitton  <guitton@adacore.com>
12612
12613         * ada-lang.c (ada_array_length): Use ada_index_type instead of
12614         TYPE_INDEX_TYPE.
12615
12616 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
12617
12618         * ada-lang.c (ada_to_fixed_value_create): Add handling of
12619         the case where VALUE_LVAL (val0) is not lval_memory.
12620
12621 2018-01-05  Xavier Roirand  <roirand@adacore.com>
12622
12623         * ada-valprint.c (print_optional_low_bound): Handle
12624         character-indexed array printing like boolean-indexed array
12625         printing.
12626
12627 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
12628
12629         * NEWS: Create a new section for the next release branch.
12630         Rename the section of the current branch, now that it has
12631         been cut.
12632
12633 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
12634
12635         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
12636         * version.in: Bump version to 8.1.50.DATE-git.
12637
12638 2018-01-03  Xavier Roirand  <roirand@adacore.com>
12639
12640         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
12641         Add field.
12642         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
12643         Add field.
12644         (default_exception_support_info) <catch_handlers_sym>: Add field.
12645         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
12646         (ada_exception_name_addr_1): Add "catch handlers" handling.
12647         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
12648         Update all callers.
12649         (create_excep_cond_exprs) <ex>: Add parameter.
12650         (re_set_exception): Update create_excep_cond_exprs call.
12651         (print_it_exception, print_one_exception, print_mention_exception)
12652         (print_recreate_exception): Add "catch handler" handling.
12653         (allocate_location_catch_handlers, re_set_catch_handlers)
12654         (check_status_catch_handlers, print_it_catch_handlers)
12655         (print_one_catch_handlers, print_mention_catch_handlers)
12656         (print_recreate_catch_handlers): New function.
12657         (catch_handlers_breakpoint_ops): New variable.
12658         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
12659         Add parameter.  Add "catch handler" handling.
12660         (ada_exception_sym_name, ada_exception_breakpoint_ops):
12661         Add "catch handler" handling.
12662         (ada_exception_catchpoint_cond_string): Add "catch handler"
12663         handling.
12664         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
12665         call.
12666         (catch_ada_handlers_command): New function.
12667         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
12668         operations structure.
12669         (_initialize_ada_language): Add "catch handlers" command entry.
12670         * NEWS: Document "catch handlers" feature.
12671
12672 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
12673
12674         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
12675         account when creating the array type of the slice.
12676         (ada_value_slice): Likewise.
12677
12678 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
12679
12680         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
12681         New enum value.
12682         (create_array_type_with_stride): Add byte_stride_prop parameter.
12683         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
12684         New parameter.  Update all callers in this file.
12685         (array_type_has_dynamic_stride): New function.
12686         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
12687         of arrays with dynamic byte strides.
12688         * dwarf2read.c (read_array_type): Add support for dynamic
12689         DW_AT_byte_stride attributes.
12690
12691 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
12692
12693         * dwarf2read.c (read_unspecified_type): Treat
12694         DW_TAG_enumeration_type DIEs from Ada units as stubs.
12695
12696 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
12697
12698         Update copyright year range in all GDB files.
12699
12700 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
12701
12702         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
12703         and gdb/testsuite/gdb.base/step-line.c.
12704
12705 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
12706
12707         * copyright.py (main): Dump the contents of
12708         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
12709         even if BY_HAND is empty.
12710
12711 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
12712
12713         * top.c (print_gdb_version): Update Copyright year in version
12714         message.
12715
12716 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
12717
12718         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
12719
12720 For older changes see ChangeLog-2017.
12721 \f
12722 Local Variables:
12723 mode: change-log
12724 left-margin: 8
12725 fill-column: 74
12726 version-control: never
12727 coding: utf-8
12728 End: